| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825 |
- import Viewer from "viewerjs";
- export { default as Viewer } from "viewerjs";
- import Vue from "vue";
- var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
- var freeGlobal$1 = freeGlobal;
- var freeSelf = typeof self == "object" && self && self.Object === Object && self;
- var root = freeGlobal$1 || freeSelf || Function("return this")();
- var root$1 = root;
- var Symbol$1 = root$1.Symbol;
- var Symbol$2 = Symbol$1;
- var objectProto$8 = Object.prototype;
- var hasOwnProperty$6 = objectProto$8.hasOwnProperty;
- var nativeObjectToString$1 = objectProto$8.toString;
- var symToStringTag$1 = Symbol$2 ? Symbol$2.toStringTag : void 0;
- function getRawTag(value) {
- var isOwn = hasOwnProperty$6.call(value, symToStringTag$1), tag = value[symToStringTag$1];
- try {
- value[symToStringTag$1] = void 0;
- var unmasked = true;
- } catch (e) {
- }
- var result = nativeObjectToString$1.call(value);
- if (unmasked) {
- if (isOwn) {
- value[symToStringTag$1] = tag;
- } else {
- delete value[symToStringTag$1];
- }
- }
- return result;
- }
- var objectProto$7 = Object.prototype;
- var nativeObjectToString = objectProto$7.toString;
- function objectToString(value) {
- return nativeObjectToString.call(value);
- }
- var nullTag = "[object Null]", undefinedTag = "[object Undefined]";
- var symToStringTag = Symbol$2 ? Symbol$2.toStringTag : void 0;
- function baseGetTag(value) {
- if (value == null) {
- return value === void 0 ? undefinedTag : nullTag;
- }
- return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
- }
- function isObjectLike(value) {
- return value != null && typeof value == "object";
- }
- var symbolTag = "[object Symbol]";
- function isSymbol(value) {
- return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
- }
- var isArray = Array.isArray;
- var isArray$1 = isArray;
- var reWhitespace = /\s/;
- function trimmedEndIndex(string) {
- var index2 = string.length;
- while (index2-- && reWhitespace.test(string.charAt(index2))) {
- }
- return index2;
- }
- var reTrimStart = /^\s+/;
- function baseTrim(string) {
- return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
- }
- function isObject(value) {
- var type = typeof value;
- return value != null && (type == "object" || type == "function");
- }
- var NAN = 0 / 0;
- var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
- var reIsBinary = /^0b[01]+$/i;
- var reIsOctal = /^0o[0-7]+$/i;
- var freeParseInt = parseInt;
- function toNumber(value) {
- if (typeof value == "number") {
- return value;
- }
- if (isSymbol(value)) {
- return NAN;
- }
- if (isObject(value)) {
- var other = typeof value.valueOf == "function" ? value.valueOf() : value;
- value = isObject(other) ? other + "" : other;
- }
- if (typeof value != "string") {
- return value === 0 ? value : +value;
- }
- value = baseTrim(value);
- var isBinary = reIsBinary.test(value);
- return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
- }
- function identity(value) {
- return value;
- }
- var asyncTag = "[object AsyncFunction]", funcTag$1 = "[object Function]", genTag = "[object GeneratorFunction]", proxyTag = "[object Proxy]";
- function isFunction(value) {
- if (!isObject(value)) {
- return false;
- }
- var tag = baseGetTag(value);
- return tag == funcTag$1 || tag == genTag || tag == asyncTag || tag == proxyTag;
- }
- var coreJsData = root$1["__core-js_shared__"];
- var coreJsData$1 = coreJsData;
- var maskSrcKey = function() {
- var uid = /[^.]+$/.exec(coreJsData$1 && coreJsData$1.keys && coreJsData$1.keys.IE_PROTO || "");
- return uid ? "Symbol(src)_1." + uid : "";
- }();
- function isMasked(func) {
- return !!maskSrcKey && maskSrcKey in func;
- }
- var funcProto$1 = Function.prototype;
- var funcToString$1 = funcProto$1.toString;
- function toSource(func) {
- if (func != null) {
- try {
- return funcToString$1.call(func);
- } catch (e) {
- }
- try {
- return func + "";
- } catch (e) {
- }
- }
- return "";
- }
- var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
- var reIsHostCtor = /^\[object .+?Constructor\]$/;
- var funcProto = Function.prototype, objectProto$6 = Object.prototype;
- var funcToString = funcProto.toString;
- var hasOwnProperty$5 = objectProto$6.hasOwnProperty;
- var reIsNative = RegExp(
- "^" + funcToString.call(hasOwnProperty$5).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
- );
- function baseIsNative(value) {
- if (!isObject(value) || isMasked(value)) {
- return false;
- }
- var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
- return pattern.test(toSource(value));
- }
- function getValue(object, key) {
- return object == null ? void 0 : object[key];
- }
- function getNative(object, key) {
- var value = getValue(object, key);
- return baseIsNative(value) ? value : void 0;
- }
- function apply(func, thisArg, args) {
- switch (args.length) {
- case 0:
- return func.call(thisArg);
- case 1:
- return func.call(thisArg, args[0]);
- case 2:
- return func.call(thisArg, args[0], args[1]);
- case 3:
- return func.call(thisArg, args[0], args[1], args[2]);
- }
- return func.apply(thisArg, args);
- }
- var HOT_COUNT = 800, HOT_SPAN = 16;
- var nativeNow = Date.now;
- function shortOut(func) {
- var count = 0, lastCalled = 0;
- return function() {
- var stamp = nativeNow(), remaining = HOT_SPAN - (stamp - lastCalled);
- lastCalled = stamp;
- if (remaining > 0) {
- if (++count >= HOT_COUNT) {
- return arguments[0];
- }
- } else {
- count = 0;
- }
- return func.apply(void 0, arguments);
- };
- }
- function constant(value) {
- return function() {
- return value;
- };
- }
- var defineProperty = function() {
- try {
- var func = getNative(Object, "defineProperty");
- func({}, "", {});
- return func;
- } catch (e) {
- }
- }();
- var defineProperty$1 = defineProperty;
- var baseSetToString = !defineProperty$1 ? identity : function(func, string) {
- return defineProperty$1(func, "toString", {
- "configurable": true,
- "enumerable": false,
- "value": constant(string),
- "writable": true
- });
- };
- var baseSetToString$1 = baseSetToString;
- var setToString = shortOut(baseSetToString$1);
- var setToString$1 = setToString;
- var MAX_SAFE_INTEGER$1 = 9007199254740991;
- var reIsUint = /^(?:0|[1-9]\d*)$/;
- function isIndex(value, length) {
- var type = typeof value;
- length = length == null ? MAX_SAFE_INTEGER$1 : length;
- return !!length && (type == "number" || type != "symbol" && reIsUint.test(value)) && (value > -1 && value % 1 == 0 && value < length);
- }
- function baseAssignValue(object, key, value) {
- if (key == "__proto__" && defineProperty$1) {
- defineProperty$1(object, key, {
- "configurable": true,
- "enumerable": true,
- "value": value,
- "writable": true
- });
- } else {
- object[key] = value;
- }
- }
- function eq(value, other) {
- return value === other || value !== value && other !== other;
- }
- var objectProto$5 = Object.prototype;
- var hasOwnProperty$4 = objectProto$5.hasOwnProperty;
- function assignValue(object, key, value) {
- var objValue = object[key];
- if (!(hasOwnProperty$4.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) {
- baseAssignValue(object, key, value);
- }
- }
- function copyObject(source, props, object, customizer) {
- var isNew = !object;
- object || (object = {});
- var index2 = -1, length = props.length;
- while (++index2 < length) {
- var key = props[index2];
- var newValue = customizer ? customizer(object[key], source[key], key, object, source) : void 0;
- if (newValue === void 0) {
- newValue = source[key];
- }
- if (isNew) {
- baseAssignValue(object, key, newValue);
- } else {
- assignValue(object, key, newValue);
- }
- }
- return object;
- }
- var nativeMax$1 = Math.max;
- function overRest(func, start, transform) {
- start = nativeMax$1(start === void 0 ? func.length - 1 : start, 0);
- return function() {
- var args = arguments, index2 = -1, length = nativeMax$1(args.length - start, 0), array = Array(length);
- while (++index2 < length) {
- array[index2] = args[start + index2];
- }
- index2 = -1;
- var otherArgs = Array(start + 1);
- while (++index2 < start) {
- otherArgs[index2] = args[index2];
- }
- otherArgs[start] = transform(array);
- return apply(func, this, otherArgs);
- };
- }
- function baseRest(func, start) {
- return setToString$1(overRest(func, start, identity), func + "");
- }
- var MAX_SAFE_INTEGER = 9007199254740991;
- function isLength(value) {
- return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
- }
- function isArrayLike(value) {
- return value != null && isLength(value.length) && !isFunction(value);
- }
- function isIterateeCall(value, index2, object) {
- if (!isObject(object)) {
- return false;
- }
- var type = typeof index2;
- if (type == "number" ? isArrayLike(object) && isIndex(index2, object.length) : type == "string" && index2 in object) {
- return eq(object[index2], value);
- }
- return false;
- }
- function createAssigner(assigner) {
- return baseRest(function(object, sources) {
- var index2 = -1, length = sources.length, customizer = length > 1 ? sources[length - 1] : void 0, guard = length > 2 ? sources[2] : void 0;
- customizer = assigner.length > 3 && typeof customizer == "function" ? (length--, customizer) : void 0;
- if (guard && isIterateeCall(sources[0], sources[1], guard)) {
- customizer = length < 3 ? void 0 : customizer;
- length = 1;
- }
- object = Object(object);
- while (++index2 < length) {
- var source = sources[index2];
- if (source) {
- assigner(object, source, index2, customizer);
- }
- }
- return object;
- });
- }
- var objectProto$4 = Object.prototype;
- function isPrototype(value) {
- var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto$4;
- return value === proto;
- }
- function baseTimes(n, iteratee) {
- var index2 = -1, result = Array(n);
- while (++index2 < n) {
- result[index2] = iteratee(index2);
- }
- return result;
- }
- var argsTag$1 = "[object Arguments]";
- function baseIsArguments(value) {
- return isObjectLike(value) && baseGetTag(value) == argsTag$1;
- }
- var objectProto$3 = Object.prototype;
- var hasOwnProperty$3 = objectProto$3.hasOwnProperty;
- var propertyIsEnumerable = objectProto$3.propertyIsEnumerable;
- var isArguments = baseIsArguments(function() {
- return arguments;
- }()) ? baseIsArguments : function(value) {
- return isObjectLike(value) && hasOwnProperty$3.call(value, "callee") && !propertyIsEnumerable.call(value, "callee");
- };
- var isArguments$1 = isArguments;
- function stubFalse() {
- return false;
- }
- var freeExports$1 = typeof exports == "object" && exports && !exports.nodeType && exports;
- var freeModule$1 = freeExports$1 && typeof module == "object" && module && !module.nodeType && module;
- var moduleExports$1 = freeModule$1 && freeModule$1.exports === freeExports$1;
- var Buffer = moduleExports$1 ? root$1.Buffer : void 0;
- var nativeIsBuffer = Buffer ? Buffer.isBuffer : void 0;
- var isBuffer = nativeIsBuffer || stubFalse;
- var isBuffer$1 = isBuffer;
- var argsTag = "[object Arguments]", arrayTag = "[object Array]", boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", funcTag = "[object Function]", mapTag = "[object Map]", numberTag = "[object Number]", objectTag = "[object Object]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", weakMapTag = "[object WeakMap]";
- var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
- var typedArrayTags = {};
- typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = typedArrayTags[uint32Tag] = true;
- typedArrayTags[argsTag] = typedArrayTags[arrayTag] = typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = typedArrayTags[errorTag] = typedArrayTags[funcTag] = typedArrayTags[mapTag] = typedArrayTags[numberTag] = typedArrayTags[objectTag] = typedArrayTags[regexpTag] = typedArrayTags[setTag] = typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;
- function baseIsTypedArray(value) {
- return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
- }
- function baseUnary(func) {
- return function(value) {
- return func(value);
- };
- }
- var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
- var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module;
- var moduleExports = freeModule && freeModule.exports === freeExports;
- var freeProcess = moduleExports && freeGlobal$1.process;
- var nodeUtil = function() {
- try {
- var types = freeModule && freeModule.require && freeModule.require("util").types;
- if (types) {
- return types;
- }
- return freeProcess && freeProcess.binding && freeProcess.binding("util");
- } catch (e) {
- }
- }();
- var nodeUtil$1 = nodeUtil;
- var nodeIsTypedArray = nodeUtil$1 && nodeUtil$1.isTypedArray;
- var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
- var isTypedArray$1 = isTypedArray;
- var objectProto$2 = Object.prototype;
- var hasOwnProperty$2 = objectProto$2.hasOwnProperty;
- function arrayLikeKeys(value, inherited) {
- var isArr = isArray$1(value), isArg = !isArr && isArguments$1(value), isBuff = !isArr && !isArg && isBuffer$1(value), isType = !isArr && !isArg && !isBuff && isTypedArray$1(value), skipIndexes = isArr || isArg || isBuff || isType, result = skipIndexes ? baseTimes(value.length, String) : [], length = result.length;
- for (var key in value) {
- if ((inherited || hasOwnProperty$2.call(value, key)) && !(skipIndexes && (key == "length" || isBuff && (key == "offset" || key == "parent") || isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || isIndex(key, length)))) {
- result.push(key);
- }
- }
- return result;
- }
- function overArg(func, transform) {
- return function(arg) {
- return func(transform(arg));
- };
- }
- var nativeKeys = overArg(Object.keys, Object);
- var nativeKeys$1 = nativeKeys;
- var objectProto$1 = Object.prototype;
- var hasOwnProperty$1 = objectProto$1.hasOwnProperty;
- function baseKeys(object) {
- if (!isPrototype(object)) {
- return nativeKeys$1(object);
- }
- var result = [];
- for (var key in Object(object)) {
- if (hasOwnProperty$1.call(object, key) && key != "constructor") {
- result.push(key);
- }
- }
- return result;
- }
- function keys(object) {
- return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
- }
- var objectProto = Object.prototype;
- var hasOwnProperty = objectProto.hasOwnProperty;
- var assign = createAssigner(function(object, source) {
- if (isPrototype(source) || isArrayLike(source)) {
- copyObject(source, keys(source), object);
- return;
- }
- for (var key in source) {
- if (hasOwnProperty.call(source, key)) {
- assignValue(object, key, source[key]);
- }
- }
- });
- var assign$1 = assign;
- var now = function() {
- return root$1.Date.now();
- };
- var now$1 = now;
- var FUNC_ERROR_TEXT = "Expected a function";
- var nativeMax = Math.max, nativeMin = Math.min;
- function debounce(func, wait, options) {
- var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
- if (typeof func != "function") {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- wait = toNumber(wait) || 0;
- if (isObject(options)) {
- leading = !!options.leading;
- maxing = "maxWait" in options;
- maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
- trailing = "trailing" in options ? !!options.trailing : trailing;
- }
- function invokeFunc(time) {
- var args = lastArgs, thisArg = lastThis;
- lastArgs = lastThis = void 0;
- lastInvokeTime = time;
- result = func.apply(thisArg, args);
- return result;
- }
- function leadingEdge(time) {
- lastInvokeTime = time;
- timerId = setTimeout(timerExpired, wait);
- return leading ? invokeFunc(time) : result;
- }
- function remainingWait(time) {
- var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
- return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
- }
- function shouldInvoke(time) {
- var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
- return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
- }
- function timerExpired() {
- var time = now$1();
- if (shouldInvoke(time)) {
- return trailingEdge(time);
- }
- timerId = setTimeout(timerExpired, remainingWait(time));
- }
- function trailingEdge(time) {
- timerId = void 0;
- if (trailing && lastArgs) {
- return invokeFunc(time);
- }
- lastArgs = lastThis = void 0;
- return result;
- }
- function cancel() {
- if (timerId !== void 0) {
- clearTimeout(timerId);
- }
- lastInvokeTime = 0;
- lastArgs = lastCallTime = lastThis = timerId = void 0;
- }
- function flush() {
- return timerId === void 0 ? result : trailingEdge(now$1());
- }
- function debounced() {
- var time = now$1(), isInvoking = shouldInvoke(time);
- lastArgs = arguments;
- lastThis = this;
- lastCallTime = time;
- if (isInvoking) {
- if (timerId === void 0) {
- return leadingEdge(lastCallTime);
- }
- if (maxing) {
- clearTimeout(timerId);
- timerId = setTimeout(timerExpired, wait);
- return invokeFunc(lastCallTime);
- }
- }
- if (timerId === void 0) {
- timerId = setTimeout(timerExpired, wait);
- }
- return result;
- }
- debounced.cancel = cancel;
- debounced.flush = flush;
- return debounced;
- }
- var render = function() {
- var _vm = this;
- var _h = _vm.$createElement;
- var _c = _vm._self._c || _h;
- return _c("div", [_vm._t("default", null, { "images": _vm.images, "options": _vm.options })], 2);
- };
- var staticRenderFns = [];
- function normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {
- var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports;
- if (render2) {
- options.render = render2;
- options.staticRenderFns = staticRenderFns2;
- options._compiled = true;
- }
- if (functionalTemplate) {
- options.functional = true;
- }
- if (scopeId) {
- options._scopeId = "data-v-" + scopeId;
- }
- var hook;
- if (moduleIdentifier) {
- hook = function(context) {
- context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;
- if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") {
- context = __VUE_SSR_CONTEXT__;
- }
- if (injectStyles) {
- injectStyles.call(this, context);
- }
- if (context && context._registeredComponents) {
- context._registeredComponents.add(moduleIdentifier);
- }
- };
- options._ssrRegister = hook;
- } else if (injectStyles) {
- hook = shadowMode ? function() {
- injectStyles.call(
- this,
- (options.functional ? this.parent : this).$root.$options.shadowRoot
- );
- } : injectStyles;
- }
- if (hook) {
- if (options.functional) {
- options._injectStyles = hook;
- var originalRender = options.render;
- options.render = function renderWithStyleInjection(h, context) {
- hook.call(context);
- return originalRender(h, context);
- };
- } else {
- var existing = options.beforeCreate;
- options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
- }
- }
- return {
- exports: scriptExports,
- options
- };
- }
- const __vue2_script = {
- props: {
- images: {
- type: Array
- },
- rebuild: {
- type: Boolean,
- default: false
- },
- trigger: {},
- options: {
- type: Object
- }
- },
- data() {
- return {};
- },
- computed: {},
- watch: {
- images() {
- this.$nextTick(() => {
- this.onChange();
- });
- },
- trigger: {
- handler() {
- this.$nextTick(() => {
- this.onChange();
- });
- },
- deep: true
- },
- options: {
- handler() {
- this.$nextTick(() => {
- this.rebuildViewer();
- });
- },
- deep: true
- }
- },
- mounted() {
- this.createViewer();
- },
- unmounted() {
- this.destroyViewer();
- },
- methods: {
- onChange() {
- if (this.rebuild) {
- this.rebuildViewer();
- } else {
- this.updateViewer();
- }
- },
- rebuildViewer() {
- this.destroyViewer();
- this.createViewer();
- },
- updateViewer() {
- if (this.$viewer) {
- this.$viewer.update();
- this.$emit("inited", this.$viewer);
- } else {
- this.createViewer();
- }
- },
- destroyViewer() {
- this.$viewer && this.$viewer.destroy();
- },
- createViewer() {
- this.$viewer = new Viewer(this.$el, this.options);
- this.$emit("inited", this.$viewer);
- }
- }
- };
- const __cssModules = {};
- var __component__ = /* @__PURE__ */ normalizeComponent(
- __vue2_script,
- render,
- staticRenderFns,
- false,
- __vue2_injectStyles,
- null,
- null,
- null
- );
- function __vue2_injectStyles(context) {
- for (let o in __cssModules) {
- this[o] = __cssModules[o];
- }
- }
- var component = /* @__PURE__ */ function() {
- return __component__.exports;
- }();
- const directive = ({ name = "viewer", debug = false } = {}) => {
- function createViewer(el, options, rebuild = false, observer = false) {
- Vue.nextTick(() => {
- if (observer && !imageDiff(el))
- return;
- if (rebuild || !el[`$${name}`]) {
- destroyViewer(el);
- el[`$${name}`] = new Viewer(el, options);
- log("Viewer created");
- } else {
- el[`$${name}`].update();
- log("Viewer updated");
- }
- });
- }
- function imageDiff(el) {
- const imageContent = el.innerHTML.match(/<img([\w\W]+?)[\\/]?>/g);
- const viewerImageText = imageContent ? imageContent.join("") : void 0;
- if (el.__viewerImageDiffCache === viewerImageText) {
- log("Element change detected, but image(s) has not changed");
- return false;
- } else {
- log("Image change detected");
- el.__viewerImageDiffCache = viewerImageText;
- return true;
- }
- }
- function createObserver(el, options, debouncedCreateViewer, rebuild) {
- destroyObserver(el);
- const MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;
- if (!MutationObserver) {
- log("Observer not supported");
- return;
- }
- const observer = new MutationObserver((mutations) => {
- mutations.forEach((mutation) => {
- log(`Viewer mutation:${mutation.type}`);
- debouncedCreateViewer(el, options, rebuild, true);
- });
- });
- const config = { attributes: true, childList: true, characterData: true, subtree: true };
- observer.observe(el, config);
- el.__viewerMutationObserver = observer;
- log("Observer created");
- }
- function createWatcher(el, { expression }, vnode, debouncedCreateViewer) {
- const simplePathRE = /^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/;
- if (!expression || !simplePathRE.test(expression)) {
- log("Only simple dot-delimited paths can create watcher");
- return;
- }
- el.__viewerUnwatch = vnode.context.$watch(expression, (newVal, oldVal) => {
- log("Change detected by watcher: ", expression);
- debouncedCreateViewer(el, newVal, true);
- }, {
- deep: true
- });
- log("Watcher created, expression: ", expression);
- }
- function destroyViewer(el) {
- if (!el[`$${name}`]) {
- return;
- }
- el[`$${name}`].destroy();
- delete el[`$${name}`];
- log("Viewer destroyed");
- }
- function destroyObserver(el) {
- if (!el.__viewerMutationObserver) {
- return;
- }
- el.__viewerMutationObserver.disconnect();
- delete el.__viewerMutationObserver;
- log("Observer destroyed");
- }
- function destroyWatcher(el) {
- if (!el.__viewerUnwatch) {
- return;
- }
- el.__viewerUnwatch();
- delete el.__viewerUnwatch;
- log("Watcher destroyed");
- }
- function log() {
- debug && console.log(...arguments);
- }
- const directive2 = {
- bind(el, binding, vnode) {
- log("Viewer bind");
- const debouncedCreateViewer = debounce(createViewer, 50);
- debouncedCreateViewer(el, binding.value);
- createWatcher(el, binding, vnode, debouncedCreateViewer);
- if (!binding.modifiers.static) {
- createObserver(el, binding.value, debouncedCreateViewer, binding.modifiers.rebuild);
- }
- },
- unbind(el, binding) {
- log("Viewer unbind");
- destroyObserver(el);
- destroyWatcher(el);
- destroyViewer(el);
- }
- };
- return directive2;
- };
- const api = ({ images = [], options = {} } = {}) => {
- options = assign$1(options, {
- inline: false
- });
- const ViewerToken = Vue.extend({
- render(h) {
- return h(
- "div",
- {
- style: {
- display: "none"
- },
- class: ["__viewer-token"]
- },
- images.map((attr) => {
- return h(
- "img",
- {
- attrs: typeof attr === "string" ? { src: attr } : attr
- }
- );
- })
- );
- }
- });
- const token = new ViewerToken();
- token.$mount();
- document.body.appendChild(token.$el);
- const $viewer = new Viewer(token.$el, options);
- const $destroy = $viewer.destroy.bind($viewer);
- $viewer.destroy = function() {
- $destroy();
- token.$destroy();
- document.body.removeChild(token.$el);
- return $viewer;
- };
- $viewer.show();
- token.$el.addEventListener("hidden", function() {
- if (this.viewer === $viewer) {
- $viewer.destroy();
- }
- });
- return $viewer;
- };
- var index = {
- install(Vue2, { name = "viewer", debug = false, defaultOptions } = {}) {
- Viewer.setDefaults(defaultOptions);
- Vue2.component(name, assign$1(component, { name }));
- Vue2.directive(name, directive({ name, debug }));
- Vue2.prototype[`$${name}Api`] = api;
- },
- setDefaults(defaultOptions) {
- Viewer.setDefaults(defaultOptions);
- }
- };
- export { api, component, index as default, directive };
|