UNPKG

480 kBSource Map (JSON)View Raw
1{"version":3,"sources":["webpack://LightGalleryVue/webpack/universalModuleDefinition","webpack://LightGalleryVue/webpack/bootstrap","webpack://LightGalleryVue/./node_modules/core-js/internals/to-string-tag-support.js","webpack://LightGalleryVue/./node_modules/core-js/internals/function-bind-context.js","webpack://LightGalleryVue/./node_modules/core-js/internals/function-bind.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://LightGalleryVue/./node_modules/core-js/internals/get-substitution.js","webpack://LightGalleryVue/./node_modules/core-js/internals/ie8-dom-define.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.string.split.js","webpack://LightGalleryVue/./node_modules/core-js/internals/regexp-exec-abstract.js","webpack://LightGalleryVue/./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-for-each.js","webpack://LightGalleryVue/./node_modules/core-js/internals/an-instance.js","webpack://LightGalleryVue/./node_modules/core-js/internals/html.js","webpack://LightGalleryVue/./node_modules/core-js/internals/a-function.js","webpack://LightGalleryVue/./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack://LightGalleryVue/./node_modules/core-js/internals/engine-is-ios.js","webpack://LightGalleryVue/./node_modules/core-js/internals/require-object-coercible.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-method-has-species-support.js","webpack://LightGalleryVue/./node_modules/core-js/internals/iterate.js","webpack://LightGalleryVue/./node_modules/core-js/internals/to-absolute-index.js","webpack://LightGalleryVue/./node_modules/core-js/internals/export.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.regexp.to-string.js","webpack://LightGalleryVue/./node_modules/core-js/internals/set-species.js","webpack://LightGalleryVue/./node_modules/core-js/internals/iterator-close.js","webpack://LightGalleryVue/./node_modules/core-js/internals/task.js","webpack://LightGalleryVue/./node_modules/core-js/internals/engine-v8-version.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.object.get-prototype-of.js","webpack://LightGalleryVue/./node_modules/core-js/internals/engine-user-agent.js","webpack://LightGalleryVue/./node_modules/core-js/internals/get-iterator-method.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-define-properties.js","webpack://LightGalleryVue/./node_modules/core-js/internals/a-possible-prototype.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.string.iterator.js","webpack://LightGalleryVue/./node_modules/core-js/internals/iterators.js","webpack://LightGalleryVue/./node_modules/core-js/internals/path.js","webpack://LightGalleryVue/./node_modules/core-js/internals/indexed-object.js","webpack://LightGalleryVue/./node_modules/core-js/internals/add-to-unscopables.js","webpack://LightGalleryVue/./node_modules/core-js/internals/host-report-errors.js","webpack://LightGalleryVue/./node_modules/core-js/internals/is-regexp.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.string.match.js","webpack://LightGalleryVue/./node_modules/core-js/internals/species-constructor.js","webpack://LightGalleryVue/./node_modules/core-js/internals/native-symbol.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.reflect.construct.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-includes.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.filter.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-from.js","webpack://LightGalleryVue/./node_modules/core-js/internals/to-length.js","webpack://LightGalleryVue/./node_modules/core-js/internals/has.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.string.replace.js","webpack://LightGalleryVue/./node_modules/core-js/internals/shared.js","webpack://LightGalleryVue/./node_modules/core-js/internals/own-keys.js","webpack://LightGalleryVue/./node_modules/core-js/internals/create-property-descriptor.js","webpack://LightGalleryVue/./node_modules/core-js/internals/engine-is-node.js","webpack://LightGalleryVue/./node_modules/core-js/internals/string-multibyte.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-species-create.js","webpack://LightGalleryVue/./node_modules/core-js/internals/internal-state.js","webpack://LightGalleryVue/./node_modules/core-js/internals/redefine.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/typeof.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://LightGalleryVue/./node_modules/core-js/internals/define-well-known-symbol.js","webpack://LightGalleryVue/./node_modules/core-js/internals/enum-bug-keys.js","webpack://LightGalleryVue/./node_modules/core-js/internals/to-object.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-create.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.find.js","webpack://LightGalleryVue/./node_modules/core-js/internals/define-iterator.js","webpack://LightGalleryVue/./node_modules/core-js/internals/native-weak-map.js","webpack://LightGalleryVue/./node_modules/core-js/internals/an-object.js","webpack://LightGalleryVue/./node_modules/core-js/internals/descriptors.js","webpack://LightGalleryVue/./node_modules/core-js/internals/create-property.js","webpack://LightGalleryVue/./node_modules/core-js/internals/is-object.js","webpack://LightGalleryVue/./node_modules/@soda/get-current-script/index.js","webpack://LightGalleryVue/./node_modules/core-js/internals/inspect-source.js","webpack://LightGalleryVue/./node_modules/core-js/internals/advance-string-index.js","webpack://LightGalleryVue/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://LightGalleryVue/./node_modules/core-js/internals/uid.js","webpack://LightGalleryVue/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://LightGalleryVue/./node_modules/core-js/internals/regexp-exec.js","webpack://LightGalleryVue/./node_modules/core-js/internals/is-forced.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.concat.js","webpack://LightGalleryVue/./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-define-property.js","webpack://LightGalleryVue/./node_modules/core-js/internals/create-iterator-constructor.js","webpack://LightGalleryVue/./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.splice.js","webpack://LightGalleryVue/./node_modules/core-js/internals/engine-is-webos-webkit.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.symbol.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.from.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-method-is-strict.js","webpack://LightGalleryVue/./node_modules/core-js/internals/to-integer.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.regexp.exec.js","webpack://LightGalleryVue/./node_modules/core-js/internals/regexp-flags.js","webpack://LightGalleryVue/./node_modules/core-js/internals/iterators-core.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-to-string.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.function.name.js","webpack://LightGalleryVue/./node_modules/core-js/internals/microtask.js","webpack://LightGalleryVue/./node_modules/core-js/internals/well-known-symbol.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.object.keys.js","webpack://LightGalleryVue/./node_modules/core-js/internals/array-iteration.js","webpack://LightGalleryVue/./node_modules/core-js/internals/to-primitive.js","webpack://LightGalleryVue/./node_modules/core-js/internals/is-pure.js","webpack://LightGalleryVue/./node_modules/core-js/internals/classof-raw.js","webpack://LightGalleryVue/./node_modules/core-js/internals/shared-store.js","webpack://LightGalleryVue/(webpack)/buildin/global.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-keys-internal.js","webpack://LightGalleryVue/./node_modules/core-js/internals/document-create-element.js","webpack://LightGalleryVue/./node_modules/core-js/internals/promise-resolve.js","webpack://LightGalleryVue/./node_modules/core-js/internals/set-global.js","webpack://LightGalleryVue/./node_modules/core-js/internals/hidden-keys.js","webpack://LightGalleryVue/./node_modules/core-js/internals/fails.js","webpack://LightGalleryVue/./node_modules/core-js/internals/get-built-in.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.symbol.iterator.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.object.to-string.js","webpack://LightGalleryVue/./node_modules/core-js/internals/set-to-string-tag.js","webpack://LightGalleryVue/./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.map.js","webpack://LightGalleryVue/./node_modules/core-js/internals/global.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack://LightGalleryVue/./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-keys.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.symbol.description.js","webpack://LightGalleryVue/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://LightGalleryVue/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.iterator.js","webpack://LightGalleryVue/./node_modules/core-js/internals/redefine-all.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack://LightGalleryVue/./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack://LightGalleryVue/./node_modules/core-js/internals/perform.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.promise.js","webpack://LightGalleryVue/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://LightGalleryVue/./node_modules/core-js/internals/is-array.js","webpack://LightGalleryVue/./node_modules/core-js/internals/is-array-iterator-method.js","webpack://LightGalleryVue/./node_modules/core-js/internals/new-promise-capability.js","webpack://LightGalleryVue/./node_modules/core-js/internals/classof.js","webpack://LightGalleryVue/./node_modules/core-js/internals/shared-key.js","webpack://LightGalleryVue/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://LightGalleryVue/./src/components/LightGallery.vue","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/createSuper.js","webpack://LightGalleryVue/./node_modules/tslib/tslib.es6.js","webpack://LightGalleryVue/./node_modules/vue-class-component/dist/vue-class-component.esm-bundler.js","webpack://LightGalleryVue/../src/lg-events.ts","webpack://LightGalleryVue/../src/lg-settings.ts","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://LightGalleryVue/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://LightGalleryVue/../src/lgQuery.ts","webpack://LightGalleryVue/../src/lg-utils.ts","webpack://LightGalleryVue/../src/lightgallery.ts","webpack://LightGalleryVue/../src/index.ts","webpack://LightGalleryVue/./src/components/LightGallery.vue?af3d","webpack://LightGalleryVue/./src/components/LightGallery.vue?93b5","webpack://LightGalleryVue/./src/components/LightGallery.vue?282d","webpack://LightGalleryVue/./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js","webpack://LightGalleryVue/./node_modules/core-js/modules/es.array.slice.js","webpack://LightGalleryVue/./node_modules/core-js/internals/to-indexed-object.js","webpack://LightGalleryVue/./node_modules/core-js/internals/dom-iterables.js","webpack://LightGalleryVue/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://LightGalleryVue/./node_modules/core-js/internals/native-promise-constructor.js"],"names":["_typeof","obj","Symbol","iterator","module","exports","__esModule","constructor","prototype","_defineProperty","key","value","Object","defineProperty","enumerable","configurable","writable","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread2","target","i","arguments","length","source","forEach","getOwnPropertyDescriptors","defineProperties","_classCallCheck","instance","Constructor","TypeError","_defineProperties","props","descriptor","_createClass","protoProps","staticProps","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_inherits","subClass","superClass","create","_getPrototypeOf","getPrototypeOf","_isNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","call","e","_assertThisInitialized","self","ReferenceError","_possibleConstructorReturn","assertThisInitialized","_createSuper","Derived","hasNativeReflectConstruct","isNativeReflectConstruct","_createSuperInternal","Super","result","NewTarget","possibleConstructorReturn","_arrayLikeToArray","arr","len","arr2","Array","_arrayWithoutHoles","isArray","arrayLikeToArray","_iterableToArray","iter","from","_unsupportedIterableToArray","minLen","n","toString","slice","name","test","_nonIterableSpread","_toConsumableArray","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;QCVA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;AClFA,sBAAsB,mBAAO,CAAC,MAAgC;;AAE9D;AACA;;AAEA;;AAEA;;;;;;;;ACPA,gBAAgB,mBAAO,CAAC,MAAyB;;AAEjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACvBa;AACb,gBAAgB,mBAAO,CAAC,MAAyB;AACjD,eAAe,mBAAO,CAAC,MAAwB;;AAE/C;AACA;;AAEA;AACA;AACA,8BAA8B,gBAAgB;AAC9C;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;AC1BA;AACA,sBAAsB,mBAAO,CAAC,MAAgC;AAC9D,2BAA2B,mBAAO,CAAC,MAA4C;;AAE/E,iBAAiB;;AAEjB;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACtBA,kBAAkB,mBAAO,CAAC,MAA0B;AACpD,iCAAiC,mBAAO,CAAC,MAA4C;AACrF,+BAA+B,mBAAO,CAAC,MAAyC;AAChF,sBAAsB,mBAAO,CAAC,MAAgC;AAC9D,kBAAkB,mBAAO,CAAC,MAA2B;AACrD,UAAU,mBAAO,CAAC,MAAkB;AACpC,qBAAqB,mBAAO,CAAC,MAA6B;;AAE1D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;AACA;;;;;;;;ACpBA,eAAe,mBAAO,CAAC,MAAwB;;AAE/C;AACA;AACA,yCAAyC,IAAI;AAC7C,kDAAkD,IAAI;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;ACvCA,kBAAkB,mBAAO,CAAC,MAA0B;AACpD,YAAY,mBAAO,CAAC,MAAoB;AACxC,oBAAoB,mBAAO,CAAC,MAAsC;;AAElE;AACA;AACA;AACA;AACA,sBAAsB,UAAU;AAChC,GAAG;AACH,CAAC;;;;;;;;;ACVY;AACb,oCAAoC,mBAAO,CAAC,MAAiD;AAC7F,eAAe,mBAAO,CAAC,MAAwB;AAC/C,eAAe,mBAAO,CAAC,MAAwB;AAC/C,6BAA6B,mBAAO,CAAC,MAAuC;AAC5E,yBAAyB,mBAAO,CAAC,MAAkC;AACnE,yBAAyB,mBAAO,CAAC,MAAmC;AACpE,eAAe,mBAAO,CAAC,MAAwB;AAC/C,qBAAqB,mBAAO,CAAC,MAAmC;AAChE,iBAAiB,mBAAO,CAAC,MAA0B;AACnD,oBAAoB,mBAAO,CAAC,MAAoC;;AAEhE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+EAA+E;AAC/E;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,yBAAyB,mBAAmB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACrID,cAAc,mBAAO,CAAC,MAAe;AACrC,iBAAiB,mBAAO,CAAC,MAAe;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;ACpBA,aAAa,mBAAO,CAAC,MAAqB;AAC1C,mBAAmB,mBAAO,CAAC,MAA4B;AACvD,cAAc,mBAAO,CAAC,MAA6B;AACnD,kCAAkC,mBAAO,CAAC,MAA6C;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;;;;;;;;ACda;AACb,eAAe,mBAAO,CAAC,MAA8B;AACrD,0BAA0B,mBAAO,CAAC,MAAqC;;AAEvE;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACXD;AACA;AACA;AACA,GAAG;AACH;;;;;;;;ACJA,iBAAiB,mBAAO,CAAC,MAA2B;;AAEpD;;;;;;;;ACFA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;ACJA,sBAAsB,mBAAO,CAAC,MAAgC;;AAE9D;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,SAAS,EAAE;AACzD,CAAC,gBAAgB;;AAEjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA,GAAG,gBAAgB;AACnB;AACA;;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BAAO,CAAC,MAAkC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,mCAAmC;AAC7C;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,UAAU,eAAe;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACxCA,gBAAgB,mBAAO,CAAC,MAAyB;;AAEjD;;AAEA;AACA;AACA;AACA,uEAAuE;AACvE;;;;;;;;ACRA,uBAAuB;;AAEvB;AACA;AACA;;;;;;;;;ACJa;AACb,oCAAoC,mBAAO,CAAC,MAAiD;AAC7F,eAAe,mBAAO,CAAC,MAAwB;AAC/C,eAAe,mBAAO,CAAC,MAAwB;AAC/C,gBAAgB,mBAAO,CAAC,MAAyB;AACjD,6BAA6B,mBAAO,CAAC,MAAuC;AAC5E,yBAAyB,mBAAO,CAAC,MAAmC;AACpE,sBAAsB,mBAAO,CAAC,MAA+B;AAC7D,iBAAiB,mBAAO,CAAC,MAAmC;;AAE5D;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,qBAAqB,oBAAoB;AACzC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;;;ACjGD,cAAc,mBAAO,CAAC,MAAsB;AAC5C,YAAY,mBAAO,CAAC,MAA2B;;AAE/C;AACA,qEAAqE;AACrE,CAAC;AACD;AACA;AACA;AACA,CAAC;;;;;;;;ACTD,iBAAiB,mBAAO,CAAC,MAA2B;AACpD,gCAAgC,mBAAO,CAAC,MAA4C;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A;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;;AAE1D;AACA;AACA,+DAA+D,qBAAqB;AACpF;AACA;;AAEA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,CAAC;;;;;;;;AC9ED,YAAY,mBAAO,CAAC,MAA2B;;AAE/C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;ACXa;AACb,aAAa,mBAAO,CAAC,MAA+B;;AAEpD;AACA;AACA;AACA;AACA;;;;;;;;ACPA,mD;;;;;;;ACAA;AACA;;AAEA;AACA;AACA;;;;;;;;ACLA,kBAAkB,mBAAO,CAAC,MAA0B;AACpD,2BAA2B,mBAAO,CAAC,MAAqC;AACxE,+BAA+B,mBAAO,CAAC,MAAyC;;AAEhF;AACA;AACA,CAAC;AACD;AACA;AACA;;;;;;;;;ACTa;AACb,kBAAkB,mBAAO,CAAC,MAAgB;AAC1C,oBAAoB,mBAAO,CAAC,MAAyB;AACrD,aAAa,mBAAO,CAAC,MAAU;;AAE/B;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,0BAA0B;AAC7C;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;;;;;;;;ACrFA,YAAY,mBAAO,CAAC,MAAoB;;AAExC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAE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ACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,kCAAkC;AAChH;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,gFAAgF,eAAe;AAC/F;AACA;AACA;;AAEA,GAAG,yEAAyE;AAC5E;AACA,CAAC;;AAED;AACA;AACA,CAAC;;AAED,GAAG,qDAAqD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,0BAA0B,mBAAmB,EAAE;AAC/C,0BAA0B,oBAAoB;AAC9C,CAAC;;AAED,GAAG,2EAA2E;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,GAAG,uDAAuD;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA,GAAG,0DAA0D,kCAAkC,EAAE,GAAG;AACpG;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,YAAY,QAAQ;AACzC;AACA,0CAA0C;AAC1C,GAAG;;AAEH,KAAK,4DAA4D;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;ACtTA,QAAQ,mBAAO,CAAC,MAAqB;AACrC,WAAW,mBAAO,CAAC,MAAyB;AAC5C,kCAAkC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,MAAgC;AAC9D,cAAc,mBAAO,CAAC,MAA6B;AACnD,iBAAiB,mBAAO,CAAC,MAAgC;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,cAAc,eAAe,cAAc;AACjE;AACA;AACA;AACA,qCAAqC,cAAc;AACnD,CAAC;;AAED;AACA,yDAAyD,cAAc;AACvE,CAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,eAAe;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,cAAc;AAClC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK,GAAG,eAAe;;AAEvB;AACA,wCAAwC,+CAA+C;AACvF;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA,GAAG,2CAA2C;AAC9C;AACA,CAAC;;AAED;AACA;;AAEA;;AAEA;AACA,GAAG,8CAA8C;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,GAAG,yDAAyD;AAC5D;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED,GAAG,2DAA2D;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA,CAAC;;;;;;;;AC5XD,UAAU,mBAAO,CAAC,MAAkB;AACpC,cAAc,mBAAO,CAAC,MAAuB;AAC7C,qCAAqC,mBAAO,CAAC,MAAiD;AAC9F,2BAA2B,mBAAO,CAAC,MAAqC;;AAExE;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA;;;;;;;;ACbA,cAAc,mBAAO,CAAC,MAA0B;;AAEhD;AACA;AACA;AACA;AACA;AACA;;;;;;;;ACPA,sBAAsB,mBAAO,CAAC,MAAgC;AAC9D,gBAAgB,mBAAO,CAAC,MAAwB;;AAEhD;A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uD,EAAE,EAAE,GAAG;AAClK,4CAA4C,sCAAsC,UAAU,oBAAoB,EAAE,EAAE,UAAU;AAC9H;;AAEO;AACP,gCAAgC,uCAAuC,aAAa,EAAE,EAAE,OAAO,kBAAkB;AACjH;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP,4CAA4C;AAC5C;;AAEO;AACP;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;;ACzNA;AACA;AACA;AACA;AACA;AACqC;;AAErC,SAAS,8CAAe;AACxB;AACA;AACA;AACA;;AAEA,SAAS,gDAAiB;AAC1B,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAS,2CAAY;AACrB,kBAAkB,gDAAiB;AACnC,mBAAmB,gDAAiB;AACpC;AACA;;AAEA,SAAS,8CAAe;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;;AAEA,SAAS,uCAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA,SAAS,6CAAc;AACvB,iBAAiB,sBAAsB;AACvC;;AAEA;AACA,MAAM,uCAAO;AACb,QAAQ,8CAAe;AACvB,OAAO;AACP,KAAK;AACL;AACA,KAAK;AACL,MAAM,uCAAO;AACb;AACA,OAAO;AACP;AACA;;AAEA;AACA;;AAEA,SAAS,wCAAS;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,kBAAkB,8CAAe;AACjC;;AAEA,SAAS,8CAAe;AACxB,EAAE,8CAAe;AACjB;AACA;AACA,SAAS,8CAAe;AACxB;;AAEA,SAAS,8CAAe;AACxB,EAAE,8CAAe;AACjB;AACA;AACA;;AAEA,SAAS,8CAAe;AACxB;;AAEA,SAAS,wDAAyB;AAClC;AACA;AACA;;AAEA;AACA,2EAA2E;AAC3E;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA,MAAM,wDAAyB;AAC/B;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,iBAAiB,8CAAe;AAChC;AACA;AACA;;AAEA;AACA;;AAEA,SAAS,qDAAsB;AAC/B;AACA;AACA;;AAEA;AACA;;AAEA,SAAS,yDAA0B;AACnC;AACA;AACA;;AAEA,SAAS,qDAAsB;AAC/B;;AAEA,SAAS,2CAAY;AACrB,kCAAkC,wDAAyB;;AAE3D;AACA,gBAAgB,8CAAe;AAC/B;;AAEA;AACA,sBAAsB,8CAAe;;AAErC;AACA,KAAK;AACL;AACA;;AAEA,WAAW,yDAA0B;AACrC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,wCAAwC,SAAS;;AAEjD;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,IAAI,uCAAO;AACX;AACA;;AAEA,IAAI,8CAAe;;AAEnB;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;;AAEA,EAAE,2CAAY;AACd;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA,QAAQ,wCAAS;;AAEjB,qBAAqB,2CAAY;;AAEjC;AACA,UAAU,8CAAe;;AAEzB;AACA;;AAEA;AACA,OAAO;;AAEP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,OAAO;;;AAGP,oBAAoB,6CAAc,GAAG;;AAErC,yBAAyB;;AAEzB;;AAEA;AACA;AACA,OAAO;;;AAGP;;AAEA;AACA;AACA;AACA;;AAEA,wBAAwB,6CAAc,GAAG;AACz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","file":"LightGalleryVue.umd.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"LightGalleryVue\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"LightGalleryVue\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar aFunction = require('../internals/a-function');\nvar isObject = require('../internals/is-object');\n\nvar slice = [].slice;\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!(argsLength in factories)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func -- we have no proper alternatives, IE8- only\n factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.es/ecma262/#sec-function.prototype.bind\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = slice.call(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = partArgs.concat(slice.call(arguments));\n return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args);\n };\n if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype;\n return boundFunction;\n};\n","/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","var toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar replace = ''.replace;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- requied for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? S.slice(q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, UNSUPPORTED_Y);\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(?:iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator);\n throw error;\n }\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var anObject = require('../internals/an-object');\n\nmodule.exports = function (iterator) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) {\n return anObject(returnMethod.call(iterator)).value;\n }\n};\n","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins -- safe\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func -- spec requirement\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n location && location.protocol !== 'file:' &&\n !fails(post)\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toObject = require('../internals/to-object');\nvar nativeGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); });\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, {\n getPrototypeOf: function getPrototypeOf(it) {\n return nativeGetPrototypeOf(toObject(it));\n }\n});\n\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","module.exports = {};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var IS_NODE = require('../internals/engine-is-node');\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // eslint-disable-next-line es/no-symbol -- required for testing\n return !Symbol.sham &&\n // Chrome 38 Symbol has incorrect toString conversion\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n (IS_NODE ? V8_VERSION === 38 : V8_VERSION > 37 && V8_VERSION < 41);\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar aFunction = require('../internals/a-function');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar bind = require('../internals/function-bind');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\n\n// `Reflect.construct` method\n// https://tc39.es/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n});\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.10.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n\n module.exports[\"default\"] = module.exports, module.exports.__esModule = true;\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject -- old IE */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.es/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","// addapted from the document.currentScript polyfill by Adam Miller\n// MIT license\n// source: https://github.com/amiller-gh/currentScript-polyfill\n\n// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n define([], factory);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = factory();\n } else {\n root.getCurrentScript = factory();\n }\n}(typeof self !== 'undefined' ? self : this, function () {\n function getCurrentScript () {\n var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')\n // for chrome\n if (!descriptor && 'currentScript' in document && document.currentScript) {\n return document.currentScript\n }\n\n // for other browsers with native support for currentScript\n if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {\n return document.currentScript\n }\n \n // IE 8-10 support script readyState\n // IE 11+ & Firefox support stack trace\n try {\n throw new Error();\n }\n catch (err) {\n // Find the second match for the \"at\" string to get file src url from stack.\n var ieStackRegExp = /.*at [^(]*\\((.*):(.+):(.+)\\)$/ig,\n ffStackRegExp = /@([^@]*):(\\d+):(\\d+)\\s*$/ig,\n stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),\n scriptLocation = (stackDetails && stackDetails[1]) || false,\n line = (stackDetails && stackDetails[2]) || false,\n currentLocation = document.location.href.replace(document.location.hash, ''),\n pageSource,\n inlineScriptSourceRegExp,\n inlineScriptSource,\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n \n if (scriptLocation === currentLocation) {\n pageSource = document.documentElement.outerHTML;\n inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*<script>([\\\\d\\\\D]*?)<\\\\/script>[\\\\d\\\\D]*', 'i');\n inlineScriptSource = pageSource.replace(inlineScriptSourceRegExp, '$1').trim();\n }\n \n for (var i = 0; i < scripts.length; i++) {\n // If ready state is interactive, return the script tag\n if (scripts[i].readyState === 'interactive') {\n return scripts[i];\n }\n \n // If src matches, return the script tag\n if (scripts[i].src === scriptLocation) {\n return scripts[i];\n }\n \n // If inline source matches, return the script tag\n if (\n scriptLocation === currentLocation &&\n scripts[i].innerHTML &&\n scripts[i].innerHTML.trim() === inlineScriptSource\n ) {\n return scripts[i];\n }\n }\n \n // If no match, return null\n return null;\n }\n };\n\n return getCurrentScript\n}));\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","module.exports = __WEBPACK_EXTERNAL_MODULE__8bbf__;","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\nvar shared = require('./shared');\n\nvar nativeExec = RegExp.prototype.exec;\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\n// eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","var anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n iteratorClose(iterator);\n throw error;\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.es/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.es/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.es/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.es/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.es/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.es/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.es/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.es/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.es/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.es/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {\n if (NATIVE_SYMBOL && has(Symbol, name)) {\n WellKnownSymbolsStore[name] = Symbol[name];\n } else {\n WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n }\n } return WellKnownSymbolsStore[name];\n};\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var IS_FILTER_OUT = TYPE == 7;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push.call(target, value); // filterOut\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterOut` method\n // https://github.com/tc39/proposal-array-filtering\n filterOut: createMethod(7)\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","module.exports = false;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","module.exports = {};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","var defineWellKnownSymbol = require('../internals/define-well-known-symbol');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.es/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","/* eslint-disable no-proto -- safe */\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === RegExp.prototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","// `Symbol.prototype.description` getter\n// https://tc39.es/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_NODE = require('../internals/engine-is-node');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = NativePromise;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar NATIVE_REJECTION_EVENT = typeof PromiseRejectionEvent == 'function';\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (V8_VERSION === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE && !NATIVE_REJECTION_EVENT) return true;\n }\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n task.call(global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.es/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function') {\n nativeThen = NativePromise.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.es/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.es/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.es/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.es/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n var getCurrentScript = require('@soda/get-current-script')\n currentScript = getCurrentScript()\n\n // for backward compatibility, because previously we directly included the polyfill\n if (!('currentScript' in document)) {\n Object.defineProperty(document, 'currentScript', { get: getCurrentScript })\n }\n }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_public_path__ = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","<template>\n <div ref=\"container\" class=\"lightgallery-vue\"><slot></slot></div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType } from 'vue';\nimport { Options, Vue } from 'vue-class-component';\nimport lightGallery from '../../../src';\nimport { LightGallery as LGPlugin } from '../../../src/lightgallery';\nimport { LightGallerySettings } from '../../../src/lg-settings';\nimport {\n AfterAppendSubHtmlDetail,\n AfterCloseDetail,\n RotateLeftDetail,\n RotateRightDetail,\n FlipHorizontalDetail,\n FlipVerticalDetail,\n AfterOpenDetail,\n AfterSlideDetail,\n BeforeCloseDetail,\n BeforeNextSlideDetail,\n BeforeOpenDetail,\n BeforePrevSlideDetail,\n BeforeSlideDetail,\n ContainerResizeDetail,\n DragEndDetail,\n DragMoveDetail,\n DragStartDetail,\n InitDetail,\n lGEvents,\n PosterClickDetail,\n SlideItemLoadDetail,\n} from '../../../src/lg-events';\n\n@Options({\n props: {\n settings: {\n type: Object as PropType<LightGallerySettings>,\n },\n onAfterAppendSlide: {\n type: Function,\n },\n onInit: {\n type: Function,\n },\n onHasVideo: {\n type: Function,\n },\n onContainerResize: {\n type: Function,\n },\n onAfterAppendSubHtml: {\n type: Function,\n },\n onBeforeOpen: {\n type: Function,\n },\n onAfterOpen: {\n type: Function,\n },\n onSlideItemLoad: {\n type: Function,\n },\n onBeforeSlide: {\n type: Function,\n },\n onAfterSlide: {\n type: Function,\n },\n onPosterClick: {\n type: Function,\n },\n onDragStart: {\n type: Function,\n },\n onDragMove: {\n type: Function,\n },\n onDragEnd: {\n type: Function,\n },\n onBeforeNextSlide: {\n type: Function,\n },\n onBeforePrevSlide: {\n type: Function,\n },\n onBeforeClose: {\n type: Function,\n },\n onAfterClose: {\n type: Function,\n },\n onRotateLeft: {\n type: Function,\n },\n onRotateRight: {\n type: Function,\n },\n onFlipHorizontal: {\n type: Function,\n },\n onFlipVertical: {\n type: Function,\n },\n },\n})\nexport default class Lightgallery extends Vue {\n $refs!: {\n container: HTMLElement;\n };\n\n settings!: LightGallerySettings;\n\n onAfterAppendSlide!: (detail: AfterSlideDetail) => void;\n onInit!: (detail: InitDetail) => void;\n onHasVideo!: (detail: InitDetail) => void;\n onContainerResize!: (detail: ContainerResizeDetail) => void;\n onAfterAppendSubHtml!: (detail: AfterAppendSubHtmlDetail) => void;\n onBeforeOpen!: (detail: BeforeOpenDetail) => void;\n onAfterOpen!: (detail: AfterOpenDetail) => void;\n onSlideItemLoad!: (detail: SlideItemLoadDetail) => void;\n onBeforeSlide!: (detail: BeforeSlideDetail) => void;\n onAfterSlide!: (detail: AfterSlideDetail) => void;\n onPosterClick!: (detail: PosterClickDetail) => void;\n onDragStart!: (detail: DragStartDetail) => void;\n onDragMove!: (detail: DragMoveDetail) => void;\n onDragEnd!: (detail: DragEndDetail) => void;\n onBeforeNextSlide!: (detail: BeforeNextSlideDetail) => void;\n onBeforePrevSlide!: (detail: BeforePrevSlideDetail) => void;\n onBeforeClose!: (detail: BeforeCloseDetail) => void;\n onAfterClose!: (detail: AfterCloseDetail) => void;\n onRotateLeft?: (detail: RotateLeftDetail) => void;\n onRotateRight?: (detail: RotateRightDetail) => void;\n onFlipHorizontal?: (detail: FlipHorizontalDetail) => void;\n onFlipVertical?: (detail: FlipVerticalDetail) => void;\n\n LG!: LGPlugin;\n\n mounted(): void {\n this.registerEvents.call(this);\n this.LG = lightGallery(this.$refs.container, { ...this.settings });\n }\n\n unmounted(): void {\n this.LG.destroy();\n }\n\n /* eslint-disable */\n private getMethodName(word: string) {\n return `on${word.charAt(0).toUpperCase() + word.slice(1)}`;\n }\n /* eslint-enable */\n\n private registerEvents(): void {\n Object.keys(lGEvents).forEach((key: string) => {\n // https://github.com/microsoft/TypeScript/issues/28357\n (this.$refs.container as any).addEventListener(\n lGEvents[key].split('.')[0],\n (event: CustomEvent) => {\n if ((this as any)[this.getMethodName(key)]) {\n (this as any)[this.getMethodName.call(this, key)](\n event.detail,\n );\n }\n },\n );\n });\n }\n}\n</script>\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","import _typeof from \"@babel/runtime/helpers/typeof\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return possibleConstructorReturn(this, result);\n };\n}","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * vue-class-component v8.0.0-rc.1\n * (c) 2015-present Evan You\n * @license MIT\n */\nimport { ref, proxyRefs } from 'vue';\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (_isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction defineGetter(obj, key, getter) {\n Object.defineProperty(obj, key, {\n get: getter,\n enumerable: false,\n configurable: true\n });\n}\n\nfunction defineProxy(proxy, key, target) {\n Object.defineProperty(proxy, key, {\n get: function get() {\n return target[key].value;\n },\n set: function set(value) {\n target[key].value = value;\n },\n enumerable: true,\n configurable: true\n });\n}\n\nfunction getSuper(Ctor) {\n var superProto = Object.getPrototypeOf(Ctor.prototype);\n\n if (!superProto) {\n return undefined;\n }\n\n return superProto.constructor;\n}\n\nfunction getOwn(value, key) {\n return value.hasOwnProperty(key) ? value[key] : undefined;\n}\n\nvar VueImpl = /*#__PURE__*/function () {\n function VueImpl(props, ctx) {\n var _this = this;\n\n _classCallCheck(this, VueImpl);\n\n defineGetter(this, '$props', function () {\n return props;\n });\n defineGetter(this, '$attrs', function () {\n return ctx.attrs;\n });\n defineGetter(this, '$slots', function () {\n return ctx.slots;\n });\n defineGetter(this, '$emit', function () {\n return ctx.emit;\n });\n Object.keys(props).forEach(function (key) {\n Object.defineProperty(_this, key, {\n enumerable: false,\n configurable: true,\n writable: true,\n value: props[key]\n });\n });\n }\n\n _createClass(VueImpl, null, [{\n key: \"registerHooks\",\n value: function registerHooks(keys) {\n var _this$__h;\n\n (_this$__h = this.__h).push.apply(_this$__h, _toConsumableArray(keys));\n }\n }, {\n key: \"with\",\n value: function _with(Props) {\n var propsMeta = new Props();\n var props = {};\n Object.keys(propsMeta).forEach(function (key) {\n var meta = propsMeta[key];\n props[key] = meta !== null && meta !== void 0 ? meta : null;\n });\n\n var PropsMixin = /*#__PURE__*/function (_this2) {\n _inherits(PropsMixin, _this2);\n\n var _super = _createSuper(PropsMixin);\n\n function PropsMixin() {\n _classCallCheck(this, PropsMixin);\n\n return _super.apply(this, arguments);\n }\n\n return PropsMixin;\n }(this);\n\n PropsMixin.__b = {\n props: props\n };\n return PropsMixin;\n }\n }, {\n key: \"__vccOpts\",\n get: function get() {\n // Early return if `this` is base class as it does not have any options\n if (this === Vue) {\n return {};\n }\n\n var Ctor = this;\n var cache = getOwn(Ctor, '__c');\n\n if (cache) {\n return cache;\n } // If the options are provided via decorator use it as a base\n\n\n var options = _objectSpread2({}, getOwn(Ctor, '__o'));\n\n Ctor.__c = options; // Handle super class options\n\n var Super = getSuper(Ctor);\n\n if (Super) {\n options[\"extends\"] = Super.__vccOpts;\n } // Inject base options as a mixin\n\n\n var base = getOwn(Ctor, '__b');\n\n if (base) {\n options.mixins = options.mixins || [];\n options.mixins.unshift(base);\n }\n\n options.methods = _objectSpread2({}, options.methods);\n options.computed = _objectSpread2({}, options.computed);\n var proto = Ctor.prototype;\n Object.getOwnPropertyNames(proto).forEach(function (key) {\n if (key === 'constructor') {\n return;\n } // hooks\n\n\n if (Ctor.__h.indexOf(key) > -1) {\n options[key] = proto[key];\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(proto, key); // methods\n\n if (typeof descriptor.value === 'function') {\n options.methods[key] = descriptor.value;\n return;\n } // computed properties\n\n\n if (descriptor.get || descriptor.set) {\n options.computed[key] = {\n get: descriptor.get,\n set: descriptor.set\n };\n return;\n }\n });\n\n options.setup = function (props, ctx) {\n var _promise;\n\n var data = new Ctor(props, ctx);\n var dataKeys = Object.keys(data);\n var plainData = {};\n var promise = null; // Initialize reactive data and convert constructor `this` to a proxy\n\n dataKeys.forEach(function (key) {\n // Skip if the value is undefined not to make it reactive.\n // If the value has `__s`, it's a value from `setup` helper, proceed it later.\n if (data[key] === undefined || data[key] && data[key].__s) {\n return;\n }\n\n plainData[key] = ref(data[key]);\n defineProxy(data, key, plainData);\n }); // Invoke composition functions\n\n dataKeys.forEach(function (key) {\n if (data[key] && data[key].__s) {\n var setupState = data[key].__s();\n\n if (setupState instanceof Promise) {\n if (!promise) {\n promise = Promise.resolve(plainData);\n }\n\n promise = promise.then(function () {\n return setupState.then(function (value) {\n plainData[key] = proxyRefs(value);\n return plainData;\n });\n });\n } else {\n plainData[key] = proxyRefs(setupState);\n }\n }\n });\n return (_promise = promise) !== null && _promise !== void 0 ? _promise : plainData;\n };\n\n var decorators = getOwn(Ctor, '__d');\n\n if (decorators) {\n decorators.forEach(function (fn) {\n return fn(options);\n });\n } // from Vue Loader\n\n\n var injections = ['render', 'ssrRender', '__file', '__cssModules', '__scopeId', '__hmrId'];\n injections.forEach(function (key) {\n if (Ctor[key]) {\n options[key] = Ctor[key];\n }\n });\n return options;\n }\n }]);\n\n return VueImpl;\n}();\n\nVueImpl.__h = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeUnmount', 'unmounted', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch'];\nvar Vue = VueImpl;\n\nfunction Options(options) {\n return function (Component) {\n Component.__o = options;\n return Component;\n };\n}\nfunction createDecorator(factory) {\n return function (target, key, index) {\n var Ctor = typeof target === 'function' ? target : target.constructor;\n\n if (!Ctor.__d) {\n Ctor.__d = [];\n }\n\n if (typeof index !== 'number') {\n index = undefined;\n }\n\n Ctor.__d.push(function (options) {\n return factory(options, key, index);\n });\n };\n}\nfunction mixins() {\n for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) {\n Ctors[_key] = arguments[_key];\n }\n\n var _a;\n\n return _a = /*#__PURE__*/function (_Vue) {\n _inherits(MixedVue, _Vue);\n\n var _super = _createSuper(MixedVue);\n\n function MixedVue() {\n var _this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n _classCallCheck(this, MixedVue);\n\n _this = _super.call.apply(_super, [this].concat(args));\n Ctors.forEach(function (Ctor) {\n var data = _construct(Ctor, args);\n\n Object.keys(data).forEach(function (key) {\n _this[key] = data[key];\n });\n });\n return _this;\n }\n\n return MixedVue;\n }(Vue), _a.__b = {\n mixins: Ctors.map(function (Ctor) {\n return Ctor.__vccOpts;\n })\n }, _a;\n}\nfunction setup(setupFn) {\n // Hack to delay the invocation of setup function.\n // Will be called after dealing with class properties.\n return {\n __s: setupFn\n };\n}\n\n// Actual implementation\nfunction prop(options) {\n return options;\n}\n\nexport { Options, Vue, createDecorator, mixins, prop, setup };\n","import { LightGallery } from './lightgallery';\nimport { VideoSource } from './plugins/video/types';\n\n/**\n * List of lightGallery events\n * All events should be documented here\n * Below interfaces are used to build the website documentations\n * */\nexport const lGEvents: {\n [key: string]: string;\n} = {\n afterAppendSlide: 'lgAfterAppendSlide',\n init: 'lgInit',\n hasVideo: 'lgHasVideo',\n containerResize: 'lgContainerResize',\n updateSlides: 'lgUpdateSlides',\n afterAppendSubHtml: 'lgAfterAppendSubHtml',\n beforeOpen: 'lgBeforeOpen',\n afterOpen: 'lgAfterOpen',\n slideItemLoad: 'lgSlideItemLoad',\n beforeSlide: 'lgBeforeSlide',\n afterSlide: 'lgAfterSlide',\n posterClick: 'lgPosterClick',\n dragStart: 'lgDragStart',\n dragMove: 'lgDragMove',\n dragEnd: 'lgDragEnd',\n beforeNextSlide: 'lgBeforeNextSlide',\n beforePrevSlide: 'lgBeforePrevSlide',\n beforeClose: 'lgBeforeClose',\n afterClose: 'lgAfterClose',\n rotateLeft: 'lgRotateLeft',\n rotateRight: 'lgRotateRight',\n flipHorizontal: 'lgFlipHorizontal',\n flipVertical: 'lgFlipVertical',\n autoplay: 'lgAutoplay',\n autoplayStart: 'lgAutoplayStart',\n autoplayStop: 'lgAutoplayStop',\n};\n\n// Follow the below format for the event documentation\n// @method is the method name when event is used with Angular/React components\n\n/**\n * Fired only once when lightGallery is initialized\n * @name lgInit\n * @method onInit\n * @example\n * const lg = document.getElementById('custom-events-demo');\n * // Perform any action on lightGallery initialization.\n * // Init event returns the plugin instance that can be used to call any lightGalley public method\n * let pluginInstance = null;\n * lg.addEventListener('lgInit', (event) => {\n * pluginInstance = event.detail.instance;\n * });\n * lightGallery(lg);\n * @see <a href=\"/docs/methods\">Methods<a>\n */\nexport interface InitDetail {\n /**\n * lightGallery plugin instance\n */\n instance: LightGallery;\n}\n\n/**\n * Fired when the slide content has been inserted into it's slide container.\n * @name lgAfterAppendSlide\n * @method onAfterAppendSlide\n */\nexport interface AfterAppendSlideEventDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n\n/**\n * Fired immediately before opening the gallery\n * @name lgBeforeOpen\n * @method onBeforeOpen\n */\nexport interface BeforeOpenDetail {}\n\n/**\n * Fired immediately after opening the gallery\n * @name lgAfterOpen\n * @method onAfterOpen\n */\nexport interface AfterOpenDetail {}\n\n/**\n * Fired once the media inside the slide has been completely loaded .\n * @name lgSlideItemLoad\n * @method onSlideItemLoad\n */\nexport interface SlideItemLoadDetail {\n /**\n * Index of the slide\n */\n index: number;\n /**\n * For the first slide, lightGallery adds some delay for displaying the loaded slide item.\n * This delay is required for the transition effect when the slide item is displayed\n * Respect the delay when you use this event\n */\n delay: number;\n\n // Will be true for the first slide\n isFirstSlide: boolean;\n}\n\n/**\n * Fired immediately before each slide transition.\n * @name lgBeforeSlide\n * @method onBeforeSlide\n * @example\n * const lg = document.getElementById('custom-events-demo');\n * // Perform any action before each slide transition\n * lg.addEventListener('lgBeforeSlide', (event) => {\n * const { index, prevIndex } = event.detail;\n * alert(index, prevIndex);\n * });\n * lightGallery(lg);\n */\nexport interface BeforeSlideDetail {\n /**\n * Index of the previous slide\n */\n prevIndex: number;\n /**\n * Index of the slide\n */\n index: number;\n /**\n * true if slide function called via touch event or mouse drag\n */\n fromTouch: boolean;\n /**\n * true if slide function called via thumbnail click\n */\n fromThumb: boolean;\n}\n\n/**\n * Fired immediately after each slide transition.\n * @name lgAfterSlide\n * @method onAfterSlide\n */\nexport interface AfterSlideDetail {\n /**\n * Index of the previous slide\n */\n prevIndex: number;\n /**\n * Index of the slide\n */\n index: number;\n /**\n * true if slide function called via touch event or mouse drag\n */\n fromTouch: boolean;\n /**\n * true if slide function called via thumbnail click\n */\n fromThumb: boolean;\n}\n\n/**\n * Fired when the video poster is clicked.\n * @name lgPosterClick\n * @method onPosterClick\n */\nexport interface PosterClickDetail {}\n\n/**\n * Fired when the drag event to move to different slide starts.\n * @name lgDragStart\n * @method onDragStart\n */\nexport interface DragStartDetail {}\n\n/**\n * Fired periodically during the drag operation.\n * @name lgDragMove\n * @method onDragMove\n */\nexport interface DragMoveDetail {}\n\n/**\n * Fired when the user has finished the drag operation\n * @name lgDragEnd\n * @method onDragEnd\n */\nexport interface DragEndDetail {}\n\n/**\n * Fired immediately before the start of the close process.\n * @name lgBeforeClose\n * @method onBeforeClose\n */\nexport interface BeforeCloseDetail {}\n\n/**\n * Fired immediately once lightGallery is closed.\n * @name lgAfterClose\n * @method onAfterClose\n */\nexport interface AfterCloseDetail {\n /**\n * lightGallery plugin instance\n */\n instance: LightGallery;\n}\n\n/**\n * Fired immediately before each \"next\" slide transition\n * @name lgBeforeNextSlide\n * @method onBeforeNextSlide\n */\nexport interface BeforeNextSlideDetail {\n /**\n * Index of the slide\n */\n index: number;\n /**\n * true if slide function called via touch event or mouse drag\n */\n fromTouch: boolean;\n}\n\n/**\n * Fired immediately before each \"prev\" slide transition\n * @name lgBeforePrevSlide\n * @method onBeforePrevSlide\n */\nexport interface BeforePrevSlideDetail {\n /**\n * Index of the slide\n */\n index: number;\n /**\n * true if slide function called via touch event or mouse drag\n */\n fromTouch: boolean;\n}\n\n/**\n * Fired when the sub-html content (ex : title/ description) has been appended into the slide.\n * @name lgAfterAppendSubHtml\n * @method onAfterAppendSubHtml\n */\nexport interface AfterAppendSubHtmlDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n\n/**\n * Fired when the lightGallery container has been resized.\n * @name lgContainerResize\n * @method onContainerResize\n */\nexport interface ContainerResizeDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n\n/**\n * Fired when lightGallery detects video slide\n * @name lgHasVideo\n * @method onHasVideo\n */\nexport interface HasVideoDetail {\n /**\n * Index of the slide,\n */\n index: number;\n /**\n * Video source\n */\n src: string;\n /**\n * HTML5 video source if available\n * <p>\n HTML5 video source = source: {\n src: string;\n type: string;\n }[];\n attributes: HTMLVideoElement;\n * </p>\n */\n html5Video: VideoSource;\n /**\n * True if video has poster\n */\n hasPoster: boolean;\n}\n\n/**\n * Fired when the image is rotated in anticlockwise direction\n * @name lgRotateLeft\n * @method onRotateLeft\n */\nexport interface RotateLeftDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n\n/**\n * Fired when the image is rotated in clockwise direction\n * @name lgRotateRight\n * @method onRotateRight\n */\nexport interface RotateRightDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n\n/**\n * Fired when the image is flipped horizontally\n * @name lgFlipHorizontal\n * @method onFlipHorizontal\n */\nexport interface FlipHorizontalDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n\n/**\n * Fired when the image is flipped vertically\n * @name lgFlipVertical\n * @method onFlipVertical\n */\nexport interface FlipVerticalDetail {\n /**\n * Index of the slide\n */\n index: number;\n}\n","import { GalleryItem } from './lg-utils';\nimport { LgQuery } from './lgQuery';\nimport { LightGallery } from './lightgallery';\nimport { AutoplaySettings } from './plugins/autoplay/lg-autoplay-settings';\nimport { CommentSettings } from './plugins/comment/lg-comment-settings';\nimport { FullscreenSettings } from './plugins/fullscreen/lg-fullscreen-settings';\nimport { HashSettings } from './plugins/hash/lg-hash-settings';\nimport { PagerSettings } from './plugins/pager/lg-pager-settings';\nimport { RotateSettings } from './plugins/rotate/lg-rotate-settings';\nimport { ShareSettings } from './plugins/share/lg-share-settings';\nimport { ThumbnailsSettings } from './plugins/thumbnail/lg-thumbnail-settings';\nimport { VideoSettings } from './plugins/video/lg-video-settings';\nimport { ZoomSettings } from './plugins/zoom/lg-zoom-settings';\n\ntype LightGalleryCoreMobileSettings = Exclude<\n LightGalleryCoreSettings,\n 'mobileSettings'\n>;\n\n// @todo use separate mobile settings for plugins\nexport interface MobileSettings\n extends LightGalleryCoreMobileSettings,\n Partial<ZoomSettings>,\n Partial<ThumbnailsSettings>,\n Partial<VideoSettings>,\n Partial<AutoplaySettings>,\n Partial<CommentSettings>,\n Partial<FullscreenSettings>,\n Partial<HashSettings>,\n Partial<PagerSettings>,\n Partial<RotateSettings>,\n Partial<ShareSettings> {}\n\nexport interface LightGalleryCoreStrings {\n closeGallery: string;\n toggleMaximize: string;\n previousSlide: string;\n nextSlide: string;\n download: string;\n playVideo: string;\n}\n\nexport type LightGalleryAllSettings = LightGalleryCoreSettings &\n ZoomSettings &\n ThumbnailsSettings &\n VideoSettings &\n AutoplaySettings &\n CommentSettings &\n FullscreenSettings &\n HashSettings &\n PagerSettings &\n RotateSettings &\n ShareSettings;\n\nexport type LightGallerySettings = Partial<LightGalleryAllSettings>;\n\nexport interface LightGalleryCoreSettings {\n /**\n * Type of transition between images.\n */\n mode:\n | 'lg-slide'\n | 'lg-fade'\n | 'lg-zoom-in'\n | 'lg-zoom-in-big'\n | 'lg-zoom-out'\n | 'lg-zoom-out-big'\n | 'lg-zoom-out-in'\n | 'lg-zoom-in-out'\n | 'lg-soft-zoom'\n | 'lg-scale-up'\n | 'lg-slide-circular'\n | 'lg-slide-circular-vertical'\n | 'lg-slide-vertical'\n | 'lg-slide-vertical-growth'\n | 'lg-slide-skew-only'\n | 'lg-slide-skew-only-rev'\n | 'lg-slide-skew-only-y'\n | 'lg-slide-skew-only-y-rev'\n | 'lg-slide-skew'\n | 'lg-slide-skew-rev'\n | 'lg-slide-skew-cross'\n | 'lg-slide-skew-cross-rev'\n | 'lg-slide-skew-ver'\n | 'lg-slide-skew-ver-rev'\n | 'lg-slide-skew-ver-cross'\n | 'lg-slide-skew-ver-cross-rev'\n | 'lg-lollipop'\n | 'lg-lollipop-rev'\n | 'lg-rotate'\n | 'lg-rotate-rev'\n | 'lg-tube';\n\n /**\n * Slide animation CSS easing property\n */\n easing: string;\n\n /**\n *Transition duration (in ms).\n */\n speed: number;\n\n /**\n * If you are using lightGallery for commercial projects, you need to purchase a commercial license\n * to get the license key. For projects that are compatible with GPLv3 license,\n * please contact us for getting a license key at <a href=\"mailto:contact@lightgalleryjs.com\">contact@lightgalleryjs.com</a>.\n * If you want to test lightGallery before purchasing a commercial license, you can\n * use `0000-0000-000-0000` as a temporary license key\n */\n\n licenseKey: string;\n\n /**\n * Height of the gallery.\n * example '100%' , '300px'\n */\n height: string;\n\n /**\n * Width of the gallery.\n * example '100%' , '300px'\n */\n width: string;\n\n /**\n * Add custom class for gallery container\n * This can be used to set different style for different galleries\n */\n addClass: string;\n\n /**\n * Start animation class for the gallery.\n * @description\n * <ul>\n * <li>startClass will be empty zoomFromOrigin is true.</li>\n * <li>This can be used to change the starting effect when the image is loaded</li>\n * <li>This is also applied when navigating to new slides</li>\n * </ul>\n */\n startClass: string;\n\n /**\n * Enable zoom from origin effect.\n * @description You need to know the original image size upfront and provide it via data-lg-size attribute as <code> data-lg-size=\"1920-1280</code>\"\n *\n * If you don't know, the size of a few images in the list, you can skip the data-lg-size attribute for the particular slides,\n * lightGallery will show the default animation if data-lg-size is not available\n *\n * If you are using responsive images,\n * you can pass a comma separated list of sizes combined with a max-width (up to what size the particular image should be used)\n *\n * example -\n * <code> data-lg-size=\"240-160-375, 400-267-480, 1600-1067\"\n * data-responsive=\"img-240.jpg 375, img-400.jpg 480\"\n * data-src=\"img-1600.jpg\" </code>\n *\n * In the above example, upto 375 width img.240.jpg and lg-size 240-160 will be used.\n * Similarly, upto 480 pixel width size 400-267 and img-400.jpg will be used\n * And above 480, lg-size 1600-1067 and img-1600.jpg will be used\n *\n * <ul>\n * <li>At the moment, zoomFromOrigin options is supported only for image slides.</li>\n * <li>Will be false if dynamic option is enabled or galleryID found in the URL.</li>\n * <li>startClass will be empty if zoomFromOrigin is true to avoid css conflicts.</li>\n * </ul>\n */\n zoomFromOrigin: boolean;\n\n /**\n * Zoom from image animation duration\n */\n startAnimationDuration: number;\n\n /**\n * Backdrop transition duration.\n * Note - Do not change the value of backdrop via css.\n */\n backdropDuration: number;\n\n /**\n * Configure where the gallery should be appended.\n * Useful to create inline galleries and more\n * It is an empty string in the default settings and later assigned to document.body to avoid accessing document for SSR\n */\n container: HTMLElement | '';\n\n /**\n * Delay for hiding gallery controls in ms.\n * Pass <code>0</code> if you don't want to hide the controls\n */\n hideBarsDelay: number;\n\n /**\n * Delay in hiding controls for the first time when gallery is opened\n */\n showBarsAfter: number;\n\n /**\n * Delay slide transitions.\n * @description This is useful if you want to do any action in the current slide before moving to next slide.\n * <section>\n * For example, fading out the captions before going to next slide.\n * <code>.lg-slide-progress</code> class name is added to the current slide immediately after calling the slide method.\n * But transition begins only after the delay\n * </section>\n */\n slideDelay: number;\n\n /**\n * Support legacy browsers\n * @description Currently this is used only for adding support to srcset attribute via picturefill library\n * If true lightGallery will show warning message to include picturefill library\n */\n supportLegacyBrowser: boolean;\n\n /**\n * If true, toolbar, captions and thumbnails will not overlap with media element\n * This will not effect thumbnails if animateThumb is false\n * Also, toggle thumbnails button is not displayed if allowMediaOverlap is false\n * <section>\n * Note - Changing the position of the media on every slide transition creates a flickering effect.\n * Therefore, the height of the caption is calculated dynamically, only once based on the first slide caption.\n * </section>\n * <section>\n * if you have dynamic captions for each media,\n * you can provide an appropriate height for the captions via allowMediaOverlap option\n * </section>\n */\n allowMediaOverlap: boolean;\n\n /**\n * Video max size.\n * @description This can be over-written by passing specific size via data-lg-size attribute\n * Recommended video resolution and & aspect ratios <a href=\"https://support.google.com/youtube/answer/6375112\">https://support.google.com/youtube/answer/6375112</a>\n */\n videoMaxSize: string;\n\n /**\n * Automatically load poster image for YouTube videos\n */\n loadYouTubePoster: boolean;\n\n /**\n * Height of the caption for calculating allowMediaOverlap positions\n * Note - this is only used to find the position of media item if allowMediaOverlap is true.\n * Not for setting height of the captions\n * Set 0 if you want to calculate the height of captions dynamically\n */\n defaultCaptionHeight: number;\n\n /**\n * aria-labelledby attribute fot gallery\n */\n ariaLabelledby: string;\n\n /**\n * aria-describedby attribute for gallery\n */\n ariaDescribedby: string;\n\n /**\n * Hide scrollbar when gallery is opened\n * @version V2.5.0\n */\n hideScrollbar: boolean;\n\n /**\n * Reset to previous scrollPosition when lightGallery is closed\n * @description By default, lightGallery doesn't hide the scrollbar for a smooth opening transition.\n * If a user changes the scroll position, lightGallery resets it to the previous value\n * @version V2.5.0\n */\n resetScrollPosition: boolean;\n\n /**\n * If false user won't be abel to close the gallery at all\n * This is useful for creating inline galleries.\n */\n closable: boolean;\n\n /**\n * allows vertical drag/swipe to close gallery\n * <code>false</code> if option <code>closable</code> is <code>false</code>\n */\n swipeToClose: boolean;\n /**\n * allows clicks on black area to close gallery.\n */\n closeOnTap: boolean;\n\n /**\n * If false, close button won't be displayed.\n * Useful for creating inline galleries.\n */\n showCloseIcon: boolean;\n\n /**\n * Show maximize icon.\n * Useful for creating inline galleries.\n */\n showMaximizeIcon: boolean;\n\n /**\n * If false, will disable the ability to loop back to the beginning of the gallery from the last slide.\n */\n loop: boolean;\n\n /**\n * Whether the LightGallery could be closed by pressing the \"Esc\" key.\n */\n escKey: boolean;\n\n /**\n * Enable keyboard navigation\n */\n keyPress: boolean;\n\n /**\n * Trap focus within the lightGallery\n * @version V2.5.0\n */\n trapFocus: boolean;\n\n /**\n * If false, prev/next buttons will not be displayed.\n */\n controls: boolean;\n\n /**\n * Enable slideEnd animation\n */\n slideEndAnimation: boolean;\n\n /**\n * If true, prev/next button will be hidden on first/last image.\n * @description Note - this option will be ignored if <code>loop</code> or <code>slideEndAnimation</code> is set to true\n */\n hideControlOnEnd: boolean;\n\n /**\n * ability to navigate to next/prev slides on mousewheel\n */\n mousewheel: boolean;\n\n /**\n * Option to get captions from alt or title tags.\n */\n getCaptionFromTitleOrAlt: boolean;\n\n /**\n * control where the sub-html should be appended.\n * If you choose '.lg-outer', you are responsible for placing the div at the right position.\n * '.lg-outer' is useful if you want show custom HTML outside the normal gallery\n */\n appendSubHtmlTo: '.lg-sub-html' | '.lg-item' | '.lg-outer';\n\n /**\n * Set to true if the selector in \"data-sub-html\" should use the current item as its origin.\n */\n subHtmlSelectorRelative: boolean;\n\n /**\n * number of preload slides\n * @description will exicute only after the current slide is fully loaded.\n * for example, if you click on 4th image and if preload = 1 then 3rd slide and 5th\n * slide will be loaded in the background after the 4th slide is fully loaded..\n * if preload is 2 then 2nd 3rd 5th 6th slides will be preloaded.\n */\n preload: number;\n\n /**\n * Control how many slide items should be kept in dom at a time\n * @description To improve performance by reducing number of gallery items in the dom,\n * lightGallery keeps only the lowest possible number of slides in the dom at a time.\n * This has a minimum value of 3\n */\n numberOfSlideItemsInDom: number;\n\n /**\n * Custom selector property instead of direct children.\n * @description Based on your markup structure, you can specify custom selectors to fetch media data for the gallery\n * Pass \"this\" to select same element\n * You can also pass HTMLCollection directly\n * Example - '.my-selector' | '#my-selector' | this | document.querySelectorAll('.my-selector')\n */\n selector: string | HTMLCollection[];\n\n /**\n * By default selector element relative to the current gallery.\n * Instead of that you can tell lightGallery to select element relative to another element.\n * Example - '.my-selector-container' | '#my-selector-container'\n * In the code this become selector = document.querySelector(this.s.selectWithin ).querySelectorAll(this.s.selector);\n */\n selectWithin: string;\n\n /**\n * Custom html for next control\n */\n nextHtml: string;\n\n /**\n * Custom html for prev control\n */\n prevHtml: string;\n\n /**\n * specify which slide should load initially\n */\n index: number;\n\n /**\n * Set width for iframe.\n */\n iframeWidth: string;\n\n /**\n * Set height for iframe.\n */\n iframeHeight: string;\n\n /**\n * Set max width for iframe.\n */\n iframeMaxWidth: string;\n\n /**\n * Set max height for iframe.\n */\n iframeMaxHeight: string;\n\n /**\n * Enable download button.\n * @description By default download url will be taken from data-src/href attribute but it supports only for modern browsers.\n * If you want you can provide another url for download via data-download-url.\n * pass false in data-download-url if you want to hide download button for the particular slide.\n */\n download: boolean;\n\n /**\n * Whether to show total number of images and index number of currently displayed image.\n */\n counter: boolean;\n\n /**\n * Where the counter should be appended\n */\n appendCounterTo: string;\n\n /**\n * By setting the swipeThreshold (in px) you can set how far the user must swipe for the next/prev image.\n */\n swipeThreshold: number;\n\n /**\n * Enables swipe support for touch devices\n */\n enableSwipe: boolean;\n\n /**\n * Enables desktop mouse drag support\n */\n enableDrag: boolean;\n\n /**\n * LightGallery can be instantiated and launched programmatically by setting this option to true and populating dynamicEl option (see below) with the definitions of images.\n */\n dynamic: boolean;\n\n /**\n * An array of objects (src, iframe, subHtml, thumb, poster, responsive, srcset sizes) representing gallery elements.\n */\n dynamicEl: GalleryItem[];\n\n /**\n * Fetch custom properties from the selector\n * @description this is useful for plugin development\n * By default lightGallery fetches and store all the props selectors to\n * reduce frequent dom interaction for fetching props every time.\n *\n * If you need any addition data to be fetched and stored in the galleryItems variable,\n * you can do this just by passing the prop names via extraProps\n * @example\n * HTML:\n * <div id=\"lightGallery\">\n * <a href=\"a.jpg\" data-custom-prop=\"abc\"><img src=\"thumb.jpg\" /></a>\n * <a href=\"a.jpg\" data-custom-prop=\"xyz\"><img src=\"thumb.jpg\" /></a>\n * </div>\n * JS:\n * lightGallery(document.getElementById('lightGallery'), {\n * extraProps: ['customProp']\n * })\n * // Note - If you are using dynamic mode, you can pass any custom prop in the galleryItem\n * lightGallery(document.getElementById('lightGallery'), {\n * dynamic: true,\n * dynamicEl: [{\n * src: 'img/img1.jpg',\n * customProp:'abc',\n * }]\n * })\n *\n */\n extraProps: string[];\n\n /**\n * Option to fetch different thumbnail image other than first image\n * @description If you want to use external image for thumbnail,\n * add the path of that image inside \"data-\" attribute\n * and set value of this option to the name of your custom attribute.\n *\n * @example\n * <div id=\"lightGallery\">\n * <a href=\"a.jpg\" data-external-thumb-image=\"images/externalThumb.jpg\" ><img src=\"thumb.jpg\" /></a>\n * </div>\n *\n * lightGallery(document.getElementById('lightGallery'), {\n * exThumbImage: 'data-external-thumb-image'\n * })\n */\n exThumbImage: string;\n\n /**\n * Function to detect mobile devices\n */\n isMobile?: () => boolean;\n\n /**\n * Separate settings for mobile devices\n * @description Note - this is applied only at the time of loading\n * by default controls and close buttons are disabled on mobile devices.\n * use this options if you want to enable them or change any other settings for mobile devices\n * Note - mobileSettings does not merge default values, You need to provide all mobileSettings including default values\n */\n mobileSettings: Partial<MobileSettings>;\n\n /**\n * Aria label strings for lightGallery core modules.\n * @description This can be useful if you want to localize the lightGallery strings to other languages.\n * Use your own service to translate the strings and pass it via settings.strings\n * You can find dedicated strings option for all lightGallery modules in their respective documentation.\n */\n strings: LightGalleryCoreStrings;\n\n plugins: (new (instance: LightGallery, $LG: LgQuery) => any)[];\n}\n\nexport const lightGalleryCoreSettings: LightGalleryCoreSettings = {\n mode: 'lg-slide',\n easing: 'ease',\n speed: 400,\n licenseKey: '0000-0000-000-0000',\n height: '100%',\n width: '100%',\n addClass: '',\n startClass: 'lg-start-zoom',\n backdropDuration: 300,\n container: '',\n startAnimationDuration: 400,\n zoomFromOrigin: true,\n hideBarsDelay: 0,\n showBarsAfter: 10000,\n slideDelay: 0,\n supportLegacyBrowser: true,\n allowMediaOverlap: false,\n videoMaxSize: '1280-720',\n loadYouTubePoster: true,\n defaultCaptionHeight: 0,\n ariaLabelledby: '',\n ariaDescribedby: '',\n resetScrollPosition: true,\n hideScrollbar: false,\n closable: true,\n swipeToClose: true,\n closeOnTap: true,\n showCloseIcon: true,\n showMaximizeIcon: false,\n loop: true,\n escKey: true,\n keyPress: true,\n trapFocus: true,\n controls: true,\n slideEndAnimation: true,\n hideControlOnEnd: false,\n mousewheel: false,\n getCaptionFromTitleOrAlt: true,\n appendSubHtmlTo: '.lg-sub-html',\n subHtmlSelectorRelative: false,\n preload: 2,\n numberOfSlideItemsInDom: 10,\n selector: '',\n selectWithin: '',\n nextHtml: '',\n prevHtml: '',\n index: 0,\n iframeWidth: '100%',\n iframeHeight: '100%',\n iframeMaxWidth: '100%',\n iframeMaxHeight: '100%',\n download: true,\n counter: true,\n appendCounterTo: '.lg-toolbar',\n swipeThreshold: 50,\n enableSwipe: true,\n enableDrag: true,\n dynamic: false,\n dynamicEl: [],\n extraProps: [],\n exThumbImage: '',\n isMobile: undefined,\n mobileSettings: {\n controls: false,\n showCloseIcon: false,\n download: false,\n } as MobileSettings,\n plugins: [],\n strings: {\n closeGallery: 'Close gallery',\n toggleMaximize: 'Toggle maximize',\n previousSlide: 'Previous slide',\n nextSlide: 'Next slide',\n download: 'Download',\n playVideo: 'Play video',\n } as LightGalleryCoreStrings,\n};\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","interface Offset {\n left: number;\n top: number;\n}\n\nfunction initLgPolyfills() {\n (function () {\n if (typeof window.CustomEvent === 'function') return false;\n\n function CustomEvent(event: string, params: any) {\n params = params || {\n bubbles: false,\n cancelable: false,\n detail: null,\n };\n const evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(\n event,\n params.bubbles,\n params.cancelable,\n params.detail,\n );\n return evt;\n }\n\n window.CustomEvent = CustomEvent as any;\n })();\n (function () {\n if (!Element.prototype.matches) {\n Element.prototype.matches =\n (Element.prototype as any).msMatchesSelector ||\n Element.prototype.webkitMatchesSelector;\n }\n })();\n}\n\nexport type LgQuery = (selector: any) => lgQuery;\nexport class lgQuery {\n static eventListeners: { [key: string]: any[] } = {};\n static generateUUID(): string {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(\n /[xy]/g,\n function (c) {\n const r = (Math.random() * 16) | 0,\n v = c == 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n },\n );\n }\n\n private selector: any;\n private firstElement: any;\n private cssVenderPrefixes: string[] = [\n 'TransitionDuration',\n 'TransitionTimingFunction',\n 'Transform',\n 'Transition',\n ];\n constructor(selector: string | Element) {\n this.selector = this._getSelector(selector);\n this.firstElement = this._getFirstEl();\n return this;\n }\n\n private _getSelector(\n selector: string | Element,\n context: Element | Document = document,\n ): Element | null | NodeListOf<Element> {\n if (typeof selector !== 'string') {\n return selector;\n }\n context = context || document;\n const fl = selector.substring(0, 1);\n if (fl === '#') {\n return context.querySelector(selector);\n } else {\n return context.querySelectorAll(selector);\n }\n }\n\n private _each(\n func: (\n elements: Element | NodeListOf<Element> | null,\n index: number,\n ) => void,\n ): this {\n if (!this.selector) {\n return this;\n }\n if (this.selector.length !== undefined) {\n [].forEach.call(this.selector, func);\n } else {\n func(this.selector, 0);\n }\n return this;\n }\n\n private _setCssVendorPrefix(\n el: any,\n cssProperty: string,\n value?: string | number,\n ): void {\n // prettier-ignore\n const property = cssProperty.replace(/-([a-z])/gi, function (\n s,\n group1,\n ) {\n return group1.toUpperCase();\n });\n if (this.cssVenderPrefixes.indexOf(property) !== -1) {\n el.style[\n property.charAt(0).toLowerCase() + property.slice(1)\n ] = value;\n el.style['webkit' + property] = value;\n el.style['moz' + property] = value;\n el.style['ms' + property] = value;\n el.style['o' + property] = value;\n } else {\n el.style[property] = value;\n }\n }\n\n private _getFirstEl() {\n if (this.selector && this.selector.length !== undefined) {\n return this.selector[0];\n } else {\n return this.selector;\n }\n }\n\n private isEventMatched(event: string, eventName: string): boolean {\n const eventNamespace = eventName.split('.');\n return event\n .split('.')\n .filter((e) => e)\n .every((e) => {\n return eventNamespace.indexOf(e) !== -1;\n });\n }\n\n attr(attr: string): string;\n attr(attr: string, value: string | number | boolean): this;\n attr(attr: string, value?: string | number | boolean): string | this {\n if (value === undefined) {\n if (!this.firstElement) {\n return '';\n }\n return this.firstElement.getAttribute(attr);\n }\n this._each((el: any) => {\n el.setAttribute(attr, value);\n });\n return this;\n }\n\n find(selector: any): lgQuery {\n return $LG(this._getSelector(selector, this.selector));\n }\n\n first(): lgQuery {\n if (this.selector && this.selector.length !== undefined) {\n return $LG(this.selector[0]);\n } else {\n return $LG(this.selector);\n }\n }\n\n eq(index: number): lgQuery {\n return $LG(this.selector[index]);\n }\n\n parent(): lgQuery {\n return $LG(this.selector.parentElement);\n }\n\n get(): HTMLElement {\n return this._getFirstEl();\n }\n\n removeAttr(attributes: string): this {\n const attrs = attributes.split(' ');\n this._each((el: any) => {\n attrs.forEach((attr: string) => el.removeAttribute(attr));\n });\n return this;\n }\n\n wrap(className: string): this {\n if (!this.firstElement) {\n return this;\n }\n const wrapper = document.createElement('div');\n wrapper.className = className;\n this.firstElement.parentNode.insertBefore(wrapper, this.firstElement);\n this.firstElement.parentNode.removeChild(this.firstElement);\n wrapper.appendChild(this.firstElement);\n return this;\n }\n\n addClass(classNames = ''): this {\n this._each((el: any) => {\n // IE doesn't support multiple arguments\n classNames.split(' ').forEach((className) => {\n if (className) {\n el.classList.add(className);\n }\n });\n });\n return this;\n }\n\n removeClass(classNames: string): this {\n this._each((el: any) => {\n // IE doesn't support multiple arguments\n classNames.split(' ').forEach((className) => {\n if (className) {\n el.classList.remove(className);\n }\n });\n });\n return this;\n }\n\n hasClass(className: string): boolean {\n if (!this.firstElement) {\n return false;\n }\n return this.firstElement.classList.contains(className);\n }\n hasAttribute(attribute: string): boolean {\n if (!this.firstElement) {\n return false;\n }\n return this.firstElement.hasAttribute(attribute);\n }\n toggleClass(className: string): this {\n if (!this.firstElement) {\n return this;\n }\n if (this.hasClass(className)) {\n this.removeClass(className);\n } else {\n this.addClass(className);\n }\n return this;\n }\n\n css(property: string, value?: string | number): this {\n this._each((el: any) => {\n this._setCssVendorPrefix(el, property, value);\n });\n return this;\n }\n // Need to pass separate namespaces for separate elements\n on(events: string, listener: (e: any) => void): this {\n if (!this.selector) {\n return this;\n }\n events.split(' ').forEach((event: string) => {\n if (!Array.isArray(lgQuery.eventListeners[event])) {\n lgQuery.eventListeners[event] = [];\n }\n lgQuery.eventListeners[event].push(listener);\n this.selector.addEventListener(event.split('.')[0], listener);\n });\n\n return this;\n }\n // @todo - test this\n once(event: string, listener: (e: any) => void): this {\n this.on(event, () => {\n this.off(event);\n listener(event);\n });\n return this;\n }\n off(event: string): this {\n if (!this.selector) {\n return this;\n }\n Object.keys(lgQuery.eventListeners).forEach((eventName) => {\n if (this.isEventMatched(event, eventName)) {\n lgQuery.eventListeners[eventName].forEach((listener) => {\n this.selector.removeEventListener(\n eventName.split('.')[0],\n listener,\n );\n });\n lgQuery.eventListeners[eventName] = [];\n }\n });\n\n return this;\n }\n trigger<Detail>(event: string, detail?: Detail): this {\n if (!this.firstElement) {\n return this;\n }\n\n const customEvent = new CustomEvent(event.split('.')[0], {\n detail: detail || null,\n });\n this.firstElement.dispatchEvent(customEvent);\n return this;\n }\n\n // Does not support IE\n load(url: string): this {\n fetch(url)\n .then((res) => res.text())\n .then((html) => {\n this.selector.innerHTML = html;\n });\n return this;\n }\n\n html(): string;\n html(html: string): this;\n html(html?: string): string | this {\n if (html === undefined) {\n if (!this.firstElement) {\n return '';\n }\n return this.firstElement.innerHTML;\n }\n this._each((el: any) => {\n el.innerHTML = html;\n });\n return this;\n }\n append(html: string | HTMLElement): this {\n this._each((el: any) => {\n if (typeof html === 'string') {\n el.insertAdjacentHTML('beforeend', html);\n } else {\n el.appendChild(html);\n }\n });\n return this;\n }\n prepend(html: string): this {\n this._each((el: any) => {\n el.insertAdjacentHTML('afterbegin', html);\n });\n return this;\n }\n remove(): this {\n this._each((el: any) => {\n el.parentNode.removeChild(el);\n });\n return this;\n }\n empty(): this {\n this._each((el: any) => {\n el.innerHTML = '';\n });\n return this;\n }\n // Supports only window\n scrollTop(): number;\n scrollTop(scrollTop: number): this;\n scrollTop(scrollTop?: number): number | this {\n if (scrollTop !== undefined) {\n document.body.scrollTop = scrollTop;\n document.documentElement.scrollTop = scrollTop;\n return this;\n } else {\n return (\n window.pageYOffset ||\n document.documentElement.scrollTop ||\n document.body.scrollTop ||\n 0\n );\n }\n }\n // Supports only window\n scrollLeft(): number;\n scrollLeft(scrollLeft?: number): this;\n scrollLeft(scrollLeft?: number): number | this {\n if (scrollLeft !== undefined) {\n document.body.scrollLeft = scrollLeft;\n document.documentElement.scrollLeft = scrollLeft;\n return this;\n } else {\n return (\n window.pageXOffset ||\n document.documentElement.scrollLeft ||\n document.body.scrollLeft ||\n 0\n );\n }\n }\n offset(): Offset {\n if (!this.firstElement) {\n return {\n left: 0,\n top: 0,\n };\n }\n const rect = this.firstElement.getBoundingClientRect();\n const bodyMarginLeft = $LG('body').style().marginLeft;\n\n // Minus body margin - https://stackoverflow.com/questions/30711548/is-getboundingclientrect-left-returning-a-wrong-value\n return {\n left: rect.left - parseFloat(bodyMarginLeft) + this.scrollLeft(),\n top: rect.top + this.scrollTop(),\n };\n }\n style(): CSSStyleDeclaration {\n if (!this.firstElement) {\n return {} as CSSStyleDeclaration;\n }\n return (\n this.firstElement.currentStyle ||\n window.getComputedStyle(this.firstElement)\n );\n }\n // Width without padding and border even if box-sizing is used.\n width(): number {\n const style = this.style();\n return (\n this.firstElement.clientWidth -\n parseFloat(style.paddingLeft) -\n parseFloat(style.paddingRight)\n );\n }\n // Height without padding and border even if box-sizing is used.\n height(): number {\n const style = this.style();\n return (\n this.firstElement.clientHeight -\n parseFloat(style.paddingTop) -\n parseFloat(style.paddingBottom)\n );\n }\n}\n\nexport function $LG(selector: any): lgQuery {\n initLgPolyfills();\n return new lgQuery(selector);\n}\n","import { $LG, lgQuery } from './lgQuery';\nimport { VideoSource } from './plugins/video/types';\nimport { VideoInfo } from './types';\n\nexport interface ImageSize {\n width: number;\n height: number;\n}\n\nexport interface ImageSources {\n media?: string;\n srcset: string;\n sizes?: string;\n type?: string;\n}\n\nexport interface GalleryItem {\n /**\n * url of the media\n * @data-attr data-src\n */\n src?: string;\n\n /**\n * Source attributes for the <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source#attributes\">picture</a> element\n * @data-attr data-sources\n */\n sources?: ImageSources[];\n\n /**\n * Thumbnail url\n * @description By default lightGallery uses the image inside gallery selector as thumbnail.\n * But, If you want to use external image for thumbnail,\n * pass the thumbnail url via any data attribute and\n * pass the attribute name via exThumbImage option\n * @example\n * <div id=\"lightGallery\">\n * <a href=\"a.jpg\" data-external-thumb-image=\"images/externalThumb.jpg\" ><img src=\"thumb.jpg\" /></a>\n * </div>\n *\n * lightGallery(document.getElementById('lightGallery'), {\n * exThumbImage: 'data-external-thumb-image'\n * })\n * @data-attr data-*\n */\n thumb?: string;\n\n /**\n * alt attribute for the image\n * @data-attr alt\n */\n alt?: string;\n\n /**\n * Title attribute for the video\n * @data-attr title\n */\n title?: string;\n\n /**\n * Title for iframe\n * @data-attr data-iframe-title\n */\n iframeTitle?: string;\n\n /**\n * Caption for the slide\n * @description You can either pass the HTML markup or the ID or class name of the element which contains the captions\n * @data-attr data-sub-html\n */\n subHtml?: string;\n\n /**\n * url of the file which contain the sub html.\n * @description Note - Does not support Internet Explorer browser\n * @data-attr data-sub-html-url\n */\n subHtmlUrl?: string;\n\n /**\n * Video source\n * @data-attr data-video\n */\n video?: VideoSource;\n\n /**\n * Poster url\n * @data-attr data-poster\n */\n poster?: string;\n\n /**\n * Custom slide name to use in the url when hash plugin is enabled\n * @data-attr data-slide-name\n */\n slideName?: string;\n\n /**\n * List of images and viewport's max width separated by comma.\n * @description Ex?: img/1-375.jpg 375, img/1-480.jpg 480, img/1-757.jpg 757.\n * @data-attr data-responsive\n */\n responsive?: string;\n\n /**\n * srcset attribute values for the main image\n * @data-attr data-srcset\n */\n srcset?: string;\n\n /**\n * srcset sizes attribute for the main image\n * @data-attr data-sizes\n */\n sizes?: string;\n\n /**\n * Set true is you want to open your url in an iframe\n * @data-attr data-iframe\n */\n iframe?: boolean;\n\n /**\n * Download url for your image/video.\n * @description Pass false if you want to disable the download button.\n * @data-attr data-download-url\n */\n downloadUrl?: string | boolean;\n\n /**\n * Name of the file after it is downloaded.\n * @description The HTML value of the download attribute.\n * There are no restrictions on allowed values, and the browser will automatically\n * detect the correct file extension and add it to the file (.img, .pdf, .txt, .html, etc.).\n * <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download\">More info</a>\n * @data-attr data-download\n */\n download?: string | boolean;\n\n /**\n * Actual size of the image in px.\n * @description This is used in zoom plugin to see the actual size of the image when double taped on the image.\n * @data-attr data-width\n */\n width?: string;\n\n /**\n * Facebook share URL.\n * @description Specify only if you want to provide separate share URL for the specific slide. By default, current browser URL is taken.\n * @data-attr data-facebook-share-url\n */\n facebookShareUrl?: string;\n\n /**\n * Tweet text\n * @data-attr data-tweet-text\n */\n tweetText?: string;\n\n /**\n * Twitter share URL.\n * @description Specify only if you want to provide separate share URL for the specific slide. By default, current browser URL will be taken.\n * @data-attr data-twitter-share-url\n */\n twitterShareUrl?: string;\n\n /**\n * Pinterest share URL.\n * @description Specify only if you want to provide separate share URL for the specific slide. By default, current browser URL will be taken.\n * Note?: Pinterest requires absolute URL\n * @data-attr data-pinterest-share-url\n */\n pinterestShareUrl?: string;\n\n /**\n * Description for Pinterest post.\n * @data-attr data-pinterest-text\n */\n pinterestText?: string;\n\n /**\n * Facebook comments body html\n * @description Please refer <a href=\"https://developers.facebook.com/docs/plugins/comments/#comments-plugin\">facebook official documentation</a> for generating the HTML markup\n * @example\n * <div\n * class=\"fb-comments\"\n * data-href=\"https://www.lightgalleryjs.com/demos/comment-box/#facebook-comments-demo\"\n * data-width=\"400\"\n * data-numposts=\"5\">\n * </div>\n * @data-attr data-fb-html\n */\n fbHtml?: string;\n\n /**\n * Disqus page identifier\n * @description Please refer official <a href=\"https://help.disqus.com/en/articles/1717084-javascript-configuration-variables\">disqus documentation</a> for more info\n * @data-attr data-disqus-identifier\n */\n disqusIdentifier?: string;\n\n /**\n * Disqus page url\n * @description Please refer official <a href=\"https://help.disqus.com/en/articles/1717084-javascript-configuration-variables\">disqus documentation</a> for more info\n * @data-attr data-disqus-url\n */\n disqusUrl?: string;\n\n __slideVideoInfo?: VideoInfo;\n [key: string]: any;\n}\n\nconst defaultDynamicOptions = [\n 'src',\n 'sources',\n 'subHtml',\n 'subHtmlUrl',\n 'html',\n 'video',\n 'poster',\n 'slideName',\n 'responsive',\n 'srcset',\n 'sizes',\n 'iframe',\n 'downloadUrl',\n 'download',\n 'width',\n 'facebookShareUrl',\n 'tweetText',\n 'iframeTitle',\n 'twitterShareUrl',\n 'pinterestShareUrl',\n 'pinterestText',\n 'fbHtml',\n 'disqusIdentifier',\n 'disqusUrl',\n];\n\n// Convert html data-attribute to camalcase\nexport function convertToData(attr: string): string {\n // FInd a way for lgsize\n if (attr === 'href') {\n return 'src';\n }\n attr = attr.replace('data-', '');\n attr = attr.charAt(0).toLowerCase() + attr.slice(1);\n attr = attr.replace(/-([a-z])/g, (g) => g[1].toUpperCase());\n\n return attr;\n}\n\nconst utils = {\n /**\n * get possible width and height from the lgSize attribute. Used for ZoomFromOrigin option\n */\n getSize(\n el: HTMLElement,\n container: lgQuery,\n spacing = 0,\n defaultLgSize?: string,\n ): ImageSize | undefined {\n const LGel = $LG(el);\n let lgSize = LGel.attr('data-lg-size') || defaultLgSize;\n\n if (!lgSize) {\n return;\n }\n\n const isResponsiveSizes = lgSize.split(',');\n // if at-least two viewport sizes are available\n if (isResponsiveSizes[1]) {\n const wWidth = window.innerWidth;\n for (let i = 0; i < isResponsiveSizes.length; i++) {\n const size = isResponsiveSizes[i];\n const responsiveWidth = parseInt(size.split('-')[2], 10);\n if (responsiveWidth > wWidth) {\n lgSize = size;\n break;\n }\n\n // take last item as last option\n if (i === isResponsiveSizes.length - 1) {\n lgSize = size;\n }\n }\n }\n\n const size = lgSize.split('-');\n\n const width = parseInt(size[0], 10);\n const height = parseInt(size[1], 10);\n\n const cWidth = container.width();\n const cHeight = container.height() - spacing;\n\n const maxWidth = Math.min(cWidth, width);\n const maxHeight = Math.min(cHeight, height);\n\n const ratio = Math.min(maxWidth / width, maxHeight / height);\n\n return { width: width * ratio, height: height * ratio };\n },\n\n /**\n * @desc Get transform value based on the imageSize. Used for ZoomFromOrigin option\n * @param {jQuery Element}\n * @returns {String} Transform CSS string\n */\n getTransform(\n el: HTMLElement,\n container: lgQuery,\n top: number,\n bottom: number,\n imageSize?: ImageSize,\n ): string | undefined {\n if (!imageSize) {\n return;\n }\n const LGel = $LG(el).find('img').first();\n if (!LGel.get()) {\n return;\n }\n\n const containerRect = container.get().getBoundingClientRect();\n\n const wWidth = containerRect.width;\n\n // using innerWidth to include mobile safari bottom bar\n const wHeight = container.height() - (top + bottom);\n\n const elWidth = LGel.width();\n const elHeight = LGel.height();\n\n const elStyle = LGel.style();\n let x =\n (wWidth - elWidth) / 2 -\n LGel.offset().left +\n (parseFloat(elStyle.paddingLeft) || 0) +\n (parseFloat(elStyle.borderLeft) || 0) +\n $LG(window).scrollLeft() +\n containerRect.left;\n let y =\n (wHeight - elHeight) / 2 -\n LGel.offset().top +\n (parseFloat(elStyle.paddingTop) || 0) +\n (parseFloat(elStyle.borderTop) || 0) +\n $LG(window).scrollTop() +\n top;\n\n const scX = elWidth / imageSize.width;\n const scY = elHeight / imageSize.height;\n\n const transform =\n 'translate3d(' +\n (x *= -1) +\n 'px, ' +\n (y *= -1) +\n 'px, 0) scale3d(' +\n scX +\n ', ' +\n scY +\n ', 1)';\n return transform;\n },\n\n getIframeMarkup(\n iframeWidth: string,\n iframeHeight: string,\n iframeMaxWidth: string,\n iframeMaxHeight: string,\n src?: string,\n iframeTitle?: string,\n ): string {\n const title = iframeTitle ? 'title=\"' + iframeTitle + '\"' : '';\n return `<div class=\"lg-video-cont lg-has-iframe\" style=\"width:${iframeWidth}; max-width:${iframeMaxWidth}; height: ${iframeHeight}; max-height:${iframeMaxHeight}\">\n <iframe class=\"lg-object\" frameborder=\"0\" ${title} src=\"${src}\" allowfullscreen=\"true\"></iframe>\n </div>`;\n },\n\n getImgMarkup(\n index: number,\n src: string,\n altAttr: string,\n srcset?: string,\n sizes?: string,\n sources?: ImageSources[],\n ): string {\n const srcsetAttr = srcset ? `srcset=\"${srcset}\"` : '';\n const sizesAttr = sizes ? `sizes=\"${sizes}\"` : '';\n const imgMarkup = `<img ${altAttr} ${srcsetAttr} ${sizesAttr} class=\"lg-object lg-image\" data-index=\"${index}\" src=\"${src}\" />`;\n let sourceTag = '';\n if (sources) {\n const sourceObj =\n typeof sources === 'string' ? JSON.parse(sources) : sources;\n\n sourceTag = sourceObj.map((source: any) => {\n let attrs = '';\n Object.keys(source).forEach((key) => {\n // Do not remove the first space as it is required to separate the attributes\n attrs += ` ${key}=\"${source[key]}\"`;\n });\n return `<source ${attrs}></source>`;\n });\n }\n return `${sourceTag}${imgMarkup}`;\n },\n\n // Get src from responsive src\n getResponsiveSrc(srcItms: string[]): string {\n const rsWidth = [];\n const rsSrc = [];\n let src = '';\n for (let i = 0; i < srcItms.length; i++) {\n const _src = srcItms[i].split(' ');\n\n // Manage empty space\n if (_src[0] === '') {\n _src.splice(0, 1);\n }\n\n rsSrc.push(_src[0]);\n rsWidth.push(_src[1]);\n }\n\n const wWidth = window.innerWidth;\n for (let j = 0; j < rsWidth.length; j++) {\n if (parseInt(rsWidth[j], 10) > wWidth) {\n src = rsSrc[j];\n break;\n }\n }\n return src;\n },\n\n isImageLoaded(img: HTMLImageElement): boolean {\n if (!img) return false;\n // During the onload event, IE correctly identifies any images that\n // weren’t downloaded as not complete. Others should too. Gecko-based\n // browsers act like NS4 in that they report this incorrectly.\n if (!img.complete) {\n return false;\n }\n\n // However, they do have two very useful properties: naturalWidth and\n // naturalHeight. These give the true size of the image. If it failed\n // to load, either of these should be zero.\n if (img.naturalWidth === 0) {\n return false;\n }\n\n // No other way of checking: assume it’s ok.\n return true;\n },\n\n getVideoPosterMarkup(\n _poster: string,\n dummyImg: string,\n videoContStyle: string,\n playVideoString: string,\n _isVideo?: VideoInfo,\n ): string {\n let videoClass = '';\n if (_isVideo && _isVideo.youtube) {\n videoClass = 'lg-has-youtube';\n } else if (_isVideo && _isVideo.vimeo) {\n videoClass = 'lg-has-vimeo';\n } else {\n videoClass = 'lg-has-html5';\n }\n\n return `<div class=\"lg-video-cont ${videoClass}\" style=\"${videoContStyle}\">\n <div class=\"lg-video-play-button\">\n <svg\n viewBox=\"0 0 20 20\"\n preserveAspectRatio=\"xMidYMid\"\n focusable=\"false\"\n aria-labelledby=\"${playVideoString}\"\n role=\"img\"\n class=\"lg-video-play-icon\"\n >\n <title>${playVideoString}</title>\n <polygon class=\"lg-video-play-icon-inner\" points=\"1,0 20,10 1,20\"></polygon>\n </svg>\n <svg class=\"lg-video-play-icon-bg\" viewBox=\"0 0 50 50\" focusable=\"false\">\n <circle cx=\"50%\" cy=\"50%\" r=\"20\"></circle></svg>\n <svg class=\"lg-video-play-icon-circle\" viewBox=\"0 0 50 50\" focusable=\"false\">\n <circle cx=\"50%\" cy=\"50%\" r=\"20\"></circle>\n </svg>\n </div>\n ${dummyImg || ''}\n <img class=\"lg-object lg-video-poster\" src=\"${_poster}\" />\n </div>`;\n },\n\n getFocusableElements(container: HTMLElement): NodeListOf<Element> {\n const elements = container.querySelectorAll(\n 'a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input[type=\"text\"]:not([disabled]), input[type=\"radio\"]:not([disabled]), input[type=\"checkbox\"]:not([disabled]), select:not([disabled])',\n );\n const visibleElements = [].filter.call(elements, (element) => {\n const style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n });\n return (visibleElements as unknown) as NodeListOf<Element>;\n },\n\n /**\n * @desc Create dynamic elements array from gallery items when dynamic option is false\n * It helps to avoid frequent DOM interaction\n * and avoid multiple checks for dynamic elments\n *\n * @returns {Array} dynamicEl\n */\n getDynamicOptions(\n items: any,\n extraProps: string[],\n getCaptionFromTitleOrAlt: boolean,\n exThumbImage: string,\n ): GalleryItem[] {\n const dynamicElements: GalleryItem[] = [];\n const availableDynamicOptions = [\n ...defaultDynamicOptions,\n ...extraProps,\n ];\n [].forEach.call(items, (item: HTMLElement) => {\n const dynamicEl: GalleryItem = {} as GalleryItem;\n for (let i = 0; i < item.attributes.length; i++) {\n const attr = item.attributes[i];\n if (attr.specified) {\n const dynamicAttr = convertToData(attr.name);\n let label = '';\n if (availableDynamicOptions.indexOf(dynamicAttr) > -1) {\n label = dynamicAttr;\n }\n if (label) {\n (dynamicEl as any)[label] = attr.value;\n }\n }\n }\n const currentItem = $LG(item);\n const alt = currentItem.find('img').first().attr('alt');\n const title = currentItem.attr('title');\n\n const thumb = exThumbImage\n ? currentItem.attr(exThumbImage)\n : currentItem.find('img').first().attr('src');\n dynamicEl.thumb = thumb;\n\n if (getCaptionFromTitleOrAlt && !dynamicEl.subHtml) {\n dynamicEl.subHtml = title || alt || '';\n }\n dynamicEl.alt = alt || title || '';\n dynamicElements.push(dynamicEl);\n });\n return dynamicElements;\n },\n isMobile(): boolean {\n return /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);\n },\n /**\n * @desc Check the given src is video\n * @param {String} src\n * @return {Object} video type\n * Ex:{ youtube : [\"//www.youtube.com/watch?v=c0asJgSyxcY\", \"c0asJgSyxcY\"] }\n *\n * @todo - this information can be moved to dynamicEl to avoid frequent calls\n */\n\n isVideo(\n src: string,\n isHTML5VIdeo: boolean,\n index: number,\n ): VideoInfo | undefined {\n if (!src) {\n if (isHTML5VIdeo) {\n return {\n html5: true,\n };\n } else {\n console.error(\n 'lightGallery :- data-src is not provided on slide item ' +\n (index + 1) +\n '. Please make sure the selector property is properly configured. More info - https://www.lightgalleryjs.com/demos/html-markup/',\n );\n return;\n }\n }\n\n const youtube = src.match(\n /\\/\\/(?:www\\.)?youtu(?:\\.be|be\\.com|be-nocookie\\.com)\\/(?:watch\\?v=|embed\\/)?([a-z0-9\\-\\_\\%]+)([\\&|?][\\S]*)*/i,\n );\n const vimeo = src.match(\n /\\/\\/(?:www\\.)?(?:player\\.)?vimeo.com\\/(?:video\\/)?([0-9a-z\\-_]+)(.*)?/i,\n );\n const wistia = src.match(\n /https?:\\/\\/(.+)?(wistia\\.com|wi\\.st)\\/(medias|embed)\\/([0-9a-z\\-_]+)(.*)/,\n );\n\n if (youtube) {\n return {\n youtube,\n };\n } else if (vimeo) {\n return {\n vimeo,\n };\n } else if (wistia) {\n return {\n wistia,\n };\n }\n },\n};\n\nexport default utils;\n","import {\n AfterAppendSlideEventDetail,\n AfterAppendSubHtmlDetail,\n BeforeSlideDetail,\n lGEvents,\n SlideItemLoadDetail,\n} from './lg-events';\nimport {\n LightGalleryAllSettings,\n lightGalleryCoreSettings,\n LightGallerySettings,\n} from './lg-settings';\nimport utils, { GalleryItem, ImageSize } from './lg-utils';\nimport { $LG, lgQuery } from './lgQuery';\nimport {\n Coords,\n MediaContainerPosition,\n SlideDirection,\n VideoInfo,\n} from './types';\n\ndeclare let picturefill: any;\n\n// @ref - https://stackoverflow.com/questions/3971841/how-to-resize-images-proportionally-keeping-the-aspect-ratio\n// @ref - https://2ality.com/2017/04/setting-up-multi-platform-packages.html\n\n// Unique id for each gallery\nlet lgId = 0;\n\nexport class LightGallery {\n public settings!: LightGalleryAllSettings;\n public galleryItems!: GalleryItem[];\n\n // Current gallery item\n public lgId!: number;\n\n public el!: HTMLElement;\n public LGel!: lgQuery;\n public lgOpened = false;\n\n public index = 0;\n\n // lightGallery modules\n public plugins: any[] = [];\n\n // false when lightGallery load first slide content;\n public lGalleryOn = false;\n\n // True when a slide animation is in progress\n public lgBusy = false;\n\n // Type of touch action - {swipe, zoomSwipe, pinch}\n public touchAction?: 'swipe' | 'zoomSwipe' | 'pinch';\n\n // Direction of swipe/drag - {horizontal, vertical}\n public swipeDirection?: 'horizontal' | 'vertical';\n\n // Timeout function for hiding controls;\n public hideBarTimeout: any;\n\n public currentItemsInDom: string[] = [];\n\n public outer!: lgQuery;\n\n public items: any;\n\n public $backdrop!: lgQuery;\n public $lgComponents!: lgQuery;\n\n public $container!: lgQuery;\n\n public $inner!: lgQuery;\n public $content!: lgQuery;\n public $toolbar!: lgQuery;\n\n // Scroll top value before lightGallery is opened\n public prevScrollTop = 0;\n\n public bodyPaddingRight = 0;\n\n private zoomFromOrigin!: boolean;\n\n private currentImageSize?: ImageSize;\n\n private isDummyImageRemoved = false;\n\n private dragOrSwipeEnabled = false;\n\n public mediaContainerPosition = {\n top: 0,\n bottom: 0,\n };\n\n constructor(element: HTMLElement, options?: LightGallerySettings) {\n if (!element) {\n return this;\n }\n lgId++;\n this.lgId = lgId;\n\n this.el = element;\n this.LGel = $LG(element);\n\n this.generateSettings(options);\n\n this.buildModules();\n\n // When using dynamic mode, ensure dynamicEl is an array\n if (\n this.settings.dynamic &&\n this.settings.dynamicEl !== undefined &&\n !Array.isArray(this.settings.dynamicEl)\n ) {\n throw 'When using dynamic mode, you must also define dynamicEl as an Array.';\n }\n\n this.galleryItems = this.getItems();\n this.normalizeSettings();\n\n // Gallery items\n\n this.init();\n\n this.validateLicense();\n\n return this;\n }\n\n private generateSettings(options?: LightGallerySettings) {\n // lightGallery settings\n this.settings = {\n ...lightGalleryCoreSettings,\n ...options,\n } as LightGalleryAllSettings;\n if (\n this.settings.isMobile &&\n typeof this.settings.isMobile === 'function'\n ? this.settings.isMobile()\n : utils.isMobile()\n ) {\n const mobileSettings = {\n ...this.settings.mobileSettings,\n ...this.settings.mobileSettings,\n };\n this.settings = { ...this.settings, ...mobileSettings };\n }\n }\n\n private normalizeSettings() {\n if (this.settings.slideEndAnimation) {\n this.settings.hideControlOnEnd = false;\n }\n if (!this.settings.closable) {\n this.settings.swipeToClose = false;\n }\n\n // And reset it on close to get the correct value next time\n this.zoomFromOrigin = this.settings.zoomFromOrigin;\n\n // At the moment, Zoom from image doesn't support dynamic options\n // @todo add zoomFromOrigin support for dynamic images\n if (this.settings.dynamic) {\n this.zoomFromOrigin = false;\n }\n\n if (!this.settings.container) {\n this.settings.container = document.body;\n }\n\n // settings.preload should not be grater than $item.length\n this.settings.preload = Math.min(\n this.settings.preload,\n this.galleryItems.length,\n );\n }\n\n init(): void {\n this.addSlideVideoInfo(this.galleryItems);\n\n this.buildStructure();\n\n this.LGel.trigger(lGEvents.init, {\n instance: this,\n });\n\n if (this.settings.keyPress) {\n this.keyPress();\n }\n\n setTimeout(() => {\n this.enableDrag();\n this.enableSwipe();\n this.triggerPosterClick();\n }, 50);\n\n this.arrow();\n if (this.settings.mousewheel) {\n this.mousewheel();\n }\n\n if (!this.settings.dynamic) {\n this.openGalleryOnItemClick();\n }\n }\n\n openGalleryOnItemClick(): void {\n // Using for loop instead of using bubbling as the items can be any html element.\n for (let index = 0; index < this.items.length; index++) {\n const element = this.items[index];\n const $element = $LG(element);\n // Using different namespace for click because click event should not unbind if selector is same object('this')\n // @todo manage all event listners - should have namespace that represent element\n const uuid = lgQuery.generateUUID();\n $element\n .attr('data-lg-id', uuid)\n .on(`click.lgcustom-item-${uuid}`, (e) => {\n e.preventDefault();\n const currentItemIndex = this.settings.index || index;\n this.openGallery(currentItemIndex, element);\n });\n }\n }\n\n /**\n * Module constructor\n * Modules are build incrementally.\n * Gallery should be opened only once all the modules are initialized.\n * use moduleBuildTimeout to make sure this\n */\n buildModules(): void {\n this.settings.plugins.forEach((plugin) => {\n this.plugins.push(new plugin(this, $LG));\n });\n }\n\n validateLicense(): void {\n if (!this.settings.licenseKey) {\n console.error('Please provide a valid license key');\n } else if (this.settings.licenseKey === '0000-0000-000-0000') {\n console.warn(\n `lightGallery: ${this.settings.licenseKey} license key is not valid for production use`,\n );\n }\n }\n\n getSlideItem(index: number): lgQuery {\n return $LG(this.getSlideItemId(index));\n }\n\n getSlideItemId(index: number): string {\n return `#lg-item-${this.lgId}-${index}`;\n }\n\n getIdName(id: string): string {\n return `${id}-${this.lgId}`;\n }\n getElementById(id: string): lgQuery {\n return $LG(`#${this.getIdName(id)}`);\n }\n\n manageSingleSlideClassName(): void {\n if (this.galleryItems.length < 2) {\n this.outer.addClass('lg-single-item');\n } else {\n this.outer.removeClass('lg-single-item');\n }\n }\n\n buildStructure(): void {\n const container = this.$container && this.$container.get();\n if (container) {\n return;\n }\n let controls = '';\n let subHtmlCont = '';\n\n // Create controls\n if (this.settings.controls) {\n controls = `<button type=\"button\" id=\"${this.getIdName(\n 'lg-prev',\n )}\" aria-label=\"${\n this.settings.strings['previousSlide']\n }\" class=\"lg-prev lg-icon\"> ${this.settings.prevHtml} </button>\n <button type=\"button\" id=\"${this.getIdName(\n 'lg-next',\n )}\" aria-label=\"${\n this.settings.strings['nextSlide']\n }\" class=\"lg-next lg-icon\"> ${this.settings.nextHtml} </button>`;\n }\n\n if (this.settings.appendSubHtmlTo !== '.lg-item') {\n subHtmlCont =\n '<div class=\"lg-sub-html\" role=\"status\" aria-live=\"polite\"></div>';\n }\n\n let addClasses = '';\n\n if (this.settings.allowMediaOverlap) {\n // Do not remove space before last single quote\n addClasses += 'lg-media-overlap ';\n }\n\n const ariaLabelledby = this.settings.ariaLabelledby\n ? 'aria-labelledby=\"' + this.settings.ariaLabelledby + '\"'\n : '';\n const ariaDescribedby = this.settings.ariaDescribedby\n ? 'aria-describedby=\"' + this.settings.ariaDescribedby + '\"'\n : '';\n\n const containerClassName = `lg-container ${this.settings.addClass} ${\n document.body !== this.settings.container ? 'lg-inline' : ''\n }`;\n const closeIcon =\n this.settings.closable && this.settings.showCloseIcon\n ? `<button type=\"button\" aria-label=\"${\n this.settings.strings['closeGallery']\n }\" id=\"${this.getIdName(\n 'lg-close',\n )}\" class=\"lg-close lg-icon\"></button>`\n : '';\n const maximizeIcon = this.settings.showMaximizeIcon\n ? `<button type=\"button\" aria-label=\"${\n this.settings.strings['toggleMaximize']\n }\" id=\"${this.getIdName(\n 'lg-maximize',\n )}\" class=\"lg-maximize lg-icon\"></button>`\n : '';\n const template = `\n <div class=\"${containerClassName}\" id=\"${this.getIdName(\n 'lg-container',\n )}\" tabindex=\"-1\" aria-modal=\"true\" ${ariaLabelledby} ${ariaDescribedby} role=\"dialog\"\n >\n <div id=\"${this.getIdName(\n 'lg-backdrop',\n )}\" class=\"lg-backdrop\"></div>\n\n <div id=\"${this.getIdName(\n 'lg-outer',\n )}\" class=\"lg-outer lg-use-css3 lg-css3 lg-hide-items ${addClasses} \">\n\n <div id=\"${this.getIdName('lg-content')}\" class=\"lg-content\">\n <div id=\"${this.getIdName('lg-inner')}\" class=\"lg-inner\">\n </div>\n ${controls}\n </div>\n <div id=\"${this.getIdName(\n 'lg-toolbar',\n )}\" class=\"lg-toolbar lg-group\">\n ${maximizeIcon}\n ${closeIcon}\n </div>\n ${\n this.settings.appendSubHtmlTo === '.lg-outer'\n ? subHtmlCont\n : ''\n }\n <div id=\"${this.getIdName(\n 'lg-components',\n )}\" class=\"lg-components\">\n ${\n this.settings.appendSubHtmlTo === '.lg-sub-html'\n ? subHtmlCont\n : ''\n }\n </div>\n </div>\n </div>\n `;\n\n $LG(this.settings.container).append(template);\n\n if (document.body !== this.settings.container) {\n $LG(this.settings.container).css('position', 'relative');\n }\n\n this.outer = this.getElementById('lg-outer');\n this.$lgComponents = this.getElementById('lg-components');\n this.$backdrop = this.getElementById('lg-backdrop');\n this.$container = this.getElementById('lg-container');\n this.$inner = this.getElementById('lg-inner');\n this.$content = this.getElementById('lg-content');\n this.$toolbar = this.getElementById('lg-toolbar');\n\n this.$backdrop.css(\n 'transition-duration',\n this.settings.backdropDuration + 'ms',\n );\n\n let outerClassNames = `${this.settings.mode} `;\n\n this.manageSingleSlideClassName();\n\n if (this.settings.enableDrag) {\n outerClassNames += 'lg-grab ';\n }\n\n this.outer.addClass(outerClassNames);\n\n this.$inner.css('transition-timing-function', this.settings.easing);\n this.$inner.css('transition-duration', this.settings.speed + 'ms');\n\n if (this.settings.download) {\n this.$toolbar.append(\n `<a id=\"${this.getIdName(\n 'lg-download',\n )}\" target=\"_blank\" rel=\"noopener\" aria-label=\"${\n this.settings.strings['download']\n }\" download class=\"lg-download lg-icon\"></a>`,\n );\n }\n\n this.counter();\n\n $LG(window).on(\n `resize.lg.global${this.lgId} orientationchange.lg.global${this.lgId}`,\n () => {\n this.refreshOnResize();\n },\n );\n\n this.hideBars();\n\n this.manageCloseGallery();\n this.toggleMaximize();\n\n this.initModules();\n }\n\n refreshOnResize(): void {\n if (this.lgOpened) {\n const currentGalleryItem = this.galleryItems[this.index];\n const { __slideVideoInfo } = currentGalleryItem;\n\n this.mediaContainerPosition = this.getMediaContainerPosition();\n const { top, bottom } = this.mediaContainerPosition;\n this.currentImageSize = utils.getSize(\n this.items[this.index],\n this.outer,\n top + bottom,\n __slideVideoInfo && this.settings.videoMaxSize,\n );\n if (__slideVideoInfo) {\n this.resizeVideoSlide(this.index, this.currentImageSize);\n }\n if (this.zoomFromOrigin && !this.isDummyImageRemoved) {\n const imgStyle = this.getDummyImgStyles(this.currentImageSize);\n this.outer\n .find('.lg-current .lg-dummy-img')\n .first()\n .attr('style', imgStyle);\n }\n this.LGel.trigger(lGEvents.containerResize);\n }\n }\n\n resizeVideoSlide(index: number, imageSize?: ImageSize): void {\n const lgVideoStyle = this.getVideoContStyle(imageSize);\n const currentSlide = this.getSlideItem(index);\n currentSlide.find('.lg-video-cont').attr('style', lgVideoStyle);\n }\n\n /**\n * Update slides dynamically.\n * Add, edit or delete slides dynamically when lightGallery is opened.\n * Modify the current gallery items and pass it via updateSlides method\n * @note\n * - Do not mutate existing lightGallery items directly.\n * - Always pass new list of gallery items\n * - You need to take care of thumbnails outside the gallery if any\n * - user this method only if you want to update slides when the gallery is opened. Otherwise, use `refresh()` method.\n * @param items Gallery items\n * @param index After the update operation, which slide gallery should navigate to\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery();\n *\n * // Adding slides dynamically\n * let galleryItems = [\n * // Access existing lightGallery items\n * // galleryItems are automatically generated internally from the gallery HTML markup\n * // or directly from galleryItems when dynamic gallery is used\n * ...plugin.galleryItems,\n * ...[\n * {\n * src: 'img/img-1.png',\n * thumb: 'img/thumb1.png',\n * },\n * ],\n * ];\n * plugin.updateSlides(\n * galleryItems,\n * plugin.index,\n * );\n *\n *\n * // Remove slides dynamically\n * galleryItems = JSON.parse(\n * JSON.stringify(updateSlideInstance.galleryItems),\n * );\n * galleryItems.shift();\n * updateSlideInstance.updateSlides(galleryItems, 1);\n * @see <a href=\"/demos/update-slides/\">Demo</a>\n */\n updateSlides(items: GalleryItem[], index: number): void {\n if (this.index > items.length - 1) {\n this.index = items.length - 1;\n }\n if (items.length === 1) {\n this.index = 0;\n }\n if (!items.length) {\n this.closeGallery();\n return;\n }\n const currentSrc = this.galleryItems[index].src;\n this.galleryItems = items;\n this.updateControls();\n this.$inner.empty();\n this.currentItemsInDom = [];\n\n let _index = 0;\n // Find the current index based on source value of the slide\n this.galleryItems.some((galleryItem, itemIndex) => {\n if (galleryItem.src === currentSrc) {\n _index = itemIndex;\n return true;\n }\n return false;\n });\n\n this.currentItemsInDom = this.organizeSlideItems(_index, -1);\n this.loadContent(_index, true);\n this.getSlideItem(_index).addClass('lg-current');\n\n this.index = _index;\n this.updateCurrentCounter(_index);\n this.LGel.trigger(lGEvents.updateSlides);\n }\n\n // Get gallery items based on multiple conditions\n getItems(): GalleryItem[] {\n // Gallery items\n this.items = [];\n if (!this.settings.dynamic) {\n if (this.settings.selector === 'this') {\n this.items.push(this.el);\n } else if (this.settings.selector) {\n if (typeof this.settings.selector === 'string') {\n if (this.settings.selectWithin) {\n const selectWithin = $LG(this.settings.selectWithin);\n this.items = selectWithin\n .find(this.settings.selector)\n .get();\n } else {\n this.items = this.el.querySelectorAll(\n this.settings.selector,\n );\n }\n } else {\n this.items = this.settings.selector;\n }\n } else {\n this.items = this.el.children;\n }\n return utils.getDynamicOptions(\n this.items,\n this.settings.extraProps,\n this.settings.getCaptionFromTitleOrAlt,\n this.settings.exThumbImage,\n );\n } else {\n return this.settings.dynamicEl || [];\n }\n }\n\n shouldHideScrollbar(): boolean {\n return (\n this.settings.hideScrollbar &&\n document.body === this.settings.container\n );\n }\n\n hideScrollbar(): void {\n if (!this.shouldHideScrollbar()) {\n return;\n }\n this.bodyPaddingRight = parseFloat($LG('body').style().paddingRight);\n const bodyRect = document.documentElement.getBoundingClientRect();\n const scrollbarWidth = window.innerWidth - bodyRect.width;\n\n $LG(document.body).css(\n 'padding-right',\n scrollbarWidth + this.bodyPaddingRight + 'px',\n );\n $LG(document.body).addClass('lg-overlay-open');\n }\n\n resetScrollBar(): void {\n if (!this.shouldHideScrollbar()) {\n return;\n }\n $LG(document.body).css('padding-right', this.bodyPaddingRight + 'px');\n $LG(document.body).removeClass('lg-overlay-open');\n }\n\n /**\n * Open lightGallery.\n * Open gallery with specific slide by passing index of the slide as parameter.\n * @category lGPublicMethods\n * @param {Number} index - index of the slide\n * @param {HTMLElement} element - Which image lightGallery should zoom from\n *\n * @example\n * const $dynamicGallery = document.getElementById('dynamic-gallery-demo');\n * const dynamicGallery = lightGallery($dynamicGallery, {\n * dynamic: true,\n * dynamicEl: [\n * {\n * src: 'img/1.jpg',\n * thumb: 'img/thumb-1.jpg',\n * subHtml: '<h4>Image 1 title</h4><p>Image 1 descriptions.</p>',\n * },\n * ...\n * ],\n * });\n * $dynamicGallery.addEventListener('click', function () {\n * // Starts with third item.(Optional).\n * // This is useful if you want use dynamic mode with\n * // custom thumbnails (thumbnails outside gallery),\n * dynamicGallery.openGallery(2);\n * });\n *\n */\n openGallery(index = this.settings.index, element?: HTMLElement): void {\n // prevent accidental double execution\n if (this.lgOpened) return;\n this.lgOpened = true;\n this.outer.removeClass('lg-hide-items');\n\n this.hideScrollbar();\n\n // Add display block, but still has opacity 0\n this.$container.addClass('lg-show');\n\n const itemsToBeInsertedToDom = this.getItemsToBeInsertedToDom(\n index,\n index,\n );\n this.currentItemsInDom = itemsToBeInsertedToDom;\n\n let items = '';\n itemsToBeInsertedToDom.forEach((item) => {\n items = items + `<div id=\"${item}\" class=\"lg-item\"></div>`;\n });\n\n this.$inner.append(items);\n this.addHtml(index);\n let transform: string | undefined = '';\n this.mediaContainerPosition = this.getMediaContainerPosition();\n const { top, bottom } = this.mediaContainerPosition;\n if (!this.settings.allowMediaOverlap) {\n this.setMediaContainerPosition(top, bottom);\n }\n const { __slideVideoInfo } = this.galleryItems[index];\n if (this.zoomFromOrigin && element) {\n this.currentImageSize = utils.getSize(\n element,\n this.outer,\n top + bottom,\n __slideVideoInfo && this.settings.videoMaxSize,\n );\n transform = utils.getTransform(\n element,\n this.outer,\n top,\n bottom,\n this.currentImageSize,\n );\n }\n if (!this.zoomFromOrigin || !transform) {\n this.outer.addClass(this.settings.startClass);\n this.getSlideItem(index).removeClass('lg-complete');\n }\n const timeout = this.settings.zoomFromOrigin\n ? 100\n : this.settings.backdropDuration;\n setTimeout(() => {\n this.outer.addClass('lg-components-open');\n }, timeout);\n this.index = index;\n this.LGel.trigger(lGEvents.beforeOpen);\n\n // add class lg-current to remove initial transition\n this.getSlideItem(index).addClass('lg-current');\n\n this.lGalleryOn = false;\n // Store the current scroll top value to scroll back after closing the gallery..\n this.prevScrollTop = $LG(window).scrollTop();\n\n setTimeout(() => {\n // Need to check both zoomFromOrigin and transform values as we need to set set the\n // default opening animation if user missed to add the lg-size attribute\n\n if (this.zoomFromOrigin && transform) {\n const currentSlide = this.getSlideItem(index);\n currentSlide.css('transform', transform);\n setTimeout(() => {\n currentSlide\n .addClass('lg-start-progress lg-start-end-progress')\n .css(\n 'transition-duration',\n this.settings.startAnimationDuration + 'ms',\n );\n this.outer.addClass('lg-zoom-from-image');\n });\n setTimeout(() => {\n currentSlide.css('transform', 'translate3d(0, 0, 0)');\n }, 100);\n }\n\n setTimeout(() => {\n this.$backdrop.addClass('in');\n this.$container.addClass('lg-show-in');\n }, 10);\n\n setTimeout(() => {\n if (\n this.settings.trapFocus &&\n document.body === this.settings.container\n ) {\n this.trapFocus();\n }\n }, this.settings.backdropDuration + 50);\n\n // lg-visible class resets gallery opacity to 1\n if (!this.zoomFromOrigin || !transform) {\n setTimeout(() => {\n this.outer.addClass('lg-visible');\n }, this.settings.backdropDuration);\n }\n\n // initiate slide function\n this.slide(index, false, false, false);\n\n this.LGel.trigger(lGEvents.afterOpen);\n });\n\n if (document.body === this.settings.container) {\n $LG('html').addClass('lg-on');\n }\n }\n\n /**\n * Note - Changing the position of the media on every slide transition creates a flickering effect.\n * Therefore, The height of the caption is calculated dynamically, only once based on the first slide caption.\n * if you have dynamic captions for each media,\n * you can provide an appropriate height for the captions via allowMediaOverlap option\n */\n public getMediaContainerPosition(): MediaContainerPosition {\n if (this.settings.allowMediaOverlap) {\n return {\n top: 0,\n bottom: 0,\n };\n }\n const top = this.$toolbar.get().clientHeight || 0;\n const subHtml = this.outer.find('.lg-components .lg-sub-html').get();\n const captionHeight =\n this.settings.defaultCaptionHeight ||\n (subHtml && subHtml.clientHeight) ||\n 0;\n const thumbContainer = this.outer.find('.lg-thumb-outer').get();\n const thumbHeight = thumbContainer ? thumbContainer.clientHeight : 0;\n const bottom = thumbHeight + captionHeight;\n return {\n top,\n bottom,\n };\n }\n\n private setMediaContainerPosition(top = 0, bottom = 0): void {\n this.$content.css('top', top + 'px').css('bottom', bottom + 'px');\n }\n\n hideBars(): void {\n // Hide controllers if mouse doesn't move for some period\n setTimeout(() => {\n this.outer.removeClass('lg-hide-items');\n if (this.settings.hideBarsDelay > 0) {\n this.outer.on('mousemove.lg click.lg touchstart.lg', () => {\n this.outer.removeClass('lg-hide-items');\n\n clearTimeout(this.hideBarTimeout);\n\n // Timeout will be cleared on each slide movement also\n this.hideBarTimeout = setTimeout(() => {\n this.outer.addClass('lg-hide-items');\n }, this.settings.hideBarsDelay);\n });\n this.outer.trigger('mousemove.lg');\n }\n }, this.settings.showBarsAfter);\n }\n\n initPictureFill($img: lgQuery): void {\n if (this.settings.supportLegacyBrowser) {\n try {\n picturefill({\n elements: [$img.get()],\n });\n } catch (e) {\n console.warn(\n 'lightGallery :- If you want srcset or picture tag to be supported for older browser please include picturefil javascript library in your document.',\n );\n }\n }\n }\n\n /**\n * @desc Create image counter\n * Ex: 1/10\n */\n counter(): void {\n if (this.settings.counter) {\n const counterHtml = `<div class=\"lg-counter\" role=\"status\" aria-live=\"polite\">\n <span id=\"${this.getIdName(\n 'lg-counter-current',\n )}\" class=\"lg-counter-current\">${this.index + 1} </span> /\n <span id=\"${this.getIdName(\n 'lg-counter-all',\n )}\" class=\"lg-counter-all\">${\n this.galleryItems.length\n } </span></div>`;\n this.outer.find(this.settings.appendCounterTo).append(counterHtml);\n }\n }\n\n /**\n * @desc add sub-html into the slide\n * @param {Number} index - index of the slide\n */\n addHtml(index: number): void {\n let subHtml;\n let subHtmlUrl;\n if (this.galleryItems[index].subHtmlUrl) {\n subHtmlUrl = this.galleryItems[index].subHtmlUrl;\n } else {\n subHtml = this.galleryItems[index].subHtml;\n }\n\n if (!subHtmlUrl) {\n if (subHtml) {\n // get first letter of sub-html\n // if first letter starts with . or # get the html form the jQuery object\n const fL = subHtml.substring(0, 1);\n if (fL === '.' || fL === '#') {\n if (\n this.settings.subHtmlSelectorRelative &&\n !this.settings.dynamic\n ) {\n subHtml = $LG(this.items)\n .eq(index)\n .find(subHtml)\n .first()\n .html();\n } else {\n subHtml = $LG(subHtml).first().html();\n }\n }\n } else {\n subHtml = '';\n }\n }\n\n if (this.settings.appendSubHtmlTo !== '.lg-item') {\n if (subHtmlUrl) {\n this.outer.find('.lg-sub-html').load(subHtmlUrl);\n } else {\n this.outer.find('.lg-sub-html').html(subHtml as string);\n }\n } else {\n const currentSlide = $LG(this.getSlideItemId(index));\n if (subHtmlUrl) {\n currentSlide.load(subHtmlUrl);\n } else {\n currentSlide.append(\n `<div class=\"lg-sub-html\">${subHtml}</div>`,\n );\n }\n }\n\n // Add lg-empty-html class if title doesn't exist\n if (typeof subHtml !== 'undefined' && subHtml !== null) {\n if (subHtml === '') {\n this.outer\n .find(this.settings.appendSubHtmlTo)\n .addClass('lg-empty-html');\n } else {\n this.outer\n .find(this.settings.appendSubHtmlTo)\n .removeClass('lg-empty-html');\n }\n }\n\n this.LGel.trigger<AfterAppendSubHtmlDetail>(\n lGEvents.afterAppendSubHtml,\n {\n index,\n },\n );\n }\n\n /**\n * @desc Preload slides\n * @param {Number} index - index of the slide\n * @todo preload not working for the first slide, Also, should work for the first and last slide as well\n */\n preload(index: number): void {\n for (let i = 1; i <= this.settings.preload; i++) {\n if (i >= this.galleryItems.length - index) {\n break;\n }\n\n this.loadContent(index + i, false);\n }\n\n for (let j = 1; j <= this.settings.preload; j++) {\n if (index - j < 0) {\n break;\n }\n\n this.loadContent(index - j, false);\n }\n }\n\n getDummyImgStyles(imageSize?: ImageSize): string {\n if (!imageSize) return '';\n return `width:${imageSize.width}px;\n margin-left: -${imageSize.width / 2}px;\n margin-top: -${imageSize.height / 2}px;\n height:${imageSize.height}px`;\n }\n getVideoContStyle(imageSize?: ImageSize): string {\n if (!imageSize) return '';\n return `width:${imageSize.width}px;\n height:${imageSize.height}px`;\n }\n\n getDummyImageContent(\n $currentSlide: lgQuery,\n index: number,\n alt: string,\n ): string {\n let $currentItem;\n if (!this.settings.dynamic) {\n $currentItem = $LG(this.items).eq(index);\n }\n if ($currentItem) {\n let _dummyImgSrc;\n if (!this.settings.exThumbImage) {\n _dummyImgSrc = $currentItem.find('img').first().attr('src');\n } else {\n _dummyImgSrc = $currentItem.attr(this.settings.exThumbImage);\n }\n if (!_dummyImgSrc) return '';\n const imgStyle = this.getDummyImgStyles(this.currentImageSize);\n const dummyImgContent = `<img ${alt} style=\"${imgStyle}\" class=\"lg-dummy-img\" src=\"${_dummyImgSrc}\" />`;\n\n $currentSlide.addClass('lg-first-slide');\n this.outer.addClass('lg-first-slide-loading');\n\n return dummyImgContent;\n }\n return '';\n }\n\n setImgMarkup(src: string, $currentSlide: lgQuery, index: number): void {\n const currentGalleryItem = this.galleryItems[index];\n const { alt, srcset, sizes, sources } = currentGalleryItem;\n\n // Use the thumbnail as dummy image which will be resized to actual image size and\n // displayed on top of actual image\n let imgContent = '';\n const altAttr = alt ? 'alt=\"' + alt + '\"' : '';\n\n if (this.isFirstSlideWithZoomAnimation()) {\n imgContent = this.getDummyImageContent(\n $currentSlide,\n index,\n altAttr,\n );\n } else {\n imgContent = utils.getImgMarkup(\n index,\n src,\n altAttr,\n srcset,\n sizes,\n sources,\n );\n }\n const imgMarkup = `<picture class=\"lg-img-wrap\"> ${imgContent}</picture>`;\n $currentSlide.prepend(imgMarkup);\n }\n\n onSlideObjectLoad(\n $slide: lgQuery,\n isHTML5VideoWithoutPoster: boolean,\n onLoad: () => void,\n onError: () => void,\n ): void {\n const mediaObject = $slide.find('.lg-object').first();\n if (\n utils.isImageLoaded(mediaObject.get() as HTMLImageElement) ||\n isHTML5VideoWithoutPoster\n ) {\n onLoad();\n } else {\n mediaObject.on('load.lg error.lg', () => {\n onLoad && onLoad();\n });\n mediaObject.on('error.lg', () => {\n onError && onError();\n });\n }\n }\n\n /**\n *\n * @param $el Current slide item\n * @param index\n * @param delay Delay is 0 except first time\n * @param speed Speed is same as delay, except it is 0 if gallery is opened via hash plugin\n * @param isFirstSlide\n */\n onLgObjectLoad(\n currentSlide: lgQuery,\n index: number,\n delay: number,\n speed: number,\n isFirstSlide: boolean,\n isHTML5VideoWithoutPoster: boolean,\n ): void {\n this.onSlideObjectLoad(\n currentSlide,\n isHTML5VideoWithoutPoster,\n () => {\n this.triggerSlideItemLoad(\n currentSlide,\n index,\n delay,\n speed,\n isFirstSlide,\n );\n },\n () => {\n currentSlide.addClass('lg-complete lg-complete_');\n currentSlide.html(\n '<span class=\"lg-error-msg\">Oops... Failed to load content...</span>',\n );\n },\n );\n }\n\n triggerSlideItemLoad(\n $currentSlide: lgQuery,\n index: number,\n delay: number,\n speed: number,\n isFirstSlide: boolean,\n ): void {\n const currentGalleryItem = this.galleryItems[index];\n\n // Adding delay for video slides without poster for better performance and user experience\n // Videos should start playing once once the gallery is completely loaded\n const _speed =\n isFirstSlide &&\n this.getSlideType(currentGalleryItem) === 'video' &&\n !currentGalleryItem.poster\n ? speed\n : 0;\n setTimeout(() => {\n $currentSlide.addClass('lg-complete lg-complete_');\n this.LGel.trigger<SlideItemLoadDetail>(lGEvents.slideItemLoad, {\n index,\n delay: delay || 0,\n isFirstSlide,\n });\n }, _speed);\n }\n\n isFirstSlideWithZoomAnimation(): boolean {\n return !!(\n !this.lGalleryOn &&\n this.zoomFromOrigin &&\n this.currentImageSize\n );\n }\n\n // Add video slideInfo\n addSlideVideoInfo(items: GalleryItem[]): void {\n items.forEach((element, index) => {\n element.__slideVideoInfo = utils.isVideo(\n element.src as string,\n !!element.video,\n index,\n );\n if (\n element.__slideVideoInfo &&\n this.settings.loadYouTubePoster &&\n !element.poster &&\n element.__slideVideoInfo.youtube\n ) {\n element.poster = `//img.youtube.com/vi/${element.__slideVideoInfo.youtube[1]}/maxresdefault.jpg`;\n }\n });\n }\n\n /**\n * Load slide content into slide.\n * This is used to load content into slides that is not visible too\n * @param {Number} index - index of the slide.\n * @param {Boolean} rec - if true call loadcontent() function again.\n */\n loadContent(index: number, rec: boolean): void {\n const currentGalleryItem = this.galleryItems[index];\n const $currentSlide = $LG(this.getSlideItemId(index));\n\n const { poster, srcset, sizes, sources } = currentGalleryItem;\n let { src } = currentGalleryItem;\n\n const video = currentGalleryItem.video;\n\n const _html5Video =\n video && typeof video === 'string' ? JSON.parse(video) : video;\n\n if (currentGalleryItem.responsive) {\n const srcDyItms = currentGalleryItem.responsive.split(',');\n src = utils.getResponsiveSrc(srcDyItms) || src;\n }\n\n const videoInfo = currentGalleryItem.__slideVideoInfo;\n let lgVideoStyle = '';\n\n const iframe = !!currentGalleryItem.iframe;\n\n const isFirstSlide = !this.lGalleryOn;\n\n // delay for adding complete class. it is 0 except first time.\n let delay = 0;\n if (isFirstSlide) {\n if (this.zoomFromOrigin && this.currentImageSize) {\n delay = this.settings.startAnimationDuration + 10;\n } else {\n delay = this.settings.backdropDuration + 10;\n }\n }\n\n if (!$currentSlide.hasClass('lg-loaded')) {\n if (videoInfo) {\n const { top, bottom } = this.mediaContainerPosition;\n const videoSize = utils.getSize(\n this.items[index],\n this.outer,\n top + bottom,\n videoInfo && this.settings.videoMaxSize,\n );\n lgVideoStyle = this.getVideoContStyle(videoSize);\n }\n if (iframe) {\n const markup = utils.getIframeMarkup(\n this.settings.iframeWidth,\n this.settings.iframeHeight,\n this.settings.iframeMaxWidth,\n this.settings.iframeMaxHeight,\n src,\n currentGalleryItem.iframeTitle,\n );\n $currentSlide.prepend(markup);\n } else if (poster) {\n let dummyImg = '';\n const hasStartAnimation =\n isFirstSlide &&\n this.zoomFromOrigin &&\n this.currentImageSize;\n if (hasStartAnimation) {\n dummyImg = this.getDummyImageContent(\n $currentSlide,\n index,\n '',\n );\n }\n\n const markup = utils.getVideoPosterMarkup(\n poster,\n dummyImg || '',\n lgVideoStyle,\n this.settings.strings['playVideo'],\n videoInfo,\n );\n $currentSlide.prepend(markup);\n } else if (videoInfo) {\n const markup = `<div class=\"lg-video-cont \" style=\"${lgVideoStyle}\"></div>`;\n $currentSlide.prepend(markup);\n } else {\n this.setImgMarkup(src as string, $currentSlide, index);\n if (srcset || sources) {\n const $img = $currentSlide.find('.lg-object');\n this.initPictureFill($img);\n }\n }\n if (poster || videoInfo) {\n this.LGel.trigger(lGEvents.hasVideo, {\n index,\n src: src,\n html5Video: _html5Video,\n hasPoster: !!poster,\n });\n }\n\n this.LGel.trigger<AfterAppendSlideEventDetail>(\n lGEvents.afterAppendSlide,\n { index },\n );\n\n if (\n this.lGalleryOn &&\n this.settings.appendSubHtmlTo === '.lg-item'\n ) {\n this.addHtml(index);\n }\n }\n\n // For first time add some delay for displaying the start animation.\n let _speed = 0;\n\n // Do not change the delay value because it is required for zoom plugin.\n // If gallery opened from direct url (hash) speed value should be 0\n if (delay && !$LG(document.body).hasClass('lg-from-hash')) {\n _speed = delay;\n }\n\n // Only for first slide and zoomFromOrigin is enabled\n if (this.isFirstSlideWithZoomAnimation()) {\n setTimeout(() => {\n $currentSlide\n .removeClass('lg-start-end-progress lg-start-progress')\n .removeAttr('style');\n }, this.settings.startAnimationDuration + 100);\n if (!$currentSlide.hasClass('lg-loaded')) {\n setTimeout(() => {\n if (this.getSlideType(currentGalleryItem) === 'image') {\n const { alt } = currentGalleryItem;\n const altAttr = alt ? 'alt=\"' + alt + '\"' : '';\n\n $currentSlide\n .find('.lg-img-wrap')\n .append(\n utils.getImgMarkup(\n index,\n src as string,\n altAttr,\n srcset,\n sizes,\n currentGalleryItem.sources,\n ),\n );\n if (srcset || sources) {\n const $img = $currentSlide.find('.lg-object');\n this.initPictureFill($img);\n }\n }\n if (\n this.getSlideType(currentGalleryItem) === 'image' ||\n (this.getSlideType(currentGalleryItem) === 'video' &&\n poster)\n ) {\n this.onLgObjectLoad(\n $currentSlide,\n index,\n delay,\n _speed,\n true,\n false,\n );\n\n // load remaining slides once the slide is completely loaded\n this.onSlideObjectLoad(\n $currentSlide,\n !!(videoInfo && videoInfo.html5 && !poster),\n () => {\n this.loadContentOnFirstSlideLoad(\n index,\n $currentSlide,\n _speed,\n );\n },\n () => {\n this.loadContentOnFirstSlideLoad(\n index,\n $currentSlide,\n _speed,\n );\n },\n );\n }\n }, this.settings.startAnimationDuration + 100);\n }\n }\n\n // SLide content has been added to dom\n $currentSlide.addClass('lg-loaded');\n\n if (\n !this.isFirstSlideWithZoomAnimation() ||\n (this.getSlideType(currentGalleryItem) === 'video' && !poster)\n ) {\n this.onLgObjectLoad(\n $currentSlide,\n index,\n delay,\n _speed,\n isFirstSlide,\n !!(videoInfo && videoInfo.html5 && !poster),\n );\n }\n\n // When gallery is opened once content is loaded (second time) need to add lg-complete class for css styling\n if (\n (!this.zoomFromOrigin || !this.currentImageSize) &&\n $currentSlide.hasClass('lg-complete_') &&\n !this.lGalleryOn\n ) {\n setTimeout(() => {\n $currentSlide.addClass('lg-complete');\n }, this.settings.backdropDuration);\n }\n\n // Content loaded\n // Need to set lGalleryOn before calling preload function\n this.lGalleryOn = true;\n\n if (rec === true) {\n if (!$currentSlide.hasClass('lg-complete_')) {\n $currentSlide\n .find('.lg-object')\n .first()\n .on('load.lg error.lg', () => {\n this.preload(index);\n });\n } else {\n this.preload(index);\n }\n }\n }\n\n /**\n * @desc Remove dummy image content and load next slides\n * Called only for the first time if zoomFromOrigin animation is enabled\n * @param index\n * @param $currentSlide\n * @param speed\n */\n loadContentOnFirstSlideLoad(\n index: number,\n $currentSlide: lgQuery,\n speed: number,\n ): void {\n setTimeout(() => {\n $currentSlide.find('.lg-dummy-img').remove();\n $currentSlide.removeClass('lg-first-slide');\n this.outer.removeClass('lg-first-slide-loading');\n this.isDummyImageRemoved = true;\n this.preload(index);\n }, speed + 300);\n }\n\n getItemsToBeInsertedToDom(\n index: number,\n prevIndex: number,\n numberOfItems = 0,\n ): string[] {\n const itemsToBeInsertedToDom: string[] = [];\n // Minimum 2 items should be there\n let possibleNumberOfItems = Math.max(numberOfItems, 3);\n possibleNumberOfItems = Math.min(\n possibleNumberOfItems,\n this.galleryItems.length,\n );\n const prevIndexItem = `lg-item-${this.lgId}-${prevIndex}`;\n if (this.galleryItems.length <= 3) {\n this.galleryItems.forEach((_element, index) => {\n itemsToBeInsertedToDom.push(`lg-item-${this.lgId}-${index}`);\n });\n return itemsToBeInsertedToDom;\n }\n\n if (index < (this.galleryItems.length - 1) / 2) {\n for (\n let idx = index;\n idx > index - possibleNumberOfItems / 2 && idx >= 0;\n idx--\n ) {\n itemsToBeInsertedToDom.push(`lg-item-${this.lgId}-${idx}`);\n }\n const numberOfExistingItems = itemsToBeInsertedToDom.length;\n for (\n let idx = 0;\n idx < possibleNumberOfItems - numberOfExistingItems;\n idx++\n ) {\n itemsToBeInsertedToDom.push(\n `lg-item-${this.lgId}-${index + idx + 1}`,\n );\n }\n } else {\n for (\n let idx = index;\n idx <= this.galleryItems.length - 1 &&\n idx < index + possibleNumberOfItems / 2;\n idx++\n ) {\n itemsToBeInsertedToDom.push(`lg-item-${this.lgId}-${idx}`);\n }\n const numberOfExistingItems = itemsToBeInsertedToDom.length;\n for (\n let idx = 0;\n idx < possibleNumberOfItems - numberOfExistingItems;\n idx++\n ) {\n itemsToBeInsertedToDom.push(\n `lg-item-${this.lgId}-${index - idx - 1}`,\n );\n }\n }\n if (this.settings.loop) {\n if (index === this.galleryItems.length - 1) {\n itemsToBeInsertedToDom.push(`lg-item-${this.lgId}-${0}`);\n } else if (index === 0) {\n itemsToBeInsertedToDom.push(\n `lg-item-${this.lgId}-${this.galleryItems.length - 1}`,\n );\n }\n }\n if (itemsToBeInsertedToDom.indexOf(prevIndexItem) === -1) {\n itemsToBeInsertedToDom.push(`lg-item-${this.lgId}-${prevIndex}`);\n }\n\n return itemsToBeInsertedToDom;\n }\n\n organizeSlideItems(index: number, prevIndex: number): string[] {\n const itemsToBeInsertedToDom = this.getItemsToBeInsertedToDom(\n index,\n prevIndex,\n this.settings.numberOfSlideItemsInDom,\n );\n\n itemsToBeInsertedToDom.forEach((item) => {\n if (this.currentItemsInDom.indexOf(item) === -1) {\n this.$inner.append(`<div id=\"${item}\" class=\"lg-item\"></div>`);\n }\n });\n\n this.currentItemsInDom.forEach((item) => {\n if (itemsToBeInsertedToDom.indexOf(item) === -1) {\n $LG(`#${item}`).remove();\n }\n });\n return itemsToBeInsertedToDom;\n }\n\n /**\n * Get previous index of the slide\n */\n getPreviousSlideIndex(): number {\n let prevIndex = 0;\n try {\n const currentItemId = this.outer\n .find('.lg-current')\n .first()\n .attr('id');\n prevIndex = parseInt(currentItemId.split('-')[3]) || 0;\n } catch (error) {\n prevIndex = 0;\n }\n return prevIndex;\n }\n\n setDownloadValue(index: number): void {\n if (this.settings.download) {\n const currentGalleryItem = this.galleryItems[index];\n const hideDownloadBtn =\n currentGalleryItem.downloadUrl === false ||\n currentGalleryItem.downloadUrl === 'false';\n if (hideDownloadBtn) {\n this.outer.addClass('lg-hide-download');\n } else {\n const $download = this.getElementById('lg-download');\n this.outer.removeClass('lg-hide-download');\n $download.attr(\n 'href',\n currentGalleryItem.downloadUrl ||\n (currentGalleryItem.src as string),\n );\n if (currentGalleryItem.download) {\n $download.attr('download', currentGalleryItem.download);\n }\n }\n }\n }\n\n makeSlideAnimation(\n direction: 'next' | 'prev',\n currentSlideItem: lgQuery,\n previousSlideItem: lgQuery,\n ): void {\n if (this.lGalleryOn) {\n previousSlideItem.addClass('lg-slide-progress');\n }\n setTimeout(\n () => {\n // remove all transitions\n this.outer.addClass('lg-no-trans');\n\n this.outer\n .find('.lg-item')\n .removeClass('lg-prev-slide lg-next-slide');\n\n if (direction === 'prev') {\n //prevslide\n currentSlideItem.addClass('lg-prev-slide');\n previousSlideItem.addClass('lg-next-slide');\n } else {\n // next slide\n currentSlideItem.addClass('lg-next-slide');\n previousSlideItem.addClass('lg-prev-slide');\n }\n\n // give 50 ms for browser to add/remove class\n setTimeout(() => {\n this.outer.find('.lg-item').removeClass('lg-current');\n\n currentSlideItem.addClass('lg-current');\n\n // reset all transitions\n this.outer.removeClass('lg-no-trans');\n }, 50);\n },\n this.lGalleryOn ? this.settings.slideDelay : 0,\n );\n }\n\n /**\n * Goto a specific slide.\n * @param {Number} index - index of the slide\n * @param {Boolean} fromTouch - true if slide function called via touch event or mouse drag\n * @param {Boolean} fromThumb - true if slide function called via thumbnail click\n * @param {String} direction - Direction of the slide(next/prev)\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery();\n * // to go to 3rd slide\n * plugin.slide(2);\n *\n */\n slide(\n index: number,\n fromTouch?: boolean,\n fromThumb?: boolean,\n direction?: SlideDirection | false,\n ): void {\n const prevIndex = this.getPreviousSlideIndex();\n this.currentItemsInDom = this.organizeSlideItems(index, prevIndex);\n\n // Prevent multiple call, Required for hsh plugin\n if (this.lGalleryOn && prevIndex === index) {\n return;\n }\n\n const numberOfGalleryItems = this.galleryItems.length;\n\n if (!this.lgBusy) {\n if (this.settings.counter) {\n this.updateCurrentCounter(index);\n }\n\n const currentSlideItem = this.getSlideItem(index);\n const previousSlideItem = this.getSlideItem(prevIndex);\n\n const currentGalleryItem = this.galleryItems[index];\n const videoInfo = currentGalleryItem.__slideVideoInfo;\n\n this.outer.attr(\n 'data-lg-slide-type',\n this.getSlideType(currentGalleryItem),\n );\n this.setDownloadValue(index);\n\n if (videoInfo) {\n const { top, bottom } = this.mediaContainerPosition;\n const videoSize = utils.getSize(\n this.items[index],\n this.outer,\n top + bottom,\n videoInfo && this.settings.videoMaxSize,\n );\n this.resizeVideoSlide(index, videoSize);\n }\n\n this.LGel.trigger<BeforeSlideDetail>(lGEvents.beforeSlide, {\n prevIndex,\n index,\n fromTouch: !!fromTouch,\n fromThumb: !!fromThumb,\n });\n\n this.lgBusy = true;\n\n clearTimeout(this.hideBarTimeout);\n\n this.arrowDisable(index);\n\n if (!direction) {\n if (index < prevIndex) {\n direction = 'prev';\n } else if (index > prevIndex) {\n direction = 'next';\n }\n }\n\n if (!fromTouch) {\n this.makeSlideAnimation(\n direction as SlideDirection,\n currentSlideItem,\n previousSlideItem,\n );\n } else {\n this.outer\n .find('.lg-item')\n .removeClass('lg-prev-slide lg-current lg-next-slide');\n let touchPrev;\n let touchNext;\n if (numberOfGalleryItems > 2) {\n touchPrev = index - 1;\n touchNext = index + 1;\n\n if (index === 0 && prevIndex === numberOfGalleryItems - 1) {\n // next slide\n touchNext = 0;\n touchPrev = numberOfGalleryItems - 1;\n } else if (\n index === numberOfGalleryItems - 1 &&\n prevIndex === 0\n ) {\n // prev slide\n touchNext = 0;\n touchPrev = numberOfGalleryItems - 1;\n }\n } else {\n touchPrev = 0;\n touchNext = 1;\n }\n\n if (direction === 'prev') {\n this.getSlideItem(touchNext).addClass('lg-next-slide');\n } else {\n this.getSlideItem(touchPrev).addClass('lg-prev-slide');\n }\n\n currentSlideItem.addClass('lg-current');\n }\n\n // Do not put load content in set timeout as it needs to load immediately when the gallery is opened\n if (!this.lGalleryOn) {\n this.loadContent(index, true);\n } else {\n setTimeout(() => {\n this.loadContent(index, true);\n // Add title if this.settings.appendSubHtmlTo === lg-sub-html\n if (this.settings.appendSubHtmlTo !== '.lg-item') {\n this.addHtml(index);\n }\n }, this.settings.speed + 50 + (fromTouch ? 0 : this.settings.slideDelay));\n }\n\n setTimeout(() => {\n this.lgBusy = false;\n previousSlideItem.removeClass('lg-slide-progress');\n this.LGel.trigger(lGEvents.afterSlide, {\n prevIndex: prevIndex,\n index,\n fromTouch,\n fromThumb,\n });\n }, (this.lGalleryOn ? this.settings.speed + 100 : 100) + (fromTouch ? 0 : this.settings.slideDelay));\n }\n\n this.index = index;\n }\n\n updateCurrentCounter(index: number): void {\n this.getElementById('lg-counter-current').html(index + 1 + '');\n }\n\n updateCounterTotal(): void {\n this.getElementById('lg-counter-all').html(\n this.galleryItems.length + '',\n );\n }\n\n getSlideType(item: GalleryItem): 'video' | 'iframe' | 'image' {\n if (item.__slideVideoInfo) {\n return 'video';\n } else if (item.iframe) {\n return 'iframe';\n } else {\n return 'image';\n }\n }\n\n touchMove(startCoords: Coords, endCoords: Coords, e?: TouchEvent): void {\n const distanceX = endCoords.pageX - startCoords.pageX;\n const distanceY = endCoords.pageY - startCoords.pageY;\n let allowSwipe = false;\n\n if (this.swipeDirection) {\n allowSwipe = true;\n } else {\n if (Math.abs(distanceX) > 15) {\n this.swipeDirection = 'horizontal';\n allowSwipe = true;\n } else if (Math.abs(distanceY) > 15) {\n this.swipeDirection = 'vertical';\n allowSwipe = true;\n }\n }\n\n if (!allowSwipe) {\n return;\n }\n\n const $currentSlide = this.getSlideItem(this.index);\n\n if (this.swipeDirection === 'horizontal') {\n e?.preventDefault();\n // reset opacity and transition duration\n this.outer.addClass('lg-dragging');\n\n // move current slide\n this.setTranslate($currentSlide, distanceX, 0);\n\n // move next and prev slide with current slide\n const width = $currentSlide.get().offsetWidth;\n const slideWidthAmount = (width * 15) / 100;\n const gutter = slideWidthAmount - Math.abs((distanceX * 10) / 100);\n this.setTranslate(\n this.outer.find('.lg-prev-slide').first(),\n -width + distanceX - gutter,\n 0,\n );\n\n this.setTranslate(\n this.outer.find('.lg-next-slide').first(),\n width + distanceX + gutter,\n 0,\n );\n } else if (this.swipeDirection === 'vertical') {\n if (this.settings.swipeToClose) {\n e?.preventDefault();\n this.$container.addClass('lg-dragging-vertical');\n\n const opacity = 1 - Math.abs(distanceY) / window.innerHeight;\n this.$backdrop.css('opacity', opacity);\n\n const scale = 1 - Math.abs(distanceY) / (window.innerWidth * 2);\n this.setTranslate($currentSlide, 0, distanceY, scale, scale);\n if (Math.abs(distanceY) > 100) {\n this.outer\n .addClass('lg-hide-items')\n .removeClass('lg-components-open');\n }\n }\n }\n }\n\n touchEnd(endCoords: Coords, startCoords: Coords, event: TouchEvent): void {\n let distance;\n\n // keep slide animation for any mode while dragg/swipe\n if (this.settings.mode !== 'lg-slide') {\n this.outer.addClass('lg-slide');\n }\n\n // set transition duration\n setTimeout(() => {\n this.$container.removeClass('lg-dragging-vertical');\n this.outer\n .removeClass('lg-dragging lg-hide-items')\n .addClass('lg-components-open');\n\n let triggerClick = true;\n\n if (this.swipeDirection === 'horizontal') {\n distance = endCoords.pageX - startCoords.pageX;\n const distanceAbs = Math.abs(\n endCoords.pageX - startCoords.pageX,\n );\n if (\n distance < 0 &&\n distanceAbs > this.settings.swipeThreshold\n ) {\n this.goToNextSlide(true);\n triggerClick = false;\n } else if (\n distance > 0 &&\n distanceAbs > this.settings.swipeThreshold\n ) {\n this.goToPrevSlide(true);\n triggerClick = false;\n }\n } else if (this.swipeDirection === 'vertical') {\n distance = Math.abs(endCoords.pageY - startCoords.pageY);\n if (\n this.settings.closable &&\n this.settings.swipeToClose &&\n distance > 100\n ) {\n this.closeGallery();\n return;\n } else {\n this.$backdrop.css('opacity', 1);\n }\n }\n this.outer.find('.lg-item').removeAttr('style');\n\n if (\n triggerClick &&\n Math.abs(endCoords.pageX - startCoords.pageX) < 5\n ) {\n // Trigger click if distance is less than 5 pix\n const target = $LG(event.target);\n if (this.isPosterElement(target)) {\n this.LGel.trigger(lGEvents.posterClick);\n }\n }\n\n this.swipeDirection = undefined;\n });\n\n // remove slide class once drag/swipe is completed if mode is not slide\n setTimeout(() => {\n if (\n !this.outer.hasClass('lg-dragging') &&\n this.settings.mode !== 'lg-slide'\n ) {\n this.outer.removeClass('lg-slide');\n }\n }, this.settings.speed + 100);\n }\n\n enableSwipe(): void {\n let startCoords: Coords = {} as Coords;\n let endCoords: Coords = {} as Coords;\n let isMoved = false;\n let isSwiping = false;\n\n if (this.settings.enableSwipe) {\n this.$inner.on('touchstart.lg', (e) => {\n this.dragOrSwipeEnabled = true;\n const $item = this.getSlideItem(this.index);\n if (\n ($LG(e.target).hasClass('lg-item') ||\n $item.get().contains(e.target)) &&\n !this.outer.hasClass('lg-zoomed') &&\n !this.lgBusy &&\n e.touches.length === 1\n ) {\n isSwiping = true;\n this.touchAction = 'swipe';\n this.manageSwipeClass();\n startCoords = {\n pageX: e.touches[0].pageX,\n pageY: e.touches[0].pageY,\n };\n }\n });\n\n this.$inner.on('touchmove.lg', (e) => {\n if (\n isSwiping &&\n this.touchAction === 'swipe' &&\n e.touches.length === 1\n ) {\n endCoords = {\n pageX: e.touches[0].pageX,\n pageY: e.touches[0].pageY,\n };\n this.touchMove(startCoords, endCoords, e);\n isMoved = true;\n }\n });\n\n this.$inner.on('touchend.lg', (event: TouchEvent) => {\n if (this.touchAction === 'swipe') {\n if (isMoved) {\n isMoved = false;\n this.touchEnd(endCoords, startCoords, event);\n } else if (isSwiping) {\n const target = $LG(event.target);\n if (this.isPosterElement(target)) {\n this.LGel.trigger(lGEvents.posterClick);\n }\n }\n this.touchAction = undefined;\n isSwiping = false;\n }\n });\n }\n }\n\n enableDrag(): void {\n let startCoords: Coords = {} as Coords;\n let endCoords: Coords = {} as Coords;\n let isDraging = false;\n let isMoved = false;\n if (this.settings.enableDrag) {\n this.outer.on('mousedown.lg', (e) => {\n this.dragOrSwipeEnabled = true;\n const $item = this.getSlideItem(this.index);\n if (\n $LG(e.target).hasClass('lg-item') ||\n $item.get().contains(e.target)\n ) {\n if (!this.outer.hasClass('lg-zoomed') && !this.lgBusy) {\n e.preventDefault();\n if (!this.lgBusy) {\n this.manageSwipeClass();\n startCoords = {\n pageX: e.pageX,\n pageY: e.pageY,\n };\n isDraging = true;\n\n // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723\n this.outer.get().scrollLeft += 1;\n this.outer.get().scrollLeft -= 1;\n\n // *\n\n this.outer\n .removeClass('lg-grab')\n .addClass('lg-grabbing');\n\n this.LGel.trigger(lGEvents.dragStart);\n }\n }\n }\n });\n\n $LG(window).on(`mousemove.lg.global${this.lgId}`, (e) => {\n if (isDraging && this.lgOpened) {\n isMoved = true;\n endCoords = {\n pageX: e.pageX,\n pageY: e.pageY,\n };\n this.touchMove(startCoords, endCoords);\n this.LGel.trigger(lGEvents.dragMove);\n }\n });\n\n $LG(window).on(`mouseup.lg.global${this.lgId}`, (event) => {\n if (!this.lgOpened) {\n return;\n }\n const target = $LG(event.target);\n if (isMoved) {\n isMoved = false;\n this.touchEnd(endCoords, startCoords, event);\n this.LGel.trigger(lGEvents.dragEnd);\n } else if (this.isPosterElement(target)) {\n this.LGel.trigger(lGEvents.posterClick);\n }\n\n // Prevent execution on click\n if (isDraging) {\n isDraging = false;\n this.outer.removeClass('lg-grabbing').addClass('lg-grab');\n }\n });\n }\n }\n\n triggerPosterClick(): void {\n this.$inner.on('click.lg', (event) => {\n if (\n !this.dragOrSwipeEnabled &&\n this.isPosterElement($LG(event.target))\n ) {\n this.LGel.trigger(lGEvents.posterClick);\n }\n });\n }\n\n manageSwipeClass(): void {\n let _touchNext = this.index + 1;\n let _touchPrev = this.index - 1;\n if (this.settings.loop && this.galleryItems.length > 2) {\n if (this.index === 0) {\n _touchPrev = this.galleryItems.length - 1;\n } else if (this.index === this.galleryItems.length - 1) {\n _touchNext = 0;\n }\n }\n\n this.outer.find('.lg-item').removeClass('lg-next-slide lg-prev-slide');\n if (_touchPrev > -1) {\n this.getSlideItem(_touchPrev).addClass('lg-prev-slide');\n }\n\n this.getSlideItem(_touchNext).addClass('lg-next-slide');\n }\n\n /**\n * Go to next slide\n * @param {Boolean} fromTouch - true if slide function called via touch event\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery();\n * plugin.goToNextSlide();\n * @see <a href=\"/demos/methods/\">Demo</a>\n */\n goToNextSlide(fromTouch?: boolean): void {\n let _loop = this.settings.loop;\n if (fromTouch && this.galleryItems.length < 3) {\n _loop = false;\n }\n\n if (!this.lgBusy) {\n if (this.index + 1 < this.galleryItems.length) {\n this.index++;\n this.LGel.trigger(lGEvents.beforeNextSlide, {\n index: this.index,\n });\n this.slide(this.index, !!fromTouch, false, 'next');\n } else {\n if (_loop) {\n this.index = 0;\n this.LGel.trigger(lGEvents.beforeNextSlide, {\n index: this.index,\n });\n this.slide(this.index, !!fromTouch, false, 'next');\n } else if (this.settings.slideEndAnimation && !fromTouch) {\n this.outer.addClass('lg-right-end');\n setTimeout(() => {\n this.outer.removeClass('lg-right-end');\n }, 400);\n }\n }\n }\n }\n\n /**\n * Go to previous slides\n * @param {Boolean} fromTouch - true if slide function called via touch event\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery({});\n * plugin.goToPrevSlide();\n * @see <a href=\"/demos/methods/\">Demo</a>\n *\n */\n goToPrevSlide(fromTouch?: boolean): void {\n let _loop = this.settings.loop;\n if (fromTouch && this.galleryItems.length < 3) {\n _loop = false;\n }\n\n if (!this.lgBusy) {\n if (this.index > 0) {\n this.index--;\n this.LGel.trigger(lGEvents.beforePrevSlide, {\n index: this.index,\n fromTouch,\n });\n this.slide(this.index, !!fromTouch, false, 'prev');\n } else {\n if (_loop) {\n this.index = this.galleryItems.length - 1;\n this.LGel.trigger(lGEvents.beforePrevSlide, {\n index: this.index,\n fromTouch,\n });\n this.slide(this.index, !!fromTouch, false, 'prev');\n } else if (this.settings.slideEndAnimation && !fromTouch) {\n this.outer.addClass('lg-left-end');\n setTimeout(() => {\n this.outer.removeClass('lg-left-end');\n }, 400);\n }\n }\n }\n }\n\n keyPress(): void {\n $LG(window).on(`keydown.lg.global${this.lgId}`, (e) => {\n if (\n this.lgOpened &&\n this.settings.escKey === true &&\n e.keyCode === 27\n ) {\n e.preventDefault();\n if (\n this.settings.allowMediaOverlap &&\n this.outer.hasClass('lg-can-toggle') &&\n this.outer.hasClass('lg-components-open')\n ) {\n this.outer.removeClass('lg-components-open');\n } else {\n this.closeGallery();\n }\n }\n if (this.lgOpened && this.galleryItems.length > 1) {\n if (e.keyCode === 37) {\n e.preventDefault();\n this.goToPrevSlide();\n }\n\n if (e.keyCode === 39) {\n e.preventDefault();\n this.goToNextSlide();\n }\n }\n });\n }\n\n arrow(): void {\n this.getElementById('lg-prev').on('click.lg', () => {\n this.goToPrevSlide();\n });\n this.getElementById('lg-next').on('click.lg', () => {\n this.goToNextSlide();\n });\n }\n\n arrowDisable(index: number): void {\n // Disable arrows if settings.hideControlOnEnd is true\n if (!this.settings.loop && this.settings.hideControlOnEnd) {\n const $prev = this.getElementById('lg-prev');\n const $next = this.getElementById('lg-next');\n if (index + 1 === this.galleryItems.length) {\n $next.attr('disabled', 'disabled').addClass('disabled');\n } else {\n $next.removeAttr('disabled').removeClass('disabled');\n }\n\n if (index === 0) {\n $prev.attr('disabled', 'disabled').addClass('disabled');\n } else {\n $prev.removeAttr('disabled').removeClass('disabled');\n }\n }\n }\n\n setTranslate(\n $el: lgQuery,\n xValue: number,\n yValue: number,\n scaleX = 1,\n scaleY = 1,\n ): void {\n $el.css(\n 'transform',\n 'translate3d(' +\n xValue +\n 'px, ' +\n yValue +\n 'px, 0px) scale3d(' +\n scaleX +\n ', ' +\n scaleY +\n ', 1)',\n );\n }\n\n mousewheel(): void {\n let lastCall = 0;\n this.outer.on('wheel.lg', (e) => {\n if (!e.deltaY || this.galleryItems.length < 2) {\n return;\n }\n e.preventDefault();\n const now = new Date().getTime();\n if (now - lastCall < 1000) {\n return;\n }\n lastCall = now;\n if (e.deltaY > 0) {\n this.goToNextSlide();\n } else if (e.deltaY < 0) {\n this.goToPrevSlide();\n }\n });\n }\n\n isSlideElement(target: lgQuery): boolean {\n return (\n target.hasClass('lg-outer') ||\n target.hasClass('lg-item') ||\n target.hasClass('lg-img-wrap')\n );\n }\n\n isPosterElement(target: lgQuery): boolean {\n const playButton = this.getSlideItem(this.index)\n .find('.lg-video-play-button')\n .get();\n return (\n target.hasClass('lg-video-poster') ||\n target.hasClass('lg-video-play-button') ||\n (playButton && playButton.contains(target.get()))\n );\n }\n\n /**\n * Maximize minimize inline gallery.\n * @category lGPublicMethods\n */\n toggleMaximize(): void {\n this.getElementById('lg-maximize').on('click.lg', () => {\n this.$container.toggleClass('lg-inline');\n this.refreshOnResize();\n });\n }\n\n invalidateItems(): void {\n for (let index = 0; index < this.items.length; index++) {\n const element = this.items[index];\n const $element = $LG(element);\n $element.off(`click.lgcustom-item-${$element.attr('data-lg-id')}`);\n }\n }\n\n trapFocus(): void {\n this.$container.get().focus({\n preventScroll: true,\n });\n $LG(window).on(`keydown.lg.global${this.lgId}`, (e) => {\n if (!this.lgOpened) {\n return;\n }\n\n const isTabPressed = e.key === 'Tab' || e.keyCode === 9;\n if (!isTabPressed) {\n return;\n }\n const focusableEls = utils.getFocusableElements(\n this.$container.get(),\n );\n const firstFocusableEl = focusableEls[0];\n const lastFocusableEl = focusableEls[focusableEls.length - 1];\n\n if (e.shiftKey) {\n if (document.activeElement === firstFocusableEl) {\n (lastFocusableEl as HTMLElement).focus();\n e.preventDefault();\n }\n } else {\n if (document.activeElement === lastFocusableEl) {\n (firstFocusableEl as HTMLElement).focus();\n e.preventDefault();\n }\n }\n });\n }\n\n manageCloseGallery(): void {\n if (!this.settings.closable) return;\n let mousedown = false;\n this.getElementById('lg-close').on('click.lg', () => {\n this.closeGallery();\n });\n\n if (this.settings.closeOnTap) {\n // If you drag the slide and release outside gallery gets close on chrome\n // for preventing this check mousedown and mouseup happened on .lg-item or lg-outer\n this.outer.on('mousedown.lg', (e) => {\n const target = $LG(e.target);\n if (this.isSlideElement(target)) {\n mousedown = true;\n } else {\n mousedown = false;\n }\n });\n\n this.outer.on('mousemove.lg', () => {\n mousedown = false;\n });\n\n this.outer.on('mouseup.lg', (e) => {\n const target = $LG(e.target);\n if (this.isSlideElement(target) && mousedown) {\n if (!this.outer.hasClass('lg-dragging')) {\n this.closeGallery();\n }\n }\n });\n }\n }\n\n /**\n * Close lightGallery if it is opened.\n *\n * @description If closable is false in the settings, you need to pass true via closeGallery method to force close gallery\n * @return returns the estimated time to close gallery completely including the close animation duration\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery();\n * plugin.closeGallery();\n *\n */\n closeGallery(force?: boolean): number {\n if (!this.lgOpened || (!this.settings.closable && !force)) {\n return 0;\n }\n this.LGel.trigger(lGEvents.beforeClose);\n\n if (this.settings.resetScrollPosition && !this.settings.hideScrollbar) {\n $LG(window).scrollTop(this.prevScrollTop);\n }\n\n const currentItem = this.items[this.index];\n let transform: string | undefined;\n if (this.zoomFromOrigin && currentItem) {\n const { top, bottom } = this.mediaContainerPosition;\n const { __slideVideoInfo, poster } = this.galleryItems[this.index];\n const imageSize = utils.getSize(\n currentItem,\n this.outer,\n top + bottom,\n __slideVideoInfo && poster && this.settings.videoMaxSize,\n );\n transform = utils.getTransform(\n currentItem,\n this.outer,\n top,\n bottom,\n imageSize,\n );\n }\n if (this.zoomFromOrigin && transform) {\n this.outer.addClass('lg-closing lg-zoom-from-image');\n this.getSlideItem(this.index)\n .addClass('lg-start-end-progress')\n .css(\n 'transition-duration',\n this.settings.startAnimationDuration + 'ms',\n )\n .css('transform', transform);\n } else {\n this.outer.addClass('lg-hide-items');\n // lg-zoom-from-image is used for setting the opacity to 1 if zoomFromOrigin is true\n // If the closing item doesn't have the lg-size attribute, remove this class to avoid the closing css conflicts\n this.outer.removeClass('lg-zoom-from-image');\n }\n\n // Unbind all events added by lightGallery\n // @todo\n //this.$el.off('.lg.tm');\n\n this.destroyModules();\n\n this.lGalleryOn = false;\n this.isDummyImageRemoved = false;\n this.zoomFromOrigin = this.settings.zoomFromOrigin;\n\n clearTimeout(this.hideBarTimeout);\n this.hideBarTimeout = false;\n $LG('html').removeClass('lg-on');\n\n this.outer.removeClass('lg-visible lg-components-open');\n\n // Resetting opacity to 0 isd required as vertical swipe to close function adds inline opacity.\n this.$backdrop.removeClass('in').css('opacity', 0);\n\n const removeTimeout =\n this.zoomFromOrigin && transform\n ? Math.max(\n this.settings.startAnimationDuration,\n this.settings.backdropDuration,\n )\n : this.settings.backdropDuration;\n this.$container.removeClass('lg-show-in');\n\n // Once the closign animation is completed and gallery is invisible\n setTimeout(() => {\n if (this.zoomFromOrigin && transform) {\n this.outer.removeClass('lg-zoom-from-image');\n }\n this.$container.removeClass('lg-show');\n\n // Reset scrollbar\n this.resetScrollBar();\n\n // Need to remove inline opacity as it is used in the stylesheet as well\n this.$backdrop\n .removeAttr('style')\n .css(\n 'transition-duration',\n this.settings.backdropDuration + 'ms',\n );\n\n this.outer.removeClass(`lg-closing ${this.settings.startClass}`);\n\n this.getSlideItem(this.index).removeClass('lg-start-end-progress');\n this.$inner.empty();\n if (this.lgOpened) {\n this.LGel.trigger(lGEvents.afterClose, {\n instance: this,\n });\n }\n if (this.$container.get()) {\n this.$container.get().blur();\n }\n\n this.lgOpened = false;\n }, removeTimeout + 100);\n return removeTimeout + 100;\n }\n\n initModules(): void {\n this.plugins.forEach((module) => {\n try {\n module.init();\n } catch (err) {\n console.warn(\n `lightGallery:- make sure lightGallery module is properly initiated`,\n );\n }\n });\n }\n\n destroyModules(destroy?: true): void {\n this.plugins.forEach((module) => {\n try {\n if (destroy) {\n module.destroy();\n } else {\n module.closeGallery && module.closeGallery();\n }\n } catch (err) {\n console.warn(\n `lightGallery:- make sure lightGallery module is properly destroyed`,\n );\n }\n });\n }\n\n /**\n * Refresh lightGallery with new set of children.\n *\n * @description This is useful to update the gallery when the child elements are changed without calling destroy method.\n *\n * If you are using dynamic mode, you can pass the modified array of dynamicEl as the first parameter to refresh the dynamic gallery\n * @see <a href=\"/demos/dynamic-mode/\">Demo</a>\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery();\n * // Delete or add children, then call\n * plugin.refresh();\n *\n */\n refresh(galleryItems?: GalleryItem[]): void {\n if (!this.settings.dynamic) {\n this.invalidateItems();\n }\n if (galleryItems) {\n this.galleryItems = galleryItems;\n } else {\n this.galleryItems = this.getItems();\n }\n this.updateControls();\n this.openGalleryOnItemClick();\n this.LGel.trigger(lGEvents.updateSlides);\n }\n\n updateControls(): void {\n this.addSlideVideoInfo(this.galleryItems);\n this.updateCounterTotal();\n this.manageSingleSlideClassName();\n }\n\n private destroyGallery(): void {\n this.destroyModules(true);\n if (!this.settings.dynamic) {\n this.invalidateItems();\n }\n $LG(window).off(`.lg.global${this.lgId}`);\n this.LGel.off('.lg');\n this.$container.remove();\n }\n\n /**\n * Destroy lightGallery.\n * Destroy lightGallery and its plugin instances completely\n *\n * @description This method also calls CloseGallery function internally. Returns the time takes to completely close and destroy the instance.\n * In case if you want to re-initialize lightGallery right after destroying it, initialize it only once the destroy process is completed.\n * You can use refresh method most of the times.\n * @category lGPublicMethods\n * @example\n * const plugin = lightGallery();\n * plugin.destroy();\n *\n */\n destroy(): number {\n const closeTimeout = this.closeGallery(true);\n if (closeTimeout) {\n setTimeout(this.destroyGallery.bind(this), closeTimeout);\n } else {\n this.destroyGallery();\n }\n return closeTimeout;\n }\n}\n","import { LightGallerySettings } from './lg-settings';\nimport { LightGallery } from './lightgallery';\n\nfunction lightGallery(\n el: HTMLElement,\n options?: LightGallerySettings,\n): LightGallery {\n return new LightGallery(el, options);\n}\nexport default lightGallery;\n","\nimport { PropType } from 'vue';\nimport { Options, Vue } from 'vue-class-component';\nimport lightGallery from '../../../src';\nimport { LightGallery as LGPlugin } from '../../../src/lightgallery';\nimport { LightGallerySettings } from '../../../src/lg-settings';\nimport {\n AfterAppendSubHtmlDetail,\n AfterCloseDetail,\n RotateLeftDetail,\n RotateRightDetail,\n FlipHorizontalDetail,\n FlipVerticalDetail,\n AfterOpenDetail,\n AfterSlideDetail,\n BeforeCloseDetail,\n BeforeNextSlideDetail,\n BeforeOpenDetail,\n BeforePrevSlideDetail,\n BeforeSlideDetail,\n ContainerResizeDetail,\n DragEndDetail,\n DragMoveDetail,\n DragStartDetail,\n InitDetail,\n lGEvents,\n PosterClickDetail,\n SlideItemLoadDetail,\n} from '../../../src/lg-events';\n\n@Options({\n props: {\n settings: {\n type: Object as PropType<LightGallerySettings>,\n },\n onAfterAppendSlide: {\n type: Function,\n },\n onInit: {\n type: Function,\n },\n onHasVideo: {\n type: Function,\n },\n onContainerResize: {\n type: Function,\n },\n onAfterAppendSubHtml: {\n type: Function,\n },\n onBeforeOpen: {\n type: Function,\n },\n onAfterOpen: {\n type: Function,\n },\n onSlideItemLoad: {\n type: Function,\n },\n onBeforeSlide: {\n type: Function,\n },\n onAfterSlide: {\n type: Function,\n },\n onPosterClick: {\n type: Function,\n },\n onDragStart: {\n type: Function,\n },\n onDragMove: {\n type: Function,\n },\n onDragEnd: {\n type: Function,\n },\n onBeforeNextSlide: {\n type: Function,\n },\n onBeforePrevSlide: {\n type: Function,\n },\n onBeforeClose: {\n type: Function,\n },\n onAfterClose: {\n type: Function,\n },\n onRotateLeft: {\n type: Function,\n },\n onRotateRight: {\n type: Function,\n },\n onFlipHorizontal: {\n type: Function,\n },\n onFlipVertical: {\n type: Function,\n },\n },\n})\nexport default class Lightgallery extends Vue {\n $refs!: {\n container: HTMLElement;\n };\n\n settings!: LightGallerySettings;\n\n onAfterAppendSlide!: (detail: AfterSlideDetail) => void;\n onInit!: (detail: InitDetail) => void;\n onHasVideo!: (detail: InitDetail) => void;\n onContainerResize!: (detail: ContainerResizeDetail) => void;\n onAfterAppendSubHtml!: (detail: AfterAppendSubHtmlDetail) => void;\n onBeforeOpen!: (detail: BeforeOpenDetail) => void;\n onAfterOpen!: (detail: AfterOpenDetail) => void;\n onSlideItemLoad!: (detail: SlideItemLoadDetail) => void;\n onBeforeSlide!: (detail: BeforeSlideDetail) => void;\n onAfterSlide!: (detail: AfterSlideDetail) => void;\n onPosterClick!: (detail: PosterClickDetail) => void;\n onDragStart!: (detail: DragStartDetail) => void;\n onDragMove!: (detail: DragMoveDetail) => void;\n onDragEnd!: (detail: DragEndDetail) => void;\n onBeforeNextSlide!: (detail: BeforeNextSlideDetail) => void;\n onBeforePrevSlide!: (detail: BeforePrevSlideDetail) => void;\n onBeforeClose!: (detail: BeforeCloseDetail) => void;\n onAfterClose!: (detail: AfterCloseDetail) => void;\n onRotateLeft?: (detail: RotateLeftDetail) => void;\n onRotateRight?: (detail: RotateRightDetail) => void;\n onFlipHorizontal?: (detail: FlipHorizontalDetail) => void;\n onFlipVertical?: (detail: FlipVerticalDetail) => void;\n\n LG!: LGPlugin;\n\n mounted(): void {\n this.registerEvents.call(this);\n this.LG = lightGallery(this.$refs.container, { ...this.settings });\n }\n\n unmounted(): void {\n this.LG.destroy();\n }\n\n /* eslint-disable */\n private getMethodName(word: string) {\n return `on${word.charAt(0).toUpperCase() + word.slice(1)}`;\n }\n /* eslint-enable */\n\n private registerEvents(): void {\n Object.keys(lGEvents).forEach((key: string) => {\n // https://github.com/microsoft/TypeScript/issues/28357\n (this.$refs.container as any).addEventListener(\n lGEvents[key].split('.')[0],\n (event: CustomEvent) => {\n if ((this as any)[this.getMethodName(key)]) {\n (this as any)[this.getMethodName.call(this, key)](\n event.detail,\n );\n }\n },\n );\n });\n }\n}\n","export { default } from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-1!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./LightGallery.vue?vue&type=script&lang=ts\"; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-1!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./LightGallery.vue?vue&type=script&lang=ts\"","import { render } from \"./LightGallery.vue?vue&type=template&id=47173610\"\nimport script from \"./LightGallery.vue?vue&type=script&lang=ts\"\nexport * from \"./LightGallery.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","import './setPublicPath'\nimport mod from '~entry'\nexport default mod\nexport * from '~entry'\n","'use strict';\nvar $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n"],"sourceRoot":""}
\No newline at end of file