1 line
18 KiB
JSON
1 line
18 KiB
JSON
{"ast":null,"code":"import \"core-js/modules/es.array.push.js\";\n// Context\nimport { context } from './context';\nimport { openOverlay, closeOverlay, updateOverlay, removeOverlay } from './overlay'; // Utils\n\nimport { on, off, preventDefault } from '../../utils/dom/event';\nimport { removeNode } from '../../utils/dom/node';\nimport { getScroller } from '../../utils/dom/scroll'; // Mixins\n\nimport { TouchMixin } from '../touch';\nimport { PortalMixin } from '../portal';\nimport { CloseOnPopstateMixin } from '../close-on-popstate';\nexport var popupMixinProps = {\n // Initial rendering animation\n transitionAppear: Boolean,\n // whether to show popup\n value: Boolean,\n // whether to show overlay\n overlay: Boolean,\n // overlay custom style\n overlayStyle: Object,\n // overlay custom class name\n overlayClass: String,\n // whether to close popup when overlay is clicked\n closeOnClickOverlay: Boolean,\n // z-index\n zIndex: [Number, String],\n // prevent body scroll\n lockScroll: {\n type: Boolean,\n default: true\n },\n // whether to lazy render\n lazyRender: {\n type: Boolean,\n default: true\n }\n};\nexport function PopupMixin(options) {\n if (options === void 0) {\n options = {};\n }\n return {\n mixins: [TouchMixin, CloseOnPopstateMixin, PortalMixin({\n afterPortal: function afterPortal() {\n if (this.overlay) {\n updateOverlay();\n }\n }\n })],\n provide: function provide() {\n return {\n vanPopup: this\n };\n },\n props: popupMixinProps,\n data: function data() {\n this.onReopenCallback = [];\n return {\n inited: this.value\n };\n },\n computed: {\n shouldRender: function shouldRender() {\n return this.inited || !this.lazyRender;\n }\n },\n watch: {\n value: function value(val) {\n var type = val ? 'open' : 'close';\n this.inited = this.inited || this.value;\n this[type]();\n if (!options.skipToggleEvent) {\n this.$emit(type);\n }\n },\n overlay: 'renderOverlay'\n },\n mounted: function mounted() {\n if (this.value) {\n this.open();\n }\n },\n /* istanbul ignore next */\n activated: function activated() {\n if (this.shouldReopen) {\n this.$emit('input', true);\n this.shouldReopen = false;\n }\n },\n beforeDestroy: function beforeDestroy() {\n removeOverlay(this);\n if (this.opened) {\n this.removeLock();\n }\n if (this.getContainer) {\n removeNode(this.$el);\n }\n },\n /* istanbul ignore next */\n deactivated: function deactivated() {\n if (this.value) {\n this.close();\n this.shouldReopen = true;\n }\n },\n methods: {\n open: function open() {\n /* istanbul ignore next */\n if (this.$isServer || this.opened) {\n return;\n } // cover default zIndex\n\n if (this.zIndex !== undefined) {\n context.zIndex = this.zIndex;\n }\n this.opened = true;\n this.renderOverlay();\n this.addLock();\n this.onReopenCallback.forEach(function (callback) {\n callback();\n });\n },\n addLock: function addLock() {\n if (this.lockScroll) {\n on(document, 'touchstart', this.touchStart);\n on(document, 'touchmove', this.onTouchMove);\n if (!context.lockCount) {\n document.body.classList.add('van-overflow-hidden');\n }\n context.lockCount++;\n }\n },\n removeLock: function removeLock() {\n if (this.lockScroll && context.lockCount) {\n context.lockCount--;\n off(document, 'touchstart', this.touchStart);\n off(document, 'touchmove', this.onTouchMove);\n if (!context.lockCount) {\n document.body.classList.remove('van-overflow-hidden');\n }\n }\n },\n close: function close() {\n if (!this.opened) {\n return;\n }\n closeOverlay(this);\n this.opened = false;\n this.removeLock();\n this.$emit('input', false);\n },\n onTouchMove: function onTouchMove(event) {\n this.touchMove(event);\n var direction = this.deltaY > 0 ? '10' : '01';\n var el = getScroller(event.target, this.$el);\n var scrollHeight = el.scrollHeight,\n offsetHeight = el.offsetHeight,\n scrollTop = el.scrollTop;\n var status = '11';\n /* istanbul ignore next */\n\n if (scrollTop === 0) {\n status = offsetHeight >= scrollHeight ? '00' : '01';\n } else if (scrollTop + offsetHeight >= scrollHeight) {\n status = '10';\n }\n /* istanbul ignore next */\n\n if (status !== '11' && this.direction === 'vertical' && !(parseInt(status, 2) & parseInt(direction, 2))) {\n preventDefault(event, true);\n }\n },\n renderOverlay: function renderOverlay() {\n var _this = this;\n if (this.$isServer || !this.value) {\n return;\n }\n this.$nextTick(function () {\n _this.updateZIndex(_this.overlay ? 1 : 0);\n if (_this.overlay) {\n openOverlay(_this, {\n zIndex: context.zIndex++,\n duration: _this.duration,\n className: _this.overlayClass,\n customStyle: _this.overlayStyle\n });\n } else {\n closeOverlay(_this);\n }\n });\n },\n updateZIndex: function updateZIndex(value) {\n if (value === void 0) {\n value = 0;\n }\n this.$el.style.zIndex = ++context.zIndex + value;\n },\n onReopen: function onReopen(callback) {\n this.onReopenCallback.push(callback);\n }\n }\n };\n}","map":{"version":3,"names":["context","openOverlay","closeOverlay","updateOverlay","removeOverlay","on","off","preventDefault","removeNode","getScroller","TouchMixin","PortalMixin","CloseOnPopstateMixin","popupMixinProps","transitionAppear","Boolean","value","overlay","overlayStyle","Object","overlayClass","String","closeOnClickOverlay","zIndex","Number","lockScroll","type","default","lazyRender","PopupMixin","options","mixins","afterPortal","provide","vanPopup","props","data","onReopenCallback","inited","computed","shouldRender","watch","val","skipToggleEvent","$emit","mounted","open","activated","shouldReopen","beforeDestroy","opened","removeLock","getContainer","$el","deactivated","close","methods","$isServer","undefined","renderOverlay","addLock","forEach","callback","document","touchStart","onTouchMove","lockCount","body","classList","add","remove","event","touchMove","direction","deltaY","el","target","scrollHeight","offsetHeight","scrollTop","status","parseInt","_this","$nextTick","updateZIndex","duration","className","customStyle","style","onReopen","push"],"sources":["C:/Users/zhouxueli/Desktop/scheduling-app/node_modules/vant/es/mixins/popup/index.js"],"sourcesContent":["// Context\nimport { context } from './context';\nimport { openOverlay, closeOverlay, updateOverlay, removeOverlay } from './overlay'; // Utils\n\nimport { on, off, preventDefault } from '../../utils/dom/event';\nimport { removeNode } from '../../utils/dom/node';\nimport { getScroller } from '../../utils/dom/scroll'; // Mixins\n\nimport { TouchMixin } from '../touch';\nimport { PortalMixin } from '../portal';\nimport { CloseOnPopstateMixin } from '../close-on-popstate';\nexport var popupMixinProps = {\n // Initial rendering animation\n transitionAppear: Boolean,\n // whether to show popup\n value: Boolean,\n // whether to show overlay\n overlay: Boolean,\n // overlay custom style\n overlayStyle: Object,\n // overlay custom class name\n overlayClass: String,\n // whether to close popup when overlay is clicked\n closeOnClickOverlay: Boolean,\n // z-index\n zIndex: [Number, String],\n // prevent body scroll\n lockScroll: {\n type: Boolean,\n default: true\n },\n // whether to lazy render\n lazyRender: {\n type: Boolean,\n default: true\n }\n};\nexport function PopupMixin(options) {\n if (options === void 0) {\n options = {};\n }\n\n return {\n mixins: [TouchMixin, CloseOnPopstateMixin, PortalMixin({\n afterPortal: function afterPortal() {\n if (this.overlay) {\n updateOverlay();\n }\n }\n })],\n provide: function provide() {\n return {\n vanPopup: this\n };\n },\n props: popupMixinProps,\n data: function data() {\n this.onReopenCallback = [];\n return {\n inited: this.value\n };\n },\n computed: {\n shouldRender: function shouldRender() {\n return this.inited || !this.lazyRender;\n }\n },\n watch: {\n value: function value(val) {\n var type = val ? 'open' : 'close';\n this.inited = this.inited || this.value;\n this[type]();\n\n if (!options.skipToggleEvent) {\n this.$emit(type);\n }\n },\n overlay: 'renderOverlay'\n },\n mounted: function mounted() {\n if (this.value) {\n this.open();\n }\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n if (this.shouldReopen) {\n this.$emit('input', true);\n this.shouldReopen = false;\n }\n },\n beforeDestroy: function beforeDestroy() {\n removeOverlay(this);\n\n if (this.opened) {\n this.removeLock();\n }\n\n if (this.getContainer) {\n removeNode(this.$el);\n }\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n if (this.value) {\n this.close();\n this.shouldReopen = true;\n }\n },\n methods: {\n open: function open() {\n /* istanbul ignore next */\n if (this.$isServer || this.opened) {\n return;\n } // cover default zIndex\n\n\n if (this.zIndex !== undefined) {\n context.zIndex = this.zIndex;\n }\n\n this.opened = true;\n this.renderOverlay();\n this.addLock();\n this.onReopenCallback.forEach(function (callback) {\n callback();\n });\n },\n addLock: function addLock() {\n if (this.lockScroll) {\n on(document, 'touchstart', this.touchStart);\n on(document, 'touchmove', this.onTouchMove);\n\n if (!context.lockCount) {\n document.body.classList.add('van-overflow-hidden');\n }\n\n context.lockCount++;\n }\n },\n removeLock: function removeLock() {\n if (this.lockScroll && context.lockCount) {\n context.lockCount--;\n off(document, 'touchstart', this.touchStart);\n off(document, 'touchmove', this.onTouchMove);\n\n if (!context.lockCount) {\n document.body.classList.remove('van-overflow-hidden');\n }\n }\n },\n close: function close() {\n if (!this.opened) {\n return;\n }\n\n closeOverlay(this);\n this.opened = false;\n this.removeLock();\n this.$emit('input', false);\n },\n onTouchMove: function onTouchMove(event) {\n this.touchMove(event);\n var direction = this.deltaY > 0 ? '10' : '01';\n var el = getScroller(event.target, this.$el);\n var scrollHeight = el.scrollHeight,\n offsetHeight = el.offsetHeight,\n scrollTop = el.scrollTop;\n var status = '11';\n /* istanbul ignore next */\n\n if (scrollTop === 0) {\n status = offsetHeight >= scrollHeight ? '00' : '01';\n } else if (scrollTop + offsetHeight >= scrollHeight) {\n status = '10';\n }\n /* istanbul ignore next */\n\n\n if (status !== '11' && this.direction === 'vertical' && !(parseInt(status, 2) & parseInt(direction, 2))) {\n preventDefault(event, true);\n }\n },\n renderOverlay: function renderOverlay() {\n var _this = this;\n\n if (this.$isServer || !this.value) {\n return;\n }\n\n this.$nextTick(function () {\n _this.updateZIndex(_this.overlay ? 1 : 0);\n\n if (_this.overlay) {\n openOverlay(_this, {\n zIndex: context.zIndex++,\n duration: _this.duration,\n className: _this.overlayClass,\n customStyle: _this.overlayStyle\n });\n } else {\n closeOverlay(_this);\n }\n });\n },\n updateZIndex: function updateZIndex(value) {\n if (value === void 0) {\n value = 0;\n }\n\n this.$el.style.zIndex = ++context.zIndex + value;\n },\n onReopen: function onReopen(callback) {\n this.onReopenCallback.push(callback);\n }\n }\n };\n}"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]} |