/******/ (() => { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ "./node_modules/@nextcloud/browser-storage/dist/index.js": /*!***************************************************************!*\ !*** ./node_modules/@nextcloud/browser-storage/dist/index.js ***! \***************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports.clearAll = clearAll; exports.clearNonPersistent = clearNonPersistent; exports.getBuilder = getBuilder; var _storagebuilder = _interopRequireDefault(__webpack_require__(/*! ./storagebuilder */ "./node_modules/@nextcloud/browser-storage/dist/storagebuilder.js")); var _scopedstorage = _interopRequireDefault(__webpack_require__(/*! ./scopedstorage */ "./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Get the storage builder for an app * @param appId App ID to scope storage */ function getBuilder(appId) { return new _storagebuilder.default(appId); } /** * Clear values from storage * @param storage The storage to clear * @param pred Callback to check if value should be cleared */ function clearStorage(storage, pred) { Object.keys(storage).filter(k => pred ? pred(k) : true).map(storage.removeItem.bind(storage)); } /** * Clear all values from all storages */ function clearAll() { const storages = [window.sessionStorage, window.localStorage]; storages.map(s => clearStorage(s)); } /** * Clear ony non persistent values */ function clearNonPersistent() { const storages = [window.sessionStorage, window.localStorage]; storages.map(s => clearStorage(s, k => !k.startsWith(_scopedstorage.default.GLOBAL_SCOPE_PERSISTENT))); } //# sourceMappingURL=index.js.map /***/ }), /***/ "./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js": /*!***********************************************************************!*\ !*** ./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js ***! \***********************************************************************/ /***/ ((__unused_webpack_module, exports) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } class ScopedStorage { constructor(scope, wrapped, persistent) { _defineProperty(this, "scope", void 0); _defineProperty(this, "wrapped", void 0); this.scope = "".concat(persistent ? ScopedStorage.GLOBAL_SCOPE_PERSISTENT : ScopedStorage.GLOBAL_SCOPE_VOLATILE, "_").concat(btoa(scope), "_"); this.wrapped = wrapped; } scopeKey(key) { return "".concat(this.scope).concat(key); } setItem(key, value) { this.wrapped.setItem(this.scopeKey(key), value); } getItem(key) { return this.wrapped.getItem(this.scopeKey(key)); } removeItem(key) { this.wrapped.removeItem(this.scopeKey(key)); } clear() { Object.keys(this.wrapped).filter(key => key.startsWith(this.scope)).map(this.wrapped.removeItem.bind(this.wrapped)); } } exports["default"] = ScopedStorage; _defineProperty(ScopedStorage, "GLOBAL_SCOPE_VOLATILE", 'nextcloud_vol'); _defineProperty(ScopedStorage, "GLOBAL_SCOPE_PERSISTENT", 'nextcloud_per'); //# sourceMappingURL=scopedstorage.js.map /***/ }), /***/ "./node_modules/@nextcloud/browser-storage/dist/storagebuilder.js": /*!************************************************************************!*\ !*** ./node_modules/@nextcloud/browser-storage/dist/storagebuilder.js ***! \************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _scopedstorage = _interopRequireDefault(__webpack_require__(/*! ./scopedstorage */ "./node_modules/@nextcloud/browser-storage/dist/scopedstorage.js")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } class StorageBuilder { constructor(appId) { _defineProperty(this, "appId", void 0); _defineProperty(this, "persisted", false); _defineProperty(this, "clearedOnLogout", false); this.appId = appId; } persist() { let persist = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; this.persisted = persist; return this; } clearOnLogout() { let clear = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; this.clearedOnLogout = clear; return this; } build() { return new _scopedstorage.default(this.appId, this.persisted ? window.localStorage : window.sessionStorage, !this.clearedOnLogout); } } exports["default"] = StorageBuilder; //# sourceMappingURL=storagebuilder.js.map /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js": /*!*********************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js ***! \*********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { const debug = __webpack_require__(/*! ../internal/debug */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js") const { MAX_LENGTH, MAX_SAFE_INTEGER } = __webpack_require__(/*! ../internal/constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js") const { safeRe: re, t } = __webpack_require__(/*! ../internal/re */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js") const parseOptions = __webpack_require__(/*! ../internal/parse-options */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/parse-options.js") const { compareIdentifiers } = __webpack_require__(/*! ../internal/identifiers */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js") class SemVer { constructor (version, options) { options = parseOptions(options) if (version instanceof SemVer) { if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) { return version } else { version = version.version } } else if (typeof version !== 'string') { throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version}".`) } if (version.length > MAX_LENGTH) { throw new TypeError( `version is longer than ${MAX_LENGTH} characters` ) } debug('SemVer', version, options) this.options = options this.loose = !!options.loose // this isn't actually relevant for versions, but keep it so that we // don't run into trouble passing this.options around. this.includePrerelease = !!options.includePrerelease const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]) if (!m) { throw new TypeError(`Invalid Version: ${version}`) } this.raw = version // these are actually numbers this.major = +m[1] this.minor = +m[2] this.patch = +m[3] if (this.major > MAX_SAFE_INTEGER || this.major < 0) { throw new TypeError('Invalid major version') } if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) { throw new TypeError('Invalid minor version') } if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) { throw new TypeError('Invalid patch version') } // numberify any prerelease numeric ids if (!m[4]) { this.prerelease = [] } else { this.prerelease = m[4].split('.').map((id) => { if (/^[0-9]+$/.test(id)) { const num = +id if (num >= 0 && num < MAX_SAFE_INTEGER) { return num } } return id }) } this.build = m[5] ? m[5].split('.') : [] this.format() } format () { this.version = `${this.major}.${this.minor}.${this.patch}` if (this.prerelease.length) { this.version += `-${this.prerelease.join('.')}` } return this.version } toString () { return this.version } compare (other) { debug('SemVer.compare', this.version, this.options, other) if (!(other instanceof SemVer)) { if (typeof other === 'string' && other === this.version) { return 0 } other = new SemVer(other, this.options) } if (other.version === this.version) { return 0 } return this.compareMain(other) || this.comparePre(other) } compareMain (other) { if (!(other instanceof SemVer)) { other = new SemVer(other, this.options) } return ( compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch) ) } comparePre (other) { if (!(other instanceof SemVer)) { other = new SemVer(other, this.options) } // NOT having a prerelease is > having one if (this.prerelease.length && !other.prerelease.length) { return -1 } else if (!this.prerelease.length && other.prerelease.length) { return 1 } else if (!this.prerelease.length && !other.prerelease.length) { return 0 } let i = 0 do { const a = this.prerelease[i] const b = other.prerelease[i] debug('prerelease compare', i, a, b) if (a === undefined && b === undefined) { return 0 } else if (b === undefined) { return 1 } else if (a === undefined) { return -1 } else if (a === b) { continue } else { return compareIdentifiers(a, b) } } while (++i) } compareBuild (other) { if (!(other instanceof SemVer)) { other = new SemVer(other, this.options) } let i = 0 do { const a = this.build[i] const b = other.build[i] debug('build compare', i, a, b) if (a === undefined && b === undefined) { return 0 } else if (b === undefined) { return 1 } else if (a === undefined) { return -1 } else if (a === b) { continue } else { return compareIdentifiers(a, b) } } while (++i) } // preminor will bump the version up to the next minor release, and immediately // down to pre-release. premajor and prepatch work the same way. inc (release, identifier, identifierBase) { switch (release) { case 'premajor': this.prerelease.length = 0 this.patch = 0 this.minor = 0 this.major++ this.inc('pre', identifier, identifierBase) break case 'preminor': this.prerelease.length = 0 this.patch = 0 this.minor++ this.inc('pre', identifier, identifierBase) break case 'prepatch': // If this is already a prerelease, it will bump to the next version // drop any prereleases that might already exist, since they are not // relevant at this point. this.prerelease.length = 0 this.inc('patch', identifier, identifierBase) this.inc('pre', identifier, identifierBase) break // If the input is a non-prerelease version, this acts the same as // prepatch. case 'prerelease': if (this.prerelease.length === 0) { this.inc('patch', identifier, identifierBase) } this.inc('pre', identifier, identifierBase) break case 'major': // If this is a pre-major version, bump up to the same major version. // Otherwise increment major. // 1.0.0-5 bumps to 1.0.0 // 1.1.0 bumps to 2.0.0 if ( this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0 ) { this.major++ } this.minor = 0 this.patch = 0 this.prerelease = [] break case 'minor': // If this is a pre-minor version, bump up to the same minor version. // Otherwise increment minor. // 1.2.0-5 bumps to 1.2.0 // 1.2.1 bumps to 1.3.0 if (this.patch !== 0 || this.prerelease.length === 0) { this.minor++ } this.patch = 0 this.prerelease = [] break case 'patch': // If this is not a pre-release version, it will increment the patch. // If it is a pre-release it will bump up to the same patch version. // 1.2.0-5 patches to 1.2.0 // 1.2.0 patches to 1.2.1 if (this.prerelease.length === 0) { this.patch++ } this.prerelease = [] break // This probably shouldn't be used publicly. // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction. case 'pre': { const base = Number(identifierBase) ? 1 : 0 if (!identifier && identifierBase === false) { throw new Error('invalid increment argument: identifier is empty') } if (this.prerelease.length === 0) { this.prerelease = [base] } else { let i = this.prerelease.length while (--i >= 0) { if (typeof this.prerelease[i] === 'number') { this.prerelease[i]++ i = -2 } } if (i === -1) { // didn't increment anything if (identifier === this.prerelease.join('.') && identifierBase === false) { throw new Error('invalid increment argument: identifier already exists') } this.prerelease.push(base) } } if (identifier) { // 1.2.0-beta.1 bumps to 1.2.0-beta.2, // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0 let prerelease = [identifier, base] if (identifierBase === false) { prerelease = [identifier] } if (compareIdentifiers(this.prerelease[0], identifier) === 0) { if (isNaN(this.prerelease[1])) { this.prerelease = prerelease } } else { this.prerelease = prerelease } } break } default: throw new Error(`invalid increment argument: ${release}`) } this.raw = this.format() if (this.build.length) { this.raw += `+${this.build.join('.')}` } return this } } module.exports = SemVer /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js": /*!**********************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/major.js ***! \**********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { const SemVer = __webpack_require__(/*! ../classes/semver */ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js") const major = (a, loose) => new SemVer(a, loose).major module.exports = major /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js": /*!**********************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js ***! \**********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { const SemVer = __webpack_require__(/*! ../classes/semver */ "./node_modules/@nextcloud/event-bus/node_modules/semver/classes/semver.js") const parse = (version, options, throwErrors = false) => { if (version instanceof SemVer) { return version } try { return new SemVer(version, options) } catch (er) { if (!throwErrors) { return null } throw er } } module.exports = parse /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js": /*!**********************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/functions/valid.js ***! \**********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { const parse = __webpack_require__(/*! ./parse */ "./node_modules/@nextcloud/event-bus/node_modules/semver/functions/parse.js") const valid = (version, options) => { const v = parse(version, options) return v ? v.version : null } module.exports = valid /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js": /*!*************************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js ***! \*************************************************************************************/ /***/ ((module) => { // Note: this is the semver.org version of the spec that it implements // Not necessarily the package version of this code. const SEMVER_SPEC_VERSION = '2.0.0' const MAX_LENGTH = 256 const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */ 9007199254740991 // Max safe segment length for coercion. const MAX_SAFE_COMPONENT_LENGTH = 16 // Max safe length for a build identifier. The max length minus 6 characters for // the shortest version with a build 0.0.0+BUILD. const MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6 const RELEASE_TYPES = [ 'major', 'premajor', 'minor', 'preminor', 'patch', 'prepatch', 'prerelease', ] module.exports = { MAX_LENGTH, MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH, MAX_SAFE_INTEGER, RELEASE_TYPES, SEMVER_SPEC_VERSION, FLAG_INCLUDE_PRERELEASE: 0b001, FLAG_LOOSE: 0b010, } /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js": /*!*********************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js ***! \*********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { /* provided dependency */ var process = __webpack_require__(/*! ./node_modules/process/browser.js */ "./node_modules/process/browser.js"); const debug = ( typeof process === 'object' && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ) ? (...args) => console.error('SEMVER', ...args) : () => {} module.exports = debug /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js": /*!***************************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/identifiers.js ***! \***************************************************************************************/ /***/ ((module) => { const numeric = /^[0-9]+$/ const compareIdentifiers = (a, b) => { const anum = numeric.test(a) const bnum = numeric.test(b) if (anum && bnum) { a = +a b = +b } return a === b ? 0 : (anum && !bnum) ? -1 : (bnum && !anum) ? 1 : a < b ? -1 : 1 } const rcompareIdentifiers = (a, b) => compareIdentifiers(b, a) module.exports = { compareIdentifiers, rcompareIdentifiers, } /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/parse-options.js": /*!*****************************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/parse-options.js ***! \*****************************************************************************************/ /***/ ((module) => { // parse out just the options we care about const looseOption = Object.freeze({ loose: true }) const emptyOpts = Object.freeze({ }) const parseOptions = options => { if (!options) { return emptyOpts } if (typeof options !== 'object') { return looseOption } return options } module.exports = parseOptions /***/ }), /***/ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js": /*!******************************************************************************!*\ !*** ./node_modules/@nextcloud/event-bus/node_modules/semver/internal/re.js ***! \******************************************************************************/ /***/ ((module, exports, __webpack_require__) => { const { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH, MAX_LENGTH, } = __webpack_require__(/*! ./constants */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/constants.js") const debug = __webpack_require__(/*! ./debug */ "./node_modules/@nextcloud/event-bus/node_modules/semver/internal/debug.js") exports = module.exports = {} // The actual regexps go on exports.re const re = exports.re = [] const safeRe = exports.safeRe = [] const src = exports.src = [] const t = exports.t = {} let R = 0 const LETTERDASHNUMBER = '[a-zA-Z0-9-]' // Replace some greedy regex tokens to prevent regex dos issues. These regex are // used internally via the safeRe object since all inputs in this library get // normalized first to trim and collapse all extra whitespace. The original // regexes are exported for userland consumption and lower level usage. A // future breaking change could export the safer regex only with a note that // all input should have extra whitespace removed. const safeRegexReplacements = [ ['\\s', 1], ['\\d', MAX_LENGTH], [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH], ] const makeSafeRegex = (value) => { for (const [token, max] of safeRegexReplacements) { value = value .split(`${token}*`).join(`${token}{0,${max}}`) .split(`${token}+`).join(`${token}{1,${max}}`) } return value } const createToken = (name, value, isGlobal) => { const safe = makeSafeRegex(value) const index = R++ debug(name, index, value) t[name] = index src[index] = value re[index] = new RegExp(value, isGlobal ? 'g' : undefined) safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined) } // The following Regular Expressions can be used for tokenizing, // validating, and parsing SemVer version strings. // ## Numeric Identifier // A single `0`, or a non-zero digit followed by zero or more digits. createToken('NUMERICIDENTIFIER', '0|[1-9]\\d*') createToken('NUMERICIDENTIFIERLOOSE', '\\d+') // ## Non-numeric Identifier // Zero or more digits, followed by a letter or hyphen, and then zero or // more letters, digits, or hyphens. createToken('NONNUMERICIDENTIFIER', `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`) // ## Main Version // Three dot-separated numeric identifiers. createToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\.` + `(${src[t.NUMERICIDENTIFIER]})\\.` + `(${src[t.NUMERICIDENTIFIER]})`) createToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` + `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` + `(${src[t.NUMERICIDENTIFIERLOOSE]})`) // ## Pre-release Version Identifier // A numeric identifier, or a non-numeric identifier. createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER] }|${src[t.NONNUMERICIDENTIFIER]})`) createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE] }|${src[t.NONNUMERICIDENTIFIER]})`) // ## Pre-release Version // Hyphen, followed by one or more dot-separated pre-release version // identifiers. createToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER] }(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`) createToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE] }(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`) // ## Build Metadata Identifier // Any combination of digits, letters, or hyphens. createToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`) // ## Build Metadata // Plus sign, followed by one or more period-separated build metadata // identifiers. createToken('BUILD', `(?:\\+(${src[t.BUILDIDENTIFIER] }(?:\\.${src[t.BUILDIDENTIFIER]})*))`) // ## Full Version String // A main version, followed optionally by a pre-release version and // build metadata. // Note that the only major, minor, patch, and pre-release sections of // the version string are capturing groups. The build metadata is not a // capturing group, because it should not ever be used in version // comparison. createToken('FULLPLAIN', `v?${src[t.MAINVERSION] }${src[t.PRERELEASE]}?${ src[t.BUILD]}?`) createToken('FULL', `^${src[t.FULLPLAIN]}$`) // like full, but allows v1.2.3 and =1.2.3, which people do sometimes. // also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty // common in the npm registry. createToken('LOOSEPLAIN', `[v=\\s]*${src[t.MAINVERSIONLOOSE] }${src[t.PRERELEASELOOSE]}?${ src[t.BUILD]}?`) createToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`) createToken('GTLT', '((?:<|>)?=?)') // Something like "2.*" or "1.2.x". // Note that "x.x" is a valid xRange identifer, meaning "any version" // Only the first item is strictly required. createToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`) createToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\*`) createToken('XRANGEPLAIN', `[v=\\s]*(${src[t.XRANGEIDENTIFIER]})` + `(?:\\.(${src[t.XRANGEIDENTIFIER]})` + `(?:\\.(${src[t.XRANGEIDENTIFIER]})` + `(?:${src[t.PRERELEASE]})?${ src[t.BUILD]}?` + `)?)?`) createToken('XRANGEPLAINLOOSE', `[v=\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` + `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` + `(?:\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` + `(?:${src[t.PRERELEASELOOSE]})?${ src[t.BUILD]}?` + `)?)?`) createToken('XRANGE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAIN]}$`) createToken('XRANGELOOSE', `^${src[t.GTLT]}\\s*${src[t.XRANGEPLAINLOOSE]}$`) // Coercion. // Extract anything that could conceivably be a part of a valid semver createToken('COERCEPLAIN', `${'(^|[^\\d])' + '(\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` + `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` + `(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`) createToken('COERCE', `${src[t.COERCEPLAIN]}(?:$|[^\\d])`) createToken('COERCEFULL', src[t.COERCEPLAIN] + `(?:${src[t.PRERELEASE]})?` + `(?:${src[t.BUILD]})?` + `(?:$|[^\\d])`) createToken('COERCERTL', src[t.COERCE], true) createToken('COERCERTLFULL', src[t.COERCEFULL], true) // Tilde ranges. // Meaning is "reasonably at or greater than" createToken('LONETILDE', '(?:~>?)') createToken('TILDETRIM', `(\\s*)${src[t.LONETILDE]}\\s+`, true) exports.tildeTrimReplace = '$1~' createToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`) createToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`) // Caret ranges. // Meaning is "at least and backwards compatible with" createToken('LONECARET', '(?:\\^)') createToken('CARETTRIM', `(\\s*)${src[t.LONECARET]}\\s+`, true) exports.caretTrimReplace = '$1^' createToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`) createToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`) // A simple gt/lt/eq thing, or just "" to indicate "any version" createToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\s*(${src[t.LOOSEPLAIN]})$|^$`) createToken('COMPARATOR', `^${src[t.GTLT]}\\s*(${src[t.FULLPLAIN]})$|^$`) // An expression to strip any whitespace between the gtlt and the thing // it modifies, so that `> 1.2.3` ==> `>1.2.3` createToken('COMPARATORTRIM', `(\\s*)${src[t.GTLT] }\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true) exports.comparatorTrimReplace = '$1$2$3' // Something like `1.2.3 - 1.2.4` // Note that these all use the loose form, because they'll be // checked against either the strict or loose comparator form // later. createToken('HYPHENRANGE', `^\\s*(${src[t.XRANGEPLAIN]})` + `\\s+-\\s+` + `(${src[t.XRANGEPLAIN]})` + `\\s*$`) createToken('HYPHENRANGELOOSE', `^\\s*(${src[t.XRANGEPLAINLOOSE]})` + `\\s+-\\s+` + `(${src[t.XRANGEPLAINLOOSE]})` + `\\s*$`) // Star ranges basically just allow anything at all. createToken('STAR', '(<|>)?=?\\s*\\*') // >=0.0.0 is like a star createToken('GTE0', '^\\s*>=\\s*0\\.0\\.0\\s*$') createToken('GTE0PRE', '^\\s*>=\\s*0\\.0\\.0-0\\s*$') /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/App.vue?vue&type=script&lang=js": /*!*************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/App.vue?vue&type=script&lang=js ***! \*************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _components_FileTable_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/FileTable.vue */ "./src/components/FileTable.vue"); /* harmony import */ var _components_WebContentViewer_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/WebContentViewer.vue */ "./src/components/WebContentViewer.vue"); /* harmony import */ var _output_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./output.css */ "./src/output.css"); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ name: 'App', components: { FileTable: _components_FileTable_vue__WEBPACK_IMPORTED_MODULE_0__["default"], WebContentViewer: _components_WebContentViewer_vue__WEBPACK_IMPORTED_MODULE_1__["default"] } }); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=script&lang=js": /*!******************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=script&lang=js ***! \******************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _nextcloud_files_dav__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @nextcloud/files/dav */ "./node_modules/@nextcloud/files/dist/dav.mjs"); /* harmony import */ var _nextcloud_vue_dist_Components_NcBreadcrumbs_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcBreadcrumbs.js */ "./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumbs.mjs"); /* harmony import */ var _nextcloud_vue_dist_Components_NcBreadcrumb_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @nextcloud/vue/dist/Components/NcBreadcrumb.js */ "./node_modules/@nextcloud/vue/dist/Components/NcBreadcrumb.mjs"); /* harmony import */ var vue_material_design_icons_Plus_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-material-design-icons/Plus.vue */ "./node_modules/vue-material-design-icons/Plus.vue"); /* provided dependency */ var Buffer = __webpack_require__(/*! ./node_modules/buffer/index.js */ "./node_modules/buffer/index.js")["Buffer"]; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ name: 'FileTable', components: { NcBreadcrumbs: _nextcloud_vue_dist_Components_NcBreadcrumbs_js__WEBPACK_IMPORTED_MODULE_1__["default"], NcBreadcrumb: _nextcloud_vue_dist_Components_NcBreadcrumb_js__WEBPACK_IMPORTED_MODULE_2__["default"], Plus: vue_material_design_icons_Plus_vue__WEBPACK_IMPORTED_MODULE_3__["default"] }, data() { return { files: [], // Liste des fichiers et dossiers récupérés root_path: (0,_nextcloud_files_dav__WEBPACK_IMPORTED_MODULE_0__.getRootPath)(), current_dir: '/', breadcrumbParts: [], isAddFilePopupVisible: false, newFileName: '' }; }, async mounted() { await this.fetchFiles(); this.breadcrumbParts = this.getBreadcrumbParts(); }, methods: { async fetchFiles() { try { const client = (0,_nextcloud_files_dav__WEBPACK_IMPORTED_MODULE_0__.getClient)(); const directoryItems = await client.getDirectoryContents(this.root_path + this.current_dir); // Remplacez "admin" par le nom de l'utilisateur courant this.files = directoryItems.map(file => ({ basename: file.basename, size: file.size, href: client.getFileDownloadLink(file.filename), type: file.type })); } catch (error) { console.error('Erreur lors de la récupération des fichiers et dossiers :', error); } }, formatFileSize(size) { if (size < 1024) return `${size} B`; if (size < 1024 * 1024) return `${(size / 1024).toFixed(2)} KB`; if (size < 1024 * 1024 * 1024) return `${(size / 1024 / 1024).toFixed(2)} MB`; return `${(size / 1024 / 1024 / 1024).toFixed(2)} GB`; }, generateCrumbHref(index) { const parts = this.breadcrumbParts.slice(0, index + 1); return '/' + parts.join('/'); }, getBreadcrumbParts() { // Si le current_dir est un simple '/', on le renvoie sous forme de tableau vide. if (this.current_dir === '/') return []; return this.current_dir.split('/').filter(part => part); }, async handleClickElem(file) { if (file.type === 'directory') { this.current_dir = this.current_dir === '/' ? '/' + file.basename : this.current_dir + '/' + file.basename; this.breadcrumbParts = this.getBreadcrumbParts(); await this.fetchFiles(); } else { window.open(file.href, '_blank'); } }, async handleClickBreadcrumb(index) { let dir = '/'; if (index >= -1) { dir = this.generateCrumbHref(index); } this.current_dir = dir; this.breadcrumbParts = this.getBreadcrumbParts(); await this.fetchFiles(); }, async createNewFile() { if (!this.newFileName) return; try { const client = (0,_nextcloud_files_dav__WEBPACK_IMPORTED_MODULE_0__.getClient)(); const filePath = `${this.root_path}${this.current_dir}/${this.newFileName}`; await client.createDirectory(filePath, ''); this.newFileName = ''; this.isAddFilePopupVisible = false; await this.fetchFiles(); } catch (error) { console.error('Erreur lors de la création du fichier :', error); } }, toggleAddFilePopup() { this.isAddFilePopupVisible = !this.isAddFilePopupVisible; if (!this.isAddFilePopupVisible) this.newFileName = ''; }, async onDrop(event) { event.preventDefault(); try { const fileData = JSON.parse(event.dataTransfer.getData('application/json')); if (Array.isArray(fileData.content)) { fileData.content = new Uint8Array(fileData.content); } await this.moveFileToTarget(fileData); } catch (error) { console.error('Erreur lors du drag and drop :', error); } }, async moveFileToTarget(file) { try { const client = (0,_nextcloud_files_dav__WEBPACK_IMPORTED_MODULE_0__.getClient)(); const path = this.root_path + this.current_dir + file.name; if (ArrayBuffer.isView(file.content)) { file.content = Buffer.from(file.content); } await client.putFileContents(path, file.content); // Recharge les fichiers après l'opération await this.fetchFiles(); } catch (error) { console.error('Erreur lors du déplacement du fichier:', error); } } } }); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=script&lang=js": /*!*************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=script&lang=js ***! \*************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var jszip__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jszip */ "./node_modules/jszip/dist/jszip.min.js"); /* harmony import */ var jszip__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jszip__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var vue_material_design_icons_ChevronRight_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue-material-design-icons/ChevronRight.vue */ "./node_modules/vue-material-design-icons/ChevronRight.vue"); /* harmony import */ var vue_material_design_icons_ChevronDown_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-material-design-icons/ChevronDown.vue */ "./node_modules/vue-material-design-icons/ChevronDown.vue"); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ name: 'WebContentViewer', data() { return { zipContent: [], folderMap: {}, archiveUrl: '', token: '', ChevronRightIcon: vue_material_design_icons_ChevronRight_vue__WEBPACK_IMPORTED_MODULE_1__["default"], ChevronDownIcon: vue_material_design_icons_ChevronDown_vue__WEBPACK_IMPORTED_MODULE_2__["default"] }; }, props: { zipUrl: { type: String, required: true } }, computed: { sortedFiles() { const flattenAndSort = (files, parentPath = '') => { const flatList = []; files.forEach(file => { const fullPath = parentPath ? `${parentPath}/${file.name}` : file.name; // Toujours ajouter le dossier parent flatList.push({ ...file, fullPath, parentPath }); // Ajouter les enfants uniquement si le dossier est ouvert if (file.isDirectory && this.folderMap[fullPath] && file.children) { flatList.push(...flattenAndSort(file.children, fullPath)); } }); return flatList.sort((a, b) => a.fullPath.localeCompare(b.fullPath)); }; return flattenAndSort(this.zipContent); } }, async mounted() { await this.loadZipContent(); const webTransferDiv = document.getElementById('archiveInfos'); if (webTransferDiv) { this.archiveUrl = webTransferDiv.dataset.archiveUrl; this.token = webTransferDiv.dataset.token; } else { console.error('Pas d\'informations pour recuperer l\'archive'); } }, methods: { async loadZipContent() { try { const response = await fetch(this.zipUrl); const zipData = await response.blob(); const zip = await jszip__WEBPACK_IMPORTED_MODULE_0___default().loadAsync(zipData); const files = []; const filePromises = []; zip.forEach((relativePath, file) => { const pathParts = relativePath.split('/').filter(Boolean); let currentLevel = files; for (let i = 0; i < pathParts.length; i++) { const partName = pathParts[i]; const isDirectory = i < pathParts.length - 1 || file.dir; let existing = currentLevel.find(f => f.name === partName && f.isDirectory === isDirectory); if (!existing) { existing = { name: partName, isDirectory, size: isDirectory ? 0 : file._data.uncompressedSize, content: isDirectory ? null : '', // Initialiser 'content' pour les fichiers children: isDirectory ? [] : null }; currentLevel.push(existing); } if (isDirectory) { currentLevel = existing.children; } else { // Lire le contenu des fichiers non répertoires if (file.dir) continue; if (!existing && existing.size > 50 * 1024 * 1024) { console.warn(`Fichier ${existing.name} trop volumineux pour être chargé`); continue; } const promise = file.async("blob").then(content => { existing.content = content; }); filePromises.push(promise); } } }); // Attendre que tous les contenus de fichier soient extraits this.zipContent = files; // Initialiser folderMap const initializeFolderMap = (files, parentPath = '') => { files.forEach(file => { const fullPath = parentPath ? `${parentPath}/${file.name}` : file.name; this.$set(this.folderMap, fullPath, false); if (file.isDirectory && file.children) { initializeFolderMap(file.children, fullPath); } }); }; initializeFolderMap(this.zipContent); await Promise.all(filePromises); console.log('Contenu du ZIP chargé avec succès'); } catch (error) { console.error('Erreur lors du chargement du contenu du ZIP :', error); } }, formatFileSize(size) { if (size < 1024) return `${size} B`; if (size < 1024 * 1024) return `${(size / 1024).toFixed(2)} KB`; if (size < 1024 * 1024 * 1024) return `${(size / 1024 / 1024).toFixed(2)} MB`; return `${(size / 1024 / 1024 / 1024).toFixed(2)} GB`; }, toggleFolder(file) { if (!file.isDirectory) return; const currentState = this.folderMap[file.fullPath]; this.$set(this.folderMap, file.fullPath, !currentState); }, async onDragStart(file, event) { if (!file || !file.content) { event.preventDefault(); return; } let fileToTransfer = { ...file }; // Clone l'objet file if (file.content instanceof Blob) { // Convertir le Blob en base64 string const arrayBuffer = await file.content.arrayBuffer(); const uint8Array = new Uint8Array(arrayBuffer); fileToTransfer.content = Array.from(uint8Array); // Convertir Uint8Array en array normal } event.dataTransfer.setData('application/json', JSON.stringify(fileToTransfer)); } } }); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/App.vue?vue&type=template&id=7ba5bd90": /*!************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/App.vue?vue&type=template&id=7ba5bd90 ***! \************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ render: () => (/* binding */ render), /* harmony export */ staticRenderFns: () => (/* binding */ staticRenderFns) /* harmony export */ }); var render = function render() { var _vm = this, _c = _vm._self._c; return _c("div", { staticClass: "h-full w-full bg-black/80", attrs: { id: "app" } }, [_c("div", { staticClass: "h-full w-full flex flex-col sm:flex-row" }, [_c("div", { staticClass: "w-full sm:w-1/3 max-sm:h-2/5 p-4 sm:m-6 rounded-xl bg-NcBlack/40" }, [_c("WebContentViewer", { attrs: { zipUrl: "http://localhost:8000/dummyZip.zip" } })], 1), _vm._v(" "), _c("div", { staticClass: "w-full sm:w-2/3 max-sm:h-3/5 p-4 sm:m-6 bg-NcBlack rounded-xl" }, [_c("FileTable")], 1)])]); }; var staticRenderFns = []; render._withStripped = true; /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=template&id=36ad32b2&scoped=true": /*!*****************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=template&id=36ad32b2&scoped=true ***! \*****************************************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ render: () => (/* binding */ render), /* harmony export */ staticRenderFns: () => (/* binding */ staticRenderFns) /* harmony export */ }); var render = function render() { var _vm = this, _c = _vm._self._c; return _c("div", { staticClass: "flex flex-col h-full w-full border" }, [_c("div", { staticClass: "flex flex-row mt-1 ml-3 items-start container" }, [_c("NcBreadcrumbs", { staticClass: "max-h-8", scopedSlots: _vm._u([{ key: "actions", fn: function () { return [_c("div", { staticClass: "flex items-center ml-2" }, [_c("button", { staticClass: "flex items-center space-x-2 bg-blue-100 text-blue-600 font-medium px-4 py-2 rounded-md hover:bg-blue-200 transition", on: { click: _vm.toggleAddFilePopup } }, [_c("Plus", { attrs: { size: 20 } }), _vm._v(" "), _c("span", [_vm._v("Nouveau")])], 1)])]; }, proxy: true }]) }, [_c("NcBreadcrumb", { attrs: { name: "Home", title: "Title of the Home folder" }, on: { click: function ($event) { return _vm.handleClickBreadcrumb(-1); } } }), _vm._v(" "), _vm._l(_vm.breadcrumbParts, function (part, index) { return _vm.getBreadcrumbParts().length > 0 ? _c("NcBreadcrumb", { key: index, attrs: { name: part }, on: { click: function ($event) { return _vm.handleClickBreadcrumb(index); } } }) : _vm._e(); })], 2)], 1), _vm._v(" "), _vm.isAddFilePopupVisible ? _c("div", { staticClass: "fixed inset-0 flex items-center justify-center bg-gray-700 bg-opacity-50 z-50" }, [_c("div", { staticClass: "bg-NcBlack rounded-lg shadow-lg p-6 w-96" }, [_c("h2", { staticClass: "text-lg font-semibold mb-4" }, [_vm._v("Créer un nouveau fichier")]), _vm._v(" "), _c("input", { directives: [{ name: "model", rawName: "v-model", value: _vm.newFileName, expression: "newFileName" }], staticClass: "w-full px-4 py-2 border rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500", attrs: { type: "text", placeholder: "Nom du fichier" }, domProps: { value: _vm.newFileName }, on: { input: function ($event) { if ($event.target.composing) return; _vm.newFileName = $event.target.value; } } }), _vm._v(" "), _c("div", { staticClass: "flex justify-end mt-4 space-x-2" }, [_c("button", { staticClass: "px-4 py-2 bg-gray-200 text-gray-700 rounded-md hover:bg-gray-300 transition", on: { click: _vm.toggleAddFilePopup } }, [_vm._v("\n Annuler\n ")]), _vm._v(" "), _c("button", { staticClass: "px-4 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 transition", on: { click: _vm.createNewFile } }, [_vm._v("\n Créer\n ")])])])]) : _vm._e(), _vm._v(" "), _vm._m(0), _vm._v(" "), _c("div", { staticClass: "overflow-y-auto", on: { dragover: function ($event) { $event.preventDefault(); }, drop: _vm.onDrop } }, _vm._l(_vm.files, function (file) { return _c("div", { key: file.filename, staticClass: "flex h-16 items-center hover:bg-NcGray rounded-lg border-b last:border-b-0 border-gray-300", on: { click: function ($event) { return _vm.handleClickElem(file); } } }, [_c("div", { staticClass: "w-4/6 flex items-center px-4 py-2 border-r border-gray-300 cursor-pointer" }, [_c("div", { staticClass: "w-12 h-12 flex items-center justify-center cursor-pointer" }, [file.type === "directory" ? [_c("svg", { staticClass: "text-NcBlue w-10 h-10", attrs: { fill: "currentColor", viewBox: "0 0 24 24" } }, [_c("path", { attrs: { d: "M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z" } })])] : [_c("div", { staticClass: "flex items-center justify-center cursor-pointer" }, [_c("svg", { staticClass: "w-10 h-10", staticStyle: { "fill-rule": "evenodd", "clip-rule": "evenodd", "stroke-linejoin": "round", "stroke-miterlimit": "2" }, attrs: { viewBox: "0 0 16 16", xmlns: "http://www.w3.org/2000/svg", "xml:space": "preserve" } }, [_c("path", { staticStyle: { fill: "#969696", "fill-rule": "nonzero" }, attrs: { d: "M6 22c-.55 0-1.021-.196-1.412-.587A1.927 1.927 0 0 1 4 20V4c0-.55.196-1.021.588-1.413A1.926 1.926 0 0 1 6 2h8l6 6v12a1.93 1.93 0 0 1-.587 1.413A1.93 1.93 0 0 1 18 22H6Z", transform: "matrix(.7 0 0 .7 -.43 -.388)" } })])])]], 2), _vm._v(" "), _c("div", { staticClass: "ml-4 cursor-pointer max-sm:max-w-32 truncate" }, [_vm._v(_vm._s(file.basename))])]), _vm._v(" "), _c("div", { staticClass: "w-1/6 px-4 py-2 border-r border-gray-300 cursor-pointer" }, [_vm._v("\n " + _vm._s(file.type === "directory" ? "Dossier" : "Fichier") + "\n ")]), _vm._v(" "), _c("div", { staticClass: "w-1/6 px-4 py-2 cursor-pointer" }, [_vm._v("\n " + _vm._s(file.type === "directory" ? "-" : _vm.formatFileSize(file.size)) + "\n ")])]); }), 0)]); }; var staticRenderFns = [function () { var _vm = this, _c = _vm._self._c; return _c("div", { staticClass: "flex h-12 items-center border-b border-gray-300" }, [_c("div", { staticClass: "w-4/6 px-4 py-2 text-gray-500 font-semibold border-r border-gray-300" }, [_vm._v("Nom")]), _vm._v(" "), _c("div", { staticClass: "w-1/6 px-4 py-2 text-gray-500 font-semibold border-r border-gray-300" }, [_vm._v("Type")]), _vm._v(" "), _c("div", { staticClass: "w-1/6 px-4 py-2 text-gray-500 font-semibold" }, [_vm._v("Taille")])]); }]; render._withStripped = true; /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=template&id=4ef514b2&scoped=true": /*!************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=template&id=4ef514b2&scoped=true ***! \************************************************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ render: () => (/* binding */ render), /* harmony export */ staticRenderFns: () => (/* binding */ staticRenderFns) /* harmony export */ }); var render = function render() { var _vm = this, _c = _vm._self._c; return _c("div", { staticClass: "flex flex-col h-full w-full border" }, [_vm._m(0), _vm._v(" "), _c("div", { staticClass: "overflow-y-auto" }, _vm._l(_vm.sortedFiles, function (file, index) { return _c("div", { key: file.fullPath, staticClass: "flex flex-col" }, [file.isDirectory ? _c("div", { staticClass: "flex h-16 hover:bg-NcGray items-center pl-4 cursor-pointer rounded-lg border-b last:border-b-0 border-gray-300", attrs: { draggable: "true" }, on: { click: function ($event) { return _vm.toggleFolder(file); }, dragstart: function ($event) { return _vm.onDragStart(file, $event); } } }, [_c("div", { staticClass: "w-4/6 flex items-center py-2 border-r border-gray-300 cursor-pointer" }, [_c("div", { staticClass: "w-12 h-12 flex items-center justify-center cursor-pointer" }, [[_c("svg", { staticClass: "text-NcBlue w-10 h-10", attrs: { fill: "currentColor", viewBox: "0 0 24 24" } }, [_c("path", { attrs: { d: "M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z" } })])]], 2), _vm._v(" "), _c("div", { staticClass: "w-4/6 flex items-center py-2 border-r border-gray-300 cursor-pointer" }, [_c("div", { staticClass: "w-12 h-12 flex items-center justify-center cursor-pointer" }, [_c(_vm.folderMap[file.fullPath] ? _vm.ChevronDownIcon : _vm.ChevronRightIcon, { tag: "component", staticClass: "text-NcBlue w-6 h-6" })], 1), _vm._v(" "), _c("span", { staticClass: "ml-2 truncate cursor-pointer" }, [_vm._v(_vm._s(file.fullPath))])])]), _vm._v(" "), _c("div", { staticClass: "w-1/6 px-4 py-2 cursor-pointer" }, [_vm._v("-")])]) : _c("div", { staticClass: "flex h-16 hover:bg-NcGray items-center pl-4 cursor-pointer rounded-lg border-b last:border-b-0 border-gray-300", attrs: { draggable: "true" }, on: { dragstart: function ($event) { return _vm.onDragStart(file, $event); } } }, [[_c("div", { staticClass: "flex items-center justify-center cursor-pointer" }, [_c("svg", { staticClass: "w-10 h-10", staticStyle: { "fill-rule": "evenodd", "clip-rule": "evenodd", "stroke-linejoin": "round", "stroke-miterlimit": "2" }, attrs: { viewBox: "0 0 16 16", xmlns: "http://www.w3.org/2000/svg", "xml:space": "preserve" } }, [_c("path", { staticStyle: { fill: "#969696", "fill-rule": "nonzero" }, attrs: { d: "M6 22c-.55 0-1.021-.196-1.412-.587A1.927 1.927 0 0 1 4 20V4c0-.55.196-1.021.588-1.413A1.926 1.926 0 0 1 6 2h8l6 6v12a1.93 1.93 0 0 1-.587 1.413A1.93 1.93 0 0 1 18 22H6Z", transform: "matrix(.7 0 0 .7 -.43 -.388)" } })])])], _vm._v(" "), _c("div", { staticClass: "w-4/6 flex items-center px-4 py-2 truncate cursor-pointer" }, [_vm._v("\n " + _vm._s(file.fullPath) + "\n ")]), _vm._v(" "), _c("div", { staticClass: "w-2/6 py-2 cursor-pointer" }, [_vm._v("\n " + _vm._s(_vm.formatFileSize(file.size)) + "\n ")])], 2)]); }), 0)]); }; var staticRenderFns = [function () { var _vm = this, _c = _vm._self._c; return _c("div", { staticClass: "flex h-12 items-center border-b border-gray-300" }, [_c("div", { staticClass: "w-4/6 px-4 py-2 text-gray-500 font-semibold border-r border-gray-300" }, [_vm._v("Nom")]), _vm._v(" "), _c("div", { staticClass: "w-2/6 px-4 py-2 text-gray-500 font-semibold" }, [_vm._v("Taille")])]); }]; render._withStripped = true; /***/ }), /***/ "./node_modules/base64-js/index.js": /*!*****************************************!*\ !*** ./node_modules/base64-js/index.js ***! \*****************************************/ /***/ ((__unused_webpack_module, exports) => { "use strict"; exports.byteLength = byteLength exports.toByteArray = toByteArray exports.fromByteArray = fromByteArray var lookup = [] var revLookup = [] var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' for (var i = 0, len = code.length; i < len; ++i) { lookup[i] = code[i] revLookup[code.charCodeAt(i)] = i } // Support decoding URL-safe base64 strings, as Node.js does. // See: https://en.wikipedia.org/wiki/Base64#URL_applications revLookup['-'.charCodeAt(0)] = 62 revLookup['_'.charCodeAt(0)] = 63 function getLens (b64) { var len = b64.length if (len % 4 > 0) { throw new Error('Invalid string. Length must be a multiple of 4') } // Trim off extra bytes after placeholder bytes are found // See: https://github.com/beatgammit/base64-js/issues/42 var validLen = b64.indexOf('=') if (validLen === -1) validLen = len var placeHoldersLen = validLen === len ? 0 : 4 - (validLen % 4) return [validLen, placeHoldersLen] } // base64 is 4/3 + up to two characters of the original data function byteLength (b64) { var lens = getLens(b64) var validLen = lens[0] var placeHoldersLen = lens[1] return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen } function _byteLength (b64, validLen, placeHoldersLen) { return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen } function toByteArray (b64) { var tmp var lens = getLens(b64) var validLen = lens[0] var placeHoldersLen = lens[1] var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)) var curByte = 0 // if there are placeholders, only get up to the last complete 4 chars var len = placeHoldersLen > 0 ? validLen - 4 : validLen var i for (i = 0; i < len; i += 4) { tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)] arr[curByte++] = (tmp >> 16) & 0xFF arr[curByte++] = (tmp >> 8) & 0xFF arr[curByte++] = tmp & 0xFF } if (placeHoldersLen === 2) { tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4) arr[curByte++] = tmp & 0xFF } if (placeHoldersLen === 1) { tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2) arr[curByte++] = (tmp >> 8) & 0xFF arr[curByte++] = tmp & 0xFF } return arr } function tripletToBase64 (num) { return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F] } function encodeChunk (uint8, start, end) { var tmp var output = [] for (var i = start; i < end; i += 3) { tmp = ((uint8[i] << 16) & 0xFF0000) + ((uint8[i + 1] << 8) & 0xFF00) + (uint8[i + 2] & 0xFF) output.push(tripletToBase64(tmp)) } return output.join('') } function fromByteArray (uint8) { var tmp var len = uint8.length var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes var parts = [] var maxChunkLength = 16383 // must be multiple of 3 // go through the array every three bytes, we'll deal with trailing stuff later for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength))) } // pad the end with zeros, but make sure to not forget the extra bytes if (extraBytes === 1) { tmp = uint8[len - 1] parts.push( lookup[tmp >> 2] + lookup[(tmp << 4) & 0x3F] + '==' ) } else if (extraBytes === 2) { tmp = (uint8[len - 2] << 8) + uint8[len - 1] parts.push( lookup[tmp >> 10] + lookup[(tmp >> 4) & 0x3F] + lookup[(tmp << 2) & 0x3F] + '=' ) } return parts.join('') } /***/ }), /***/ "./node_modules/buffer/index.js": /*!**************************************!*\ !*** ./node_modules/buffer/index.js ***! \**************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */ /* eslint-disable no-proto */ const base64 = __webpack_require__(/*! base64-js */ "./node_modules/base64-js/index.js") const ieee754 = __webpack_require__(/*! ieee754 */ "./node_modules/ieee754/index.js") const customInspectSymbol = (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation : null exports.Buffer = Buffer exports.SlowBuffer = SlowBuffer exports.INSPECT_MAX_BYTES = 50 const K_MAX_LENGTH = 0x7fffffff exports.kMaxLength = K_MAX_LENGTH /** * If `Buffer.TYPED_ARRAY_SUPPORT`: * === true Use Uint8Array implementation (fastest) * === false Print warning and recommend using `buffer` v4.x which has an Object * implementation (most compatible, even IE6) * * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, * Opera 11.6+, iOS 4.2+. * * We report that the browser does not support typed arrays if the are not subclassable * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array` * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support * for __proto__ and has a buggy typed array implementation. */ Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport() if (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' && typeof console.error === 'function') { console.error( 'This browser lacks typed array (Uint8Array) support which is required by ' + '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.' ) } function typedArraySupport () { // Can typed array instances can be augmented? try { const arr = new Uint8Array(1) const proto = { foo: function () { return 42 } } Object.setPrototypeOf(proto, Uint8Array.prototype) Object.setPrototypeOf(arr, proto) return arr.foo() === 42 } catch (e) { return false } } Object.defineProperty(Buffer.prototype, 'parent', { enumerable: true, get: function () { if (!Buffer.isBuffer(this)) return undefined return this.buffer } }) Object.defineProperty(Buffer.prototype, 'offset', { enumerable: true, get: function () { if (!Buffer.isBuffer(this)) return undefined return this.byteOffset } }) function createBuffer (length) { if (length > K_MAX_LENGTH) { throw new RangeError('The value "' + length + '" is invalid for option "size"') } // Return an augmented `Uint8Array` instance const buf = new Uint8Array(length) Object.setPrototypeOf(buf, Buffer.prototype) return buf } /** * The Buffer constructor returns instances of `Uint8Array` that have their * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of * `Uint8Array`, so the returned instances will have all the node `Buffer` methods * and the `Uint8Array` methods. Square bracket notation works as expected -- it * returns a single octet. * * The `Uint8Array` prototype remains unmodified. */ function Buffer (arg, encodingOrOffset, length) { // Common case. if (typeof arg === 'number') { if (typeof encodingOrOffset === 'string') { throw new TypeError( 'The "string" argument must be of type string. Received type number' ) } return allocUnsafe(arg) } return from(arg, encodingOrOffset, length) } Buffer.poolSize = 8192 // not used by this implementation function from (value, encodingOrOffset, length) { if (typeof value === 'string') { return fromString(value, encodingOrOffset) } if (ArrayBuffer.isView(value)) { return fromArrayView(value) } if (value == null) { throw new TypeError( 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + 'or Array-like Object. Received type ' + (typeof value) ) } if (isInstance(value, ArrayBuffer) || (value && isInstance(value.buffer, ArrayBuffer))) { return fromArrayBuffer(value, encodingOrOffset, length) } if (typeof SharedArrayBuffer !== 'undefined' && (isInstance(value, SharedArrayBuffer) || (value && isInstance(value.buffer, SharedArrayBuffer)))) { return fromArrayBuffer(value, encodingOrOffset, length) } if (typeof value === 'number') { throw new TypeError( 'The "value" argument must not be of type number. Received type number' ) } const valueOf = value.valueOf && value.valueOf() if (valueOf != null && valueOf !== value) { return Buffer.from(valueOf, encodingOrOffset, length) } const b = fromObject(value) if (b) return b if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null && typeof value[Symbol.toPrimitive] === 'function') { return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length) } throw new TypeError( 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + 'or Array-like Object. Received type ' + (typeof value) ) } /** * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError * if value is a number. * Buffer.from(str[, encoding]) * Buffer.from(array) * Buffer.from(buffer) * Buffer.from(arrayBuffer[, byteOffset[, length]]) **/ Buffer.from = function (value, encodingOrOffset, length) { return from(value, encodingOrOffset, length) } // Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug: // https://github.com/feross/buffer/pull/148 Object.setPrototypeOf(Buffer.prototype, Uint8Array.prototype) Object.setPrototypeOf(Buffer, Uint8Array) function assertSize (size) { if (typeof size !== 'number') { throw new TypeError('"size" argument must be of type number') } else if (size < 0) { throw new RangeError('The value "' + size + '" is invalid for option "size"') } } function alloc (size, fill, encoding) { assertSize(size) if (size <= 0) { return createBuffer(size) } if (fill !== undefined) { // Only pay attention to encoding if it's a string. This // prevents accidentally sending in a number that would // be interpreted as a start offset. return typeof encoding === 'string' ? createBuffer(size).fill(fill, encoding) : createBuffer(size).fill(fill) } return createBuffer(size) } /** * Creates a new filled Buffer instance. * alloc(size[, fill[, encoding]]) **/ Buffer.alloc = function (size, fill, encoding) { return alloc(size, fill, encoding) } function allocUnsafe (size) { assertSize(size) return createBuffer(size < 0 ? 0 : checked(size) | 0) } /** * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. * */ Buffer.allocUnsafe = function (size) { return allocUnsafe(size) } /** * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. */ Buffer.allocUnsafeSlow = function (size) { return allocUnsafe(size) } function fromString (string, encoding) { if (typeof encoding !== 'string' || encoding === '') { encoding = 'utf8' } if (!Buffer.isEncoding(encoding)) { throw new TypeError('Unknown encoding: ' + encoding) } const length = byteLength(string, encoding) | 0 let buf = createBuffer(length) const actual = buf.write(string, encoding) if (actual !== length) { // Writing a hex string, for example, that contains invalid characters will // cause everything after the first invalid character to be ignored. (e.g. // 'abxxcd' will be treated as 'ab') buf = buf.slice(0, actual) } return buf } function fromArrayLike (array) { const length = array.length < 0 ? 0 : checked(array.length) | 0 const buf = createBuffer(length) for (let i = 0; i < length; i += 1) { buf[i] = array[i] & 255 } return buf } function fromArrayView (arrayView) { if (isInstance(arrayView, Uint8Array)) { const copy = new Uint8Array(arrayView) return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength) } return fromArrayLike(arrayView) } function fromArrayBuffer (array, byteOffset, length) { if (byteOffset < 0 || array.byteLength < byteOffset) { throw new RangeError('"offset" is outside of buffer bounds') } if (array.byteLength < byteOffset + (length || 0)) { throw new RangeError('"length" is outside of buffer bounds') } let buf if (byteOffset === undefined && length === undefined) { buf = new Uint8Array(array) } else if (length === undefined) { buf = new Uint8Array(array, byteOffset) } else { buf = new Uint8Array(array, byteOffset, length) } // Return an augmented `Uint8Array` instance Object.setPrototypeOf(buf, Buffer.prototype) return buf } function fromObject (obj) { if (Buffer.isBuffer(obj)) { const len = checked(obj.length) | 0 const buf = createBuffer(len) if (buf.length === 0) { return buf } obj.copy(buf, 0, 0, len) return buf } if (obj.length !== undefined) { if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) { return createBuffer(0) } return fromArrayLike(obj) } if (obj.type === 'Buffer' && Array.isArray(obj.data)) { return fromArrayLike(obj.data) } } function checked (length) { // Note: cannot use `length < K_MAX_LENGTH` here because that fails when // length is NaN (which is otherwise coerced to zero.) if (length >= K_MAX_LENGTH) { throw new RangeError('Attempt to allocate Buffer larger than maximum ' + 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes') } return length | 0 } function SlowBuffer (length) { if (+length != length) { // eslint-disable-line eqeqeq length = 0 } return Buffer.alloc(+length) } Buffer.isBuffer = function isBuffer (b) { return b != null && b._isBuffer === true && b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false } Buffer.compare = function compare (a, b) { if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength) if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength) if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { throw new TypeError( 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array' ) } if (a === b) return 0 let x = a.length let y = b.length for (let i = 0, len = Math.min(x, y); i < len; ++i) { if (a[i] !== b[i]) { x = a[i] y = b[i] break } } if (x < y) return -1 if (y < x) return 1 return 0 } Buffer.isEncoding = function isEncoding (encoding) { switch (String(encoding).toLowerCase()) { case 'hex': case 'utf8': case 'utf-8': case 'ascii': case 'latin1': case 'binary': case 'base64': case 'ucs2': case 'ucs-2': case 'utf16le': case 'utf-16le': return true default: return false } } Buffer.concat = function concat (list, length) { if (!Array.isArray(list)) { throw new TypeError('"list" argument must be an Array of Buffers') } if (list.length === 0) { return Buffer.alloc(0) } let i if (length === undefined) { length = 0 for (i = 0; i < list.length; ++i) { length += list[i].length } } const buffer = Buffer.allocUnsafe(length) let pos = 0 for (i = 0; i < list.length; ++i) { let buf = list[i] if (isInstance(buf, Uint8Array)) { if (pos + buf.length > buffer.length) { if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf) buf.copy(buffer, pos) } else { Uint8Array.prototype.set.call( buffer, buf, pos ) } } else if (!Buffer.isBuffer(buf)) { throw new TypeError('"list" argument must be an Array of Buffers') } else { buf.copy(buffer, pos) } pos += buf.length } return buffer } function byteLength (string, encoding) { if (Buffer.isBuffer(string)) { return string.length } if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) { return string.byteLength } if (typeof string !== 'string') { throw new TypeError( 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. ' + 'Received type ' + typeof string ) } const len = string.length const mustMatch = (arguments.length > 2 && arguments[2] === true) if (!mustMatch && len === 0) return 0 // Use a for loop to avoid recursion let loweredCase = false for (;;) { switch (encoding) { case 'ascii': case 'latin1': case 'binary': return len case 'utf8': case 'utf-8': return utf8ToBytes(string).length case 'ucs2': case 'ucs-2': case 'utf16le': case 'utf-16le': return len * 2 case 'hex': return len >>> 1 case 'base64': return base64ToBytes(string).length default: if (loweredCase) { return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8 } encoding = ('' + encoding).toLowerCase() loweredCase = true } } } Buffer.byteLength = byteLength function slowToString (encoding, start, end) { let loweredCase = false // No need to verify that "this.length <= MAX_UINT32" since it's a read-only // property of a typed array. // This behaves neither like String nor Uint8Array in that we set start/end // to their upper/lower bounds if the value passed is out of range. // undefined is handled specially as per ECMA-262 6th Edition, // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. if (start === undefined || start < 0) { start = 0 } // Return early if start > this.length. Done here to prevent potential uint32 // coercion fail below. if (start > this.length) { return '' } if (end === undefined || end > this.length) { end = this.length } if (end <= 0) { return '' } // Force coercion to uint32. This will also coerce falsey/NaN values to 0. end >>>= 0 start >>>= 0 if (end <= start) { return '' } if (!encoding) encoding = 'utf8' while (true) { switch (encoding) { case 'hex': return hexSlice(this, start, end) case 'utf8': case 'utf-8': return utf8Slice(this, start, end) case 'ascii': return asciiSlice(this, start, end) case 'latin1': case 'binary': return latin1Slice(this, start, end) case 'base64': return base64Slice(this, start, end) case 'ucs2': case 'ucs-2': case 'utf16le': case 'utf-16le': return utf16leSlice(this, start, end) default: if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) encoding = (encoding + '').toLowerCase() loweredCase = true } } } // This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package) // to detect a Buffer instance. It's not possible to use `instanceof Buffer` // reliably in a browserify context because there could be multiple different // copies of the 'buffer' package in use. This method works even for Buffer // instances that were created from another copy of the `buffer` package. // See: https://github.com/feross/buffer/issues/154 Buffer.prototype._isBuffer = true function swap (b, n, m) { const i = b[n] b[n] = b[m] b[m] = i } Buffer.prototype.swap16 = function swap16 () { const len = this.length if (len % 2 !== 0) { throw new RangeError('Buffer size must be a multiple of 16-bits') } for (let i = 0; i < len; i += 2) { swap(this, i, i + 1) } return this } Buffer.prototype.swap32 = function swap32 () { const len = this.length if (len % 4 !== 0) { throw new RangeError('Buffer size must be a multiple of 32-bits') } for (let i = 0; i < len; i += 4) { swap(this, i, i + 3) swap(this, i + 1, i + 2) } return this } Buffer.prototype.swap64 = function swap64 () { const len = this.length if (len % 8 !== 0) { throw new RangeError('Buffer size must be a multiple of 64-bits') } for (let i = 0; i < len; i += 8) { swap(this, i, i + 7) swap(this, i + 1, i + 6) swap(this, i + 2, i + 5) swap(this, i + 3, i + 4) } return this } Buffer.prototype.toString = function toString () { const length = this.length if (length === 0) return '' if (arguments.length === 0) return utf8Slice(this, 0, length) return slowToString.apply(this, arguments) } Buffer.prototype.toLocaleString = Buffer.prototype.toString Buffer.prototype.equals = function equals (b) { if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') if (this === b) return true return Buffer.compare(this, b) === 0 } Buffer.prototype.inspect = function inspect () { let str = '' const max = exports.INSPECT_MAX_BYTES str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim() if (this.length > max) str += ' ... ' return '' } if (customInspectSymbol) { Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect } Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { if (isInstance(target, Uint8Array)) { target = Buffer.from(target, target.offset, target.byteLength) } if (!Buffer.isBuffer(target)) { throw new TypeError( 'The "target" argument must be one of type Buffer or Uint8Array. ' + 'Received type ' + (typeof target) ) } if (start === undefined) { start = 0 } if (end === undefined) { end = target ? target.length : 0 } if (thisStart === undefined) { thisStart = 0 } if (thisEnd === undefined) { thisEnd = this.length } if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { throw new RangeError('out of range index') } if (thisStart >= thisEnd && start >= end) { return 0 } if (thisStart >= thisEnd) { return -1 } if (start >= end) { return 1 } start >>>= 0 end >>>= 0 thisStart >>>= 0 thisEnd >>>= 0 if (this === target) return 0 let x = thisEnd - thisStart let y = end - start const len = Math.min(x, y) const thisCopy = this.slice(thisStart, thisEnd) const targetCopy = target.slice(start, end) for (let i = 0; i < len; ++i) { if (thisCopy[i] !== targetCopy[i]) { x = thisCopy[i] y = targetCopy[i] break } } if (x < y) return -1 if (y < x) return 1 return 0 } // Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, // OR the last index of `val` in `buffer` at offset <= `byteOffset`. // // Arguments: // - buffer - a Buffer to search // - val - a string, Buffer, or number // - byteOffset - an index into `buffer`; will be clamped to an int32 // - encoding - an optional encoding, relevant is val is a string // - dir - true for indexOf, false for lastIndexOf function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { // Empty buffer means no match if (buffer.length === 0) return -1 // Normalize byteOffset if (typeof byteOffset === 'string') { encoding = byteOffset byteOffset = 0 } else if (byteOffset > 0x7fffffff) { byteOffset = 0x7fffffff } else if (byteOffset < -0x80000000) { byteOffset = -0x80000000 } byteOffset = +byteOffset // Coerce to Number. if (numberIsNaN(byteOffset)) { // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer byteOffset = dir ? 0 : (buffer.length - 1) } // Normalize byteOffset: negative offsets start from the end of the buffer if (byteOffset < 0) byteOffset = buffer.length + byteOffset if (byteOffset >= buffer.length) { if (dir) return -1 else byteOffset = buffer.length - 1 } else if (byteOffset < 0) { if (dir) byteOffset = 0 else return -1 } // Normalize val if (typeof val === 'string') { val = Buffer.from(val, encoding) } // Finally, search either indexOf (if dir is true) or lastIndexOf if (Buffer.isBuffer(val)) { // Special case: looking for empty string/buffer always fails if (val.length === 0) { return -1 } return arrayIndexOf(buffer, val, byteOffset, encoding, dir) } else if (typeof val === 'number') { val = val & 0xFF // Search for a byte value [0-255] if (typeof Uint8Array.prototype.indexOf === 'function') { if (dir) { return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) } else { return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) } } return arrayIndexOf(buffer, [val], byteOffset, encoding, dir) } throw new TypeError('val must be string, number or Buffer') } function arrayIndexOf (arr, val, byteOffset, encoding, dir) { let indexSize = 1 let arrLength = arr.length let valLength = val.length if (encoding !== undefined) { encoding = String(encoding).toLowerCase() if (encoding === 'ucs2' || encoding === 'ucs-2' || encoding === 'utf16le' || encoding === 'utf-16le') { if (arr.length < 2 || val.length < 2) { return -1 } indexSize = 2 arrLength /= 2 valLength /= 2 byteOffset /= 2 } } function read (buf, i) { if (indexSize === 1) { return buf[i] } else { return buf.readUInt16BE(i * indexSize) } } let i if (dir) { let foundIndex = -1 for (i = byteOffset; i < arrLength; i++) { if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { if (foundIndex === -1) foundIndex = i if (i - foundIndex + 1 === valLength) return foundIndex * indexSize } else { if (foundIndex !== -1) i -= i - foundIndex foundIndex = -1 } } } else { if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength for (i = byteOffset; i >= 0; i--) { let found = true for (let j = 0; j < valLength; j++) { if (read(arr, i + j) !== read(val, j)) { found = false break } } if (found) return i } } return -1 } Buffer.prototype.includes = function includes (val, byteOffset, encoding) { return this.indexOf(val, byteOffset, encoding) !== -1 } Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { return bidirectionalIndexOf(this, val, byteOffset, encoding, true) } Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { return bidirectionalIndexOf(this, val, byteOffset, encoding, false) } function hexWrite (buf, string, offset, length) { offset = Number(offset) || 0 const remaining = buf.length - offset if (!length) { length = remaining } else { length = Number(length) if (length > remaining) { length = remaining } } const strLen = string.length if (length > strLen / 2) { length = strLen / 2 } let i for (i = 0; i < length; ++i) { const parsed = parseInt(string.substr(i * 2, 2), 16) if (numberIsNaN(parsed)) return i buf[offset + i] = parsed } return i } function utf8Write (buf, string, offset, length) { return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) } function asciiWrite (buf, string, offset, length) { return blitBuffer(asciiToBytes(string), buf, offset, length) } function base64Write (buf, string, offset, length) { return blitBuffer(base64ToBytes(string), buf, offset, length) } function ucs2Write (buf, string, offset, length) { return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) } Buffer.prototype.write = function write (string, offset, length, encoding) { // Buffer#write(string) if (offset === undefined) { encoding = 'utf8' length = this.length offset = 0 // Buffer#write(string, encoding) } else if (length === undefined && typeof offset === 'string') { encoding = offset length = this.length offset = 0 // Buffer#write(string, offset[, length][, encoding]) } else if (isFinite(offset)) { offset = offset >>> 0 if (isFinite(length)) { length = length >>> 0 if (encoding === undefined) encoding = 'utf8' } else { encoding = length length = undefined } } else { throw new Error( 'Buffer.write(string, encoding, offset[, length]) is no longer supported' ) } const remaining = this.length - offset if (length === undefined || length > remaining) length = remaining if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { throw new RangeError('Attempt to write outside buffer bounds') } if (!encoding) encoding = 'utf8' let loweredCase = false for (;;) { switch (encoding) { case 'hex': return hexWrite(this, string, offset, length) case 'utf8': case 'utf-8': return utf8Write(this, string, offset, length) case 'ascii': case 'latin1': case 'binary': return asciiWrite(this, string, offset, length) case 'base64': // Warning: maxLength not taken into account in base64Write return base64Write(this, string, offset, length) case 'ucs2': case 'ucs-2': case 'utf16le': case 'utf-16le': return ucs2Write(this, string, offset, length) default: if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) encoding = ('' + encoding).toLowerCase() loweredCase = true } } } Buffer.prototype.toJSON = function toJSON () { return { type: 'Buffer', data: Array.prototype.slice.call(this._arr || this, 0) } } function base64Slice (buf, start, end) { if (start === 0 && end === buf.length) { return base64.fromByteArray(buf) } else { return base64.fromByteArray(buf.slice(start, end)) } } function utf8Slice (buf, start, end) { end = Math.min(buf.length, end) const res = [] let i = start while (i < end) { const firstByte = buf[i] let codePoint = null let bytesPerSequence = (firstByte > 0xEF) ? 4 : (firstByte > 0xDF) ? 3 : (firstByte > 0xBF) ? 2 : 1 if (i + bytesPerSequence <= end) { let secondByte, thirdByte, fourthByte, tempCodePoint switch (bytesPerSequence) { case 1: if (firstByte < 0x80) { codePoint = firstByte } break case 2: secondByte = buf[i + 1] if ((secondByte & 0xC0) === 0x80) { tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) if (tempCodePoint > 0x7F) { codePoint = tempCodePoint } } break case 3: secondByte = buf[i + 1] thirdByte = buf[i + 2] if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { codePoint = tempCodePoint } } break case 4: secondByte = buf[i + 1] thirdByte = buf[i + 2] fourthByte = buf[i + 3] if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { codePoint = tempCodePoint } } } } if (codePoint === null) { // we did not generate a valid codePoint so insert a // replacement char (U+FFFD) and advance only 1 byte codePoint = 0xFFFD bytesPerSequence = 1 } else if (codePoint > 0xFFFF) { // encode to utf16 (surrogate pair dance) codePoint -= 0x10000 res.push(codePoint >>> 10 & 0x3FF | 0xD800) codePoint = 0xDC00 | codePoint & 0x3FF } res.push(codePoint) i += bytesPerSequence } return decodeCodePointsArray(res) } // Based on http://stackoverflow.com/a/22747272/680742, the browser with // the lowest limit is Chrome, with 0x10000 args. // We go 1 magnitude less, for safety const MAX_ARGUMENTS_LENGTH = 0x1000 function decodeCodePointsArray (codePoints) { const len = codePoints.length if (len <= MAX_ARGUMENTS_LENGTH) { return String.fromCharCode.apply(String, codePoints) // avoid extra slice() } // Decode in chunks to avoid "call stack size exceeded". let res = '' let i = 0 while (i < len) { res += String.fromCharCode.apply( String, codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) ) } return res } function asciiSlice (buf, start, end) { let ret = '' end = Math.min(buf.length, end) for (let i = start; i < end; ++i) { ret += String.fromCharCode(buf[i] & 0x7F) } return ret } function latin1Slice (buf, start, end) { let ret = '' end = Math.min(buf.length, end) for (let i = start; i < end; ++i) { ret += String.fromCharCode(buf[i]) } return ret } function hexSlice (buf, start, end) { const len = buf.length if (!start || start < 0) start = 0 if (!end || end < 0 || end > len) end = len let out = '' for (let i = start; i < end; ++i) { out += hexSliceLookupTable[buf[i]] } return out } function utf16leSlice (buf, start, end) { const bytes = buf.slice(start, end) let res = '' // If bytes.length is odd, the last 8 bits must be ignored (same as node.js) for (let i = 0; i < bytes.length - 1; i += 2) { res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256)) } return res } Buffer.prototype.slice = function slice (start, end) { const len = this.length start = ~~start end = end === undefined ? len : ~~end if (start < 0) { start += len if (start < 0) start = 0 } else if (start > len) { start = len } if (end < 0) { end += len if (end < 0) end = 0 } else if (end > len) { end = len } if (end < start) end = start const newBuf = this.subarray(start, end) // Return an augmented `Uint8Array` instance Object.setPrototypeOf(newBuf, Buffer.prototype) return newBuf } /* * Need to make sure that buffer isn't trying to write out of bounds. */ function checkOffset (offset, ext, length) { if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') } Buffer.prototype.readUintLE = Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { offset = offset >>> 0 byteLength = byteLength >>> 0 if (!noAssert) checkOffset(offset, byteLength, this.length) let val = this[offset] let mul = 1 let i = 0 while (++i < byteLength && (mul *= 0x100)) { val += this[offset + i] * mul } return val } Buffer.prototype.readUintBE = Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { offset = offset >>> 0 byteLength = byteLength >>> 0 if (!noAssert) { checkOffset(offset, byteLength, this.length) } let val = this[offset + --byteLength] let mul = 1 while (byteLength > 0 && (mul *= 0x100)) { val += this[offset + --byteLength] * mul } return val } Buffer.prototype.readUint8 = Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 1, this.length) return this[offset] } Buffer.prototype.readUint16LE = Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 2, this.length) return this[offset] | (this[offset + 1] << 8) } Buffer.prototype.readUint16BE = Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 2, this.length) return (this[offset] << 8) | this[offset + 1] } Buffer.prototype.readUint32LE = Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 4, this.length) return ((this[offset]) | (this[offset + 1] << 8) | (this[offset + 2] << 16)) + (this[offset + 3] * 0x1000000) } Buffer.prototype.readUint32BE = Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 4, this.length) return (this[offset] * 0x1000000) + ((this[offset + 1] << 16) | (this[offset + 2] << 8) | this[offset + 3]) } Buffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) { offset = offset >>> 0 validateNumber(offset, 'offset') const first = this[offset] const last = this[offset + 7] if (first === undefined || last === undefined) { boundsError(offset, this.length - 8) } const lo = first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24 const hi = this[++offset] + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + last * 2 ** 24 return BigInt(lo) + (BigInt(hi) << BigInt(32)) }) Buffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) { offset = offset >>> 0 validateNumber(offset, 'offset') const first = this[offset] const last = this[offset + 7] if (first === undefined || last === undefined) { boundsError(offset, this.length - 8) } const hi = first * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset] const lo = this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last return (BigInt(hi) << BigInt(32)) + BigInt(lo) }) Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { offset = offset >>> 0 byteLength = byteLength >>> 0 if (!noAssert) checkOffset(offset, byteLength, this.length) let val = this[offset] let mul = 1 let i = 0 while (++i < byteLength && (mul *= 0x100)) { val += this[offset + i] * mul } mul *= 0x80 if (val >= mul) val -= Math.pow(2, 8 * byteLength) return val } Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { offset = offset >>> 0 byteLength = byteLength >>> 0 if (!noAssert) checkOffset(offset, byteLength, this.length) let i = byteLength let mul = 1 let val = this[offset + --i] while (i > 0 && (mul *= 0x100)) { val += this[offset + --i] * mul } mul *= 0x80 if (val >= mul) val -= Math.pow(2, 8 * byteLength) return val } Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 1, this.length) if (!(this[offset] & 0x80)) return (this[offset]) return ((0xff - this[offset] + 1) * -1) } Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 2, this.length) const val = this[offset] | (this[offset + 1] << 8) return (val & 0x8000) ? val | 0xFFFF0000 : val } Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 2, this.length) const val = this[offset + 1] | (this[offset] << 8) return (val & 0x8000) ? val | 0xFFFF0000 : val } Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 4, this.length) return (this[offset]) | (this[offset + 1] << 8) | (this[offset + 2] << 16) | (this[offset + 3] << 24) } Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 4, this.length) return (this[offset] << 24) | (this[offset + 1] << 16) | (this[offset + 2] << 8) | (this[offset + 3]) } Buffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) { offset = offset >>> 0 validateNumber(offset, 'offset') const first = this[offset] const last = this[offset + 7] if (first === undefined || last === undefined) { boundsError(offset, this.length - 8) } const val = this[offset + 4] + this[offset + 5] * 2 ** 8 + this[offset + 6] * 2 ** 16 + (last << 24) // Overflow return (BigInt(val) << BigInt(32)) + BigInt(first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24) }) Buffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) { offset = offset >>> 0 validateNumber(offset, 'offset') const first = this[offset] const last = this[offset + 7] if (first === undefined || last === undefined) { boundsError(offset, this.length - 8) } const val = (first << 24) + // Overflow this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset] return (BigInt(val) << BigInt(32)) + BigInt(this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last) }) Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 4, this.length) return ieee754.read(this, offset, true, 23, 4) } Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 4, this.length) return ieee754.read(this, offset, false, 23, 4) } Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 8, this.length) return ieee754.read(this, offset, true, 52, 8) } Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { offset = offset >>> 0 if (!noAssert) checkOffset(offset, 8, this.length) return ieee754.read(this, offset, false, 52, 8) } function checkInt (buf, value, offset, ext, max, min) { if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') if (offset + ext > buf.length) throw new RangeError('Index out of range') } Buffer.prototype.writeUintLE = Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { value = +value offset = offset >>> 0 byteLength = byteLength >>> 0 if (!noAssert) { const maxBytes = Math.pow(2, 8 * byteLength) - 1 checkInt(this, value, offset, byteLength, maxBytes, 0) } let mul = 1 let i = 0 this[offset] = value & 0xFF while (++i < byteLength && (mul *= 0x100)) { this[offset + i] = (value / mul) & 0xFF } return offset + byteLength } Buffer.prototype.writeUintBE = Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { value = +value offset = offset >>> 0 byteLength = byteLength >>> 0 if (!noAssert) { const maxBytes = Math.pow(2, 8 * byteLength) - 1 checkInt(this, value, offset, byteLength, maxBytes, 0) } let i = byteLength - 1 let mul = 1 this[offset + i] = value & 0xFF while (--i >= 0 && (mul *= 0x100)) { this[offset + i] = (value / mul) & 0xFF } return offset + byteLength } Buffer.prototype.writeUint8 = Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) this[offset] = (value & 0xff) return offset + 1 } Buffer.prototype.writeUint16LE = Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) this[offset] = (value & 0xff) this[offset + 1] = (value >>> 8) return offset + 2 } Buffer.prototype.writeUint16BE = Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) this[offset] = (value >>> 8) this[offset + 1] = (value & 0xff) return offset + 2 } Buffer.prototype.writeUint32LE = Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) this[offset + 3] = (value >>> 24) this[offset + 2] = (value >>> 16) this[offset + 1] = (value >>> 8) this[offset] = (value & 0xff) return offset + 4 } Buffer.prototype.writeUint32BE = Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) this[offset] = (value >>> 24) this[offset + 1] = (value >>> 16) this[offset + 2] = (value >>> 8) this[offset + 3] = (value & 0xff) return offset + 4 } function wrtBigUInt64LE (buf, value, offset, min, max) { checkIntBI(value, min, max, buf, offset, 7) let lo = Number(value & BigInt(0xffffffff)) buf[offset++] = lo lo = lo >> 8 buf[offset++] = lo lo = lo >> 8 buf[offset++] = lo lo = lo >> 8 buf[offset++] = lo let hi = Number(value >> BigInt(32) & BigInt(0xffffffff)) buf[offset++] = hi hi = hi >> 8 buf[offset++] = hi hi = hi >> 8 buf[offset++] = hi hi = hi >> 8 buf[offset++] = hi return offset } function wrtBigUInt64BE (buf, value, offset, min, max) { checkIntBI(value, min, max, buf, offset, 7) let lo = Number(value & BigInt(0xffffffff)) buf[offset + 7] = lo lo = lo >> 8 buf[offset + 6] = lo lo = lo >> 8 buf[offset + 5] = lo lo = lo >> 8 buf[offset + 4] = lo let hi = Number(value >> BigInt(32) & BigInt(0xffffffff)) buf[offset + 3] = hi hi = hi >> 8 buf[offset + 2] = hi hi = hi >> 8 buf[offset + 1] = hi hi = hi >> 8 buf[offset] = hi return offset + 8 } Buffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) { return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff')) }) Buffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) { return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff')) }) Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) { const limit = Math.pow(2, (8 * byteLength) - 1) checkInt(this, value, offset, byteLength, limit - 1, -limit) } let i = 0 let mul = 1 let sub = 0 this[offset] = value & 0xFF while (++i < byteLength && (mul *= 0x100)) { if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { sub = 1 } this[offset + i] = ((value / mul) >> 0) - sub & 0xFF } return offset + byteLength } Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) { const limit = Math.pow(2, (8 * byteLength) - 1) checkInt(this, value, offset, byteLength, limit - 1, -limit) } let i = byteLength - 1 let mul = 1 let sub = 0 this[offset + i] = value & 0xFF while (--i >= 0 && (mul *= 0x100)) { if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { sub = 1 } this[offset + i] = ((value / mul) >> 0) - sub & 0xFF } return offset + byteLength } Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) if (value < 0) value = 0xff + value + 1 this[offset] = (value & 0xff) return offset + 1 } Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) this[offset] = (value & 0xff) this[offset + 1] = (value >>> 8) return offset + 2 } Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) this[offset] = (value >>> 8) this[offset + 1] = (value & 0xff) return offset + 2 } Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) this[offset] = (value & 0xff) this[offset + 1] = (value >>> 8) this[offset + 2] = (value >>> 16) this[offset + 3] = (value >>> 24) return offset + 4 } Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) if (value < 0) value = 0xffffffff + value + 1 this[offset] = (value >>> 24) this[offset + 1] = (value >>> 16) this[offset + 2] = (value >>> 8) this[offset + 3] = (value & 0xff) return offset + 4 } Buffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) { return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff')) }) Buffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) { return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff')) }) function checkIEEE754 (buf, value, offset, ext, max, min) { if (offset + ext > buf.length) throw new RangeError('Index out of range') if (offset < 0) throw new RangeError('Index out of range') } function writeFloat (buf, value, offset, littleEndian, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) { checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) } ieee754.write(buf, value, offset, littleEndian, 23, 4) return offset + 4 } Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { return writeFloat(this, value, offset, true, noAssert) } Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { return writeFloat(this, value, offset, false, noAssert) } function writeDouble (buf, value, offset, littleEndian, noAssert) { value = +value offset = offset >>> 0 if (!noAssert) { checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) } ieee754.write(buf, value, offset, littleEndian, 52, 8) return offset + 8 } Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { return writeDouble(this, value, offset, true, noAssert) } Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { return writeDouble(this, value, offset, false, noAssert) } // copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) Buffer.prototype.copy = function copy (target, targetStart, start, end) { if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer') if (!start) start = 0 if (!end && end !== 0) end = this.length if (targetStart >= target.length) targetStart = target.length if (!targetStart) targetStart = 0 if (end > 0 && end < start) end = start // Copy 0 bytes; we're done if (end === start) return 0 if (target.length === 0 || this.length === 0) return 0 // Fatal error conditions if (targetStart < 0) { throw new RangeError('targetStart out of bounds') } if (start < 0 || start >= this.length) throw new RangeError('Index out of range') if (end < 0) throw new RangeError('sourceEnd out of bounds') // Are we oob? if (end > this.length) end = this.length if (target.length - targetStart < end - start) { end = target.length - targetStart + start } const len = end - start if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') { // Use built-in when available, missing from IE11 this.copyWithin(targetStart, start, end) } else { Uint8Array.prototype.set.call( target, this.subarray(start, end), targetStart ) } return len } // Usage: // buffer.fill(number[, offset[, end]]) // buffer.fill(buffer[, offset[, end]]) // buffer.fill(string[, offset[, end]][, encoding]) Buffer.prototype.fill = function fill (val, start, end, encoding) { // Handle string cases: if (typeof val === 'string') { if (typeof start === 'string') { encoding = start start = 0 end = this.length } else if (typeof end === 'string') { encoding = end end = this.length } if (encoding !== undefined && typeof encoding !== 'string') { throw new TypeError('encoding must be a string') } if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { throw new TypeError('Unknown encoding: ' + encoding) } if (val.length === 1) { const code = val.charCodeAt(0) if ((encoding === 'utf8' && code < 128) || encoding === 'latin1') { // Fast path: If `val` fits into a single byte, use that numeric value. val = code } } } else if (typeof val === 'number') { val = val & 255 } else if (typeof val === 'boolean') { val = Number(val) } // Invalid ranges are not set to a default, so can range check early. if (start < 0 || this.length < start || this.length < end) { throw new RangeError('Out of range index') } if (end <= start) { return this } start = start >>> 0 end = end === undefined ? this.length : end >>> 0 if (!val) val = 0 let i if (typeof val === 'number') { for (i = start; i < end; ++i) { this[i] = val } } else { const bytes = Buffer.isBuffer(val) ? val : Buffer.from(val, encoding) const len = bytes.length if (len === 0) { throw new TypeError('The value "' + val + '" is invalid for argument "value"') } for (i = 0; i < end - start; ++i) { this[i + start] = bytes[i % len] } } return this } // CUSTOM ERRORS // ============= // Simplified versions from Node, changed for Buffer-only usage const errors = {} function E (sym, getMessage, Base) { errors[sym] = class NodeError extends Base { constructor () { super() Object.defineProperty(this, 'message', { value: getMessage.apply(this, arguments), writable: true, configurable: true }) // Add the error code to the name to include it in the stack trace. this.name = `${this.name} [${sym}]` // Access the stack to generate the error message including the error code // from the name. this.stack // eslint-disable-line no-unused-expressions // Reset the name to the actual name. delete this.name } get code () { return sym } set code (value) { Object.defineProperty(this, 'code', { configurable: true, enumerable: true, value, writable: true }) } toString () { return `${this.name} [${sym}]: ${this.message}` } } } E('ERR_BUFFER_OUT_OF_BOUNDS', function (name) { if (name) { return `${name} is outside of buffer bounds` } return 'Attempt to access memory outside buffer bounds' }, RangeError) E('ERR_INVALID_ARG_TYPE', function (name, actual) { return `The "${name}" argument must be of type number. Received type ${typeof actual}` }, TypeError) E('ERR_OUT_OF_RANGE', function (str, range, input) { let msg = `The value of "${str}" is out of range.` let received = input if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) { received = addNumericalSeparator(String(input)) } else if (typeof input === 'bigint') { received = String(input) if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) { received = addNumericalSeparator(received) } received += 'n' } msg += ` It must be ${range}. Received ${received}` return msg }, RangeError) function addNumericalSeparator (val) { let res = '' let i = val.length const start = val[0] === '-' ? 1 : 0 for (; i >= start + 4; i -= 3) { res = `_${val.slice(i - 3, i)}${res}` } return `${val.slice(0, i)}${res}` } // CHECK FUNCTIONS // =============== function checkBounds (buf, offset, byteLength) { validateNumber(offset, 'offset') if (buf[offset] === undefined || buf[offset + byteLength] === undefined) { boundsError(offset, buf.length - (byteLength + 1)) } } function checkIntBI (value, min, max, buf, offset, byteLength) { if (value > max || value < min) { const n = typeof min === 'bigint' ? 'n' : '' let range if (byteLength > 3) { if (min === 0 || min === BigInt(0)) { range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}` } else { range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` + `${(byteLength + 1) * 8 - 1}${n}` } } else { range = `>= ${min}${n} and <= ${max}${n}` } throw new errors.ERR_OUT_OF_RANGE('value', range, value) } checkBounds(buf, offset, byteLength) } function validateNumber (value, name) { if (typeof value !== 'number') { throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value) } } function boundsError (value, length, type) { if (Math.floor(value) !== value) { validateNumber(value, type) throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value) } if (length < 0) { throw new errors.ERR_BUFFER_OUT_OF_BOUNDS() } throw new errors.ERR_OUT_OF_RANGE(type || 'offset', `>= ${type ? 1 : 0} and <= ${length}`, value) } // HELPER FUNCTIONS // ================ const INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g function base64clean (str) { // Node takes equal signs as end of the Base64 encoding str = str.split('=')[0] // Node strips out invalid characters like \n and \t from the string, base64-js does not str = str.trim().replace(INVALID_BASE64_RE, '') // Node converts strings with length < 2 to '' if (str.length < 2) return '' // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not while (str.length % 4 !== 0) { str = str + '=' } return str } function utf8ToBytes (string, units) { units = units || Infinity let codePoint const length = string.length let leadSurrogate = null const bytes = [] for (let i = 0; i < length; ++i) { codePoint = string.charCodeAt(i) // is surrogate component if (codePoint > 0xD7FF && codePoint < 0xE000) { // last char was a lead if (!leadSurrogate) { // no lead yet if (codePoint > 0xDBFF) { // unexpected trail if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) continue } else if (i + 1 === length) { // unpaired lead if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) continue } // valid lead leadSurrogate = codePoint continue } // 2 leads in a row if (codePoint < 0xDC00) { if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) leadSurrogate = codePoint continue } // valid surrogate pair codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 } else if (leadSurrogate) { // valid bmp char, but last char was a lead if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) } leadSurrogate = null // encode utf8 if (codePoint < 0x80) { if ((units -= 1) < 0) break bytes.push(codePoint) } else if (codePoint < 0x800) { if ((units -= 2) < 0) break bytes.push( codePoint >> 0x6 | 0xC0, codePoint & 0x3F | 0x80 ) } else if (codePoint < 0x10000) { if ((units -= 3) < 0) break bytes.push( codePoint >> 0xC | 0xE0, codePoint >> 0x6 & 0x3F | 0x80, codePoint & 0x3F | 0x80 ) } else if (codePoint < 0x110000) { if ((units -= 4) < 0) break bytes.push( codePoint >> 0x12 | 0xF0, codePoint >> 0xC & 0x3F | 0x80, codePoint >> 0x6 & 0x3F | 0x80, codePoint & 0x3F | 0x80 ) } else { throw new Error('Invalid code point') } } return bytes } function asciiToBytes (str) { const byteArray = [] for (let i = 0; i < str.length; ++i) { // Node's code seems to be doing this and not & 0x7F.. byteArray.push(str.charCodeAt(i) & 0xFF) } return byteArray } function utf16leToBytes (str, units) { let c, hi, lo const byteArray = [] for (let i = 0; i < str.length; ++i) { if ((units -= 2) < 0) break c = str.charCodeAt(i) hi = c >> 8 lo = c % 256 byteArray.push(lo) byteArray.push(hi) } return byteArray } function base64ToBytes (str) { return base64.toByteArray(base64clean(str)) } function blitBuffer (src, dst, offset, length) { let i for (i = 0; i < length; ++i) { if ((i + offset >= dst.length) || (i >= src.length)) break dst[i + offset] = src[i] } return i } // ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass // the `instanceof` check but they should be treated as of that type. // See: https://github.com/feross/buffer/issues/166 function isInstance (obj, type) { return obj instanceof type || (obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type.name) } function numberIsNaN (obj) { // For IE11 support return obj !== obj // eslint-disable-line no-self-compare } // Create lookup table for `toString('hex')` // See: https://github.com/feross/buffer/issues/219 const hexSliceLookupTable = (function () { const alphabet = '0123456789abcdef' const table = new Array(256) for (let i = 0; i < 16; ++i) { const i16 = i * 16 for (let j = 0; j < 16; ++j) { table[i16 + j] = alphabet[i] + alphabet[j] } } return table })() // Return not function with Error if BigInt not supported function defineBigIntMethod (fn) { return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn } function BufferBigIntNotDefined () { throw new Error('BigInt not supported') } /***/ }), /***/ "./node_modules/cancelable-promise/umd/CancelablePromise.js": /*!******************************************************************!*\ !*** ./node_modules/cancelable-promise/umd/CancelablePromise.js ***! \******************************************************************/ /***/ (function(module, exports) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } (function (global, factory) { if (true) { !(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else { var mod; } })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) { "use strict"; Object.defineProperty(_exports, "__esModule", { value: true }); _exports.CancelablePromise = void 0; _exports.cancelable = cancelable; _exports.default = void 0; _exports.isCancelablePromise = isCancelablePromise; function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); } function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); } function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); } function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } } function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); } function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; } function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; } function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); } function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } } var toStringTag = typeof Symbol !== 'undefined' ? Symbol.toStringTag : '@@toStringTag'; var _internals = /*#__PURE__*/new WeakMap(); var _promise = /*#__PURE__*/new WeakMap(); var CancelablePromiseInternal = /*#__PURE__*/function () { function CancelablePromiseInternal(_ref) { var _ref$executor = _ref.executor, executor = _ref$executor === void 0 ? function () {} : _ref$executor, _ref$internals = _ref.internals, internals = _ref$internals === void 0 ? defaultInternals() : _ref$internals, _ref$promise = _ref.promise, promise = _ref$promise === void 0 ? new Promise(function (resolve, reject) { return executor(resolve, reject, function (onCancel) { internals.onCancelList.push(onCancel); }); }) : _ref$promise; _classCallCheck(this, CancelablePromiseInternal); _classPrivateFieldInitSpec(this, _internals, { writable: true, value: void 0 }); _classPrivateFieldInitSpec(this, _promise, { writable: true, value: void 0 }); _defineProperty(this, toStringTag, 'CancelablePromise'); this.cancel = this.cancel.bind(this); _classPrivateFieldSet(this, _internals, internals); _classPrivateFieldSet(this, _promise, promise || new Promise(function (resolve, reject) { return executor(resolve, reject, function (onCancel) { internals.onCancelList.push(onCancel); }); })); } _createClass(CancelablePromiseInternal, [{ key: "then", value: function then(onfulfilled, onrejected) { return makeCancelable(_classPrivateFieldGet(this, _promise).then(createCallback(onfulfilled, _classPrivateFieldGet(this, _internals)), createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals)); } }, { key: "catch", value: function _catch(onrejected) { return makeCancelable(_classPrivateFieldGet(this, _promise).catch(createCallback(onrejected, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals)); } }, { key: "finally", value: function _finally(onfinally, runWhenCanceled) { var _this = this; if (runWhenCanceled) { _classPrivateFieldGet(this, _internals).onCancelList.push(onfinally); } return makeCancelable(_classPrivateFieldGet(this, _promise).finally(createCallback(function () { if (onfinally) { if (runWhenCanceled) { _classPrivateFieldGet(_this, _internals).onCancelList = _classPrivateFieldGet(_this, _internals).onCancelList.filter(function (callback) { return callback !== onfinally; }); } return onfinally(); } }, _classPrivateFieldGet(this, _internals))), _classPrivateFieldGet(this, _internals)); } }, { key: "cancel", value: function cancel() { _classPrivateFieldGet(this, _internals).isCanceled = true; var callbacks = _classPrivateFieldGet(this, _internals).onCancelList; _classPrivateFieldGet(this, _internals).onCancelList = []; var _iterator = _createForOfIteratorHelper(callbacks), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var callback = _step.value; if (typeof callback === 'function') { try { callback(); } catch (err) { console.error(err); } } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } } }, { key: "isCanceled", value: function isCanceled() { return _classPrivateFieldGet(this, _internals).isCanceled === true; } }]); return CancelablePromiseInternal; }(); var CancelablePromise = /*#__PURE__*/function (_CancelablePromiseInt) { _inherits(CancelablePromise, _CancelablePromiseInt); var _super = _createSuper(CancelablePromise); function CancelablePromise(executor) { _classCallCheck(this, CancelablePromise); return _super.call(this, { executor: executor }); } return _createClass(CancelablePromise); }(CancelablePromiseInternal); _exports.CancelablePromise = CancelablePromise; _defineProperty(CancelablePromise, "all", function all(iterable) { return makeAllCancelable(iterable, Promise.all(iterable)); }); _defineProperty(CancelablePromise, "allSettled", function allSettled(iterable) { return makeAllCancelable(iterable, Promise.allSettled(iterable)); }); _defineProperty(CancelablePromise, "any", function any(iterable) { return makeAllCancelable(iterable, Promise.any(iterable)); }); _defineProperty(CancelablePromise, "race", function race(iterable) { return makeAllCancelable(iterable, Promise.race(iterable)); }); _defineProperty(CancelablePromise, "resolve", function resolve(value) { return cancelable(Promise.resolve(value)); }); _defineProperty(CancelablePromise, "reject", function reject(reason) { return cancelable(Promise.reject(reason)); }); _defineProperty(CancelablePromise, "isCancelable", isCancelablePromise); var _default = CancelablePromise; _exports.default = _default; function cancelable(promise) { return makeCancelable(promise, defaultInternals()); } function isCancelablePromise(promise) { return promise instanceof CancelablePromise || promise instanceof CancelablePromiseInternal; } function createCallback(onResult, internals) { if (onResult) { return function (arg) { if (!internals.isCanceled) { var result = onResult(arg); if (isCancelablePromise(result)) { internals.onCancelList.push(result.cancel); } return result; } return arg; }; } } function makeCancelable(promise, internals) { return new CancelablePromiseInternal({ internals: internals, promise: promise }); } function makeAllCancelable(iterable, promise) { var internals = defaultInternals(); internals.onCancelList.push(function () { var _iterator2 = _createForOfIteratorHelper(iterable), _step2; try { for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { var resolvable = _step2.value; if (isCancelablePromise(resolvable)) { resolvable.cancel(); } } } catch (err) { _iterator2.e(err); } finally { _iterator2.f(); } }); return new CancelablePromiseInternal({ internals: internals, promise: promise }); } function defaultInternals() { return { isCanceled: false, onCancelList: [] }; } }); //# sourceMappingURL=CancelablePromise.js.map /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionButton-CNq6xIdS.css": /*!*******************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionButton-CNq6xIdS.css ***! \*******************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-dba65098] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } /** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ li.action.active[data-v-dba65098] { background-color: var(--color-background-hover); border-radius: 6px; padding: 0; } .action--disabled[data-v-dba65098] { pointer-events: none; opacity: 0.5; } .action--disabled[data-v-dba65098]:hover, .action--disabled[data-v-dba65098]:focus { cursor: default; opacity: 0.5; } .action--disabled *[data-v-dba65098] { opacity: 1 !important; } .action-button[data-v-dba65098] { display: flex; align-items: flex-start; width: 100%; height: auto; margin: 0; padding: 0; padding-right: calc((var(--default-clickable-area) - 16px) / 2); box-sizing: border-box; cursor: pointer; white-space: nowrap; color: var(--color-main-text); border: 0; border-radius: 0; background-color: transparent; box-shadow: none; font-weight: normal; font-size: var(--default-font-size); line-height: var(--default-clickable-area); } .action-button > span[data-v-dba65098] { cursor: pointer; white-space: nowrap; } .action-button__icon[data-v-dba65098] { width: var(--default-clickable-area); height: var(--default-clickable-area); opacity: 1; background-position: calc((var(--default-clickable-area) - 16px) / 2) center; background-size: 16px; background-repeat: no-repeat; } .action-button[data-v-dba65098] .material-design-icon { width: var(--default-clickable-area); height: var(--default-clickable-area); opacity: 1; } .action-button[data-v-dba65098] .material-design-icon .material-design-icon__svg { vertical-align: middle; } .action-button__longtext-wrapper[data-v-dba65098], .action-button__longtext[data-v-dba65098] { max-width: 220px; line-height: 1.6em; padding: calc((var(--default-clickable-area) - 1.6em) / 2) 0; cursor: pointer; text-align: start; overflow: hidden; text-overflow: ellipsis; } .action-button__longtext[data-v-dba65098] { cursor: pointer; white-space: pre-wrap !important; } .action-button__name[data-v-dba65098] { font-weight: bold; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; max-width: 100%; display: inline-block; } .action-button__menu-icon[data-v-dba65098] { margin-left: auto; margin-right: calc((var(--default-clickable-area) - 16px) / 2 * -1); } .action-button__pressed-icon[data-v-dba65098] { margin-left: auto; margin-right: calc((var(--default-clickable-area) - 16px) / 2 * -1); }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionLink-CC6a7Hsf.css": /*!*****************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionLink-CC6a7Hsf.css ***! \*****************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-30c015f0] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } /** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ li.action.active[data-v-30c015f0] { background-color: var(--color-background-hover); border-radius: 6px; padding: 0; } .action-link[data-v-30c015f0] { display: flex; align-items: flex-start; width: 100%; height: auto; margin: 0; padding: 0; padding-right: calc((var(--default-clickable-area) - 16px) / 2); box-sizing: border-box; cursor: pointer; white-space: nowrap; color: var(--color-main-text); border: 0; border-radius: 0; background-color: transparent; box-shadow: none; font-weight: normal; font-size: var(--default-font-size); line-height: var(--default-clickable-area); } .action-link > span[data-v-30c015f0] { cursor: pointer; white-space: nowrap; } .action-link__icon[data-v-30c015f0] { width: var(--default-clickable-area); height: var(--default-clickable-area); opacity: 1; background-position: calc((var(--default-clickable-area) - 16px) / 2) center; background-size: 16px; background-repeat: no-repeat; } .action-link[data-v-30c015f0] .material-design-icon { width: var(--default-clickable-area); height: var(--default-clickable-area); opacity: 1; } .action-link[data-v-30c015f0] .material-design-icon .material-design-icon__svg { vertical-align: middle; } .action-link__longtext-wrapper[data-v-30c015f0], .action-link__longtext[data-v-30c015f0] { max-width: 220px; line-height: 1.6em; padding: calc((var(--default-clickable-area) - 1.6em) / 2) 0; cursor: pointer; text-align: start; overflow: hidden; text-overflow: ellipsis; } .action-link__longtext[data-v-30c015f0] { cursor: pointer; white-space: pre-wrap !important; } .action-link__name[data-v-30c015f0] { font-weight: bold; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; max-width: 100%; display: inline-block; } .action-link__menu-icon[data-v-30c015f0] { margin-left: auto; margin-right: calc((var(--default-clickable-area) - 16px) / 2 * -1); }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionRouter-CsIBHw6E.css": /*!*******************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionRouter-CsIBHw6E.css ***! \*******************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-579c6b4d] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } /** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ li.action.active[data-v-579c6b4d] { background-color: var(--color-background-hover); border-radius: 6px; padding: 0; } .action-router[data-v-579c6b4d] { display: flex; align-items: flex-start; width: 100%; height: auto; margin: 0; padding: 0; padding-right: calc((var(--default-clickable-area) - 16px) / 2); box-sizing: border-box; cursor: pointer; white-space: nowrap; color: var(--color-main-text); border: 0; border-radius: 0; background-color: transparent; box-shadow: none; font-weight: normal; font-size: var(--default-font-size); line-height: var(--default-clickable-area); } .action-router > span[data-v-579c6b4d] { cursor: pointer; white-space: nowrap; } .action-router__icon[data-v-579c6b4d] { width: var(--default-clickable-area); height: var(--default-clickable-area); opacity: 1; background-position: calc((var(--default-clickable-area) - 16px) / 2) center; background-size: 16px; background-repeat: no-repeat; } .action-router[data-v-579c6b4d] .material-design-icon { width: var(--default-clickable-area); height: var(--default-clickable-area); opacity: 1; } .action-router[data-v-579c6b4d] .material-design-icon .material-design-icon__svg { vertical-align: middle; } .action-router__longtext-wrapper[data-v-579c6b4d], .action-router__longtext[data-v-579c6b4d] { max-width: 220px; line-height: 1.6em; padding: calc((var(--default-clickable-area) - 1.6em) / 2) 0; cursor: pointer; text-align: start; overflow: hidden; text-overflow: ellipsis; } .action-router__longtext[data-v-579c6b4d] { cursor: pointer; white-space: pre-wrap !important; } .action-router__name[data-v-579c6b4d] { font-weight: bold; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; max-width: 100%; display: inline-block; } .action-router__menu-icon[data-v-579c6b4d] { margin-left: auto; margin-right: calc((var(--default-clickable-area) - 16px) / 2 * -1); } .action--disabled[data-v-579c6b4d] { pointer-events: none; opacity: 0.5; } .action--disabled[data-v-579c6b4d]:hover, .action--disabled[data-v-579c6b4d]:focus { cursor: default; opacity: 0.5; } .action--disabled *[data-v-579c6b4d] { opacity: 1 !important; }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActions-DM_LoRlx.css": /*!**************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActions-DM_LoRlx.css ***! \**************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-fcbbc5a9] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } .action-items[data-v-fcbbc5a9] { display: flex; align-items: center; } .action-items > button[data-v-fcbbc5a9] { margin-right: calc((var(--default-clickable-area) - 16px) / 2 / 2); } .action-item[data-v-fcbbc5a9] { --open-background-color: var(--color-background-hover, \$action-background-hover); position: relative; display: inline-block; } .action-item.action-item--primary[data-v-fcbbc5a9] { --open-background-color: var(--color-primary-element-hover); } .action-item.action-item--secondary[data-v-fcbbc5a9] { --open-background-color: var(--color-primary-element-light-hover); } .action-item.action-item--error[data-v-fcbbc5a9] { --open-background-color: var(--color-error-hover); } .action-item.action-item--warning[data-v-fcbbc5a9] { --open-background-color: var(--color-warning-hover); } .action-item.action-item--success[data-v-fcbbc5a9] { --open-background-color: var(--color-success-hover); } .action-item.action-item--tertiary-no-background[data-v-fcbbc5a9] { --open-background-color: transparent; } .action-item.action-item--open .action-item__menutoggle[data-v-fcbbc5a9] { background-color: var(--open-background-color); } .action-item__menutoggle__icon[data-v-fcbbc5a9] { width: 20px; height: 20px; object-fit: contain; }/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } .v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper { border-radius: var(--border-radius-large); overflow: hidden; } .v-popper--theme-dropdown.v-popper__popper.action-item__popper .v-popper__wrapper .v-popper__inner { border-radius: var(--border-radius-large); padding: 4px; max-height: calc(100vh - var(--header-height)); overflow: auto; }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumb-Cjcyeimd.css": /*!*****************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumb-Cjcyeimd.css ***! \*****************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-cfe13af3] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } .vue-crumb[data-v-cfe13af3] { background-image: none; display: inline-flex; height: var(--default-clickable-area); padding: 0; } .vue-crumb[data-v-cfe13af3]:last-child { min-width: 0; } .vue-crumb:last-child .vue-crumb__separator[data-v-cfe13af3] { display: none; } .vue-crumb--hidden[data-v-cfe13af3] { display: none; } .vue-crumb__separator[data-v-cfe13af3] { padding: 0; color: var(--color-text-maxcontrast); } .vue-crumb.vue-crumb--hovered[data-v-cfe13af3] .button-vue { background-color: var(--color-background-dark); color: var(--color-main-text); } .vue-crumb[data-v-cfe13af3]:not(:last-child) .button-vue { color: var(--color-text-maxcontrast); } .vue-crumb[data-v-cfe13af3]:not(:last-child) .button-vue:hover, .vue-crumb[data-v-cfe13af3]:not(:last-child) .button-vue:focus { background-color: var(--color-background-dark); color: var(--color-main-text); } .vue-crumb[data-v-cfe13af3]:not(:last-child) .button-vue__text { font-weight: normal; } .vue-crumb[data-v-cfe13af3] .button-vue__text { margin: 0; } .vue-crumb[data-v-cfe13af3]:not(.dropdown) .action-item { max-width: 100%; } .vue-crumb[data-v-cfe13af3]:not(.dropdown) .action-item .button-vue { padding: 0 4px 0 16px; max-width: 100%; } .vue-crumb[data-v-cfe13af3]:not(.dropdown) .action-item .button-vue__wrapper { flex-direction: row-reverse; } .vue-crumb[data-v-cfe13af3]:not(.dropdown) .action-item.action-item--open .action-item__menutoggle { background-color: var(--color-background-dark); color: var(--color-main-text); }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumbs-CFRjXqRg.css": /*!******************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumbs-CFRjXqRg.css ***! \******************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-629bf30f] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } .breadcrumb[data-v-629bf30f] { width: 100%; flex-grow: 1; display: inline-flex; align-items: center; } .breadcrumb--collapsed[data-v-629bf30f] .vue-crumb:last-child { min-width: 100px; } .breadcrumb nav[data-v-629bf30f] { flex-shrink: 1; min-width: 0; } .breadcrumb .breadcrumb__crumbs[data-v-629bf30f] { max-width: 100%; } .breadcrumb .breadcrumb__crumbs[data-v-629bf30f], .breadcrumb .breadcrumb__actions[data-v-629bf30f] { display: inline-flex; }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcButton-BHDLon1_.css": /*!*************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcButton-BHDLon1_.css ***! \*************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon[data-v-c3d9e0ce] { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } .button-vue[data-v-c3d9e0ce] { --button-size: var(--default-clickable-area); --button-radius: var(--border-radius-element, calc(var(--button-size) / 2)); --button-padding: clamp(var(--default-grid-baseline), var(--button-radius), calc(var(--default-grid-baseline) * 4)); position: relative; width: fit-content; overflow: hidden; border: 0; padding: 0; font-size: var(--default-font-size); font-weight: bold; min-height: var(--button-size); min-width: var(--button-size); display: flex; align-items: center; justify-content: center; cursor: pointer; border-radius: var(--button-radius); transition-property: color, border-color, background-color; transition-duration: 0.1s; transition-timing-function: linear; color: var(--color-primary-element-light-text); background-color: var(--color-primary-element-light); } .button-vue--size-small[data-v-c3d9e0ce] { --button-size: var(--clickable-area-small, 24px); --button-radius: var(--border-radius); } .button-vue--size-large[data-v-c3d9e0ce] { --button-size: var(--clickable-area-large, 48px); } .button-vue *[data-v-c3d9e0ce], .button-vue span[data-v-c3d9e0ce] { cursor: pointer; } .button-vue[data-v-c3d9e0ce]:focus { outline: none; } .button-vue[data-v-c3d9e0ce]:disabled { cursor: default; opacity: 0.5; filter: saturate(0.7); } .button-vue:disabled *[data-v-c3d9e0ce] { cursor: default; } .button-vue[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: var(--color-primary-element-light-hover); } .button-vue[data-v-c3d9e0ce]:active { background-color: var(--color-primary-element-light); } .button-vue__wrapper[data-v-c3d9e0ce] { display: inline-flex; align-items: center; justify-content: center; width: 100%; } .button-vue--end .button-vue__wrapper[data-v-c3d9e0ce] { justify-content: end; } .button-vue--start .button-vue__wrapper[data-v-c3d9e0ce] { justify-content: start; } .button-vue--reverse .button-vue__wrapper[data-v-c3d9e0ce] { flex-direction: row-reverse; } .button-vue--reverse.button-vue--icon-and-text[data-v-c3d9e0ce] { padding-inline: var(--button-padding) var(--default-grid-baseline); } .button-vue__icon[data-v-c3d9e0ce] { height: var(--button-size); width: var(--button-size); min-height: var(--button-size); min-width: var(--button-size); display: flex; justify-content: center; align-items: center; } .button-vue--size-small .button-vue__icon[data-v-c3d9e0ce] > * { max-height: 16px; max-width: 16px; } .button-vue--size-small .button-vue__icon[data-v-c3d9e0ce] svg { height: 16px; width: 16px; } .button-vue__text[data-v-c3d9e0ce] { font-weight: bold; margin-bottom: 1px; padding: 2px 0; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } .button-vue--icon-only[data-v-c3d9e0ce] { line-height: 1; width: var(--button-size) !important; } .button-vue--text-only[data-v-c3d9e0ce] { padding: 0 var(--button-padding); } .button-vue--text-only .button-vue__text[data-v-c3d9e0ce] { margin-left: 4px; margin-right: 4px; } .button-vue--icon-and-text[data-v-c3d9e0ce] { --button-padding: min(calc(var(--default-grid-baseline) + var(--button-radius)), calc(var(--default-grid-baseline) * 4)); padding-block: 0; padding-inline: var(--default-grid-baseline) var(--button-padding); } .button-vue--wide[data-v-c3d9e0ce] { width: 100%; } .button-vue[data-v-c3d9e0ce]:focus-visible { outline: 2px solid var(--color-main-text) !important; box-shadow: 0 0 0 4px var(--color-main-background) !important; } .button-vue:focus-visible.button-vue--vue-tertiary-on-primary[data-v-c3d9e0ce] { outline: 2px solid var(--color-primary-element-text); border-radius: var(--border-radius-element, var(--border-radius)); background-color: transparent; } .button-vue--vue-primary[data-v-c3d9e0ce] { background-color: var(--color-primary-element); color: var(--color-primary-element-text); } .button-vue--vue-primary[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: var(--color-primary-element-hover); } .button-vue--vue-primary[data-v-c3d9e0ce]:active { background-color: var(--color-primary-element); } .button-vue--vue-secondary[data-v-c3d9e0ce] { color: var(--color-primary-element-light-text); background-color: var(--color-primary-element-light); } .button-vue--vue-secondary[data-v-c3d9e0ce]:hover:not(:disabled) { color: var(--color-primary-element-light-text); background-color: var(--color-primary-element-light-hover); } .button-vue--vue-tertiary[data-v-c3d9e0ce] { color: var(--color-main-text); background-color: transparent; } .button-vue--vue-tertiary[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: var(--color-background-hover); } .button-vue--vue-tertiary-no-background[data-v-c3d9e0ce] { color: var(--color-main-text); background-color: transparent; } .button-vue--vue-tertiary-no-background[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: transparent; } .button-vue--vue-tertiary-on-primary[data-v-c3d9e0ce] { color: var(--color-primary-element-text); background-color: transparent; } .button-vue--vue-tertiary-on-primary[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: transparent; } .button-vue--vue-success[data-v-c3d9e0ce] { background-color: var(--color-success); color: white; } .button-vue--vue-success[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: var(--color-success-hover); } .button-vue--vue-success[data-v-c3d9e0ce]:active { background-color: var(--color-success); } .button-vue--vue-warning[data-v-c3d9e0ce] { background-color: var(--color-warning); color: white; } .button-vue--vue-warning[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: var(--color-warning-hover); } .button-vue--vue-warning[data-v-c3d9e0ce]:active { background-color: var(--color-warning); } .button-vue--vue-error[data-v-c3d9e0ce] { background-color: var(--color-error); color: white; } .button-vue--vue-error[data-v-c3d9e0ce]:hover:not(:disabled) { background-color: var(--color-error-hover); } .button-vue--vue-error[data-v-c3d9e0ce]:active { background-color: var(--color-error); }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcPopover-TS4CW9MJ.css": /*!**************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcPopover-TS4CW9MJ.css ***! \**************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `/** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ /* * Ensure proper alignment of the vue material icons */ .material-design-icon { display: flex; align-self: center; justify-self: center; align-items: center; justify-content: center; } .resize-observer { position: absolute; top: 0; left: 0; z-index: -1; width: 100%; height: 100%; border: none; background-color: transparent; pointer-events: none; display: block; overflow: hidden; opacity: 0; } .resize-observer object { display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1; } .v-popper--theme-dropdown.v-popper__popper { z-index: 100000; top: 0; left: 0; display: block !important; filter: drop-shadow(0 1px 10px var(--color-box-shadow)); } .v-popper--theme-dropdown.v-popper__popper .v-popper__inner { padding: 0; color: var(--color-main-text); border-radius: var(--border-radius-large); overflow: hidden; background: var(--color-main-background); } .v-popper--theme-dropdown.v-popper__popper .v-popper__arrow-container { position: absolute; z-index: 1; width: 0; height: 0; border-style: solid; border-color: transparent; border-width: 10px; } .v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-container { bottom: -10px; border-bottom-width: 0; border-top-color: var(--color-main-background); } .v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container { top: -10px; border-top-width: 0; border-bottom-color: var(--color-main-background); } .v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-container { left: -10px; border-left-width: 0; border-right-color: var(--color-main-background); } .v-popper--theme-dropdown.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container { right: -10px; border-right-width: 0; border-left-color: var(--color-main-background); } .v-popper--theme-dropdown.v-popper__popper[aria-hidden=true] { visibility: hidden; transition: opacity var(--animation-quick), visibility var(--animation-quick); opacity: 0; } .v-popper--theme-dropdown.v-popper__popper[aria-hidden=false] { visibility: visible; transition: opacity var(--animation-quick); opacity: 1; }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=style&index=0&id=36ad32b2&scoped=true&lang=css": /*!********************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=style&index=0&id=36ad32b2&scoped=true&lang=css ***! \********************************************************************************************************************************************************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, ` /* Vous pouvez ajouter des styles personnalisés ici si nécessaire */ `, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=style&index=0&id=4ef514b2&scoped=true&lang=css": /*!***************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=style&index=0&id=4ef514b2&scoped=true&lang=css ***! \***************************************************************************************************************************************************************************************************************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, ` /* Ajoutez ici des styles si nécessaire */ `, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/cjs.js!./src/output.css": /*!**************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js!./src/output.css ***! \**************************************************************/ /***/ ((module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../node_modules/css-loader/dist/runtime/noSourceMaps.js */ "./node_modules/css-loader/dist/runtime/noSourceMaps.js"); /* harmony import */ var _node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js"); /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__); // Imports var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default())); // Module ___CSS_LOADER_EXPORT___.push([module.id, `*, ::before, ::after { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; } ::backdrop { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; } /* ! tailwindcss v3.4.15 | MIT License | https://tailwindcss.com */ /* 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) 2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116) */ *, ::before, ::after { box-sizing: border-box; /* 1 */ border-width: 0; /* 2 */ border-style: solid; /* 2 */ border-color: #e5e7eb; /* 2 */ } ::before, ::after { --tw-content: ''; } /* 1. Use a consistent sensible line-height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. 3. Use a more readable tab size. 4. Use the user's configured \`sans\` font-family by default. 5. Use the user's configured \`sans\` font-feature-settings by default. 6. Use the user's configured \`sans\` font-variation-settings by default. 7. Disable tap highlights on iOS */ html, :host { line-height: 1.5; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ /* 3 */ tab-size: 4; /* 3 */ font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */ font-feature-settings: normal; /* 5 */ font-variation-settings: normal; /* 6 */ -webkit-tap-highlight-color: transparent; /* 7 */ } /* 1. Remove the margin in all browsers. 2. Inherit line-height from \`html\` so users can set them as a class directly on the \`html\` element. */ body { margin: 0; /* 1 */ line-height: inherit; /* 2 */ } /* 1. Add the correct height in Firefox. 2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655) 3. Ensure horizontal rules are visible by default. */ hr { height: 0; /* 1 */ color: inherit; /* 2 */ border-top-width: 1px; /* 3 */ } /* Add the correct text decoration in Chrome, Edge, and Safari. */ abbr:where([title]) { -webkit-text-decoration: underline dotted; text-decoration: underline dotted; } /* Remove the default font size and weight for headings. */ h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; } /* Reset links to optimize for opt-in styling instead of opt-out. */ a { color: inherit; text-decoration: inherit; } /* Add the correct font weight in Edge and Safari. */ b, strong { font-weight: bolder; } /* 1. Use the user's configured \`mono\` font-family by default. 2. Use the user's configured \`mono\` font-feature-settings by default. 3. Use the user's configured \`mono\` font-variation-settings by default. 4. Correct the odd \`em\` font sizing in all browsers. */ code, kbd, samp, pre { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */ font-feature-settings: normal; /* 2 */ font-variation-settings: normal; /* 3 */ font-size: 1em; /* 4 */ } /* Add the correct font size in all browsers. */ small { font-size: 80%; } /* Prevent \`sub\` and \`sup\` elements from affecting the line height in all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* 1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297) 2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016) 3. Remove gaps between table borders by default. */ table { text-indent: 0; /* 1 */ border-color: inherit; /* 2 */ border-collapse: collapse; /* 3 */ } /* 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. 3. Remove default padding in all browsers. */ button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-feature-settings: inherit; /* 1 */ font-variation-settings: inherit; /* 1 */ font-size: 100%; /* 1 */ font-weight: inherit; /* 1 */ line-height: inherit; /* 1 */ letter-spacing: inherit; /* 1 */ color: inherit; /* 1 */ margin: 0; /* 2 */ padding: 0; /* 3 */ } /* Remove the inheritance of text transform in Edge and Firefox. */ button, select { text-transform: none; } /* 1. Correct the inability to style clickable types in iOS and Safari. 2. Remove default button styles. */ button, input:where([type='button']), input:where([type='reset']), input:where([type='submit']) { -webkit-appearance: button; /* 1 */ background-color: transparent; /* 2 */ background-image: none; /* 2 */ } /* Use the modern Firefox focus style for all focusable elements. */ :-moz-focusring { outline: auto; } /* Remove the additional \`:invalid\` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737) */ :-moz-ui-invalid { box-shadow: none; } /* Add the correct vertical alignment in Chrome and Firefox. */ progress { vertical-align: baseline; } /* Correct the cursor style of increment and decrement buttons in Safari. */ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; } /* 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */ [type='search'] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /* Remove the inner padding in Chrome and Safari on macOS. */ ::-webkit-search-decoration { -webkit-appearance: none; } /* 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to \`inherit\` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ } /* Add the correct display in Chrome and Safari. */ summary { display: list-item; } /* Removes the default spacing and border for appropriate elements. */ blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre { margin: 0; } fieldset { margin: 0; padding: 0; } legend { padding: 0; } ol, ul, menu { list-style: none; margin: 0; padding: 0; } /* Reset default styling for dialogs. */ dialog { padding: 0; } /* Prevent resizing textareas horizontally by default. */ textarea { resize: vertical; } /* 1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300) 2. Set the default placeholder color to the user's configured gray 400 color. */ input::placeholder, textarea::placeholder { opacity: 1; /* 1 */ color: #9ca3af; /* 2 */ } /* Set the default cursor for buttons. */ button, [role="button"] { cursor: pointer; } /* Make sure disabled buttons don't get the pointer cursor. */ :disabled { cursor: default; } /* 1. Make replaced elements \`display: block\` by default. (https://github.com/mozdevs/cssremedy/issues/14) 2. Add \`vertical-align: middle\` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210) This can trigger a poorly considered lint error in some tools but is included by design. */ img, svg, video, canvas, audio, iframe, embed, object { display: block; /* 1 */ vertical-align: middle; /* 2 */ } /* Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14) */ img, video { max-width: 100%; height: auto; } /* Make elements with the HTML hidden attribute stay hidden by default */ [hidden]:where(:not([hidden="until-found"])) { display: none; } .container { width: 100%; } @media (min-width: 640px) { .container { max-width: 640px; } } @media (min-width: 768px) { .container { max-width: 768px; } } @media (min-width: 1024px) { .container { max-width: 1024px; } } @media (min-width: 1280px) { .container { max-width: 1280px; } } @media (min-width: 1536px) { .container { max-width: 1536px; } } .visible { visibility: visible; } .fixed { position: fixed; } .inset-0 { inset: 0px; } .z-50 { z-index: 50; } .mb-4 { margin-bottom: 1rem; } .ml-2 { margin-left: 0.5rem; } .ml-3 { margin-left: 0.75rem; } .ml-4 { margin-left: 1rem; } .mt-1 { margin-top: 0.25rem; } .mt-4 { margin-top: 1rem; } .mr-2 { margin-right: 0.5rem; } .flex { display: flex; } .contents { display: contents; } .hidden { display: none; } .h-10 { height: 2.5rem; } .h-12 { height: 3rem; } .h-16 { height: 4rem; } .h-full { height: 100%; } .h-5 { height: 1.25rem; } .h-6 { height: 1.5rem; } .max-h-8 { max-height: 2rem; } .w-1\\/6 { width: 16.666667%; } .w-10 { width: 2.5rem; } .w-12 { width: 3rem; } .w-4\\/6 { width: 66.666667%; } .w-96 { width: 24rem; } .w-full { width: 100%; } .w-5 { width: 1.25rem; } .w-5\\/6 { width: 83.333333%; } .w-2\\/6 { width: 33.333333%; } .w-6 { width: 1.5rem; } .w-3 { width: 0.75rem; } .flex-grow { flex-grow: 1; } .rotate-90 { --tw-rotate: 90deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); } .transform { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); } .cursor-pointer { cursor: pointer; } .flex-row { flex-direction: row; } .flex-col { flex-direction: column; } .items-start { align-items: flex-start; } .items-center { align-items: center; } .justify-end { justify-content: flex-end; } .justify-center { justify-content: center; } .space-x-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(0.5rem * var(--tw-space-x-reverse)); margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))); } .overflow-y-auto { overflow-y: auto; } .truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .rounded-lg { border-radius: 0.5rem; } .rounded-md { border-radius: 0.375rem; } .rounded-xl { border-radius: 0.75rem; } .border { border-width: 1px; } .border-b { border-bottom-width: 1px; } .border-r { border-right-width: 1px; } .border-t { border-top-width: 1px; } .border-gray-300 { --tw-border-opacity: 1; border-color: rgb(209 213 219 / var(--tw-border-opacity, 1)); } .bg-NcBlack { --tw-bg-opacity: 1; background-color: rgb(23 23 23 / var(--tw-bg-opacity, 1)); } .bg-NcBlack\\/40 { background-color: rgb(23 23 23 / 0.4); } .bg-black\\/80 { background-color: rgb(0 0 0 / 0.8); } .bg-blue-100 { --tw-bg-opacity: 1; background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1)); } .bg-blue-600 { --tw-bg-opacity: 1; background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1)); } .bg-gray-200 { --tw-bg-opacity: 1; background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1)); } .bg-gray-700 { --tw-bg-opacity: 1; background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1)); } .bg-gray-50 { --tw-bg-opacity: 1; background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1)); } .bg-NcGray { --tw-bg-opacity: 1; background-color: rgb(33 33 33 / var(--tw-bg-opacity, 1)); } .bg-opacity-50 { --tw-bg-opacity: 0.5; } .p-4 { padding: 1rem; } .p-6 { padding: 1.5rem; } .px-4 { padding-left: 1rem; padding-right: 1rem; } .py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; } .px-2 { padding-left: 0.5rem; padding-right: 0.5rem; } .pl-8 { padding-left: 2rem; } .pl-4 { padding-left: 1rem; } .text-lg { font-size: 1.125rem; line-height: 1.75rem; } .font-medium { font-weight: 500; } .font-semibold { font-weight: 600; } .text-NcBlue { --tw-text-opacity: 1; color: rgb(0 114 195 / var(--tw-text-opacity, 1)); } .text-blue-600 { --tw-text-opacity: 1; color: rgb(37 99 235 / var(--tw-text-opacity, 1)); } .text-gray-500 { --tw-text-opacity: 1; color: rgb(107 114 128 / var(--tw-text-opacity, 1)); } .text-gray-700 { --tw-text-opacity: 1; color: rgb(55 65 81 / var(--tw-text-opacity, 1)); } .text-white { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); } .text-red-500 { --tw-text-opacity: 1; color: rgb(239 68 68 / var(--tw-text-opacity, 1)); } .shadow-lg { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } .filter { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); } .transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; } .transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; } .last\\:border-b-0:last-child { border-bottom-width: 0px; } .hover\\:bg-NcGray:hover { --tw-bg-opacity: 1; background-color: rgb(33 33 33 / var(--tw-bg-opacity, 1)); } .hover\\:bg-blue-200:hover { --tw-bg-opacity: 1; background-color: rgb(191 219 254 / var(--tw-bg-opacity, 1)); } .hover\\:bg-blue-700:hover { --tw-bg-opacity: 1; background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1)); } .hover\\:bg-gray-300:hover { --tw-bg-opacity: 1; background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1)); } .hover\\:bg-gray-100:hover { --tw-bg-opacity: 1; background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1)); } .focus\\:outline-none:focus { outline: 2px solid transparent; outline-offset: 2px; } .focus\\:ring-2:focus { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); } .focus\\:ring-blue-500:focus { --tw-ring-opacity: 1; --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1)); } @media not all and (min-width: 640px) { .max-sm\\:h-2\\/5 { height: 40%; } .max-sm\\:h-3\\/5 { height: 60%; } .max-sm\\:max-w-32 { max-width: 8rem; } } @media (min-width: 640px) { .sm\\:m-6 { margin: 1.5rem; } .sm\\:w-1\\/3 { width: 33.333333%; } .sm\\:w-2\\/3 { width: 66.666667%; } .sm\\:flex-row { flex-direction: row; } }`, ""]); // Exports /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___); /***/ }), /***/ "./node_modules/css-loader/dist/runtime/api.js": /*!*****************************************************!*\ !*** ./node_modules/css-loader/dist/runtime/api.js ***! \*****************************************************/ /***/ ((module) => { "use strict"; /* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ module.exports = function (cssWithMappingToString) { var list = []; // return the list of modules as css string list.toString = function toString() { return this.map(function (item) { var content = ""; var needLayer = typeof item[5] !== "undefined"; if (item[4]) { content += "@supports (".concat(item[4], ") {"); } if (item[2]) { content += "@media ".concat(item[2], " {"); } if (needLayer) { content += "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {"); } content += cssWithMappingToString(item); if (needLayer) { content += "}"; } if (item[2]) { content += "}"; } if (item[4]) { content += "}"; } return content; }).join(""); }; // import a list of modules into the list list.i = function i(modules, media, dedupe, supports, layer) { if (typeof modules === "string") { modules = [[null, modules, undefined]]; } var alreadyImportedModules = {}; if (dedupe) { for (var k = 0; k < this.length; k++) { var id = this[k][0]; if (id != null) { alreadyImportedModules[id] = true; } } } for (var _k = 0; _k < modules.length; _k++) { var item = [].concat(modules[_k]); if (dedupe && alreadyImportedModules[item[0]]) { continue; } if (typeof layer !== "undefined") { if (typeof item[5] === "undefined") { item[5] = layer; } else { item[1] = "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {").concat(item[1], "}"); item[5] = layer; } } if (media) { if (!item[2]) { item[2] = media; } else { item[1] = "@media ".concat(item[2], " {").concat(item[1], "}"); item[2] = media; } } if (supports) { if (!item[4]) { item[4] = "".concat(supports); } else { item[1] = "@supports (".concat(item[4], ") {").concat(item[1], "}"); item[4] = supports; } } list.push(item); } }; return list; }; /***/ }), /***/ "./node_modules/css-loader/dist/runtime/noSourceMaps.js": /*!**************************************************************!*\ !*** ./node_modules/css-loader/dist/runtime/noSourceMaps.js ***! \**************************************************************/ /***/ ((module) => { "use strict"; module.exports = function (i) { return i[1]; }; /***/ }), /***/ "./node_modules/debounce/index.js": /*!****************************************!*\ !*** ./node_modules/debounce/index.js ***! \****************************************/ /***/ ((module) => { function debounce(function_, wait = 100, options = {}) { if (typeof function_ !== 'function') { throw new TypeError(`Expected the first parameter to be a function, got \`${typeof function_}\`.`); } if (wait < 0) { throw new RangeError('`wait` must not be negative.'); } // TODO: Deprecate the boolean parameter at some point. const {immediate} = typeof options === 'boolean' ? {immediate: options} : options; let storedContext; let storedArguments; let timeoutId; let timestamp; let result; function run() { const callContext = storedContext; const callArguments = storedArguments; storedContext = undefined; storedArguments = undefined; result = function_.apply(callContext, callArguments); return result; } function later() { const last = Date.now() - timestamp; if (last < wait && last >= 0) { timeoutId = setTimeout(later, wait - last); } else { timeoutId = undefined; if (!immediate) { result = run(); } } } const debounced = function (...arguments_) { if ( storedContext && this !== storedContext && Object.getPrototypeOf(this) === Object.getPrototypeOf(storedContext) ) { throw new Error('Debounced method called with different contexts of the same prototype.'); } storedContext = this; // eslint-disable-line unicorn/no-this-assignment storedArguments = arguments_; timestamp = Date.now(); const callNow = immediate && !timeoutId; if (!timeoutId) { timeoutId = setTimeout(later, wait); } if (callNow) { result = run(); } return result; }; Object.defineProperty(debounced, 'isPending', { get() { return timeoutId !== undefined; }, }); debounced.clear = () => { if (!timeoutId) { return; } clearTimeout(timeoutId); timeoutId = undefined; }; debounced.flush = () => { if (!timeoutId) { return; } debounced.trigger(); }; debounced.trigger = () => { result = run(); debounced.clear(); }; return debounced; } // Adds compatibility for ES modules module.exports.debounce = debounce; module.exports = debounce; /***/ }), /***/ "./node_modules/escape-html/index.js": /*!*******************************************!*\ !*** ./node_modules/escape-html/index.js ***! \*******************************************/ /***/ ((module) => { "use strict"; /*! * escape-html * Copyright(c) 2012-2013 TJ Holowaychuk * Copyright(c) 2015 Andreas Lubbe * Copyright(c) 2015 Tiancheng "Timothy" Gu * MIT Licensed */ /** * Module variables. * @private */ var matchHtmlRegExp = /["'&<>]/; /** * Module exports. * @public */ module.exports = escapeHtml; /** * Escape special characters in the given string of html. * * @param {string} string The string to escape for inserting into HTML * @return {string} * @public */ function escapeHtml(string) { var str = '' + string; var match = matchHtmlRegExp.exec(str); if (!match) { return str; } var escape; var html = ''; var index = 0; var lastIndex = 0; for (index = match.index; index < str.length; index++) { switch (str.charCodeAt(index)) { case 34: // " escape = '"'; break; case 38: // & escape = '&'; break; case 39: // ' escape = '''; break; case 60: // < escape = '<'; break; case 62: // > escape = '>'; break; default: continue; } if (lastIndex !== index) { html += str.substring(lastIndex, index); } lastIndex = index + 1; html += escape; } return lastIndex !== index ? html + str.substring(lastIndex, index) : html; } /***/ }), /***/ "./node_modules/floating-vue/dist/floating-vue.es.js": /*!***********************************************************!*\ !*** ./node_modules/floating-vue/dist/floating-vue.es.js ***! \***********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ Dropdown: () => (/* binding */ Dropdown), /* harmony export */ HIDE_EVENT_MAP: () => (/* binding */ HIDE_EVENT_MAP), /* harmony export */ Menu: () => (/* binding */ Menu), /* harmony export */ Popper: () => (/* binding */ Popper), /* harmony export */ PopperContent: () => (/* binding */ PopperContent), /* harmony export */ PopperMethods: () => (/* binding */ PopperMethods), /* harmony export */ PopperWrapper: () => (/* binding */ PopperWrapper), /* harmony export */ SHOW_EVENT_MAP: () => (/* binding */ SHOW_EVENT_MAP), /* harmony export */ ThemeClass: () => (/* binding */ ThemeClass), /* harmony export */ Tooltip: () => (/* binding */ Tooltip), /* harmony export */ TooltipDirective: () => (/* binding */ TooltipDirective), /* harmony export */ VClosePopper: () => (/* binding */ VClosePopper), /* harmony export */ VTooltip: () => (/* binding */ VTooltip), /* harmony export */ createTooltip: () => (/* binding */ createTooltip), /* harmony export */ "default": () => (/* binding */ plugin), /* harmony export */ destroyTooltip: () => (/* binding */ destroyTooltip), /* harmony export */ hideAllPoppers: () => (/* binding */ hideAllPoppers), /* harmony export */ install: () => (/* binding */ install), /* harmony export */ options: () => (/* binding */ options), /* harmony export */ placements: () => (/* binding */ placements) /* harmony export */ }); /* harmony import */ var _floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @floating-ui/dom */ "./node_modules/floating-vue/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js"); /* harmony import */ var _floating_ui_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @floating-ui/dom */ "./node_modules/floating-vue/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js"); /* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.runtime.esm.js"); var __defProp = Object.defineProperty; var __defProps = Object.defineProperties; var __getOwnPropDescs = Object.getOwnPropertyDescriptors; var __getOwnPropSymbols = Object.getOwnPropertySymbols; var __hasOwnProp = Object.prototype.hasOwnProperty; var __propIsEnum = Object.prototype.propertyIsEnumerable; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __spreadValues = (a, b) => { for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]); if (__getOwnPropSymbols) for (var prop of __getOwnPropSymbols(b)) { if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]); } return a; }; var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); var __objRest = (source, exclude) => { var target = {}; for (var prop in source) if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) target[prop] = source[prop]; if (source != null && __getOwnPropSymbols) for (var prop of __getOwnPropSymbols(source)) { if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) target[prop] = source[prop]; } return target; }; function assign(to, from) { for (const key in from) { if (Object.prototype.hasOwnProperty.call(from, key)) { if (typeof from[key] === "object" && to[key]) { assign(to[key], from[key]); } else { to[key] = from[key]; } } } } const config = { disabled: false, distance: 5, skidding: 0, container: "body", boundary: void 0, instantMove: false, disposeTimeout: 5e3, popperTriggers: [], strategy: "absolute", preventOverflow: true, flip: true, shift: true, overflowPadding: 0, arrowPadding: 0, arrowOverflow: true, themes: { tooltip: { placement: "top", triggers: ["hover", "focus", "touch"], hideTriggers: (events) => [...events, "click"], delay: { show: 200, hide: 0 }, handleResize: false, html: false, loadingContent: "..." }, dropdown: { placement: "bottom", triggers: ["click"], delay: 0, handleResize: true, autoHide: true }, menu: { $extend: "dropdown", triggers: ["hover", "focus"], popperTriggers: ["hover", "focus"], delay: { show: 0, hide: 400 } } } }; function getDefaultConfig(theme, key) { let themeConfig = config.themes[theme] || {}; let value; do { value = themeConfig[key]; if (typeof value === "undefined") { if (themeConfig.$extend) { themeConfig = config.themes[themeConfig.$extend] || {}; } else { themeConfig = null; value = config[key]; } } else { themeConfig = null; } } while (themeConfig); return value; } function getThemeClasses(theme) { const result = [theme]; let themeConfig = config.themes[theme] || {}; do { if (themeConfig.$extend && !themeConfig.$resetCss) { result.push(themeConfig.$extend); themeConfig = config.themes[themeConfig.$extend] || {}; } else { themeConfig = null; } } while (themeConfig); return result.map((c) => `v-popper--theme-${c}`); } function getAllParentThemes(theme) { const result = [theme]; let themeConfig = config.themes[theme] || {}; do { if (themeConfig.$extend) { result.push(themeConfig.$extend); themeConfig = config.themes[themeConfig.$extend] || {}; } else { themeConfig = null; } } while (themeConfig); return result; } var vueResize = ""; let supportsPassive = false; if (typeof window !== "undefined") { supportsPassive = false; try { const opts = Object.defineProperty({}, "passive", { get() { supportsPassive = true; } }); window.addEventListener("test", null, opts); } catch (e) { } } let isIOS = false; if (typeof window !== "undefined" && typeof navigator !== "undefined") { isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; } const placements = ["auto", "top", "bottom", "left", "right"].reduce((acc, base) => acc.concat([ base, `${base}-start`, `${base}-end` ]), []); const SHOW_EVENT_MAP = { hover: "mouseenter", focus: "focus", click: "click", touch: "touchstart" }; const HIDE_EVENT_MAP = { hover: "mouseleave", focus: "blur", click: "click", touch: "touchend" }; function removeFromArray(array, item) { const index = array.indexOf(item); if (index !== -1) { array.splice(index, 1); } } function nextFrame() { return new Promise((resolve) => requestAnimationFrame(() => { requestAnimationFrame(resolve); })); } const shownPoppers = []; let hidingPopper = null; const shownPoppersByTheme = {}; function getShownPoppersByTheme(theme) { let list = shownPoppersByTheme[theme]; if (!list) { list = shownPoppersByTheme[theme] = []; } return list; } let Element = function() { }; if (typeof window !== "undefined") { Element = window.Element; } function defaultPropFactory(prop) { return function() { const props = this.$props; return getDefaultConfig(props.theme, prop); }; } const PROVIDE_KEY = "__floating-vue__popper"; var PrivatePopper = () => ({ name: "VPopper", props: { theme: { type: String, required: true }, targetNodes: { type: Function, required: true }, referenceNode: { type: Function, required: true }, popperNode: { type: Function, required: true }, shown: { type: Boolean, default: false }, showGroup: { type: String, default: null }, ariaId: { default: null }, disabled: { type: Boolean, default: defaultPropFactory("disabled") }, positioningDisabled: { type: Boolean, default: defaultPropFactory("positioningDisabled") }, placement: { type: String, default: defaultPropFactory("placement"), validator: (value) => placements.includes(value) }, delay: { type: [String, Number, Object], default: defaultPropFactory("delay") }, distance: { type: [Number, String], default: defaultPropFactory("distance") }, skidding: { type: [Number, String], default: defaultPropFactory("skidding") }, triggers: { type: Array, default: defaultPropFactory("triggers") }, showTriggers: { type: [Array, Function], default: defaultPropFactory("showTriggers") }, hideTriggers: { type: [Array, Function], default: defaultPropFactory("hideTriggers") }, popperTriggers: { type: Array, default: defaultPropFactory("popperTriggers") }, popperShowTriggers: { type: [Array, Function], default: defaultPropFactory("popperShowTriggers") }, popperHideTriggers: { type: [Array, Function], default: defaultPropFactory("popperHideTriggers") }, container: { type: [String, Object, Element, Boolean], default: defaultPropFactory("container") }, boundary: { type: [String, Element], default: defaultPropFactory("boundary") }, strategy: { type: String, validator: (value) => ["absolute", "fixed"].includes(value), default: defaultPropFactory("strategy") }, autoHide: { type: [Boolean, Function], default: defaultPropFactory("autoHide") }, handleResize: { type: Boolean, default: defaultPropFactory("handleResize") }, instantMove: { type: Boolean, default: defaultPropFactory("instantMove") }, eagerMount: { type: Boolean, default: defaultPropFactory("eagerMount") }, popperClass: { type: [String, Array, Object], default: defaultPropFactory("popperClass") }, computeTransformOrigin: { type: Boolean, default: defaultPropFactory("computeTransformOrigin") }, autoMinSize: { type: Boolean, default: defaultPropFactory("autoMinSize") }, autoSize: { type: [Boolean, String], default: defaultPropFactory("autoSize") }, autoMaxSize: { type: Boolean, default: defaultPropFactory("autoMaxSize") }, autoBoundaryMaxSize: { type: Boolean, default: defaultPropFactory("autoBoundaryMaxSize") }, preventOverflow: { type: Boolean, default: defaultPropFactory("preventOverflow") }, overflowPadding: { type: [Number, String], default: defaultPropFactory("overflowPadding") }, arrowPadding: { type: [Number, String], default: defaultPropFactory("arrowPadding") }, arrowOverflow: { type: Boolean, default: defaultPropFactory("arrowOverflow") }, flip: { type: Boolean, default: defaultPropFactory("flip") }, shift: { type: Boolean, default: defaultPropFactory("shift") }, shiftCrossAxis: { type: Boolean, default: defaultPropFactory("shiftCrossAxis") }, noAutoFocus: { type: Boolean, default: defaultPropFactory("noAutoFocus") } }, provide() { return { [PROVIDE_KEY]: { parentPopper: this } }; }, inject: { [PROVIDE_KEY]: { default: null } }, data() { return { isShown: false, isMounted: false, skipTransition: false, classes: { showFrom: false, showTo: false, hideFrom: false, hideTo: true }, result: { x: 0, y: 0, placement: "", strategy: this.strategy, arrow: { x: 0, y: 0, centerOffset: 0 }, transformOrigin: null }, shownChildren: /* @__PURE__ */ new Set(), lastAutoHide: true }; }, computed: { popperId() { return this.ariaId != null ? this.ariaId : this.randomId; }, shouldMountContent() { return this.eagerMount || this.isMounted; }, slotData() { return { popperId: this.popperId, isShown: this.isShown, shouldMountContent: this.shouldMountContent, skipTransition: this.skipTransition, autoHide: typeof this.autoHide === "function" ? this.lastAutoHide : this.autoHide, show: this.show, hide: this.hide, handleResize: this.handleResize, onResize: this.onResize, classes: __spreadProps(__spreadValues({}, this.classes), { popperClass: this.popperClass }), result: this.positioningDisabled ? null : this.result }; }, parentPopper() { var _a; return (_a = this[PROVIDE_KEY]) == null ? void 0 : _a.parentPopper; }, hasPopperShowTriggerHover() { var _a, _b; return ((_a = this.popperTriggers) == null ? void 0 : _a.includes("hover")) || ((_b = this.popperShowTriggers) == null ? void 0 : _b.includes("hover")); } }, watch: __spreadValues(__spreadValues({ shown: "$_autoShowHide", disabled(value) { if (value) { this.dispose(); } else { this.init(); } }, async container() { if (this.isShown) { this.$_ensureTeleport(); await this.$_computePosition(); } } }, [ "triggers", "positioningDisabled" ].reduce((acc, prop) => { acc[prop] = "$_refreshListeners"; return acc; }, {})), [ "placement", "distance", "skidding", "boundary", "strategy", "overflowPadding", "arrowPadding", "preventOverflow", "shift", "shiftCrossAxis", "flip" ].reduce((acc, prop) => { acc[prop] = "$_computePosition"; return acc; }, {})), created() { this.$_isDisposed = true; this.randomId = `popper_${[Math.random(), Date.now()].map((n) => n.toString(36).substring(2, 10)).join("_")}`; if (this.autoMinSize) { console.warn('[floating-vue] `autoMinSize` option is deprecated. Use `autoSize="min"` instead.'); } if (this.autoMaxSize) { console.warn("[floating-vue] `autoMaxSize` option is deprecated. Use `autoBoundaryMaxSize` instead."); } }, mounted() { this.init(); this.$_detachPopperNode(); }, activated() { this.$_autoShowHide(); }, deactivated() { this.hide(); }, beforeDestroy() { this.dispose(); }, methods: { show({ event = null, skipDelay = false, force = false } = {}) { var _a, _b; if (((_a = this.parentPopper) == null ? void 0 : _a.lockedChild) && this.parentPopper.lockedChild !== this) return; this.$_pendingHide = false; if (force || !this.disabled) { if (((_b = this.parentPopper) == null ? void 0 : _b.lockedChild) === this) { this.parentPopper.lockedChild = null; } this.$_scheduleShow(event, skipDelay); this.$emit("show"); this.$_showFrameLocked = true; requestAnimationFrame(() => { this.$_showFrameLocked = false; }); } this.$emit("update:shown", true); }, hide({ event = null, skipDelay = false, skipAiming = false } = {}) { var _a; if (this.$_hideInProgress) return; if (this.shownChildren.size > 0) { this.$_pendingHide = true; return; } if (!skipAiming && this.hasPopperShowTriggerHover && this.$_isAimingPopper()) { if (this.parentPopper) { this.parentPopper.lockedChild = this; clearTimeout(this.parentPopper.lockedChildTimer); this.parentPopper.lockedChildTimer = setTimeout(() => { if (this.parentPopper.lockedChild === this) { this.parentPopper.lockedChild.hide({ skipDelay }); this.parentPopper.lockedChild = null; } }, 1e3); } return; } if (((_a = this.parentPopper) == null ? void 0 : _a.lockedChild) === this) { this.parentPopper.lockedChild = null; } this.$_pendingHide = false; this.$_scheduleHide(event, skipDelay); this.$emit("hide"); this.$emit("update:shown", false); }, init() { if (!this.$_isDisposed) return; this.$_isDisposed = false; this.isMounted = false; this.$_events = []; this.$_preventShow = false; this.$_referenceNode = this.referenceNode(); this.$_targetNodes = this.targetNodes().filter((e) => e.nodeType === e.ELEMENT_NODE); this.$_popperNode = this.popperNode(); this.$_innerNode = this.$_popperNode.querySelector(".v-popper__inner"); this.$_arrowNode = this.$_popperNode.querySelector(".v-popper__arrow-container"); this.$_swapTargetAttrs("title", "data-original-title"); this.$_detachPopperNode(); if (this.triggers.length) { this.$_addEventListeners(); } if (this.shown) { this.show(); } }, dispose() { if (this.$_isDisposed) return; this.$_isDisposed = true; this.$_removeEventListeners(); this.hide({ skipDelay: true }); this.$_detachPopperNode(); this.isMounted = false; this.isShown = false; this.$_updateParentShownChildren(false); this.$_swapTargetAttrs("data-original-title", "title"); this.$emit("dispose"); }, async onResize() { if (this.isShown) { await this.$_computePosition(); this.$emit("resize"); } }, async $_computePosition() { var _a; if (this.$_isDisposed || this.positioningDisabled) return; const options2 = { strategy: this.strategy, middleware: [] }; if (this.distance || this.skidding) { options2.middleware.push((0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.offset)({ mainAxis: this.distance, crossAxis: this.skidding })); } const isPlacementAuto = this.placement.startsWith("auto"); if (isPlacementAuto) { options2.middleware.push((0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.autoPlacement)({ alignment: (_a = this.placement.split("-")[1]) != null ? _a : "" })); } else { options2.placement = this.placement; } if (this.preventOverflow) { if (this.shift) { options2.middleware.push((0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.shift)({ padding: this.overflowPadding, boundary: this.boundary, crossAxis: this.shiftCrossAxis })); } if (!isPlacementAuto && this.flip) { options2.middleware.push((0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.flip)({ padding: this.overflowPadding, boundary: this.boundary })); } } options2.middleware.push((0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.arrow)({ element: this.$_arrowNode, padding: this.arrowPadding })); if (this.arrowOverflow) { options2.middleware.push({ name: "arrowOverflow", fn: ({ placement, rects, middlewareData }) => { let overflow; const { centerOffset } = middlewareData.arrow; if (placement.startsWith("top") || placement.startsWith("bottom")) { overflow = Math.abs(centerOffset) > rects.reference.width / 2; } else { overflow = Math.abs(centerOffset) > rects.reference.height / 2; } return { data: { overflow } }; } }); } if (this.autoMinSize || this.autoSize) { const autoSize = this.autoSize ? this.autoSize : this.autoMinSize ? "min" : null; options2.middleware.push({ name: "autoSize", fn: ({ rects, placement, middlewareData }) => { var _a2; if ((_a2 = middlewareData.autoSize) == null ? void 0 : _a2.skip) { return {}; } let width; let height; if (placement.startsWith("top") || placement.startsWith("bottom")) { width = rects.reference.width; } else { height = rects.reference.height; } this.$_innerNode.style[autoSize === "min" ? "minWidth" : autoSize === "max" ? "maxWidth" : "width"] = width != null ? `${width}px` : null; this.$_innerNode.style[autoSize === "min" ? "minHeight" : autoSize === "max" ? "maxHeight" : "height"] = height != null ? `${height}px` : null; return { data: { skip: true }, reset: { rects: true } }; } }); } if (this.autoMaxSize || this.autoBoundaryMaxSize) { this.$_innerNode.style.maxWidth = null; this.$_innerNode.style.maxHeight = null; options2.middleware.push((0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.size)({ boundary: this.boundary, padding: this.overflowPadding, apply: ({ width, height }) => { this.$_innerNode.style.maxWidth = width != null ? `${width}px` : null; this.$_innerNode.style.maxHeight = height != null ? `${height}px` : null; } })); } const data = await (0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_1__.computePosition)(this.$_referenceNode, this.$_popperNode, options2); Object.assign(this.result, { x: data.x, y: data.y, placement: data.placement, strategy: data.strategy, arrow: __spreadValues(__spreadValues({}, data.middlewareData.arrow), data.middlewareData.arrowOverflow) }); }, $_scheduleShow(event = null, skipDelay = false) { this.$_updateParentShownChildren(true); this.$_hideInProgress = false; clearTimeout(this.$_scheduleTimer); if (hidingPopper && this.instantMove && hidingPopper.instantMove && hidingPopper !== this.parentPopper) { hidingPopper.$_applyHide(true); this.$_applyShow(true); return; } if (skipDelay) { this.$_applyShow(); } else { this.$_scheduleTimer = setTimeout(this.$_applyShow.bind(this), this.$_computeDelay("show")); } }, $_scheduleHide(event = null, skipDelay = false) { if (this.shownChildren.size > 0) { this.$_pendingHide = true; return; } this.$_updateParentShownChildren(false); this.$_hideInProgress = true; clearTimeout(this.$_scheduleTimer); if (this.isShown) { hidingPopper = this; } if (skipDelay) { this.$_applyHide(); } else { this.$_scheduleTimer = setTimeout(this.$_applyHide.bind(this), this.$_computeDelay("hide")); } }, $_computeDelay(type) { const delay = this.delay; return parseInt(delay && delay[type] || delay || 0); }, async $_applyShow(skipTransition = false) { clearTimeout(this.$_disposeTimer); clearTimeout(this.$_scheduleTimer); this.skipTransition = skipTransition; if (this.isShown) { return; } this.$_ensureTeleport(); await nextFrame(); await this.$_computePosition(); await this.$_applyShowEffect(); if (!this.positioningDisabled) { this.$_registerEventListeners([ ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_1__.getScrollParents)(this.$_referenceNode), ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_1__.getScrollParents)(this.$_popperNode) ], "scroll", () => { this.$_computePosition(); }); } }, async $_applyShowEffect() { if (this.$_hideInProgress) return; if (this.computeTransformOrigin) { const bounds = this.$_referenceNode.getBoundingClientRect(); const popperWrapper = this.$_popperNode.querySelector(".v-popper__wrapper"); const parentBounds = popperWrapper.parentNode.getBoundingClientRect(); const x = bounds.x + bounds.width / 2 - (parentBounds.left + popperWrapper.offsetLeft); const y = bounds.y + bounds.height / 2 - (parentBounds.top + popperWrapper.offsetTop); this.result.transformOrigin = `${x}px ${y}px`; } this.isShown = true; this.$_applyAttrsToTarget({ "aria-describedby": this.popperId, "data-popper-shown": "" }); const showGroup = this.showGroup; if (showGroup) { let popover; for (let i = 0; i < shownPoppers.length; i++) { popover = shownPoppers[i]; if (popover.showGroup !== showGroup) { popover.hide(); popover.$emit("close-group"); } } } shownPoppers.push(this); document.body.classList.add("v-popper--some-open"); for (const theme of getAllParentThemes(this.theme)) { getShownPoppersByTheme(theme).push(this); document.body.classList.add(`v-popper--some-open--${theme}`); } this.$emit("apply-show"); this.classes.showFrom = true; this.classes.showTo = false; this.classes.hideFrom = false; this.classes.hideTo = false; await nextFrame(); this.classes.showFrom = false; this.classes.showTo = true; if (!this.noAutoFocus) this.$_popperNode.focus(); }, async $_applyHide(skipTransition = false) { if (this.shownChildren.size > 0) { this.$_pendingHide = true; this.$_hideInProgress = false; return; } clearTimeout(this.$_scheduleTimer); if (!this.isShown) { return; } this.skipTransition = skipTransition; removeFromArray(shownPoppers, this); if (shownPoppers.length === 0) { document.body.classList.remove("v-popper--some-open"); } for (const theme of getAllParentThemes(this.theme)) { const list = getShownPoppersByTheme(theme); removeFromArray(list, this); if (list.length === 0) { document.body.classList.remove(`v-popper--some-open--${theme}`); } } if (hidingPopper === this) { hidingPopper = null; } this.isShown = false; this.$_applyAttrsToTarget({ "aria-describedby": void 0, "data-popper-shown": void 0 }); clearTimeout(this.$_disposeTimer); const disposeTime = getDefaultConfig(this.theme, "disposeTimeout"); if (disposeTime !== null) { this.$_disposeTimer = setTimeout(() => { if (this.$_popperNode) { this.$_detachPopperNode(); this.isMounted = false; } }, disposeTime); } this.$_removeEventListeners("scroll"); this.$emit("apply-hide"); this.classes.showFrom = false; this.classes.showTo = false; this.classes.hideFrom = true; this.classes.hideTo = false; await nextFrame(); this.classes.hideFrom = false; this.classes.hideTo = true; }, $_autoShowHide() { if (this.shown) { this.show(); } else { this.hide(); } }, $_ensureTeleport() { if (this.$_isDisposed) return; let container = this.container; if (typeof container === "string") { container = window.document.querySelector(container); } else if (container === false) { container = this.$_targetNodes[0].parentNode; } if (!container) { throw new Error("No container for popover: " + this.container); } container.appendChild(this.$_popperNode); this.isMounted = true; }, $_addEventListeners() { const handleShow = (event) => { if (this.isShown && !this.$_hideInProgress) { return; } event.usedByTooltip = true; !this.$_preventShow && this.show({ event }); }; this.$_registerTriggerListeners(this.$_targetNodes, SHOW_EVENT_MAP, this.triggers, this.showTriggers, handleShow); this.$_registerTriggerListeners([this.$_popperNode], SHOW_EVENT_MAP, this.popperTriggers, this.popperShowTriggers, handleShow); const handleHide = (skipAiming) => (event) => { if (event.usedByTooltip) { return; } this.hide({ event, skipAiming }); }; this.$_registerTriggerListeners(this.$_targetNodes, HIDE_EVENT_MAP, this.triggers, this.hideTriggers, handleHide(false)); this.$_registerTriggerListeners([this.$_popperNode], HIDE_EVENT_MAP, this.popperTriggers, this.popperHideTriggers, handleHide(true)); }, $_registerEventListeners(targetNodes, eventType, handler) { this.$_events.push({ targetNodes, eventType, handler }); targetNodes.forEach((node) => node.addEventListener(eventType, handler, supportsPassive ? { passive: true } : void 0)); }, $_registerTriggerListeners(targetNodes, eventMap, commonTriggers, customTrigger, handler) { let triggers = commonTriggers; if (customTrigger != null) { triggers = typeof customTrigger === "function" ? customTrigger(triggers) : customTrigger; } triggers.forEach((trigger) => { const eventType = eventMap[trigger]; if (eventType) { this.$_registerEventListeners(targetNodes, eventType, handler); } }); }, $_removeEventListeners(filterEventType) { const newList = []; this.$_events.forEach((listener) => { const { targetNodes, eventType, handler } = listener; if (!filterEventType || filterEventType === eventType) { targetNodes.forEach((node) => node.removeEventListener(eventType, handler)); } else { newList.push(listener); } }); this.$_events = newList; }, $_refreshListeners() { if (!this.$_isDisposed) { this.$_removeEventListeners(); this.$_addEventListeners(); } }, $_handleGlobalClose(event, touch = false) { if (this.$_showFrameLocked) return; this.hide({ event }); if (event.closePopover) { this.$emit("close-directive"); } else { this.$emit("auto-hide"); } if (touch) { this.$_preventShow = true; setTimeout(() => { this.$_preventShow = false; }, 300); } }, $_detachPopperNode() { this.$_popperNode.parentNode && this.$_popperNode.parentNode.removeChild(this.$_popperNode); }, $_swapTargetAttrs(attrFrom, attrTo) { for (const el of this.$_targetNodes) { const value = el.getAttribute(attrFrom); if (value) { el.removeAttribute(attrFrom); el.setAttribute(attrTo, value); } } }, $_applyAttrsToTarget(attrs) { for (const el of this.$_targetNodes) { for (const n in attrs) { const value = attrs[n]; if (value == null) { el.removeAttribute(n); } else { el.setAttribute(n, value); } } } }, $_updateParentShownChildren(value) { let parent = this.parentPopper; while (parent) { if (value) { parent.shownChildren.add(this.randomId); } else { parent.shownChildren.delete(this.randomId); if (parent.$_pendingHide) { parent.hide(); } } parent = parent.parentPopper; } }, $_isAimingPopper() { const referenceBounds = this.$el.getBoundingClientRect(); if (mouseX >= referenceBounds.left && mouseX <= referenceBounds.right && mouseY >= referenceBounds.top && mouseY <= referenceBounds.bottom) { const popperBounds = this.$_popperNode.getBoundingClientRect(); const vectorX = mouseX - mousePreviousX; const vectorY = mouseY - mousePreviousY; const distance = popperBounds.left + popperBounds.width / 2 - mousePreviousX + (popperBounds.top + popperBounds.height / 2) - mousePreviousY; const newVectorLength = distance + popperBounds.width + popperBounds.height; const edgeX = mousePreviousX + vectorX * newVectorLength; const edgeY = mousePreviousY + vectorY * newVectorLength; return lineIntersectsLine(mousePreviousX, mousePreviousY, edgeX, edgeY, popperBounds.left, popperBounds.top, popperBounds.left, popperBounds.bottom) || lineIntersectsLine(mousePreviousX, mousePreviousY, edgeX, edgeY, popperBounds.left, popperBounds.top, popperBounds.right, popperBounds.top) || lineIntersectsLine(mousePreviousX, mousePreviousY, edgeX, edgeY, popperBounds.right, popperBounds.top, popperBounds.right, popperBounds.bottom) || lineIntersectsLine(mousePreviousX, mousePreviousY, edgeX, edgeY, popperBounds.left, popperBounds.bottom, popperBounds.right, popperBounds.bottom); } return false; } }, render() { return this.$scopedSlots.default(this.slotData)[0]; } }); if (typeof document !== "undefined" && typeof window !== "undefined") { if (isIOS) { document.addEventListener("touchstart", handleGlobalMousedown, supportsPassive ? { passive: true, capture: true } : true); document.addEventListener("touchend", handleGlobalTouchend, supportsPassive ? { passive: true, capture: true } : true); } else { window.addEventListener("mousedown", handleGlobalMousedown, true); window.addEventListener("click", handleGlobalClick, true); } window.addEventListener("resize", computePositionAllShownPoppers); } function handleGlobalMousedown(event) { for (let i = 0; i < shownPoppers.length; i++) { const popper = shownPoppers[i]; try { const popperContent = popper.popperNode(); popper.$_mouseDownContains = popperContent.contains(event.target); } catch (e) { } } } function handleGlobalClick(event) { handleGlobalClose(event); } function handleGlobalTouchend(event) { handleGlobalClose(event, true); } function handleGlobalClose(event, touch = false) { const preventClose = {}; for (let i = shownPoppers.length - 1; i >= 0; i--) { const popper = shownPoppers[i]; try { const contains = popper.$_containsGlobalTarget = isContainingEventTarget(popper, event); popper.$_pendingHide = false; requestAnimationFrame(() => { popper.$_pendingHide = false; if (preventClose[popper.randomId]) return; if (shouldAutoHide(popper, contains, event)) { popper.$_handleGlobalClose(event, touch); if (!event.closeAllPopover && event.closePopover && contains) { let parent2 = popper.parentPopper; while (parent2) { preventClose[parent2.randomId] = true; parent2 = parent2.parentPopper; } return; } let parent = popper.parentPopper; while (parent) { if (shouldAutoHide(parent, parent.$_containsGlobalTarget, event)) { parent.$_handleGlobalClose(event, touch); } else { break; } parent = parent.parentPopper; } } }); } catch (e) { } } } function isContainingEventTarget(popper, event) { const popperContent = popper.popperNode(); return popper.$_mouseDownContains || popperContent.contains(event.target); } function shouldAutoHide(popper, contains, event) { return event.closeAllPopover || event.closePopover && contains || getAutoHideResult(popper, event) && !contains; } function getAutoHideResult(popper, event) { if (typeof popper.autoHide === "function") { const result = popper.autoHide(event); popper.lastAutoHide = result; return result; } return popper.autoHide; } function computePositionAllShownPoppers(event) { for (let i = 0; i < shownPoppers.length; i++) { const popper = shownPoppers[i]; popper.$_computePosition(event); } } function hideAllPoppers() { for (let i = 0; i < shownPoppers.length; i++) { const popper = shownPoppers[i]; popper.hide(); } } let mousePreviousX = 0; let mousePreviousY = 0; let mouseX = 0; let mouseY = 0; if (typeof window !== "undefined") { window.addEventListener("mousemove", (event) => { mousePreviousX = mouseX; mousePreviousY = mouseY; mouseX = event.clientX; mouseY = event.clientY; }, supportsPassive ? { passive: true } : void 0); } function lineIntersectsLine(x1, y1, x2, y2, x3, y3, x4, y4) { const uA = ((x4 - x3) * (y1 - y3) - (y4 - y3) * (x1 - x3)) / ((y4 - y3) * (x2 - x1) - (x4 - x3) * (y2 - y1)); const uB = ((x2 - x1) * (y1 - y3) - (y2 - y1) * (x1 - x3)) / ((y4 - y3) * (x2 - x1) - (x4 - x3) * (y2 - y1)); return uA >= 0 && uA <= 1 && uB >= 0 && uB <= 1; } function getInternetExplorerVersion() { var ua = window.navigator.userAgent; var msie = ua.indexOf("MSIE "); if (msie > 0) { return parseInt(ua.substring(msie + 5, ua.indexOf(".", msie)), 10); } var trident = ua.indexOf("Trident/"); if (trident > 0) { var rv = ua.indexOf("rv:"); return parseInt(ua.substring(rv + 3, ua.indexOf(".", rv)), 10); } var edge = ua.indexOf("Edge/"); if (edge > 0) { return parseInt(ua.substring(edge + 5, ua.indexOf(".", edge)), 10); } return -1; } var isIE; function initCompat() { if (!initCompat.init) { initCompat.init = true; isIE = getInternetExplorerVersion() !== -1; } } var script = { name: "ResizeObserver", props: { emitOnMount: { type: Boolean, default: false }, ignoreWidth: { type: Boolean, default: false }, ignoreHeight: { type: Boolean, default: false } }, mounted: function mounted() { var _this = this; initCompat(); this.$nextTick(function() { _this._w = _this.$el.offsetWidth; _this._h = _this.$el.offsetHeight; if (_this.emitOnMount) { _this.emitSize(); } }); var object = document.createElement("object"); this._resizeObject = object; object.setAttribute("aria-hidden", "true"); object.setAttribute("tabindex", -1); object.onload = this.addResizeHandlers; object.type = "text/html"; if (isIE) { this.$el.appendChild(object); } object.data = "about:blank"; if (!isIE) { this.$el.appendChild(object); } }, beforeDestroy: function beforeDestroy() { this.removeResizeHandlers(); }, methods: { compareAndNotify: function compareAndNotify() { if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) { this._w = this.$el.offsetWidth; this._h = this.$el.offsetHeight; this.emitSize(); } }, emitSize: function emitSize() { this.$emit("notify", { width: this._w, height: this._h }); }, addResizeHandlers: function addResizeHandlers() { this._resizeObject.contentDocument.defaultView.addEventListener("resize", this.compareAndNotify); this.compareAndNotify(); }, removeResizeHandlers: function removeResizeHandlers() { if (this._resizeObject && this._resizeObject.onload) { if (!isIE && this._resizeObject.contentDocument) { this._resizeObject.contentDocument.defaultView.removeEventListener("resize", this.compareAndNotify); } this.$el.removeChild(this._resizeObject); this._resizeObject.onload = null; this._resizeObject = null; } } } }; function normalizeComponent$1(template, style, script2, scopeId, isFunctionalTemplate, moduleIdentifier, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { if (typeof shadowMode !== "boolean") { createInjectorSSR = createInjector; createInjector = shadowMode; shadowMode = false; } var options2 = typeof script2 === "function" ? script2.options : script2; if (template && template.render) { options2.render = template.render; options2.staticRenderFns = template.staticRenderFns; options2._compiled = true; if (isFunctionalTemplate) { options2.functional = true; } } if (scopeId) { options2._scopeId = scopeId; } var hook; if (moduleIdentifier) { hook = function hook2(context) { context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") { context = __VUE_SSR_CONTEXT__; } if (style) { style.call(this, createInjectorSSR(context)); } if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier); } }; options2._ssrRegister = hook; } else if (style) { hook = shadowMode ? function(context) { style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); } : function(context) { style.call(this, createInjector(context)); }; } if (hook) { if (options2.functional) { var originalRender = options2.render; options2.render = function renderWithStyleInjection(h, context) { hook.call(context); return originalRender(h, context); }; } else { var existing = options2.beforeCreate; options2.beforeCreate = existing ? [].concat(existing, hook) : [hook]; } } return script2; } var __vue_script__ = script; var __vue_render__ = function __vue_render__2() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c("div", { staticClass: "resize-observer", attrs: { tabindex: "-1" } }); }; var __vue_staticRenderFns__ = []; __vue_render__._withStripped = true; var __vue_inject_styles__ = void 0; var __vue_scope_id__ = "data-v-8859cc6c"; var __vue_module_identifier__ = void 0; var __vue_is_functional_template__ = false; var __vue_component__ = /* @__PURE__ */ normalizeComponent$1({ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ }, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, void 0, void 0, void 0); function install$1(Vue2) { Vue2.component("resize-observer", __vue_component__); Vue2.component("ResizeObserver", __vue_component__); } var plugin$1 = { version: "1.0.1", install: install$1 }; var GlobalVue$1 = null; if (typeof window !== "undefined") { GlobalVue$1 = window.Vue; } else if (typeof __webpack_require__.g !== "undefined") { GlobalVue$1 = __webpack_require__.g.Vue; } if (GlobalVue$1) { GlobalVue$1.use(plugin$1); } var PrivateThemeClass = { computed: { themeClass() { return getThemeClasses(this.theme); } } }; var __vue2_script$5 = { name: "VPopperContent", components: { ResizeObserver: __vue_component__ }, mixins: [ PrivateThemeClass ], props: { popperId: String, theme: String, shown: Boolean, mounted: Boolean, skipTransition: Boolean, autoHide: Boolean, handleResize: Boolean, classes: Object, result: Object }, methods: { toPx(value) { if (value != null && !isNaN(value)) { return `${value}px`; } return null; } } }; var render$2 = function() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c("div", { ref: "popover", staticClass: "v-popper__popper", class: [ _vm.themeClass, _vm.classes.popperClass, { "v-popper__popper--shown": _vm.shown, "v-popper__popper--hidden": !_vm.shown, "v-popper__popper--show-from": _vm.classes.showFrom, "v-popper__popper--show-to": _vm.classes.showTo, "v-popper__popper--hide-from": _vm.classes.hideFrom, "v-popper__popper--hide-to": _vm.classes.hideTo, "v-popper__popper--skip-transition": _vm.skipTransition, "v-popper__popper--arrow-overflow": _vm.result && _vm.result.arrow.overflow, "v-popper__popper--no-positioning": !_vm.result } ], style: _vm.result ? { position: _vm.result.strategy, transform: "translate3d(" + Math.round(_vm.result.x) + "px," + Math.round(_vm.result.y) + "px,0)" } : void 0, attrs: { "id": _vm.popperId, "aria-hidden": _vm.shown ? "false" : "true", "tabindex": _vm.autoHide ? 0 : void 0, "data-popper-placement": _vm.result ? _vm.result.placement : void 0 }, on: { "keyup": function($event) { if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "esc", 27, $event.key, ["Esc", "Escape"])) { return null; } _vm.autoHide && _vm.$emit("hide"); } } }, [_c("div", { staticClass: "v-popper__backdrop", on: { "click": function($event) { _vm.autoHide && _vm.$emit("hide"); } } }), _c("div", { staticClass: "v-popper__wrapper", style: _vm.result ? { transformOrigin: _vm.result.transformOrigin } : void 0 }, [_c("div", { ref: "inner", staticClass: "v-popper__inner" }, [_vm.mounted ? [_c("div", [_vm._t("default")], 2), _vm.handleResize ? _c("ResizeObserver", { on: { "notify": function($event) { return _vm.$emit("resize", $event); } } }) : _vm._e()] : _vm._e()], 2), _c("div", { ref: "arrow", staticClass: "v-popper__arrow-container", style: _vm.result ? { left: _vm.toPx(_vm.result.arrow.x), top: _vm.toPx(_vm.result.arrow.y) } : void 0 }, [_c("div", { staticClass: "v-popper__arrow-outer" }), _c("div", { staticClass: "v-popper__arrow-inner" })])])]); }; var staticRenderFns$2 = []; var PopperContent_vue_vue_type_style_index_0_lang = ""; function normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) { var options2 = typeof scriptExports === "function" ? scriptExports.options : scriptExports; if (render2) { options2.render = render2; options2.staticRenderFns = staticRenderFns2; options2._compiled = true; } if (functionalTemplate) { options2.functional = true; } if (scopeId) { options2._scopeId = "data-v-" + scopeId; } var hook; if (moduleIdentifier) { hook = function(context) { context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") { context = __VUE_SSR_CONTEXT__; } if (injectStyles) { injectStyles.call(this, context); } if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier); } }; options2._ssrRegister = hook; } else if (injectStyles) { hook = shadowMode ? function() { injectStyles.call(this, (options2.functional ? this.parent : this).$root.$options.shadowRoot); } : injectStyles; } if (hook) { if (options2.functional) { options2._injectStyles = hook; var originalRender = options2.render; options2.render = function renderWithStyleInjection(h, context) { hook.call(context); return originalRender(h, context); }; } else { var existing = options2.beforeCreate; options2.beforeCreate = existing ? [].concat(existing, hook) : [hook]; } } return { exports: scriptExports, options: options2 }; } const __cssModules$5 = {}; var __component__$5 = /* @__PURE__ */ normalizeComponent(__vue2_script$5, render$2, staticRenderFns$2, false, __vue2_injectStyles$5, null, null, null); function __vue2_injectStyles$5(context) { for (let o in __cssModules$5) { this[o] = __cssModules$5[o]; } } var PrivatePopperContent = /* @__PURE__ */ function() { return __component__$5.exports; }(); var PrivatePopperMethods = { methods: { show(...args) { return this.$refs.popper.show(...args); }, hide(...args) { return this.$refs.popper.hide(...args); }, dispose(...args) { return this.$refs.popper.dispose(...args); }, onResize(...args) { return this.$refs.popper.onResize(...args); } } }; var __vue2_script$4 = { name: "VPopperWrapper", components: { Popper: PrivatePopper(), PopperContent: PrivatePopperContent }, mixins: [ PrivatePopperMethods, PrivateThemeClass ], inheritAttrs: false, props: { theme: { type: String, default() { return this.$options.vPopperTheme; } } }, methods: { getTargetNodes() { return Array.from(this.$refs.reference.children).filter((node) => node !== this.$refs.popperContent.$el); } } }; var render$1 = function() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c("Popper", _vm._g(_vm._b({ ref: "popper", attrs: { "theme": _vm.theme, "target-nodes": _vm.getTargetNodes, "reference-node": function() { return _vm.$refs.reference; }, "popper-node": function() { return _vm.$refs.popperContent.$el; } }, scopedSlots: _vm._u([{ key: "default", fn: function(ref) { var popperId = ref.popperId; var isShown = ref.isShown; var shouldMountContent = ref.shouldMountContent; var skipTransition = ref.skipTransition; var autoHide = ref.autoHide; var show = ref.show; var hide = ref.hide; var handleResize = ref.handleResize; var onResize = ref.onResize; var classes = ref.classes; var result = ref.result; return [_c("div", { ref: "reference", staticClass: "v-popper", class: [ _vm.themeClass, { "v-popper--shown": isShown } ] }, [_vm._t("default", null, { "shown": isShown, "show": show, "hide": hide }), _c("PopperContent", { ref: "popperContent", attrs: { "popper-id": popperId, "theme": _vm.theme, "shown": isShown, "mounted": shouldMountContent, "skip-transition": skipTransition, "auto-hide": autoHide, "handle-resize": handleResize, "classes": classes, "result": result }, on: { "hide": hide, "resize": onResize } }, [_vm._t("popper", null, { "shown": isShown, "hide": hide })], 2)], 2)]; } }], null, true) }, "Popper", _vm.$attrs, false), _vm.$listeners)); }; var staticRenderFns$1 = []; const __cssModules$4 = {}; var __component__$4 = /* @__PURE__ */ normalizeComponent(__vue2_script$4, render$1, staticRenderFns$1, false, __vue2_injectStyles$4, null, null, null); function __vue2_injectStyles$4(context) { for (let o in __cssModules$4) { this[o] = __cssModules$4[o]; } } var PrivatePopperWrapper = /* @__PURE__ */ function() { return __component__$4.exports; }(); var __vue2_script$3 = __spreadProps(__spreadValues({}, PrivatePopperWrapper), { name: "VDropdown", vPopperTheme: "dropdown" }); var Dropdown_vue_vue_type_style_index_0_lang = ""; let __vue2_render$2, __vue2_staticRenderFns$2; const __cssModules$3 = {}; var __component__$3 = /* @__PURE__ */ normalizeComponent(__vue2_script$3, __vue2_render$2, __vue2_staticRenderFns$2, false, __vue2_injectStyles$3, null, null, null); function __vue2_injectStyles$3(context) { for (let o in __cssModules$3) { this[o] = __cssModules$3[o]; } } var PrivateDropdown = /* @__PURE__ */ function() { return __component__$3.exports; }(); var __vue2_script$2 = __spreadProps(__spreadValues({}, PrivatePopperWrapper), { name: "VMenu", vPopperTheme: "menu" }); let __vue2_render$1, __vue2_staticRenderFns$1; const __cssModules$2 = {}; var __component__$2 = /* @__PURE__ */ normalizeComponent(__vue2_script$2, __vue2_render$1, __vue2_staticRenderFns$1, false, __vue2_injectStyles$2, null, null, null); function __vue2_injectStyles$2(context) { for (let o in __cssModules$2) { this[o] = __cssModules$2[o]; } } var PrivateMenu = /* @__PURE__ */ function() { return __component__$2.exports; }(); var __vue2_script$1 = __spreadProps(__spreadValues({}, PrivatePopperWrapper), { name: "VTooltip", vPopperTheme: "tooltip" }); var Tooltip_vue_vue_type_style_index_0_lang = ""; let __vue2_render, __vue2_staticRenderFns; const __cssModules$1 = {}; var __component__$1 = /* @__PURE__ */ normalizeComponent(__vue2_script$1, __vue2_render, __vue2_staticRenderFns, false, __vue2_injectStyles$1, null, null, null); function __vue2_injectStyles$1(context) { for (let o in __cssModules$1) { this[o] = __cssModules$1[o]; } } var PrivateTooltip = /* @__PURE__ */ function() { return __component__$1.exports; }(); var __vue2_script = { name: "VTooltipDirective", components: { Popper: PrivatePopper(), PopperContent: PrivatePopperContent }, mixins: [ PrivatePopperMethods ], inheritAttrs: false, props: { theme: { type: String, default: "tooltip" }, html: { type: Boolean, default() { return getDefaultConfig(this.theme, "html"); } }, content: { type: [String, Number, Function], default: null }, loadingContent: { type: String, default() { return getDefaultConfig(this.theme, "loadingContent"); } } }, data() { return { asyncContent: null }; }, computed: { isContentAsync() { return typeof this.content === "function"; }, loading() { return this.isContentAsync && this.asyncContent == null; }, finalContent() { if (this.isContentAsync) { return this.loading ? this.loadingContent : this.asyncContent; } return this.content; } }, watch: { content: { handler() { this.fetchContent(true); }, immediate: true }, async finalContent(value) { await this.$nextTick(); this.$refs.popper.onResize(); } }, created() { this.$_fetchId = 0; }, methods: { fetchContent(force) { if (typeof this.content === "function" && this.$_isShown && (force || !this.$_loading && this.asyncContent == null)) { this.asyncContent = null; this.$_loading = true; const fetchId = ++this.$_fetchId; const result = this.content(this); if (result.then) { result.then((res) => this.onResult(fetchId, res)); } else { this.onResult(fetchId, result); } } }, onResult(fetchId, result) { if (fetchId !== this.$_fetchId) return; this.$_loading = false; this.asyncContent = result; }, onShow() { this.$_isShown = true; this.fetchContent(); }, onHide() { this.$_isShown = false; } } }; var render = function() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c("Popper", _vm._g(_vm._b({ ref: "popper", attrs: { "theme": _vm.theme, "popper-node": function() { return _vm.$refs.popperContent.$el; } }, on: { "apply-show": _vm.onShow, "apply-hide": _vm.onHide }, scopedSlots: _vm._u([{ key: "default", fn: function(ref) { var popperId = ref.popperId; var isShown = ref.isShown; var shouldMountContent = ref.shouldMountContent; var skipTransition = ref.skipTransition; var autoHide = ref.autoHide; var hide = ref.hide; var handleResize = ref.handleResize; var onResize = ref.onResize; var classes = ref.classes; var result = ref.result; return [_c("PopperContent", { ref: "popperContent", class: { "v-popper--tooltip-loading": _vm.loading }, attrs: { "popper-id": popperId, "theme": _vm.theme, "shown": isShown, "mounted": shouldMountContent, "skip-transition": skipTransition, "auto-hide": autoHide, "handle-resize": handleResize, "classes": classes, "result": result }, on: { "hide": hide, "resize": onResize } }, [_vm.html ? _c("div", { domProps: { "innerHTML": _vm._s(_vm.finalContent) } }) : _c("div", { domProps: { "textContent": _vm._s(_vm.finalContent) } })])]; } }]) }, "Popper", _vm.$attrs, false), _vm.$listeners)); }; var staticRenderFns = []; const __cssModules = {}; var __component__ = /* @__PURE__ */ normalizeComponent(__vue2_script, render, staticRenderFns, false, __vue2_injectStyles, null, null, null); function __vue2_injectStyles(context) { for (let o in __cssModules) { this[o] = __cssModules[o]; } } var PrivateTooltipDirective = /* @__PURE__ */ function() { return __component__.exports; }(); const TARGET_CLASS = "v-popper--has-tooltip"; function getPlacement(options2, modifiers) { let result = options2.placement; if (!result && modifiers) { for (const pos of placements) { if (modifiers[pos]) { result = pos; } } } if (!result) { result = getDefaultConfig(options2.theme || "tooltip", "placement"); } return result; } function getOptions(el, value, modifiers) { let options2; const type = typeof value; if (type === "string") { options2 = { content: value }; } else if (value && type === "object") { options2 = value; } else { options2 = { content: false }; } options2.placement = getPlacement(options2, modifiers); options2.targetNodes = () => [el]; options2.referenceNode = () => el; return options2; } function createTooltip(el, value, modifiers) { const options2 = getOptions(el, value, modifiers); const tooltipApp = el.$_popper = new vue__WEBPACK_IMPORTED_MODULE_2__["default"]({ mixins: [ PrivatePopperMethods ], data() { return { options: options2 }; }, render(h) { const _a = this.options, { theme, html, content, loadingContent } = _a, otherOptions = __objRest(_a, [ "theme", "html", "content", "loadingContent" ]); return h(PrivateTooltipDirective, { props: { theme, html, content, loadingContent }, attrs: otherOptions, ref: "popper" }); }, devtools: { hide: true } }); const mountTarget = document.createElement("div"); document.body.appendChild(mountTarget); tooltipApp.$mount(mountTarget); if (el.classList) { el.classList.add(TARGET_CLASS); } return tooltipApp; } function destroyTooltip(el) { if (el.$_popper) { el.$_popper.$destroy(); delete el.$_popper; delete el.$_popperOldShown; } if (el.classList) { el.classList.remove(TARGET_CLASS); } } function bind(el, { value, oldValue, modifiers }) { const options2 = getOptions(el, value, modifiers); if (!options2.content || getDefaultConfig(options2.theme || "tooltip", "disabled")) { destroyTooltip(el); } else { let tooltipApp; if (el.$_popper) { tooltipApp = el.$_popper; tooltipApp.options = options2; } else { tooltipApp = createTooltip(el, value, modifiers); } if (typeof value.shown !== "undefined" && value.shown !== el.$_popperOldShown) { el.$_popperOldShown = value.shown; value.shown ? tooltipApp.show() : tooltipApp.hide(); } } } var PrivateVTooltip = { bind, update: bind, unbind(el) { destroyTooltip(el); } }; function addListeners(el) { el.addEventListener("click", onClick); el.addEventListener("touchstart", onTouchStart, supportsPassive ? { passive: true } : false); } function removeListeners(el) { el.removeEventListener("click", onClick); el.removeEventListener("touchstart", onTouchStart); el.removeEventListener("touchend", onTouchEnd); el.removeEventListener("touchcancel", onTouchCancel); } function onClick(event) { const el = event.currentTarget; event.closePopover = !el.$_vclosepopover_touch; event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all; } function onTouchStart(event) { if (event.changedTouches.length === 1) { const el = event.currentTarget; el.$_vclosepopover_touch = true; const touch = event.changedTouches[0]; el.$_vclosepopover_touchPoint = touch; el.addEventListener("touchend", onTouchEnd); el.addEventListener("touchcancel", onTouchCancel); } } function onTouchEnd(event) { const el = event.currentTarget; el.$_vclosepopover_touch = false; if (event.changedTouches.length === 1) { const touch = event.changedTouches[0]; const firstTouch = el.$_vclosepopover_touchPoint; event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20; event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all; } } function onTouchCancel(event) { const el = event.currentTarget; el.$_vclosepopover_touch = false; } var PrivateVClosePopper = { bind(el, { value, modifiers }) { el.$_closePopoverModifiers = modifiers; if (typeof value === "undefined" || value) { addListeners(el); } }, update(el, { value, oldValue, modifiers }) { el.$_closePopoverModifiers = modifiers; if (value !== oldValue) { if (typeof value === "undefined" || value) { addListeners(el); } else { removeListeners(el); } } }, unbind(el) { removeListeners(el); } }; const options = config; const VTooltip = PrivateVTooltip; const VClosePopper = PrivateVClosePopper; const Dropdown = PrivateDropdown; const Menu = PrivateMenu; const Popper = PrivatePopper; const PopperContent = PrivatePopperContent; const PopperMethods = PrivatePopperMethods; const PopperWrapper = PrivatePopperWrapper; const ThemeClass = PrivateThemeClass; const Tooltip = PrivateTooltip; const TooltipDirective = PrivateTooltipDirective; function install(app, options2 = {}) { if (app.$_vTooltipInstalled) return; app.$_vTooltipInstalled = true; assign(config, options2); app.directive("tooltip", PrivateVTooltip); app.directive("close-popper", PrivateVClosePopper); app.component("v-tooltip", PrivateTooltip); app.component("VTooltip", PrivateTooltip); app.component("v-dropdown", PrivateDropdown); app.component("VDropdown", PrivateDropdown); app.component("v-menu", PrivateMenu); app.component("VMenu", PrivateMenu); } const plugin = { version: "1.0.0-beta.19", install, options: config }; let GlobalVue = null; if (typeof window !== "undefined") { GlobalVue = window.Vue; } else if (typeof __webpack_require__.g !== "undefined") { GlobalVue = __webpack_require__.g.Vue; } if (GlobalVue) { GlobalVue.use(plugin); } /***/ }), /***/ "./node_modules/focus-trap/dist/focus-trap.esm.js": /*!********************************************************!*\ !*** ./node_modules/focus-trap/dist/focus-trap.esm.js ***! \********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createFocusTrap: () => (/* binding */ createFocusTrap) /* harmony export */ }); /* harmony import */ var tabbable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tabbable */ "./node_modules/tabbable/dist/index.esm.js"); /*! * focus-trap 7.6.1 * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE */ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); } function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } var activeFocusTraps = { activateTrap: function activateTrap(trapStack, trap) { if (trapStack.length > 0) { var activeTrap = trapStack[trapStack.length - 1]; if (activeTrap !== trap) { activeTrap.pause(); } } var trapIndex = trapStack.indexOf(trap); if (trapIndex === -1) { trapStack.push(trap); } else { // move this existing trap to the front of the queue trapStack.splice(trapIndex, 1); trapStack.push(trap); } }, deactivateTrap: function deactivateTrap(trapStack, trap) { var trapIndex = trapStack.indexOf(trap); if (trapIndex !== -1) { trapStack.splice(trapIndex, 1); } if (trapStack.length > 0) { trapStack[trapStack.length - 1].unpause(); } } }; var isSelectableInput = function isSelectableInput(node) { return node.tagName && node.tagName.toLowerCase() === 'input' && typeof node.select === 'function'; }; var isEscapeEvent = function isEscapeEvent(e) { return (e === null || e === void 0 ? void 0 : e.key) === 'Escape' || (e === null || e === void 0 ? void 0 : e.key) === 'Esc' || (e === null || e === void 0 ? void 0 : e.keyCode) === 27; }; var isTabEvent = function isTabEvent(e) { return (e === null || e === void 0 ? void 0 : e.key) === 'Tab' || (e === null || e === void 0 ? void 0 : e.keyCode) === 9; }; // checks for TAB by default var isKeyForward = function isKeyForward(e) { return isTabEvent(e) && !e.shiftKey; }; // checks for SHIFT+TAB by default var isKeyBackward = function isKeyBackward(e) { return isTabEvent(e) && e.shiftKey; }; var delay = function delay(fn) { return setTimeout(fn, 0); }; // Array.find/findIndex() are not supported on IE; this replicates enough // of Array.findIndex() for our needs var findIndex = function findIndex(arr, fn) { var idx = -1; arr.every(function (value, i) { if (fn(value)) { idx = i; return false; // break } return true; // next }); return idx; }; /** * Get an option's value when it could be a plain value, or a handler that provides * the value. * @param {*} value Option's value to check. * @param {...*} [params] Any parameters to pass to the handler, if `value` is a function. * @returns {*} The `value`, or the handler's returned value. */ var valueOrHandler = function valueOrHandler(value) { for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { params[_key - 1] = arguments[_key]; } return typeof value === 'function' ? value.apply(void 0, params) : value; }; var getActualTarget = function getActualTarget(event) { // NOTE: If the trap is _inside_ a shadow DOM, event.target will always be the // shadow host. However, event.target.composedPath() will be an array of // nodes "clicked" from inner-most (the actual element inside the shadow) to // outer-most (the host HTML document). If we have access to composedPath(), // then use its first element; otherwise, fall back to event.target (and // this only works for an _open_ shadow DOM; otherwise, // composedPath()[0] === event.target always). return event.target.shadowRoot && typeof event.composedPath === 'function' ? event.composedPath()[0] : event.target; }; // NOTE: this must be _outside_ `createFocusTrap()` to make sure all traps in this // current instance use the same stack if `userOptions.trapStack` isn't specified var internalTrapStack = []; var createFocusTrap = function createFocusTrap(elements, userOptions) { // SSR: a live trap shouldn't be created in this type of environment so this // should be safe code to execute if the `document` option isn't specified var doc = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.document) || document; var trapStack = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.trapStack) || internalTrapStack; var config = _objectSpread2({ returnFocusOnDeactivate: true, escapeDeactivates: true, delayInitialFocus: true, isKeyForward: isKeyForward, isKeyBackward: isKeyBackward }, userOptions); var state = { // containers given to createFocusTrap() // @type {Array} containers: [], // list of objects identifying tabbable nodes in `containers` in the trap // NOTE: it's possible that a group has no tabbable nodes if nodes get removed while the trap // is active, but the trap should never get to a state where there isn't at least one group // with at least one tabbable node in it (that would lead to an error condition that would // result in an error being thrown) // @type {Array<{ // container: HTMLElement, // tabbableNodes: Array, // empty if none // focusableNodes: Array, // empty if none // posTabIndexesFound: boolean, // firstTabbableNode: HTMLElement|undefined, // lastTabbableNode: HTMLElement|undefined, // firstDomTabbableNode: HTMLElement|undefined, // lastDomTabbableNode: HTMLElement|undefined, // nextTabbableNode: (node: HTMLElement, forward: boolean) => HTMLElement|undefined // }>} containerGroups: [], // same order/length as `containers` list // references to objects in `containerGroups`, but only those that actually have // tabbable nodes in them // NOTE: same order as `containers` and `containerGroups`, but __not necessarily__ // the same length tabbableGroups: [], nodeFocusedBeforeActivation: null, mostRecentlyFocusedNode: null, active: false, paused: false, // timer ID for when delayInitialFocus is true and initial focus in this trap // has been delayed during activation delayInitialFocusTimer: undefined, // the most recent KeyboardEvent for the configured nav key (typically [SHIFT+]TAB), if any recentNavEvent: undefined }; var trap; // eslint-disable-line prefer-const -- some private functions reference it, and its methods reference private functions, so we must declare here and define later /** * Gets a configuration option value. * @param {Object|undefined} configOverrideOptions If true, and option is defined in this set, * value will be taken from this object. Otherwise, value will be taken from base configuration. * @param {string} optionName Name of the option whose value is sought. * @param {string|undefined} [configOptionName] Name of option to use __instead of__ `optionName` * IIF `configOverrideOptions` is not defined. Otherwise, `optionName` is used. */ var getOption = function getOption(configOverrideOptions, optionName, configOptionName) { return configOverrideOptions && configOverrideOptions[optionName] !== undefined ? configOverrideOptions[optionName] : config[configOptionName || optionName]; }; /** * Finds the index of the container that contains the element. * @param {HTMLElement} element * @param {Event} [event] If available, and `element` isn't directly found in any container, * the event's composed path is used to see if includes any known trap containers in the * case where the element is inside a Shadow DOM. * @returns {number} Index of the container in either `state.containers` or * `state.containerGroups` (the order/length of these lists are the same); -1 * if the element isn't found. */ var findContainerIndex = function findContainerIndex(element, event) { var composedPath = typeof (event === null || event === void 0 ? void 0 : event.composedPath) === 'function' ? event.composedPath() : undefined; // NOTE: search `containerGroups` because it's possible a group contains no tabbable // nodes, but still contains focusable nodes (e.g. if they all have `tabindex=-1`) // and we still need to find the element in there return state.containerGroups.findIndex(function (_ref) { var container = _ref.container, tabbableNodes = _ref.tabbableNodes; return container.contains(element) || (// fall back to explicit tabbable search which will take into consideration any // web components if the `tabbableOptions.getShadowRoot` option was used for // the trap, enabling shadow DOM support in tabbable (`Node.contains()` doesn't // look inside web components even if open) composedPath === null || composedPath === void 0 ? void 0 : composedPath.includes(container)) || tabbableNodes.find(function (node) { return node === element; }); }); }; /** * Gets the node for the given option, which is expected to be an option that * can be either a DOM node, a string that is a selector to get a node, `false` * (if a node is explicitly NOT given), or a function that returns any of these * values. * @param {string} optionName * @param {Object} options * @param {boolean} [options.hasFallback] True if the option could be a selector string * and the option allows for a fallback scenario in the case where the selector is * valid but does not match a node (i.e. the queried node doesn't exist in the DOM). * @param {Array} [options.params] Params to pass to the option if it's a function. * @returns {undefined | null | false | HTMLElement | SVGElement} Returns * `undefined` if the option is not specified; `null` if the option didn't resolve * to a node but `options.hasFallback=true`, `false` if the option resolved to `false` * (node explicitly not given); otherwise, the resolved DOM node. * @throws {Error} If the option is set, not `false`, and is not, or does not * resolve to a node, unless the option is a selector string and `options.hasFallback=true`. */ var getNodeForOption = function getNodeForOption(optionName) { var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref2$hasFallback = _ref2.hasFallback, hasFallback = _ref2$hasFallback === void 0 ? false : _ref2$hasFallback, _ref2$params = _ref2.params, params = _ref2$params === void 0 ? [] : _ref2$params; var optionValue = config[optionName]; if (typeof optionValue === 'function') { optionValue = optionValue.apply(void 0, _toConsumableArray(params)); } if (optionValue === true) { optionValue = undefined; // use default value } if (!optionValue) { if (optionValue === undefined || optionValue === false) { return optionValue; } // else, empty string (invalid), null (invalid), 0 (invalid) throw new Error("`".concat(optionName, "` was specified but was not a node, or did not return a node")); } var node = optionValue; // could be HTMLElement, SVGElement, or non-empty string at this point if (typeof optionValue === 'string') { try { node = doc.querySelector(optionValue); // resolve to node, or null if fails } catch (err) { throw new Error("`".concat(optionName, "` appears to be an invalid selector; error=\"").concat(err.message, "\"")); } if (!node) { if (!hasFallback) { throw new Error("`".concat(optionName, "` as selector refers to no known node")); } // else, `node` MUST be `null` because that's what `Document.querySelector()` returns // if the selector is valid but doesn't match anything } } return node; }; var getInitialFocusNode = function getInitialFocusNode() { var node = getNodeForOption('initialFocus', { hasFallback: true }); // false explicitly indicates we want no initialFocus at all if (node === false) { return false; } if (node === undefined || node && !(0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isFocusable)(node, config.tabbableOptions)) { // option not specified nor focusable: use fallback options if (findContainerIndex(doc.activeElement) >= 0) { node = doc.activeElement; } else { var firstTabbableGroup = state.tabbableGroups[0]; var firstTabbableNode = firstTabbableGroup && firstTabbableGroup.firstTabbableNode; // NOTE: `fallbackFocus` option function cannot return `false` (not supported) node = firstTabbableNode || getNodeForOption('fallbackFocus'); } } else if (node === null) { // option is a VALID selector string that doesn't yield a node: use the `fallbackFocus` // option instead of the default behavior when the option isn't specified at all node = getNodeForOption('fallbackFocus'); } if (!node) { throw new Error('Your focus-trap needs to have at least one focusable element'); } return node; }; var updateTabbableNodes = function updateTabbableNodes() { state.containerGroups = state.containers.map(function (container) { var tabbableNodes = (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.tabbable)(container, config.tabbableOptions); // NOTE: if we have tabbable nodes, we must have focusable nodes; focusable nodes // are a superset of tabbable nodes since nodes with negative `tabindex` attributes // are focusable but not tabbable var focusableNodes = (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.focusable)(container, config.tabbableOptions); var firstTabbableNode = tabbableNodes.length > 0 ? tabbableNodes[0] : undefined; var lastTabbableNode = tabbableNodes.length > 0 ? tabbableNodes[tabbableNodes.length - 1] : undefined; var firstDomTabbableNode = focusableNodes.find(function (node) { return (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isTabbable)(node); }); var lastDomTabbableNode = focusableNodes.slice().reverse().find(function (node) { return (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isTabbable)(node); }); var posTabIndexesFound = !!tabbableNodes.find(function (node) { return (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.getTabIndex)(node) > 0; }); return { container: container, tabbableNodes: tabbableNodes, focusableNodes: focusableNodes, /** True if at least one node with positive `tabindex` was found in this container. */ posTabIndexesFound: posTabIndexesFound, /** First tabbable node in container, __tabindex__ order; `undefined` if none. */ firstTabbableNode: firstTabbableNode, /** Last tabbable node in container, __tabindex__ order; `undefined` if none. */ lastTabbableNode: lastTabbableNode, // NOTE: DOM order is NOT NECESSARILY "document position" order, but figuring that out // would require more than just https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition // because that API doesn't work with Shadow DOM as well as it should (@see // https://github.com/whatwg/dom/issues/320) and since this first/last is only needed, so far, // to address an edge case related to positive tabindex support, this seems like a much easier, // "close enough most of the time" alternative for positive tabindexes which should generally // be avoided anyway... /** First tabbable node in container, __DOM__ order; `undefined` if none. */ firstDomTabbableNode: firstDomTabbableNode, /** Last tabbable node in container, __DOM__ order; `undefined` if none. */ lastDomTabbableNode: lastDomTabbableNode, /** * Finds the __tabbable__ node that follows the given node in the specified direction, * in this container, if any. * @param {HTMLElement} node * @param {boolean} [forward] True if going in forward tab order; false if going * in reverse. * @returns {HTMLElement|undefined} The next tabbable node, if any. */ nextTabbableNode: function nextTabbableNode(node) { var forward = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; var nodeIdx = tabbableNodes.indexOf(node); if (nodeIdx < 0) { // either not tabbable nor focusable, or was focused but not tabbable (negative tabindex): // since `node` should at least have been focusable, we assume that's the case and mimic // what browsers do, which is set focus to the next node in __document position order__, // regardless of positive tabindexes, if any -- and for reasons explained in the NOTE // above related to `firstDomTabbable` and `lastDomTabbable` properties, we fall back to // basic DOM order if (forward) { return focusableNodes.slice(focusableNodes.indexOf(node) + 1).find(function (el) { return (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isTabbable)(el); }); } return focusableNodes.slice(0, focusableNodes.indexOf(node)).reverse().find(function (el) { return (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isTabbable)(el); }); } return tabbableNodes[nodeIdx + (forward ? 1 : -1)]; } }; }); state.tabbableGroups = state.containerGroups.filter(function (group) { return group.tabbableNodes.length > 0; }); // throw if no groups have tabbable nodes and we don't have a fallback focus node either if (state.tabbableGroups.length <= 0 && !getNodeForOption('fallbackFocus') // returning false not supported for this option ) { throw new Error('Your focus-trap must have at least one container with at least one tabbable node in it at all times'); } // NOTE: Positive tabindexes are only properly supported in single-container traps because // doing it across multiple containers where tabindexes could be all over the place // would require Tabbable to support multiple containers, would require additional // specialized Shadow DOM support, and would require Tabbable's multi-container support // to look at those containers in document position order rather than user-provided // order (as they are treated in Focus-trap, for legacy reasons). See discussion on // https://github.com/focus-trap/focus-trap/issues/375 for more details. if (state.containerGroups.find(function (g) { return g.posTabIndexesFound; }) && state.containerGroups.length > 1) { throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps."); } }; /** * Gets the current activeElement. If it's a web-component and has open shadow-root * it will recursively search inside shadow roots for the "true" activeElement. * * @param {Document | ShadowRoot} el * * @returns {HTMLElement} The element that currently has the focus **/ var _getActiveElement = function getActiveElement(el) { var activeElement = el.activeElement; if (!activeElement) { return; } if (activeElement.shadowRoot && activeElement.shadowRoot.activeElement !== null) { return _getActiveElement(activeElement.shadowRoot); } return activeElement; }; var _tryFocus = function tryFocus(node) { if (node === false) { return; } if (node === _getActiveElement(document)) { return; } if (!node || !node.focus) { _tryFocus(getInitialFocusNode()); return; } node.focus({ preventScroll: !!config.preventScroll }); // NOTE: focus() API does not trigger focusIn event so set MRU node manually state.mostRecentlyFocusedNode = node; if (isSelectableInput(node)) { node.select(); } }; var getReturnFocusNode = function getReturnFocusNode(previousActiveElement) { var node = getNodeForOption('setReturnFocus', { params: [previousActiveElement] }); return node ? node : node === false ? false : previousActiveElement; }; /** * Finds the next node (in either direction) where focus should move according to a * keyboard focus-in event. * @param {Object} params * @param {Node} [params.target] Known target __from which__ to navigate, if any. * @param {KeyboardEvent|FocusEvent} [params.event] Event to use if `target` isn't known (event * will be used to determine the `target`). Ignored if `target` is specified. * @param {boolean} [params.isBackward] True if focus should move backward. * @returns {Node|undefined} The next node, or `undefined` if a next node couldn't be * determined given the current state of the trap. */ var findNextNavNode = function findNextNavNode(_ref3) { var target = _ref3.target, event = _ref3.event, _ref3$isBackward = _ref3.isBackward, isBackward = _ref3$isBackward === void 0 ? false : _ref3$isBackward; target = target || getActualTarget(event); updateTabbableNodes(); var destinationNode = null; if (state.tabbableGroups.length > 0) { // make sure the target is actually contained in a group // NOTE: the target may also be the container itself if it's focusable // with tabIndex='-1' and was given initial focus var containerIndex = findContainerIndex(target, event); var containerGroup = containerIndex >= 0 ? state.containerGroups[containerIndex] : undefined; if (containerIndex < 0) { // target not found in any group: quite possible focus has escaped the trap, // so bring it back into... if (isBackward) { // ...the last node in the last group destinationNode = state.tabbableGroups[state.tabbableGroups.length - 1].lastTabbableNode; } else { // ...the first node in the first group destinationNode = state.tabbableGroups[0].firstTabbableNode; } } else if (isBackward) { // REVERSE // is the target the first tabbable node in a group? var startOfGroupIndex = findIndex(state.tabbableGroups, function (_ref4) { var firstTabbableNode = _ref4.firstTabbableNode; return target === firstTabbableNode; }); if (startOfGroupIndex < 0 && (containerGroup.container === target || (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isFocusable)(target, config.tabbableOptions) && !(0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isTabbable)(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target, false))) { // an exception case where the target is either the container itself, or // a non-tabbable node that was given focus (i.e. tabindex is negative // and user clicked on it or node was programmatically given focus) // and is not followed by any other tabbable node, in which // case, we should handle shift+tab as if focus were on the container's // first tabbable node, and go to the last tabbable node of the LAST group startOfGroupIndex = containerIndex; } if (startOfGroupIndex >= 0) { // YES: then shift+tab should go to the last tabbable node in the // previous group (and wrap around to the last tabbable node of // the LAST group if it's the first tabbable node of the FIRST group) var destinationGroupIndex = startOfGroupIndex === 0 ? state.tabbableGroups.length - 1 : startOfGroupIndex - 1; var destinationGroup = state.tabbableGroups[destinationGroupIndex]; destinationNode = (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.getTabIndex)(target) >= 0 ? destinationGroup.lastTabbableNode : destinationGroup.lastDomTabbableNode; } else if (!isTabEvent(event)) { // user must have customized the nav keys so we have to move focus manually _within_ // the active group: do this based on the order determined by tabbable() destinationNode = containerGroup.nextTabbableNode(target, false); } } else { // FORWARD // is the target the last tabbable node in a group? var lastOfGroupIndex = findIndex(state.tabbableGroups, function (_ref5) { var lastTabbableNode = _ref5.lastTabbableNode; return target === lastTabbableNode; }); if (lastOfGroupIndex < 0 && (containerGroup.container === target || (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isFocusable)(target, config.tabbableOptions) && !(0,tabbable__WEBPACK_IMPORTED_MODULE_0__.isTabbable)(target, config.tabbableOptions) && !containerGroup.nextTabbableNode(target))) { // an exception case where the target is the container itself, or // a non-tabbable node that was given focus (i.e. tabindex is negative // and user clicked on it or node was programmatically given focus) // and is not followed by any other tabbable node, in which // case, we should handle tab as if focus were on the container's // last tabbable node, and go to the first tabbable node of the FIRST group lastOfGroupIndex = containerIndex; } if (lastOfGroupIndex >= 0) { // YES: then tab should go to the first tabbable node in the next // group (and wrap around to the first tabbable node of the FIRST // group if it's the last tabbable node of the LAST group) var _destinationGroupIndex = lastOfGroupIndex === state.tabbableGroups.length - 1 ? 0 : lastOfGroupIndex + 1; var _destinationGroup = state.tabbableGroups[_destinationGroupIndex]; destinationNode = (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.getTabIndex)(target) >= 0 ? _destinationGroup.firstTabbableNode : _destinationGroup.firstDomTabbableNode; } else if (!isTabEvent(event)) { // user must have customized the nav keys so we have to move focus manually _within_ // the active group: do this based on the order determined by tabbable() destinationNode = containerGroup.nextTabbableNode(target); } } } else { // no groups available // NOTE: the fallbackFocus option does not support returning false to opt-out destinationNode = getNodeForOption('fallbackFocus'); } return destinationNode; }; // This needs to be done on mousedown and touchstart instead of click // so that it precedes the focus event. var checkPointerDown = function checkPointerDown(e) { var target = getActualTarget(e); if (findContainerIndex(target, e) >= 0) { // allow the click since it ocurred inside the trap return; } if (valueOrHandler(config.clickOutsideDeactivates, e)) { // immediately deactivate the trap trap.deactivate({ // NOTE: by setting `returnFocus: false`, deactivate() will do nothing, // which will result in the outside click setting focus to the node // that was clicked (and if not focusable, to "nothing"); by setting // `returnFocus: true`, we'll attempt to re-focus the node originally-focused // on activation (or the configured `setReturnFocus` node), whether the // outside click was on a focusable node or not returnFocus: config.returnFocusOnDeactivate }); return; } // This is needed for mobile devices. // (If we'll only let `click` events through, // then on mobile they will be blocked anyways if `touchstart` is blocked.) if (valueOrHandler(config.allowOutsideClick, e)) { // allow the click outside the trap to take place return; } // otherwise, prevent the click e.preventDefault(); }; // In case focus escapes the trap for some strange reason, pull it back in. // NOTE: the focusIn event is NOT cancelable, so if focus escapes, it may cause unexpected // scrolling if the node that got focused was out of view; there's nothing we can do to // prevent that from happening by the time we discover that focus escaped var checkFocusIn = function checkFocusIn(event) { var target = getActualTarget(event); var targetContained = findContainerIndex(target, event) >= 0; // In Firefox when you Tab out of an iframe the Document is briefly focused. if (targetContained || target instanceof Document) { if (targetContained) { state.mostRecentlyFocusedNode = target; } } else { // escaped! pull it back in to where it just left event.stopImmediatePropagation(); // focus will escape if the MRU node had a positive tab index and user tried to nav forward; // it will also escape if the MRU node had a 0 tab index and user tried to nav backward // toward a node with a positive tab index var nextNode; // next node to focus, if we find one var navAcrossContainers = true; if (state.mostRecentlyFocusedNode) { if ((0,tabbable__WEBPACK_IMPORTED_MODULE_0__.getTabIndex)(state.mostRecentlyFocusedNode) > 0) { // MRU container index must be >=0 otherwise we wouldn't have it as an MRU node... var mruContainerIdx = findContainerIndex(state.mostRecentlyFocusedNode); // there MAY not be any tabbable nodes in the container if there are at least 2 containers // and the MRU node is focusable but not tabbable (focus-trap requires at least 1 container // with at least one tabbable node in order to function, so this could be the other container // with nothing tabbable in it) var tabbableNodes = state.containerGroups[mruContainerIdx].tabbableNodes; if (tabbableNodes.length > 0) { // MRU tab index MAY not be found if the MRU node is focusable but not tabbable var mruTabIdx = tabbableNodes.findIndex(function (node) { return node === state.mostRecentlyFocusedNode; }); if (mruTabIdx >= 0) { if (config.isKeyForward(state.recentNavEvent)) { if (mruTabIdx + 1 < tabbableNodes.length) { nextNode = tabbableNodes[mruTabIdx + 1]; navAcrossContainers = false; } // else, don't wrap within the container as focus should move to next/previous // container } else { if (mruTabIdx - 1 >= 0) { nextNode = tabbableNodes[mruTabIdx - 1]; navAcrossContainers = false; } // else, don't wrap within the container as focus should move to next/previous // container } // else, don't find in container order without considering direction too } } // else, no tabbable nodes in that container (which means we must have at least one other // container with at least one tabbable node in it, otherwise focus-trap would've thrown // an error the last time updateTabbableNodes() was run): find next node among all known // containers } else { // check to see if there's at least one tabbable node with a positive tab index inside // the trap because focus seems to escape when navigating backward from a tabbable node // with tabindex=0 when this is the case (instead of wrapping to the tabbable node with // the greatest positive tab index like it should) if (!state.containerGroups.some(function (g) { return g.tabbableNodes.some(function (n) { return (0,tabbable__WEBPACK_IMPORTED_MODULE_0__.getTabIndex)(n) > 0; }); })) { // no containers with tabbable nodes with positive tab indexes which means the focus // escaped for some other reason and we should just execute the fallback to the // MRU node or initial focus node, if any navAcrossContainers = false; } } } else { // no MRU node means we're likely in some initial condition when the trap has just // been activated and initial focus hasn't been given yet, in which case we should // fall through to trying to focus the initial focus node, which is what should // happen below at this point in the logic navAcrossContainers = false; } if (navAcrossContainers) { nextNode = findNextNavNode({ // move FROM the MRU node, not event-related node (which will be the node that is // outside the trap causing the focus escape we're trying to fix) target: state.mostRecentlyFocusedNode, isBackward: config.isKeyBackward(state.recentNavEvent) }); } if (nextNode) { _tryFocus(nextNode); } else { _tryFocus(state.mostRecentlyFocusedNode || getInitialFocusNode()); } } state.recentNavEvent = undefined; // clear }; // Hijack key nav events on the first and last focusable nodes of the trap, // in order to prevent focus from escaping. If it escapes for even a // moment it can end up scrolling the page and causing confusion so we // kind of need to capture the action at the keydown phase. var checkKeyNav = function checkKeyNav(event) { var isBackward = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; state.recentNavEvent = event; var destinationNode = findNextNavNode({ event: event, isBackward: isBackward }); if (destinationNode) { if (isTabEvent(event)) { // since tab natively moves focus, we wouldn't have a destination node unless we // were on the edge of a container and had to move to the next/previous edge, in // which case we want to prevent default to keep the browser from moving focus // to where it normally would event.preventDefault(); } _tryFocus(destinationNode); } // else, let the browser take care of [shift+]tab and move the focus }; var checkTabKey = function checkTabKey(event) { if (config.isKeyForward(event) || config.isKeyBackward(event)) { checkKeyNav(event, config.isKeyBackward(event)); } }; // we use a different event phase for the Escape key to allow canceling the event and checking for this in escapeDeactivates var checkEscapeKey = function checkEscapeKey(event) { if (isEscapeEvent(event) && valueOrHandler(config.escapeDeactivates, event) !== false) { event.preventDefault(); trap.deactivate(); } }; var checkClick = function checkClick(e) { var target = getActualTarget(e); if (findContainerIndex(target, e) >= 0) { return; } if (valueOrHandler(config.clickOutsideDeactivates, e)) { return; } if (valueOrHandler(config.allowOutsideClick, e)) { return; } e.preventDefault(); e.stopImmediatePropagation(); }; // // EVENT LISTENERS // var addListeners = function addListeners() { if (!state.active) { return; } // There can be only one listening focus trap at a time activeFocusTraps.activateTrap(trapStack, trap); // Delay ensures that the focused element doesn't capture the event // that caused the focus trap activation. state.delayInitialFocusTimer = config.delayInitialFocus ? delay(function () { _tryFocus(getInitialFocusNode()); }) : _tryFocus(getInitialFocusNode()); doc.addEventListener('focusin', checkFocusIn, true); doc.addEventListener('mousedown', checkPointerDown, { capture: true, passive: false }); doc.addEventListener('touchstart', checkPointerDown, { capture: true, passive: false }); doc.addEventListener('click', checkClick, { capture: true, passive: false }); doc.addEventListener('keydown', checkTabKey, { capture: true, passive: false }); doc.addEventListener('keydown', checkEscapeKey); return trap; }; var removeListeners = function removeListeners() { if (!state.active) { return; } doc.removeEventListener('focusin', checkFocusIn, true); doc.removeEventListener('mousedown', checkPointerDown, true); doc.removeEventListener('touchstart', checkPointerDown, true); doc.removeEventListener('click', checkClick, true); doc.removeEventListener('keydown', checkTabKey, true); doc.removeEventListener('keydown', checkEscapeKey); return trap; }; // // MUTATION OBSERVER // var checkDomRemoval = function checkDomRemoval(mutations) { var isFocusedNodeRemoved = mutations.some(function (mutation) { var removedNodes = Array.from(mutation.removedNodes); return removedNodes.some(function (node) { return node === state.mostRecentlyFocusedNode; }); }); // If the currently focused is removed then browsers will move focus to the // element. If this happens, try to move focus back into the trap. if (isFocusedNodeRemoved) { _tryFocus(getInitialFocusNode()); } }; // Use MutationObserver - if supported - to detect if focused node is removed // from the DOM. var mutationObserver = typeof window !== 'undefined' && 'MutationObserver' in window ? new MutationObserver(checkDomRemoval) : undefined; var updateObservedNodes = function updateObservedNodes() { if (!mutationObserver) { return; } mutationObserver.disconnect(); if (state.active && !state.paused) { state.containers.map(function (container) { mutationObserver.observe(container, { subtree: true, childList: true }); }); } }; // // TRAP DEFINITION // trap = { get active() { return state.active; }, get paused() { return state.paused; }, activate: function activate(activateOptions) { if (state.active) { return this; } var onActivate = getOption(activateOptions, 'onActivate'); var onPostActivate = getOption(activateOptions, 'onPostActivate'); var checkCanFocusTrap = getOption(activateOptions, 'checkCanFocusTrap'); if (!checkCanFocusTrap) { updateTabbableNodes(); } state.active = true; state.paused = false; state.nodeFocusedBeforeActivation = doc.activeElement; onActivate === null || onActivate === void 0 || onActivate(); var finishActivation = function finishActivation() { if (checkCanFocusTrap) { updateTabbableNodes(); } addListeners(); updateObservedNodes(); onPostActivate === null || onPostActivate === void 0 || onPostActivate(); }; if (checkCanFocusTrap) { checkCanFocusTrap(state.containers.concat()).then(finishActivation, finishActivation); return this; } finishActivation(); return this; }, deactivate: function deactivate(deactivateOptions) { if (!state.active) { return this; } var options = _objectSpread2({ onDeactivate: config.onDeactivate, onPostDeactivate: config.onPostDeactivate, checkCanReturnFocus: config.checkCanReturnFocus }, deactivateOptions); clearTimeout(state.delayInitialFocusTimer); // noop if undefined state.delayInitialFocusTimer = undefined; removeListeners(); state.active = false; state.paused = false; updateObservedNodes(); activeFocusTraps.deactivateTrap(trapStack, trap); var onDeactivate = getOption(options, 'onDeactivate'); var onPostDeactivate = getOption(options, 'onPostDeactivate'); var checkCanReturnFocus = getOption(options, 'checkCanReturnFocus'); var returnFocus = getOption(options, 'returnFocus', 'returnFocusOnDeactivate'); onDeactivate === null || onDeactivate === void 0 || onDeactivate(); var finishDeactivation = function finishDeactivation() { delay(function () { if (returnFocus) { _tryFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)); } onPostDeactivate === null || onPostDeactivate === void 0 || onPostDeactivate(); }); }; if (returnFocus && checkCanReturnFocus) { checkCanReturnFocus(getReturnFocusNode(state.nodeFocusedBeforeActivation)).then(finishDeactivation, finishDeactivation); return this; } finishDeactivation(); return this; }, pause: function pause(pauseOptions) { if (state.paused || !state.active) { return this; } var onPause = getOption(pauseOptions, 'onPause'); var onPostPause = getOption(pauseOptions, 'onPostPause'); state.paused = true; onPause === null || onPause === void 0 || onPause(); removeListeners(); updateObservedNodes(); onPostPause === null || onPostPause === void 0 || onPostPause(); return this; }, unpause: function unpause(unpauseOptions) { if (!state.paused || !state.active) { return this; } var onUnpause = getOption(unpauseOptions, 'onUnpause'); var onPostUnpause = getOption(unpauseOptions, 'onPostUnpause'); state.paused = false; onUnpause === null || onUnpause === void 0 || onUnpause(); updateTabbableNodes(); addListeners(); updateObservedNodes(); onPostUnpause === null || onPostUnpause === void 0 || onPostUnpause(); return this; }, updateContainerElements: function updateContainerElements(containerElements) { var elementsAsArray = [].concat(containerElements).filter(Boolean); state.containers = elementsAsArray.map(function (element) { return typeof element === 'string' ? doc.querySelector(element) : element; }); if (state.active) { updateTabbableNodes(); } updateObservedNodes(); return this; } }; // initialize container elements trap.updateContainerElements(elements); return trap; }; //# sourceMappingURL=focus-trap.esm.js.map /***/ }), /***/ "./node_modules/ieee754/index.js": /*!***************************************!*\ !*** ./node_modules/ieee754/index.js ***! \***************************************/ /***/ ((__unused_webpack_module, exports) => { /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ exports.read = function (buffer, offset, isLE, mLen, nBytes) { var e, m var eLen = (nBytes * 8) - mLen - 1 var eMax = (1 << eLen) - 1 var eBias = eMax >> 1 var nBits = -7 var i = isLE ? (nBytes - 1) : 0 var d = isLE ? -1 : 1 var s = buffer[offset + i] i += d e = s & ((1 << (-nBits)) - 1) s >>= (-nBits) nBits += eLen for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {} m = e & ((1 << (-nBits)) - 1) e >>= (-nBits) nBits += mLen for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {} if (e === 0) { e = 1 - eBias } else if (e === eMax) { return m ? NaN : ((s ? -1 : 1) * Infinity) } else { m = m + Math.pow(2, mLen) e = e - eBias } return (s ? -1 : 1) * m * Math.pow(2, e - mLen) } exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { var e, m, c var eLen = (nBytes * 8) - mLen - 1 var eMax = (1 << eLen) - 1 var eBias = eMax >> 1 var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) var i = isLE ? 0 : (nBytes - 1) var d = isLE ? 1 : -1 var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 value = Math.abs(value) if (isNaN(value) || value === Infinity) { m = isNaN(value) ? 1 : 0 e = eMax } else { e = Math.floor(Math.log(value) / Math.LN2) if (value * (c = Math.pow(2, -e)) < 1) { e-- c *= 2 } if (e + eBias >= 1) { value += rt / c } else { value += rt * Math.pow(2, 1 - eBias) } if (value * c >= 2) { e++ c /= 2 } if (e + eBias >= eMax) { m = 0 e = eMax } else if (e + eBias >= 1) { m = ((value * c) - 1) * Math.pow(2, mLen) e = e + eBias } else { m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) e = 0 } } for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} e = (e << mLen) | m eLen += mLen for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} buffer[offset + i - d] |= s * 128 } /***/ }), /***/ "./node_modules/jszip/dist/jszip.min.js": /*!**********************************************!*\ !*** ./node_modules/jszip/dist/jszip.min.js ***! \**********************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { /* provided dependency */ var Buffer = __webpack_require__(/*! ./node_modules/buffer/index.js */ "./node_modules/buffer/index.js")["Buffer"]; /* provided dependency */ var process = __webpack_require__(/*! ./node_modules/process/browser.js */ "./node_modules/process/browser.js"); /*! JSZip v3.10.1 - A JavaScript class for generating and reading zip files (c) 2009-2016 Stuart Knightley Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. JSZip uses the library pako released under the MIT license : https://github.com/nodeca/pako/blob/main/LICENSE */ !function(e){if(true)module.exports=e();else {}}(function(){return function s(a,o,h){function u(r,e){if(!o[r]){if(!a[r]){var t=undefined;if(!e&&t)return require(r,!0);if(l)return l(r,!0);var n=new Error("Cannot find module '"+r+"'");throw n.code="MODULE_NOT_FOUND",n}var i=o[r]={exports:{}};a[r][0].call(i.exports,function(e){var t=a[r][1][e];return u(t||e)},i,i.exports,s,a,o,h)}return o[r].exports}for(var l=undefined,e=0;e>2,s=(3&t)<<4|r>>4,a=1>6:64,o=2>4,r=(15&i)<<4|(s=p.indexOf(e.charAt(o++)))>>2,n=(3&s)<<6|(a=p.indexOf(e.charAt(o++))),l[h++]=t,64!==s&&(l[h++]=r),64!==a&&(l[h++]=n);return l}},{"./support":30,"./utils":32}],2:[function(e,t,r){"use strict";var n=e("./external"),i=e("./stream/DataWorker"),s=e("./stream/Crc32Probe"),a=e("./stream/DataLengthProbe");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")),t=this;return e.on("end",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression",t)},t.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,r){"use strict";var n=e("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},r.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,r){"use strict";var n=e("./utils");var o=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t[a])];return-1^e}(0|t,e,e.length,0):function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t.charCodeAt(a))];return-1^e}(0|t,e,e.length,0):0}},{"./utils":32}],5:[function(e,t,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){"use strict";var n=null;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),s=e("./utils"),a=e("./stream/GenericWorker"),o=n?"uint8array":"array";function h(e,t){a.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic="\b\0",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var t=this;this._pako.onData=function(e){t.push({data:e,meta:t.meta})}},r.compressWorker=function(e){return new h("Deflate",e)},r.uncompressWorker=function(){return new h("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,r){"use strict";function A(e,t){var r,n="";for(r=0;r>>=8;return n}function n(e,t,r,n,i,s){var a,o,h=e.file,u=e.compression,l=s!==O.utf8encode,f=I.transformTo("string",s(h.name)),c=I.transformTo("string",O.utf8encode(h.name)),d=h.comment,p=I.transformTo("string",s(d)),m=I.transformTo("string",O.utf8encode(d)),_=c.length!==h.name.length,g=m.length!==d.length,b="",v="",y="",w=h.dir,k=h.date,x={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(x.crc32=e.crc32,x.compressedSize=e.compressedSize,x.uncompressedSize=e.uncompressedSize);var S=0;t&&(S|=8),l||!_&&!g||(S|=2048);var z=0,C=0;w&&(z|=16),"UNIX"===i?(C=798,z|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(h.unixPermissions,w)):(C=20,z|=function(e){return 63&(e||0)}(h.dosPermissions)),a=k.getUTCHours(),a<<=6,a|=k.getUTCMinutes(),a<<=5,a|=k.getUTCSeconds()/2,o=k.getUTCFullYear()-1980,o<<=4,o|=k.getUTCMonth()+1,o<<=5,o|=k.getUTCDate(),_&&(v=A(1,1)+A(B(f),4)+c,b+="up"+A(v.length,2)+v),g&&(y=A(1,1)+A(B(p),4)+m,b+="uc"+A(y.length,2)+y);var E="";return E+="\n\0",E+=A(S,2),E+=u.magic,E+=A(a,2),E+=A(o,2),E+=A(x.crc32,4),E+=A(x.compressedSize,4),E+=A(x.uncompressedSize,4),E+=A(f.length,2),E+=A(b.length,2),{fileRecord:R.LOCAL_FILE_HEADER+E+f+b,dirRecord:R.CENTRAL_FILE_HEADER+A(C,2)+E+A(p.length,2)+"\0\0\0\0"+A(z,4)+A(n,4)+f+b+p}}var I=e("../utils"),i=e("../stream/GenericWorker"),O=e("../utf8"),B=e("../crc32"),R=e("../signature");function s(e,t,r,n){i.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}I.inherits(s,i),s.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,i.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},s.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=n(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},s.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=n(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return R.DATA_DESCRIPTOR+A(e.crc32,4)+A(e.compressedSize,4)+A(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},s.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,r){"use strict";var n=e("./Uint8ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,r){"use strict";var n=e("./ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../support"),s=e("./ArrayReader"),a=e("./StringReader"),o=e("./NodeBufferReader"),h=e("./Uint8ArrayReader");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new o(e):i.uint8array?new h(n.transformTo("uint8array",e)):new s(n.transformTo("array",e)):new a(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../utils");function s(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../crc32");function s(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,r){"use strict";function n(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r "+e:e}},t.exports=n},{}],29:[function(e,t,r){"use strict";var h=e("../utils"),i=e("./ConvertWorker"),s=e("./GenericWorker"),u=e("../base64"),n=e("../support"),a=e("../external"),o=null;if(n.nodestream)try{o=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function l(e,o){return new a.Promise(function(t,r){var n=[],i=e._internalType,s=e._outputType,a=e._mimeType;e.on("data",function(e,t){n.push(e),o&&o(t)}).on("error",function(e){n=[],r(e)}).on("end",function(){try{var e=function(e,t,r){switch(e){case"blob":return h.newBlob(h.transformTo("arraybuffer",t),r);case"base64":return u.encode(t);default:return h.transformTo(e,t)}}(s,function(e,t){var r,n=0,i=null,s=0;for(r=0;r>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t}(e)},s.utf8decode=function(e){return h.nodebuffer?o.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,n,i,s=e.length,a=new Array(2*s);for(t=r=0;t>10&1023,a[r++]=56320|1023&n)}return a.length!==r&&(a.subarray?a=a.subarray(0,r):a.length=r),o.applyFromCharCode(a)}(e=o.transformTo(h.uint8array?"uint8array":"array",e))},o.inherits(a,n),a.prototype.processChunk=function(e){var t=o.transformTo(h.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(h.uint8array){var r=t;(t=new Uint8Array(r.length+this.leftOver.length)).set(this.leftOver,0),t.set(r,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var n=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0?t:0===r?t:r+u[e[r]]>t?r:t}(t),i=t;n!==t.length&&(h.uint8array?(i=t.subarray(0,n),this.leftOver=t.subarray(n,t.length)):(i=t.slice(0,n),this.leftOver=t.slice(n,t.length))),this.push({data:s.utf8decode(i),meta:e.meta})},a.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:s.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},s.Utf8DecodeWorker=a,o.inherits(l,n),l.prototype.processChunk=function(e){this.push({data:s.utf8encode(e.data),meta:e.meta})},s.Utf8EncodeWorker=l},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,a){"use strict";var o=e("./support"),h=e("./base64"),r=e("./nodejsUtils"),u=e("./external");function n(e){return e}function l(e,t){for(var r=0;r>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===s.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===s.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===s.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===s.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t},r.buf2binstring=function(e){return l(e,e.length)},r.binstring2buf=function(e){for(var t=new h.Buf8(e.length),r=0,n=t.length;r>10&1023,o[n++]=56320|1023&i)}return l(o,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0?t:0===r?t:r+u[e[r]]>t?r:t}},{"./common":41}],43:[function(e,t,r){"use strict";t.exports=function(e,t,r,n){for(var i=65535&e|0,s=e>>>16&65535|0,a=0;0!==r;){for(r-=a=2e3>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,n){var i=o,s=n+r;e^=-1;for(var a=n;a>>8^i[255&(e^t[a])];return-1^e}},{}],46:[function(e,t,r){"use strict";var h,c=e("../utils/common"),u=e("./trees"),d=e("./adler32"),p=e("./crc32"),n=e("./messages"),l=0,f=4,m=0,_=-2,g=-1,b=4,i=2,v=8,y=9,s=286,a=30,o=19,w=2*s+1,k=15,x=3,S=258,z=S+x+1,C=42,E=113,A=1,I=2,O=3,B=4;function R(e,t){return e.msg=n[t],t}function T(e){return(e<<1)-(4e.avail_out&&(r=e.avail_out),0!==r&&(c.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function N(e,t){u._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,F(e.strm)}function U(e,t){e.pending_buf[e.pending++]=t}function P(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function L(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-z?e.strstart-(e.w_size-z):0,u=e.window,l=e.w_mask,f=e.prev,c=e.strstart+S,d=u[s+a-1],p=u[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(u[(r=t)+a]===p&&u[r+a-1]===d&&u[r]===u[s]&&u[++r]===u[s+1]){s+=2,r++;do{}while(u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&sh&&0!=--i);return a<=e.lookahead?a:e.lookahead}function j(e){var t,r,n,i,s,a,o,h,u,l,f=e.w_size;do{if(i=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-z)){for(c.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=r=e.hash_size;n=e.head[--t],e.head[t]=f<=n?n-f:0,--r;);for(t=r=f;n=e.prev[--t],e.prev[t]=f<=n?n-f:0,--r;);i+=f}if(0===e.strm.avail_in)break;if(a=e.strm,o=e.window,h=e.strstart+e.lookahead,u=i,l=void 0,l=a.avail_in,u=x)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x)if(n=u._tr_tally(e,e.strstart-e.match_start,e.match_length-x),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=x){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<=x&&(e.ins_h=(e.ins_h<=x&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-x,n=u._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-x),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(j(e),0===e.lookahead&&t===l)return A;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,N(e,!1),0===e.strm.avail_out))return A;if(e.strstart-e.block_start>=e.w_size-z&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):(e.strstart>e.block_start&&(N(e,!1),e.strm.avail_out),A)}),new M(4,4,8,4,Z),new M(4,5,16,8,Z),new M(4,6,32,32,Z),new M(4,4,16,16,W),new M(8,16,32,32,W),new M(8,16,128,128,W),new M(8,32,128,256,W),new M(32,128,258,1024,W),new M(32,258,258,4096,W)],r.deflateInit=function(e,t){return Y(e,t,v,15,8,0)},r.deflateInit2=Y,r.deflateReset=K,r.deflateResetKeep=G,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?_:(e.state.gzhead=t,m):_},r.deflate=function(e,t){var r,n,i,s;if(!e||!e.state||5>8&255),U(n,n.gzhead.time>>16&255),U(n,n.gzhead.time>>24&255),U(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),U(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(U(n,255&n.gzhead.extra.length),U(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=p(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69):(U(n,0),U(n,0),U(n,0),U(n,0),U(n,0),U(n,9===n.level?2:2<=n.strategy||n.level<2?4:0),U(n,3),n.status=E);else{var a=v+(n.w_bits-8<<4)<<8;a|=(2<=n.strategy||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(a|=32),a+=31-a%31,n.status=E,P(n,a),0!==n.strstart&&(P(n,e.adler>>>16),P(n,65535&e.adler)),e.adler=1}if(69===n.status)if(n.gzhead.extra){for(i=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending!==n.pending_buf_size));)U(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=73)}else n.status=73;if(73===n.status)if(n.gzhead.name){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}s=n.gzindexi&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),0===s&&(n.gzindex=0,n.status=91)}else n.status=91;if(91===n.status)if(n.gzhead.comment){i=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>i&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),F(e),i=n.pending,n.pending===n.pending_buf_size)){s=1;break}s=n.gzindexi&&(e.adler=p(e.adler,n.pending_buf,n.pending-i,i)),0===s&&(n.status=103)}else n.status=103;if(103===n.status&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&F(e),n.pending+2<=n.pending_buf_size&&(U(n,255&e.adler),U(n,e.adler>>8&255),e.adler=0,n.status=E)):n.status=E),0!==n.pending){if(F(e),0===e.avail_out)return n.last_flush=-1,m}else if(0===e.avail_in&&T(t)<=T(r)&&t!==f)return R(e,-5);if(666===n.status&&0!==e.avail_in)return R(e,-5);if(0!==e.avail_in||0!==n.lookahead||t!==l&&666!==n.status){var o=2===n.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(j(e),0===e.lookahead)){if(t===l)return A;break}if(e.match_length=0,r=u._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):e.last_lit&&(N(e,!1),0===e.strm.avail_out)?A:I}(n,t):3===n.strategy?function(e,t){for(var r,n,i,s,a=e.window;;){if(e.lookahead<=S){if(j(e),e.lookahead<=S&&t===l)return A;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=x&&0e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=x?(r=u._tr_tally(e,1,e.match_length-x),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=u._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(N(e,!1),0===e.strm.avail_out))return A}return e.insert=0,t===f?(N(e,!0),0===e.strm.avail_out?O:B):e.last_lit&&(N(e,!1),0===e.strm.avail_out)?A:I}(n,t):h[n.level].func(n,t);if(o!==O&&o!==B||(n.status=666),o===A||o===O)return 0===e.avail_out&&(n.last_flush=-1),m;if(o===I&&(1===t?u._tr_align(n):5!==t&&(u._tr_stored_block(n,0,0,!1),3===t&&(D(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),F(e),0===e.avail_out))return n.last_flush=-1,m}return t!==f?m:n.wrap<=0?1:(2===n.wrap?(U(n,255&e.adler),U(n,e.adler>>8&255),U(n,e.adler>>16&255),U(n,e.adler>>24&255),U(n,255&e.total_in),U(n,e.total_in>>8&255),U(n,e.total_in>>16&255),U(n,e.total_in>>24&255)):(P(n,e.adler>>>16),P(n,65535&e.adler)),F(e),0=r.w_size&&(0===s&&(D(r.head),r.strstart=0,r.block_start=0,r.insert=0),u=new c.Buf8(r.w_size),c.arraySet(u,t,l-r.w_size,r.w_size,0),t=u,l=r.w_size),a=e.avail_in,o=e.next_in,h=e.input,e.avail_in=l,e.next_in=0,e.input=t,j(r);r.lookahead>=x;){for(n=r.strstart,i=r.lookahead-(x-1);r.ins_h=(r.ins_h<>>=y=v>>>24,p-=y,0===(y=v>>>16&255))C[s++]=65535&v;else{if(!(16&y)){if(0==(64&y)){v=m[(65535&v)+(d&(1<>>=y,p-=y),p<15&&(d+=z[n++]<>>=y=v>>>24,p-=y,!(16&(y=v>>>16&255))){if(0==(64&y)){v=_[(65535&v)+(d&(1<>>=y,p-=y,(y=s-a)>3,d&=(1<<(p-=w<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function s(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new I.Buf16(320),this.work=new I.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function a(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=P,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new I.Buf32(n),t.distcode=t.distdyn=new I.Buf32(i),t.sane=1,t.back=-1,N):U}function o(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,a(e)):U}function h(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=s.wsize?(I.arraySet(s.window,t,r-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(n<(i=s.wsize-s.wnext)&&(i=n),I.arraySet(s.window,t,r-n,i,s.wnext),(n-=i)?(I.arraySet(s.window,t,r-n,n,0),s.wnext=n,s.whave=s.wsize):(s.wnext+=i,s.wnext===s.wsize&&(s.wnext=0),s.whave>>8&255,r.check=B(r.check,E,2,0),l=u=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&u)){e.msg="unknown compression method",r.mode=30;break}if(l-=4,k=8+(15&(u>>>=4)),0===r.wbits)r.wbits=k;else if(k>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<>8&1),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=3;case 3:for(;l<32;){if(0===o)break e;o--,u+=n[s++]<>>8&255,E[2]=u>>>16&255,E[3]=u>>>24&255,r.check=B(r.check,E,4,0)),l=u=0,r.mode=4;case 4:for(;l<16;){if(0===o)break e;o--,u+=n[s++]<>8),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=5;case 5:if(1024&r.flags){for(;l<16;){if(0===o)break e;o--,u+=n[s++]<>>8&255,r.check=B(r.check,E,2,0)),l=u=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(o<(d=r.length)&&(d=o),d&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),I.arraySet(r.head.extra,n,s,d,k)),512&r.flags&&(r.check=B(r.check,n,d,s)),o-=d,s+=d,r.length-=d),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===o)break e;for(d=0;k=n[s+d++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k)),k&&d>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;l<32;){if(0===o)break e;o--,u+=n[s++]<>>=7&l,l-=7&l,r.mode=27;break}for(;l<3;){if(0===o)break e;o--,u+=n[s++]<>>=1)){case 0:r.mode=14;break;case 1:if(j(r),r.mode=20,6!==t)break;u>>>=2,l-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}u>>>=2,l-=2;break;case 14:for(u>>>=7&l,l-=7&l;l<32;){if(0===o)break e;o--,u+=n[s++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&u,l=u=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(d=r.length){if(o>>=5,l-=5,r.ndist=1+(31&u),u>>>=5,l-=5,r.ncode=4+(15&u),u>>>=4,l-=4,286>>=3,l-=3}for(;r.have<19;)r.lens[A[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},x=T(0,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,x){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=_,l-=_,r.lens[r.have++]=b;else{if(16===b){for(z=_+2;l>>=_,l-=_,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}k=r.lens[r.have-1],d=3+(3&u),u>>>=2,l-=2}else if(17===b){for(z=_+3;l>>=_)),u>>>=3,l-=3}else{for(z=_+7;l>>=_)),u>>>=7,l-=7}if(r.have+d>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;d--;)r.lens[r.have++]=k}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,S={bits:r.lenbits},x=T(D,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,x){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},x=T(F,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,x){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=o&&258<=h){e.next_out=a,e.avail_out=h,e.next_in=s,e.avail_in=o,r.hold=u,r.bits=l,R(e,c),a=e.next_out,i=e.output,h=e.avail_out,s=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;g=(C=r.lencode[u&(1<>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,r.length=b,0===g){r.mode=26;break}if(32&g){r.back=-1,r.mode=12;break}if(64&g){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&g,r.mode=22;case 22:if(r.extra){for(z=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;g=(C=r.distcode[u&(1<>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break e;o--,u+=n[s++]<>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,64&g){e.msg="invalid distance code",r.mode=30;break}r.offset=b,r.extra=15&g,r.mode=24;case 24:if(r.extra){for(z=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===h)break e;if(d=c-h,r.offset>d){if((d=r.offset-d)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}p=d>r.wnext?(d-=r.wnext,r.wsize-d):r.wnext-d,d>r.length&&(d=r.length),m=r.window}else m=i,p=a-r.offset,d=r.length;for(hd?(m=R[T+a[v]],A[I+a[v]]):(m=96,0),h=1<>S)+(u-=h)]=p<<24|m<<16|_|0,0!==u;);for(h=1<>=1;if(0!==h?(E&=h-1,E+=h):E=0,v++,0==--O[b]){if(b===w)break;b=t[r+a[v]]}if(k>>7)]}function U(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function P(e,t,r){e.bi_valid>d-r?(e.bi_buf|=t<>d-e.bi_valid,e.bi_valid+=r-d):(e.bi_buf|=t<>>=1,r<<=1,0<--t;);return r>>>1}function Z(e,t,r){var n,i,s=new Array(g+1),a=0;for(n=1;n<=g;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=j(s[o]++,o))}}function W(e){var t;for(t=0;t>1;1<=r;r--)G(e,s,r);for(i=h;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],G(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,G(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,h=t.dyn_tree,u=t.max_code,l=t.stat_desc.static_tree,f=t.stat_desc.has_stree,c=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,m=0;for(s=0;s<=g;s++)e.bl_count[s]=0;for(h[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<_;r++)p<(s=h[2*h[2*(n=e.heap[r])+1]+1]+1)&&(s=p,m++),h[2*n+1]=s,u>=7;n>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return o;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return h;for(t=32;t>>3,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=r+5,r+4<=i&&-1!==t?J(e,t,r,n):4===e.strategy||s===i?(P(e,2+(n?1:0),3),K(e,z,C)):(P(e,4+(n?1:0),3),function(e,t,r,n){var i;for(P(e,t-257,5),P(e,r-1,5),P(e,n-4,4),i=0;i>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(A[r]+u+1)]++,e.dyn_dtree[2*N(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){P(e,2,3),L(e,m,z),function(e){16===e.bi_valid?(U(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,r){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,r){(function(e){!function(r,n){"use strict";if(!r.setImmediate){var i,s,t,a,o=1,h={},u=!1,l=r.document,e=Object.getPrototypeOf&&Object.getPrototypeOf(r);e=e&&e.setTimeout?e:r,i="[object process]"==={}.toString.call(r.process)?function(e){process.nextTick(function(){c(e)})}:function(){if(r.postMessage&&!r.importScripts){var e=!0,t=r.onmessage;return r.onmessage=function(){e=!1},r.postMessage("","*"),r.onmessage=t,e}}()?(a="setImmediate$"+Math.random()+"$",r.addEventListener?r.addEventListener("message",d,!1):r.attachEvent("onmessage",d),function(e){r.postMessage(a+e,"*")}):r.MessageChannel?((t=new MessageChannel).port1.onmessage=function(e){c(e.data)},function(e){t.port2.postMessage(e)}):l&&"onreadystatechange"in l.createElement("script")?(s=l.documentElement,function(e){var t=l.createElement("script");t.onreadystatechange=function(){c(e),t.onreadystatechange=null,s.removeChild(t),t=null},s.appendChild(t)}):function(e){setTimeout(c,0,e)},e.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),r=0;r { /** * lodash (Custom Build) * Build: `lodash modularize exports="npm" -o ./` * Copyright jQuery Foundation and other contributors * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors */ /** Used as the `TypeError` message for "Functions" methods. */ var FUNC_ERROR_TEXT = 'Expected a function'; /** Used to stand-in for `undefined` hash values. */ var HASH_UNDEFINED = '__lodash_hash_undefined__'; /** Used as references for various `Number` constants. */ var INFINITY = 1 / 0; /** `Object#toString` result references. */ var funcTag = '[object Function]', genTag = '[object GeneratorFunction]', symbolTag = '[object Symbol]'; /** Used to match property names within property paths. */ var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, reIsPlainProp = /^\w*$/, reLeadingDot = /^\./, rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; /** * Used to match `RegExp` * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). */ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g; /** Used to match backslashes in property paths. */ var reEscapeChar = /\\(\\)?/g; /** Used to detect host constructors (Safari). */ var reIsHostCtor = /^\[object .+?Constructor\]$/; /** Detect free variable `global` from Node.js. */ var freeGlobal = typeof __webpack_require__.g == 'object' && __webpack_require__.g && __webpack_require__.g.Object === Object && __webpack_require__.g; /** Detect free variable `self`. */ var freeSelf = typeof self == 'object' && self && self.Object === Object && self; /** Used as a reference to the global object. */ var root = freeGlobal || freeSelf || Function('return this')(); /** * Gets the value at `key` of `object`. * * @private * @param {Object} [object] The object to query. * @param {string} key The key of the property to get. * @returns {*} Returns the property value. */ function getValue(object, key) { return object == null ? undefined : object[key]; } /** * Checks if `value` is a host object in IE < 9. * * @private * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a host object, else `false`. */ function isHostObject(value) { // Many host objects are `Object` objects that can coerce to strings // despite having improperly defined `toString` methods. var result = false; if (value != null && typeof value.toString != 'function') { try { result = !!(value + ''); } catch (e) {} } return result; } /** Used for built-in method references. */ var arrayProto = Array.prototype, funcProto = Function.prototype, objectProto = Object.prototype; /** Used to detect overreaching core-js shims. */ var coreJsData = root['__core-js_shared__']; /** Used to detect methods masquerading as native. */ var maskSrcKey = (function() { var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); return uid ? ('Symbol(src)_1.' + uid) : ''; }()); /** Used to resolve the decompiled source of functions. */ var funcToString = funcProto.toString; /** Used to check objects for own properties. */ var hasOwnProperty = objectProto.hasOwnProperty; /** * Used to resolve the * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) * of values. */ var objectToString = objectProto.toString; /** Used to detect if a method is native. */ var reIsNative = RegExp('^' + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' ); /** Built-in value references. */ var Symbol = root.Symbol, splice = arrayProto.splice; /* Built-in method references that are verified to be native. */ var Map = getNative(root, 'Map'), nativeCreate = getNative(Object, 'create'); /** Used to convert symbols to primitives and strings. */ var symbolProto = Symbol ? Symbol.prototype : undefined, symbolToString = symbolProto ? symbolProto.toString : undefined; /** * Creates a hash object. * * @private * @constructor * @param {Array} [entries] The key-value pairs to cache. */ function Hash(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } /** * Removes all key-value entries from the hash. * * @private * @name clear * @memberOf Hash */ function hashClear() { this.__data__ = nativeCreate ? nativeCreate(null) : {}; } /** * Removes `key` and its value from the hash. * * @private * @name delete * @memberOf Hash * @param {Object} hash The hash to modify. * @param {string} key The key of the value to remove. * @returns {boolean} Returns `true` if the entry was removed, else `false`. */ function hashDelete(key) { return this.has(key) && delete this.__data__[key]; } /** * Gets the hash value for `key`. * * @private * @name get * @memberOf Hash * @param {string} key The key of the value to get. * @returns {*} Returns the entry value. */ function hashGet(key) { var data = this.__data__; if (nativeCreate) { var result = data[key]; return result === HASH_UNDEFINED ? undefined : result; } return hasOwnProperty.call(data, key) ? data[key] : undefined; } /** * Checks if a hash value for `key` exists. * * @private * @name has * @memberOf Hash * @param {string} key The key of the entry to check. * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. */ function hashHas(key) { var data = this.__data__; return nativeCreate ? data[key] !== undefined : hasOwnProperty.call(data, key); } /** * Sets the hash `key` to `value`. * * @private * @name set * @memberOf Hash * @param {string} key The key of the value to set. * @param {*} value The value to set. * @returns {Object} Returns the hash instance. */ function hashSet(key, value) { var data = this.__data__; data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; return this; } // Add methods to `Hash`. Hash.prototype.clear = hashClear; Hash.prototype['delete'] = hashDelete; Hash.prototype.get = hashGet; Hash.prototype.has = hashHas; Hash.prototype.set = hashSet; /** * Creates an list cache object. * * @private * @constructor * @param {Array} [entries] The key-value pairs to cache. */ function ListCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } /** * Removes all key-value entries from the list cache. * * @private * @name clear * @memberOf ListCache */ function listCacheClear() { this.__data__ = []; } /** * Removes `key` and its value from the list cache. * * @private * @name delete * @memberOf ListCache * @param {string} key The key of the value to remove. * @returns {boolean} Returns `true` if the entry was removed, else `false`. */ function listCacheDelete(key) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { return false; } var lastIndex = data.length - 1; if (index == lastIndex) { data.pop(); } else { splice.call(data, index, 1); } return true; } /** * Gets the list cache value for `key`. * * @private * @name get * @memberOf ListCache * @param {string} key The key of the value to get. * @returns {*} Returns the entry value. */ function listCacheGet(key) { var data = this.__data__, index = assocIndexOf(data, key); return index < 0 ? undefined : data[index][1]; } /** * Checks if a list cache value for `key` exists. * * @private * @name has * @memberOf ListCache * @param {string} key The key of the entry to check. * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. */ function listCacheHas(key) { return assocIndexOf(this.__data__, key) > -1; } /** * Sets the list cache `key` to `value`. * * @private * @name set * @memberOf ListCache * @param {string} key The key of the value to set. * @param {*} value The value to set. * @returns {Object} Returns the list cache instance. */ function listCacheSet(key, value) { var data = this.__data__, index = assocIndexOf(data, key); if (index < 0) { data.push([key, value]); } else { data[index][1] = value; } return this; } // Add methods to `ListCache`. ListCache.prototype.clear = listCacheClear; ListCache.prototype['delete'] = listCacheDelete; ListCache.prototype.get = listCacheGet; ListCache.prototype.has = listCacheHas; ListCache.prototype.set = listCacheSet; /** * Creates a map cache object to store key-value pairs. * * @private * @constructor * @param {Array} [entries] The key-value pairs to cache. */ function MapCache(entries) { var index = -1, length = entries ? entries.length : 0; this.clear(); while (++index < length) { var entry = entries[index]; this.set(entry[0], entry[1]); } } /** * Removes all key-value entries from the map. * * @private * @name clear * @memberOf MapCache */ function mapCacheClear() { this.__data__ = { 'hash': new Hash, 'map': new (Map || ListCache), 'string': new Hash }; } /** * Removes `key` and its value from the map. * * @private * @name delete * @memberOf MapCache * @param {string} key The key of the value to remove. * @returns {boolean} Returns `true` if the entry was removed, else `false`. */ function mapCacheDelete(key) { return getMapData(this, key)['delete'](key); } /** * Gets the map value for `key`. * * @private * @name get * @memberOf MapCache * @param {string} key The key of the value to get. * @returns {*} Returns the entry value. */ function mapCacheGet(key) { return getMapData(this, key).get(key); } /** * Checks if a map value for `key` exists. * * @private * @name has * @memberOf MapCache * @param {string} key The key of the entry to check. * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. */ function mapCacheHas(key) { return getMapData(this, key).has(key); } /** * Sets the map `key` to `value`. * * @private * @name set * @memberOf MapCache * @param {string} key The key of the value to set. * @param {*} value The value to set. * @returns {Object} Returns the map cache instance. */ function mapCacheSet(key, value) { getMapData(this, key).set(key, value); return this; } // Add methods to `MapCache`. MapCache.prototype.clear = mapCacheClear; MapCache.prototype['delete'] = mapCacheDelete; MapCache.prototype.get = mapCacheGet; MapCache.prototype.has = mapCacheHas; MapCache.prototype.set = mapCacheSet; /** * Gets the index at which the `key` is found in `array` of key-value pairs. * * @private * @param {Array} array The array to inspect. * @param {*} key The key to search for. * @returns {number} Returns the index of the matched value, else `-1`. */ function assocIndexOf(array, key) { var length = array.length; while (length--) { if (eq(array[length][0], key)) { return length; } } return -1; } /** * The base implementation of `_.get` without support for default values. * * @private * @param {Object} object The object to query. * @param {Array|string} path The path of the property to get. * @returns {*} Returns the resolved value. */ function baseGet(object, path) { path = isKey(path, object) ? [path] : castPath(path); var index = 0, length = path.length; while (object != null && index < length) { object = object[toKey(path[index++])]; } return (index && index == length) ? object : undefined; } /** * The base implementation of `_.isNative` without bad shim checks. * * @private * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a native function, * else `false`. */ function baseIsNative(value) { if (!isObject(value) || isMasked(value)) { return false; } var pattern = (isFunction(value) || isHostObject(value)) ? reIsNative : reIsHostCtor; return pattern.test(toSource(value)); } /** * The base implementation of `_.toString` which doesn't convert nullish * values to empty strings. * * @private * @param {*} value The value to process. * @returns {string} Returns the string. */ function baseToString(value) { // Exit early for strings to avoid a performance hit in some environments. if (typeof value == 'string') { return value; } if (isSymbol(value)) { return symbolToString ? symbolToString.call(value) : ''; } var result = (value + ''); return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; } /** * Casts `value` to a path array if it's not one. * * @private * @param {*} value The value to inspect. * @returns {Array} Returns the cast property path array. */ function castPath(value) { return isArray(value) ? value : stringToPath(value); } /** * Gets the data for `map`. * * @private * @param {Object} map The map to query. * @param {string} key The reference key. * @returns {*} Returns the map data. */ function getMapData(map, key) { var data = map.__data__; return isKeyable(key) ? data[typeof key == 'string' ? 'string' : 'hash'] : data.map; } /** * Gets the native function at `key` of `object`. * * @private * @param {Object} object The object to query. * @param {string} key The key of the method to get. * @returns {*} Returns the function if it's native, else `undefined`. */ function getNative(object, key) { var value = getValue(object, key); return baseIsNative(value) ? value : undefined; } /** * Checks if `value` is a property name and not a property path. * * @private * @param {*} value The value to check. * @param {Object} [object] The object to query keys on. * @returns {boolean} Returns `true` if `value` is a property name, else `false`. */ function isKey(value, object) { if (isArray(value)) { return false; } var type = typeof value; if (type == 'number' || type == 'symbol' || type == 'boolean' || value == null || isSymbol(value)) { return true; } return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || (object != null && value in Object(object)); } /** * Checks if `value` is suitable for use as unique object key. * * @private * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is suitable, else `false`. */ function isKeyable(value) { var type = typeof value; return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') ? (value !== '__proto__') : (value === null); } /** * Checks if `func` has its source masked. * * @private * @param {Function} func The function to check. * @returns {boolean} Returns `true` if `func` is masked, else `false`. */ function isMasked(func) { return !!maskSrcKey && (maskSrcKey in func); } /** * Converts `string` to a property path array. * * @private * @param {string} string The string to convert. * @returns {Array} Returns the property path array. */ var stringToPath = memoize(function(string) { string = toString(string); var result = []; if (reLeadingDot.test(string)) { result.push(''); } string.replace(rePropName, function(match, number, quote, string) { result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match)); }); return result; }); /** * Converts `value` to a string key if it's not a string or symbol. * * @private * @param {*} value The value to inspect. * @returns {string|symbol} Returns the key. */ function toKey(value) { if (typeof value == 'string' || isSymbol(value)) { return value; } var result = (value + ''); return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; } /** * Converts `func` to its source code. * * @private * @param {Function} func The function to process. * @returns {string} Returns the source code. */ function toSource(func) { if (func != null) { try { return funcToString.call(func); } catch (e) {} try { return (func + ''); } catch (e) {} } return ''; } /** * Creates a function that memoizes the result of `func`. If `resolver` is * provided, it determines the cache key for storing the result based on the * arguments provided to the memoized function. By default, the first argument * provided to the memoized function is used as the map cache key. The `func` * is invoked with the `this` binding of the memoized function. * * **Note:** The cache is exposed as the `cache` property on the memoized * function. Its creation may be customized by replacing the `_.memoize.Cache` * constructor with one whose instances implement the * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) * method interface of `delete`, `get`, `has`, and `set`. * * @static * @memberOf _ * @since 0.1.0 * @category Function * @param {Function} func The function to have its output memoized. * @param {Function} [resolver] The function to resolve the cache key. * @returns {Function} Returns the new memoized function. * @example * * var object = { 'a': 1, 'b': 2 }; * var other = { 'c': 3, 'd': 4 }; * * var values = _.memoize(_.values); * values(object); * // => [1, 2] * * values(other); * // => [3, 4] * * object.a = 2; * values(object); * // => [1, 2] * * // Modify the result cache. * values.cache.set(object, ['a', 'b']); * values(object); * // => ['a', 'b'] * * // Replace `_.memoize.Cache`. * _.memoize.Cache = WeakMap; */ function memoize(func, resolver) { if (typeof func != 'function' || (resolver && typeof resolver != 'function')) { throw new TypeError(FUNC_ERROR_TEXT); } var memoized = function() { var args = arguments, key = resolver ? resolver.apply(this, args) : args[0], cache = memoized.cache; if (cache.has(key)) { return cache.get(key); } var result = func.apply(this, args); memoized.cache = cache.set(key, result); return result; }; memoized.cache = new (memoize.Cache || MapCache); return memoized; } // Assign cache to `_.memoize`. memoize.Cache = MapCache; /** * Performs a * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) * comparison between two values to determine if they are equivalent. * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to compare. * @param {*} other The other value to compare. * @returns {boolean} Returns `true` if the values are equivalent, else `false`. * @example * * var object = { 'a': 1 }; * var other = { 'a': 1 }; * * _.eq(object, object); * // => true * * _.eq(object, other); * // => false * * _.eq('a', 'a'); * // => true * * _.eq('a', Object('a')); * // => false * * _.eq(NaN, NaN); * // => true */ function eq(value, other) { return value === other || (value !== value && other !== other); } /** * Checks if `value` is classified as an `Array` object. * * @static * @memberOf _ * @since 0.1.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is an array, else `false`. * @example * * _.isArray([1, 2, 3]); * // => true * * _.isArray(document.body.children); * // => false * * _.isArray('abc'); * // => false * * _.isArray(_.noop); * // => false */ var isArray = Array.isArray; /** * Checks if `value` is classified as a `Function` object. * * @static * @memberOf _ * @since 0.1.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a function, else `false`. * @example * * _.isFunction(_); * // => true * * _.isFunction(/abc/); * // => false */ function isFunction(value) { // The use of `Object#toString` avoids issues with the `typeof` operator // in Safari 8-9 which returns 'object' for typed array and other constructors. var tag = isObject(value) ? objectToString.call(value) : ''; return tag == funcTag || tag == genTag; } /** * Checks if `value` is the * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) * * @static * @memberOf _ * @since 0.1.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is an object, else `false`. * @example * * _.isObject({}); * // => true * * _.isObject([1, 2, 3]); * // => true * * _.isObject(_.noop); * // => true * * _.isObject(null); * // => false */ function isObject(value) { var type = typeof value; return !!value && (type == 'object' || type == 'function'); } /** * Checks if `value` is object-like. A value is object-like if it's not `null` * and has a `typeof` result of "object". * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is object-like, else `false`. * @example * * _.isObjectLike({}); * // => true * * _.isObjectLike([1, 2, 3]); * // => true * * _.isObjectLike(_.noop); * // => false * * _.isObjectLike(null); * // => false */ function isObjectLike(value) { return !!value && typeof value == 'object'; } /** * Checks if `value` is classified as a `Symbol` primitive or object. * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to check. * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. * @example * * _.isSymbol(Symbol.iterator); * // => true * * _.isSymbol('abc'); * // => false */ function isSymbol(value) { return typeof value == 'symbol' || (isObjectLike(value) && objectToString.call(value) == symbolTag); } /** * Converts `value` to a string. An empty string is returned for `null` * and `undefined` values. The sign of `-0` is preserved. * * @static * @memberOf _ * @since 4.0.0 * @category Lang * @param {*} value The value to process. * @returns {string} Returns the string. * @example * * _.toString(null); * // => '' * * _.toString(-0); * // => '-0' * * _.toString([1, 2, 3]); * // => '1,2,3' */ function toString(value) { return value == null ? '' : baseToString(value); } /** * Gets the value at `path` of `object`. If the resolved value is * `undefined`, the `defaultValue` is returned in its place. * * @static * @memberOf _ * @since 3.7.0 * @category Object * @param {Object} object The object to query. * @param {Array|string} path The path of the property to get. * @param {*} [defaultValue] The value returned for `undefined` resolved values. * @returns {*} Returns the resolved value. * @example * * var object = { 'a': [{ 'b': { 'c': 3 } }] }; * * _.get(object, 'a[0].b.c'); * // => 3 * * _.get(object, ['a', '0', 'b', 'c']); * // => 3 * * _.get(object, 'a.b.c', 'default'); * // => 'default' */ function get(object, path, defaultValue) { var result = object == null ? undefined : baseGet(object, path); return result === undefined ? defaultValue : result; } module.exports = get; /***/ }), /***/ "./node_modules/node-gettext/lib/gettext.js": /*!**************************************************!*\ !*** ./node_modules/node-gettext/lib/gettext.js ***! \**************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; var get = __webpack_require__(/*! lodash.get */ "./node_modules/lodash.get/index.js"); var plurals = __webpack_require__(/*! ./plurals */ "./node_modules/node-gettext/lib/plurals.js"); module.exports = Gettext; /** * Creates and returns a new Gettext instance. * * @constructor * @param {Object} [options] A set of options * @param {String} options.sourceLocale The locale that the source code and its * texts are written in. Translations for * this locale is not necessary. * @param {Boolean} options.debug Whether to output debug info into the * console. * @return {Object} A Gettext instance */ function Gettext(options) { options = options || {}; this.catalogs = {}; this.locale = ''; this.domain = 'messages'; this.listeners = []; // Set source locale this.sourceLocale = ''; if (options.sourceLocale) { if (typeof options.sourceLocale === 'string') { this.sourceLocale = options.sourceLocale; } else { this.warn('The `sourceLocale` option should be a string'); } } // Set debug flag this.debug = 'debug' in options && options.debug === true; } /** * Adds an event listener. * * @param {String} eventName An event name * @param {Function} callback An event handler function */ Gettext.prototype.on = function(eventName, callback) { this.listeners.push({ eventName: eventName, callback: callback }); }; /** * Removes an event listener. * * @param {String} eventName An event name * @param {Function} callback A previously registered event handler function */ Gettext.prototype.off = function(eventName, callback) { this.listeners = this.listeners.filter(function(listener) { return ( listener.eventName === eventName && listener.callback === callback ) === false; }); }; /** * Emits an event to all registered event listener. * * @private * @param {String} eventName An event name * @param {any} eventData Data to pass to event listeners */ Gettext.prototype.emit = function(eventName, eventData) { for (var i = 0; i < this.listeners.length; i++) { var listener = this.listeners[i]; if (listener.eventName === eventName) { listener.callback(eventData); } } }; /** * Logs a warning to the console if debug mode is enabled. * * @ignore * @param {String} message A warning message */ Gettext.prototype.warn = function(message) { if (this.debug) { console.warn(message); } this.emit('error', new Error(message)); }; /** * Stores a set of translations in the set of gettext * catalogs. * * @example * gt.addTranslations('sv-SE', 'messages', translationsObject) * * @param {String} locale A locale string * @param {String} domain A domain name * @param {Object} translations An object of gettext-parser JSON shape */ Gettext.prototype.addTranslations = function(locale, domain, translations) { if (!this.catalogs[locale]) { this.catalogs[locale] = {}; } this.catalogs[locale][domain] = translations; }; /** * Sets the locale to get translated messages for. * * @example * gt.setLocale('sv-SE') * * @param {String} locale A locale */ Gettext.prototype.setLocale = function(locale) { if (typeof locale !== 'string') { this.warn( 'You called setLocale() with an argument of type ' + (typeof locale) + '. ' + 'The locale must be a string.' ); return; } if (locale.trim() === '') { this.warn('You called setLocale() with an empty value, which makes little sense.'); } if (locale !== this.sourceLocale && !this.catalogs[locale]) { this.warn('You called setLocale() with "' + locale + '", but no translations for that locale has been added.'); } this.locale = locale; }; /** * Sets the default gettext domain. * * @example * gt.setTextDomain('domainname') * * @param {String} domain A gettext domain name */ Gettext.prototype.setTextDomain = function(domain) { if (typeof domain !== 'string') { this.warn( 'You called setTextDomain() with an argument of type ' + (typeof domain) + '. ' + 'The domain must be a string.' ); return; } if (domain.trim() === '') { this.warn('You called setTextDomain() with an empty `domain` value.'); } this.domain = domain; }; /** * Translates a string using the default textdomain * * @example * gt.gettext('Some text') * * @param {String} msgid String to be translated * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.gettext = function(msgid) { return this.dnpgettext(this.domain, '', msgid); }; /** * Translates a string using a specific domain * * @example * gt.dgettext('domainname', 'Some text') * * @param {String} domain A gettext domain name * @param {String} msgid String to be translated * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.dgettext = function(domain, msgid) { return this.dnpgettext(domain, '', msgid); }; /** * Translates a plural string using the default textdomain * * @example * gt.ngettext('One thing', 'Many things', numberOfThings) * * @param {String} msgid String to be translated when count is not plural * @param {String} msgidPlural String to be translated when count is plural * @param {Number} count Number count for the plural * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.ngettext = function(msgid, msgidPlural, count) { return this.dnpgettext(this.domain, '', msgid, msgidPlural, count); }; /** * Translates a plural string using a specific textdomain * * @example * gt.dngettext('domainname', 'One thing', 'Many things', numberOfThings) * * @param {String} domain A gettext domain name * @param {String} msgid String to be translated when count is not plural * @param {String} msgidPlural String to be translated when count is plural * @param {Number} count Number count for the plural * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.dngettext = function(domain, msgid, msgidPlural, count) { return this.dnpgettext(domain, '', msgid, msgidPlural, count); }; /** * Translates a string from a specific context using the default textdomain * * @example * gt.pgettext('sports', 'Back') * * @param {String} msgctxt Translation context * @param {String} msgid String to be translated * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.pgettext = function(msgctxt, msgid) { return this.dnpgettext(this.domain, msgctxt, msgid); }; /** * Translates a string from a specific context using s specific textdomain * * @example * gt.dpgettext('domainname', 'sports', 'Back') * * @param {String} domain A gettext domain name * @param {String} msgctxt Translation context * @param {String} msgid String to be translated * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.dpgettext = function(domain, msgctxt, msgid) { return this.dnpgettext(domain, msgctxt, msgid); }; /** * Translates a plural string from a specific context using the default textdomain * * @example * gt.npgettext('sports', 'Back', '%d backs', numberOfBacks) * * @param {String} msgctxt Translation context * @param {String} msgid String to be translated when count is not plural * @param {String} msgidPlural String to be translated when count is plural * @param {Number} count Number count for the plural * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.npgettext = function(msgctxt, msgid, msgidPlural, count) { return this.dnpgettext(this.domain, msgctxt, msgid, msgidPlural, count); }; /** * Translates a plural string from a specifi context using a specific textdomain * * @example * gt.dnpgettext('domainname', 'sports', 'Back', '%d backs', numberOfBacks) * * @param {String} domain A gettext domain name * @param {String} msgctxt Translation context * @param {String} msgid String to be translated * @param {String} msgidPlural If no translation was found, return this on count!=1 * @param {Number} count Number count for the plural * @return {String} Translation or the original string if no translation was found */ Gettext.prototype.dnpgettext = function(domain, msgctxt, msgid, msgidPlural, count) { var defaultTranslation = msgid; var translation; var index; msgctxt = msgctxt || ''; if (!isNaN(count) && count !== 1) { defaultTranslation = msgidPlural || msgid; } translation = this._getTranslation(domain, msgctxt, msgid); if (translation) { if (typeof count === 'number') { var pluralsFunc = plurals[Gettext.getLanguageCode(this.locale)].pluralsFunc; index = pluralsFunc(count); if (typeof index === 'boolean') { index = index ? 1 : 0; } } else { index = 0; } return translation.msgstr[index] || defaultTranslation; } else if (!this.sourceLocale || this.locale !== this.sourceLocale) { this.warn('No translation was found for msgid "' + msgid + '" in msgctxt "' + msgctxt + '" and domain "' + domain + '"'); } return defaultTranslation; }; /** * Retrieves comments object for a translation. The comments object * has the shape `{ translator, extracted, reference, flag, previous }`. * * @example * const comment = gt.getComment('domainname', 'sports', 'Backs') * * @private * @param {String} domain A gettext domain name * @param {String} msgctxt Translation context * @param {String} msgid String to be translated * @return {Object} Comments object or false if not found */ Gettext.prototype.getComment = function(domain, msgctxt, msgid) { var translation; translation = this._getTranslation(domain, msgctxt, msgid); if (translation) { return translation.comments || {}; } return {}; }; /** * Retrieves translation object from the domain and context * * @private * @param {String} domain A gettext domain name * @param {String} msgctxt Translation context * @param {String} msgid String to be translated * @return {Object} Translation object or false if not found */ Gettext.prototype._getTranslation = function(domain, msgctxt, msgid) { msgctxt = msgctxt || ''; return get(this.catalogs, [this.locale, domain, 'translations', msgctxt, msgid]); }; /** * Returns the language code part of a locale * * @example * Gettext.getLanguageCode('sv-SE') * // -> "sv" * * @private * @param {String} locale A case-insensitive locale string * @returns {String} A language code */ Gettext.getLanguageCode = function(locale) { return locale.split(/[\-_]/)[0].toLowerCase(); }; /* C-style aliases */ /** * C-style alias for [setTextDomain](#gettextsettextdomaindomain) * * @see Gettext#setTextDomain */ Gettext.prototype.textdomain = function(domain) { if (this.debug) { console.warn('textdomain(domain) was used to set locales in node-gettext v1. ' + 'Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\n\n ' + 'To read more about the migration from node-gettext v1 to v2, ' + 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\n\n' + 'This warning will be removed in the final 2.0.0'); } this.setTextDomain(domain); }; /** * C-style alias for [setLocale](#gettextsetlocalelocale) * * @see Gettext#setLocale */ Gettext.prototype.setlocale = function(locale) { this.setLocale(locale); }; /* Deprecated functions */ /** * This function will be removed in the final 2.0.0 release. * * @deprecated */ Gettext.prototype.addTextdomain = function() { console.error('addTextdomain() is deprecated.\n\n' + '* To add translations, use addTranslations()\n' + '* To set the default domain, use setTextDomain() (or its alias textdomain())\n' + '\n' + 'To read more about the migration from node-gettext v1 to v2, ' + 'see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x'); }; /***/ }), /***/ "./node_modules/node-gettext/lib/plurals.js": /*!**************************************************!*\ !*** ./node_modules/node-gettext/lib/plurals.js ***! \**************************************************/ /***/ ((module) => { "use strict"; module.exports = { ach: { name: 'Acholi', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, af: { name: 'Afrikaans', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ak: { name: 'Akan', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, am: { name: 'Amharic', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, an: { name: 'Aragonese', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ar: { name: 'Arabic', examples: [{ plural: 0, sample: 0 }, { plural: 1, sample: 1 }, { plural: 2, sample: 2 }, { plural: 3, sample: 3 }, { plural: 4, sample: 11 }, { plural: 5, sample: 100 }], nplurals: 6, pluralsText: 'nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)', pluralsFunc: function(n) { return (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5); } }, arn: { name: 'Mapudungun', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, ast: { name: 'Asturian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ay: { name: 'Aymará', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, az: { name: 'Azerbaijani', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, be: { name: 'Belarusian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, bg: { name: 'Bulgarian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, bn: { name: 'Bengali', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, bo: { name: 'Tibetan', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, br: { name: 'Breton', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, brx: { name: 'Bodo', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, bs: { name: 'Bosnian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, ca: { name: 'Catalan', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, cgg: { name: 'Chiga', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, cs: { name: 'Czech', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)', pluralsFunc: function(n) { return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2); } }, csb: { name: 'Kashubian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, cy: { name: 'Welsh', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 3 }, { plural: 3, sample: 8 }], nplurals: 4, pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)', pluralsFunc: function(n) { return (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3); } }, da: { name: 'Danish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, de: { name: 'German', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, doi: { name: 'Dogri', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, dz: { name: 'Dzongkha', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, el: { name: 'Greek', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, en: { name: 'English', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, eo: { name: 'Esperanto', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, es: { name: 'Spanish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, et: { name: 'Estonian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, eu: { name: 'Basque', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, fa: { name: 'Persian', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, ff: { name: 'Fulah', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, fi: { name: 'Finnish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, fil: { name: 'Filipino', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, fo: { name: 'Faroese', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, fr: { name: 'French', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, fur: { name: 'Friulian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, fy: { name: 'Frisian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ga: { name: 'Irish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 3 }, { plural: 3, sample: 7 }, { plural: 4, sample: 11 }], nplurals: 5, pluralsText: 'nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)', pluralsFunc: function(n) { return (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4); } }, gd: { name: 'Scottish Gaelic', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 3 }, { plural: 3, sample: 20 }], nplurals: 4, pluralsText: 'nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)', pluralsFunc: function(n) { return ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3); } }, gl: { name: 'Galician', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, gu: { name: 'Gujarati', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, gun: { name: 'Gun', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, ha: { name: 'Hausa', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, he: { name: 'Hebrew', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, hi: { name: 'Hindi', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, hne: { name: 'Chhattisgarhi', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, hr: { name: 'Croatian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, hu: { name: 'Hungarian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, hy: { name: 'Armenian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, id: { name: 'Indonesian', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, is: { name: 'Icelandic', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)', pluralsFunc: function(n) { return (n % 10 !== 1 || n % 100 === 11); } }, it: { name: 'Italian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ja: { name: 'Japanese', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, jbo: { name: 'Lojban', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, jv: { name: 'Javanese', examples: [{ plural: 0, sample: 0 }, { plural: 1, sample: 1 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 0)', pluralsFunc: function(n) { return (n !== 0); } }, ka: { name: 'Georgian', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, kk: { name: 'Kazakh', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, km: { name: 'Khmer', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, kn: { name: 'Kannada', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ko: { name: 'Korean', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, ku: { name: 'Kurdish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, kw: { name: 'Cornish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 3 }, { plural: 3, sample: 4 }], nplurals: 4, pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)', pluralsFunc: function(n) { return (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3); } }, ky: { name: 'Kyrgyz', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, lb: { name: 'Letzeburgesch', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ln: { name: 'Lingala', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, lo: { name: 'Lao', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, lt: { name: 'Lithuanian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 10 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, lv: { name: 'Latvian', examples: [{ plural: 2, sample: 0 }, { plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2); } }, mai: { name: 'Maithili', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, mfe: { name: 'Mauritian Creole', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, mg: { name: 'Malagasy', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, mi: { name: 'Maori', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, mk: { name: 'Macedonian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)', pluralsFunc: function(n) { return (n === 1 || n % 10 === 1 ? 0 : 1); } }, ml: { name: 'Malayalam', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, mn: { name: 'Mongolian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, mni: { name: 'Manipuri', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, mnk: { name: 'Mandinka', examples: [{ plural: 0, sample: 0 }, { plural: 1, sample: 1 }, { plural: 2, sample: 2 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)', pluralsFunc: function(n) { return (n === 0 ? 0 : n === 1 ? 1 : 2); } }, mr: { name: 'Marathi', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ms: { name: 'Malay', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, mt: { name: 'Maltese', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 11 }, { plural: 3, sample: 20 }], nplurals: 4, pluralsText: 'nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)', pluralsFunc: function(n) { return (n === 1 ? 0 : n === 0 || (n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20) ? 2 : 3); } }, my: { name: 'Burmese', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, nah: { name: 'Nahuatl', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, nap: { name: 'Neapolitan', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, nb: { name: 'Norwegian Bokmal', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ne: { name: 'Nepali', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, nl: { name: 'Dutch', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, nn: { name: 'Norwegian Nynorsk', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, no: { name: 'Norwegian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, nso: { name: 'Northern Sotho', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, oc: { name: 'Occitan', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, or: { name: 'Oriya', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, pa: { name: 'Punjabi', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, pap: { name: 'Papiamento', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, pl: { name: 'Polish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, pms: { name: 'Piemontese', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ps: { name: 'Pashto', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, pt: { name: 'Portuguese', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, rm: { name: 'Romansh', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ro: { name: 'Romanian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 20 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)', pluralsFunc: function(n) { return (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2); } }, ru: { name: 'Russian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, rw: { name: 'Kinyarwanda', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sah: { name: 'Yakut', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, sat: { name: 'Santali', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sco: { name: 'Scots', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sd: { name: 'Sindhi', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, se: { name: 'Northern Sami', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, si: { name: 'Sinhala', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sk: { name: 'Slovak', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)', pluralsFunc: function(n) { return (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2); } }, sl: { name: 'Slovenian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 3 }, { plural: 3, sample: 5 }], nplurals: 4, pluralsText: 'nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)', pluralsFunc: function(n) { return (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3); } }, so: { name: 'Somali', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, son: { name: 'Songhay', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sq: { name: 'Albanian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sr: { name: 'Serbian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, su: { name: 'Sundanese', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, sv: { name: 'Swedish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, sw: { name: 'Swahili', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, ta: { name: 'Tamil', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, te: { name: 'Telugu', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, tg: { name: 'Tajik', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, th: { name: 'Thai', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, ti: { name: 'Tigrinya', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, tk: { name: 'Turkmen', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, tr: { name: 'Turkish', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, tt: { name: 'Tatar', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, ug: { name: 'Uyghur', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, uk: { name: 'Ukrainian', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }, { plural: 2, sample: 5 }], nplurals: 3, pluralsText: 'nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)', pluralsFunc: function(n) { return (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2); } }, ur: { name: 'Urdu', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, uz: { name: 'Uzbek', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, vi: { name: 'Vietnamese', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, wa: { name: 'Walloon', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n > 1)', pluralsFunc: function(n) { return (n > 1); } }, wo: { name: 'Wolof', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } }, yo: { name: 'Yoruba', examples: [{ plural: 0, sample: 1 }, { plural: 1, sample: 2 }], nplurals: 2, pluralsText: 'nplurals = 2; plural = (n !== 1)', pluralsFunc: function(n) { return (n !== 1); } }, zh: { name: 'Chinese', examples: [{ plural: 0, sample: 1 }], nplurals: 1, pluralsText: 'nplurals = 1; plural = 0', pluralsFunc: function() { return 0; } } }; /***/ }), /***/ "./node_modules/path-browserify/index.js": /*!***********************************************!*\ !*** ./node_modules/path-browserify/index.js ***! \***********************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; /* provided dependency */ var process = __webpack_require__(/*! ./node_modules/process/browser.js */ "./node_modules/process/browser.js"); // 'path' module extracted from Node.js v8.11.1 (only the posix part) // transplited with Babel // Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to permit // persons to whom the Software is furnished to do so, subject to the // following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. function assertPath(path) { if (typeof path !== 'string') { throw new TypeError('Path must be a string. Received ' + JSON.stringify(path)); } } // Resolves . and .. elements in a path with directory names function normalizeStringPosix(path, allowAboveRoot) { var res = ''; var lastSegmentLength = 0; var lastSlash = -1; var dots = 0; var code; for (var i = 0; i <= path.length; ++i) { if (i < path.length) code = path.charCodeAt(i); else if (code === 47 /*/*/) break; else code = 47 /*/*/; if (code === 47 /*/*/) { if (lastSlash === i - 1 || dots === 1) { // NOOP } else if (lastSlash !== i - 1 && dots === 2) { if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 /*.*/ || res.charCodeAt(res.length - 2) !== 46 /*.*/) { if (res.length > 2) { var lastSlashIndex = res.lastIndexOf('/'); if (lastSlashIndex !== res.length - 1) { if (lastSlashIndex === -1) { res = ''; lastSegmentLength = 0; } else { res = res.slice(0, lastSlashIndex); lastSegmentLength = res.length - 1 - res.lastIndexOf('/'); } lastSlash = i; dots = 0; continue; } } else if (res.length === 2 || res.length === 1) { res = ''; lastSegmentLength = 0; lastSlash = i; dots = 0; continue; } } if (allowAboveRoot) { if (res.length > 0) res += '/..'; else res = '..'; lastSegmentLength = 2; } } else { if (res.length > 0) res += '/' + path.slice(lastSlash + 1, i); else res = path.slice(lastSlash + 1, i); lastSegmentLength = i - lastSlash - 1; } lastSlash = i; dots = 0; } else if (code === 46 /*.*/ && dots !== -1) { ++dots; } else { dots = -1; } } return res; } function _format(sep, pathObject) { var dir = pathObject.dir || pathObject.root; var base = pathObject.base || (pathObject.name || '') + (pathObject.ext || ''); if (!dir) { return base; } if (dir === pathObject.root) { return dir + base; } return dir + sep + base; } var posix = { // path.resolve([from ...], to) resolve: function resolve() { var resolvedPath = ''; var resolvedAbsolute = false; var cwd; for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { var path; if (i >= 0) path = arguments[i]; else { if (cwd === undefined) cwd = process.cwd(); path = cwd; } assertPath(path); // Skip empty entries if (path.length === 0) { continue; } resolvedPath = path + '/' + resolvedPath; resolvedAbsolute = path.charCodeAt(0) === 47 /*/*/; } // At this point the path should be resolved to a full absolute path, but // handle relative paths to be safe (might happen when process.cwd() fails) // Normalize the path resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute); if (resolvedAbsolute) { if (resolvedPath.length > 0) return '/' + resolvedPath; else return '/'; } else if (resolvedPath.length > 0) { return resolvedPath; } else { return '.'; } }, normalize: function normalize(path) { assertPath(path); if (path.length === 0) return '.'; var isAbsolute = path.charCodeAt(0) === 47 /*/*/; var trailingSeparator = path.charCodeAt(path.length - 1) === 47 /*/*/; // Normalize the path path = normalizeStringPosix(path, !isAbsolute); if (path.length === 0 && !isAbsolute) path = '.'; if (path.length > 0 && trailingSeparator) path += '/'; if (isAbsolute) return '/' + path; return path; }, isAbsolute: function isAbsolute(path) { assertPath(path); return path.length > 0 && path.charCodeAt(0) === 47 /*/*/; }, join: function join() { if (arguments.length === 0) return '.'; var joined; for (var i = 0; i < arguments.length; ++i) { var arg = arguments[i]; assertPath(arg); if (arg.length > 0) { if (joined === undefined) joined = arg; else joined += '/' + arg; } } if (joined === undefined) return '.'; return posix.normalize(joined); }, relative: function relative(from, to) { assertPath(from); assertPath(to); if (from === to) return ''; from = posix.resolve(from); to = posix.resolve(to); if (from === to) return ''; // Trim any leading backslashes var fromStart = 1; for (; fromStart < from.length; ++fromStart) { if (from.charCodeAt(fromStart) !== 47 /*/*/) break; } var fromEnd = from.length; var fromLen = fromEnd - fromStart; // Trim any leading backslashes var toStart = 1; for (; toStart < to.length; ++toStart) { if (to.charCodeAt(toStart) !== 47 /*/*/) break; } var toEnd = to.length; var toLen = toEnd - toStart; // Compare paths to find the longest common path from root var length = fromLen < toLen ? fromLen : toLen; var lastCommonSep = -1; var i = 0; for (; i <= length; ++i) { if (i === length) { if (toLen > length) { if (to.charCodeAt(toStart + i) === 47 /*/*/) { // We get here if `from` is the exact base path for `to`. // For example: from='/foo/bar'; to='/foo/bar/baz' return to.slice(toStart + i + 1); } else if (i === 0) { // We get here if `from` is the root // For example: from='/'; to='/foo' return to.slice(toStart + i); } } else if (fromLen > length) { if (from.charCodeAt(fromStart + i) === 47 /*/*/) { // We get here if `to` is the exact base path for `from`. // For example: from='/foo/bar/baz'; to='/foo/bar' lastCommonSep = i; } else if (i === 0) { // We get here if `to` is the root. // For example: from='/foo'; to='/' lastCommonSep = 0; } } break; } var fromCode = from.charCodeAt(fromStart + i); var toCode = to.charCodeAt(toStart + i); if (fromCode !== toCode) break; else if (fromCode === 47 /*/*/) lastCommonSep = i; } var out = ''; // Generate the relative path based on the path difference between `to` // and `from` for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) { if (i === fromEnd || from.charCodeAt(i) === 47 /*/*/) { if (out.length === 0) out += '..'; else out += '/..'; } } // Lastly, append the rest of the destination (`to`) path that comes after // the common path parts if (out.length > 0) return out + to.slice(toStart + lastCommonSep); else { toStart += lastCommonSep; if (to.charCodeAt(toStart) === 47 /*/*/) ++toStart; return to.slice(toStart); } }, _makeLong: function _makeLong(path) { return path; }, dirname: function dirname(path) { assertPath(path); if (path.length === 0) return '.'; var code = path.charCodeAt(0); var hasRoot = code === 47 /*/*/; var end = -1; var matchedSlash = true; for (var i = path.length - 1; i >= 1; --i) { code = path.charCodeAt(i); if (code === 47 /*/*/) { if (!matchedSlash) { end = i; break; } } else { // We saw the first non-path separator matchedSlash = false; } } if (end === -1) return hasRoot ? '/' : '.'; if (hasRoot && end === 1) return '//'; return path.slice(0, end); }, basename: function basename(path, ext) { if (ext !== undefined && typeof ext !== 'string') throw new TypeError('"ext" argument must be a string'); assertPath(path); var start = 0; var end = -1; var matchedSlash = true; var i; if (ext !== undefined && ext.length > 0 && ext.length <= path.length) { if (ext.length === path.length && ext === path) return ''; var extIdx = ext.length - 1; var firstNonSlashEnd = -1; for (i = path.length - 1; i >= 0; --i) { var code = path.charCodeAt(i); if (code === 47 /*/*/) { // If we reached a path separator that was not part of a set of path // separators at the end of the string, stop now if (!matchedSlash) { start = i + 1; break; } } else { if (firstNonSlashEnd === -1) { // We saw the first non-path separator, remember this index in case // we need it if the extension ends up not matching matchedSlash = false; firstNonSlashEnd = i + 1; } if (extIdx >= 0) { // Try to match the explicit extension if (code === ext.charCodeAt(extIdx)) { if (--extIdx === -1) { // We matched the extension, so mark this as the end of our path // component end = i; } } else { // Extension does not match, so our result is the entire path // component extIdx = -1; end = firstNonSlashEnd; } } } } if (start === end) end = firstNonSlashEnd;else if (end === -1) end = path.length; return path.slice(start, end); } else { for (i = path.length - 1; i >= 0; --i) { if (path.charCodeAt(i) === 47 /*/*/) { // If we reached a path separator that was not part of a set of path // separators at the end of the string, stop now if (!matchedSlash) { start = i + 1; break; } } else if (end === -1) { // We saw the first non-path separator, mark this as the end of our // path component matchedSlash = false; end = i + 1; } } if (end === -1) return ''; return path.slice(start, end); } }, extname: function extname(path) { assertPath(path); var startDot = -1; var startPart = 0; var end = -1; var matchedSlash = true; // Track the state of characters (if any) we see before our first dot and // after any path separator we find var preDotState = 0; for (var i = path.length - 1; i >= 0; --i) { var code = path.charCodeAt(i); if (code === 47 /*/*/) { // If we reached a path separator that was not part of a set of path // separators at the end of the string, stop now if (!matchedSlash) { startPart = i + 1; break; } continue; } if (end === -1) { // We saw the first non-path separator, mark this as the end of our // extension matchedSlash = false; end = i + 1; } if (code === 46 /*.*/) { // If this is our first dot, mark it as the start of our extension if (startDot === -1) startDot = i; else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { // We saw a non-dot and non-path separator before our dot, so we should // have a good chance at having a non-empty extension preDotState = -1; } } if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot preDotState === 0 || // The (right-most) trimmed path component is exactly '..' preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { return ''; } return path.slice(startDot, end); }, format: function format(pathObject) { if (pathObject === null || typeof pathObject !== 'object') { throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof pathObject); } return _format('/', pathObject); }, parse: function parse(path) { assertPath(path); var ret = { root: '', dir: '', base: '', ext: '', name: '' }; if (path.length === 0) return ret; var code = path.charCodeAt(0); var isAbsolute = code === 47 /*/*/; var start; if (isAbsolute) { ret.root = '/'; start = 1; } else { start = 0; } var startDot = -1; var startPart = 0; var end = -1; var matchedSlash = true; var i = path.length - 1; // Track the state of characters (if any) we see before our first dot and // after any path separator we find var preDotState = 0; // Get non-dir info for (; i >= start; --i) { code = path.charCodeAt(i); if (code === 47 /*/*/) { // If we reached a path separator that was not part of a set of path // separators at the end of the string, stop now if (!matchedSlash) { startPart = i + 1; break; } continue; } if (end === -1) { // We saw the first non-path separator, mark this as the end of our // extension matchedSlash = false; end = i + 1; } if (code === 46 /*.*/) { // If this is our first dot, mark it as the start of our extension if (startDot === -1) startDot = i;else if (preDotState !== 1) preDotState = 1; } else if (startDot !== -1) { // We saw a non-dot and non-path separator before our dot, so we should // have a good chance at having a non-empty extension preDotState = -1; } } if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot preDotState === 0 || // The (right-most) trimmed path component is exactly '..' preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) { if (end !== -1) { if (startPart === 0 && isAbsolute) ret.base = ret.name = path.slice(1, end);else ret.base = ret.name = path.slice(startPart, end); } } else { if (startPart === 0 && isAbsolute) { ret.name = path.slice(1, startDot); ret.base = path.slice(1, end); } else { ret.name = path.slice(startPart, startDot); ret.base = path.slice(startPart, end); } ret.ext = path.slice(startDot, end); } if (startPart > 0) ret.dir = path.slice(0, startPart - 1);else if (isAbsolute) ret.dir = '/'; return ret; }, sep: '/', delimiter: ':', win32: null, posix: null }; posix.posix = posix; module.exports = posix; /***/ }), /***/ "./node_modules/process/browser.js": /*!*****************************************!*\ !*** ./node_modules/process/browser.js ***! \*****************************************/ /***/ ((module) => { // shim for using process in browser var process = module.exports = {}; // cached from whatever global is present so that test runners that stub it // don't break things. But we need to wrap it in a try catch in case it is // wrapped in strict mode code which doesn't define any globals. It's inside a // function because try/catches deoptimize in certain engines. var cachedSetTimeout; var cachedClearTimeout; function defaultSetTimout() { throw new Error('setTimeout has not been defined'); } function defaultClearTimeout () { throw new Error('clearTimeout has not been defined'); } (function () { try { if (typeof setTimeout === 'function') { cachedSetTimeout = setTimeout; } else { cachedSetTimeout = defaultSetTimout; } } catch (e) { cachedSetTimeout = defaultSetTimout; } try { if (typeof clearTimeout === 'function') { cachedClearTimeout = clearTimeout; } else { cachedClearTimeout = defaultClearTimeout; } } catch (e) { cachedClearTimeout = defaultClearTimeout; } } ()) function runTimeout(fun) { if (cachedSetTimeout === setTimeout) { //normal enviroments in sane situations return setTimeout(fun, 0); } // if setTimeout wasn't available but was latter defined if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { cachedSetTimeout = setTimeout; return setTimeout(fun, 0); } try { // when when somebody has screwed with setTimeout but no I.E. maddness return cachedSetTimeout(fun, 0); } catch(e){ try { // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedSetTimeout.call(null, fun, 0); } catch(e){ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error return cachedSetTimeout.call(this, fun, 0); } } } function runClearTimeout(marker) { if (cachedClearTimeout === clearTimeout) { //normal enviroments in sane situations return clearTimeout(marker); } // if clearTimeout wasn't available but was latter defined if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { cachedClearTimeout = clearTimeout; return clearTimeout(marker); } try { // when when somebody has screwed with setTimeout but no I.E. maddness return cachedClearTimeout(marker); } catch (e){ try { // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedClearTimeout.call(null, marker); } catch (e){ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. // Some versions of I.E. have different rules for clearTimeout vs setTimeout return cachedClearTimeout.call(this, marker); } } } var queue = []; var draining = false; var currentQueue; var queueIndex = -1; function cleanUpNextTick() { if (!draining || !currentQueue) { return; } draining = false; if (currentQueue.length) { queue = currentQueue.concat(queue); } else { queueIndex = -1; } if (queue.length) { drainQueue(); } } function drainQueue() { if (draining) { return; } var timeout = runTimeout(cleanUpNextTick); draining = true; var len = queue.length; while(len) { currentQueue = queue; queue = []; while (++queueIndex < len) { if (currentQueue) { currentQueue[queueIndex].run(); } } queueIndex = -1; len = queue.length; } currentQueue = null; draining = false; runClearTimeout(timeout); } process.nextTick = function (fun) { var args = new Array(arguments.length - 1); if (arguments.length > 1) { for (var i = 1; i < arguments.length; i++) { args[i - 1] = arguments[i]; } } queue.push(new Item(fun, args)); if (queue.length === 1 && !draining) { runTimeout(drainQueue); } }; // v8 likes predictible objects function Item(fun, array) { this.fun = fun; this.array = array; } Item.prototype.run = function () { this.fun.apply(null, this.array); }; process.title = 'browser'; process.browser = true; process.env = {}; process.argv = []; process.version = ''; // empty string to avoid regexp issues process.versions = {}; function noop() {} process.on = noop; process.addListener = noop; process.once = noop; process.off = noop; process.removeListener = noop; process.removeAllListeners = noop; process.emit = noop; process.prependListener = noop; process.prependOnceListener = noop; process.listeners = function (name) { return [] } process.binding = function (name) { throw new Error('process.binding is not supported'); }; process.cwd = function () { return '/' }; process.chdir = function (dir) { throw new Error('process.chdir is not supported'); }; process.umask = function() { return 0; }; /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcActionButton-CNq6xIdS.css": /*!*****************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcActionButton-CNq6xIdS.css ***! \*****************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcActionButton_CNq6xIdS_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcActionButton-CNq6xIdS.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionButton-CNq6xIdS.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcActionButton_CNq6xIdS_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcActionButton_CNq6xIdS_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcActionButton_CNq6xIdS_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcActionButton_CNq6xIdS_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcActionLink-CC6a7Hsf.css": /*!***************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcActionLink-CC6a7Hsf.css ***! \***************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcActionLink_CC6a7Hsf_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcActionLink-CC6a7Hsf.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionLink-CC6a7Hsf.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcActionLink_CC6a7Hsf_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcActionLink_CC6a7Hsf_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcActionLink_CC6a7Hsf_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcActionLink_CC6a7Hsf_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcActionRouter-CsIBHw6E.css": /*!*****************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcActionRouter-CsIBHw6E.css ***! \*****************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcActionRouter_CsIBHw6E_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcActionRouter-CsIBHw6E.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActionRouter-CsIBHw6E.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcActionRouter_CsIBHw6E_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcActionRouter_CsIBHw6E_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcActionRouter_CsIBHw6E_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcActionRouter_CsIBHw6E_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcActions-DM_LoRlx.css": /*!************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcActions-DM_LoRlx.css ***! \************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcActions_DM_LoRlx_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcActions-DM_LoRlx.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcActions-DM_LoRlx.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcActions_DM_LoRlx_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcActions_DM_LoRlx_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcActions_DM_LoRlx_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcActions_DM_LoRlx_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumb-Cjcyeimd.css": /*!***************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumb-Cjcyeimd.css ***! \***************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcBreadcrumb_Cjcyeimd_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcBreadcrumb-Cjcyeimd.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumb-Cjcyeimd.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcBreadcrumb_Cjcyeimd_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcBreadcrumb_Cjcyeimd_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcBreadcrumb_Cjcyeimd_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcBreadcrumb_Cjcyeimd_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumbs-CFRjXqRg.css": /*!****************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumbs-CFRjXqRg.css ***! \****************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcBreadcrumbs_CFRjXqRg_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcBreadcrumbs-CFRjXqRg.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcBreadcrumbs-CFRjXqRg.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcBreadcrumbs_CFRjXqRg_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcBreadcrumbs_CFRjXqRg_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcBreadcrumbs_CFRjXqRg_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcBreadcrumbs_CFRjXqRg_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcButton-BHDLon1_.css": /*!***********************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcButton-BHDLon1_.css ***! \***********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcButton_BHDLon1_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcButton-BHDLon1_.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcButton-BHDLon1_.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcButton_BHDLon1_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcButton_BHDLon1_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcButton_BHDLon1_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcButton_BHDLon1_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/@nextcloud/vue/dist/assets/NcPopover-TS4CW9MJ.css": /*!************************************************************************!*\ !*** ./node_modules/@nextcloud/vue/dist/assets/NcPopover-TS4CW9MJ.css ***! \************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _css_loader_dist_cjs_js_NcPopover_TS4CW9MJ_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../css-loader/dist/cjs.js!./NcPopover-TS4CW9MJ.css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/@nextcloud/vue/dist/assets/NcPopover-TS4CW9MJ.css"); var options = {}; options.styleTagTransform = (_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_css_loader_dist_cjs_js_NcPopover_TS4CW9MJ_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_css_loader_dist_cjs_js_NcPopover_TS4CW9MJ_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _css_loader_dist_cjs_js_NcPopover_TS4CW9MJ_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _css_loader_dist_cjs_js_NcPopover_TS4CW9MJ_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=style&index=0&id=36ad32b2&scoped=true&lang=css": /*!************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=style&index=0&id=36ad32b2&scoped=true&lang=css ***! \************************************************************************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileTable_vue_vue_type_style_index_0_id_36ad32b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileTable.vue?vue&type=style&index=0&id=36ad32b2&scoped=true&lang=css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/FileTable.vue?vue&type=style&index=0&id=36ad32b2&scoped=true&lang=css"); var options = {}; options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileTable_vue_vue_type_style_index_0_id_36ad32b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileTable_vue_vue_type_style_index_0_id_36ad32b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileTable_vue_vue_type_style_index_0_id_36ad32b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_FileTable_vue_vue_type_style_index_0_id_36ad32b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=style&index=0&id=4ef514b2&scoped=true&lang=css": /*!*******************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=style&index=0&id=4ef514b2&scoped=true&lang=css ***! \*******************************************************************************************************************************************************************************************************************************************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_WebContentViewer_vue_vue_type_style_index_0_id_4ef514b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebContentViewer.vue?vue&type=style&index=0&id=4ef514b2&scoped=true&lang=css */ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/WebContentViewer.vue?vue&type=style&index=0&id=4ef514b2&scoped=true&lang=css"); var options = {}; options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_WebContentViewer_vue_vue_type_style_index_0_id_4ef514b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_WebContentViewer_vue_vue_type_style_index_0_id_4ef514b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_WebContentViewer_vue_vue_type_style_index_0_id_4ef514b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_WebContentViewer_vue_vue_type_style_index_0_id_4ef514b2_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./src/output.css": /*!************************!*\ !*** ./src/output.css ***! \************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js"); /* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var _node_modules_css_loader_dist_cjs_js_output_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../node_modules/css-loader/dist/cjs.js!./output.css */ "./node_modules/css-loader/dist/cjs.js!./src/output.css"); var options = {}; options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default()); options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default()); options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head"); options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default()); options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default()); var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_output_css__WEBPACK_IMPORTED_MODULE_6__["default"], options); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_output_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_output_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_output_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined); /***/ }), /***/ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js": /*!****************************************************************************!*\ !*** ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js ***! \****************************************************************************/ /***/ ((module) => { "use strict"; var stylesInDOM = []; function getIndexByIdentifier(identifier) { var result = -1; for (var i = 0; i < stylesInDOM.length; i++) { if (stylesInDOM[i].identifier === identifier) { result = i; break; } } return result; } function modulesToDom(list, options) { var idCountMap = {}; var identifiers = []; for (var i = 0; i < list.length; i++) { var item = list[i]; var id = options.base ? item[0] + options.base : item[0]; var count = idCountMap[id] || 0; var identifier = "".concat(id, " ").concat(count); idCountMap[id] = count + 1; var indexByIdentifier = getIndexByIdentifier(identifier); var obj = { css: item[1], media: item[2], sourceMap: item[3], supports: item[4], layer: item[5] }; if (indexByIdentifier !== -1) { stylesInDOM[indexByIdentifier].references++; stylesInDOM[indexByIdentifier].updater(obj); } else { var updater = addElementStyle(obj, options); options.byIndex = i; stylesInDOM.splice(i, 0, { identifier: identifier, updater: updater, references: 1 }); } identifiers.push(identifier); } return identifiers; } function addElementStyle(obj, options) { var api = options.domAPI(options); api.update(obj); var updater = function updater(newObj) { if (newObj) { if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) { return; } api.update(obj = newObj); } else { api.remove(); } }; return updater; } module.exports = function (list, options) { options = options || {}; list = list || []; var lastIdentifiers = modulesToDom(list, options); return function update(newList) { newList = newList || []; for (var i = 0; i < lastIdentifiers.length; i++) { var identifier = lastIdentifiers[i]; var index = getIndexByIdentifier(identifier); stylesInDOM[index].references--; } var newLastIdentifiers = modulesToDom(newList, options); for (var _i = 0; _i < lastIdentifiers.length; _i++) { var _identifier = lastIdentifiers[_i]; var _index = getIndexByIdentifier(_identifier); if (stylesInDOM[_index].references === 0) { stylesInDOM[_index].updater(); stylesInDOM.splice(_index, 1); } } lastIdentifiers = newLastIdentifiers; }; }; /***/ }), /***/ "./node_modules/style-loader/dist/runtime/insertBySelector.js": /*!********************************************************************!*\ !*** ./node_modules/style-loader/dist/runtime/insertBySelector.js ***! \********************************************************************/ /***/ ((module) => { "use strict"; var memo = {}; /* istanbul ignore next */ function getTarget(target) { if (typeof memo[target] === "undefined") { var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) { try { // This will throw an exception if access to iframe is blocked // due to cross-origin restrictions styleTarget = styleTarget.contentDocument.head; } catch (e) { // istanbul ignore next styleTarget = null; } } memo[target] = styleTarget; } return memo[target]; } /* istanbul ignore next */ function insertBySelector(insert, style) { var target = getTarget(insert); if (!target) { throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid."); } target.appendChild(style); } module.exports = insertBySelector; /***/ }), /***/ "./node_modules/style-loader/dist/runtime/insertStyleElement.js": /*!**********************************************************************!*\ !*** ./node_modules/style-loader/dist/runtime/insertStyleElement.js ***! \**********************************************************************/ /***/ ((module) => { "use strict"; /* istanbul ignore next */ function insertStyleElement(options) { var element = document.createElement("style"); options.setAttributes(element, options.attributes); options.insert(element, options.options); return element; } module.exports = insertStyleElement; /***/ }), /***/ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js": /*!**********************************************************************************!*\ !*** ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js ***! \**********************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; /* istanbul ignore next */ function setAttributesWithoutAttributes(styleElement) { var nonce = true ? __webpack_require__.nc : 0; if (nonce) { styleElement.setAttribute("nonce", nonce); } } module.exports = setAttributesWithoutAttributes; /***/ }), /***/ "./node_modules/style-loader/dist/runtime/styleDomAPI.js": /*!***************************************************************!*\ !*** ./node_modules/style-loader/dist/runtime/styleDomAPI.js ***! \***************************************************************/ /***/ ((module) => { "use strict"; /* istanbul ignore next */ function apply(styleElement, options, obj) { var css = ""; if (obj.supports) { css += "@supports (".concat(obj.supports, ") {"); } if (obj.media) { css += "@media ".concat(obj.media, " {"); } var needLayer = typeof obj.layer !== "undefined"; if (needLayer) { css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {"); } css += obj.css; if (needLayer) { css += "}"; } if (obj.media) { css += "}"; } if (obj.supports) { css += "}"; } var sourceMap = obj.sourceMap; if (sourceMap && typeof btoa !== "undefined") { css += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */"); } // For old IE /* istanbul ignore if */ options.styleTagTransform(css, styleElement, options.options); } function removeStyleElement(styleElement) { // istanbul ignore if if (styleElement.parentNode === null) { return false; } styleElement.parentNode.removeChild(styleElement); } /* istanbul ignore next */ function domAPI(options) { if (typeof document === "undefined") { return { update: function update() {}, remove: function remove() {} }; } var styleElement = options.insertStyleElement(options); return { update: function update(obj) { apply(styleElement, options, obj); }, remove: function remove() { removeStyleElement(styleElement); } }; } module.exports = domAPI; /***/ }), /***/ "./node_modules/style-loader/dist/runtime/styleTagTransform.js": /*!*********************************************************************!*\ !*** ./node_modules/style-loader/dist/runtime/styleTagTransform.js ***! \*********************************************************************/ /***/ ((module) => { "use strict"; /* istanbul ignore next */ function styleTagTransform(css, styleElement) { if (styleElement.styleSheet) { styleElement.styleSheet.cssText = css; } else { while (styleElement.firstChild) { styleElement.removeChild(styleElement.firstChild); } styleElement.appendChild(document.createTextNode(css)); } } module.exports = styleTagTransform; /***/ }), /***/ "./node_modules/tabbable/dist/index.esm.js": /*!*************************************************!*\ !*** ./node_modules/tabbable/dist/index.esm.js ***! \*************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ focusable: () => (/* binding */ focusable), /* harmony export */ getTabIndex: () => (/* binding */ getTabIndex), /* harmony export */ isFocusable: () => (/* binding */ isFocusable), /* harmony export */ isTabbable: () => (/* binding */ isTabbable), /* harmony export */ tabbable: () => (/* binding */ tabbable) /* harmony export */ }); /*! * tabbable 6.2.0 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE */ // NOTE: separate `:not()` selectors has broader browser support than the newer // `:not([inert], [inert] *)` (Feb 2023) // CAREFUL: JSDom does not support `:not([inert] *)` as a selector; using it causes // the entire query to fail, resulting in no nodes found, which will break a lot // of things... so we have to rely on JS to identify nodes inside an inert container var candidateSelectors = ['input:not([inert])', 'select:not([inert])', 'textarea:not([inert])', 'a[href]:not([inert])', 'button:not([inert])', '[tabindex]:not(slot):not([inert])', 'audio[controls]:not([inert])', 'video[controls]:not([inert])', '[contenteditable]:not([contenteditable="false"]):not([inert])', 'details>summary:first-of-type:not([inert])', 'details:not([inert])']; var candidateSelector = /* #__PURE__ */candidateSelectors.join(','); var NoElement = typeof Element === 'undefined'; var matches = NoElement ? function () {} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector; var getRootNode = !NoElement && Element.prototype.getRootNode ? function (element) { var _element$getRootNode; return element === null || element === void 0 ? void 0 : (_element$getRootNode = element.getRootNode) === null || _element$getRootNode === void 0 ? void 0 : _element$getRootNode.call(element); } : function (element) { return element === null || element === void 0 ? void 0 : element.ownerDocument; }; /** * Determines if a node is inert or in an inert ancestor. * @param {Element} [node] * @param {boolean} [lookUp] If true and `node` is not inert, looks up at ancestors to * see if any of them are inert. If false, only `node` itself is considered. * @returns {boolean} True if inert itself or by way of being in an inert ancestor. * False if `node` is falsy. */ var isInert = function isInert(node, lookUp) { var _node$getAttribute; if (lookUp === void 0) { lookUp = true; } // CAREFUL: JSDom does not support inert at all, so we can't use the `HTMLElement.inert` // JS API property; we have to check the attribute, which can either be empty or 'true'; // if it's `null` (not specified) or 'false', it's an active element var inertAtt = node === null || node === void 0 ? void 0 : (_node$getAttribute = node.getAttribute) === null || _node$getAttribute === void 0 ? void 0 : _node$getAttribute.call(node, 'inert'); var inert = inertAtt === '' || inertAtt === 'true'; // NOTE: this could also be handled with `node.matches('[inert], :is([inert] *)')` // if it weren't for `matches()` not being a function on shadow roots; the following // code works for any kind of node // CAREFUL: JSDom does not appear to support certain selectors like `:not([inert] *)` // so it likely would not support `:is([inert] *)` either... var result = inert || lookUp && node && isInert(node.parentNode); // recursive return result; }; /** * Determines if a node's content is editable. * @param {Element} [node] * @returns True if it's content-editable; false if it's not or `node` is falsy. */ var isContentEditable = function isContentEditable(node) { var _node$getAttribute2; // CAREFUL: JSDom does not support the `HTMLElement.isContentEditable` API so we have // to use the attribute directly to check for this, which can either be empty or 'true'; // if it's `null` (not specified) or 'false', it's a non-editable element var attValue = node === null || node === void 0 ? void 0 : (_node$getAttribute2 = node.getAttribute) === null || _node$getAttribute2 === void 0 ? void 0 : _node$getAttribute2.call(node, 'contenteditable'); return attValue === '' || attValue === 'true'; }; /** * @param {Element} el container to check in * @param {boolean} includeContainer add container to check * @param {(node: Element) => boolean} filter filter candidates * @returns {Element[]} */ var getCandidates = function getCandidates(el, includeContainer, filter) { // even if `includeContainer=false`, we still have to check it for inertness because // if it's inert, all its children are inert if (isInert(el)) { return []; } var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector)); if (includeContainer && matches.call(el, candidateSelector)) { candidates.unshift(el); } candidates = candidates.filter(filter); return candidates; }; /** * @callback GetShadowRoot * @param {Element} element to check for shadow root * @returns {ShadowRoot|boolean} ShadowRoot if available or boolean indicating if a shadowRoot is attached but not available. */ /** * @callback ShadowRootFilter * @param {Element} shadowHostNode the element which contains shadow content * @returns {boolean} true if a shadow root could potentially contain valid candidates. */ /** * @typedef {Object} CandidateScope * @property {Element} scopeParent contains inner candidates * @property {Element[]} candidates list of candidates found in the scope parent */ /** * @typedef {Object} IterativeOptions * @property {GetShadowRoot|boolean} getShadowRoot true if shadow support is enabled; falsy if not; * if a function, implies shadow support is enabled and either returns the shadow root of an element * or a boolean stating if it has an undisclosed shadow root * @property {(node: Element) => boolean} filter filter candidates * @property {boolean} flatten if true then result will flatten any CandidateScope into the returned list * @property {ShadowRootFilter} shadowRootFilter filter shadow roots; */ /** * @param {Element[]} elements list of element containers to match candidates from * @param {boolean} includeContainer add container list to check * @param {IterativeOptions} options * @returns {Array.} */ var getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) { var candidates = []; var elementsToCheck = Array.from(elements); while (elementsToCheck.length) { var element = elementsToCheck.shift(); if (isInert(element, false)) { // no need to look up since we're drilling down // anything inside this container will also be inert continue; } if (element.tagName === 'SLOT') { // add shadow dom slot scope (slot itself cannot be focusable) var assigned = element.assignedElements(); var content = assigned.length ? assigned : element.children; var nestedCandidates = getCandidatesIteratively(content, true, options); if (options.flatten) { candidates.push.apply(candidates, nestedCandidates); } else { candidates.push({ scopeParent: element, candidates: nestedCandidates }); } } else { // check candidate element var validCandidate = matches.call(element, candidateSelector); if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) { candidates.push(element); } // iterate over shadow content if possible var shadowRoot = element.shadowRoot || // check for an undisclosed shadow typeof options.getShadowRoot === 'function' && options.getShadowRoot(element); // no inert look up because we're already drilling down and checking for inertness // on the way down, so all containers to this root node should have already been // vetted as non-inert var validShadowRoot = !isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element)); if (shadowRoot && validShadowRoot) { // add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed // shadow exists, so look at light dom children as fallback BUT create a scope for any // child candidates found because they're likely slotted elements (elements that are // children of the web component element (which has the shadow), in the light dom, but // slotted somewhere _inside_ the undisclosed shadow) -- the scope is created below, // _after_ we return from this recursive call var _nestedCandidates = getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options); if (options.flatten) { candidates.push.apply(candidates, _nestedCandidates); } else { candidates.push({ scopeParent: element, candidates: _nestedCandidates }); } } else { // there's not shadow so just dig into the element's (light dom) children // __without__ giving the element special scope treatment elementsToCheck.unshift.apply(elementsToCheck, element.children); } } } return candidates; }; /** * @private * Determines if the node has an explicitly specified `tabindex` attribute. * @param {HTMLElement} node * @returns {boolean} True if so; false if not. */ var hasTabIndex = function hasTabIndex(node) { return !isNaN(parseInt(node.getAttribute('tabindex'), 10)); }; /** * Determine the tab index of a given node. * @param {HTMLElement} node * @returns {number} Tab order (negative, 0, or positive number). * @throws {Error} If `node` is falsy. */ var getTabIndex = function getTabIndex(node) { if (!node) { throw new Error('No node provided'); } if (node.tabIndex < 0) { // in Chrome,
,