1 line
22 KiB
JSON
1 line
22 KiB
JSON
{"ast":null,"code":"// Utils\nimport { bem } from './shared';\nimport { range } from '../utils/format/number';\nimport { preventDefault } from '../utils/dom/event'; // Mixins\n\nimport { TouchMixin } from '../mixins/touch'; // Component\n\nimport Image from '../image';\nimport Loading from '../loading';\nimport SwipeItem from '../swipe-item';\nfunction getDistance(touches) {\n return Math.sqrt(Math.pow(touches[0].clientX - touches[1].clientX, 2) + Math.pow(touches[0].clientY - touches[1].clientY, 2));\n}\nexport default {\n mixins: [TouchMixin],\n props: {\n src: String,\n show: Boolean,\n active: Number,\n minZoom: [Number, String],\n maxZoom: [Number, String],\n rootWidth: Number,\n rootHeight: Number\n },\n data: function data() {\n return {\n scale: 1,\n moveX: 0,\n moveY: 0,\n moving: false,\n zooming: false,\n imageRatio: 0,\n displayWidth: 0,\n displayHeight: 0\n };\n },\n computed: {\n vertical: function vertical() {\n var rootWidth = this.rootWidth,\n rootHeight = this.rootHeight;\n var rootRatio = rootHeight / rootWidth;\n return this.imageRatio > rootRatio;\n },\n imageStyle: function imageStyle() {\n var scale = this.scale;\n var style = {\n transitionDuration: this.zooming || this.moving ? '0s' : '.3s'\n };\n if (scale !== 1) {\n var offsetX = this.moveX / scale;\n var offsetY = this.moveY / scale;\n style.transform = \"scale(\" + scale + \", \" + scale + \") translate(\" + offsetX + \"px, \" + offsetY + \"px)\";\n }\n return style;\n },\n maxMoveX: function maxMoveX() {\n if (this.imageRatio) {\n var displayWidth = this.vertical ? this.rootHeight / this.imageRatio : this.rootWidth;\n return Math.max(0, (this.scale * displayWidth - this.rootWidth) / 2);\n }\n return 0;\n },\n maxMoveY: function maxMoveY() {\n if (this.imageRatio) {\n var displayHeight = this.vertical ? this.rootHeight : this.rootWidth * this.imageRatio;\n return Math.max(0, (this.scale * displayHeight - this.rootHeight) / 2);\n }\n return 0;\n }\n },\n watch: {\n active: 'resetScale',\n show: function show(val) {\n if (!val) {\n this.resetScale();\n }\n }\n },\n mounted: function mounted() {\n this.bindTouchEvent(this.$el);\n },\n methods: {\n resetScale: function resetScale() {\n this.setScale(1);\n this.moveX = 0;\n this.moveY = 0;\n },\n setScale: function setScale(scale) {\n scale = range(scale, +this.minZoom, +this.maxZoom);\n if (scale !== this.scale) {\n this.scale = scale;\n this.$emit('scale', {\n scale: this.scale,\n index: this.active\n });\n }\n },\n toggleScale: function toggleScale() {\n var scale = this.scale > 1 ? 1 : 2;\n this.setScale(scale);\n this.moveX = 0;\n this.moveY = 0;\n },\n onTouchStart: function onTouchStart(event) {\n var touches = event.touches;\n var _this$offsetX = this.offsetX,\n offsetX = _this$offsetX === void 0 ? 0 : _this$offsetX;\n this.touchStart(event);\n this.touchStartTime = new Date();\n this.fingerNum = touches.length;\n this.startMoveX = this.moveX;\n this.startMoveY = this.moveY;\n this.moving = this.fingerNum === 1 && this.scale !== 1;\n this.zooming = this.fingerNum === 2 && !offsetX;\n if (this.zooming) {\n this.startScale = this.scale;\n this.startDistance = getDistance(event.touches);\n }\n },\n onTouchMove: function onTouchMove(event) {\n var touches = event.touches;\n this.touchMove(event);\n if (this.moving || this.zooming) {\n preventDefault(event, true);\n }\n if (this.moving) {\n var moveX = this.deltaX + this.startMoveX;\n var moveY = this.deltaY + this.startMoveY;\n this.moveX = range(moveX, -this.maxMoveX, this.maxMoveX);\n this.moveY = range(moveY, -this.maxMoveY, this.maxMoveY);\n }\n if (this.zooming && touches.length === 2) {\n var distance = getDistance(touches);\n var scale = this.startScale * distance / this.startDistance;\n this.setScale(scale);\n }\n },\n onTouchEnd: function onTouchEnd(event) {\n var stopPropagation = false;\n /* istanbul ignore else */\n\n if (this.moving || this.zooming) {\n stopPropagation = true;\n if (this.moving && this.startMoveX === this.moveX && this.startMoveY === this.moveY) {\n stopPropagation = false;\n }\n if (!event.touches.length) {\n if (this.zooming) {\n this.moveX = range(this.moveX, -this.maxMoveX, this.maxMoveX);\n this.moveY = range(this.moveY, -this.maxMoveY, this.maxMoveY);\n this.zooming = false;\n }\n this.moving = false;\n this.startMoveX = 0;\n this.startMoveY = 0;\n this.startScale = 1;\n if (this.scale < 1) {\n this.resetScale();\n }\n }\n } // eliminate tap delay on safari\n\n preventDefault(event, stopPropagation);\n this.checkTap();\n this.resetTouchStatus();\n },\n checkTap: function checkTap() {\n var _this = this;\n if (this.fingerNum > 1) {\n return;\n }\n var _this$offsetX2 = this.offsetX,\n offsetX = _this$offsetX2 === void 0 ? 0 : _this$offsetX2,\n _this$offsetY = this.offsetY,\n offsetY = _this$offsetY === void 0 ? 0 : _this$offsetY;\n var deltaTime = new Date() - this.touchStartTime;\n var TAP_TIME = 250;\n var TAP_OFFSET = 5;\n if (offsetX < TAP_OFFSET && offsetY < TAP_OFFSET && deltaTime < TAP_TIME) {\n if (this.doubleTapTimer) {\n clearTimeout(this.doubleTapTimer);\n this.doubleTapTimer = null;\n this.toggleScale();\n } else {\n this.doubleTapTimer = setTimeout(function () {\n _this.$emit('close');\n _this.doubleTapTimer = null;\n }, TAP_TIME);\n }\n }\n },\n onLoad: function onLoad(event) {\n var _event$target = event.target,\n naturalWidth = _event$target.naturalWidth,\n naturalHeight = _event$target.naturalHeight;\n this.imageRatio = naturalHeight / naturalWidth;\n }\n },\n render: function render() {\n var h = arguments[0];\n var imageSlots = {\n loading: function loading() {\n return h(Loading, {\n \"attrs\": {\n \"type\": \"spinner\"\n }\n });\n }\n };\n return h(SwipeItem, {\n \"class\": bem('swipe-item')\n }, [h(Image, {\n \"attrs\": {\n \"src\": this.src,\n \"fit\": \"contain\"\n },\n \"class\": bem('image', {\n vertical: this.vertical\n }),\n \"style\": this.imageStyle,\n \"scopedSlots\": imageSlots,\n \"on\": {\n \"load\": this.onLoad\n }\n })]);\n }\n};","map":{"version":3,"names":["bem","range","preventDefault","TouchMixin","Image","Loading","SwipeItem","getDistance","touches","Math","sqrt","pow","clientX","clientY","mixins","props","src","String","show","Boolean","active","Number","minZoom","maxZoom","rootWidth","rootHeight","data","scale","moveX","moveY","moving","zooming","imageRatio","displayWidth","displayHeight","computed","vertical","rootRatio","imageStyle","style","transitionDuration","offsetX","offsetY","transform","maxMoveX","max","maxMoveY","watch","val","resetScale","mounted","bindTouchEvent","$el","methods","setScale","$emit","index","toggleScale","onTouchStart","event","_this$offsetX","touchStart","touchStartTime","Date","fingerNum","length","startMoveX","startMoveY","startScale","startDistance","onTouchMove","touchMove","deltaX","deltaY","distance","onTouchEnd","stopPropagation","checkTap","resetTouchStatus","_this","_this$offsetX2","_this$offsetY","deltaTime","TAP_TIME","TAP_OFFSET","doubleTapTimer","clearTimeout","setTimeout","onLoad","_event$target","target","naturalWidth","naturalHeight","render","h","arguments","imageSlots","loading"],"sources":["E:/work/sino/sino-h5/node_modules/vant/es/image-preview/ImagePreviewItem.js"],"sourcesContent":["// Utils\nimport { bem } from './shared';\nimport { range } from '../utils/format/number';\nimport { preventDefault } from '../utils/dom/event'; // Mixins\n\nimport { TouchMixin } from '../mixins/touch'; // Component\n\nimport Image from '../image';\nimport Loading from '../loading';\nimport SwipeItem from '../swipe-item';\n\nfunction getDistance(touches) {\n return Math.sqrt(Math.pow(touches[0].clientX - touches[1].clientX, 2) + Math.pow(touches[0].clientY - touches[1].clientY, 2));\n}\n\nexport default {\n mixins: [TouchMixin],\n props: {\n src: String,\n show: Boolean,\n active: Number,\n minZoom: [Number, String],\n maxZoom: [Number, String],\n rootWidth: Number,\n rootHeight: Number\n },\n data: function data() {\n return {\n scale: 1,\n moveX: 0,\n moveY: 0,\n moving: false,\n zooming: false,\n imageRatio: 0,\n displayWidth: 0,\n displayHeight: 0\n };\n },\n computed: {\n vertical: function vertical() {\n var rootWidth = this.rootWidth,\n rootHeight = this.rootHeight;\n var rootRatio = rootHeight / rootWidth;\n return this.imageRatio > rootRatio;\n },\n imageStyle: function imageStyle() {\n var scale = this.scale;\n var style = {\n transitionDuration: this.zooming || this.moving ? '0s' : '.3s'\n };\n\n if (scale !== 1) {\n var offsetX = this.moveX / scale;\n var offsetY = this.moveY / scale;\n style.transform = \"scale(\" + scale + \", \" + scale + \") translate(\" + offsetX + \"px, \" + offsetY + \"px)\";\n }\n\n return style;\n },\n maxMoveX: function maxMoveX() {\n if (this.imageRatio) {\n var displayWidth = this.vertical ? this.rootHeight / this.imageRatio : this.rootWidth;\n return Math.max(0, (this.scale * displayWidth - this.rootWidth) / 2);\n }\n\n return 0;\n },\n maxMoveY: function maxMoveY() {\n if (this.imageRatio) {\n var displayHeight = this.vertical ? this.rootHeight : this.rootWidth * this.imageRatio;\n return Math.max(0, (this.scale * displayHeight - this.rootHeight) / 2);\n }\n\n return 0;\n }\n },\n watch: {\n active: 'resetScale',\n show: function show(val) {\n if (!val) {\n this.resetScale();\n }\n }\n },\n mounted: function mounted() {\n this.bindTouchEvent(this.$el);\n },\n methods: {\n resetScale: function resetScale() {\n this.setScale(1);\n this.moveX = 0;\n this.moveY = 0;\n },\n setScale: function setScale(scale) {\n scale = range(scale, +this.minZoom, +this.maxZoom);\n\n if (scale !== this.scale) {\n this.scale = scale;\n this.$emit('scale', {\n scale: this.scale,\n index: this.active\n });\n }\n },\n toggleScale: function toggleScale() {\n var scale = this.scale > 1 ? 1 : 2;\n this.setScale(scale);\n this.moveX = 0;\n this.moveY = 0;\n },\n onTouchStart: function onTouchStart(event) {\n var touches = event.touches;\n var _this$offsetX = this.offsetX,\n offsetX = _this$offsetX === void 0 ? 0 : _this$offsetX;\n this.touchStart(event);\n this.touchStartTime = new Date();\n this.fingerNum = touches.length;\n this.startMoveX = this.moveX;\n this.startMoveY = this.moveY;\n this.moving = this.fingerNum === 1 && this.scale !== 1;\n this.zooming = this.fingerNum === 2 && !offsetX;\n\n if (this.zooming) {\n this.startScale = this.scale;\n this.startDistance = getDistance(event.touches);\n }\n },\n onTouchMove: function onTouchMove(event) {\n var touches = event.touches;\n this.touchMove(event);\n\n if (this.moving || this.zooming) {\n preventDefault(event, true);\n }\n\n if (this.moving) {\n var moveX = this.deltaX + this.startMoveX;\n var moveY = this.deltaY + this.startMoveY;\n this.moveX = range(moveX, -this.maxMoveX, this.maxMoveX);\n this.moveY = range(moveY, -this.maxMoveY, this.maxMoveY);\n }\n\n if (this.zooming && touches.length === 2) {\n var distance = getDistance(touches);\n var scale = this.startScale * distance / this.startDistance;\n this.setScale(scale);\n }\n },\n onTouchEnd: function onTouchEnd(event) {\n var stopPropagation = false;\n /* istanbul ignore else */\n\n if (this.moving || this.zooming) {\n stopPropagation = true;\n\n if (this.moving && this.startMoveX === this.moveX && this.startMoveY === this.moveY) {\n stopPropagation = false;\n }\n\n if (!event.touches.length) {\n if (this.zooming) {\n this.moveX = range(this.moveX, -this.maxMoveX, this.maxMoveX);\n this.moveY = range(this.moveY, -this.maxMoveY, this.maxMoveY);\n this.zooming = false;\n }\n\n this.moving = false;\n this.startMoveX = 0;\n this.startMoveY = 0;\n this.startScale = 1;\n\n if (this.scale < 1) {\n this.resetScale();\n }\n }\n } // eliminate tap delay on safari\n\n\n preventDefault(event, stopPropagation);\n this.checkTap();\n this.resetTouchStatus();\n },\n checkTap: function checkTap() {\n var _this = this;\n\n if (this.fingerNum > 1) {\n return;\n }\n\n var _this$offsetX2 = this.offsetX,\n offsetX = _this$offsetX2 === void 0 ? 0 : _this$offsetX2,\n _this$offsetY = this.offsetY,\n offsetY = _this$offsetY === void 0 ? 0 : _this$offsetY;\n var deltaTime = new Date() - this.touchStartTime;\n var TAP_TIME = 250;\n var TAP_OFFSET = 5;\n\n if (offsetX < TAP_OFFSET && offsetY < TAP_OFFSET && deltaTime < TAP_TIME) {\n if (this.doubleTapTimer) {\n clearTimeout(this.doubleTapTimer);\n this.doubleTapTimer = null;\n this.toggleScale();\n } else {\n this.doubleTapTimer = setTimeout(function () {\n _this.$emit('close');\n\n _this.doubleTapTimer = null;\n }, TAP_TIME);\n }\n }\n },\n onLoad: function onLoad(event) {\n var _event$target = event.target,\n naturalWidth = _event$target.naturalWidth,\n naturalHeight = _event$target.naturalHeight;\n this.imageRatio = naturalHeight / naturalWidth;\n }\n },\n render: function render() {\n var h = arguments[0];\n var imageSlots = {\n loading: function loading() {\n return h(Loading, {\n \"attrs\": {\n \"type\": \"spinner\"\n }\n });\n }\n };\n return h(SwipeItem, {\n \"class\": bem('swipe-item')\n }, [h(Image, {\n \"attrs\": {\n \"src\": this.src,\n \"fit\": \"contain\"\n },\n \"class\": bem('image', {\n vertical: this.vertical\n }),\n \"style\": this.imageStyle,\n \"scopedSlots\": imageSlots,\n \"on\": {\n \"load\": this.onLoad\n }\n })]);\n }\n};"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]} |