var __wxsModules={};

__wxsModules["42613348"] = (() => {
  var __getOwnPropNames = Object.getOwnPropertyNames;
  var __commonJS = (cb, mod) => function __require() {
    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  };

  // <stdin>
  var require_stdin = __commonJS({
    "<stdin>"(exports, module) {
      var currentDis = 0;
      var isPCFlag = -1;
      var startY = -1;
      function propObserver(newVal, oldVal, ownerIns, ins) {
        var state = ownerIns.getState() || {};
        state.currentIns = ins;
        var dataset = ins.getDataset();
        var loading = dataset.loading == true;
        if (newVal && newVal.indexOf("end") != -1) {
          var transition = newVal.split("end")[0];
          _setTransform("translateY(0px)", ins, false, transition);
          state.moveDis = 0;
          state.oldMoveDis = 0;
          currentDis = 0;
        } else if (newVal && newVal.indexOf("begin") != -1) {
          var refresherThreshold = ins.getDataset().refresherthreshold;
          _setTransformValue(refresherThreshold, ins, state, false);
        }
      }
      function touchstart(e, ownerIns) {
        var ins = _getIns(ownerIns);
        var state = {};
        var dataset = {};
        ownerIns.callMethod("_handleListTouchstart");
        if (ins) {
          state = ins.getState();
          dataset = ins.getDataset();
          if (_touchDisabled(e, ins, 0))
            return;
        }
        var isTouchEnded = state.isTouchEnded;
        state.oldMoveDis = 0;
        var touch = _getTouch(e);
        var loading = _isTrue(dataset.loading);
        state.startY = touch.touchY;
        startY = state.startY;
        state.lastTouch = touch;
        if (!loading && isTouchEnded) {
          state.isTouchmoving = false;
        }
        state.isTouchEnded = false;
        ownerIns.callMethod("_handleRefresherTouchstart", touch);
      }
      function touchmove(e, ownerIns) {
        var touch = _getTouch(e);
        var ins = _getIns(ownerIns);
        var dataset = ins.getDataset();
        var refresherThreshold = dataset.refresherthreshold;
        var refresherF2Threshold = dataset.refresherf2threshold;
        var refresherF2Enabled = _isTrue(dataset.refresherf2enabled);
        var isIos = _isTrue(dataset.isios);
        var state = ins.getState();
        var watchTouchDirectionChange = _isTrue(dataset.watchtouchdirectionchange);
        var moveDisObj = {};
        var moveDis = 0;
        var prevent = false;
        if (watchTouchDirectionChange) {
          moveDisObj = _getMoveDis(e, ins);
          moveDis = moveDisObj.currentDis;
          prevent = moveDisObj.isDown;
          var direction = prevent ? "top" : "bottom";
          if (prevent == state.oldTouchDirection && prevent != state.oldEmitedTouchDirection) {
            ownerIns.callMethod("_handleTouchDirectionChange", { direction });
            state.oldEmitedTouchDirection = prevent;
          }
          state.oldTouchDirection = prevent;
        }
        if (_touchDisabled(e, ins, 1)) {
          _handlePullingDown(state, ownerIns, false);
          return true;
        }
        if (!_getAngleIsInRange(e, touch, state, dataset)) {
          _handlePullingDown(state, ownerIns, false);
          return true;
        }
        moveDisObj = _getMoveDis(e, ins);
        moveDis = moveDisObj.currentDis;
        prevent = moveDisObj.isDown;
        if (moveDis < 0) {
          _setTransformValue(0, ins, state, false);
          _handlePullingDown(state, ownerIns, false);
          return true;
        }
        if (prevent && !state.disabledBounce) {
          ownerIns.callMethod("_handleScrollViewBounce", { bounce: false });
          state.disabledBounce = true;
          _handlePullingDown(state, ownerIns, prevent);
          return !prevent;
        }
        _setTransformValue(moveDis, ins, state, false);
        var oldRefresherStatus = state.refresherStatus;
        var oldIsTouchmoving = _isTrue(dataset.oldistouchmoving);
        var hasTouchmove = _isTrue(dataset.hastouchmove);
        var isTouchmoving = state.isTouchmoving;
        state.refresherStatus = moveDis >= refresherThreshold ? refresherF2Enabled && moveDis > refresherF2Threshold ? "goF2" : "releaseToRefresh" : "default";
        if (!isTouchmoving) {
          state.isTouchmoving = true;
          isTouchmoving = true;
        }
        if (state.isTouchEnded) {
          state.isTouchEnded = false;
        }
        if (hasTouchmove) {
          ownerIns.callMethod("_handleWxsPullingDown", { moveDis, diffDis: moveDisObj.diffDis });
        }
        if (oldRefresherStatus == void 0 || oldRefresherStatus != state.refresherStatus || oldIsTouchmoving != isTouchmoving) {
          ownerIns.callMethod("_handleRefresherTouchmove", moveDis, touch);
        }
        _handlePullingDown(state, ownerIns, prevent);
        return !prevent;
      }
      function touchend(e, ownerIns) {
        var touch = _getTouch(e);
        var ins = _getIns(ownerIns);
        var dataset = ins.getDataset();
        var state = ins.getState();
        if (state.disabledBounce) {
          ownerIns.callMethod("_handleScrollViewBounce", { bounce: true });
          state.disabledBounce = false;
        }
        if (_touchDisabled(e, ins, 2))
          return;
        state.reachMaxAngle = true;
        state.hitReachMaxAngleCount = 0;
        state.fixedIsTopHitCount = 0;
        if (!state.isTouchmoving)
          return;
        var oldRefresherStatus = state.refresherStatus;
        var oldMoveDis = state.moveDis;
        var refresherThreshold = ins.getDataset().refresherthreshold;
        var moveDis = _getMoveDis(e, ins).currentDis;
        if (!(moveDis >= refresherThreshold && oldRefresherStatus === "releaseToRefresh")) {
          state.isTouchmoving = false;
        }
        ownerIns.callMethod("_handleRefresherTouchend", moveDis);
        state.isTouchEnded = true;
        if (oldMoveDis < refresherThreshold)
          return;
        var animate = false;
        if (moveDis >= refresherThreshold) {
          moveDis = refresherThreshold;
          animate = true;
        }
        _setTransformValue(moveDis, ins, state, animate);
      }
      function isPC() {
        if (!navigator)
          return false;
        if (isPCFlag != -1)
          return isPCFlag;
        var agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"];
        isPCFlag = agents.every(function(item) {
          return navigator.userAgent.indexOf(item) < 0;
        });
        return isPCFlag;
      }
      var movable = false;
      function mousedown(e, ins) {
        if (!isPC())
          return;
        touchstart(e, ins);
        movable = true;
      }
      function mousemove(e, ins) {
        if (!isPC() || !movable)
          return;
        touchmove(e, ins);
      }
      function mouseup(e, ins) {
        if (!isPC())
          return;
        touchend(e, ins);
        movable = false;
      }
      function mouseleave(e, ins) {
        if (!isPC())
          return;
        movable = false;
      }
      function _setTransformValue(value, ins, state, animate) {
        value = value || 0;
        if (state.moveDis == value)
          return;
        state.moveDis = value;
        _setTransform("translateY(" + value + "px)", ins, animate, "");
      }
      function _setTransform(transform, ins, animate, transition) {
        var dataset = ins.getDataset();
        if (_isTrue(dataset.refreshernotransform))
          return;
        transform = transform == "translateY(0px)" ? "none" : transform;
        ins.requestAnimationFrame(function() {
          var stl = { "transform": transform };
          if (animate) {
            stl["transition"] = "transform .1s linear";
          }
          if (transition.length) {
            stl["transition"] = transition;
          }
          ins.setStyle(stl);
        });
      }
      function _getMoveDis(e, ins) {
        var state = ins.getState();
        var refresherThreshold = parseFloat(ins.getDataset().refresherthreshold);
        var refresherOutRate = parseFloat(ins.getDataset().refresheroutrate);
        var refresherPullRate = parseFloat(ins.getDataset().refresherpullrate);
        var touch = _getTouch(e);
        var currentStartY = !state.startY || state.startY == "NaN" ? startY : state.startY;
        var moveDis = touch.touchY - currentStartY;
        var oldMoveDis = state.oldMoveDis || 0;
        state.oldMoveDis = moveDis;
        var diffDis = moveDis - oldMoveDis;
        if (diffDis > 0) {
          diffDis = diffDis * refresherPullRate;
          if (currentDis > refresherThreshold) {
            diffDis = diffDis * (1 - refresherOutRate);
          }
        }
        diffDis = diffDis > 100 ? diffDis / 100 : diffDis > 20 ? diffDis / 2.2 : diffDis;
        currentDis += diffDis;
        currentDis = Math.max(0, currentDis);
        return {
          currentDis,
          diffDis,
          isDown: diffDis > 0
        };
      }
      function _getTouch(e) {
        var touch = e;
        if (e.touches && e.touches.length) {
          touch = e.touches[0];
        } else if (e.changedTouches && e.changedTouches.length) {
          touch = e.changedTouches[0];
        } else if (e.datail && e.datail != {}) {
          touch = e.datail;
        }
        return {
          touchX: touch.clientX,
          touchY: touch.clientY
        };
      }
      function _getIns(ownerIns) {
        var ins = ownerIns.getState().currentIns;
        if (!ins) {
          ownerIns.callMethod("_handlePropUpdate");
        }
        return ins;
      }
      function _touchDisabled(e, ins, processTag) {
        var dataset = ins.getDataset();
        var state = ins.getState();
        var loading = _isTrue(dataset.loading);
        var useChatRecordMode = _isTrue(dataset.usechatrecordmode);
        var refresherEnabled = _isTrue(dataset.refresherenabled);
        var useCustomRefresher = _isTrue(dataset.usecustomrefresher);
        var usePageScroll = _isTrue(dataset.usepagescroll);
        var pageScrollTop = parseFloat(dataset.pagescrolltop);
        var scrollTop = parseFloat(dataset.scrolltop);
        var finalScrollTop = usePageScroll ? pageScrollTop : scrollTop;
        var fixedIsTop = false;
        var handleFaultTolerantMove = false;
        if (handleFaultTolerantMove && finalScrollTop == (state.startScrollTop || 0) && finalScrollTop <= 105) {
          fixedIsTop = true;
        }
        var fixedIsTopHitCount = state.fixedIsTopHitCount || 0;
        if (fixedIsTop) {
          fixedIsTopHitCount++;
          if (fixedIsTopHitCount <= 2) {
            fixedIsTop = false;
          }
          state.fixedIsTopHitCount = fixedIsTopHitCount;
        } else {
          state.fixedIsTopHitCount = 0;
        }
        if (handleFaultTolerantMove && processTag === 0) {
          state.startScrollTop = finalScrollTop || 0;
        }
        if (handleFaultTolerantMove && processTag === 2) {
          fixedIsTop = true;
        }
        return loading || useChatRecordMode || !refresherEnabled || !useCustomRefresher || usePageScroll && useCustomRefresher && pageScrollTop > 5 && !fixedIsTop || !usePageScroll && useCustomRefresher && scrollTop > 5 && !fixedIsTop;
      }
      function _getAngleIsInRange(e, touch, state, dataset) {
        var maxAngle = dataset.refreshermaxangle;
        var refresherAecc = _isTrue(dataset.refresheraecc);
        var lastTouch = state.lastTouch;
        var reachMaxAngle = state.reachMaxAngle;
        var moveDis = state.oldMoveDis;
        if (!lastTouch)
          return true;
        if (maxAngle >= 0 && maxAngle <= 90 && lastTouch) {
          if ((!moveDis || moveDis < 1) && !refresherAecc && reachMaxAngle != null && !reachMaxAngle)
            return false;
          var x = Math.abs(touch.touchX - lastTouch.touchX);
          var y = Math.abs(touch.touchY - lastTouch.touchY);
          var z = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
          if ((x || y) && x > 1) {
            var angle = Math.asin(y / z) / Math.PI * 180;
            if (angle < maxAngle) {
              var hitReachMaxAngleCount = state.hitReachMaxAngleCount || 0;
              state.hitReachMaxAngleCount = ++hitReachMaxAngleCount;
              if (state.hitReachMaxAngleCount > 2) {
                state.lastTouch = touch;
                state.reachMaxAngle = false;
              }
              return false;
            }
          }
        }
        state.lastTouch = touch;
        return true;
      }
      function _handlePullingDown(state, ins, onPullingDown) {
        var oldOnPullingDown = state.onPullingDown || false;
        if (oldOnPullingDown != onPullingDown) {
          ins.callMethod("_handleWxsPullingDownStatusChange", onPullingDown);
        }
        state.onPullingDown = onPullingDown;
      }
      function _isTrue(value) {
        value = (typeof value === "string" ? JSON.parse(value) : value) || false;
        return value == true || value == "true";
      }
      module.exports = {
        touchstart,
        touchmove,
        touchend,
        mousedown,
        mousemove,
        mouseup,
        mouseleave,
        propObserver
      };
    }
  });
  return require_stdin();
})();


__wxsModules["0c1bc38e"] = (() => {
  var __getOwnPropNames = Object.getOwnPropertyNames;
  var __commonJS = (cb, mod) => function __require() {
    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  };

  // <stdin>
  var require_stdin = __commonJS({
    "<stdin>"(exports, module) {
      function scroll(event, ownerInstance) {
        var detail = event.detail;
        var scrollWidth = detail.scrollWidth;
        var scrollLeft = detail.scrollLeft;
        var dataset = event.currentTarget.dataset;
        var scrollComponentWidth = dataset.scrollWidth || dataset.scrollwidth || 0;
        var indicatorWidth = dataset.indicatorWidth || dataset.indicatorwidth || 0;
        var barWidth = dataset.barWidth || dataset.barwidth || 0;
        var x = scrollLeft / (scrollWidth - scrollComponentWidth) * (indicatorWidth - barWidth);
        setBarStyle(ownerInstance, x);
      }
      function scrolltolower(event, ownerInstance) {
        ownerInstance.callMethod("scrollEvent", "right");
        var dataset = event.currentTarget.dataset;
        var indicatorWidth = dataset.indicatorWidth || dataset.indicatorwidth || 0;
        var barWidth = dataset.barWidth || dataset.barwidth || 0;
        setBarStyle(ownerInstance, indicatorWidth - barWidth);
      }
      function scrolltoupper(event, ownerInstance) {
        ownerInstance.callMethod("scrollEvent", "left");
        setBarStyle(ownerInstance, 0);
      }
      function setBarStyle(ownerInstance, x) {
        ownerInstance.selectComponent(".u-scroll-list__indicator__line__bar") && ownerInstance.selectComponent(".u-scroll-list__indicator__line__bar").setStyle({
          transform: "translateX(" + x + "px)"
        });
      }
      module.exports = {
        scroll,
        scrolltolower,
        scrolltoupper
      };
    }
  });
  return require_stdin();
})();


__wxsModules.f1d6d7d8 = (() => {
  var __getOwnPropNames = Object.getOwnPropertyNames;
  var __commonJS = (cb, mod) => function __require() {
    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  };

  // <stdin>
  var require_stdin = __commonJS({
    "<stdin>"(exports, module) {
      function touchstart(event, ownerInstance) {
        var instance = event.instance;
        var state = instance.getState();
        if (state.disabled)
          return;
        var touches = event.touches;
        if (touches && touches.length > 1)
          return;
        state.moving = true;
        state.startX = touches[0].pageX;
        state.startY = touches[0].pageY;
        ownerInstance.callMethod("closeOther");
      }
      function touchmove(event, ownerInstance) {
        var instance = event.instance;
        var state = instance.getState();
        if (state.disabled || !state.moving)
          return;
        var touches = event.touches;
        var pageX = touches[0].pageX;
        var pageY = touches[0].pageY;
        var moveX = pageX - state.startX;
        var moveY = pageY - state.startY;
        var buttonsWidth = state.buttonsWidth;
        if (Math.abs(moveX) > Math.abs(moveY) || Math.abs(moveX) > state.threshold) {
          event.preventDefault && event.preventDefault();
          event.stopPropagation && event.stopPropagation();
        }
        if (Math.abs(moveX) < Math.abs(moveY))
          return;
        if (state.status === "open") {
          if (moveX < 0)
            moveX = 0;
          if (moveX > buttonsWidth)
            moveX = buttonsWidth;
          moveSwipeAction(-buttonsWidth + moveX, instance, ownerInstance);
        } else {
          if (moveX > 0)
            moveX = 0;
          if (Math.abs(moveX) > buttonsWidth)
            moveX = -buttonsWidth;
          moveSwipeAction(moveX, instance, ownerInstance);
        }
      }
      function touchend(event, ownerInstance) {
        var instance = event.instance;
        var state = instance.getState();
        if (!state.moving || state.disabled)
          return;
        var touches = event.changedTouches ? event.changedTouches[0] : {};
        var pageX = touches.pageX;
        var pageY = touches.pageY;
        var moveX = pageX - state.startX;
        if (state.status === "open") {
          if (moveX < 0)
            return;
          if (moveX === 0) {
            return closeSwipeAction(instance, ownerInstance);
          }
          if (Math.abs(moveX) < state.threshold) {
            openSwipeAction(instance, ownerInstance);
          } else {
            closeSwipeAction(instance, ownerInstance);
          }
        } else {
          if (moveX > 0)
            return;
          if (Math.abs(moveX) < state.threshold) {
            closeSwipeAction(instance, ownerInstance);
          } else {
            openSwipeAction(instance, ownerInstance);
          }
        }
      }
      function getDuration(value) {
        if (value.toString().indexOf("s") >= 0)
          return value;
        return value > 30 ? value + "ms" : value + "s";
      }
      function moveSwipeAction(moveX, instance, ownerInstance) {
        var state = instance.getState();
        var buttons = ownerInstance.selectAllComponents(".u-swipe-action-item__right__button");
        instance.requestAnimationFrame(function() {
          instance.setStyle({
            // 设置translateX的值
            "transition": "none",
            transform: "translateX(" + moveX + "px)",
            "-webkit-transform": "translateX(" + moveX + "px)"
          });
        });
      }
      function openSwipeAction(instance, ownerInstance) {
        var state = instance.getState();
        var buttons = ownerInstance.selectAllComponents(".u-swipe-action-item__right__button");
        var duration = getDuration(state.duration);
        var buttonsWidth = -state.buttonsWidth;
        instance.requestAnimationFrame(function() {
          instance.setStyle({
            "transition": "transform " + duration,
            "transform": "translateX(" + buttonsWidth + "px)",
            "-webkit-transform": "translateX(" + buttonsWidth + "px)"
          });
        });
        setStatus("open", instance, ownerInstance);
      }
      function setStatus(status, instance, ownerInstance) {
        var state = instance.getState();
        state.status = status;
        ownerInstance.callMethod("setState", status);
      }
      function closeSwipeAction(instance, ownerInstance) {
        var state = instance.getState();
        var buttons = ownerInstance.selectAllComponents(".u-swipe-action-item__right__button");
        var len = buttons.length;
        var duration = getDuration(state.duration);
        instance.requestAnimationFrame(function() {
          instance.setStyle({
            "transition": "transform " + duration,
            "transform": "translateX(0px)",
            "-webkit-transform": "translateX(0px)"
          });
          for (var i = len - 1; i >= 0; i--) {
            buttons[i].setStyle({
              "transition": "transform " + duration,
              "transform": "translateX(0px)",
              "-webkit-transform": "translateX(0px)"
            });
          }
        });
        setStatus("close", instance, ownerInstance);
      }
      function statusChange(newValue, oldValue, ownerInstance, instance) {
        var state = instance.getState();
        if (state.disabled)
          return;
        if (newValue === "close" && state.status === "open") {
          closeSwipeAction(instance, ownerInstance);
        } else if (newValue === "open" && state.status === "close") {
          openSwipeAction(instance, ownerInstance);
        }
      }
      function sizeChange(newValue, oldValue, ownerInstance, instance) {
        var state = instance.getState();
        if (!state || !newValue) {
          return;
        }
        state.disabled = newValue.disabled;
        state.duration = newValue.duration;
        state.show = newValue.show;
        state.threshold = newValue.threshold;
        state.buttons = newValue.buttons;
        if (state.buttons) {
          var len = state.buttons.length;
          var buttonsWidth = 0;
          var buttons = newValue.buttons;
          for (var i = 0; i < len; i++) {
            buttonsWidth += buttons[i].width;
          }
        }
        state.buttonsWidth = buttonsWidth;
        if (state.show) {
          openSwipeAction(instance, ownerInstance);
        }
      }
      module.exports = {
        touchstart,
        touchmove,
        touchend,
        sizeChange,
        statusChange
      };
    }
  });
  return require_stdin();
})();


__wxsModules["155ce918"] = (() => {
  var __getOwnPropNames = Object.getOwnPropertyNames;
  var __commonJS = (cb, mod) => function __require() {
    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  };

  // <stdin>
  var require_stdin = __commonJS({
    "<stdin>"(exports, module) {
      var inlineTags = {
        abbr: true,
        b: true,
        big: true,
        code: true,
        del: true,
        em: true,
        i: true,
        ins: true,
        label: true,
        q: true,
        small: true,
        span: true,
        strong: true,
        sub: true,
        sup: true
      };
      module.exports = {
        isInline: function(tagName, style) {
          return inlineTags[tagName] || (style || "").indexOf("display:inline") !== -1;
        }
      };
    }
  });
  return require_stdin();
})();
