{"version":3,"sources":["node_modules/@messageformat/core/messageformat.js","node_modules/@angular/platform-browser/fesm2022/animations/async.mjs","node_modules/@ngxs/devtools-plugin/fesm2022/ngxs-devtools-plugin.mjs","node_modules/@ngxs/storage-plugin/fesm2022/ngxs-storage-plugin-internals.mjs","node_modules/@ngxs/storage-plugin/fesm2022/ngxs-storage-plugin.mjs","node_modules/angular-google-tag-manager/fesm2022/angular-google-tag-manager.mjs","node_modules/ngx-translate-messageformat-compiler/fesm2022/ngx-translate-messageformat-compiler.mjs","node_modules/primeng/fesm2022/primeng-toast.mjs","node_modules/superjson/dist/double-indexed-kv.js","node_modules/superjson/dist/registry.js","node_modules/superjson/dist/class-registry.js","node_modules/superjson/dist/util.js","node_modules/superjson/dist/custom-transformer-registry.js","node_modules/superjson/dist/is.js","node_modules/superjson/dist/pathstringifier.js","node_modules/superjson/dist/transformer.js","node_modules/superjson/dist/accessDeep.js","node_modules/superjson/dist/plainer.js","node_modules/superjson/node_modules/is-what/dist/index.js","node_modules/superjson/node_modules/copy-anything/dist/index.js","node_modules/superjson/dist/index.js","src/app/app.component.ts","src/app/app.component.html","node_modules/@apollo/client/link/error/index.js","node_modules/@apollo/client/link/subscriptions/index.js","node_modules/apollo-angular/fesm2022/ngApolloLinkHttp.mjs","node_modules/graphql-ws/lib/utils.mjs","node_modules/graphql-ws/lib/common.mjs","node_modules/graphql-ws/lib/client.mjs","src/app/store/misc/misc.actions.ts","src/app/graphql.module.ts","src/app/core/dialogs/dialogs.module.ts","src/app/core/guards/auth.guard.ts","src/app/store/statistics/statistics.actions.ts","src/app/store/statistics/statistics.service.ts","src/app/store/statistics/statistics.state.ts","src/app/store/statistics/statistics.state.module.ts","src/app/pages/internal/home/home.component.ts","src/app/pages/internal/home/home.component.html","src/app/services/realtime/realtime.service.ts","src/app/store/misc/misc.state.ts","src/app/store/organization/organization.state.module.ts","src/app/core/components/sidebar/sidebar.component.ts","src/app/core/components/sidebar/sidebar.component.html","src/app/core/components/breadcrumbs/breadcrumbs.component.ts","src/app/core/components/breadcrumbs/breadcrumbs.component.html","src/app/services/translation/translation.service.ts","src/app/core/components/topbar/topbar.component.ts","src/app/core/components/topbar/topbar.component.html","src/app/pages/internal/internal.component.ts","src/app/pages/internal/internal.component.html","src/app/pages/internal/internal.routes.ts","src/app/core/components/ui-kit/card/card-headers/image-header.component.ts","src/app/core/components/ui-kit/card/card-headers/image-header.component.html","src/app/store/oauth2/oauth2.actions.ts","src/app/store/oauth2/oauth2.service.ts","src/app/store/oauth2/oauth2.state.ts","src/app/pages/public/consent/consent.component.ts","src/app/pages/public/consent/consent.component.html","src/app/pages/public/join-organization/join-organization.component.ts","src/app/pages/public/join-organization/join-organization.component.html","src/app/pages/public/login/login.component.ts","src/app/pages/public/login/login.component.html","src/app/pages/public/maintenance/maintenance.component.ts","src/app/pages/public/maintenance/maintenance.component.html","src/app/pages/public/new-organization/new-organization.component.ts","src/app/pages/public/new-organization/new-organization.component.html","src/app/pages/public/public.component.ts","src/app/pages/public/public.component.html","src/app/pages/public/recovery/recovery.component.ts","src/app/pages/public/recovery/recovery.component.html","src/app/pages/public/register/register.component.ts","src/app/pages/public/register/register.component.html","src/app/pages/public/verification/verification.component.ts","src/app/pages/public/verification/verification.component.html","src/app/pages/public/public.routes.ts","src/app/pages/routes.ts","src/app/pages/pages.module.ts","node_modules/@ngx-translate/http-loader/dist/fesm2022/ngx-translate-http-loader.mjs","src/app/services/translation/http-loader.ts","src/app/services/translation/parser.ts","src/app/store/features/features.state.module.ts","src/app/store/notifications/notifications.state.ts","src/app/store/notifications/notifications.state.module.ts","src/app/store/tracking/tracking.service.ts","src/app/store/tracking/tracking.state.ts","src/app/store/tracking/tracking.state.module.ts","src/app/store/user/user.state.module.ts","node_modules/@angular/common/locales/de.mjs","node_modules/@angular/common/locales/en.mjs","node_modules/@primeng/themes/aura/accordion/index.mjs","node_modules/@primeng/themes/aura/autocomplete/index.mjs","node_modules/@primeng/themes/aura/avatar/index.mjs","node_modules/@primeng/themes/aura/badge/index.mjs","node_modules/@primeng/themes/aura/base/index.mjs","node_modules/@primeng/themes/aura/blockui/index.mjs","node_modules/@primeng/themes/aura/breadcrumb/index.mjs","node_modules/@primeng/themes/aura/button/index.mjs","node_modules/@primeng/themes/aura/card/index.mjs","node_modules/@primeng/themes/aura/carousel/index.mjs","node_modules/@primeng/themes/aura/cascadeselect/index.mjs","node_modules/@primeng/themes/aura/checkbox/index.mjs","node_modules/@primeng/themes/aura/chip/index.mjs","node_modules/@primeng/themes/aura/colorpicker/index.mjs","node_modules/@primeng/themes/aura/confirmdialog/index.mjs","node_modules/@primeng/themes/aura/confirmpopup/index.mjs","node_modules/@primeng/themes/aura/contextmenu/index.mjs","node_modules/@primeng/themes/aura/datatable/index.mjs","node_modules/@primeng/themes/aura/dataview/index.mjs","node_modules/@primeng/themes/aura/datepicker/index.mjs","node_modules/@primeng/themes/aura/dialog/index.mjs","node_modules/@primeng/themes/aura/divider/index.mjs","node_modules/@primeng/themes/aura/dock/index.mjs","node_modules/@primeng/themes/aura/drawer/index.mjs","node_modules/@primeng/themes/aura/editor/index.mjs","node_modules/@primeng/themes/aura/fieldset/index.mjs","node_modules/@primeng/themes/aura/fileupload/index.mjs","node_modules/@primeng/themes/aura/floatlabel/index.mjs","node_modules/@primeng/themes/aura/galleria/index.mjs","node_modules/@primeng/themes/aura/iconfield/index.mjs","node_modules/@primeng/themes/aura/iftalabel/index.mjs","node_modules/@primeng/themes/aura/image/index.mjs","node_modules/@primeng/themes/aura/imagecompare/index.mjs","node_modules/@primeng/themes/aura/inlinemessage/index.mjs","node_modules/@primeng/themes/aura/inplace/index.mjs","node_modules/@primeng/themes/aura/inputchips/index.mjs","node_modules/@primeng/themes/aura/inputgroup/index.mjs","node_modules/@primeng/themes/aura/inputnumber/index.mjs","node_modules/@primeng/themes/aura/inputotp/index.mjs","node_modules/@primeng/themes/aura/inputtext/index.mjs","node_modules/@primeng/themes/aura/knob/index.mjs","node_modules/@primeng/themes/aura/listbox/index.mjs","node_modules/@primeng/themes/aura/megamenu/index.mjs","node_modules/@primeng/themes/aura/menu/index.mjs","node_modules/@primeng/themes/aura/menubar/index.mjs","node_modules/@primeng/themes/aura/message/index.mjs","node_modules/@primeng/themes/aura/metergroup/index.mjs","node_modules/@primeng/themes/aura/multiselect/index.mjs","node_modules/@primeng/themes/aura/orderlist/index.mjs","node_modules/@primeng/themes/aura/organizationchart/index.mjs","node_modules/@primeng/themes/aura/overlaybadge/index.mjs","node_modules/@primeng/themes/aura/paginator/index.mjs","node_modules/@primeng/themes/aura/panel/index.mjs","node_modules/@primeng/themes/aura/panelmenu/index.mjs","node_modules/@primeng/themes/aura/password/index.mjs","node_modules/@primeng/themes/aura/picklist/index.mjs","node_modules/@primeng/themes/aura/popover/index.mjs","node_modules/@primeng/themes/aura/progressbar/index.mjs","node_modules/@primeng/themes/aura/progressspinner/index.mjs","node_modules/@primeng/themes/aura/radiobutton/index.mjs","node_modules/@primeng/themes/aura/rating/index.mjs","node_modules/@primeng/themes/aura/ripple/index.mjs","node_modules/@primeng/themes/aura/scrollpanel/index.mjs","node_modules/@primeng/themes/aura/select/index.mjs","node_modules/@primeng/themes/aura/selectbutton/index.mjs","node_modules/@primeng/themes/aura/skeleton/index.mjs","node_modules/@primeng/themes/aura/slider/index.mjs","node_modules/@primeng/themes/aura/speeddial/index.mjs","node_modules/@primeng/themes/aura/splitbutton/index.mjs","node_modules/@primeng/themes/aura/splitter/index.mjs","node_modules/@primeng/themes/aura/stepper/index.mjs","node_modules/@primeng/themes/aura/steps/index.mjs","node_modules/@primeng/themes/aura/tabmenu/index.mjs","node_modules/@primeng/themes/aura/tabs/index.mjs","node_modules/@primeng/themes/aura/tabview/index.mjs","node_modules/@primeng/themes/aura/tag/index.mjs","node_modules/@primeng/themes/aura/terminal/index.mjs","node_modules/@primeng/themes/aura/textarea/index.mjs","node_modules/@primeng/themes/aura/tieredmenu/index.mjs","node_modules/@primeng/themes/aura/timeline/index.mjs","node_modules/@primeng/themes/aura/toast/index.mjs","node_modules/@primeng/themes/aura/togglebutton/index.mjs","node_modules/@primeng/themes/aura/toggleswitch/index.mjs","node_modules/@primeng/themes/aura/toolbar/index.mjs","node_modules/@primeng/themes/aura/tooltip/index.mjs","node_modules/@primeng/themes/aura/tree/index.mjs","node_modules/@primeng/themes/aura/treeselect/index.mjs","node_modules/@primeng/themes/aura/treetable/index.mjs","node_modules/@primeng/themes/aura/virtualscroller/index.mjs","node_modules/@primeng/themes/aura/index.mjs","src/primeng-preset.ts","src/main.ts"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.MessageFormat = factory());\n})(this, function () {\n 'use strict';\n\n /******************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\n /* global Reflect, Promise, SuppressedError, Symbol */\n var __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };\n function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator,\n m = s && o[s],\n i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return {\n value: o && o[i++],\n done: !o\n };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n }\n function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o),\n r,\n ar = [],\n e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n } catch (error) {\n e = {\n error: error\n };\n } finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n } finally {\n if (e) throw e.error;\n }\n }\n return ar;\n }\n function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n }\n typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n };\n\n /**\n * Parent class for errors.\n *\n * @remarks\n * Errors with `type: \"warning\"` do not necessarily indicate that the parser\n * encountered an error. In addition to a human-friendly `message`, may also\n * includes the `token` at which the error was encountered.\n *\n * @public\n */\n class DateFormatError extends Error {\n /** @internal */\n constructor(msg, token, type) {\n super(msg);\n this.token = token;\n this.type = type || 'error';\n }\n }\n const alpha = width => width < 4 ? 'short' : width === 4 ? 'long' : 'narrow';\n const numeric = width => width % 2 === 0 ? '2-digit' : 'numeric';\n function yearOptions(token, onError) {\n switch (token.char) {\n case 'y':\n return {\n year: numeric(token.width)\n };\n case 'r':\n return {\n calendar: 'gregory',\n year: 'numeric'\n };\n case 'u':\n case 'U':\n case 'Y':\n default:\n onError(`${token.desc} is not supported; falling back to year:numeric`, DateFormatError.WARNING);\n return {\n year: 'numeric'\n };\n }\n }\n function monthStyle(token, onError) {\n switch (token.width) {\n case 1:\n return 'numeric';\n case 2:\n return '2-digit';\n case 3:\n return 'short';\n case 4:\n return 'long';\n case 5:\n return 'narrow';\n default:\n onError(`${token.desc} is not supported with width ${token.width}`);\n return undefined;\n }\n }\n function dayStyle(token, onError) {\n const {\n char,\n desc,\n width\n } = token;\n if (char === 'd') return numeric(width);else {\n onError(`${desc} is not supported`);\n return undefined;\n }\n }\n function weekdayStyle(token, onError) {\n const {\n char,\n desc,\n width\n } = token;\n if ((char === 'c' || char === 'e') && width < 3) {\n // ignoring stand-alone-ness\n const msg = `Numeric value is not supported for ${desc}; falling back to weekday:short`;\n onError(msg, DateFormatError.WARNING);\n }\n // merging narrow styles\n return alpha(width);\n }\n function hourOptions(token) {\n const hour = numeric(token.width);\n let hourCycle;\n switch (token.char) {\n case 'h':\n hourCycle = 'h12';\n break;\n case 'H':\n hourCycle = 'h23';\n break;\n case 'k':\n hourCycle = 'h24';\n break;\n case 'K':\n hourCycle = 'h11';\n break;\n }\n return hourCycle ? {\n hour,\n hourCycle\n } : {\n hour\n };\n }\n function timeZoneNameStyle(token, onError) {\n // so much fallback behaviour here\n const {\n char,\n desc,\n width\n } = token;\n switch (char) {\n case 'v':\n case 'z':\n return width === 4 ? 'long' : 'short';\n case 'V':\n if (width === 4) return 'long';\n onError(`${desc} is not supported with width ${width}`);\n return undefined;\n case 'X':\n onError(`${desc} is not supported`);\n return undefined;\n }\n return 'short';\n }\n function compileOptions(token, onError) {\n switch (token.field) {\n case 'era':\n return {\n era: alpha(token.width)\n };\n case 'year':\n return yearOptions(token, onError);\n case 'month':\n return {\n month: monthStyle(token, onError)\n };\n case 'day':\n return {\n day: dayStyle(token, onError)\n };\n case 'weekday':\n return {\n weekday: weekdayStyle(token, onError)\n };\n case 'period':\n return undefined;\n case 'hour':\n return hourOptions(token);\n case 'min':\n return {\n minute: numeric(token.width)\n };\n case 'sec':\n return {\n second: numeric(token.width)\n };\n case 'tz':\n return {\n timeZoneName: timeZoneNameStyle(token, onError)\n };\n case 'quarter':\n case 'week':\n case 'sec-frac':\n case 'ms':\n onError(`${token.desc} is not supported`);\n }\n return undefined;\n }\n function getDateFormatOptions(tokens) {\n let onError = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : error => {\n throw error;\n };\n const options = {};\n const fields = [];\n for (const token of tokens) {\n const {\n error,\n field,\n str\n } = token;\n if (error) {\n const dte = new DateFormatError(error.message, token);\n dte.stack = error.stack;\n onError(dte);\n }\n if (str) {\n const msg = `Ignoring string part: ${str}`;\n onError(new DateFormatError(msg, token, DateFormatError.WARNING));\n }\n if (field) {\n if (fields.indexOf(field) === -1) fields.push(field);else onError(new DateFormatError(`Duplicate ${field} token`, token));\n }\n const opt = compileOptions(token, (msg, isWarning) => onError(new DateFormatError(msg, token, isWarning)));\n if (opt) Object.assign(options, opt);\n }\n return options;\n }\n const fields = {\n G: {\n field: 'era',\n desc: 'Era'\n },\n y: {\n field: 'year',\n desc: 'Year'\n },\n Y: {\n field: 'year',\n desc: 'Year of \"Week of Year\"'\n },\n u: {\n field: 'year',\n desc: 'Extended year'\n },\n U: {\n field: 'year',\n desc: 'Cyclic year name'\n },\n r: {\n field: 'year',\n desc: 'Related Gregorian year'\n },\n Q: {\n field: 'quarter',\n desc: 'Quarter'\n },\n q: {\n field: 'quarter',\n desc: 'Stand-alone quarter'\n },\n M: {\n field: 'month',\n desc: 'Month in year'\n },\n L: {\n field: 'month',\n desc: 'Stand-alone month in year'\n },\n w: {\n field: 'week',\n desc: 'Week of year'\n },\n W: {\n field: 'week',\n desc: 'Week of month'\n },\n d: {\n field: 'day',\n desc: 'Day in month'\n },\n D: {\n field: 'day',\n desc: 'Day of year'\n },\n F: {\n field: 'day',\n desc: 'Day of week in month'\n },\n g: {\n field: 'day',\n desc: 'Modified julian day'\n },\n E: {\n field: 'weekday',\n desc: 'Day of week'\n },\n e: {\n field: 'weekday',\n desc: 'Local day of week'\n },\n c: {\n field: 'weekday',\n desc: 'Stand-alone local day of week'\n },\n a: {\n field: 'period',\n desc: 'AM/PM marker'\n },\n b: {\n field: 'period',\n desc: 'AM/PM/noon/midnight marker'\n },\n B: {\n field: 'period',\n desc: 'Flexible day period'\n },\n h: {\n field: 'hour',\n desc: 'Hour in AM/PM (1~12)'\n },\n H: {\n field: 'hour',\n desc: 'Hour in day (0~23)'\n },\n k: {\n field: 'hour',\n desc: 'Hour in day (1~24)'\n },\n K: {\n field: 'hour',\n desc: 'Hour in AM/PM (0~11)'\n },\n j: {\n field: 'hour',\n desc: 'Hour in preferred cycle'\n },\n J: {\n field: 'hour',\n desc: 'Hour in preferred cycle without marker'\n },\n C: {\n field: 'hour',\n desc: 'Hour in preferred cycle with flexible marker'\n },\n m: {\n field: 'min',\n desc: 'Minute in hour'\n },\n s: {\n field: 'sec',\n desc: 'Second in minute'\n },\n S: {\n field: 'sec-frac',\n desc: 'Fractional second'\n },\n A: {\n field: 'ms',\n desc: 'Milliseconds in day'\n },\n z: {\n field: 'tz',\n desc: 'Time Zone: specific non-location'\n },\n Z: {\n field: 'tz',\n desc: 'Time Zone'\n },\n O: {\n field: 'tz',\n desc: 'Time Zone: localized'\n },\n v: {\n field: 'tz',\n desc: 'Time Zone: generic non-location'\n },\n V: {\n field: 'tz',\n desc: 'Time Zone: ID'\n },\n X: {\n field: 'tz',\n desc: 'Time Zone: ISO8601 with Z'\n },\n x: {\n field: 'tz',\n desc: 'Time Zone: ISO8601'\n }\n };\n const isLetter = char => char >= 'A' && char <= 'Z' || char >= 'a' && char <= 'z';\n function readFieldToken(src, pos) {\n const char = src[pos];\n let width = 1;\n while (src[++pos] === char) ++width;\n const field = fields[char];\n if (!field) {\n const msg = `The letter ${char} is not a valid field identifier`;\n return {\n char,\n error: new Error(msg),\n width\n };\n }\n return {\n char,\n field: field.field,\n desc: field.desc,\n width\n };\n }\n function readQuotedToken(src, pos) {\n let str = src[++pos];\n let width = 2;\n if (str === \"'\") return {\n char: \"'\",\n str,\n width\n };\n while (true) {\n const next = src[++pos];\n ++width;\n if (next === undefined) {\n const msg = `Unterminated quoted literal in pattern: ${str || src}`;\n return {\n char: \"'\",\n error: new Error(msg),\n str,\n width\n };\n } else if (next === \"'\") {\n if (src[++pos] !== \"'\") return {\n char: \"'\",\n str,\n width\n };else ++width;\n }\n str += next;\n }\n }\n function readToken(src, pos) {\n const char = src[pos];\n if (!char) return null;\n if (isLetter(char)) return readFieldToken(src, pos);\n if (char === \"'\") return readQuotedToken(src, pos);\n let str = char;\n let width = 1;\n while (true) {\n const next = src[++pos];\n if (!next || isLetter(next) || next === \"'\") return {\n char,\n str,\n width\n };\n str += next;\n width += 1;\n }\n }\n /**\n * Parse an {@link http://userguide.icu-project.org/formatparse/datetime | ICU\n * DateFormat skeleton} string into a {@link DateToken} array.\n *\n * @remarks\n * Errors will not be thrown, but if encountered are included as the relevant\n * token's `error` value.\n *\n * @public\n * @param src - The skeleton string\n *\n * @example\n * ```js\n * import { parseDateTokens } from '@messageformat/date-skeleton'\n *\n * parseDateTokens('GrMMMdd', console.error)\n * // [\n * // { char: 'G', field: 'era', desc: 'Era', width: 1 },\n * // { char: 'r', field: 'year', desc: 'Related Gregorian year', width: 1 },\n * // { char: 'M', field: 'month', desc: 'Month in year', width: 3 },\n * // { char: 'd', field: 'day', desc: 'Day in month', width: 2 }\n * // ]\n * ```\n */\n function parseDateTokens(src) {\n const tokens = [];\n let pos = 0;\n while (true) {\n const token = readToken(src, pos);\n if (!token) return tokens;\n tokens.push(token);\n pos += token.width;\n }\n }\n\n /**\n * Returns a date formatter function for the given locales and date skeleton\n *\n * @remarks\n * Uses `Intl.DateTimeFormat` internally.\n *\n * @public\n * @param locales - One or more valid BCP 47 language tags, e.g. `fr` or `en-CA`\n * @param tokens - An ICU DateFormat skeleton string, or an array or parsed\n * `DateToken` tokens\n * @param onError - If defined, will be called separately for each encountered\n * parsing error and unsupported feature.\n * @example\n * ```js\n * import { getDateFormatter } from '@messageformat/date-skeleton'\n *\n * // 2006 Jan 2, 15:04:05.789 in local time\n * const date = new Date(2006, 0, 2, 15, 4, 5, 789)\n *\n * let fmt = getDateFormatter('en-CA', 'GrMMMdd', console.error)\n * fmt(date) // 'Jan. 02, 2006 AD'\n *\n * fmt = getDateFormatter('en-CA', 'hamszzzz', console.error)\n * fmt(date) // '3:04:05 p.m. Newfoundland Daylight Time'\n * ```\n */\n function getDateFormatter(locales, tokens, onError) {\n if (typeof tokens === 'string') tokens = parseDateTokens(tokens);\n const opt = getDateFormatOptions(tokens, onError);\n const dtf = new Intl.DateTimeFormat(locales, opt);\n return date => dtf.format(date);\n }\n /**\n * Returns a string of JavaScript source that evaluates to a date formatter\n * function with the same `(date: Date | number) => string` signature as the\n * function returned by {@link getDateFormatter}.\n *\n * @remarks\n * The returned function will memoize an `Intl.DateTimeFormat` instance.\n *\n * @public\n * @param locales - One or more valid BCP 47 language tags, e.g. `fr` or `en-CA`\n * @param tokens - An ICU DateFormat skeleton string, or an array or parsed\n * `DateToken` tokens\n * @param onError - If defined, will be called separately for each encountered\n * parsing error and unsupported feature.\n * @example\n * ```js\n * import { getDateFormatterSource } from '@messageformat/date-skeleton'\n *\n * getDateFormatterSource('en-CA', 'GrMMMdd', console.error)\n * // '(function() {\\n' +\n * // ' var opt = {\"era\":\"short\",\"calendar\":\"gregory\",\"year\":\"numeric\",' +\n * // '\"month\":\"short\",\"day\":\"2-digit\"};\\n' +\n * // ' var dtf = new Intl.DateTimeFormat(\"en-CA\", opt);\\n' +\n * // ' return function(value) { return dtf.format(value); }\\n' +\n * // '})()'\n *\n * const src = getDateFormatterSource('en-CA', 'hamszzzz', console.error)\n * // '(function() {\\n' +\n * // ' var opt = {\"hour\":\"numeric\",\"hourCycle\":\"h12\",\"minute\":\"numeric\",' +\n * // '\"second\":\"numeric\",\"timeZoneName\":\"long\"};\\n' +\n * // ' var dtf = new Intl.DateTimeFormat(\"en-CA\", opt);\\n' +\n * // ' return function(value) { return dtf.format(value); }\\n' +\n * // '})()'\n *\n * const fmt = new Function(`return ${src}`)()\n * const date = new Date(2006, 0, 2, 15, 4, 5, 789)\n * fmt(date) // '3:04:05 p.m. Newfoundland Daylight Time'\n * ```\n */\n function getDateFormatterSource(locales, tokens, onError) {\n if (typeof tokens === 'string') tokens = parseDateTokens(tokens);\n const opt = getDateFormatOptions(tokens, onError);\n const lines = [`(function() {`, `var opt = ${JSON.stringify(opt)};`, `var dtf = new Intl.DateTimeFormat(${JSON.stringify(locales)}, opt);`, `return function(value) { return dtf.format(value); }`];\n return lines.join('\\n ') + '\\n})()';\n }\n\n /**\n * Base class for errors. In addition to a `code` and a human-friendly\n * `message`, may also includes the token `stem` as well as other fields.\n *\n * @public\n */\n class NumberFormatError extends Error {\n /** @internal */\n constructor(code, msg) {\n super(msg);\n this.code = code;\n }\n }\n /** @internal */\n class BadOptionError extends NumberFormatError {\n constructor(stem, opt) {\n super('BAD_OPTION', `Unknown ${stem} option: ${opt}`);\n this.stem = stem;\n this.option = opt;\n }\n }\n /** @internal */\n class BadStemError extends NumberFormatError {\n constructor(stem) {\n super('BAD_STEM', `Unknown stem: ${stem}`);\n this.stem = stem;\n }\n }\n /** @internal */\n class MaskedValueError extends NumberFormatError {\n constructor(type, prev) {\n super('MASKED_VALUE', `Value for ${type} is set multiple times`);\n this.type = type;\n this.prev = prev;\n }\n }\n /** @internal */\n class MissingOptionError extends NumberFormatError {\n constructor(stem) {\n super('MISSING_OPTION', `Required option missing for ${stem}`);\n this.stem = stem;\n }\n }\n /** @internal */\n class PatternError extends NumberFormatError {\n constructor(char, msg) {\n super('BAD_PATTERN', msg);\n this.char = char;\n }\n }\n /** @internal */\n class TooManyOptionsError extends NumberFormatError {\n constructor(stem, options, maxOpt) {\n const maxOptStr = maxOpt > 1 ? `${maxOpt} options` : 'one option';\n super('TOO_MANY_OPTIONS', `Token ${stem} only supports ${maxOptStr} (got ${options.length})`);\n this.stem = stem;\n this.options = options;\n }\n }\n /** @internal */\n class UnsupportedError extends NumberFormatError {\n constructor(stem, source) {\n super('UNSUPPORTED', `The stem ${stem} is not supported`);\n this.stem = stem;\n if (source) {\n this.message += ` with value ${source}`;\n this.source = source;\n }\n }\n }\n\n /**\n * Add\n * {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation | numbering-system tags}\n * to locale identifiers\n *\n * @internal\n */\n function getNumberFormatLocales(locales, _ref) {\n let {\n numberingSystem\n } = _ref;\n if (!Array.isArray(locales)) locales = [locales];\n return numberingSystem ? locales.map(lc => {\n const ext = lc.indexOf('-u-') === -1 ? 'u-nu' : 'nu';\n return `${lc}-${ext}-${numberingSystem}`;\n }).concat(locales) : locales;\n }\n\n // from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round\n function round(x, precision) {\n const y = +x + precision / 2;\n return y - y % +precision;\n }\n function getNumberFormatMultiplier(_ref) {\n let {\n scale,\n unit\n } = _ref;\n let mult = typeof scale === 'number' && scale >= 0 ? scale : 1;\n if (unit && unit.style === 'percent') mult *= 0.01;\n return mult;\n }\n /**\n * Determine a modifier for the input value to account for any `scale`,\n * `percent`, and `precision-increment` tokens in the skeleton.\n *\n * @internal\n * @remarks\n * With ICU NumberFormatter, the `percent` skeleton would style `25` as \"25%\".\n * To achieve the same with `Intl.NumberFormat`, the input value must be `0.25`.\n */\n function getNumberFormatModifier(skeleton) {\n const mult = getNumberFormatMultiplier(skeleton);\n const {\n precision\n } = skeleton;\n if (precision && precision.style === 'precision-increment') {\n return n => round(n, precision.increment) * mult;\n } else {\n return n => n * mult;\n }\n }\n /**\n * Returns a string of JavaScript source that evaluates to a modifier for the\n * input value to account for any `scale`, `percent`, and `precision-increment`\n * tokens in the skeleton.\n *\n * @internal\n * @remarks\n * With ICU NumberFormatter, the `percent` skeleton would style `25` as \"25%\".\n * To achieve the same with `Intl.NumberFormat`, the input value must be `0.25`.\n */\n function getNumberFormatModifierSource(skeleton) {\n const mult = getNumberFormatMultiplier(skeleton);\n const {\n precision\n } = skeleton;\n if (precision && precision.style === 'precision-increment') {\n // see round() above for source\n const setX = `+n + ${precision.increment / 2}`;\n let res = `x - (x % +${precision.increment})`;\n if (mult !== 1) res = `(${res}) * ${mult}`;\n return `function(n) { var x = ${setX}; return ${res}; }`;\n }\n return mult !== 1 ? `function(n) { return n * ${mult}; }` : null;\n }\n\n /**\n * Given an input ICU NumberFormatter skeleton, does its best to construct a\n * corresponding `Intl.NumberFormat` options structure.\n *\n * @remarks\n * Some features depend on `Intl.NumberFormat` features defined in ES2020.\n *\n * @internal\n * @param onUnsupported - If defined, called when encountering unsupported (but\n * valid) tokens, such as `decimal-always` or `permille`. The error `source`\n * may specify the source of an unsupported option.\n *\n * @example\n * ```js\n * import {\n * getNumberFormatOptions,\n * parseNumberSkeleton\n * } from '@messageformat/number-skeleton'\n *\n * const src = 'currency/CAD unit-width-narrow'\n * const skeleton = parseNumberSkeleton(src, console.error)\n * // {\n * // unit: { style: 'currency', currency: 'CAD' },\n * // unitWidth: 'unit-width-narrow'\n * // }\n *\n * getNumberFormatOptions(skeleton, console.error)\n * // {\n * // style: 'currency',\n * // currency: 'CAD',\n * // currencyDisplay: 'narrowSymbol',\n * // unitDisplay: 'narrow'\n * // }\n *\n * const sk2 = parseNumberSkeleton('group-min2')\n * // { group: 'group-min2' }\n *\n * getNumberFormatOptions(sk2, console.error)\n * // Error: The stem group-min2 is not supported\n * // at UnsupportedError.NumberFormatError ... {\n * // code: 'UNSUPPORTED',\n * // stem: 'group-min2'\n * // }\n * // {}\n * ```\n */\n function getNumberFormatOptions(skeleton, onUnsupported) {\n const {\n decimal,\n group,\n integerWidth,\n notation,\n precision,\n roundingMode,\n sign,\n unit,\n unitPer,\n unitWidth\n } = skeleton;\n const fail = (stem, source) => {\n if (onUnsupported) onUnsupported(new UnsupportedError(stem, source));\n };\n const opt = {};\n if (unit) {\n switch (unit.style) {\n case 'base-unit':\n opt.style = 'decimal';\n break;\n case 'currency':\n opt.style = 'currency';\n opt.currency = unit.currency;\n break;\n case 'measure-unit':\n opt.style = 'unit';\n opt.unit = unit.unit.replace(/.*-/, '');\n if (unitPer) opt.unit += '-per-' + unitPer.replace(/.*-/, '');\n break;\n case 'percent':\n opt.style = 'percent';\n break;\n case 'permille':\n fail('permille');\n break;\n }\n }\n switch (unitWidth) {\n case 'unit-width-full-name':\n opt.currencyDisplay = 'name';\n opt.unitDisplay = 'long';\n break;\n case 'unit-width-hidden':\n fail(unitWidth);\n break;\n case 'unit-width-iso-code':\n opt.currencyDisplay = 'code';\n break;\n case 'unit-width-narrow':\n opt.currencyDisplay = 'narrowSymbol';\n opt.unitDisplay = 'narrow';\n break;\n case 'unit-width-short':\n opt.currencyDisplay = 'symbol';\n opt.unitDisplay = 'short';\n break;\n }\n switch (group) {\n case 'group-off':\n opt.useGrouping = false;\n break;\n case 'group-auto':\n opt.useGrouping = true;\n break;\n case 'group-min2':\n case 'group-on-aligned':\n case 'group-thousands':\n fail(group);\n opt.useGrouping = true;\n break;\n }\n if (precision) {\n switch (precision.style) {\n case 'precision-fraction':\n {\n const {\n minFraction: minF,\n maxFraction: maxF,\n minSignificant: minS,\n maxSignificant: maxS,\n source\n } = precision;\n if (typeof minF === 'number') {\n opt.minimumFractionDigits = minF;\n if (typeof minS === 'number') fail('precision-fraction', source);\n }\n if (typeof maxF === 'number') opt.maximumFractionDigits = maxF;\n if (typeof minS === 'number') opt.minimumSignificantDigits = minS;\n if (typeof maxS === 'number') opt.maximumSignificantDigits = maxS;\n break;\n }\n case 'precision-integer':\n opt.maximumFractionDigits = 0;\n break;\n case 'precision-unlimited':\n opt.maximumFractionDigits = 20;\n break;\n case 'precision-increment':\n break;\n case 'precision-currency-standard':\n opt.trailingZeroDisplay = precision.trailingZero;\n break;\n case 'precision-currency-cash':\n fail(precision.style);\n break;\n }\n }\n if (notation) {\n switch (notation.style) {\n case 'compact-short':\n opt.notation = 'compact';\n opt.compactDisplay = 'short';\n break;\n case 'compact-long':\n opt.notation = 'compact';\n opt.compactDisplay = 'long';\n break;\n case 'notation-simple':\n opt.notation = 'standard';\n break;\n case 'scientific':\n case 'engineering':\n {\n const {\n expDigits,\n expSign,\n source,\n style\n } = notation;\n opt.notation = style;\n if (expDigits && expDigits > 1 || expSign && expSign !== 'sign-auto') fail(style, source);\n break;\n }\n }\n }\n if (integerWidth) {\n const {\n min,\n max,\n source\n } = integerWidth;\n if (min > 0) opt.minimumIntegerDigits = min;\n if (Number(max) > 0) {\n const hasExp = opt.notation === 'engineering' || opt.notation === 'scientific';\n if (max === 3 && hasExp) opt.notation = 'engineering';else fail('integer-width', source);\n }\n }\n switch (sign) {\n case 'sign-auto':\n opt.signDisplay = 'auto';\n break;\n case 'sign-always':\n opt.signDisplay = 'always';\n break;\n case 'sign-except-zero':\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/46712\n opt.signDisplay = 'exceptZero';\n break;\n case 'sign-never':\n opt.signDisplay = 'never';\n break;\n case 'sign-accounting':\n opt.currencySign = 'accounting';\n break;\n case 'sign-accounting-always':\n opt.currencySign = 'accounting';\n opt.signDisplay = 'always';\n break;\n case 'sign-accounting-except-zero':\n opt.currencySign = 'accounting';\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/46712\n opt.signDisplay = 'exceptZero';\n break;\n }\n if (decimal === 'decimal-always') fail(decimal);\n if (roundingMode) fail(roundingMode);\n return opt;\n }\n function parseAffixToken(src, pos, onError) {\n const char = src[pos];\n switch (char) {\n case '%':\n return {\n char: '%',\n style: 'percent',\n width: 1\n };\n case '‰':\n return {\n char: '%',\n style: 'permille',\n width: 1\n };\n case '¤':\n {\n let width = 1;\n while (src[++pos] === '¤') ++width;\n switch (width) {\n case 1:\n return {\n char,\n currency: 'default',\n width\n };\n case 2:\n return {\n char,\n currency: 'iso-code',\n width\n };\n case 3:\n return {\n char,\n currency: 'full-name',\n width\n };\n case 5:\n return {\n char,\n currency: 'narrow',\n width\n };\n default:\n {\n const msg = `Invalid number (${width}) of ¤ chars in pattern`;\n onError(new PatternError('¤', msg));\n return null;\n }\n }\n }\n case '*':\n {\n const pad = src[pos + 1];\n if (pad) return {\n char,\n pad,\n width: 2\n };\n break;\n }\n case '+':\n case '-':\n return {\n char,\n width: 1\n };\n case \"'\":\n {\n let str = src[++pos];\n let width = 2;\n if (str === \"'\") return {\n char,\n str,\n width\n };\n while (true) {\n const next = src[++pos];\n ++width;\n if (next === undefined) {\n const msg = `Unterminated quoted literal in pattern: ${str}`;\n onError(new PatternError(\"'\", msg));\n return {\n char,\n str,\n width\n };\n } else if (next === \"'\") {\n if (src[++pos] !== \"'\") return {\n char,\n str,\n width\n };else ++width;\n }\n str += next;\n }\n }\n }\n return null;\n }\n const isDigit = char => char >= '0' && char <= '9';\n function parseNumberToken(src, pos) {\n const char = src[pos];\n if (isDigit(char)) {\n let digits = char;\n while (true) {\n const next = src[++pos];\n if (isDigit(next)) digits += next;else return {\n char: '0',\n digits,\n width: digits.length\n };\n }\n }\n switch (char) {\n case '#':\n {\n let width = 1;\n while (src[++pos] === '#') ++width;\n return {\n char,\n width\n };\n }\n case '@':\n {\n let min = 1;\n while (src[++pos] === '@') ++min;\n let width = min;\n pos -= 1;\n while (src[++pos] === '#') ++width;\n return {\n char,\n min,\n width\n };\n }\n case 'E':\n {\n const plus = src[pos + 1] === '+';\n if (plus) ++pos;\n let expDigits = 0;\n while (src[++pos] === '0') ++expDigits;\n const width = (plus ? 2 : 1) + expDigits;\n if (expDigits) return {\n char,\n expDigits,\n plus,\n width\n };else break;\n }\n case '.':\n case ',':\n return {\n char,\n width: 1\n };\n }\n return null;\n }\n function parseSubpattern(src, pos, onError) {\n let State;\n (function (State) {\n State[State[\"Prefix\"] = 0] = \"Prefix\";\n State[State[\"Number\"] = 1] = \"Number\";\n State[State[\"Suffix\"] = 2] = \"Suffix\";\n })(State || (State = {}));\n const prefix = [];\n const number = [];\n const suffix = [];\n let state = State.Prefix;\n let str = '';\n while (pos < src.length) {\n const char = src[pos];\n if (char === ';') {\n pos += 1;\n break;\n }\n switch (state) {\n case State.Prefix:\n {\n const token = parseAffixToken(src, pos, onError);\n if (token) {\n if (str) {\n prefix.push({\n char: \"'\",\n str,\n width: str.length\n });\n str = '';\n }\n prefix.push(token);\n pos += token.width;\n } else {\n const token = parseNumberToken(src, pos);\n if (token) {\n if (str) {\n prefix.push({\n char: \"'\",\n str,\n width: str.length\n });\n str = '';\n }\n state = State.Number;\n number.push(token);\n pos += token.width;\n } else {\n str += char;\n pos += 1;\n }\n }\n break;\n }\n case State.Number:\n {\n const token = parseNumberToken(src, pos);\n if (token) {\n number.push(token);\n pos += token.width;\n } else {\n state = State.Suffix;\n }\n break;\n }\n case State.Suffix:\n {\n const token = parseAffixToken(src, pos, onError);\n if (token) {\n if (str) {\n suffix.push({\n char: \"'\",\n str,\n width: str.length\n });\n str = '';\n }\n suffix.push(token);\n pos += token.width;\n } else {\n str += char;\n pos += 1;\n }\n break;\n }\n }\n }\n if (str) suffix.push({\n char: \"'\",\n str,\n width: str.length\n });\n return {\n pattern: {\n prefix,\n number,\n suffix\n },\n pos\n };\n }\n function parseTokens(src, onError) {\n const {\n pattern,\n pos\n } = parseSubpattern(src, 0, onError);\n if (pos < src.length) {\n const {\n pattern: negative\n } = parseSubpattern(src, pos, onError);\n return {\n tokens: pattern,\n negative\n };\n }\n return {\n tokens: pattern\n };\n }\n function parseNumberAsSkeleton(tokens, onError) {\n const res = {};\n let hasGroups = false;\n let hasExponent = false;\n let intOptional = 0;\n let intDigits = '';\n let decimalPos = -1;\n let fracDigits = '';\n let fracOptional = 0;\n for (let pos = 0; pos < tokens.length; ++pos) {\n const token = tokens[pos];\n switch (token.char) {\n case '#':\n {\n if (decimalPos === -1) {\n if (intDigits) {\n const msg = 'Pattern has # after integer digits';\n onError(new PatternError('#', msg));\n }\n intOptional += token.width;\n } else {\n fracOptional += token.width;\n }\n break;\n }\n case '0':\n {\n if (decimalPos === -1) {\n intDigits += token.digits;\n } else {\n if (fracOptional) {\n const msg = 'Pattern has digits after # in fraction';\n onError(new PatternError('0', msg));\n }\n fracDigits += token.digits;\n }\n break;\n }\n case '@':\n {\n if (res.precision) onError(new MaskedValueError('precision', res.precision));\n res.precision = {\n style: 'precision-fraction',\n minSignificant: token.min,\n maxSignificant: token.width\n };\n break;\n }\n case ',':\n hasGroups = true;\n break;\n case '.':\n if (decimalPos === 1) {\n const msg = 'Pattern has more than one decimal separator';\n onError(new PatternError('.', msg));\n }\n decimalPos = pos;\n break;\n case 'E':\n {\n if (hasExponent) onError(new MaskedValueError('exponent', res.notation));\n if (hasGroups) {\n const msg = 'Exponential patterns may not contain grouping separators';\n onError(new PatternError('E', msg));\n }\n res.notation = {\n style: 'scientific'\n };\n if (token.expDigits > 1) res.notation.expDigits = token.expDigits;\n if (token.plus) res.notation.expSign = 'sign-always';\n hasExponent = true;\n }\n }\n }\n // imprecise mapping due to paradigm differences\n if (hasGroups) res.group = 'group-auto';else if (intOptional + intDigits.length > 3) res.group = 'group-off';\n const increment = Number(`${intDigits || '0'}.${fracDigits}`);\n if (increment) res.precision = {\n style: 'precision-increment',\n increment\n };\n if (!hasExponent) {\n if (intDigits.length > 1) res.integerWidth = {\n min: intDigits.length\n };\n if (!res.precision && (fracDigits.length || fracOptional)) {\n res.precision = {\n style: 'precision-fraction',\n minFraction: fracDigits.length,\n maxFraction: fracDigits.length + fracOptional\n };\n }\n } else {\n if (!res.precision || increment) {\n res.integerWidth = intOptional ? {\n min: 1,\n max: intOptional + intDigits.length\n } : {\n min: Math.max(1, intDigits.length)\n };\n }\n if (res.precision) {\n if (!increment) res.integerWidth = {\n min: 1,\n max: 1\n };\n } else {\n const dc = intDigits.length + fracDigits.length;\n if (decimalPos === -1) {\n if (dc > 0) res.precision = {\n style: 'precision-fraction',\n maxSignificant: dc\n };\n } else {\n res.precision = {\n style: 'precision-fraction',\n maxSignificant: Math.max(1, dc) + fracOptional\n };\n if (dc > 1) res.precision.minSignificant = dc;\n }\n }\n }\n return res;\n }\n function handleAffix(affixTokens, res, currency, onError, isPrefix) {\n let inFmt = false;\n let str = '';\n for (const token of affixTokens) {\n switch (token.char) {\n case '%':\n res.unit = {\n style: token.style\n };\n if (isPrefix) inFmt = true;else str = '';\n break;\n case '¤':\n if (!currency) {\n const msg = `The ¤ pattern requires a currency`;\n onError(new PatternError('¤', msg));\n break;\n }\n res.unit = {\n style: 'currency',\n currency\n };\n switch (token.currency) {\n case 'iso-code':\n res.unitWidth = 'unit-width-iso-code';\n break;\n case 'full-name':\n res.unitWidth = 'unit-width-full-name';\n break;\n case 'narrow':\n res.unitWidth = 'unit-width-narrow';\n break;\n }\n if (isPrefix) inFmt = true;else str = '';\n break;\n case '*':\n // TODO\n break;\n case '+':\n if (!inFmt) str += '+';\n break;\n case \"'\":\n if (!inFmt) str += token.str;\n break;\n }\n }\n return str;\n }\n function getNegativeAffix(affixTokens, isPrefix) {\n let inFmt = false;\n let str = '';\n for (const token of affixTokens) {\n switch (token.char) {\n case '%':\n case '¤':\n if (isPrefix) inFmt = true;else str = '';\n break;\n case '-':\n if (!inFmt) str += '-';\n break;\n case \"'\":\n if (!inFmt) str += token.str;\n break;\n }\n }\n return str;\n }\n /**\n * Parse an {@link\n * http://unicode.org/reports/tr35/tr35-numbers.html#Number_Format_Patterns |\n * ICU NumberFormatter pattern} string into a {@link Skeleton} structure.\n *\n * @public\n * @param src - The pattern string\n * @param currency - If the pattern includes ¤ tokens, their skeleton\n * representation requires a three-letter currency code.\n * @param onError - Called when the parser encounters a syntax error. The\n * function will still return a {@link Skeleton}, but it will be incomplete\n * and/or inaccurate. If not defined, the error will be thrown instead.\n *\n * @remarks\n * Unlike the skeleton parser, the pattern parser is not able to return partial\n * results on error, and will instead throw. Output padding is not supported.\n *\n * @example\n * ```js\n * import { parseNumberPattern } from '@messageformat/number-skeleton'\n *\n * parseNumberPattern('#,##0.00 ¤', 'EUR', console.error)\n * // {\n * // group: 'group-auto',\n * // precision: {\n * // style: 'precision-fraction',\n * // minFraction: 2,\n * // maxFraction: 2\n * // },\n * // unit: { style: 'currency', currency: 'EUR' }\n * // }\n * ```\n */\n function parseNumberPattern(src, currency) {\n let onError = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : error => {\n throw error;\n };\n const {\n tokens,\n negative\n } = parseTokens(src, onError);\n const res = parseNumberAsSkeleton(tokens.number, onError);\n const prefix = handleAffix(tokens.prefix, res, currency, onError, true);\n const suffix = handleAffix(tokens.suffix, res, currency, onError, false);\n if (negative) {\n const negPrefix = getNegativeAffix(negative.prefix, true);\n const negSuffix = getNegativeAffix(negative.suffix, false);\n res.affix = {\n pos: [prefix, suffix],\n neg: [negPrefix, negSuffix]\n };\n res.sign = 'sign-never';\n } else if (prefix || suffix) {\n res.affix = {\n pos: [prefix, suffix]\n };\n }\n return res;\n }\n\n /** @internal */\n function isNumberingSystem(ns) {\n const systems = ['arab', 'arabext', 'bali', 'beng', 'deva', 'fullwide', 'gujr', 'guru', 'hanidec', 'khmr', 'knda', 'laoo', 'latn', 'limb', 'mlym', 'mong', 'mymr', 'orya', 'tamldec', 'telu', 'thai', 'tibt'];\n return systems.indexOf(ns) !== -1;\n }\n\n // FIXME: subtype is not checked\n /** @internal */\n function isUnit(unit) {\n const types = ['acceleration', 'angle', 'area', 'concentr', 'consumption', 'digital', 'duration', 'electric', 'energy', 'force', 'frequency', 'graphics', 'length', 'light', 'mass', 'power', 'pressure', 'speed', 'temperature', 'torque', 'volume'];\n const [type] = unit.split('-', 1);\n return types.indexOf(type) !== -1;\n }\n const maxOptions = {\n 'compact-short': 0,\n 'compact-long': 0,\n 'notation-simple': 0,\n scientific: 2,\n engineering: 2,\n percent: 0,\n permille: 0,\n 'base-unit': 0,\n currency: 1,\n 'measure-unit': 1,\n 'per-measure-unit': 1,\n 'unit-width-narrow': 0,\n 'unit-width-short': 0,\n 'unit-width-full-name': 0,\n 'unit-width-iso-code': 0,\n 'unit-width-hidden': 0,\n 'precision-integer': 0,\n 'precision-unlimited': 0,\n 'precision-currency-standard': 1,\n 'precision-currency-cash': 0,\n 'precision-increment': 1,\n 'rounding-mode-ceiling': 0,\n 'rounding-mode-floor': 0,\n 'rounding-mode-down': 0,\n 'rounding-mode-up': 0,\n 'rounding-mode-half-even': 0,\n 'rounding-mode-half-down': 0,\n 'rounding-mode-half-up': 0,\n 'rounding-mode-unnecessary': 0,\n 'integer-width': 1,\n scale: 1,\n 'group-off': 0,\n 'group-min2': 0,\n 'group-auto': 0,\n 'group-on-aligned': 0,\n 'group-thousands': 0,\n latin: 0,\n 'numbering-system': 1,\n 'sign-auto': 0,\n 'sign-always': 0,\n 'sign-never': 0,\n 'sign-accounting': 0,\n 'sign-accounting-always': 0,\n 'sign-except-zero': 0,\n 'sign-accounting-except-zero': 0,\n 'decimal-auto': 0,\n 'decimal-always': 0\n };\n const minOptions = {\n currency: 1,\n 'integer-width': 1,\n 'measure-unit': 1,\n 'numbering-system': 1,\n 'per-measure-unit': 1,\n 'precision-increment': 1,\n scale: 1\n };\n function hasMaxOption(stem) {\n return stem in maxOptions;\n }\n function hasMinOption(stem) {\n return stem in minOptions;\n }\n /** @internal */\n function validOptions(stem, options, onError) {\n if (hasMaxOption(stem)) {\n const maxOpt = maxOptions[stem];\n if (options.length > maxOpt) {\n if (maxOpt === 0) {\n for (const opt of options) onError(new BadOptionError(stem, opt));\n } else {\n onError(new TooManyOptionsError(stem, options, maxOpt));\n }\n return false;\n } else if (hasMinOption(stem) && options.length < minOptions[stem]) {\n onError(new MissingOptionError(stem));\n return false;\n }\n }\n return true;\n }\n function parseBlueprintDigits(src, style) {\n const re = style === 'fraction' ? /^\\.(0*)(\\+|#*)$/ : /^(@+)(\\+|#*)$/;\n const match = src && src.match(re);\n if (match) {\n const min = match[1].length;\n switch (match[2].charAt(0)) {\n case '':\n return {\n min,\n max: min\n };\n case '+':\n return {\n min,\n max: null\n };\n case '#':\n {\n return {\n min,\n max: min + match[2].length\n };\n }\n }\n }\n return null;\n }\n function parsePrecisionBlueprint(stem, options, onError) {\n const fd = parseBlueprintDigits(stem, 'fraction');\n if (fd) {\n if (options.length > 1) onError(new TooManyOptionsError(stem, options, 1));\n const res = {\n style: 'precision-fraction',\n source: stem,\n minFraction: fd.min\n };\n if (fd.max != null) res.maxFraction = fd.max;\n const option = options[0];\n const sd = parseBlueprintDigits(option, 'significant');\n if (sd) {\n res.source = `${stem}/${option}`;\n res.minSignificant = sd.min;\n if (sd.max != null) res.maxSignificant = sd.max;\n } else if (option) onError(new BadOptionError(stem, option));\n return res;\n }\n const sd = parseBlueprintDigits(stem, 'significant');\n if (sd) {\n for (const opt of options) onError(new BadOptionError(stem, opt));\n const res = {\n style: 'precision-fraction',\n source: stem,\n minSignificant: sd.min\n };\n if (sd.max != null) res.maxSignificant = sd.max;\n return res;\n }\n return null;\n }\n\n /** @internal */\n class TokenParser {\n constructor(onError) {\n this.skeleton = {};\n this.onError = onError;\n }\n badOption(stem, opt) {\n this.onError(new BadOptionError(stem, opt));\n }\n assertEmpty(key) {\n const prev = this.skeleton[key];\n if (prev) this.onError(new MaskedValueError(key, prev));\n }\n parseToken(stem, options) {\n if (!validOptions(stem, options, this.onError)) return;\n const option = options[0];\n const res = this.skeleton;\n switch (stem) {\n // notation\n case 'compact-short':\n case 'compact-long':\n case 'notation-simple':\n this.assertEmpty('notation');\n res.notation = {\n style: stem\n };\n break;\n case 'scientific':\n case 'engineering':\n {\n let expDigits = null;\n let expSign = undefined;\n for (const opt of options) {\n switch (opt) {\n case 'sign-auto':\n case 'sign-always':\n case 'sign-never':\n case 'sign-accounting':\n case 'sign-accounting-always':\n case 'sign-except-zero':\n case 'sign-accounting-except-zero':\n expSign = opt;\n break;\n default:\n if (/^\\+e+$/.test(opt)) expDigits = opt.length - 1;else {\n this.badOption(stem, opt);\n }\n }\n }\n this.assertEmpty('notation');\n const source = options.join('/');\n res.notation = expDigits && expSign ? {\n style: stem,\n source,\n expDigits,\n expSign\n } : expDigits ? {\n style: stem,\n source,\n expDigits\n } : expSign ? {\n style: stem,\n source,\n expSign\n } : {\n style: stem,\n source\n };\n break;\n }\n // unit\n case 'percent':\n case 'permille':\n case 'base-unit':\n this.assertEmpty('unit');\n res.unit = {\n style: stem\n };\n break;\n case 'currency':\n if (/^[A-Z]{3}$/.test(option)) {\n this.assertEmpty('unit');\n res.unit = {\n style: stem,\n currency: option\n };\n } else this.badOption(stem, option);\n break;\n case 'measure-unit':\n {\n if (isUnit(option)) {\n this.assertEmpty('unit');\n res.unit = {\n style: stem,\n unit: option\n };\n } else this.badOption(stem, option);\n break;\n }\n // unitPer\n case 'per-measure-unit':\n {\n if (isUnit(option)) {\n this.assertEmpty('unitPer');\n res.unitPer = option;\n } else this.badOption(stem, option);\n break;\n }\n // unitWidth\n case 'unit-width-narrow':\n case 'unit-width-short':\n case 'unit-width-full-name':\n case 'unit-width-iso-code':\n case 'unit-width-hidden':\n this.assertEmpty('unitWidth');\n res.unitWidth = stem;\n break;\n // precision\n case 'precision-integer':\n case 'precision-unlimited':\n case 'precision-currency-cash':\n this.assertEmpty('precision');\n res.precision = {\n style: stem\n };\n break;\n case 'precision-currency-standard':\n this.assertEmpty('precision');\n if (option === 'w') {\n res.precision = {\n style: stem,\n trailingZero: 'stripIfInteger'\n };\n } else {\n res.precision = {\n style: stem\n };\n }\n break;\n case 'precision-increment':\n {\n const increment = Number(option);\n if (increment > 0) {\n this.assertEmpty('precision');\n res.precision = {\n style: stem,\n increment\n };\n } else this.badOption(stem, option);\n break;\n }\n // roundingMode\n case 'rounding-mode-ceiling':\n case 'rounding-mode-floor':\n case 'rounding-mode-down':\n case 'rounding-mode-up':\n case 'rounding-mode-half-even':\n case 'rounding-mode-half-odd':\n case 'rounding-mode-half-ceiling':\n case 'rounding-mode-half-floor':\n case 'rounding-mode-half-down':\n case 'rounding-mode-half-up':\n case 'rounding-mode-unnecessary':\n this.assertEmpty('roundingMode');\n res.roundingMode = stem;\n break;\n // integerWidth\n case 'integer-width':\n {\n if (/^\\+0*$/.test(option)) {\n this.assertEmpty('integerWidth');\n res.integerWidth = {\n source: option,\n min: option.length - 1\n };\n } else {\n const m = option.match(/^#*(0*)$/);\n if (m) {\n this.assertEmpty('integerWidth');\n res.integerWidth = {\n source: option,\n min: m[1].length,\n max: m[0].length\n };\n } else this.badOption(stem, option);\n }\n break;\n }\n // scale\n case 'scale':\n {\n const scale = Number(option);\n if (scale > 0) {\n this.assertEmpty('scale');\n res.scale = scale;\n } else this.badOption(stem, option);\n break;\n }\n // group\n case 'group-off':\n case 'group-min2':\n case 'group-auto':\n case 'group-on-aligned':\n case 'group-thousands':\n this.assertEmpty('group');\n res.group = stem;\n break;\n // numberingSystem\n case 'latin':\n this.assertEmpty('numberingSystem');\n res.numberingSystem = 'latn';\n break;\n case 'numbering-system':\n {\n if (isNumberingSystem(option)) {\n this.assertEmpty('numberingSystem');\n res.numberingSystem = option;\n } else this.badOption(stem, option);\n break;\n }\n // sign\n case 'sign-auto':\n case 'sign-always':\n case 'sign-never':\n case 'sign-accounting':\n case 'sign-accounting-always':\n case 'sign-except-zero':\n case 'sign-accounting-except-zero':\n this.assertEmpty('sign');\n res.sign = stem;\n break;\n // decimal\n case 'decimal-auto':\n case 'decimal-always':\n this.assertEmpty('decimal');\n res.decimal = stem;\n break;\n // precision blueprint\n default:\n {\n const precision = parsePrecisionBlueprint(stem, options, this.onError);\n if (precision) {\n this.assertEmpty('precision');\n res.precision = precision;\n } else {\n this.onError(new BadStemError(stem));\n }\n }\n }\n }\n }\n\n /**\n * Parse an {@link\n * https://github.com/unicode-org/icu/blob/master/docs/userguide/format_parse/numbers/skeletons.md\n * | ICU NumberFormatter skeleton} string into a {@link Skeleton} structure.\n *\n * @public\n * @param src - The skeleton string\n * @param onError - Called when the parser encounters a syntax error. The\n * function will still return a {@link Skeleton}, but it may not contain\n * information for all tokens. If not defined, the error will be thrown\n * instead.\n *\n * @example\n * ```js\n * import { parseNumberSkeleton } from '@messageformat/number-skeleton'\n *\n * parseNumberSkeleton('compact-short currency/GBP', console.error)\n * // {\n * // notation: { style: 'compact-short' },\n * // unit: { style: 'currency', currency: 'GBP' }\n * // }\n * ```\n */\n function parseNumberSkeleton(src) {\n let onError = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : error => {\n throw error;\n };\n const tokens = [];\n for (const part of src.split(' ')) {\n if (part) {\n const options = part.split('/');\n const stem = options.shift() || '';\n tokens.push({\n stem,\n options\n });\n }\n }\n const parser = new TokenParser(onError);\n for (const {\n stem,\n options\n } of tokens) {\n parser.parseToken(stem, options);\n }\n return parser.skeleton;\n }\n\n /**\n * Returns a number formatter function for the given locales and number skeleton\n *\n * @remarks\n * Uses `Intl.NumberFormat` (ES2020) internally.\n *\n * @public\n * @param locales - One or more valid BCP 47 language tags, e.g. `fr` or `en-CA`\n * @param skeleton - An ICU NumberFormatter pattern or `::`-prefixed skeleton\n * string, or a parsed `Skeleton` structure\n * @param currency - If `skeleton` is a pattern string that includes ¤ tokens,\n * their skeleton representation requires a three-letter currency code.\n * @param onError - If defined, will be called separately for each encountered\n * parsing error and unsupported feature.\n * @example\n * ```js\n * import { getNumberFormatter } from '@messageformat/number-skeleton'\n *\n * let src = ':: currency/CAD unit-width-narrow'\n * let fmt = getNumberFormatter('en-CA', src, console.error)\n * fmt(42) // '$42.00'\n *\n * src = '::percent scale/100'\n * fmt = getNumberFormatter('en', src, console.error)\n * fmt(0.3) // '30%'\n * ```\n */\n function getNumberFormatter(locales, skeleton, currency, onError) {\n if (typeof skeleton === 'string') {\n skeleton = skeleton.indexOf('::') === 0 ? parseNumberSkeleton(skeleton.slice(2), onError) : parseNumberPattern(skeleton, currency, onError);\n }\n const lc = getNumberFormatLocales(locales, skeleton);\n const opt = getNumberFormatOptions(skeleton, onError);\n const mod = getNumberFormatModifier(skeleton);\n const nf = new Intl.NumberFormat(lc, opt);\n if (skeleton.affix) {\n const [p0, p1] = skeleton.affix.pos;\n const [n0, n1] = skeleton.affix.neg || ['', ''];\n return value => {\n const n = nf.format(mod(value));\n return value < 0 ? `${n0}${n}${n1}` : `${p0}${n}${p1}`;\n };\n }\n return value => nf.format(mod(value));\n }\n /**\n * Returns a string of JavaScript source that evaluates to a number formatter\n * function with the same `(value: number) => string` signature as the function\n * returned by {@link getNumberFormatter}.\n *\n * @remarks\n * The returned function will memoize an `Intl.NumberFormat` instance.\n *\n * @public\n * @param locales - One or more valid BCP 47 language tags, e.g. `fr` or `en-CA`\n * @param skeleton - An ICU NumberFormatter pattern or `::`-prefixed skeleton\n * string, or a parsed `Skeleton` structure\n * @param currency - If `skeleton` is a pattern string that includes ¤ tokens,\n * their skeleton representation requires a three-letter currency code.\n * @param onError - If defined, will be called separately for each encountered\n * parsing error and unsupported feature.\n * @example\n * ```js\n * import { getNumberFormatterSource } from '@messageformat/number-skeleton'\n *\n * getNumberFormatterSource('en', '::percent', console.error)\n * // '(function() {\\n' +\n * // ' var opt = {\"style\":\"percent\"};\\n' +\n * // ' var nf = new Intl.NumberFormat([\"en\"], opt);\\n' +\n * // ' var mod = function(n) { return n * 0.01; };\\n' +\n * // ' return function(value) { return nf.format(mod(value)); }\\n' +\n * // '})()'\n *\n * const src = getNumberFormatterSource('en-CA', ':: currency/CAD unit-width-narrow', console.error)\n * // '(function() {\\n' +\n * // ' var opt = {\"style\":\"currency\",\"currency\":\"CAD\",\"currencyDisplay\":\"narrowSymbol\",\"unitDisplay\":\"narrow\"};\\n' +\n * // ' var nf = new Intl.NumberFormat([\"en-CA\"], opt);\\n'\n * // ' return function(value) { return nf.format(value); }\\n' +\n * // '})()'\n * const fmt = new Function(`return ${src}`)()\n * fmt(42) // '$42.00'\n * ```\n */\n function getNumberFormatterSource(locales, skeleton, currency, onError) {\n if (typeof skeleton === 'string') {\n skeleton = skeleton.indexOf('::') === 0 ? parseNumberSkeleton(skeleton.slice(2), onError) : parseNumberPattern(skeleton, currency, onError);\n }\n const lc = getNumberFormatLocales(locales, skeleton);\n const opt = getNumberFormatOptions(skeleton, onError);\n const modSrc = getNumberFormatModifierSource(skeleton);\n const lines = [`(function() {`, `var opt = ${JSON.stringify(opt)};`, `var nf = new Intl.NumberFormat(${JSON.stringify(lc)}, opt);`];\n let res = 'nf.format(value)';\n if (modSrc) {\n lines.push(`var mod = ${modSrc};`);\n res = 'nf.format(mod(value))';\n }\n if (skeleton.affix) {\n const [p0, p1] = skeleton.affix.pos.map(s => JSON.stringify(s));\n if (skeleton.affix.neg) {\n const [n0, n1] = skeleton.affix.neg.map(s => JSON.stringify(s));\n res = `value < 0 ? ${n0} + ${res} + ${n1} : ${p0} + ${res} + ${p1}`;\n } else {\n res = `${p0} + ${res} + ${p1}`;\n }\n }\n lines.push(`return function(value) { return ${res}; }`);\n return lines.join('\\n ') + '\\n})()';\n }\n var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n function getDefaultExportFromCjs(x) {\n return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n }\n var parser = {};\n var lexer = {};\n var moo = {\n exports: {}\n };\n (function (module) {\n (function (root, factory) {\n if (module.exports) {\n module.exports = factory();\n } else {\n root.moo = factory();\n }\n })(commonjsGlobal, function () {\n var hasOwnProperty = Object.prototype.hasOwnProperty;\n var toString = Object.prototype.toString;\n var hasSticky = typeof new RegExp().sticky === 'boolean';\n\n /***************************************************************************/\n\n function isRegExp(o) {\n return o && toString.call(o) === '[object RegExp]';\n }\n function isObject(o) {\n return o && typeof o === 'object' && !isRegExp(o) && !Array.isArray(o);\n }\n function reEscape(s) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n function reGroups(s) {\n var re = new RegExp('|' + s);\n return re.exec('').length - 1;\n }\n function reCapture(s) {\n return '(' + s + ')';\n }\n function reUnion(regexps) {\n if (!regexps.length) return '(?!)';\n var source = regexps.map(function (s) {\n return \"(?:\" + s + \")\";\n }).join('|');\n return \"(?:\" + source + \")\";\n }\n function regexpOrLiteral(obj) {\n if (typeof obj === 'string') {\n return '(?:' + reEscape(obj) + ')';\n } else if (isRegExp(obj)) {\n // TODO: consider /u support\n if (obj.ignoreCase) throw new Error('RegExp /i flag not allowed');\n if (obj.global) throw new Error('RegExp /g flag is implied');\n if (obj.sticky) throw new Error('RegExp /y flag is implied');\n if (obj.multiline) throw new Error('RegExp /m flag is implied');\n return obj.source;\n } else {\n throw new Error('Not a pattern: ' + obj);\n }\n }\n function pad(s, length) {\n if (s.length > length) {\n return s;\n }\n return Array(length - s.length + 1).join(\" \") + s;\n }\n function lastNLines(string, numLines) {\n var position = string.length;\n var lineBreaks = 0;\n while (true) {\n var idx = string.lastIndexOf(\"\\n\", position - 1);\n if (idx === -1) {\n break;\n } else {\n lineBreaks++;\n }\n position = idx;\n if (lineBreaks === numLines) {\n break;\n }\n if (position === 0) {\n break;\n }\n }\n var startPosition = lineBreaks < numLines ? 0 : position + 1;\n return string.substring(startPosition).split(\"\\n\");\n }\n function objectToRules(object) {\n var keys = Object.getOwnPropertyNames(object);\n var result = [];\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var thing = object[key];\n var rules = [].concat(thing);\n if (key === 'include') {\n for (var j = 0; j < rules.length; j++) {\n result.push({\n include: rules[j]\n });\n }\n continue;\n }\n var match = [];\n rules.forEach(function (rule) {\n if (isObject(rule)) {\n if (match.length) result.push(ruleOptions(key, match));\n result.push(ruleOptions(key, rule));\n match = [];\n } else {\n match.push(rule);\n }\n });\n if (match.length) result.push(ruleOptions(key, match));\n }\n return result;\n }\n function arrayToRules(array) {\n var result = [];\n for (var i = 0; i < array.length; i++) {\n var obj = array[i];\n if (obj.include) {\n var include = [].concat(obj.include);\n for (var j = 0; j < include.length; j++) {\n result.push({\n include: include[j]\n });\n }\n continue;\n }\n if (!obj.type) {\n throw new Error('Rule has no type: ' + JSON.stringify(obj));\n }\n result.push(ruleOptions(obj.type, obj));\n }\n return result;\n }\n function ruleOptions(type, obj) {\n if (!isObject(obj)) {\n obj = {\n match: obj\n };\n }\n if (obj.include) {\n throw new Error('Matching rules cannot also include states');\n }\n\n // nb. error and fallback imply lineBreaks\n var options = {\n defaultType: type,\n lineBreaks: !!obj.error || !!obj.fallback,\n pop: false,\n next: null,\n push: null,\n error: false,\n fallback: false,\n value: null,\n type: null,\n shouldThrow: false\n };\n\n // Avoid Object.assign(), so we support IE9+\n for (var key in obj) {\n if (hasOwnProperty.call(obj, key)) {\n options[key] = obj[key];\n }\n }\n\n // type transform cannot be a string\n if (typeof options.type === 'string' && type !== options.type) {\n throw new Error(\"Type transform cannot be a string (type '\" + options.type + \"' for token '\" + type + \"')\");\n }\n\n // convert to array\n var match = options.match;\n options.match = Array.isArray(match) ? match : match ? [match] : [];\n options.match.sort(function (a, b) {\n return isRegExp(a) && isRegExp(b) ? 0 : isRegExp(b) ? -1 : isRegExp(a) ? +1 : b.length - a.length;\n });\n return options;\n }\n function toRules(spec) {\n return Array.isArray(spec) ? arrayToRules(spec) : objectToRules(spec);\n }\n var defaultErrorRule = ruleOptions('error', {\n lineBreaks: true,\n shouldThrow: true\n });\n function compileRules(rules, hasStates) {\n var errorRule = null;\n var fast = Object.create(null);\n var fastAllowed = true;\n var unicodeFlag = null;\n var groups = [];\n var parts = [];\n\n // If there is a fallback rule, then disable fast matching\n for (var i = 0; i < rules.length; i++) {\n if (rules[i].fallback) {\n fastAllowed = false;\n }\n }\n for (var i = 0; i < rules.length; i++) {\n var options = rules[i];\n if (options.include) {\n // all valid inclusions are removed by states() preprocessor\n throw new Error('Inheritance is not allowed in stateless lexers');\n }\n if (options.error || options.fallback) {\n // errorRule can only be set once\n if (errorRule) {\n if (!options.fallback === !errorRule.fallback) {\n throw new Error(\"Multiple \" + (options.fallback ? \"fallback\" : \"error\") + \" rules not allowed (for token '\" + options.defaultType + \"')\");\n } else {\n throw new Error(\"fallback and error are mutually exclusive (for token '\" + options.defaultType + \"')\");\n }\n }\n errorRule = options;\n }\n var match = options.match.slice();\n if (fastAllowed) {\n while (match.length && typeof match[0] === 'string' && match[0].length === 1) {\n var word = match.shift();\n fast[word.charCodeAt(0)] = options;\n }\n }\n\n // Warn about inappropriate state-switching options\n if (options.pop || options.push || options.next) {\n if (!hasStates) {\n throw new Error(\"State-switching options are not allowed in stateless lexers (for token '\" + options.defaultType + \"')\");\n }\n if (options.fallback) {\n throw new Error(\"State-switching options are not allowed on fallback tokens (for token '\" + options.defaultType + \"')\");\n }\n }\n\n // Only rules with a .match are included in the RegExp\n if (match.length === 0) {\n continue;\n }\n fastAllowed = false;\n groups.push(options);\n\n // Check unicode flag is used everywhere or nowhere\n for (var j = 0; j < match.length; j++) {\n var obj = match[j];\n if (!isRegExp(obj)) {\n continue;\n }\n if (unicodeFlag === null) {\n unicodeFlag = obj.unicode;\n } else if (unicodeFlag !== obj.unicode && options.fallback === false) {\n throw new Error('If one rule is /u then all must be');\n }\n }\n\n // convert to RegExp\n var pat = reUnion(match.map(regexpOrLiteral));\n\n // validate\n var regexp = new RegExp(pat);\n if (regexp.test(\"\")) {\n throw new Error(\"RegExp matches empty string: \" + regexp);\n }\n var groupCount = reGroups(pat);\n if (groupCount > 0) {\n throw new Error(\"RegExp has capture groups: \" + regexp + \"\\nUse (?: … ) instead\");\n }\n\n // try and detect rules matching newlines\n if (!options.lineBreaks && regexp.test('\\n')) {\n throw new Error('Rule should declare lineBreaks: ' + regexp);\n }\n\n // store regex\n parts.push(reCapture(pat));\n }\n\n // If there's no fallback rule, use the sticky flag so we only look for\n // matches at the current index.\n //\n // If we don't support the sticky flag, then fake it using an irrefutable\n // match (i.e. an empty pattern).\n var fallbackRule = errorRule && errorRule.fallback;\n var flags = hasSticky && !fallbackRule ? 'ym' : 'gm';\n var suffix = hasSticky || fallbackRule ? '' : '|';\n if (unicodeFlag === true) flags += \"u\";\n var combined = new RegExp(reUnion(parts) + suffix, flags);\n return {\n regexp: combined,\n groups: groups,\n fast: fast,\n error: errorRule || defaultErrorRule\n };\n }\n function compile(rules) {\n var result = compileRules(toRules(rules));\n return new Lexer({\n start: result\n }, 'start');\n }\n function checkStateGroup(g, name, map) {\n var state = g && (g.push || g.next);\n if (state && !map[state]) {\n throw new Error(\"Missing state '\" + state + \"' (in token '\" + g.defaultType + \"' of state '\" + name + \"')\");\n }\n if (g && g.pop && +g.pop !== 1) {\n throw new Error(\"pop must be 1 (in token '\" + g.defaultType + \"' of state '\" + name + \"')\");\n }\n }\n function compileStates(states, start) {\n var all = states.$all ? toRules(states.$all) : [];\n delete states.$all;\n var keys = Object.getOwnPropertyNames(states);\n if (!start) start = keys[0];\n var ruleMap = Object.create(null);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n ruleMap[key] = toRules(states[key]).concat(all);\n }\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var rules = ruleMap[key];\n var included = Object.create(null);\n for (var j = 0; j < rules.length; j++) {\n var rule = rules[j];\n if (!rule.include) continue;\n var splice = [j, 1];\n if (rule.include !== key && !included[rule.include]) {\n included[rule.include] = true;\n var newRules = ruleMap[rule.include];\n if (!newRules) {\n throw new Error(\"Cannot include nonexistent state '\" + rule.include + \"' (in state '\" + key + \"')\");\n }\n for (var k = 0; k < newRules.length; k++) {\n var newRule = newRules[k];\n if (rules.indexOf(newRule) !== -1) continue;\n splice.push(newRule);\n }\n }\n rules.splice.apply(rules, splice);\n j--;\n }\n }\n var map = Object.create(null);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n map[key] = compileRules(ruleMap[key], true);\n }\n for (var i = 0; i < keys.length; i++) {\n var name = keys[i];\n var state = map[name];\n var groups = state.groups;\n for (var j = 0; j < groups.length; j++) {\n checkStateGroup(groups[j], name, map);\n }\n var fastKeys = Object.getOwnPropertyNames(state.fast);\n for (var j = 0; j < fastKeys.length; j++) {\n checkStateGroup(state.fast[fastKeys[j]], name, map);\n }\n }\n return new Lexer(map, start);\n }\n function keywordTransform(map) {\n // Use a JavaScript Map to map keywords to their corresponding token type\n // unless Map is unsupported, then fall back to using an Object:\n var isMap = typeof Map !== 'undefined';\n var reverseMap = isMap ? new Map() : Object.create(null);\n var types = Object.getOwnPropertyNames(map);\n for (var i = 0; i < types.length; i++) {\n var tokenType = types[i];\n var item = map[tokenType];\n var keywordList = Array.isArray(item) ? item : [item];\n keywordList.forEach(function (keyword) {\n if (typeof keyword !== 'string') {\n throw new Error(\"keyword must be string (in keyword '\" + tokenType + \"')\");\n }\n if (isMap) {\n reverseMap.set(keyword, tokenType);\n } else {\n reverseMap[keyword] = tokenType;\n }\n });\n }\n return function (k) {\n return isMap ? reverseMap.get(k) : reverseMap[k];\n };\n }\n\n /***************************************************************************/\n\n var Lexer = function (states, state) {\n this.startState = state;\n this.states = states;\n this.buffer = '';\n this.stack = [];\n this.reset();\n };\n Lexer.prototype.reset = function (data, info) {\n this.buffer = data || '';\n this.index = 0;\n this.line = info ? info.line : 1;\n this.col = info ? info.col : 1;\n this.queuedToken = info ? info.queuedToken : null;\n this.queuedText = info ? info.queuedText : \"\";\n this.queuedThrow = info ? info.queuedThrow : null;\n this.setState(info ? info.state : this.startState);\n this.stack = info && info.stack ? info.stack.slice() : [];\n return this;\n };\n Lexer.prototype.save = function () {\n return {\n line: this.line,\n col: this.col,\n state: this.state,\n stack: this.stack.slice(),\n queuedToken: this.queuedToken,\n queuedText: this.queuedText,\n queuedThrow: this.queuedThrow\n };\n };\n Lexer.prototype.setState = function (state) {\n if (!state || this.state === state) return;\n this.state = state;\n var info = this.states[state];\n this.groups = info.groups;\n this.error = info.error;\n this.re = info.regexp;\n this.fast = info.fast;\n };\n Lexer.prototype.popState = function () {\n this.setState(this.stack.pop());\n };\n Lexer.prototype.pushState = function (state) {\n this.stack.push(this.state);\n this.setState(state);\n };\n var eat = hasSticky ? function (re, buffer) {\n // assume re is /y\n return re.exec(buffer);\n } : function (re, buffer) {\n // assume re is /g\n var match = re.exec(buffer);\n // will always match, since we used the |(?:) trick\n if (match[0].length === 0) {\n return null;\n }\n return match;\n };\n Lexer.prototype._getGroup = function (match) {\n var groupCount = this.groups.length;\n for (var i = 0; i < groupCount; i++) {\n if (match[i + 1] !== undefined) {\n return this.groups[i];\n }\n }\n throw new Error('Cannot find token type for matched text');\n };\n function tokenToString() {\n return this.value;\n }\n Lexer.prototype.next = function () {\n var index = this.index;\n\n // If a fallback token matched, we don't need to re-run the RegExp\n if (this.queuedGroup) {\n var token = this._token(this.queuedGroup, this.queuedText, index);\n this.queuedGroup = null;\n this.queuedText = \"\";\n return token;\n }\n var buffer = this.buffer;\n if (index === buffer.length) {\n return; // EOF\n }\n\n // Fast matching for single characters\n var group = this.fast[buffer.charCodeAt(index)];\n if (group) {\n return this._token(group, buffer.charAt(index), index);\n }\n\n // Execute RegExp\n var re = this.re;\n re.lastIndex = index;\n var match = eat(re, buffer);\n\n // Error tokens match the remaining buffer\n var error = this.error;\n if (match == null) {\n return this._token(error, buffer.slice(index, buffer.length), index);\n }\n var group = this._getGroup(match);\n var text = match[0];\n if (error.fallback && match.index !== index) {\n this.queuedGroup = group;\n this.queuedText = text;\n\n // Fallback tokens contain the unmatched portion of the buffer\n return this._token(error, buffer.slice(index, match.index), index);\n }\n return this._token(group, text, index);\n };\n Lexer.prototype._token = function (group, text, offset) {\n // count line breaks\n var lineBreaks = 0;\n if (group.lineBreaks) {\n var matchNL = /\\n/g;\n var nl = 1;\n if (text === '\\n') {\n lineBreaks = 1;\n } else {\n while (matchNL.exec(text)) {\n lineBreaks++;\n nl = matchNL.lastIndex;\n }\n }\n }\n var token = {\n type: typeof group.type === 'function' && group.type(text) || group.defaultType,\n value: typeof group.value === 'function' ? group.value(text) : text,\n text: text,\n toString: tokenToString,\n offset: offset,\n lineBreaks: lineBreaks,\n line: this.line,\n col: this.col\n };\n // nb. adding more props to token object will make V8 sad!\n\n var size = text.length;\n this.index += size;\n this.line += lineBreaks;\n if (lineBreaks !== 0) {\n this.col = size - nl + 1;\n } else {\n this.col += size;\n }\n\n // throw, if no rule with {error: true}\n if (group.shouldThrow) {\n var err = new Error(this.formatError(token, \"invalid syntax\"));\n throw err;\n }\n if (group.pop) this.popState();else if (group.push) this.pushState(group.push);else if (group.next) this.setState(group.next);\n return token;\n };\n if (typeof Symbol !== 'undefined' && Symbol.iterator) {\n var LexerIterator = function (lexer) {\n this.lexer = lexer;\n };\n LexerIterator.prototype.next = function () {\n var token = this.lexer.next();\n return {\n value: token,\n done: !token\n };\n };\n LexerIterator.prototype[Symbol.iterator] = function () {\n return this;\n };\n Lexer.prototype[Symbol.iterator] = function () {\n return new LexerIterator(this);\n };\n }\n Lexer.prototype.formatError = function (token, message) {\n if (token == null) {\n // An undefined token indicates EOF\n var text = this.buffer.slice(this.index);\n var token = {\n text: text,\n offset: this.index,\n lineBreaks: text.indexOf('\\n') === -1 ? 0 : 1,\n line: this.line,\n col: this.col\n };\n }\n var numLinesAround = 2;\n var firstDisplayedLine = Math.max(token.line - numLinesAround, 1);\n var lastDisplayedLine = token.line + numLinesAround;\n var lastLineDigits = String(lastDisplayedLine).length;\n var displayedLines = lastNLines(this.buffer, this.line - token.line + numLinesAround + 1).slice(0, 5);\n var errorLines = [];\n errorLines.push(message + \" at line \" + token.line + \" col \" + token.col + \":\");\n errorLines.push(\"\");\n for (var i = 0; i < displayedLines.length; i++) {\n var line = displayedLines[i];\n var lineNo = firstDisplayedLine + i;\n errorLines.push(pad(String(lineNo), lastLineDigits) + \" \" + line);\n if (lineNo === token.line) {\n errorLines.push(pad(\"\", lastLineDigits + token.col + 1) + \"^\");\n }\n }\n return errorLines.join(\"\\n\");\n };\n Lexer.prototype.clone = function () {\n return new Lexer(this.states, this.state);\n };\n Lexer.prototype.has = function (tokenType) {\n return true;\n };\n return {\n compile: compile,\n states: compileStates,\n error: Object.freeze({\n error: true\n }),\n fallback: Object.freeze({\n fallback: true\n }),\n keywords: keywordTransform\n };\n });\n })(moo);\n var mooExports = moo.exports;\n (function (exports) {\n var __importDefault = commonjsGlobal && commonjsGlobal.__importDefault || function (mod) {\n return mod && mod.__esModule ? mod : {\n \"default\": mod\n };\n };\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.lexer = exports.states = void 0;\n const moo_1 = __importDefault(mooExports);\n exports.states = {\n body: {\n doubleapos: {\n match: \"''\",\n value: () => \"'\"\n },\n quoted: {\n lineBreaks: true,\n match: /'[{}#](?:[^]*?[^'])?'(?!')/u,\n value: src => src.slice(1, -1).replace(/''/g, \"'\")\n },\n argument: {\n lineBreaks: true,\n match: /\\{\\s*[^\\p{Pat_Syn}\\p{Pat_WS}]+\\s*/u,\n push: 'arg',\n value: src => src.substring(1).trim()\n },\n octothorpe: '#',\n end: {\n match: '}',\n pop: 1\n },\n content: {\n lineBreaks: true,\n match: /[^][^{}#']*/u\n }\n },\n arg: {\n select: {\n lineBreaks: true,\n match: /,\\s*(?:plural|select|selectordinal)\\s*,\\s*/u,\n next: 'select',\n value: src => src.split(',')[1].trim()\n },\n 'func-args': {\n lineBreaks: true,\n match: /,\\s*[^\\p{Pat_Syn}\\p{Pat_WS}]+\\s*,/u,\n next: 'body',\n value: src => src.split(',')[1].trim()\n },\n 'func-simple': {\n lineBreaks: true,\n match: /,\\s*[^\\p{Pat_Syn}\\p{Pat_WS}]+\\s*/u,\n value: src => src.substring(1).trim()\n },\n end: {\n match: '}',\n pop: 1\n }\n },\n select: {\n offset: {\n lineBreaks: true,\n match: /\\s*offset\\s*:\\s*\\d+\\s*/u,\n value: src => src.split(':')[1].trim()\n },\n case: {\n lineBreaks: true,\n match: /\\s*(?:=\\d+|[^\\p{Pat_Syn}\\p{Pat_WS}]+)\\s*\\{/u,\n push: 'body',\n value: src => src.substring(0, src.indexOf('{')).trim()\n },\n end: {\n match: /\\s*\\}/u,\n pop: 1\n }\n }\n };\n exports.lexer = moo_1.default.states(exports.states);\n })(lexer);\n\n /**\n * An AST parser for ICU MessageFormat strings\n *\n * @packageDocumentation\n * @example\n * ```\n * import { parse } from '@messageformat/parser\n *\n * parse('So {wow}.')\n * [ { type: 'content', value: 'So ' },\n * { type: 'argument', arg: 'wow' },\n * { type: 'content', value: '.' } ]\n *\n *\n * parse('Such { thing }. { count, selectordinal, one {First} two {Second}' +\n * ' few {Third} other {#th} } word.')\n * [ { type: 'content', value: 'Such ' },\n * { type: 'argument', arg: 'thing' },\n * { type: 'content', value: '. ' },\n * { type: 'selectordinal',\n * arg: 'count',\n * cases: [\n * { key: 'one', tokens: [ { type: 'content', value: 'First' } ] },\n * { key: 'two', tokens: [ { type: 'content', value: 'Second' } ] },\n * { key: 'few', tokens: [ { type: 'content', value: 'Third' } ] },\n * { key: 'other',\n * tokens: [ { type: 'octothorpe' }, { type: 'content', value: 'th' } ] }\n * ] },\n * { type: 'content', value: ' word.' } ]\n *\n *\n * parse('Many{type,select,plural{ numbers}selectordinal{ counting}' +\n * 'select{ choices}other{ some {type}}}.')\n * [ { type: 'content', value: 'Many' },\n * { type: 'select',\n * arg: 'type',\n * cases: [\n * { key: 'plural', tokens: [ { type: 'content', value: 'numbers' } ] },\n * { key: 'selectordinal', tokens: [ { type: 'content', value: 'counting' } ] },\n * { key: 'select', tokens: [ { type: 'content', value: 'choices' } ] },\n * { key: 'other',\n * tokens: [ { type: 'content', value: 'some ' }, { type: 'argument', arg: 'type' } ] }\n * ] },\n * { type: 'content', value: '.' } ]\n *\n *\n * parse('{Such compliance')\n * // ParseError: invalid syntax at line 1 col 7:\n * //\n * // {Such compliance\n * // ^\n *\n *\n * const msg = '{words, plural, zero{No words} one{One word} other{# words}}'\n * parse(msg)\n * [ { type: 'plural',\n * arg: 'words',\n * cases: [\n * { key: 'zero', tokens: [ { type: 'content', value: 'No words' } ] },\n * { key: 'one', tokens: [ { type: 'content', value: 'One word' } ] },\n * { key: 'other',\n * tokens: [ { type: 'octothorpe' }, { type: 'content', value: ' words' } ] }\n * ] } ]\n *\n *\n * parse(msg, { cardinal: [ 'one', 'other' ], ordinal: [ 'one', 'two', 'few', 'other' ] })\n * // ParseError: The plural case zero is not valid in this locale at line 1 col 17:\n * //\n * // {words, plural, zero{\n * // ^\n * ```\n */\n Object.defineProperty(parser, \"__esModule\", {\n value: true\n });\n var parse_1 = parser.parse = parser.ParseError = void 0;\n const lexer_js_1 = lexer;\n const getContext = lt => ({\n offset: lt.offset,\n line: lt.line,\n col: lt.col,\n text: lt.text,\n lineBreaks: lt.lineBreaks\n });\n const isSelectType = type => type === 'plural' || type === 'select' || type === 'selectordinal';\n function strictArgStyleParam(lt, param) {\n let value = '';\n let text = '';\n for (const p of param) {\n const pText = p.ctx.text;\n text += pText;\n switch (p.type) {\n case 'content':\n value += p.value;\n break;\n case 'argument':\n case 'function':\n case 'octothorpe':\n value += pText;\n break;\n default:\n throw new ParseError(lt, `Unsupported part in strict mode function arg style: ${pText}`);\n }\n }\n const c = {\n type: 'content',\n value: value.trim(),\n ctx: Object.assign({}, param[0].ctx, {\n text\n })\n };\n return [c];\n }\n const strictArgTypes = ['number', 'date', 'time', 'spellout', 'ordinal', 'duration'];\n const defaultPluralKeys = ['zero', 'one', 'two', 'few', 'many', 'other'];\n /**\n * Thrown by {@link parse} on error\n *\n * @public\n */\n class ParseError extends Error {\n /** @internal */\n constructor(lt, msg) {\n super(lexer_js_1.lexer.formatError(lt, msg));\n }\n }\n parser.ParseError = ParseError;\n class Parser {\n constructor(src, opt) {\n var _a, _b, _c, _d;\n this.lexer = lexer_js_1.lexer.reset(src);\n this.cardinalKeys = (_a = opt === null || opt === void 0 ? void 0 : opt.cardinal) !== null && _a !== void 0 ? _a : defaultPluralKeys;\n this.ordinalKeys = (_b = opt === null || opt === void 0 ? void 0 : opt.ordinal) !== null && _b !== void 0 ? _b : defaultPluralKeys;\n this.strict = (_c = opt === null || opt === void 0 ? void 0 : opt.strict) !== null && _c !== void 0 ? _c : false;\n this.strictPluralKeys = (_d = opt === null || opt === void 0 ? void 0 : opt.strictPluralKeys) !== null && _d !== void 0 ? _d : true;\n }\n parse() {\n return this.parseBody(false, true);\n }\n checkSelectKey(lt, type, key) {\n if (key[0] === '=') {\n if (type === 'select') throw new ParseError(lt, `The case ${key} is not valid with select`);\n } else if (type !== 'select') {\n const keys = type === 'plural' ? this.cardinalKeys : this.ordinalKeys;\n if (this.strictPluralKeys && keys.length > 0 && !keys.includes(key)) {\n const msg = `The ${type} case ${key} is not valid in this locale`;\n throw new ParseError(lt, msg);\n }\n }\n }\n parseSelect(_ref, inPlural, ctx, type) {\n let {\n value: arg\n } = _ref;\n const sel = {\n type,\n arg,\n cases: [],\n ctx\n };\n if (type === 'plural' || type === 'selectordinal') inPlural = true;else if (this.strict) inPlural = false;\n for (const lt of this.lexer) {\n switch (lt.type) {\n case 'offset':\n if (type === 'select') throw new ParseError(lt, 'Unexpected plural offset for select');\n if (sel.cases.length > 0) throw new ParseError(lt, 'Plural offset must be set before cases');\n sel.pluralOffset = Number(lt.value);\n ctx.text += lt.text;\n ctx.lineBreaks += lt.lineBreaks;\n break;\n case 'case':\n {\n this.checkSelectKey(lt, type, lt.value);\n sel.cases.push({\n key: lt.value,\n tokens: this.parseBody(inPlural),\n ctx: getContext(lt)\n });\n break;\n }\n case 'end':\n return sel;\n /* istanbul ignore next: never happens */\n default:\n throw new ParseError(lt, `Unexpected lexer token: ${lt.type}`);\n }\n }\n throw new ParseError(null, 'Unexpected message end');\n }\n parseArgToken(lt, inPlural) {\n const ctx = getContext(lt);\n const argType = this.lexer.next();\n if (!argType) throw new ParseError(null, 'Unexpected message end');\n ctx.text += argType.text;\n ctx.lineBreaks += argType.lineBreaks;\n if (this.strict && (argType.type === 'func-simple' || argType.type === 'func-args') && !strictArgTypes.includes(argType.value)) {\n const msg = `Invalid strict mode function arg type: ${argType.value}`;\n throw new ParseError(lt, msg);\n }\n switch (argType.type) {\n case 'end':\n return {\n type: 'argument',\n arg: lt.value,\n ctx\n };\n case 'func-simple':\n {\n const end = this.lexer.next();\n if (!end) throw new ParseError(null, 'Unexpected message end');\n /* istanbul ignore if: never happens */\n if (end.type !== 'end') throw new ParseError(end, `Unexpected lexer token: ${end.type}`);\n ctx.text += end.text;\n if (isSelectType(argType.value.toLowerCase())) throw new ParseError(argType, `Invalid type identifier: ${argType.value}`);\n return {\n type: 'function',\n arg: lt.value,\n key: argType.value,\n ctx\n };\n }\n case 'func-args':\n {\n if (isSelectType(argType.value.toLowerCase())) {\n const msg = `Invalid type identifier: ${argType.value}`;\n throw new ParseError(argType, msg);\n }\n let param = this.parseBody(this.strict ? false : inPlural);\n if (this.strict && param.length > 0) param = strictArgStyleParam(lt, param);\n return {\n type: 'function',\n arg: lt.value,\n key: argType.value,\n param,\n ctx\n };\n }\n case 'select':\n /* istanbul ignore else: never happens */\n if (isSelectType(argType.value)) return this.parseSelect(lt, inPlural, ctx, argType.value);else throw new ParseError(argType, `Unexpected select type ${argType.value}`);\n /* istanbul ignore next: never happens */\n default:\n throw new ParseError(argType, `Unexpected lexer token: ${argType.type}`);\n }\n }\n parseBody(inPlural, atRoot) {\n const tokens = [];\n let content = null;\n for (const lt of this.lexer) {\n if (lt.type === 'argument') {\n if (content) content = null;\n tokens.push(this.parseArgToken(lt, inPlural));\n } else if (lt.type === 'octothorpe' && inPlural) {\n if (content) content = null;\n tokens.push({\n type: 'octothorpe',\n ctx: getContext(lt)\n });\n } else if (lt.type === 'end' && !atRoot) {\n return tokens;\n } else {\n let value = lt.value;\n if (!inPlural && lt.type === 'quoted' && value[0] === '#') {\n if (value.includes('{')) {\n const errMsg = `Unsupported escape pattern: ${value}`;\n throw new ParseError(lt, errMsg);\n }\n value = lt.text;\n }\n if (content) {\n content.value += value;\n content.ctx.text += lt.text;\n content.ctx.lineBreaks += lt.lineBreaks;\n } else {\n content = {\n type: 'content',\n value,\n ctx: getContext(lt)\n };\n tokens.push(content);\n }\n }\n }\n if (atRoot) return tokens;\n throw new ParseError(null, 'Unexpected message end');\n }\n }\n /**\n * Parse an input string into an array of tokens\n *\n * @public\n * @remarks\n * The parser only supports the default `DOUBLE_OPTIONAL`\n * {@link http://www.icu-project.org/apiref/icu4c/messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b | apostrophe mode}.\n */\n function parse(src) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const parser = new Parser(src, options);\n return parser.parse();\n }\n parse_1 = parser.parse = parse;\n\n /**\n * A set of utility functions that are called by the compiled Javascript\n * functions, these are included locally in the output of {@link MessageFormat.compile compile()}.\n */\n /** @private */\n function _nf$1(lc) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return _nf$1[lc] || (_nf$1[lc] = new Intl.NumberFormat(lc));\n }\n /**\n * Utility function for `#` in plural rules\n *\n * @param lc The current locale\n * @param value The value to operate on\n * @param offset An offset, set by the surrounding context\n * @returns The result of applying the offset to the input value\n */\n function number(lc, value, offset) {\n return _nf$1(lc).format(value - offset);\n }\n /**\n * Strict utility function for `#` in plural rules\n *\n * Will throw an Error if `value` or `offset` are non-numeric.\n *\n * @param lc The current locale\n * @param value The value to operate on\n * @param offset An offset, set by the surrounding context\n * @param name The name of the argument, used for error reporting\n * @returns The result of applying the offset to the input value\n */\n function strictNumber(lc, value, offset, name) {\n var n = value - offset;\n if (isNaN(n)) throw new Error('`' + name + '` or its offset is not a number');\n return _nf$1(lc).format(n);\n }\n /**\n * Utility function for `{N, plural|selectordinal, ...}`\n *\n * @param value The key to use to find a pluralization rule\n * @param offset An offset to apply to `value`\n * @param lcfunc A locale function from `pluralFuncs`\n * @param data The object from which results are looked up\n * @param isOrdinal If true, use ordinal rather than cardinal rules\n * @returns The result of the pluralization\n */\n function plural(value, offset, lcfunc, data, isOrdinal) {\n if ({}.hasOwnProperty.call(data, value)) return data[value];\n if (offset) value -= offset;\n var key = lcfunc(value, isOrdinal);\n return key in data ? data[key] : data.other;\n }\n /**\n * Utility function for `{N, select, ...}`\n *\n * @param value The key to use to find a selection\n * @param data The object from which results are looked up\n * @returns The result of the select statement\n */\n function select(value, data) {\n return {}.hasOwnProperty.call(data, value) ? data[value] : data.other;\n }\n /**\n * Checks that all required arguments are set to defined values\n *\n * Throws on failure; otherwise returns undefined\n *\n * @param keys The required keys\n * @param data The data object being checked\n */\n function reqArgs(keys, data) {\n for (var i = 0; i < keys.length; ++i) if (!data || data[keys[i]] === undefined) throw new Error(\"Message requires argument '\".concat(keys[i], \"'\"));\n }\n var Runtime = /*#__PURE__*/Object.freeze({\n __proto__: null,\n _nf: _nf$1,\n number: number,\n plural: plural,\n reqArgs: reqArgs,\n select: select,\n strictNumber: strictNumber\n });\n\n /**\n * Represent a date as a short/default/long/full string\n *\n * @param value Either a Unix epoch time in milliseconds, or a string value\n * representing a date. Parsed with `new Date(value)`\n *\n * @example\n * ```js\n * var mf = new MessageFormat(['en', 'fi']);\n *\n * mf.compile('Today is {T, date}')({ T: Date.now() })\n * // 'Today is Feb 21, 2016'\n *\n * mf.compile('Tänään on {T, date}', 'fi')({ T: Date.now() })\n * // 'Tänään on 21. helmikuuta 2016'\n *\n * mf.compile('Unix time started on {T, date, full}')({ T: 0 })\n * // 'Unix time started on Thursday, January 1, 1970'\n *\n * var cf = mf.compile('{sys} became operational on {d0, date, short}');\n * cf({ sys: 'HAL 9000', d0: '12 January 1999' })\n * // 'HAL 9000 became operational on 1/12/1999'\n * ```\n */\n function date(value, lc, size) {\n var o = {\n day: 'numeric',\n month: 'short',\n year: 'numeric'\n };\n /* eslint-disable no-fallthrough */\n switch (size) {\n case 'full':\n o.weekday = 'long';\n case 'long':\n o.month = 'long';\n break;\n case 'short':\n o.month = 'numeric';\n }\n return new Date(value).toLocaleDateString(lc, o);\n }\n\n /**\n * Represent a duration in seconds as a string\n *\n * @param value A finite number, or its string representation\n * @return Includes one or two `:` separators, and matches the pattern\n * `hhhh:mm:ss`, possibly with a leading `-` for negative values and a\n * trailing `.sss` part for non-integer input\n *\n * @example\n * ```js\n * var mf = new MessageFormat();\n *\n * mf.compile('It has been {D, duration}')({ D: 123 })\n * // 'It has been 2:03'\n *\n * mf.compile('Countdown: {D, duration}')({ D: -151200.42 })\n * // 'Countdown: -42:00:00.420'\n * ```\n */\n function duration(value) {\n if (typeof value !== 'number') value = Number(value);\n if (!isFinite(value)) return String(value);\n var sign = '';\n if (value < 0) {\n sign = '-';\n value = Math.abs(value);\n } else {\n value = Number(value);\n }\n var sec = value % 60;\n var parts = [Math.round(sec) === sec ? sec : sec.toFixed(3)];\n if (value < 60) {\n parts.unshift(0); // at least one : is required\n } else {\n value = Math.round((value - Number(parts[0])) / 60);\n parts.unshift(value % 60); // minutes\n if (value >= 60) {\n value = Math.round((value - Number(parts[0])) / 60);\n parts.unshift(value); // hours\n }\n }\n var first = parts.shift();\n return sign + first + ':' + parts.map(function (n) {\n return Number(n) < 10 ? '0' + String(n) : String(n);\n }).join(':');\n }\n\n /**\n * Represent a number as an integer, percent or currency value\n *\n * Available in MessageFormat strings as `{VAR, number, integer|percent|currency}`.\n * Internally, calls Intl.NumberFormat with appropriate parameters. `currency` will\n * default to USD; to change, set `MessageFormat#currency` to the appropriate\n * three-letter currency code, or use the `currency:EUR` form of the argument.\n *\n * @example\n * ```js\n * var mf = new MessageFormat('en', { currency: 'EUR'});\n *\n * mf.compile('{N} is almost {N, number, integer}')({ N: 3.14 })\n * // '3.14 is almost 3'\n *\n * mf.compile('{P, number, percent} complete')({ P: 0.99 })\n * // '99% complete'\n *\n * mf.compile('The total is {V, number, currency}.')({ V: 5.5 })\n * // 'The total is €5.50.'\n *\n * mf.compile('The total is {V, number, currency:GBP}.')({ V: 5.5 })\n * // 'The total is £5.50.'\n * ```\n */\n var _nf = {};\n function nf(lc, opt) {\n var key = String(lc) + JSON.stringify(opt);\n if (!_nf[key]) _nf[key] = new Intl.NumberFormat(lc, opt);\n return _nf[key];\n }\n function numberFmt(value, lc, arg, defaultCurrency) {\n var _a = arg && arg.split(':') || [],\n type = _a[0],\n currency = _a[1];\n var opt = {\n integer: {\n maximumFractionDigits: 0\n },\n percent: {\n style: 'percent'\n },\n currency: {\n style: 'currency',\n currency: currency && currency.trim() || defaultCurrency,\n minimumFractionDigits: 2,\n maximumFractionDigits: 2\n }\n };\n return nf(lc, opt[type] || {}).format(value);\n }\n var numberCurrency = function (value, lc, arg) {\n return nf(lc, {\n style: 'currency',\n currency: arg,\n minimumFractionDigits: 2,\n maximumFractionDigits: 2\n }).format(value);\n };\n var numberInteger = function (value, lc) {\n return nf(lc, {\n maximumFractionDigits: 0\n }).format(value);\n };\n var numberPercent = function (value, lc) {\n return nf(lc, {\n style: 'percent'\n }).format(value);\n };\n\n /**\n * Represent a time as a short/default/long string\n *\n * @param value Either a Unix epoch time in milliseconds, or a string value\n * representing a date. Parsed with `new Date(value)`\n *\n * @example\n * ```js\n * var mf = new MessageFormat(['en', 'fi']);\n *\n * mf.compile('The time is now {T, time}')({ T: Date.now() })\n * // 'The time is now 11:26:35 PM'\n *\n * mf.compile('Kello on nyt {T, time}', 'fi')({ T: Date.now() })\n * // 'Kello on nyt 23.26.35'\n *\n * var cf = mf.compile('The Eagle landed at {T, time, full} on {T, date, full}');\n * cf({ T: '1969-07-20 20:17:40 UTC' })\n * // 'The Eagle landed at 10:17:40 PM GMT+2 on Sunday, July 20, 1969'\n * ```\n */\n function time(value, lc, size) {\n var o = {\n second: 'numeric',\n minute: 'numeric',\n hour: 'numeric'\n };\n /* eslint-disable no-fallthrough */\n switch (size) {\n case 'full':\n case 'long':\n o.timeZoneName = 'short';\n break;\n case 'short':\n delete o.second;\n }\n return new Date(value).toLocaleTimeString(lc, o);\n }\n var Formatters = /*#__PURE__*/Object.freeze({\n __proto__: null,\n date: date,\n duration: duration,\n numberCurrency: numberCurrency,\n numberFmt: numberFmt,\n numberInteger: numberInteger,\n numberPercent: numberPercent,\n time: time\n });\n const ES3 = {\n break: true,\n continue: true,\n delete: true,\n else: true,\n for: true,\n function: true,\n if: true,\n in: true,\n new: true,\n return: true,\n this: true,\n typeof: true,\n var: true,\n void: true,\n while: true,\n with: true,\n case: true,\n catch: true,\n default: true,\n do: true,\n finally: true,\n instanceof: true,\n switch: true,\n throw: true,\n try: true\n };\n const ESnext = {\n // in addition to reservedES3\n await: true,\n debugger: true,\n class: true,\n enum: true,\n extends: true,\n super: true,\n const: true,\n export: true,\n import: true,\n null: true,\n true: true,\n false: true,\n implements: true,\n let: true,\n private: true,\n public: true,\n yield: true,\n interface: true,\n package: true,\n protected: true,\n static: true\n };\n var reserved = {\n ES3,\n ESnext\n };\n var reserved$1 = /*@__PURE__*/getDefaultExportFromCjs(reserved);\n\n // from https://werxltd.com/wp/2010/05/13/javascript-implementation-of-javas-string-hashcode-method/\n function hashCode(str) {\n let hash = 0;\n for (let i = 0; i < str.length; ++i) {\n const char = str.charCodeAt(i);\n hash = (hash << 5) - hash + char;\n hash |= 0; // Convert to 32bit integer\n }\n return hash;\n }\n function identifier(key, unique) {\n if (unique) key += ' ' + hashCode(key).toString(36);\n const id = key.trim().replace(/\\W+/g, '_');\n return reserved$1.ES3[id] || reserved$1.ESnext[id] || /^\\d/.test(id) ? '_' + id : id;\n }\n function property(obj, key) {\n if (/^[A-Z_$][0-9A-Z_$]*$/i.test(key) && !reserved$1.ES3[key]) {\n return obj ? obj + '.' + key : key;\n } else {\n const jkey = JSON.stringify(key);\n return obj ? obj + '[' + jkey + ']' : jkey;\n }\n }\n var rtlLanguages = ['ar', 'ckb', 'fa', 'he', 'ks($|[^bfh])', 'lrc', 'mzn', 'pa-Arab', 'ps', 'ug', 'ur', 'uz-Arab', 'yi'];\n var rtlRegExp = new RegExp('^' + rtlLanguages.join('|^'));\n function biDiMarkText(text, locale) {\n var isLocaleRTL = rtlRegExp.test(locale);\n var mark = JSON.stringify(isLocaleRTL ? '\\u200F' : '\\u200E');\n return \"\".concat(mark, \" + \").concat(text, \" + \").concat(mark);\n }\n var RUNTIME_MODULE = '@messageformat/runtime';\n var CARDINAL_MODULE = '@messageformat/runtime/lib/cardinals';\n var PLURAL_MODULE = '@messageformat/runtime/lib/plurals';\n var FORMATTER_MODULE = '@messageformat/runtime/lib/formatters';\n var Compiler = function () {\n function Compiler(options) {\n this.arguments = [];\n this.runtime = {};\n this.options = options;\n }\n Compiler.prototype.compile = function (src, plural, plurals) {\n var e_1, _a;\n var _this = this;\n var _b = this.options,\n localeCodeFromKey = _b.localeCodeFromKey,\n requireAllArguments = _b.requireAllArguments,\n strict = _b.strict,\n strictPluralKeys = _b.strictPluralKeys;\n if (typeof src === 'object') {\n var result = {};\n try {\n for (var _c = __values(Object.keys(src)), _d = _c.next(); !_d.done; _d = _c.next()) {\n var key = _d.value;\n var lc = localeCodeFromKey ? localeCodeFromKey(key) : key;\n var pl = plurals && lc && plurals[lc] || plural;\n result[key] = this.compile(src[key], pl, plurals);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n return result;\n }\n this.plural = plural;\n var parserOptions = {\n cardinal: plural.cardinals,\n ordinal: plural.ordinals,\n strict: strict,\n strictPluralKeys: strictPluralKeys\n };\n this.arguments = [];\n var r = parse_1(src, parserOptions).map(function (token) {\n return _this.token(token, null);\n });\n var hasArgs = this.arguments.length > 0;\n var res = this.concatenate(r, true);\n if (requireAllArguments && hasArgs) {\n this.setRuntimeFn('reqArgs');\n var reqArgs = JSON.stringify(this.arguments);\n return \"(d) => { reqArgs(\".concat(reqArgs, \", d); return \").concat(res, \"; }\");\n }\n return \"(\".concat(hasArgs ? 'd' : '', \") => \").concat(res);\n };\n Compiler.prototype.cases = function (token, pluralToken) {\n var _this = this;\n var needOther = true;\n var r = token.cases.map(function (_a) {\n var key = _a.key,\n tokens = _a.tokens;\n if (key === 'other') needOther = false;\n var s = tokens.map(function (tok) {\n return _this.token(tok, pluralToken);\n });\n return \"\".concat(property(null, key.replace(/^=/, '')), \": \").concat(_this.concatenate(s, false));\n });\n if (needOther) {\n var type = token.type;\n var _a = this.plural,\n cardinals = _a.cardinals,\n ordinals = _a.ordinals;\n if (type === 'select' || type === 'plural' && cardinals.includes('other') || type === 'selectordinal' && ordinals.includes('other')) throw new Error(\"No 'other' form found in \".concat(JSON.stringify(token)));\n }\n return \"{ \".concat(r.join(', '), \" }\");\n };\n Compiler.prototype.concatenate = function (tokens, root) {\n var asValues = this.options.returnType === 'values';\n return asValues && (root || tokens.length > 1) ? '[' + tokens.join(', ') + ']' : tokens.join(' + ') || '\"\"';\n };\n Compiler.prototype.token = function (token, pluralToken) {\n if (token.type === 'content') return JSON.stringify(token.value);\n var _a = this.plural,\n id = _a.id,\n lc = _a.lc;\n var args, fn;\n if ('arg' in token) {\n this.arguments.push(token.arg);\n args = [property('d', token.arg)];\n } else args = [];\n switch (token.type) {\n case 'argument':\n return this.options.biDiSupport ? biDiMarkText(String(args[0]), lc) : String(args[0]);\n case 'select':\n fn = 'select';\n if (pluralToken && this.options.strict) pluralToken = null;\n args.push(this.cases(token, pluralToken));\n this.setRuntimeFn('select');\n break;\n case 'selectordinal':\n fn = 'plural';\n args.push(token.pluralOffset || 0, id, this.cases(token, token), 1);\n this.setLocale(id, true);\n this.setRuntimeFn('plural');\n break;\n case 'plural':\n fn = 'plural';\n args.push(token.pluralOffset || 0, id, this.cases(token, token));\n this.setLocale(id, false);\n this.setRuntimeFn('plural');\n break;\n case 'function':\n {\n var formatter = this.options.customFormatters[token.key];\n var isModuleFn = formatter && 'module' in formatter && typeof formatter.module === 'function';\n if (!formatter) {\n if (token.key === 'date') {\n fn = this.setDateFormatter(token, args, pluralToken);\n break;\n } else if (token.key === 'number') {\n fn = this.setNumberFormatter(token, args, pluralToken);\n break;\n }\n }\n args.push(JSON.stringify(this.plural.locale));\n if (token.param) {\n if (pluralToken && this.options.strict) pluralToken = null;\n var arg = this.getFormatterArg(token, pluralToken);\n if (arg) args.push(arg);\n }\n fn = isModuleFn ? identifier(\"\".concat(token.key, \"__\").concat(this.plural.locale)) : token.key;\n this.setFormatter(fn, token.key);\n break;\n }\n case 'octothorpe':\n if (!pluralToken) return '\"#\"';\n args = [JSON.stringify(this.plural.locale), property('d', pluralToken.arg), pluralToken.pluralOffset || 0];\n if (this.options.strict) {\n fn = 'strictNumber';\n args.push(JSON.stringify(pluralToken.arg));\n this.setRuntimeFn('strictNumber');\n } else {\n fn = 'number';\n this.setRuntimeFn('number');\n }\n break;\n }\n if (!fn) throw new Error('Parser error for token ' + JSON.stringify(token));\n return \"\".concat(fn, \"(\").concat(args.join(', '), \")\");\n };\n Compiler.prototype.runtimeIncludes = function (key, type) {\n if (identifier(key) !== key) throw new SyntaxError(\"Reserved word used as \".concat(type, \" identifier: \").concat(key));\n var prev = this.runtime[key];\n if (!prev || prev.type === type) return prev;\n throw new TypeError(\"Cannot override \".concat(prev.type, \" runtime function as \").concat(type, \": \").concat(key));\n };\n Compiler.prototype.setLocale = function (key, ord) {\n var prev = this.runtimeIncludes(key, 'locale');\n var _a = this.plural,\n getCardinal = _a.getCardinal,\n getPlural = _a.getPlural,\n isDefault = _a.isDefault;\n var pf, module, toString;\n if (!ord && isDefault && getCardinal) {\n if (prev) return;\n pf = function (n) {\n return getCardinal(n);\n };\n module = CARDINAL_MODULE;\n toString = function () {\n return String(getCardinal);\n };\n } else {\n if (prev && (!isDefault || prev.module === PLURAL_MODULE)) return;\n pf = function (n, ord) {\n return getPlural(n, ord);\n };\n module = isDefault ? PLURAL_MODULE : getPlural.module || null;\n toString = function () {\n return String(getPlural);\n };\n }\n this.runtime[key] = Object.assign(pf, {\n id: key,\n module: module,\n toString: toString,\n type: 'locale'\n });\n };\n Compiler.prototype.setRuntimeFn = function (key) {\n if (this.runtimeIncludes(key, 'runtime')) return;\n this.runtime[key] = Object.assign(Runtime[key], {\n id: key,\n module: RUNTIME_MODULE,\n type: 'runtime'\n });\n };\n Compiler.prototype.getFormatterArg = function (_a, pluralToken) {\n var e_2, _b, e_3, _c;\n var _this = this;\n var key = _a.key,\n param = _a.param;\n var fmt = this.options.customFormatters[key] || isFormatterKey(key) && Formatters[key];\n if (!fmt || !param) return null;\n var argShape = 'arg' in fmt && fmt.arg || 'string';\n if (argShape === 'options') {\n var value = '';\n try {\n for (var param_1 = __values(param), param_1_1 = param_1.next(); !param_1_1.done; param_1_1 = param_1.next()) {\n var tok = param_1_1.value;\n if (tok.type === 'content') value += tok.value;else throw new SyntaxError(\"Expected literal options for \".concat(key, \" formatter\"));\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (param_1_1 && !param_1_1.done && (_b = param_1.return)) _b.call(param_1);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n var options = {};\n try {\n for (var _d = __values(value.split(',')), _e = _d.next(); !_e.done; _e = _d.next()) {\n var pair = _e.value;\n var keyEnd = pair.indexOf(':');\n if (keyEnd === -1) options[pair.trim()] = null;else {\n var k = pair.substring(0, keyEnd).trim();\n var v = pair.substring(keyEnd + 1).trim();\n if (v === 'true') options[k] = true;else if (v === 'false') options[k] = false;else if (v === 'null') options[k] = null;else {\n var n = Number(v);\n options[k] = Number.isFinite(n) ? n : v;\n }\n }\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_e && !_e.done && (_c = _d.return)) _c.call(_d);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n return JSON.stringify(options);\n } else {\n var parts = param.map(function (tok) {\n return _this.token(tok, pluralToken);\n });\n if (argShape === 'raw') return \"[\".concat(parts.join(', '), \"]\");\n var s = parts.join(' + ');\n return s ? \"(\".concat(s, \").trim()\") : '\"\"';\n }\n };\n Compiler.prototype.setFormatter = function (key, parentKey) {\n if (this.runtimeIncludes(key, 'formatter')) return;\n var cf = this.options.customFormatters[parentKey || key];\n if (cf) {\n var cfo_1 = typeof cf === 'function' ? {\n formatter: cf\n } : cf;\n this.runtime[key] = Object.assign(cfo_1.formatter.bind({}), __assign(__assign({}, cfo_1.formatter.prototype), {\n toString: function () {\n return String(cfo_1.formatter);\n }\n }), {\n type: 'formatter'\n }, 'module' in cf && cf.module && cf.id ? {\n id: identifier(cf.id),\n module: typeof cf.module === 'function' ? cf.module(this.plural.locale) : cf.module\n } : {\n id: null,\n module: null\n });\n } else if (isFormatterKey(key)) {\n this.runtime[key] = Object.assign(Formatters[key], {\n type: 'formatter'\n }, {\n id: key,\n module: FORMATTER_MODULE\n });\n } else {\n throw new Error(\"Formatting function not found: \".concat(key));\n }\n };\n Compiler.prototype.setDateFormatter = function (_a, args, plural) {\n var _this = this;\n var param = _a.param;\n var locale = this.plural.locale;\n var argStyle = param && param.length === 1 && param[0];\n if (argStyle && argStyle.type === 'content' && /^\\s*::/.test(argStyle.value)) {\n var argSkeletonText_1 = argStyle.value.trim().substr(2);\n var key = identifier(\"date_\".concat(locale, \"_\").concat(argSkeletonText_1), true);\n if (!this.runtimeIncludes(key, 'formatter')) {\n var fmt = getDateFormatter(locale, argSkeletonText_1);\n this.runtime[key] = Object.assign(fmt, {\n id: key,\n module: null,\n toString: function () {\n return getDateFormatterSource(locale, argSkeletonText_1);\n },\n type: 'formatter'\n });\n }\n return key;\n }\n args.push(JSON.stringify(locale));\n if (param && param.length > 0) {\n if (plural && this.options.strict) plural = null;\n var s = param.map(function (tok) {\n return _this.token(tok, plural);\n });\n args.push('(' + (s.join(' + ') || '\"\"') + ').trim()');\n }\n this.setFormatter('date');\n return 'date';\n };\n Compiler.prototype.setNumberFormatter = function (_a, args, plural) {\n var _this = this;\n var param = _a.param;\n var locale = this.plural.locale;\n if (!param || param.length === 0) {\n args.unshift(JSON.stringify(locale));\n args.push('0');\n this.setRuntimeFn('number');\n return 'number';\n }\n args.push(JSON.stringify(locale));\n if (param.length === 1 && param[0].type === 'content') {\n var fmtArg_1 = param[0].value.trim();\n switch (fmtArg_1) {\n case 'currency':\n args.push(JSON.stringify(this.options.currency));\n this.setFormatter('numberCurrency');\n return 'numberCurrency';\n case 'integer':\n this.setFormatter('numberInteger');\n return 'numberInteger';\n case 'percent':\n this.setFormatter('numberPercent');\n return 'numberPercent';\n }\n var cm = fmtArg_1.match(/^currency:([A-Z]+)$/);\n if (cm) {\n args.push(JSON.stringify(cm[1]));\n this.setFormatter('numberCurrency');\n return 'numberCurrency';\n }\n var key = identifier(\"number_\".concat(locale, \"_\").concat(fmtArg_1), true);\n if (!this.runtimeIncludes(key, 'formatter')) {\n var currency_1 = this.options.currency;\n var fmt = getNumberFormatter(locale, fmtArg_1, currency_1);\n this.runtime[key] = Object.assign(fmt, {\n id: null,\n module: null,\n toString: function () {\n return getNumberFormatterSource(locale, fmtArg_1, currency_1);\n },\n type: 'formatter'\n });\n }\n return key;\n }\n if (plural && this.options.strict) plural = null;\n var s = param.map(function (tok) {\n return _this.token(tok, plural);\n });\n args.push('(' + (s.join(' + ') || '\"\"') + ').trim()');\n args.push(JSON.stringify(this.options.currency));\n this.setFormatter('numberFmt');\n return 'numberFmt';\n };\n return Compiler;\n }();\n function isFormatterKey(key) {\n return key in Formatters;\n }\n const a$2 = n => n == 1 ? 'one' : 'other';\n const b$2 = n => n == 0 || n == 1 ? 'one' : 'other';\n const c$2 = n => n >= 0 && n <= 1 ? 'one' : 'other';\n const d$2 = n => {\n const s = String(n).split('.'),\n v0 = !s[1];\n return n == 1 && v0 ? 'one' : 'other';\n };\n const e$1 = n => 'other';\n const f$2 = n => n == 1 ? 'one' : n == 2 ? 'two' : 'other';\n const af$2 = a$2;\n const ak$2 = b$2;\n const am$2 = c$2;\n const an$2 = a$2;\n const ar$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 99 ? 'many' : 'other';\n };\n const ars$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 99 ? 'many' : 'other';\n };\n const as$2 = c$2;\n const asa$2 = a$2;\n const ast$2 = d$2;\n const az$2 = a$2;\n const bal$2 = a$2;\n const be$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n return n10 == 1 && n100 != 11 ? 'one' : n10 >= 2 && n10 <= 4 && (n100 < 12 || n100 > 14) ? 'few' : t0 && n10 == 0 || n10 >= 5 && n10 <= 9 || n100 >= 11 && n100 <= 14 ? 'many' : 'other';\n };\n const bem$2 = a$2;\n const bez$2 = a$2;\n const bg$2 = a$2;\n const bho$2 = b$2;\n const bm$2 = e$1;\n const bn$2 = c$2;\n const bo$2 = e$1;\n const br$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n n1000000 = t0 && s[0].slice(-6);\n return n10 == 1 && n100 != 11 && n100 != 71 && n100 != 91 ? 'one' : n10 == 2 && n100 != 12 && n100 != 72 && n100 != 92 ? 'two' : (n10 == 3 || n10 == 4 || n10 == 9) && (n100 < 10 || n100 > 19) && (n100 < 70 || n100 > 79) && (n100 < 90 || n100 > 99) ? 'few' : n != 0 && t0 && n1000000 == 0 ? 'many' : 'other';\n };\n const brx$2 = a$2;\n const bs$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const ca$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const ce$2 = a$2;\n const ceb$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n f10 = f.slice(-1);\n return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';\n };\n const cgg$2 = a$2;\n const chr$2 = a$2;\n const ckb$2 = a$2;\n const cs$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1];\n return n == 1 && v0 ? 'one' : i >= 2 && i <= 4 && v0 ? 'few' : !v0 ? 'many' : 'other';\n };\n const cy$2 = n => n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n == 3 ? 'few' : n == 6 ? 'many' : 'other';\n const da$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n t0 = Number(s[0]) == n;\n return n == 1 || !t0 && (i == 0 || i == 1) ? 'one' : 'other';\n };\n const de$2 = d$2;\n const doi$2 = c$2;\n const dsb$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i100 = i.slice(-2),\n f100 = f.slice(-2);\n return v0 && i100 == 1 || f100 == 1 ? 'one' : v0 && i100 == 2 || f100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || f100 == 3 || f100 == 4 ? 'few' : 'other';\n };\n const dv$2 = a$2;\n const dz$2 = e$1;\n const ee$2 = a$2;\n const el$2 = a$2;\n const en$2 = d$2;\n const eo$2 = a$2;\n const es$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return n == 1 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const et$2 = d$2;\n const eu$2 = a$2;\n const fa$2 = c$2;\n const ff$2 = n => n >= 0 && n < 2 ? 'one' : 'other';\n const fi$2 = d$2;\n const fil$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n f10 = f.slice(-1);\n return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';\n };\n const fo$2 = a$2;\n const fr$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return n >= 0 && n < 2 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const fur$2 = a$2;\n const fy$2 = d$2;\n const ga$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n return n == 1 ? 'one' : n == 2 ? 'two' : t0 && n >= 3 && n <= 6 ? 'few' : t0 && n >= 7 && n <= 10 ? 'many' : 'other';\n };\n const gd$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n return n == 1 || n == 11 ? 'one' : n == 2 || n == 12 ? 'two' : t0 && n >= 3 && n <= 10 || t0 && n >= 13 && n <= 19 ? 'few' : 'other';\n };\n const gl$2 = d$2;\n const gsw$2 = a$2;\n const gu$2 = c$2;\n const guw$2 = b$2;\n const gv$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n return v0 && i10 == 1 ? 'one' : v0 && i10 == 2 ? 'two' : v0 && (i100 == 0 || i100 == 20 || i100 == 40 || i100 == 60 || i100 == 80) ? 'few' : !v0 ? 'many' : 'other';\n };\n const ha$2 = a$2;\n const haw$2 = a$2;\n const he$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1];\n return i == 1 && v0 || i == 0 && !v0 ? 'one' : i == 2 && v0 ? 'two' : 'other';\n };\n const hi$2 = c$2;\n const hnj$2 = e$1;\n const hr$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const hsb$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i100 = i.slice(-2),\n f100 = f.slice(-2);\n return v0 && i100 == 1 || f100 == 1 ? 'one' : v0 && i100 == 2 || f100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || f100 == 3 || f100 == 4 ? 'few' : 'other';\n };\n const hu$2 = a$2;\n const hy$2 = n => n >= 0 && n < 2 ? 'one' : 'other';\n const ia$2 = d$2;\n const id$2 = e$1;\n const ig$2 = e$1;\n const ii$2 = e$1;\n const io$2 = d$2;\n const is$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n t = (s[1] || '').replace(/0+$/, ''),\n t0 = Number(s[0]) == n,\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n return t0 && i10 == 1 && i100 != 11 || t % 10 == 1 && t % 100 != 11 ? 'one' : 'other';\n };\n const it$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const iu$2 = f$2;\n const ja$2 = e$1;\n const jbo$2 = e$1;\n const jgo$2 = a$2;\n const jmc$2 = a$2;\n const jv$2 = e$1;\n const jw$2 = e$1;\n const ka$2 = a$2;\n const kab$2 = n => n >= 0 && n < 2 ? 'one' : 'other';\n const kaj$2 = a$2;\n const kcg$2 = a$2;\n const kde$2 = e$1;\n const kea$2 = e$1;\n const kk$2 = a$2;\n const kkj$2 = a$2;\n const kl$2 = a$2;\n const km$2 = e$1;\n const kn$2 = c$2;\n const ko$2 = e$1;\n const ks$2 = a$2;\n const ksb$2 = a$2;\n const ksh$2 = n => n == 0 ? 'zero' : n == 1 ? 'one' : 'other';\n const ku$2 = a$2;\n const kw$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2),\n n1000 = t0 && s[0].slice(-3),\n n100000 = t0 && s[0].slice(-5),\n n1000000 = t0 && s[0].slice(-6);\n return n == 0 ? 'zero' : n == 1 ? 'one' : n100 == 2 || n100 == 22 || n100 == 42 || n100 == 62 || n100 == 82 || t0 && n1000 == 0 && (n100000 >= 1000 && n100000 <= 20000 || n100000 == 40000 || n100000 == 60000 || n100000 == 80000) || n != 0 && n1000000 == 100000 ? 'two' : n100 == 3 || n100 == 23 || n100 == 43 || n100 == 63 || n100 == 83 ? 'few' : n != 1 && (n100 == 1 || n100 == 21 || n100 == 41 || n100 == 61 || n100 == 81) ? 'many' : 'other';\n };\n const ky$2 = a$2;\n const lag$2 = n => {\n const s = String(n).split('.'),\n i = s[0];\n return n == 0 ? 'zero' : (i == 0 || i == 1) && n != 0 ? 'one' : 'other';\n };\n const lb$2 = a$2;\n const lg$2 = a$2;\n const lij$2 = d$2;\n const lkt$2 = e$1;\n const ln$2 = b$2;\n const lo$2 = e$1;\n const lt$2 = n => {\n const s = String(n).split('.'),\n f = s[1] || '',\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n return n10 == 1 && (n100 < 11 || n100 > 19) ? 'one' : n10 >= 2 && n10 <= 9 && (n100 < 11 || n100 > 19) ? 'few' : f != 0 ? 'many' : 'other';\n };\n const lv$2 = n => {\n const s = String(n).split('.'),\n f = s[1] || '',\n v = f.length,\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n f100 = f.slice(-2),\n f10 = f.slice(-1);\n return t0 && n10 == 0 || n100 >= 11 && n100 <= 19 || v == 2 && f100 >= 11 && f100 <= 19 ? 'zero' : n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11 || v != 2 && f10 == 1 ? 'one' : 'other';\n };\n const mas$2 = a$2;\n const mg$2 = b$2;\n const mgo$2 = a$2;\n const mk$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : 'other';\n };\n const ml$2 = a$2;\n const mn$2 = a$2;\n const mo$2 = n => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n return n == 1 && v0 ? 'one' : !v0 || n == 0 || n != 1 && n100 >= 1 && n100 <= 19 ? 'few' : 'other';\n };\n const mr$2 = a$2;\n const ms$2 = e$1;\n const mt$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n return n == 1 ? 'one' : n == 2 ? 'two' : n == 0 || n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 19 ? 'many' : 'other';\n };\n const my$2 = e$1;\n const nah$2 = a$2;\n const naq$2 = f$2;\n const nb$2 = a$2;\n const nd$2 = a$2;\n const ne$2 = a$2;\n const nl$2 = d$2;\n const nn$2 = a$2;\n const nnh$2 = a$2;\n const no$2 = a$2;\n const nqo$2 = e$1;\n const nr$2 = a$2;\n const nso$2 = b$2;\n const ny$2 = a$2;\n const nyn$2 = a$2;\n const om$2 = a$2;\n const or$2 = a$2;\n const os$2 = a$2;\n const osa$2 = e$1;\n const pa$2 = b$2;\n const pap$2 = a$2;\n const pcm$2 = c$2;\n const pl$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n return n == 1 && v0 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i != 1 && (i10 == 0 || i10 == 1) || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 12 && i100 <= 14 ? 'many' : 'other';\n };\n const prg$2 = n => {\n const s = String(n).split('.'),\n f = s[1] || '',\n v = f.length,\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n f100 = f.slice(-2),\n f10 = f.slice(-1);\n return t0 && n10 == 0 || n100 >= 11 && n100 <= 19 || v == 2 && f100 >= 11 && f100 <= 19 ? 'zero' : n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11 || v != 2 && f10 == 1 ? 'one' : 'other';\n };\n const ps$2 = a$2;\n const pt$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return i == 0 || i == 1 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const pt_PT$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const rm$2 = a$2;\n const ro$2 = n => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n return n == 1 && v0 ? 'one' : !v0 || n == 0 || n != 1 && n100 >= 1 && n100 <= 19 ? 'few' : 'other';\n };\n const rof$2 = a$2;\n const ru$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n return v0 && i10 == 1 && i100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i10 == 0 || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 11 && i100 <= 14 ? 'many' : 'other';\n };\n const rwk$2 = a$2;\n const sah$2 = e$1;\n const saq$2 = a$2;\n const sat$2 = f$2;\n const sc$2 = d$2;\n const scn$2 = d$2;\n const sd$2 = a$2;\n const sdh$2 = a$2;\n const se$2 = f$2;\n const seh$2 = a$2;\n const ses$2 = e$1;\n const sg$2 = e$1;\n const sh$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const shi$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n return n >= 0 && n <= 1 ? 'one' : t0 && n >= 2 && n <= 10 ? 'few' : 'other';\n };\n const si$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '';\n return n == 0 || n == 1 || i == 0 && f == 1 ? 'one' : 'other';\n };\n const sk$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1];\n return n == 1 && v0 ? 'one' : i >= 2 && i <= 4 && v0 ? 'few' : !v0 ? 'many' : 'other';\n };\n const sl$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i100 = i.slice(-2);\n return v0 && i100 == 1 ? 'one' : v0 && i100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || !v0 ? 'few' : 'other';\n };\n const sma$2 = f$2;\n const smi$2 = f$2;\n const smj$2 = f$2;\n const smn$2 = f$2;\n const sms$2 = f$2;\n const sn$2 = a$2;\n const so$2 = a$2;\n const sq$2 = a$2;\n const sr$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const ss$2 = a$2;\n const ssy$2 = a$2;\n const st$2 = a$2;\n const su$2 = e$1;\n const sv$2 = d$2;\n const sw$2 = d$2;\n const syr$2 = a$2;\n const ta$2 = a$2;\n const te$2 = a$2;\n const teo$2 = a$2;\n const th$2 = e$1;\n const ti$2 = b$2;\n const tig$2 = a$2;\n const tk$2 = a$2;\n const tl$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n f10 = f.slice(-1);\n return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';\n };\n const tn$2 = a$2;\n const to$2 = e$1;\n const tpi$2 = e$1;\n const tr$2 = a$2;\n const ts$2 = a$2;\n const tzm$2 = n => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n return n == 0 || n == 1 || t0 && n >= 11 && n <= 99 ? 'one' : 'other';\n };\n const ug$2 = a$2;\n const uk$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n return v0 && i10 == 1 && i100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i10 == 0 || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 11 && i100 <= 14 ? 'many' : 'other';\n };\n const und$2 = e$1;\n const ur$2 = d$2;\n const uz$2 = a$2;\n const ve$2 = a$2;\n const vec$2 = n => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const vi$2 = e$1;\n const vo$2 = a$2;\n const vun$2 = a$2;\n const wa$2 = b$2;\n const wae$2 = a$2;\n const wo$2 = e$1;\n const xh$2 = a$2;\n const xog$2 = a$2;\n const yi$2 = d$2;\n const yo$2 = e$1;\n const yue$2 = e$1;\n const zh$2 = e$1;\n const zu$2 = c$2;\n var Cardinals = /*#__PURE__*/Object.freeze({\n __proto__: null,\n af: af$2,\n ak: ak$2,\n am: am$2,\n an: an$2,\n ar: ar$2,\n ars: ars$2,\n as: as$2,\n asa: asa$2,\n ast: ast$2,\n az: az$2,\n bal: bal$2,\n be: be$2,\n bem: bem$2,\n bez: bez$2,\n bg: bg$2,\n bho: bho$2,\n bm: bm$2,\n bn: bn$2,\n bo: bo$2,\n br: br$2,\n brx: brx$2,\n bs: bs$2,\n ca: ca$2,\n ce: ce$2,\n ceb: ceb$2,\n cgg: cgg$2,\n chr: chr$2,\n ckb: ckb$2,\n cs: cs$2,\n cy: cy$2,\n da: da$2,\n de: de$2,\n doi: doi$2,\n dsb: dsb$2,\n dv: dv$2,\n dz: dz$2,\n ee: ee$2,\n el: el$2,\n en: en$2,\n eo: eo$2,\n es: es$2,\n et: et$2,\n eu: eu$2,\n fa: fa$2,\n ff: ff$2,\n fi: fi$2,\n fil: fil$2,\n fo: fo$2,\n fr: fr$2,\n fur: fur$2,\n fy: fy$2,\n ga: ga$2,\n gd: gd$2,\n gl: gl$2,\n gsw: gsw$2,\n gu: gu$2,\n guw: guw$2,\n gv: gv$2,\n ha: ha$2,\n haw: haw$2,\n he: he$2,\n hi: hi$2,\n hnj: hnj$2,\n hr: hr$2,\n hsb: hsb$2,\n hu: hu$2,\n hy: hy$2,\n ia: ia$2,\n id: id$2,\n ig: ig$2,\n ii: ii$2,\n io: io$2,\n is: is$2,\n it: it$2,\n iu: iu$2,\n ja: ja$2,\n jbo: jbo$2,\n jgo: jgo$2,\n jmc: jmc$2,\n jv: jv$2,\n jw: jw$2,\n ka: ka$2,\n kab: kab$2,\n kaj: kaj$2,\n kcg: kcg$2,\n kde: kde$2,\n kea: kea$2,\n kk: kk$2,\n kkj: kkj$2,\n kl: kl$2,\n km: km$2,\n kn: kn$2,\n ko: ko$2,\n ks: ks$2,\n ksb: ksb$2,\n ksh: ksh$2,\n ku: ku$2,\n kw: kw$2,\n ky: ky$2,\n lag: lag$2,\n lb: lb$2,\n lg: lg$2,\n lij: lij$2,\n lkt: lkt$2,\n ln: ln$2,\n lo: lo$2,\n lt: lt$2,\n lv: lv$2,\n mas: mas$2,\n mg: mg$2,\n mgo: mgo$2,\n mk: mk$2,\n ml: ml$2,\n mn: mn$2,\n mo: mo$2,\n mr: mr$2,\n ms: ms$2,\n mt: mt$2,\n my: my$2,\n nah: nah$2,\n naq: naq$2,\n nb: nb$2,\n nd: nd$2,\n ne: ne$2,\n nl: nl$2,\n nn: nn$2,\n nnh: nnh$2,\n no: no$2,\n nqo: nqo$2,\n nr: nr$2,\n nso: nso$2,\n ny: ny$2,\n nyn: nyn$2,\n om: om$2,\n or: or$2,\n os: os$2,\n osa: osa$2,\n pa: pa$2,\n pap: pap$2,\n pcm: pcm$2,\n pl: pl$2,\n prg: prg$2,\n ps: ps$2,\n pt: pt$2,\n pt_PT: pt_PT$2,\n rm: rm$2,\n ro: ro$2,\n rof: rof$2,\n ru: ru$2,\n rwk: rwk$2,\n sah: sah$2,\n saq: saq$2,\n sat: sat$2,\n sc: sc$2,\n scn: scn$2,\n sd: sd$2,\n sdh: sdh$2,\n se: se$2,\n seh: seh$2,\n ses: ses$2,\n sg: sg$2,\n sh: sh$2,\n shi: shi$2,\n si: si$2,\n sk: sk$2,\n sl: sl$2,\n sma: sma$2,\n smi: smi$2,\n smj: smj$2,\n smn: smn$2,\n sms: sms$2,\n sn: sn$2,\n so: so$2,\n sq: sq$2,\n sr: sr$2,\n ss: ss$2,\n ssy: ssy$2,\n st: st$2,\n su: su$2,\n sv: sv$2,\n sw: sw$2,\n syr: syr$2,\n ta: ta$2,\n te: te$2,\n teo: teo$2,\n th: th$2,\n ti: ti$2,\n tig: tig$2,\n tk: tk$2,\n tl: tl$2,\n tn: tn$2,\n to: to$2,\n tpi: tpi$2,\n tr: tr$2,\n ts: ts$2,\n tzm: tzm$2,\n ug: ug$2,\n uk: uk$2,\n und: und$2,\n ur: ur$2,\n uz: uz$2,\n ve: ve$2,\n vec: vec$2,\n vi: vi$2,\n vo: vo$2,\n vun: vun$2,\n wa: wa$2,\n wae: wae$2,\n wo: wo$2,\n xh: xh$2,\n xog: xog$2,\n yi: yi$2,\n yo: yo$2,\n yue: yue$2,\n zh: zh$2,\n zu: zu$2\n });\n const z = \"zero\",\n o = \"one\",\n t = \"two\",\n f$1 = \"few\",\n m = \"many\",\n x = \"other\";\n const a$1 = {\n cardinal: [o, x],\n ordinal: [x]\n };\n const b$1 = {\n cardinal: [o, x],\n ordinal: [o, x]\n };\n const c$1 = {\n cardinal: [x],\n ordinal: [x]\n };\n const d$1 = {\n cardinal: [o, t, x],\n ordinal: [x]\n };\n const af$1 = a$1;\n const ak$1 = a$1;\n const am$1 = a$1;\n const an$1 = a$1;\n const ar$1 = {\n cardinal: [z, o, t, f$1, m, x],\n ordinal: [x]\n };\n const ars$1 = {\n cardinal: [z, o, t, f$1, m, x],\n ordinal: [x]\n };\n const as$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, m, x]\n };\n const asa$1 = a$1;\n const ast$1 = a$1;\n const az$1 = {\n cardinal: [o, x],\n ordinal: [o, f$1, m, x]\n };\n const bal$1 = b$1;\n const be$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [f$1, x]\n };\n const bem$1 = a$1;\n const bez$1 = a$1;\n const bg$1 = a$1;\n const bho$1 = a$1;\n const bm$1 = c$1;\n const bn$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, m, x]\n };\n const bo$1 = c$1;\n const br$1 = {\n cardinal: [o, t, f$1, m, x],\n ordinal: [x]\n };\n const brx$1 = a$1;\n const bs$1 = {\n cardinal: [o, f$1, x],\n ordinal: [x]\n };\n const ca$1 = {\n cardinal: [o, m, x],\n ordinal: [o, t, f$1, x]\n };\n const ce$1 = a$1;\n const ceb$1 = a$1;\n const cgg$1 = a$1;\n const chr$1 = a$1;\n const ckb$1 = a$1;\n const cs$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [x]\n };\n const cy$1 = {\n cardinal: [z, o, t, f$1, m, x],\n ordinal: [z, o, t, f$1, m, x]\n };\n const da$1 = a$1;\n const de$1 = a$1;\n const doi$1 = a$1;\n const dsb$1 = {\n cardinal: [o, t, f$1, x],\n ordinal: [x]\n };\n const dv$1 = a$1;\n const dz$1 = c$1;\n const ee$1 = a$1;\n const el$1 = a$1;\n const en$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, x]\n };\n const eo$1 = a$1;\n const es$1 = {\n cardinal: [o, m, x],\n ordinal: [x]\n };\n const et$1 = a$1;\n const eu$1 = a$1;\n const fa$1 = a$1;\n const ff$1 = a$1;\n const fi$1 = a$1;\n const fil$1 = b$1;\n const fo$1 = a$1;\n const fr$1 = {\n cardinal: [o, m, x],\n ordinal: [o, x]\n };\n const fur$1 = a$1;\n const fy$1 = a$1;\n const ga$1 = {\n cardinal: [o, t, f$1, m, x],\n ordinal: [o, x]\n };\n const gd$1 = {\n cardinal: [o, t, f$1, x],\n ordinal: [o, t, f$1, x]\n };\n const gl$1 = a$1;\n const gsw$1 = a$1;\n const gu$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, m, x]\n };\n const guw$1 = a$1;\n const gv$1 = {\n cardinal: [o, t, f$1, m, x],\n ordinal: [x]\n };\n const ha$1 = a$1;\n const haw$1 = a$1;\n const he$1 = d$1;\n const hi$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, m, x]\n };\n const hnj$1 = c$1;\n const hr$1 = {\n cardinal: [o, f$1, x],\n ordinal: [x]\n };\n const hsb$1 = {\n cardinal: [o, t, f$1, x],\n ordinal: [x]\n };\n const hu$1 = b$1;\n const hy$1 = b$1;\n const ia$1 = a$1;\n const id$1 = c$1;\n const ig$1 = c$1;\n const ii$1 = c$1;\n const io$1 = a$1;\n const is$1 = a$1;\n const it$1 = {\n cardinal: [o, m, x],\n ordinal: [m, x]\n };\n const iu$1 = d$1;\n const ja$1 = c$1;\n const jbo$1 = c$1;\n const jgo$1 = a$1;\n const jmc$1 = a$1;\n const jv$1 = c$1;\n const jw$1 = c$1;\n const ka$1 = {\n cardinal: [o, x],\n ordinal: [o, m, x]\n };\n const kab$1 = a$1;\n const kaj$1 = a$1;\n const kcg$1 = a$1;\n const kde$1 = c$1;\n const kea$1 = c$1;\n const kk$1 = {\n cardinal: [o, x],\n ordinal: [m, x]\n };\n const kkj$1 = a$1;\n const kl$1 = a$1;\n const km$1 = c$1;\n const kn$1 = a$1;\n const ko$1 = c$1;\n const ks$1 = a$1;\n const ksb$1 = a$1;\n const ksh$1 = {\n cardinal: [z, o, x],\n ordinal: [x]\n };\n const ku$1 = a$1;\n const kw$1 = {\n cardinal: [z, o, t, f$1, m, x],\n ordinal: [o, m, x]\n };\n const ky$1 = a$1;\n const lag$1 = {\n cardinal: [z, o, x],\n ordinal: [x]\n };\n const lb$1 = a$1;\n const lg$1 = a$1;\n const lij$1 = {\n cardinal: [o, x],\n ordinal: [m, x]\n };\n const lkt$1 = c$1;\n const ln$1 = a$1;\n const lo$1 = {\n cardinal: [x],\n ordinal: [o, x]\n };\n const lt$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [x]\n };\n const lv$1 = {\n cardinal: [z, o, x],\n ordinal: [x]\n };\n const mas$1 = a$1;\n const mg$1 = a$1;\n const mgo$1 = a$1;\n const mk$1 = {\n cardinal: [o, x],\n ordinal: [o, t, m, x]\n };\n const ml$1 = a$1;\n const mn$1 = a$1;\n const mo$1 = {\n cardinal: [o, f$1, x],\n ordinal: [o, x]\n };\n const mr$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, x]\n };\n const ms$1 = {\n cardinal: [x],\n ordinal: [o, x]\n };\n const mt$1 = {\n cardinal: [o, t, f$1, m, x],\n ordinal: [x]\n };\n const my$1 = c$1;\n const nah$1 = a$1;\n const naq$1 = d$1;\n const nb$1 = a$1;\n const nd$1 = a$1;\n const ne$1 = b$1;\n const nl$1 = a$1;\n const nn$1 = a$1;\n const nnh$1 = a$1;\n const no$1 = a$1;\n const nqo$1 = c$1;\n const nr$1 = a$1;\n const nso$1 = a$1;\n const ny$1 = a$1;\n const nyn$1 = a$1;\n const om$1 = a$1;\n const or$1 = {\n cardinal: [o, x],\n ordinal: [o, t, f$1, m, x]\n };\n const os$1 = a$1;\n const osa$1 = c$1;\n const pa$1 = a$1;\n const pap$1 = a$1;\n const pcm$1 = a$1;\n const pl$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [x]\n };\n const prg$1 = {\n cardinal: [z, o, x],\n ordinal: [x]\n };\n const ps$1 = a$1;\n const pt$1 = {\n cardinal: [o, m, x],\n ordinal: [x]\n };\n const pt_PT$1 = {\n cardinal: [o, m, x],\n ordinal: [x]\n };\n const rm$1 = a$1;\n const ro$1 = {\n cardinal: [o, f$1, x],\n ordinal: [o, x]\n };\n const rof$1 = a$1;\n const ru$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [x]\n };\n const rwk$1 = a$1;\n const sah$1 = c$1;\n const saq$1 = a$1;\n const sat$1 = d$1;\n const sc$1 = {\n cardinal: [o, x],\n ordinal: [m, x]\n };\n const scn$1 = {\n cardinal: [o, x],\n ordinal: [m, x]\n };\n const sd$1 = a$1;\n const sdh$1 = a$1;\n const se$1 = d$1;\n const seh$1 = a$1;\n const ses$1 = c$1;\n const sg$1 = c$1;\n const sh$1 = {\n cardinal: [o, f$1, x],\n ordinal: [x]\n };\n const shi$1 = {\n cardinal: [o, f$1, x],\n ordinal: [x]\n };\n const si$1 = a$1;\n const sk$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [x]\n };\n const sl$1 = {\n cardinal: [o, t, f$1, x],\n ordinal: [x]\n };\n const sma$1 = d$1;\n const smi$1 = d$1;\n const smj$1 = d$1;\n const smn$1 = d$1;\n const sms$1 = d$1;\n const sn$1 = a$1;\n const so$1 = a$1;\n const sq$1 = {\n cardinal: [o, x],\n ordinal: [o, m, x]\n };\n const sr$1 = {\n cardinal: [o, f$1, x],\n ordinal: [x]\n };\n const ss$1 = a$1;\n const ssy$1 = a$1;\n const st$1 = a$1;\n const su$1 = c$1;\n const sv$1 = b$1;\n const sw$1 = a$1;\n const syr$1 = a$1;\n const ta$1 = a$1;\n const te$1 = a$1;\n const teo$1 = a$1;\n const th$1 = c$1;\n const ti$1 = a$1;\n const tig$1 = a$1;\n const tk$1 = {\n cardinal: [o, x],\n ordinal: [f$1, x]\n };\n const tl$1 = b$1;\n const tn$1 = a$1;\n const to$1 = c$1;\n const tpi$1 = c$1;\n const tr$1 = a$1;\n const ts$1 = a$1;\n const tzm$1 = a$1;\n const ug$1 = a$1;\n const uk$1 = {\n cardinal: [o, f$1, m, x],\n ordinal: [f$1, x]\n };\n const und$1 = c$1;\n const ur$1 = a$1;\n const uz$1 = a$1;\n const ve$1 = a$1;\n const vec$1 = {\n cardinal: [o, m, x],\n ordinal: [m, x]\n };\n const vi$1 = {\n cardinal: [x],\n ordinal: [o, x]\n };\n const vo$1 = a$1;\n const vun$1 = a$1;\n const wa$1 = a$1;\n const wae$1 = a$1;\n const wo$1 = c$1;\n const xh$1 = a$1;\n const xog$1 = a$1;\n const yi$1 = a$1;\n const yo$1 = c$1;\n const yue$1 = c$1;\n const zh$1 = c$1;\n const zu$1 = a$1;\n var PluralCategories = /*#__PURE__*/Object.freeze({\n __proto__: null,\n af: af$1,\n ak: ak$1,\n am: am$1,\n an: an$1,\n ar: ar$1,\n ars: ars$1,\n as: as$1,\n asa: asa$1,\n ast: ast$1,\n az: az$1,\n bal: bal$1,\n be: be$1,\n bem: bem$1,\n bez: bez$1,\n bg: bg$1,\n bho: bho$1,\n bm: bm$1,\n bn: bn$1,\n bo: bo$1,\n br: br$1,\n brx: brx$1,\n bs: bs$1,\n ca: ca$1,\n ce: ce$1,\n ceb: ceb$1,\n cgg: cgg$1,\n chr: chr$1,\n ckb: ckb$1,\n cs: cs$1,\n cy: cy$1,\n da: da$1,\n de: de$1,\n doi: doi$1,\n dsb: dsb$1,\n dv: dv$1,\n dz: dz$1,\n ee: ee$1,\n el: el$1,\n en: en$1,\n eo: eo$1,\n es: es$1,\n et: et$1,\n eu: eu$1,\n fa: fa$1,\n ff: ff$1,\n fi: fi$1,\n fil: fil$1,\n fo: fo$1,\n fr: fr$1,\n fur: fur$1,\n fy: fy$1,\n ga: ga$1,\n gd: gd$1,\n gl: gl$1,\n gsw: gsw$1,\n gu: gu$1,\n guw: guw$1,\n gv: gv$1,\n ha: ha$1,\n haw: haw$1,\n he: he$1,\n hi: hi$1,\n hnj: hnj$1,\n hr: hr$1,\n hsb: hsb$1,\n hu: hu$1,\n hy: hy$1,\n ia: ia$1,\n id: id$1,\n ig: ig$1,\n ii: ii$1,\n io: io$1,\n is: is$1,\n it: it$1,\n iu: iu$1,\n ja: ja$1,\n jbo: jbo$1,\n jgo: jgo$1,\n jmc: jmc$1,\n jv: jv$1,\n jw: jw$1,\n ka: ka$1,\n kab: kab$1,\n kaj: kaj$1,\n kcg: kcg$1,\n kde: kde$1,\n kea: kea$1,\n kk: kk$1,\n kkj: kkj$1,\n kl: kl$1,\n km: km$1,\n kn: kn$1,\n ko: ko$1,\n ks: ks$1,\n ksb: ksb$1,\n ksh: ksh$1,\n ku: ku$1,\n kw: kw$1,\n ky: ky$1,\n lag: lag$1,\n lb: lb$1,\n lg: lg$1,\n lij: lij$1,\n lkt: lkt$1,\n ln: ln$1,\n lo: lo$1,\n lt: lt$1,\n lv: lv$1,\n mas: mas$1,\n mg: mg$1,\n mgo: mgo$1,\n mk: mk$1,\n ml: ml$1,\n mn: mn$1,\n mo: mo$1,\n mr: mr$1,\n ms: ms$1,\n mt: mt$1,\n my: my$1,\n nah: nah$1,\n naq: naq$1,\n nb: nb$1,\n nd: nd$1,\n ne: ne$1,\n nl: nl$1,\n nn: nn$1,\n nnh: nnh$1,\n no: no$1,\n nqo: nqo$1,\n nr: nr$1,\n nso: nso$1,\n ny: ny$1,\n nyn: nyn$1,\n om: om$1,\n or: or$1,\n os: os$1,\n osa: osa$1,\n pa: pa$1,\n pap: pap$1,\n pcm: pcm$1,\n pl: pl$1,\n prg: prg$1,\n ps: ps$1,\n pt: pt$1,\n pt_PT: pt_PT$1,\n rm: rm$1,\n ro: ro$1,\n rof: rof$1,\n ru: ru$1,\n rwk: rwk$1,\n sah: sah$1,\n saq: saq$1,\n sat: sat$1,\n sc: sc$1,\n scn: scn$1,\n sd: sd$1,\n sdh: sdh$1,\n se: se$1,\n seh: seh$1,\n ses: ses$1,\n sg: sg$1,\n sh: sh$1,\n shi: shi$1,\n si: si$1,\n sk: sk$1,\n sl: sl$1,\n sma: sma$1,\n smi: smi$1,\n smj: smj$1,\n smn: smn$1,\n sms: sms$1,\n sn: sn$1,\n so: so$1,\n sq: sq$1,\n sr: sr$1,\n ss: ss$1,\n ssy: ssy$1,\n st: st$1,\n su: su$1,\n sv: sv$1,\n sw: sw$1,\n syr: syr$1,\n ta: ta$1,\n te: te$1,\n teo: teo$1,\n th: th$1,\n ti: ti$1,\n tig: tig$1,\n tk: tk$1,\n tl: tl$1,\n tn: tn$1,\n to: to$1,\n tpi: tpi$1,\n tr: tr$1,\n ts: ts$1,\n tzm: tzm$1,\n ug: ug$1,\n uk: uk$1,\n und: und$1,\n ur: ur$1,\n uz: uz$1,\n ve: ve$1,\n vec: vec$1,\n vi: vi$1,\n vo: vo$1,\n vun: vun$1,\n wa: wa$1,\n wae: wae$1,\n wo: wo$1,\n xh: xh$1,\n xog: xog$1,\n yi: yi$1,\n yo: yo$1,\n yue: yue$1,\n zh: zh$1,\n zu: zu$1\n });\n const a = (n, ord) => {\n if (ord) return 'other';\n return n == 1 ? 'one' : 'other';\n };\n const b = (n, ord) => {\n if (ord) return 'other';\n return n == 0 || n == 1 ? 'one' : 'other';\n };\n const c = (n, ord) => {\n if (ord) return 'other';\n return n >= 0 && n <= 1 ? 'one' : 'other';\n };\n const d = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1];\n if (ord) return 'other';\n return n == 1 && v0 ? 'one' : 'other';\n };\n const e = (n, ord) => 'other';\n const f = (n, ord) => {\n if (ord) return 'other';\n return n == 1 ? 'one' : n == 2 ? 'two' : 'other';\n };\n const af = a;\n const ak = b;\n const am = c;\n const an = a;\n const ar = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n if (ord) return 'other';\n return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 99 ? 'many' : 'other';\n };\n const ars = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n if (ord) return 'other';\n return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 99 ? 'many' : 'other';\n };\n const as = (n, ord) => {\n if (ord) return n == 1 || n == 5 || n == 7 || n == 8 || n == 9 || n == 10 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';\n return n >= 0 && n <= 1 ? 'one' : 'other';\n };\n const asa = a;\n const ast = d;\n const az = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n i1000 = i.slice(-3);\n if (ord) return i10 == 1 || i10 == 2 || i10 == 5 || i10 == 7 || i10 == 8 || i100 == 20 || i100 == 50 || i100 == 70 || i100 == 80 ? 'one' : i10 == 3 || i10 == 4 || i1000 == 100 || i1000 == 200 || i1000 == 300 || i1000 == 400 || i1000 == 500 || i1000 == 600 || i1000 == 700 || i1000 == 800 || i1000 == 900 ? 'few' : i == 0 || i10 == 6 || i100 == 40 || i100 == 60 || i100 == 90 ? 'many' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const bal = (n, ord) => n == 1 ? 'one' : 'other';\n const be = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n if (ord) return (n10 == 2 || n10 == 3) && n100 != 12 && n100 != 13 ? 'few' : 'other';\n return n10 == 1 && n100 != 11 ? 'one' : n10 >= 2 && n10 <= 4 && (n100 < 12 || n100 > 14) ? 'few' : t0 && n10 == 0 || n10 >= 5 && n10 <= 9 || n100 >= 11 && n100 <= 14 ? 'many' : 'other';\n };\n const bem = a;\n const bez = a;\n const bg = a;\n const bho = b;\n const bm = e;\n const bn = (n, ord) => {\n if (ord) return n == 1 || n == 5 || n == 7 || n == 8 || n == 9 || n == 10 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';\n return n >= 0 && n <= 1 ? 'one' : 'other';\n };\n const bo = e;\n const br = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n n1000000 = t0 && s[0].slice(-6);\n if (ord) return 'other';\n return n10 == 1 && n100 != 11 && n100 != 71 && n100 != 91 ? 'one' : n10 == 2 && n100 != 12 && n100 != 72 && n100 != 92 ? 'two' : (n10 == 3 || n10 == 4 || n10 == 9) && (n100 < 10 || n100 > 19) && (n100 < 70 || n100 > 79) && (n100 < 90 || n100 > 99) ? 'few' : n != 0 && t0 && n1000000 == 0 ? 'many' : 'other';\n };\n const brx = a;\n const bs = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n if (ord) return 'other';\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const ca = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return n == 1 || n == 3 ? 'one' : n == 2 ? 'two' : n == 4 ? 'few' : 'other';\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const ce = a;\n const ceb = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n f10 = f.slice(-1);\n if (ord) return 'other';\n return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';\n };\n const cgg = a;\n const chr = a;\n const ckb = a;\n const cs = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1];\n if (ord) return 'other';\n return n == 1 && v0 ? 'one' : i >= 2 && i <= 4 && v0 ? 'few' : !v0 ? 'many' : 'other';\n };\n const cy = (n, ord) => {\n if (ord) return n == 0 || n == 7 || n == 8 || n == 9 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n == 3 || n == 4 ? 'few' : n == 5 || n == 6 ? 'many' : 'other';\n return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n == 3 ? 'few' : n == 6 ? 'many' : 'other';\n };\n const da = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n t0 = Number(s[0]) == n;\n if (ord) return 'other';\n return n == 1 || !t0 && (i == 0 || i == 1) ? 'one' : 'other';\n };\n const de = d;\n const doi = c;\n const dsb = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i100 = i.slice(-2),\n f100 = f.slice(-2);\n if (ord) return 'other';\n return v0 && i100 == 1 || f100 == 1 ? 'one' : v0 && i100 == 2 || f100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || f100 == 3 || f100 == 4 ? 'few' : 'other';\n };\n const dv = a;\n const dz = e;\n const ee = a;\n const el = a;\n const en = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n if (ord) return n10 == 1 && n100 != 11 ? 'one' : n10 == 2 && n100 != 12 ? 'two' : n10 == 3 && n100 != 13 ? 'few' : 'other';\n return n == 1 && v0 ? 'one' : 'other';\n };\n const eo = a;\n const es = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return 'other';\n return n == 1 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const et = d;\n const eu = a;\n const fa = c;\n const ff = (n, ord) => {\n if (ord) return 'other';\n return n >= 0 && n < 2 ? 'one' : 'other';\n };\n const fi = d;\n const fil = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n f10 = f.slice(-1);\n if (ord) return n == 1 ? 'one' : 'other';\n return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';\n };\n const fo = a;\n const fr = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return n == 1 ? 'one' : 'other';\n return n >= 0 && n < 2 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const fur = a;\n const fy = d;\n const ga = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n if (ord) return n == 1 ? 'one' : 'other';\n return n == 1 ? 'one' : n == 2 ? 'two' : t0 && n >= 3 && n <= 6 ? 'few' : t0 && n >= 7 && n <= 10 ? 'many' : 'other';\n };\n const gd = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n if (ord) return n == 1 || n == 11 ? 'one' : n == 2 || n == 12 ? 'two' : n == 3 || n == 13 ? 'few' : 'other';\n return n == 1 || n == 11 ? 'one' : n == 2 || n == 12 ? 'two' : t0 && n >= 3 && n <= 10 || t0 && n >= 13 && n <= 19 ? 'few' : 'other';\n };\n const gl = d;\n const gsw = a;\n const gu = (n, ord) => {\n if (ord) return n == 1 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';\n return n >= 0 && n <= 1 ? 'one' : 'other';\n };\n const guw = b;\n const gv = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n if (ord) return 'other';\n return v0 && i10 == 1 ? 'one' : v0 && i10 == 2 ? 'two' : v0 && (i100 == 0 || i100 == 20 || i100 == 40 || i100 == 60 || i100 == 80) ? 'few' : !v0 ? 'many' : 'other';\n };\n const ha = a;\n const haw = a;\n const he = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1];\n if (ord) return 'other';\n return i == 1 && v0 || i == 0 && !v0 ? 'one' : i == 2 && v0 ? 'two' : 'other';\n };\n const hi = (n, ord) => {\n if (ord) return n == 1 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';\n return n >= 0 && n <= 1 ? 'one' : 'other';\n };\n const hnj = e;\n const hr = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n if (ord) return 'other';\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const hsb = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i100 = i.slice(-2),\n f100 = f.slice(-2);\n if (ord) return 'other';\n return v0 && i100 == 1 || f100 == 1 ? 'one' : v0 && i100 == 2 || f100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || f100 == 3 || f100 == 4 ? 'few' : 'other';\n };\n const hu = (n, ord) => {\n if (ord) return n == 1 || n == 5 ? 'one' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const hy = (n, ord) => {\n if (ord) return n == 1 ? 'one' : 'other';\n return n >= 0 && n < 2 ? 'one' : 'other';\n };\n const ia = d;\n const id = e;\n const ig = e;\n const ii = e;\n const io = d;\n const is = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n t = (s[1] || '').replace(/0+$/, ''),\n t0 = Number(s[0]) == n,\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n if (ord) return 'other';\n return t0 && i10 == 1 && i100 != 11 || t % 10 == 1 && t % 100 != 11 ? 'one' : 'other';\n };\n const it = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const iu = f;\n const ja = e;\n const jbo = e;\n const jgo = a;\n const jmc = a;\n const jv = e;\n const jw = e;\n const ka = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n i100 = i.slice(-2);\n if (ord) return i == 1 ? 'one' : i == 0 || i100 >= 2 && i100 <= 20 || i100 == 40 || i100 == 60 || i100 == 80 ? 'many' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const kab = (n, ord) => {\n if (ord) return 'other';\n return n >= 0 && n < 2 ? 'one' : 'other';\n };\n const kaj = a;\n const kcg = a;\n const kde = e;\n const kea = e;\n const kk = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1);\n if (ord) return n10 == 6 || n10 == 9 || t0 && n10 == 0 && n != 0 ? 'many' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const kkj = a;\n const kl = a;\n const km = e;\n const kn = c;\n const ko = e;\n const ks = a;\n const ksb = a;\n const ksh = (n, ord) => {\n if (ord) return 'other';\n return n == 0 ? 'zero' : n == 1 ? 'one' : 'other';\n };\n const ku = a;\n const kw = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2),\n n1000 = t0 && s[0].slice(-3),\n n100000 = t0 && s[0].slice(-5),\n n1000000 = t0 && s[0].slice(-6);\n if (ord) return t0 && n >= 1 && n <= 4 || n100 >= 1 && n100 <= 4 || n100 >= 21 && n100 <= 24 || n100 >= 41 && n100 <= 44 || n100 >= 61 && n100 <= 64 || n100 >= 81 && n100 <= 84 ? 'one' : n == 5 || n100 == 5 ? 'many' : 'other';\n return n == 0 ? 'zero' : n == 1 ? 'one' : n100 == 2 || n100 == 22 || n100 == 42 || n100 == 62 || n100 == 82 || t0 && n1000 == 0 && (n100000 >= 1000 && n100000 <= 20000 || n100000 == 40000 || n100000 == 60000 || n100000 == 80000) || n != 0 && n1000000 == 100000 ? 'two' : n100 == 3 || n100 == 23 || n100 == 43 || n100 == 63 || n100 == 83 ? 'few' : n != 1 && (n100 == 1 || n100 == 21 || n100 == 41 || n100 == 61 || n100 == 81) ? 'many' : 'other';\n };\n const ky = a;\n const lag = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0];\n if (ord) return 'other';\n return n == 0 ? 'zero' : (i == 0 || i == 1) && n != 0 ? 'one' : 'other';\n };\n const lb = a;\n const lg = a;\n const lij = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n;\n if (ord) return n == 11 || n == 8 || t0 && n >= 80 && n <= 89 || t0 && n >= 800 && n <= 899 ? 'many' : 'other';\n return n == 1 && v0 ? 'one' : 'other';\n };\n const lkt = e;\n const ln = b;\n const lo = (n, ord) => {\n if (ord) return n == 1 ? 'one' : 'other';\n return 'other';\n };\n const lt = (n, ord) => {\n const s = String(n).split('.'),\n f = s[1] || '',\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n if (ord) return 'other';\n return n10 == 1 && (n100 < 11 || n100 > 19) ? 'one' : n10 >= 2 && n10 <= 9 && (n100 < 11 || n100 > 19) ? 'few' : f != 0 ? 'many' : 'other';\n };\n const lv = (n, ord) => {\n const s = String(n).split('.'),\n f = s[1] || '',\n v = f.length,\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n f100 = f.slice(-2),\n f10 = f.slice(-1);\n if (ord) return 'other';\n return t0 && n10 == 0 || n100 >= 11 && n100 <= 19 || v == 2 && f100 >= 11 && f100 <= 19 ? 'zero' : n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11 || v != 2 && f10 == 1 ? 'one' : 'other';\n };\n const mas = a;\n const mg = b;\n const mgo = a;\n const mk = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n if (ord) return i10 == 1 && i100 != 11 ? 'one' : i10 == 2 && i100 != 12 ? 'two' : (i10 == 7 || i10 == 8) && i100 != 17 && i100 != 18 ? 'many' : 'other';\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : 'other';\n };\n const ml = a;\n const mn = a;\n const mo = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n if (ord) return n == 1 ? 'one' : 'other';\n return n == 1 && v0 ? 'one' : !v0 || n == 0 || n != 1 && n100 >= 1 && n100 <= 19 ? 'few' : 'other';\n };\n const mr = (n, ord) => {\n if (ord) return n == 1 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const ms = (n, ord) => {\n if (ord) return n == 1 ? 'one' : 'other';\n return 'other';\n };\n const mt = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n if (ord) return 'other';\n return n == 1 ? 'one' : n == 2 ? 'two' : n == 0 || n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 19 ? 'many' : 'other';\n };\n const my = e;\n const nah = a;\n const naq = f;\n const nb = a;\n const nd = a;\n const ne = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n if (ord) return t0 && n >= 1 && n <= 4 ? 'one' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const nl = d;\n const nn = a;\n const nnh = a;\n const no = a;\n const nqo = e;\n const nr = a;\n const nso = b;\n const ny = a;\n const nyn = a;\n const om = a;\n const or = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n if (ord) return n == 1 || n == 5 || t0 && n >= 7 && n <= 9 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const os = a;\n const osa = e;\n const pa = b;\n const pap = a;\n const pcm = c;\n const pl = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n if (ord) return 'other';\n return n == 1 && v0 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i != 1 && (i10 == 0 || i10 == 1) || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 12 && i100 <= 14 ? 'many' : 'other';\n };\n const prg = (n, ord) => {\n const s = String(n).split('.'),\n f = s[1] || '',\n v = f.length,\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n f100 = f.slice(-2),\n f10 = f.slice(-1);\n if (ord) return 'other';\n return t0 && n10 == 0 || n100 >= 11 && n100 <= 19 || v == 2 && f100 >= 11 && f100 <= 19 ? 'zero' : n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11 || v != 2 && f10 == 1 ? 'one' : 'other';\n };\n const ps = a;\n const pt = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return 'other';\n return i == 0 || i == 1 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const pt_PT = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return 'other';\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const rm = a;\n const ro = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n100 = t0 && s[0].slice(-2);\n if (ord) return n == 1 ? 'one' : 'other';\n return n == 1 && v0 ? 'one' : !v0 || n == 0 || n != 1 && n100 >= 1 && n100 <= 19 ? 'few' : 'other';\n };\n const rof = a;\n const ru = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n if (ord) return 'other';\n return v0 && i10 == 1 && i100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i10 == 0 || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 11 && i100 <= 14 ? 'many' : 'other';\n };\n const rwk = a;\n const sah = e;\n const saq = a;\n const sat = f;\n const sc = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1];\n if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';\n return n == 1 && v0 ? 'one' : 'other';\n };\n const scn = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1];\n if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';\n return n == 1 && v0 ? 'one' : 'other';\n };\n const sd = a;\n const sdh = a;\n const se = f;\n const seh = a;\n const ses = e;\n const sg = e;\n const sh = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n if (ord) return 'other';\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const shi = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n if (ord) return 'other';\n return n >= 0 && n <= 1 ? 'one' : t0 && n >= 2 && n <= 10 ? 'few' : 'other';\n };\n const si = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '';\n if (ord) return 'other';\n return n == 0 || n == 1 || i == 0 && f == 1 ? 'one' : 'other';\n };\n const sk = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1];\n if (ord) return 'other';\n return n == 1 && v0 ? 'one' : i >= 2 && i <= 4 && v0 ? 'few' : !v0 ? 'many' : 'other';\n };\n const sl = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i100 = i.slice(-2);\n if (ord) return 'other';\n return v0 && i100 == 1 ? 'one' : v0 && i100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || !v0 ? 'few' : 'other';\n };\n const sma = f;\n const smi = f;\n const smj = f;\n const smn = f;\n const sms = f;\n const sn = a;\n const so = a;\n const sq = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n if (ord) return n == 1 ? 'one' : n10 == 4 && n100 != 14 ? 'many' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const sr = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n i100 = i.slice(-2),\n f10 = f.slice(-1),\n f100 = f.slice(-2);\n if (ord) return 'other';\n return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';\n };\n const ss = a;\n const ssy = a;\n const st = a;\n const su = e;\n const sv = (n, ord) => {\n const s = String(n).split('.'),\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2);\n if (ord) return (n10 == 1 || n10 == 2) && n100 != 11 && n100 != 12 ? 'one' : 'other';\n return n == 1 && v0 ? 'one' : 'other';\n };\n const sw = d;\n const syr = a;\n const ta = a;\n const te = a;\n const teo = a;\n const th = e;\n const ti = b;\n const tig = a;\n const tk = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1);\n if (ord) return n10 == 6 || n10 == 9 || n == 10 ? 'few' : 'other';\n return n == 1 ? 'one' : 'other';\n };\n const tl = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n f = s[1] || '',\n v0 = !s[1],\n i10 = i.slice(-1),\n f10 = f.slice(-1);\n if (ord) return n == 1 ? 'one' : 'other';\n return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';\n };\n const tn = a;\n const to = e;\n const tpi = e;\n const tr = a;\n const ts = a;\n const tzm = (n, ord) => {\n const s = String(n).split('.'),\n t0 = Number(s[0]) == n;\n if (ord) return 'other';\n return n == 0 || n == 1 || t0 && n >= 11 && n <= 99 ? 'one' : 'other';\n };\n const ug = a;\n const uk = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n t0 = Number(s[0]) == n,\n n10 = t0 && s[0].slice(-1),\n n100 = t0 && s[0].slice(-2),\n i10 = i.slice(-1),\n i100 = i.slice(-2);\n if (ord) return n10 == 3 && n100 != 13 ? 'few' : 'other';\n return v0 && i10 == 1 && i100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i10 == 0 || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 11 && i100 <= 14 ? 'many' : 'other';\n };\n const und = e;\n const ur = d;\n const uz = a;\n const ve = a;\n const vec = (n, ord) => {\n const s = String(n).split('.'),\n i = s[0],\n v0 = !s[1],\n i1000000 = i.slice(-6);\n if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';\n return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';\n };\n const vi = (n, ord) => {\n if (ord) return n == 1 ? 'one' : 'other';\n return 'other';\n };\n const vo = a;\n const vun = a;\n const wa = b;\n const wae = a;\n const wo = e;\n const xh = a;\n const xog = a;\n const yi = d;\n const yo = e;\n const yue = e;\n const zh = e;\n const zu = c;\n var Plurals = /*#__PURE__*/Object.freeze({\n __proto__: null,\n af: af,\n ak: ak,\n am: am,\n an: an,\n ar: ar,\n ars: ars,\n as: as,\n asa: asa,\n ast: ast,\n az: az,\n bal: bal,\n be: be,\n bem: bem,\n bez: bez,\n bg: bg,\n bho: bho,\n bm: bm,\n bn: bn,\n bo: bo,\n br: br,\n brx: brx,\n bs: bs,\n ca: ca,\n ce: ce,\n ceb: ceb,\n cgg: cgg,\n chr: chr,\n ckb: ckb,\n cs: cs,\n cy: cy,\n da: da,\n de: de,\n doi: doi,\n dsb: dsb,\n dv: dv,\n dz: dz,\n ee: ee,\n el: el,\n en: en,\n eo: eo,\n es: es,\n et: et,\n eu: eu,\n fa: fa,\n ff: ff,\n fi: fi,\n fil: fil,\n fo: fo,\n fr: fr,\n fur: fur,\n fy: fy,\n ga: ga,\n gd: gd,\n gl: gl,\n gsw: gsw,\n gu: gu,\n guw: guw,\n gv: gv,\n ha: ha,\n haw: haw,\n he: he,\n hi: hi,\n hnj: hnj,\n hr: hr,\n hsb: hsb,\n hu: hu,\n hy: hy,\n ia: ia,\n id: id,\n ig: ig,\n ii: ii,\n io: io,\n is: is,\n it: it,\n iu: iu,\n ja: ja,\n jbo: jbo,\n jgo: jgo,\n jmc: jmc,\n jv: jv,\n jw: jw,\n ka: ka,\n kab: kab,\n kaj: kaj,\n kcg: kcg,\n kde: kde,\n kea: kea,\n kk: kk,\n kkj: kkj,\n kl: kl,\n km: km,\n kn: kn,\n ko: ko,\n ks: ks,\n ksb: ksb,\n ksh: ksh,\n ku: ku,\n kw: kw,\n ky: ky,\n lag: lag,\n lb: lb,\n lg: lg,\n lij: lij,\n lkt: lkt,\n ln: ln,\n lo: lo,\n lt: lt,\n lv: lv,\n mas: mas,\n mg: mg,\n mgo: mgo,\n mk: mk,\n ml: ml,\n mn: mn,\n mo: mo,\n mr: mr,\n ms: ms,\n mt: mt,\n my: my,\n nah: nah,\n naq: naq,\n nb: nb,\n nd: nd,\n ne: ne,\n nl: nl,\n nn: nn,\n nnh: nnh,\n no: no,\n nqo: nqo,\n nr: nr,\n nso: nso,\n ny: ny,\n nyn: nyn,\n om: om,\n or: or,\n os: os,\n osa: osa,\n pa: pa,\n pap: pap,\n pcm: pcm,\n pl: pl,\n prg: prg,\n ps: ps,\n pt: pt,\n pt_PT: pt_PT,\n rm: rm,\n ro: ro,\n rof: rof,\n ru: ru,\n rwk: rwk,\n sah: sah,\n saq: saq,\n sat: sat,\n sc: sc,\n scn: scn,\n sd: sd,\n sdh: sdh,\n se: se,\n seh: seh,\n ses: ses,\n sg: sg,\n sh: sh,\n shi: shi,\n si: si,\n sk: sk,\n sl: sl,\n sma: sma,\n smi: smi,\n smj: smj,\n smn: smn,\n sms: sms,\n sn: sn,\n so: so,\n sq: sq,\n sr: sr,\n ss: ss,\n ssy: ssy,\n st: st,\n su: su,\n sv: sv,\n sw: sw,\n syr: syr,\n ta: ta,\n te: te,\n teo: teo,\n th: th,\n ti: ti,\n tig: tig,\n tk: tk,\n tl: tl,\n tn: tn,\n to: to,\n tpi: tpi,\n tr: tr,\n ts: ts,\n tzm: tzm,\n ug: ug,\n uk: uk,\n und: und,\n ur: ur,\n uz: uz,\n ve: ve,\n vec: vec,\n vi: vi,\n vo: vo,\n vun: vun,\n wa: wa,\n wae: wae,\n wo: wo,\n xh: xh,\n xog: xog,\n yi: yi,\n yo: yo,\n yue: yue,\n zh: zh,\n zu: zu\n });\n function normalize(locale) {\n if (typeof locale !== 'string' || locale.length < 2) throw new RangeError(\"Invalid language tag: \".concat(locale));\n if (locale.startsWith('pt-PT')) return 'pt-PT';\n var m = locale.match(/.+?(?=[-_])/);\n return m ? m[0] : locale;\n }\n function getPlural(locale) {\n if (typeof locale === 'function') {\n var lc_1 = normalize(locale.name);\n return {\n isDefault: false,\n id: identifier(lc_1),\n lc: lc_1,\n locale: locale.name,\n getPlural: locale,\n cardinals: locale.cardinals || [],\n ordinals: locale.ordinals || []\n };\n }\n var lc = normalize(locale);\n var id = identifier(lc);\n if (isPluralId(id)) {\n return {\n isDefault: true,\n id: id,\n lc: lc,\n locale: locale,\n getCardinal: Cardinals[id],\n getPlural: Plurals[id],\n cardinals: PluralCategories[id].cardinal,\n ordinals: PluralCategories[id].ordinal\n };\n }\n return null;\n }\n function getAllPlurals(firstLocale) {\n var keys = Object.keys(Plurals).filter(function (key) {\n return key !== firstLocale;\n });\n keys.unshift(firstLocale);\n return keys.map(getPlural);\n }\n function hasPlural(locale) {\n var lc = normalize(locale);\n return identifier(lc) in Plurals;\n }\n function isPluralId(id) {\n return id in Plurals;\n }\n var MessageFormat = function () {\n function MessageFormat(locale, options) {\n this.plurals = [];\n this.options = Object.assign({\n biDiSupport: false,\n currency: 'USD',\n customFormatters: {},\n localeCodeFromKey: null,\n requireAllArguments: false,\n returnType: 'string',\n strict: options && options.strictNumberSign || false,\n strictPluralKeys: true\n }, options);\n if (locale === '*') {\n this.plurals = getAllPlurals(MessageFormat.defaultLocale);\n } else if (Array.isArray(locale)) {\n this.plurals = locale.map(getPlural).filter(Boolean);\n } else if (locale) {\n var pl = getPlural(locale);\n if (pl) this.plurals = [pl];\n }\n if (this.plurals.length === 0) {\n var pl = getPlural(MessageFormat.defaultLocale);\n this.plurals = [pl];\n }\n }\n MessageFormat.escape = function (str, octothorpe) {\n var esc = octothorpe ? /[#{}]/g : /[{}]/g;\n return String(str).replace(esc, \"'$&'\");\n };\n MessageFormat.supportedLocalesOf = function (locales) {\n var la = Array.isArray(locales) ? locales : [locales];\n return la.filter(hasPlural);\n };\n MessageFormat.prototype.resolvedOptions = function () {\n return __assign(__assign({}, this.options), {\n locale: this.plurals[0].locale,\n plurals: this.plurals\n });\n };\n MessageFormat.prototype.compile = function (message) {\n var e_1, _a;\n var compiler = new Compiler(this.options);\n var fnBody = 'return ' + compiler.compile(message, this.plurals[0]);\n var nfArgs = [];\n var fnArgs = [];\n try {\n for (var _b = __values(Object.entries(compiler.runtime)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var _d = __read(_c.value, 2),\n key = _d[0],\n fmt = _d[1];\n nfArgs.push(key);\n fnArgs.push(fmt);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n var fn = new (Function.bind.apply(Function, __spreadArray(__spreadArray([void 0], __read(nfArgs), false), [fnBody], false)))();\n return fn.apply(void 0, __spreadArray([], __read(fnArgs), false));\n };\n MessageFormat.defaultLocale = 'en';\n return MessageFormat;\n }();\n return MessageFormat;\n});","/**\n * @license Angular v19.1.5\n * (c) 2010-2024 Google LLC. https://angular.io/\n * License: MIT\n */\n\nimport { DOCUMENT } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { inject, Injector, ɵRuntimeError, ɵChangeDetectionScheduler, Injectable, InjectionToken, ɵperformanceMarkFeature, makeEnvironmentProviders, RendererFactory2, NgZone, ANIMATION_MODULE_TYPE } from '@angular/core';\nimport { ɵDomRendererFactory2 } from '@angular/platform-browser';\nconst ANIMATION_PREFIX = '@';\nlet AsyncAnimationRendererFactory = /*#__PURE__*/(() => {\n class AsyncAnimationRendererFactory {\n doc;\n delegate;\n zone;\n animationType;\n moduleImpl;\n _rendererFactoryPromise = null;\n scheduler = null;\n injector = inject(Injector);\n loadingSchedulerFn = inject(ɵASYNC_ANIMATION_LOADING_SCHEDULER_FN, {\n optional: true\n });\n _engine;\n /**\n *\n * @param moduleImpl allows to provide a mock implmentation (or will load the animation module)\n */\n constructor(doc, delegate, zone, animationType, moduleImpl) {\n this.doc = doc;\n this.delegate = delegate;\n this.zone = zone;\n this.animationType = animationType;\n this.moduleImpl = moduleImpl;\n }\n /** @nodoc */\n ngOnDestroy() {\n // When the root view is removed, the renderer defers the actual work to the\n // `TransitionAnimationEngine` to do this, and the `TransitionAnimationEngine` doesn't actually\n // remove the DOM node, but just calls `markElementAsRemoved()`. The actual DOM node is not\n // removed until `TransitionAnimationEngine` \"flushes\".\n // Note: we already flush on destroy within the `InjectableAnimationEngine`. The injectable\n // engine is not provided when async animations are used.\n this._engine?.flush();\n }\n /**\n * @internal\n */\n loadImpl() {\n // Note on the `.then(m => m)` part below: Closure compiler optimizations in g3 require\n // `.then` to be present for a dynamic import (or an import should be `await`ed) to detect\n // the set of imported symbols.\n const loadFn = () => this.moduleImpl ?? import('@angular/animations/browser').then(m => m);\n let moduleImplPromise;\n if (this.loadingSchedulerFn) {\n moduleImplPromise = this.loadingSchedulerFn(loadFn);\n } else {\n moduleImplPromise = loadFn();\n }\n return moduleImplPromise.catch(e => {\n throw new ɵRuntimeError(5300 /* RuntimeErrorCode.ANIMATION_RENDERER_ASYNC_LOADING_FAILURE */, (typeof ngDevMode === 'undefined' || ngDevMode) && 'Async loading for animations package was ' + 'enabled, but loading failed. Angular falls back to using regular rendering. ' + \"No animations will be displayed and their styles won't be applied.\");\n }).then(({\n ɵcreateEngine,\n ɵAnimationRendererFactory\n }) => {\n // We can't create the renderer yet because we might need the hostElement and the type\n // Both are provided in createRenderer().\n this._engine = ɵcreateEngine(this.animationType, this.doc);\n const rendererFactory = new ɵAnimationRendererFactory(this.delegate, this._engine, this.zone);\n this.delegate = rendererFactory;\n return rendererFactory;\n });\n }\n /**\n * This method is delegating the renderer creation to the factories.\n * It uses default factory while the animation factory isn't loaded\n * and will rely on the animation factory once it is loaded.\n *\n * Calling this method will trigger as side effect the loading of the animation module\n * if the renderered component uses animations.\n */\n createRenderer(hostElement, rendererType) {\n const renderer = this.delegate.createRenderer(hostElement, rendererType);\n if (renderer.ɵtype === 0 /* AnimationRendererType.Regular */) {\n // The factory is already loaded, this is an animation renderer\n return renderer;\n }\n // We need to prevent the DomRenderer to throw an error because of synthetic properties\n if (typeof renderer.throwOnSyntheticProps === 'boolean') {\n renderer.throwOnSyntheticProps = false;\n }\n // Using a dynamic renderer to switch the renderer implementation once the module is loaded.\n const dynamicRenderer = new DynamicDelegationRenderer(renderer);\n // Kick off the module loading if the component uses animations but the module hasn't been\n // loaded yet.\n if (rendererType?.data?.['animation'] && !this._rendererFactoryPromise) {\n this._rendererFactoryPromise = this.loadImpl();\n }\n this._rendererFactoryPromise?.then(animationRendererFactory => {\n const animationRenderer = animationRendererFactory.createRenderer(hostElement, rendererType);\n dynamicRenderer.use(animationRenderer);\n this.scheduler ??= this.injector.get(ɵChangeDetectionScheduler, null, {\n optional: true\n });\n this.scheduler?.notify(11 /* NotificationSource.AsyncAnimationsLoaded */);\n }).catch(e => {\n // Permanently use regular renderer when loading fails.\n dynamicRenderer.use(renderer);\n });\n return dynamicRenderer;\n }\n begin() {\n this.delegate.begin?.();\n }\n end() {\n this.delegate.end?.();\n }\n whenRenderingDone() {\n return this.delegate.whenRenderingDone?.() ?? Promise.resolve();\n }\n /**\n * Used during HMR to clear any cached data about a component.\n * @param componentId ID of the component that is being replaced.\n */\n componentReplaced(componentId) {\n // Flush the engine since the renderer destruction waits for animations to be done.\n this._engine?.flush();\n this.delegate.componentReplaced?.(componentId);\n }\n static ɵfac = function AsyncAnimationRendererFactory_Factory(__ngFactoryType__) {\n i0.ɵɵinvalidFactory();\n };\n static ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: AsyncAnimationRendererFactory,\n factory: AsyncAnimationRendererFactory.ɵfac\n });\n }\n return AsyncAnimationRendererFactory;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * The class allows to dynamicly switch between different renderer implementations\n * by changing the delegate renderer.\n */\nclass DynamicDelegationRenderer {\n delegate;\n // List of callbacks that need to be replayed on the animation renderer once its loaded\n replay = [];\n ɵtype = 1 /* AnimationRendererType.Delegated */;\n constructor(delegate) {\n this.delegate = delegate;\n }\n use(impl) {\n this.delegate = impl;\n if (this.replay !== null) {\n // Replay queued actions using the animation renderer to apply\n // all events and properties collected while loading was in progress.\n for (const fn of this.replay) {\n fn(impl);\n }\n // Set to `null` to indicate that the queue was processed\n // and we no longer need to collect events and properties.\n this.replay = null;\n }\n }\n get data() {\n return this.delegate.data;\n }\n destroy() {\n this.replay = null;\n this.delegate.destroy();\n }\n createElement(name, namespace) {\n return this.delegate.createElement(name, namespace);\n }\n createComment(value) {\n return this.delegate.createComment(value);\n }\n createText(value) {\n return this.delegate.createText(value);\n }\n get destroyNode() {\n return this.delegate.destroyNode;\n }\n appendChild(parent, newChild) {\n this.delegate.appendChild(parent, newChild);\n }\n insertBefore(parent, newChild, refChild, isMove) {\n this.delegate.insertBefore(parent, newChild, refChild, isMove);\n }\n removeChild(parent, oldChild, isHostElement) {\n this.delegate.removeChild(parent, oldChild, isHostElement);\n }\n selectRootElement(selectorOrNode, preserveContent) {\n return this.delegate.selectRootElement(selectorOrNode, preserveContent);\n }\n parentNode(node) {\n return this.delegate.parentNode(node);\n }\n nextSibling(node) {\n return this.delegate.nextSibling(node);\n }\n setAttribute(el, name, value, namespace) {\n this.delegate.setAttribute(el, name, value, namespace);\n }\n removeAttribute(el, name, namespace) {\n this.delegate.removeAttribute(el, name, namespace);\n }\n addClass(el, name) {\n this.delegate.addClass(el, name);\n }\n removeClass(el, name) {\n this.delegate.removeClass(el, name);\n }\n setStyle(el, style, value, flags) {\n this.delegate.setStyle(el, style, value, flags);\n }\n removeStyle(el, style, flags) {\n this.delegate.removeStyle(el, style, flags);\n }\n setProperty(el, name, value) {\n // We need to keep track of animation properties set on default renderer\n // So we can also set them also on the animation renderer\n if (this.shouldReplay(name)) {\n this.replay.push(renderer => renderer.setProperty(el, name, value));\n }\n this.delegate.setProperty(el, name, value);\n }\n setValue(node, value) {\n this.delegate.setValue(node, value);\n }\n listen(target, eventName, callback, options) {\n // We need to keep track of animation events registred by the default renderer\n // So we can also register them against the animation renderer\n if (this.shouldReplay(eventName)) {\n this.replay.push(renderer => renderer.listen(target, eventName, callback, options));\n }\n return this.delegate.listen(target, eventName, callback, options);\n }\n shouldReplay(propOrEventName) {\n //`null` indicates that we no longer need to collect events and properties\n return this.replay !== null && propOrEventName.startsWith(ANIMATION_PREFIX);\n }\n}\n/**\n * Provides a custom scheduler function for the async loading of the animation package.\n *\n * Private token for investigation purposes\n */\nconst ɵASYNC_ANIMATION_LOADING_SCHEDULER_FN = /*#__PURE__*/new InjectionToken(ngDevMode ? 'async_animation_loading_scheduler_fn' : '');\n\n/**\n * Returns the set of dependency-injection providers\n * to enable animations in an application. See [animations guide](guide/animations)\n * to learn more about animations in Angular.\n *\n * When you use this function instead of the eager `provideAnimations()`, animations won't be\n * rendered until the renderer is loaded.\n *\n * @usageNotes\n *\n * The function is useful when you want to enable animations in an application\n * bootstrapped using the `bootstrapApplication` function. In this scenario there\n * is no need to import the `BrowserAnimationsModule` NgModule at all, just add\n * providers returned by this function to the `providers` list as show below.\n *\n * ```ts\n * bootstrapApplication(RootComponent, {\n * providers: [\n * provideAnimationsAsync()\n * ]\n * });\n * ```\n *\n * @param type pass `'noop'` as argument to disable animations.\n *\n * @publicApi\n */\nfunction provideAnimationsAsync(type = 'animations') {\n ɵperformanceMarkFeature('NgAsyncAnimations');\n return makeEnvironmentProviders([{\n provide: RendererFactory2,\n useFactory: (doc, renderer, zone) => {\n return new AsyncAnimationRendererFactory(doc, renderer, zone, type);\n },\n deps: [DOCUMENT, ɵDomRendererFactory2, NgZone]\n }, {\n provide: ANIMATION_MODULE_TYPE,\n useValue: type === 'noop' ? 'NoopAnimations' : 'BrowserAnimations'\n }]);\n}\n\n/**\n * @module\n * @description\n * Entry point for all animation APIs of the animation browser package.\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\n\n// This file is not used to build this module. It is only used during editing\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { provideAnimationsAsync, ɵASYNC_ANIMATION_LOADING_SCHEDULER_FN, AsyncAnimationRendererFactory as ɵAsyncAnimationRendererFactory };\n","import * as i0 from '@angular/core';\nimport { InjectionToken, inject, Injector, NgZone, ɵglobal as _global, Injectable, NgModule, makeEnvironmentProviders } from '@angular/core';\nimport { Store, withNgxsPlugin } from '@ngxs/store';\nimport { getActionTypeFromInstance, InitState } from '@ngxs/store/plugins';\nimport { catchError, tap } from 'rxjs/operators';\nconst NGXS_DEVTOOLS_OPTIONS = new InjectionToken('NGXS_DEVTOOLS_OPTIONS');\n\n/**\n * Adds support for the Redux Devtools extension:\n * http://extension.remotedev.io/\n */\nlet NgxsReduxDevtoolsPlugin = /*#__PURE__*/(() => {\n class NgxsReduxDevtoolsPlugin {\n constructor() {\n this._injector = inject(Injector);\n this._ngZone = inject(NgZone);\n this._options = inject(NGXS_DEVTOOLS_OPTIONS);\n this.devtoolsExtension = null;\n this.globalDevtools = _global['__REDUX_DEVTOOLS_EXTENSION__'] || _global['devToolsExtension'];\n this.unsubscribe = null;\n this.connect();\n }\n ngOnDestroy() {\n this.unsubscribe?.();\n this.globalDevtools?.disconnect();\n }\n /**\n * Lazy get the store for circular dependency issues\n */\n get store() {\n return this._injector.get(Store);\n }\n /**\n * Middleware handle function\n */\n handle(state, action, next) {\n if (!this.devtoolsExtension || this._options.disabled) {\n return next(state, action);\n }\n return next(state, action).pipe(catchError(error => {\n const newState = this.store.snapshot();\n this.sendToDevTools(state, action, newState);\n throw error;\n }), tap(newState => {\n this.sendToDevTools(state, action, newState);\n }));\n }\n sendToDevTools(state, action, newState) {\n const type = getActionTypeFromInstance(action);\n // if init action, send initial state to dev tools\n const isInitAction = type === InitState.type;\n if (isInitAction) {\n this.devtoolsExtension.init(state);\n } else {\n this.devtoolsExtension.send({\n ...action,\n action: null,\n type\n }, newState);\n }\n }\n /**\n * Handle the action from the dev tools subscription\n */\n dispatched(action) {\n if (action.type === \"DISPATCH\" /* ReduxDevtoolsActionType.Dispatch */) {\n if (action.payload.type === \"JUMP_TO_ACTION\" /* ReduxDevtoolsPayloadType.JumpToAction */ || action.payload.type === \"JUMP_TO_STATE\" /* ReduxDevtoolsPayloadType.JumpToState */) {\n const prevState = JSON.parse(action.state);\n // This makes the DevTools and Router plugins compatible with each other.\n // We check for the existence of the `router` state and ensure it has the\n // `trigger` property, confirming that it is our router state (coming from `@ngxs/router-plugin`).\n // This enables a time-traveling feature, as it not only restores the state but\n // also allows the `RouterState` to navigate back when the action is jumped.\n if (prevState.router && prevState.router.trigger) {\n prevState.router.trigger = 'devtools';\n }\n this.store.reset(prevState);\n } else if (action.payload.type === \"TOGGLE_ACTION\" /* ReduxDevtoolsPayloadType.ToggleAction */) {\n console.warn('Skip is not supported at this time.');\n } else if (action.payload.type === \"IMPORT_STATE\" /* ReduxDevtoolsPayloadType.ImportState */) {\n const {\n actionsById,\n computedStates,\n currentStateIndex\n } = action.payload.nextLiftedState;\n this.devtoolsExtension.init(computedStates[0].state);\n Object.keys(actionsById).filter(actionId => actionId !== '0').forEach(actionId => this.devtoolsExtension.send(actionsById[actionId], computedStates[actionId].state));\n this.store.reset(computedStates[currentStateIndex].state);\n }\n } else if (action.type === \"ACTION\" /* ReduxDevtoolsActionType.Action */) {\n const actionPayload = JSON.parse(action.payload);\n this.store.dispatch(actionPayload);\n }\n }\n connect() {\n if (!this.globalDevtools || this._options.disabled) {\n return;\n }\n // The `connect` method adds a `message` event listener to communicate\n // with an extension through `window.postMessage` and handle message events.\n // Since we only handle two specific events, we aim to avoid unnecessary change\n // detections triggered by events that the extension sends, but we don't need to handle.\n this.devtoolsExtension = this._ngZone.runOutsideAngular(() => this.globalDevtools.connect(this._options));\n this.unsubscribe = this.devtoolsExtension.subscribe(action => {\n if (action.type === \"DISPATCH\" /* ReduxDevtoolsActionType.Dispatch */ || action.type === \"ACTION\" /* ReduxDevtoolsActionType.Action */) {\n this.dispatched(action);\n }\n });\n }\n /** @nocollapse */\n static {\n this.ɵfac = function NgxsReduxDevtoolsPlugin_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || NgxsReduxDevtoolsPlugin)();\n };\n }\n /** @nocollapse */\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NgxsReduxDevtoolsPlugin,\n factory: NgxsReduxDevtoolsPlugin.ɵfac\n });\n }\n }\n return NgxsReduxDevtoolsPlugin;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction devtoolsOptionsFactory(options) {\n return {\n name: 'NGXS',\n ...options\n };\n}\nconst USER_OPTIONS = new InjectionToken('USER_OPTIONS');\nlet NgxsReduxDevtoolsPluginModule = /*#__PURE__*/(() => {\n class NgxsReduxDevtoolsPluginModule {\n static forRoot(options) {\n return {\n ngModule: NgxsReduxDevtoolsPluginModule,\n providers: [withNgxsPlugin(NgxsReduxDevtoolsPlugin), {\n provide: USER_OPTIONS,\n useValue: options\n }, {\n provide: NGXS_DEVTOOLS_OPTIONS,\n useFactory: devtoolsOptionsFactory,\n deps: [USER_OPTIONS]\n }]\n };\n }\n /** @nocollapse */\n static {\n this.ɵfac = function NgxsReduxDevtoolsPluginModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || NgxsReduxDevtoolsPluginModule)();\n };\n }\n /** @nocollapse */\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: NgxsReduxDevtoolsPluginModule\n });\n }\n /** @nocollapse */\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({});\n }\n }\n return NgxsReduxDevtoolsPluginModule;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction withNgxsReduxDevtoolsPlugin(options) {\n return makeEnvironmentProviders([withNgxsPlugin(NgxsReduxDevtoolsPlugin), {\n provide: USER_OPTIONS,\n useValue: options\n }, {\n provide: NGXS_DEVTOOLS_OPTIONS,\n useFactory: devtoolsOptionsFactory,\n deps: [USER_OPTIONS]\n }]);\n}\n\n/**\n * The public api for consumers of @ngxs/devtools-plugin\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { NGXS_DEVTOOLS_OPTIONS, NgxsReduxDevtoolsPlugin, NgxsReduxDevtoolsPluginModule, withNgxsReduxDevtoolsPlugin };\n","import { InjectionToken, inject } from '@angular/core';\nimport { StateToken } from '@ngxs/store';\nimport { ɵMETA_OPTIONS_KEY as _META_OPTIONS_KEY } from '@ngxs/store/internals';\n\n/**\n * The following key is used to store the entire serialized\n * state when no specific state is provided.\n */\nconst ɵDEFAULT_STATE_KEY = '@@STATE';\nconst ɵUSER_OPTIONS = new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'USER_OPTIONS' : '');\n// Determines whether all states in the NGXS registry should be persisted or not.\nconst ɵALL_STATES_PERSISTED = new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'ALL_STATES_PERSISTED' : '', {\n providedIn: 'root',\n factory: () => inject(ɵUSER_OPTIONS).keys === '*'\n});\nconst ɵNGXS_STORAGE_PLUGIN_OPTIONS = new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'NGXS_STORAGE_PLUGIN_OPTIONS' : '');\nconst STORAGE_ENGINE = new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'STORAGE_ENGINE' : '');\n\n/** Determines whether the provided key has the following structure. */\nfunction ɵisKeyWithExplicitEngine(key) {\n return key != null && !!key.engine;\n}\nfunction ɵextractStringKey(storageKey) {\n // Extract the actual key out of the `{ key, engine }` structure.\n if (ɵisKeyWithExplicitEngine(storageKey)) {\n storageKey = storageKey.key;\n }\n // Given the `storageKey` is a class, for instance, `AuthState`.\n // We should retrieve its metadata and the `name` property.\n // The `name` property might be a string (state name) or a state token.\n if (storageKey.hasOwnProperty(_META_OPTIONS_KEY)) {\n storageKey = storageKey[_META_OPTIONS_KEY].name;\n }\n return storageKey instanceof StateToken ? storageKey.getName() : storageKey;\n}\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { STORAGE_ENGINE, ɵALL_STATES_PERSISTED, ɵDEFAULT_STATE_KEY, ɵNGXS_STORAGE_PLUGIN_OPTIONS, ɵUSER_OPTIONS, ɵextractStringKey, ɵisKeyWithExplicitEngine };\n","import * as i0 from '@angular/core';\nimport { inject, Injector, Injectable, PLATFORM_ID, NgModule, makeEnvironmentProviders, ENVIRONMENT_INITIALIZER, InjectionToken } from '@angular/core';\nimport { withNgxsPlugin } from '@ngxs/store';\nimport { ɵDEFAULT_STATE_KEY as _DEFAULT_STATE_KEY, ɵNGXS_STORAGE_PLUGIN_OPTIONS as _NGXS_STORAGE_PLUGIN_OPTIONS, ɵextractStringKey as _extractStringKey, ɵisKeyWithExplicitEngine as _isKeyWithExplicitEngine, STORAGE_ENGINE, ɵALL_STATES_PERSISTED as _ALL_STATES_PERSISTED, ɵUSER_OPTIONS as _USER_OPTIONS } from '@ngxs/storage-plugin/internals';\nexport { STORAGE_ENGINE } from '@ngxs/storage-plugin/internals';\nimport { isPlatformServer, isPlatformBrowser } from '@angular/common';\nimport { actionMatcher, InitState, UpdateState, getValue, setValue } from '@ngxs/store/plugins';\nimport { tap } from 'rxjs/operators';\nfunction storageOptionsFactory(options) {\n return {\n storage: 0 /* StorageOption.LocalStorage */,\n serialize: JSON.stringify,\n deserialize: JSON.parse,\n beforeSerialize: obj => obj,\n afterDeserialize: obj => obj,\n ...options,\n keys: options.keys === '*' ? [_DEFAULT_STATE_KEY] : options.keys\n };\n}\nfunction engineFactory(options, platformId) {\n if (isPlatformServer(platformId)) {\n return null;\n }\n if (options.storage === 0 /* StorageOption.LocalStorage */) {\n return localStorage;\n } else if (options.storage === 1 /* StorageOption.SessionStorage */) {\n return sessionStorage;\n }\n return null;\n}\nfunction getStorageKey(key, options) {\n // Prepends the `namespace` option to any key if it's been provided by a user.\n // So `@@STATE` becomes `my-app:@@STATE`.\n return options?.namespace ? `${options.namespace}:${key}` : key;\n}\nlet ɵNgxsStoragePluginKeysManager = /*#__PURE__*/(() => {\n class ɵNgxsStoragePluginKeysManager {\n constructor() {\n /** Store keys separately in a set so we're able to check if the key already exists. */\n this._keys = new Set();\n this._injector = inject(Injector);\n this._keysWithEngines = [];\n const {\n keys\n } = inject(_NGXS_STORAGE_PLUGIN_OPTIONS);\n this.addKeys(keys);\n }\n getKeysWithEngines() {\n // Spread to prevent external code from directly modifying the internal state.\n return [...this._keysWithEngines];\n }\n addKeys(storageKeys) {\n for (const storageKey of storageKeys) {\n const key = _extractStringKey(storageKey);\n // The user may call `withStorageFeature` with the same state multiple times.\n // Let's prevent duplicating state names in the `keysWithEngines` list.\n // Please note that calling provideStates multiple times with the same state is\n // acceptable behavior. This may occur because the state could be necessary at the\n // feature level, and different parts of the application might require its registration.\n // Consequently, `withStorageFeature` may also be called multiple times.\n if (this._keys.has(key)) {\n continue;\n }\n this._keys.add(key);\n const engine = _isKeyWithExplicitEngine(storageKey) ? this._injector.get(storageKey.engine) : this._injector.get(STORAGE_ENGINE);\n this._keysWithEngines.push({\n key,\n engine\n });\n }\n }\n /** @nocollapse */\n static {\n this.ɵfac = function ɵNgxsStoragePluginKeysManager_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ɵNgxsStoragePluginKeysManager)();\n };\n }\n /** @nocollapse */\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ɵNgxsStoragePluginKeysManager,\n factory: ɵNgxsStoragePluginKeysManager.ɵfac,\n providedIn: 'root'\n });\n }\n }\n return ɵNgxsStoragePluginKeysManager;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet NgxsStoragePlugin = /*#__PURE__*/(() => {\n class NgxsStoragePlugin {\n constructor() {\n this._keysManager = inject(ɵNgxsStoragePluginKeysManager);\n this._options = inject(_NGXS_STORAGE_PLUGIN_OPTIONS);\n this._allStatesPersisted = inject(_ALL_STATES_PERSISTED);\n this._isServer = isPlatformServer(inject(PLATFORM_ID));\n }\n handle(state, event, next) {\n if (this._isServer) {\n return next(state, event);\n }\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState);\n const isUpdateAction = matches(UpdateState);\n const isInitOrUpdateAction = isInitAction || isUpdateAction;\n let hasMigration = false;\n if (isInitOrUpdateAction) {\n const addedStates = isUpdateAction && event.addedStates;\n for (const {\n key,\n engine\n } of this._keysManager.getKeysWithEngines()) {\n // We're checking what states have been added by NGXS and if any of these states should be handled by\n // the storage plugin. For instance, we only want to deserialize the `auth` state, NGXS has added\n // the `user` state, the storage plugin will be rerun and will do redundant deserialization.\n // `usesDefaultStateKey` is necessary to check since `event.addedStates` never contains `@@STATE`.\n if (!this._allStatesPersisted && addedStates) {\n // We support providing keys that can be deeply nested via dot notation, for instance,\n // `keys: ['myState.myProperty']` is a valid key.\n // The state name should always go first. The below code checks if the `key` includes dot\n // notation and extracts the state name out of the key.\n // Given the `key` is `myState.myProperty`, the `addedStates` will only contain `myState`.\n const dotNotationIndex = key.indexOf(DOT);\n const stateName = dotNotationIndex > -1 ? key.slice(0, dotNotationIndex) : key;\n if (!addedStates.hasOwnProperty(stateName)) {\n continue;\n }\n }\n const storageKey = getStorageKey(key, this._options);\n let storedValue = engine.getItem(storageKey);\n if (storedValue !== 'undefined' && storedValue != null) {\n try {\n const newVal = this._options.deserialize(storedValue);\n storedValue = this._options.afterDeserialize(newVal, key);\n } catch {\n typeof ngDevMode !== 'undefined' && ngDevMode && console.error(`Error ocurred while deserializing the ${storageKey} store value, falling back to empty object, the value obtained from the store: `, storedValue);\n storedValue = {};\n }\n this._options.migrations?.forEach(strategy => {\n const versionMatch = strategy.version === getValue(storedValue, strategy.versionKey || 'version');\n const keyMatch = !strategy.key && this._allStatesPersisted || strategy.key === key;\n if (versionMatch && keyMatch) {\n storedValue = strategy.migrate(storedValue);\n hasMigration = true;\n }\n });\n if (this._allStatesPersisted) {\n storedValue = this._hydrateSelectivelyOnUpdate(storedValue, addedStates);\n state = {\n ...state,\n ...storedValue\n };\n } else {\n state = setValue(state, key, storedValue);\n }\n }\n }\n }\n return next(state, event).pipe(tap(nextState => {\n if (isInitOrUpdateAction && !hasMigration) {\n return;\n }\n for (const {\n key,\n engine\n } of this._keysManager.getKeysWithEngines()) {\n let storedValue = nextState;\n const storageKey = getStorageKey(key, this._options);\n if (key !== _DEFAULT_STATE_KEY) {\n storedValue = getValue(nextState, key);\n }\n try {\n const newStoredValue = this._options.beforeSerialize(storedValue, key);\n engine.setItem(storageKey, this._options.serialize(newStoredValue));\n } catch (error) {\n if (typeof ngDevMode !== 'undefined' && ngDevMode) {\n if (error && (error.name === 'QuotaExceededError' || error.name === 'NS_ERROR_DOM_QUOTA_REACHED')) {\n console.error(`The ${storageKey} store value exceeds the browser storage quota: `, storedValue);\n } else {\n console.error(`Error ocurred while serializing the ${storageKey} store value, value not updated, the value obtained from the store: `, storedValue);\n }\n }\n }\n }\n }));\n }\n _hydrateSelectivelyOnUpdate(storedValue, addedStates) {\n // The `UpdateState` action is triggered whenever a feature state is added.\n // The condition below is only satisfied when this action is triggered.\n // Let's consider two states: `counter` and `@ngxs/router-plugin` state.\n // When `provideStore` is called, `CounterState` is provided at the root level,\n // while `@ngxs/router-plugin` is provided as a feature state. Previously, the storage\n // plugin might have stored the value of the counter state as `10`. If `CounterState`\n // implements the `ngxsOnInit` hook and sets the state to `999`, the storage plugin will\n // reset the entire state when the `RouterState` is registered.\n // Consequently, the `counter` state will revert back to `10` instead of `999`.\n if (!storedValue || !addedStates || Object.keys(addedStates).length === 0) {\n // Nothing to update if `addedStates` object is empty.\n return storedValue;\n }\n // The `storedValue` can be the entire state when the default state key\n // is used. However, if `addedStates` only contains the `router` value,\n // we only want to merge the state with that `router` value.\n // Given the `storedValue` is an object:\n // `{ counter: 10, router: {...} }`\n // This will only select the `router` object from the `storedValue`,\n // avoiding unnecessary rehydration of the `counter` state.\n return Object.keys(addedStates).reduce((accumulator, addedState) => {\n if (storedValue.hasOwnProperty(addedState)) {\n accumulator[addedState] = storedValue[addedState];\n }\n return accumulator;\n }, {});\n }\n /** @nocollapse */\n static {\n this.ɵfac = function NgxsStoragePlugin_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || NgxsStoragePlugin)();\n };\n }\n /** @nocollapse */\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NgxsStoragePlugin,\n factory: NgxsStoragePlugin.ɵfac\n });\n }\n }\n return NgxsStoragePlugin;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nconst DOT = '.';\nlet NgxsStoragePluginModule = /*#__PURE__*/(() => {\n class NgxsStoragePluginModule {\n static forRoot(options) {\n return {\n ngModule: NgxsStoragePluginModule,\n providers: [withNgxsPlugin(NgxsStoragePlugin), {\n provide: _USER_OPTIONS,\n useValue: options\n }, {\n provide: _NGXS_STORAGE_PLUGIN_OPTIONS,\n useFactory: storageOptionsFactory,\n deps: [_USER_OPTIONS]\n }, {\n provide: STORAGE_ENGINE,\n useFactory: engineFactory,\n deps: [_NGXS_STORAGE_PLUGIN_OPTIONS, PLATFORM_ID]\n }]\n };\n }\n /** @nocollapse */\n static {\n this.ɵfac = function NgxsStoragePluginModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || NgxsStoragePluginModule)();\n };\n }\n /** @nocollapse */\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: NgxsStoragePluginModule\n });\n }\n /** @nocollapse */\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({});\n }\n }\n return NgxsStoragePluginModule;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction withNgxsStoragePlugin(options) {\n return makeEnvironmentProviders([withNgxsPlugin(NgxsStoragePlugin), {\n provide: _USER_OPTIONS,\n useValue: options\n }, {\n provide: _NGXS_STORAGE_PLUGIN_OPTIONS,\n useFactory: storageOptionsFactory,\n deps: [_USER_OPTIONS]\n }, {\n provide: STORAGE_ENGINE,\n useFactory: engineFactory,\n deps: [_NGXS_STORAGE_PLUGIN_OPTIONS, PLATFORM_ID]\n }]);\n}\nfunction withStorageFeature(storageKeys) {\n return makeEnvironmentProviders([{\n provide: ENVIRONMENT_INITIALIZER,\n multi: true,\n useValue: () => {\n const allStatesPersisted = inject(_ALL_STATES_PERSISTED);\n if (allStatesPersisted) {\n if (typeof ngDevMode !== 'undefined' && ngDevMode) {\n const message = 'The NGXS storage plugin is currently persisting all states because the `keys` ' + 'option was explicitly set to `*` at the root level. To selectively persist states, ' + 'consider explicitly specifying them, allowing for addition at the feature level.';\n console.error(message);\n }\n // We should prevent the addition of any feature states to persistence\n // if the `keys` property is set to `*`, as this could disrupt the algorithm\n // used in the storage plugin. Instead, we should log an error in development\n // mode. In production, it should continue to function, but act as a no-op.\n return;\n }\n inject(ɵNgxsStoragePluginKeysManager).addKeys(storageKeys);\n }\n }]);\n}\nconst LOCAL_STORAGE_ENGINE = /* @__PURE__ */new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'LOCAL_STORAGE_ENGINE' : '', {\n providedIn: 'root',\n factory: () => isPlatformBrowser(inject(PLATFORM_ID)) ? localStorage : null\n});\nconst SESSION_STORAGE_ENGINE = /* @__PURE__ */new InjectionToken(typeof ngDevMode !== 'undefined' && ngDevMode ? 'SESSION_STORAGE_ENGINE' : '', {\n providedIn: 'root',\n factory: () => isPlatformBrowser(inject(PLATFORM_ID)) ? sessionStorage : null\n});\n\n/**\n * The public api for consumers of @ngxs/storage-plugin\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { LOCAL_STORAGE_ENGINE, NgxsStoragePlugin, NgxsStoragePluginModule, SESSION_STORAGE_ENGINE, withNgxsStoragePlugin, withStorageFeature };\n","import * as i0 from '@angular/core';\nimport { InjectionToken, Injectable, Optional, Inject, NgModule, makeEnvironmentProviders } from '@angular/core';\nconst GoogleTagManagerConfigService = new InjectionToken('google-tag-manager-config');\n// adapted from https://github.com/auth0/auth0-angular#dynamic-configuration\nlet GoogleTagManagerConfiguration = /*#__PURE__*/(() => {\n class GoogleTagManagerConfiguration {\n constructor(googleTagManagerConfig) {\n this._googleTagManagerConfig = {\n id: null,\n gtm_auth: '',\n gtm_preview: ''\n };\n if (googleTagManagerConfig) {\n this.set(googleTagManagerConfig);\n }\n }\n set(googleTagManagerConfig) {\n this._googleTagManagerConfig = googleTagManagerConfig;\n }\n get() {\n return this._googleTagManagerConfig;\n }\n static {\n this.ɵfac = function GoogleTagManagerConfiguration_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || GoogleTagManagerConfiguration)(i0.ɵɵinject(GoogleTagManagerConfigService, 8));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: GoogleTagManagerConfiguration,\n factory: GoogleTagManagerConfiguration.ɵfac,\n providedIn: 'root'\n });\n }\n }\n return GoogleTagManagerConfiguration;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet GoogleTagManagerModule = /*#__PURE__*/(() => {\n class GoogleTagManagerModule {\n static forRoot(config) {\n return {\n ngModule: GoogleTagManagerModule,\n providers: [{\n provide: GoogleTagManagerConfigService,\n useValue: config\n }]\n };\n }\n static {\n this.ɵfac = function GoogleTagManagerModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || GoogleTagManagerModule)();\n };\n }\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: GoogleTagManagerModule\n });\n }\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({});\n }\n }\n return GoogleTagManagerModule;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction provideGoogleTagManager(config) {\n return makeEnvironmentProviders([{\n provide: 'googleTagManagerId',\n useValue: config.id\n }, {\n provide: 'googleTagManagerAuth',\n useValue: config.gtm_auth\n }, {\n provide: 'googleTagManagerPreview',\n useValue: config.gtm_preview\n }, {\n provide: 'googleTagManagerResourcePath',\n useValue: config.gtm_resource_path\n }, {\n provide: 'googleTagManagerCSPNonce',\n useValue: config.gtm_csp_none\n }, {\n provide: 'googleTagManagerMode',\n useValue: config.gtm_mode\n }]);\n}\nlet GoogleTagManagerService = /*#__PURE__*/(() => {\n class GoogleTagManagerService {\n constructor(googleTagManagerConfiguration, googleTagManagerId, googleTagManagerMode = \"noisy\", googleTagManagerAuth, googleTagManagerPreview, googleTagManagerResourcePath, googleTagManagerCSPNonce) {\n this.googleTagManagerConfiguration = googleTagManagerConfiguration;\n this.googleTagManagerId = googleTagManagerId;\n this.googleTagManagerMode = googleTagManagerMode;\n this.googleTagManagerAuth = googleTagManagerAuth;\n this.googleTagManagerPreview = googleTagManagerPreview;\n this.googleTagManagerResourcePath = googleTagManagerResourcePath;\n this.googleTagManagerCSPNonce = googleTagManagerCSPNonce;\n this.isLoaded = false;\n this.browserGlobals = {\n windowRef() {\n return window;\n },\n documentRef() {\n return document;\n }\n };\n this.config = this.googleTagManagerConfiguration?.get();\n if (this.config == null) {\n this.config = {\n id: null\n };\n }\n this.config = {\n ...this.config,\n id: googleTagManagerId || this.config.id,\n gtm_auth: googleTagManagerAuth || this.config.gtm_auth,\n gtm_preview: googleTagManagerPreview || this.config.gtm_preview,\n gtm_resource_path: googleTagManagerResourcePath || this.config.gtm_resource_path\n };\n if (this.config.id == null) {\n return;\n }\n }\n checkForId() {\n if (this.googleTagManagerMode !== \"silent\" && !this.config.id) {\n throw new Error('Google tag manager ID not provided.');\n } else if (!this.config.id) {\n return false;\n }\n return true;\n }\n getDataLayer() {\n this.checkForId();\n const window = this.browserGlobals.windowRef();\n window.dataLayer = window.dataLayer || [];\n return window.dataLayer;\n }\n pushOnDataLayer(obj) {\n this.checkForId();\n const dataLayer = this.getDataLayer();\n dataLayer.push(obj);\n }\n addGtmToDom() {\n return new Promise((resolve, reject) => {\n if (this.isLoaded) {\n return resolve(this.isLoaded);\n } else if (!this.checkForId()) {\n return resolve(false);\n }\n const doc = this.browserGlobals.documentRef();\n this.pushOnDataLayer({\n 'gtm.start': new Date().getTime(),\n event: 'gtm.js'\n });\n const gtmScript = doc.createElement('script');\n gtmScript.id = 'GTMscript';\n gtmScript.async = true;\n gtmScript.src = this.applyGtmQueryParams(this.config.gtm_resource_path ? this.config.gtm_resource_path : 'https://www.googletagmanager.com/gtm.js');\n gtmScript.addEventListener('load', () => {\n return resolve(this.isLoaded = true);\n });\n gtmScript.addEventListener('error', () => {\n return reject(false);\n });\n if (this.googleTagManagerCSPNonce) {\n gtmScript.setAttribute('nonce', this.googleTagManagerCSPNonce);\n }\n doc.head.insertBefore(gtmScript, doc.head.firstChild);\n });\n }\n pushTag(item) {\n return new Promise((resolve, reject) => {\n if (!this.checkForId()) {\n return resolve();\n }\n if (!this.isLoaded) {\n this.addGtmToDom().then(() => {\n this.pushOnDataLayer(item);\n return resolve();\n }).catch(() => reject());\n } else {\n this.pushOnDataLayer(item);\n return resolve();\n }\n });\n }\n applyGtmQueryParams(url) {\n if (url.indexOf('?') === -1) {\n url += '?';\n }\n return url + Object.keys(this.config).filter(k => this.config[k]).map(k => `${k}=${this.config[k]}`).join('&');\n }\n static {\n this.ɵfac = function GoogleTagManagerService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || GoogleTagManagerService)(i0.ɵɵinject(GoogleTagManagerConfiguration, 8), i0.ɵɵinject('googleTagManagerId', 8), i0.ɵɵinject('googleTagManagerMode', 8), i0.ɵɵinject('googleTagManagerAuth', 8), i0.ɵɵinject('googleTagManagerPreview', 8), i0.ɵɵinject('googleTagManagerResourcePath', 8), i0.ɵɵinject('googleTagManagerCSPNonce', 8));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: GoogleTagManagerService,\n factory: GoogleTagManagerService.ɵfac,\n providedIn: 'root'\n });\n }\n }\n return GoogleTagManagerService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/*\n * Public API Surface of angular-google-tag-manager\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { GoogleTagManagerConfigService, GoogleTagManagerConfiguration, GoogleTagManagerModule, GoogleTagManagerService, provideGoogleTagManager };\n","import * as i0 from '@angular/core';\nimport { InjectionToken, Injectable, Optional, Inject } from '@angular/core';\nimport { TranslateCompiler } from '@ngx-translate/core';\nimport MessageFormat from '@messageformat/core';\nconst MESSAGE_FORMAT_CONFIG = new InjectionToken(\"MESSAGE_FORMAT_CONFIG\");\nconst defaultConfig = {\n biDiSupport: false,\n formatters: {},\n strictNumberSign: false,\n currency: \"USD\",\n strictPluralKeys: true\n};\n\n/**\n * This compiler expects ICU syntax and compiles the expressions with messageformat.js\n */\nlet TranslateMessageFormatCompiler = /*#__PURE__*/(() => {\n class TranslateMessageFormatCompiler extends TranslateCompiler {\n constructor(config) {\n super();\n this.mfCache = new Map();\n const {\n formatters: customFormatters,\n biDiSupport,\n strictNumberSign: strict,\n currency,\n strictPluralKeys\n } = {\n ...defaultConfig,\n ...config\n };\n this.config = {\n customFormatters,\n biDiSupport,\n strict,\n currency,\n strictPluralKeys\n };\n }\n compile(value, lang) {\n return this.getMessageFormatInstance(lang).compile(value);\n }\n compileTranslations(translations, lang) {\n if (typeof translations === \"string\") {\n return this.compile(translations, lang);\n }\n return Object.keys(translations).reduce((acc, key) => {\n const value = translations[key];\n return {\n ...acc,\n [key]: this.compileTranslations(value, lang)\n };\n }, {});\n }\n getMessageFormatInstance(locale) {\n if (!this.mfCache.has(locale)) {\n this.mfCache.set(locale, new MessageFormat(locale, this.config));\n }\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return this.mfCache.get(locale);\n }\n static {\n this.ɵfac = function TranslateMessageFormatCompiler_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || TranslateMessageFormatCompiler)(i0.ɵɵinject(MESSAGE_FORMAT_CONFIG, 8));\n };\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TranslateMessageFormatCompiler,\n factory: TranslateMessageFormatCompiler.ɵfac\n });\n }\n }\n return TranslateMessageFormatCompiler;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/* eslint-disable-next-line no-console */\nconst log = (...message) => console.log(tag, ...message);\nconst tag = \"[TranslateMessageFormatCompiler]\";\nlet TranslateMessageFormatDebugCompiler = /*#__PURE__*/(() => {\n class TranslateMessageFormatDebugCompiler extends TranslateMessageFormatCompiler {\n compile(value, lang) {\n log(`COMPILE (${lang})`, value);\n const interpolationFn = super.compile(value, lang);\n return this.wrap(interpolationFn, value);\n }\n compileTranslations(value, lang) {\n log(`COMPILE (${lang})`, value);\n return super.compileTranslations(value, lang);\n }\n wrap(fn, reference) {\n return params => {\n log(\"INTERPOLATE\", reference, params);\n return fn(params);\n };\n }\n static {\n this.ɵfac = /* @__PURE__ */(() => {\n let ɵTranslateMessageFormatDebugCompiler_BaseFactory;\n return function TranslateMessageFormatDebugCompiler_Factory(__ngFactoryType__) {\n return (ɵTranslateMessageFormatDebugCompiler_BaseFactory || (ɵTranslateMessageFormatDebugCompiler_BaseFactory = i0.ɵɵgetInheritedFactory(TranslateMessageFormatDebugCompiler)))(__ngFactoryType__ || TranslateMessageFormatDebugCompiler);\n };\n })();\n }\n static {\n this.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TranslateMessageFormatDebugCompiler,\n factory: TranslateMessageFormatDebugCompiler.ɵfac\n });\n }\n }\n return TranslateMessageFormatDebugCompiler;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/*\n * Public API Surface of ngx-translate-messageformat-compiler\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MESSAGE_FORMAT_CONFIG, TranslateMessageFormatCompiler, TranslateMessageFormatDebugCompiler, defaultConfig };\n","import { trigger, state, style, transition, animate, query, animateChild } from '@angular/animations';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { Injectable, EventEmitter, inject, numberAttribute, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, ViewChild, booleanAttribute, ContentChild, ContentChildren, NgModule } from '@angular/core';\nimport { uuid, isEmpty, setAttribute } from '@primeuix/utils';\nimport { SharedModule, MessageService, PrimeTemplate } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { CheckIcon, ExclamationTriangleIcon, InfoCircleIcon, TimesIcon, TimesCircleIcon } from 'primeng/icons';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { BaseStyle } from 'primeng/base';\nconst theme = ({\n dt\n}) => `\n.p-toast {\n width: ${dt('toast.width')};\n white-space: pre-line;\n word-break: break-word;\n}\n\n.p-toast-message {\n margin: 0 0 1rem 0;\n}\n\n.p-toast-message-icon {\n flex-shrink: 0;\n font-size: ${dt('toast.icon.size')};\n width: ${dt('toast.icon.size')};\n height: ${dt('toast.icon.size')};\n}\n\n.p-toast-message-content {\n display: flex;\n align-items: flex-start;\n padding: ${dt('toast.content.padding')};\n gap: ${dt('toast.content.gap')};\n}\n\n.p-toast-message-text {\n flex: 1 1 auto;\n display: flex;\n flex-direction: column;\n gap: ${dt('toast.text.gap')};\n}\n\n.p-toast-summary {\n font-weight: ${dt('toast.summary.font.weight')};\n font-size: ${dt('toast.summary.font.size')};\n}\n\n.p-toast-detail {\n font-weight: ${dt('toast.detail.font.weight')};\n font-size: ${dt('toast.detail.font.size')};\n}\n\n.p-toast-close-button {\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n cursor: pointer;\n background: transparent;\n transition: background ${dt('toast.transition.duration')}, color ${dt('toast.transition.duration')}, outline-color ${dt('toast.transition.duration')}, box-shadow ${dt('toast.transition.duration')};\n outline-color: transparent;\n color: inherit;\n width: ${dt('toast.close.button.width')};\n height: ${dt('toast.close.button.height')};\n border-radius: ${dt('toast.close.button.border.radius')};\n margin: -25% 0 0 0;\n right: -25%;\n padding: 0;\n border: none;\n user-select: none;\n}\n\n.p-toast-close-button:dir(rtl) {\n margin: -25% 0 0 auto;\n left: -25%;\n right: auto;\n}\n\n.p-toast-message-info,\n.p-toast-message-success,\n.p-toast-message-warn,\n.p-toast-message-error,\n.p-toast-message-secondary,\n.p-toast-message-contrast {\n border-width: ${dt('toast.border.width')};\n border-style: solid;\n backdrop-filter: blur(${dt('toast.blur')});\n border-radius: ${dt('toast.border.radius')};\n}\n\n.p-toast-close-icon {\n font-size: ${dt('toast.close.icon.size')};\n width: ${dt('toast.close.icon.size')};\n height: ${dt('toast.close.icon.size')};\n}\n\n.p-toast-close-button:focus-visible {\n outline-width: ${dt('focus.ring.width')};\n outline-style: ${dt('focus.ring.style')};\n outline-offset: ${dt('focus.ring.offset')};\n}\n\n.p-toast-message-info {\n background: ${dt('toast.info.background')};\n border-color: ${dt('toast.info.border.color')};\n color: ${dt('toast.info.color')};\n box-shadow: ${dt('toast.info.shadow')};\n}\n\n.p-toast-message-info .p-toast-detail {\n color: ${dt('toast.info.detail.color')};\n}\n\n.p-toast-message-info .p-toast-close-button:focus-visible {\n outline-color: ${dt('toast.info.close.button.focus.ring.color')};\n box-shadow: ${dt('toast.info.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-info .p-toast-close-button:hover {\n background: ${dt('toast.info.close.button.hover.background')};\n}\n\n.p-toast-message-success {\n background: ${dt('toast.success.background')};\n border-color: ${dt('toast.success.border.color')};\n color: ${dt('toast.success.color')};\n box-shadow: ${dt('toast.success.shadow')};\n}\n\n.p-toast-message-success .p-toast-detail {\n color: ${dt('toast.success.detail.color')};\n}\n\n.p-toast-message-success .p-toast-close-button:focus-visible {\n outline-color: ${dt('toast.success.close.button.focus.ring.color')};\n box-shadow: ${dt('toast.success.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-success .p-toast-close-button:hover {\n background: ${dt('toast.success.close.button.hover.background')};\n}\n\n.p-toast-message-warn {\n background: ${dt('toast.warn.background')};\n border-color: ${dt('toast.warn.border.color')};\n color: ${dt('toast.warn.color')};\n box-shadow: ${dt('toast.warn.shadow')};\n}\n\n.p-toast-message-warn .p-toast-detail {\n color: ${dt('toast.warn.detail.color')};\n}\n\n.p-toast-message-warn .p-toast-close-button:focus-visible {\n outline-color: ${dt('toast.warn.close.button.focus.ring.color')};\n box-shadow: ${dt('toast.warn.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-warn .p-toast-close-button:hover {\n background: ${dt('toast.warn.close.button.hover.background')};\n}\n\n.p-toast-message-error {\n background: ${dt('toast.error.background')};\n border-color: ${dt('toast.error.border.color')};\n color: ${dt('toast.error.color')};\n box-shadow: ${dt('toast.error.shadow')};\n}\n\n.p-toast-message-error .p-toast-detail {\n color: ${dt('toast.error.detail.color')};\n}\n\n.p-toast-message-error .p-toast-close-button:focus-visible {\n outline-color: ${dt('toast.error.close.button.focus.ring.color')};\n box-shadow: ${dt('toast.error.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-error .p-toast-close-button:hover {\n background: ${dt('toast.error.close.button.hover.background')};\n}\n\n.p-toast-message-secondary {\n background: ${dt('toast.secondary.background')};\n border-color: ${dt('toast.secondary.border.color')};\n color: ${dt('toast.secondary.color')};\n box-shadow: ${dt('toast.secondary.shadow')};\n}\n\n.p-toast-message-secondary .p-toast-detail {\n color: ${dt('toast.secondary.detail.color')};\n}\n\n.p-toast-message-secondary .p-toast-close-button:focus-visible {\n outline-color: ${dt('toast.secondary.close.button.focus.ring.color')};\n box-shadow: ${dt('toast.secondary.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-secondary .p-toast-close-button:hover {\n background: ${dt('toast.secondary.close.button.hover.background')};\n}\n\n.p-toast-message-contrast {\n background: ${dt('toast.contrast.background')};\n border-color: ${dt('toast.contrast.border.color')};\n color: ${dt('toast.contrast.color')};\n box-shadow: ${dt('toast.contrast.shadow')};\n}\n\n.p-toast-message-contrast .p-toast-detail {\n color: ${dt('toast.contrast.detail.color')};\n}\n\n.p-toast-message-contrast .p-toast-close-button:focus-visible {\n outline-color: ${dt('toast.contrast.close.button.focus.ring.color')};\n box-shadow: ${dt('toast.contrast.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-contrast .p-toast-close-button:hover {\n background: ${dt('toast.contrast.close.button.hover.background')};\n}\n\n.p-toast-top-center {\n transform: translateX(-50%);\n}\n\n.p-toast-bottom-center {\n transform: translateX(-50%);\n}\n\n.p-toast-center {\n min-width: 20vw;\n transform: translate(-50%, -50%);\n}\n\n.p-toast-message-enter-from {\n opacity: 0;\n transform: translateY(50%);\n}\n\n.p-toast-message-leave-from {\n max-height: 1000px;\n}\n\n.p-toast .p-toast-message.p-toast-message-leave-to {\n max-height: 0;\n opacity: 0;\n margin-bottom: 0;\n overflow: hidden;\n}\n\n.p-toast-message-enter-active {\n transition: transform 0.3s, opacity 0.3s;\n}\n\n.p-toast-message-leave-active {\n transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n}\n`;\n// Position\nconst inlineStyles = {\n root: ({\n instance\n }) => {\n const {\n _position\n } = instance;\n return {\n position: 'fixed',\n top: _position === 'top-right' || _position === 'top-left' || _position === 'top-center' ? '20px' : _position === 'center' ? '50%' : null,\n right: (_position === 'top-right' || _position === 'bottom-right') && '20px',\n bottom: (_position === 'bottom-left' || _position === 'bottom-right' || _position === 'bottom-center') && '20px',\n left: _position === 'top-left' || _position === 'bottom-left' ? '20px' : _position === 'center' || _position === 'top-center' || _position === 'bottom-center' ? '50%' : null\n };\n }\n};\nconst classes = {\n root: ({\n instance\n }) => ({\n 'p-toast p-component': true,\n [`p-toast-${instance._position}`]: !!instance._position\n }),\n message: ({\n instance\n }) => ({\n 'p-toast-message': true,\n 'p-toast-message-info': instance.message.severity === 'info' || instance.message.severity === undefined,\n 'p-toast-message-warn': instance.message.severity === 'warn',\n 'p-toast-message-error': instance.message.severity === 'error',\n 'p-toast-message-success': instance.message.severity === 'success',\n 'p-toast-message-secondary': instance.message.severity === 'secondary',\n 'p-toast-message-contrast': instance.message.severity === 'contrast'\n }),\n messageContent: 'p-toast-message-content',\n messageIcon: ({\n instance\n }) => ({\n 'p-toast-message-icon': true,\n [`pi ${instance.message.icon}`]: !!instance.message.icon\n }),\n messageText: 'p-toast-message-text',\n summary: 'p-toast-summary',\n detail: 'p-toast-detail',\n closeButton: 'p-toast-close-button',\n closeIcon: ({\n instance\n }) => ({\n 'p-toast-close-icon': true,\n [`pi ${instance.message.closeIcon}`]: !!instance.message.closeIcon\n })\n};\nlet ToastStyle = /*#__PURE__*/(() => {\n class ToastStyle extends BaseStyle {\n name = 'toast';\n theme = theme;\n classes = classes;\n inlineStyles = inlineStyles;\n static ɵfac = /*@__PURE__*/(() => {\n let ɵToastStyle_BaseFactory;\n return function ToastStyle_Factory(__ngFactoryType__) {\n return (ɵToastStyle_BaseFactory || (ɵToastStyle_BaseFactory = i0.ɵɵgetInheritedFactory(ToastStyle)))(__ngFactoryType__ || ToastStyle);\n };\n })();\n static ɵprov = /*@__PURE__*/i0.ɵɵdefineInjectable({\n token: ToastStyle,\n factory: ToastStyle.ɵfac\n });\n }\n return ToastStyle;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n *\n * Toast is used to display messages in an overlay.\n *\n * [Live Demo](https://www.primeng.org/toast/)\n *\n * @module toaststyle\n *\n */\nvar ToastClasses = /*#__PURE__*/function (ToastClasses) {\n /**\n * Class name of the root element\n */\n ToastClasses[\"root\"] = \"p-toast\";\n /**\n * Class name of the message element\n */\n ToastClasses[\"message\"] = \"p-toast-message\";\n /**\n * Class name of the message content element\n */\n ToastClasses[\"messageContent\"] = \"p-toast-message-content\";\n /**\n * Class name of the message icon element\n */\n ToastClasses[\"messageIcon\"] = \"p-toast-message-icon\";\n /**\n * Class name of the message text element\n */\n ToastClasses[\"messageText\"] = \"p-toast-message-text\";\n /**\n * Class name of the summary element\n */\n ToastClasses[\"summary\"] = \"p-toast-summary\";\n /**\n * Class name of the detail element\n */\n ToastClasses[\"detail\"] = \"p-toast-detail\";\n /**\n * Class name of the close button element\n */\n ToastClasses[\"closeButton\"] = \"p-toast-close-button\";\n /**\n * Class name of the close icon element\n */\n ToastClasses[\"closeIcon\"] = \"p-toast-close-icon\";\n return ToastClasses;\n}(ToastClasses || {});\nconst _c0 = [\"container\"];\nconst _c1 = (a0, a1, a2, a3) => ({\n showTransformParams: a0,\n hideTransformParams: a1,\n showTransitionParams: a2,\n hideTransitionParams: a3\n});\nconst _c2 = a0 => ({\n value: \"visible\",\n params: a0\n});\nconst _c3 = (a0, a1) => ({\n $implicit: a0,\n closeFn: a1\n});\nconst _c4 = a0 => ({\n $implicit: a0\n});\nfunction ToastItem_Conditional_2_ng_container_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\nfunction ToastItem_Conditional_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵtemplate(0, ToastItem_Conditional_2_ng_container_0_Template, 1, 0, \"ng-container\", 3);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r1.headlessTemplate)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction2(2, _c3, ctx_r1.message, ctx_r1.onCloseIconClick));\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"span\", 4);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(3);\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"messageIcon\"));\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_2_Case_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"CheckIcon\");\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"icon\");\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_2_Case_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"InfoCircleIcon\");\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"icon\");\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_2_Case_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"TimesCircleIcon\");\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"icon\");\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_2_Case_4_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"ExclamationTriangleIcon\");\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"icon\");\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_2_Case_5_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"InfoCircleIcon\");\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"icon\");\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_span_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 4);\n i0.ɵɵtemplate(1, ToastItem_Conditional_3_ng_container_1_span_2_Case_1_Template, 1, 2, \"CheckIcon\")(2, ToastItem_Conditional_3_ng_container_1_span_2_Case_2_Template, 1, 2, \"InfoCircleIcon\")(3, ToastItem_Conditional_3_ng_container_1_span_2_Case_3_Template, 1, 2, \"TimesCircleIcon\")(4, ToastItem_Conditional_3_ng_container_1_span_2_Case_4_Template, 1, 2, \"ExclamationTriangleIcon\")(5, ToastItem_Conditional_3_ng_container_1_span_2_Case_5_Template, 1, 2, \"InfoCircleIcon\");\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n let tmp_7_0;\n const ctx_r1 = i0.ɵɵnextContext(3);\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"messageIcon\"));\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"icon\");\n i0.ɵɵadvance();\n i0.ɵɵconditional((tmp_7_0 = ctx_r1.message.severity) === \"success\" ? 1 : tmp_7_0 === \"info\" ? 2 : tmp_7_0 === \"error\" ? 3 : tmp_7_0 === \"warn\" ? 4 : 5);\n }\n}\nfunction ToastItem_Conditional_3_ng_container_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainerStart(0);\n i0.ɵɵtemplate(1, ToastItem_Conditional_3_ng_container_1_span_1_Template, 1, 1, \"span\", 6)(2, ToastItem_Conditional_3_ng_container_1_span_2_Template, 6, 4, \"span\", 6);\n i0.ɵɵelementStart(3, \"div\", 4)(4, \"div\", 4);\n i0.ɵɵtext(5);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(6, \"div\", 4);\n i0.ɵɵtext(7);\n i0.ɵɵelementEnd()();\n i0.ɵɵelementContainerEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.message.icon);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx_r1.message.icon);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"messageText\"));\n i0.ɵɵattribute(\"data-pc-section\", \"text\");\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"summary\"));\n i0.ɵɵattribute(\"data-pc-section\", \"summary\");\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate1(\" \", ctx_r1.message.summary, \" \");\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"detail\"));\n i0.ɵɵattribute(\"data-pc-section\", \"detail\");\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r1.message.detail);\n }\n}\nfunction ToastItem_Conditional_3_ng_container_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\nfunction ToastItem_Conditional_3_Conditional_3_Conditional_2_span_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"span\", 4);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(4);\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"closeIcon\"));\n }\n}\nfunction ToastItem_Conditional_3_Conditional_3_Conditional_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵtemplate(0, ToastItem_Conditional_3_Conditional_3_Conditional_2_span_0_Template, 1, 1, \"span\", 6);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(3);\n i0.ɵɵproperty(\"ngIf\", ctx_r1.message.closeIcon);\n }\n}\nfunction ToastItem_Conditional_3_Conditional_3_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"TimesIcon\", 4);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(3);\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"closeIcon\"));\n i0.ɵɵattribute(\"aria-hidden\", true)(\"data-pc-section\", \"closeicon\");\n }\n}\nfunction ToastItem_Conditional_3_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n const _r3 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\")(1, \"button\", 7);\n i0.ɵɵlistener(\"click\", function ToastItem_Conditional_3_Conditional_3_Template_button_click_1_listener($event) {\n i0.ɵɵrestoreView(_r3);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onCloseIconClick($event));\n })(\"keydown.enter\", function ToastItem_Conditional_3_Conditional_3_Template_button_keydown_enter_1_listener($event) {\n i0.ɵɵrestoreView(_r3);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onCloseIconClick($event));\n });\n i0.ɵɵtemplate(2, ToastItem_Conditional_3_Conditional_3_Conditional_2_Template, 1, 1, \"span\", 4)(3, ToastItem_Conditional_3_Conditional_3_Conditional_3_Template, 1, 3, \"TimesIcon\", 4);\n i0.ɵɵelementEnd()();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ariaLabel\", ctx_r1.closeAriaLabel);\n i0.ɵɵattribute(\"class\", ctx_r1.cx(\"closeButton\"))(\"data-pc-section\", \"closebutton\");\n i0.ɵɵadvance();\n i0.ɵɵconditional(ctx_r1.message.closeIcon ? 2 : 3);\n }\n}\nfunction ToastItem_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 4);\n i0.ɵɵtemplate(1, ToastItem_Conditional_3_ng_container_1_Template, 8, 10, \"ng-container\", 5)(2, ToastItem_Conditional_3_ng_container_2_Template, 1, 0, \"ng-container\", 3)(3, ToastItem_Conditional_3_Conditional_3_Template, 4, 4, \"div\");\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵclassMap(ctx_r1.message == null ? null : ctx_r1.message.contentStyleClass);\n i0.ɵɵproperty(\"ngClass\", ctx_r1.cx(\"messageContent\"));\n i0.ɵɵattribute(\"data-pc-section\", \"content\");\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx_r1.template);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r1.template)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction1(8, _c4, ctx_r1.message));\n i0.ɵɵadvance();\n i0.ɵɵconditional((ctx_r1.message == null ? null : ctx_r1.message.closable) !== false ? 3 : -1);\n }\n}\nconst _c5 = [\"message\"];\nconst _c6 = [\"headless\"];\nfunction Toast_p_toastItem_2_Template(rf, ctx) {\n if (rf & 1) {\n const _r1 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"p-toastItem\", 3);\n i0.ɵɵlistener(\"onClose\", function Toast_p_toastItem_2_Template_p_toastItem_onClose_0_listener($event) {\n i0.ɵɵrestoreView(_r1);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onMessageClose($event));\n })(\"@toastAnimation.start\", function Toast_p_toastItem_2_Template_p_toastItem_animation_toastAnimation_start_0_listener($event) {\n i0.ɵɵrestoreView(_r1);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAnimationStart($event));\n })(\"@toastAnimation.done\", function Toast_p_toastItem_2_Template_p_toastItem_animation_toastAnimation_done_0_listener($event) {\n i0.ɵɵrestoreView(_r1);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAnimationEnd($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const msg_r3 = ctx.$implicit;\n const i_r4 = ctx.index;\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"message\", msg_r3)(\"index\", i_r4)(\"life\", ctx_r1.life)(\"template\", ctx_r1.template || ctx_r1._template)(\"headlessTemplate\", ctx_r1.headlessTemplate || ctx_r1._headlessTemplate)(\"@toastAnimation\", undefined)(\"showTransformOptions\", ctx_r1.showTransformOptions)(\"hideTransformOptions\", ctx_r1.hideTransformOptions)(\"showTransitionOptions\", ctx_r1.showTransitionOptions)(\"hideTransitionOptions\", ctx_r1.hideTransitionOptions);\n }\n}\nlet ToastItem = /*#__PURE__*/(() => {\n class ToastItem extends BaseComponent {\n zone;\n message;\n index;\n life;\n template;\n headlessTemplate;\n showTransformOptions;\n hideTransformOptions;\n showTransitionOptions;\n hideTransitionOptions;\n onClose = new EventEmitter();\n containerViewChild;\n _componentStyle = inject(ToastStyle);\n timeout;\n constructor(zone) {\n super();\n this.zone = zone;\n }\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.initTimeout();\n }\n initTimeout() {\n if (!this.message?.sticky) {\n this.zone.runOutsideAngular(() => {\n this.timeout = setTimeout(() => {\n this.onClose.emit({\n index: this.index,\n message: this.message\n });\n }, this.message?.life || this.life || 3000);\n });\n }\n }\n clearTimeout() {\n if (this.timeout) {\n clearTimeout(this.timeout);\n this.timeout = null;\n }\n }\n onMouseEnter() {\n this.clearTimeout();\n }\n onMouseLeave() {\n this.initTimeout();\n }\n onCloseIconClick = event => {\n this.clearTimeout();\n this.onClose.emit({\n index: this.index,\n message: this.message\n });\n event.preventDefault();\n };\n get closeAriaLabel() {\n return this.config.translation.aria ? this.config.translation.aria.close : undefined;\n }\n ngOnDestroy() {\n this.clearTimeout();\n super.ngOnDestroy();\n }\n static ɵfac = function ToastItem_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ToastItem)(i0.ɵɵdirectiveInject(i0.NgZone));\n };\n static ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: ToastItem,\n selectors: [[\"p-toastItem\"]],\n viewQuery: function ToastItem_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.containerViewChild = _t.first);\n }\n },\n inputs: {\n message: \"message\",\n index: [2, \"index\", \"index\", numberAttribute],\n life: [2, \"life\", \"life\", numberAttribute],\n template: \"template\",\n headlessTemplate: \"headlessTemplate\",\n showTransformOptions: \"showTransformOptions\",\n hideTransformOptions: \"hideTransformOptions\",\n showTransitionOptions: \"showTransitionOptions\",\n hideTransitionOptions: \"hideTransitionOptions\"\n },\n outputs: {\n onClose: \"onClose\"\n },\n features: [i0.ɵɵProvidersFeature([ToastStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature],\n decls: 4,\n vars: 15,\n consts: [[\"container\", \"\"], [\"role\", \"alert\", \"aria-live\", \"assertive\", \"aria-atomic\", \"true\", 3, \"mouseenter\", \"mouseleave\", \"ngClass\"], [3, \"ngClass\", \"class\"], [4, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"], [3, \"ngClass\"], [4, \"ngIf\"], [3, \"ngClass\", 4, \"ngIf\"], [\"type\", \"button\", \"autofocus\", \"\", 3, \"click\", \"keydown.enter\", \"ariaLabel\"]],\n template: function ToastItem_Template(rf, ctx) {\n if (rf & 1) {\n const _r1 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 1, 0);\n i0.ɵɵlistener(\"mouseenter\", function ToastItem_Template_div_mouseenter_0_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onMouseEnter());\n })(\"mouseleave\", function ToastItem_Template_div_mouseleave_0_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onMouseLeave());\n });\n i0.ɵɵtemplate(2, ToastItem_Conditional_2_Template, 1, 5, \"ng-container\")(3, ToastItem_Conditional_3_Template, 4, 10, \"div\", 2);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n i0.ɵɵclassMap(ctx.message == null ? null : ctx.message.styleClass);\n i0.ɵɵproperty(\"ngClass\", ctx.cx(\"message\"))(\"@messageState\", i0.ɵɵpureFunction1(13, _c2, i0.ɵɵpureFunction4(8, _c1, ctx.showTransformOptions, ctx.hideTransformOptions, ctx.showTransitionOptions, ctx.hideTransitionOptions)));\n i0.ɵɵattribute(\"id\", ctx.message == null ? null : ctx.message.id)(\"data-pc-name\", \"toast\")(\"data-pc-section\", \"root\");\n i0.ɵɵadvance(2);\n i0.ɵɵconditional(ctx.headlessTemplate ? 2 : 3);\n }\n },\n dependencies: [CommonModule, i1.NgClass, i1.NgIf, i1.NgTemplateOutlet, CheckIcon, ExclamationTriangleIcon, InfoCircleIcon, TimesIcon, TimesCircleIcon, SharedModule],\n encapsulation: 2,\n data: {\n animation: [trigger('messageState', [state('visible', style({\n transform: 'translateY(0)',\n opacity: 1\n })), transition('void => *', [style({\n transform: '{{showTransformParams}}',\n opacity: 0\n }), animate('{{showTransitionParams}}')]), transition('* => void', [animate('{{hideTransitionParams}}', style({\n height: 0,\n opacity: 0,\n transform: '{{hideTransformParams}}'\n }))])])]\n },\n changeDetection: 0\n });\n }\n return ToastItem;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * Toast is used to display messages in an overlay.\n * @group Components\n */\nlet Toast = /*#__PURE__*/(() => {\n class Toast extends BaseComponent {\n /**\n * Key of the message in case message is targeted to a specific toast component.\n * @group Props\n */\n key;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n autoZIndex = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n baseZIndex = 0;\n /**\n * The default time to display messages for in milliseconds.\n * @group Props\n */\n life = 3000;\n /**\n * Inline style of the component.\n * @group Props\n */\n style;\n /**\n * Inline class of the component.\n * @group Props\n */\n styleClass;\n /**\n * Position of the toast in viewport.\n * @group Props\n */\n get position() {\n return this._position;\n }\n set position(value) {\n this._position = value;\n this.cd.markForCheck();\n }\n /**\n * It does not add the new message if there is already a toast displayed with the same content\n * @group Props\n */\n preventOpenDuplicates = false;\n /**\n * Displays only once a message with the same content.\n * @group Props\n */\n preventDuplicates = false;\n /**\n * Transform options of the show animation.\n * @group Props\n */\n showTransformOptions = 'translateY(100%)';\n /**\n * Transform options of the hide animation.\n * @group Props\n */\n hideTransformOptions = 'translateY(-100%)';\n /**\n * Transition options of the show animation.\n * @group Props\n */\n showTransitionOptions = '300ms ease-out';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n hideTransitionOptions = '250ms ease-in';\n /**\n * Object literal to define styles per screen size.\n * @group Props\n */\n breakpoints;\n /**\n * Callback to invoke when a message is closed.\n * @param {ToastCloseEvent} event - custom close event.\n * @group Emits\n */\n onClose = new EventEmitter();\n /**\n * Custom template of message.\n * @group Templates\n */\n template;\n /**\n * Custom headless template.\n * @group Templates\n */\n headlessTemplate;\n containerViewChild;\n messageSubscription;\n clearSubscription;\n messages;\n messagesArchieve;\n _position = 'top-right';\n messageService = inject(MessageService);\n _componentStyle = inject(ToastStyle);\n styleElement;\n id = uuid('pn_id_');\n templates;\n ngOnInit() {\n super.ngOnInit();\n this.messageSubscription = this.messageService.messageObserver.subscribe(messages => {\n if (messages) {\n if (Array.isArray(messages)) {\n const filteredMessages = messages.filter(m => this.canAdd(m));\n this.add(filteredMessages);\n } else if (this.canAdd(messages)) {\n this.add([messages]);\n }\n }\n });\n this.clearSubscription = this.messageService.clearObserver.subscribe(key => {\n if (key) {\n if (this.key === key) {\n this.messages = null;\n }\n } else {\n this.messages = null;\n }\n this.cd.markForCheck();\n });\n }\n _template;\n _headlessTemplate;\n ngAfterContentInit() {\n this.templates?.forEach(item => {\n switch (item.getType()) {\n case 'message':\n this._template = item.template;\n break;\n case 'headless':\n this._headlessTemplate = item.template;\n break;\n default:\n this._template = item.template;\n break;\n }\n });\n }\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (this.breakpoints) {\n this.createStyle();\n }\n }\n add(messages) {\n this.messages = this.messages ? [...this.messages, ...messages] : [...messages];\n if (this.preventDuplicates) {\n this.messagesArchieve = this.messagesArchieve ? [...this.messagesArchieve, ...messages] : [...messages];\n }\n this.cd.markForCheck();\n }\n canAdd(message) {\n let allow = this.key === message.key;\n if (allow && this.preventOpenDuplicates) {\n allow = !this.containsMessage(this.messages, message);\n }\n if (allow && this.preventDuplicates) {\n allow = !this.containsMessage(this.messagesArchieve, message);\n }\n return allow;\n }\n containsMessage(collection, message) {\n if (!collection) {\n return false;\n }\n return collection.find(m => {\n return m.summary === message.summary && m.detail == message.detail && m.severity === message.severity;\n }) != null;\n }\n onMessageClose(event) {\n this.messages?.splice(event.index, 1);\n this.onClose.emit({\n message: event.message\n });\n this.cd.detectChanges();\n }\n onAnimationStart(event) {\n if (event.fromState === 'void') {\n this.renderer.setAttribute(this.containerViewChild?.nativeElement, this.id, '');\n if (this.autoZIndex && this.containerViewChild?.nativeElement.style.zIndex === '') {\n ZIndexUtils.set('modal', this.containerViewChild?.nativeElement, this.baseZIndex || this.config.zIndex.modal);\n }\n }\n }\n onAnimationEnd(event) {\n if (event.toState === 'void') {\n if (this.autoZIndex && isEmpty(this.messages)) {\n ZIndexUtils.clear(this.containerViewChild?.nativeElement);\n }\n }\n }\n createStyle() {\n if (!this.styleElement) {\n this.styleElement = this.renderer.createElement('style');\n this.styleElement.type = 'text/css';\n this.renderer.appendChild(this.document.head, this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n let breakpointStyle = '';\n for (let styleProp in this.breakpoints[breakpoint]) {\n breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + ' !important;';\n }\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-toast[${this.id}] {\n ${breakpointStyle}\n }\n }\n `;\n }\n this.renderer.setProperty(this.styleElement, 'innerHTML', innerHTML);\n setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);\n }\n }\n destroyStyle() {\n if (this.styleElement) {\n this.renderer.removeChild(this.document.head, this.styleElement);\n this.styleElement = null;\n }\n }\n ngOnDestroy() {\n if (this.messageSubscription) {\n this.messageSubscription.unsubscribe();\n }\n if (this.containerViewChild && this.autoZIndex) {\n ZIndexUtils.clear(this.containerViewChild.nativeElement);\n }\n if (this.clearSubscription) {\n this.clearSubscription.unsubscribe();\n }\n this.destroyStyle();\n super.ngOnDestroy();\n }\n static ɵfac = /*@__PURE__*/(() => {\n let ɵToast_BaseFactory;\n return function Toast_Factory(__ngFactoryType__) {\n return (ɵToast_BaseFactory || (ɵToast_BaseFactory = i0.ɵɵgetInheritedFactory(Toast)))(__ngFactoryType__ || Toast);\n };\n })();\n static ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: Toast,\n selectors: [[\"p-toast\"]],\n contentQueries: function Toast_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, _c5, 5);\n i0.ɵɵcontentQuery(dirIndex, _c6, 5);\n i0.ɵɵcontentQuery(dirIndex, PrimeTemplate, 4);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.template = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headlessTemplate = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);\n }\n },\n viewQuery: function Toast_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.containerViewChild = _t.first);\n }\n },\n inputs: {\n key: \"key\",\n autoZIndex: [2, \"autoZIndex\", \"autoZIndex\", booleanAttribute],\n baseZIndex: [2, \"baseZIndex\", \"baseZIndex\", numberAttribute],\n life: [2, \"life\", \"life\", numberAttribute],\n style: \"style\",\n styleClass: \"styleClass\",\n position: \"position\",\n preventOpenDuplicates: [2, \"preventOpenDuplicates\", \"preventOpenDuplicates\", booleanAttribute],\n preventDuplicates: [2, \"preventDuplicates\", \"preventDuplicates\", booleanAttribute],\n showTransformOptions: \"showTransformOptions\",\n hideTransformOptions: \"hideTransformOptions\",\n showTransitionOptions: \"showTransitionOptions\",\n hideTransitionOptions: \"hideTransitionOptions\",\n breakpoints: \"breakpoints\"\n },\n outputs: {\n onClose: \"onClose\"\n },\n features: [i0.ɵɵProvidersFeature([ToastStyle]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature],\n decls: 3,\n vars: 7,\n consts: [[\"container\", \"\"], [3, \"ngClass\", \"ngStyle\"], [3, \"message\", \"index\", \"life\", \"template\", \"headlessTemplate\", \"showTransformOptions\", \"hideTransformOptions\", \"showTransitionOptions\", \"hideTransitionOptions\", \"onClose\", 4, \"ngFor\", \"ngForOf\"], [3, \"onClose\", \"message\", \"index\", \"life\", \"template\", \"headlessTemplate\", \"showTransformOptions\", \"hideTransformOptions\", \"showTransitionOptions\", \"hideTransitionOptions\"]],\n template: function Toast_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 1, 0);\n i0.ɵɵtemplate(2, Toast_p_toastItem_2_Template, 1, 10, \"p-toastItem\", 2);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n i0.ɵɵstyleMap(ctx.style);\n i0.ɵɵclassMap(ctx.styleClass);\n i0.ɵɵproperty(\"ngClass\", ctx.cx(\"root\"))(\"ngStyle\", ctx.sx(\"root\"));\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngForOf\", ctx.messages);\n }\n },\n dependencies: [CommonModule, i1.NgClass, i1.NgForOf, i1.NgStyle, ToastItem, SharedModule],\n encapsulation: 2,\n data: {\n animation: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])]\n },\n changeDetection: 0\n });\n }\n return Toast;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet ToastModule = /*#__PURE__*/(() => {\n class ToastModule {\n static ɵfac = function ToastModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ToastModule)();\n };\n static ɵmod = /*@__PURE__*/i0.ɵɵdefineNgModule({\n type: ToastModule\n });\n static ɵinj = /*@__PURE__*/i0.ɵɵdefineInjector({\n imports: [Toast, SharedModule, SharedModule]\n });\n }\n return ToastModule;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n(function () {\n (typeof ngJitMode === \"undefined\" || ngJitMode) && i0.ɵɵsetNgModuleScope(ToastModule, {\n imports: [Toast, SharedModule],\n exports: [Toast, SharedModule]\n });\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Toast, ToastClasses, ToastItem, ToastModule, ToastStyle };\n","export class DoubleIndexedKV {\n constructor() {\n this.keyToValue = new Map();\n this.valueToKey = new Map();\n }\n set(key, value) {\n this.keyToValue.set(key, value);\n this.valueToKey.set(value, key);\n }\n getByKey(key) {\n return this.keyToValue.get(key);\n }\n getByValue(value) {\n return this.valueToKey.get(value);\n }\n clear() {\n this.keyToValue.clear();\n this.valueToKey.clear();\n }\n}\n","import { DoubleIndexedKV } from './double-indexed-kv.js';\nexport class Registry {\n constructor(generateIdentifier) {\n this.generateIdentifier = generateIdentifier;\n this.kv = new DoubleIndexedKV();\n }\n register(value, identifier) {\n if (this.kv.getByValue(value)) {\n return;\n }\n if (!identifier) {\n identifier = this.generateIdentifier(value);\n }\n this.kv.set(identifier, value);\n }\n clear() {\n this.kv.clear();\n }\n getIdentifier(value) {\n return this.kv.getByValue(value);\n }\n getValue(identifier) {\n return this.kv.getByKey(identifier);\n }\n}\n","import { Registry } from './registry.js';\nexport class ClassRegistry extends Registry {\n constructor() {\n super(c => c.name);\n this.classToAllowedProps = new Map();\n }\n register(value, options) {\n if (typeof options === 'object') {\n if (options.allowProps) {\n this.classToAllowedProps.set(value, options.allowProps);\n }\n super.register(value, options.identifier);\n } else {\n super.register(value, options);\n }\n }\n getAllowedProps(value) {\n return this.classToAllowedProps.get(value);\n }\n}\n","function valuesOfObj(record) {\n if ('values' in Object) {\n // eslint-disable-next-line es5/no-es6-methods\n return Object.values(record);\n }\n const values = [];\n // eslint-disable-next-line no-restricted-syntax\n for (const key in record) {\n if (record.hasOwnProperty(key)) {\n values.push(record[key]);\n }\n }\n return values;\n}\nexport function find(record, predicate) {\n const values = valuesOfObj(record);\n if ('find' in values) {\n // eslint-disable-next-line es5/no-es6-methods\n return values.find(predicate);\n }\n const valuesNotNever = values;\n for (let i = 0; i < valuesNotNever.length; i++) {\n const value = valuesNotNever[i];\n if (predicate(value)) {\n return value;\n }\n }\n return undefined;\n}\nexport function forEach(record, run) {\n Object.entries(record).forEach(([key, value]) => run(value, key));\n}\nexport function includes(arr, value) {\n return arr.indexOf(value) !== -1;\n}\nexport function findArr(record, predicate) {\n for (let i = 0; i < record.length; i++) {\n const value = record[i];\n if (predicate(value)) {\n return value;\n }\n }\n return undefined;\n}\n","import { find } from './util.js';\nexport class CustomTransformerRegistry {\n constructor() {\n this.transfomers = {};\n }\n register(transformer) {\n this.transfomers[transformer.name] = transformer;\n }\n findApplicable(v) {\n return find(this.transfomers, transformer => transformer.isApplicable(v));\n }\n findByName(name) {\n return this.transfomers[name];\n }\n}\n","const getType = payload => Object.prototype.toString.call(payload).slice(8, -1);\nexport const isUndefined = payload => typeof payload === 'undefined';\nexport const isNull = payload => payload === null;\nexport const isPlainObject = payload => {\n if (typeof payload !== 'object' || payload === null) return false;\n if (payload === Object.prototype) return false;\n if (Object.getPrototypeOf(payload) === null) return true;\n return Object.getPrototypeOf(payload) === Object.prototype;\n};\nexport const isEmptyObject = payload => isPlainObject(payload) && Object.keys(payload).length === 0;\nexport const isArray = payload => Array.isArray(payload);\nexport const isString = payload => typeof payload === 'string';\nexport const isNumber = payload => typeof payload === 'number' && !isNaN(payload);\nexport const isBoolean = payload => typeof payload === 'boolean';\nexport const isRegExp = payload => payload instanceof RegExp;\nexport const isMap = payload => payload instanceof Map;\nexport const isSet = payload => payload instanceof Set;\nexport const isSymbol = payload => getType(payload) === 'Symbol';\nexport const isDate = payload => payload instanceof Date && !isNaN(payload.valueOf());\nexport const isError = payload => payload instanceof Error;\nexport const isNaNValue = payload => typeof payload === 'number' && isNaN(payload);\nexport const isPrimitive = payload => isBoolean(payload) || isNull(payload) || isUndefined(payload) || isNumber(payload) || isString(payload) || isSymbol(payload);\nexport const isBigint = payload => typeof payload === 'bigint';\nexport const isInfinite = payload => payload === Infinity || payload === -Infinity;\nexport const isTypedArray = payload => ArrayBuffer.isView(payload) && !(payload instanceof DataView);\nexport const isURL = payload => payload instanceof URL;\n","export const escapeKey = key => key.replace(/\\./g, '\\\\.');\nexport const stringifyPath = path => path.map(String).map(escapeKey).join('.');\nexport const parsePath = string => {\n const result = [];\n let segment = '';\n for (let i = 0; i < string.length; i++) {\n let char = string.charAt(i);\n const isEscapedDot = char === '\\\\' && string.charAt(i + 1) === '.';\n if (isEscapedDot) {\n segment += '.';\n i++;\n continue;\n }\n const isEndOfSegment = char === '.';\n if (isEndOfSegment) {\n result.push(segment);\n segment = '';\n continue;\n }\n segment += char;\n }\n const lastSegment = segment;\n result.push(lastSegment);\n return result;\n};\n","import { isBigint, isDate, isInfinite, isMap, isNaNValue, isRegExp, isSet, isUndefined, isSymbol, isArray, isError, isTypedArray, isURL } from './is.js';\nimport { findArr } from './util.js';\nfunction simpleTransformation(isApplicable, annotation, transform, untransform) {\n return {\n isApplicable,\n annotation,\n transform,\n untransform\n };\n}\nconst simpleRules = [simpleTransformation(isUndefined, 'undefined', () => null, () => undefined), simpleTransformation(isBigint, 'bigint', v => v.toString(), v => {\n if (typeof BigInt !== 'undefined') {\n return BigInt(v);\n }\n console.error('Please add a BigInt polyfill.');\n return v;\n}), simpleTransformation(isDate, 'Date', v => v.toISOString(), v => new Date(v)), simpleTransformation(isError, 'Error', (v, superJson) => {\n const baseError = {\n name: v.name,\n message: v.message\n };\n superJson.allowedErrorProps.forEach(prop => {\n baseError[prop] = v[prop];\n });\n return baseError;\n}, (v, superJson) => {\n const e = new Error(v.message);\n e.name = v.name;\n e.stack = v.stack;\n superJson.allowedErrorProps.forEach(prop => {\n e[prop] = v[prop];\n });\n return e;\n}), simpleTransformation(isRegExp, 'regexp', v => '' + v, regex => {\n const body = regex.slice(1, regex.lastIndexOf('/'));\n const flags = regex.slice(regex.lastIndexOf('/') + 1);\n return new RegExp(body, flags);\n}), simpleTransformation(isSet, 'set',\n// (sets only exist in es6+)\n// eslint-disable-next-line es5/no-es6-methods\nv => [...v.values()], v => new Set(v)), simpleTransformation(isMap, 'map', v => [...v.entries()], v => new Map(v)), simpleTransformation(v => isNaNValue(v) || isInfinite(v), 'number', v => {\n if (isNaNValue(v)) {\n return 'NaN';\n }\n if (v > 0) {\n return 'Infinity';\n } else {\n return '-Infinity';\n }\n}, Number), simpleTransformation(v => v === 0 && 1 / v === -Infinity, 'number', () => {\n return '-0';\n}, Number), simpleTransformation(isURL, 'URL', v => v.toString(), v => new URL(v))];\nfunction compositeTransformation(isApplicable, annotation, transform, untransform) {\n return {\n isApplicable,\n annotation,\n transform,\n untransform\n };\n}\nconst symbolRule = compositeTransformation((s, superJson) => {\n if (isSymbol(s)) {\n const isRegistered = !!superJson.symbolRegistry.getIdentifier(s);\n return isRegistered;\n }\n return false;\n}, (s, superJson) => {\n const identifier = superJson.symbolRegistry.getIdentifier(s);\n return ['symbol', identifier];\n}, v => v.description, (_, a, superJson) => {\n const value = superJson.symbolRegistry.getValue(a[1]);\n if (!value) {\n throw new Error('Trying to deserialize unknown symbol');\n }\n return value;\n});\nconst constructorToName = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array, Uint8ClampedArray].reduce((obj, ctor) => {\n obj[ctor.name] = ctor;\n return obj;\n}, {});\nconst typedArrayRule = compositeTransformation(isTypedArray, v => ['typed-array', v.constructor.name], v => [...v], (v, a) => {\n const ctor = constructorToName[a[1]];\n if (!ctor) {\n throw new Error('Trying to deserialize unknown typed array');\n }\n return new ctor(v);\n});\nexport function isInstanceOfRegisteredClass(potentialClass, superJson) {\n if (potentialClass?.constructor) {\n const isRegistered = !!superJson.classRegistry.getIdentifier(potentialClass.constructor);\n return isRegistered;\n }\n return false;\n}\nconst classRule = compositeTransformation(isInstanceOfRegisteredClass, (clazz, superJson) => {\n const identifier = superJson.classRegistry.getIdentifier(clazz.constructor);\n return ['class', identifier];\n}, (clazz, superJson) => {\n const allowedProps = superJson.classRegistry.getAllowedProps(clazz.constructor);\n if (!allowedProps) {\n return {\n ...clazz\n };\n }\n const result = {};\n allowedProps.forEach(prop => {\n result[prop] = clazz[prop];\n });\n return result;\n}, (v, a, superJson) => {\n const clazz = superJson.classRegistry.getValue(a[1]);\n if (!clazz) {\n throw new Error('Trying to deserialize unknown class - check https://github.com/blitz-js/superjson/issues/116#issuecomment-773996564');\n }\n return Object.assign(Object.create(clazz.prototype), v);\n});\nconst customRule = compositeTransformation((value, superJson) => {\n return !!superJson.customTransformerRegistry.findApplicable(value);\n}, (value, superJson) => {\n const transformer = superJson.customTransformerRegistry.findApplicable(value);\n return ['custom', transformer.name];\n}, (value, superJson) => {\n const transformer = superJson.customTransformerRegistry.findApplicable(value);\n return transformer.serialize(value);\n}, (v, a, superJson) => {\n const transformer = superJson.customTransformerRegistry.findByName(a[1]);\n if (!transformer) {\n throw new Error('Trying to deserialize unknown custom value');\n }\n return transformer.deserialize(v);\n});\nconst compositeRules = [classRule, symbolRule, customRule, typedArrayRule];\nexport const transformValue = (value, superJson) => {\n const applicableCompositeRule = findArr(compositeRules, rule => rule.isApplicable(value, superJson));\n if (applicableCompositeRule) {\n return {\n value: applicableCompositeRule.transform(value, superJson),\n type: applicableCompositeRule.annotation(value, superJson)\n };\n }\n const applicableSimpleRule = findArr(simpleRules, rule => rule.isApplicable(value, superJson));\n if (applicableSimpleRule) {\n return {\n value: applicableSimpleRule.transform(value, superJson),\n type: applicableSimpleRule.annotation\n };\n }\n return undefined;\n};\nconst simpleRulesByAnnotation = {};\nsimpleRules.forEach(rule => {\n simpleRulesByAnnotation[rule.annotation] = rule;\n});\nexport const untransformValue = (json, type, superJson) => {\n if (isArray(type)) {\n switch (type[0]) {\n case 'symbol':\n return symbolRule.untransform(json, type, superJson);\n case 'class':\n return classRule.untransform(json, type, superJson);\n case 'custom':\n return customRule.untransform(json, type, superJson);\n case 'typed-array':\n return typedArrayRule.untransform(json, type, superJson);\n default:\n throw new Error('Unknown transformation: ' + type);\n }\n } else {\n const transformation = simpleRulesByAnnotation[type];\n if (!transformation) {\n throw new Error('Unknown transformation: ' + type);\n }\n return transformation.untransform(json, superJson);\n }\n};\n","import { isMap, isArray, isPlainObject, isSet } from './is.js';\nimport { includes } from './util.js';\nconst getNthKey = (value, n) => {\n const keys = value.keys();\n while (n > 0) {\n keys.next();\n n--;\n }\n return keys.next().value;\n};\nfunction validatePath(path) {\n if (includes(path, '__proto__')) {\n throw new Error('__proto__ is not allowed as a property');\n }\n if (includes(path, 'prototype')) {\n throw new Error('prototype is not allowed as a property');\n }\n if (includes(path, 'constructor')) {\n throw new Error('constructor is not allowed as a property');\n }\n}\nexport const getDeep = (object, path) => {\n validatePath(path);\n for (let i = 0; i < path.length; i++) {\n const key = path[i];\n if (isSet(object)) {\n object = getNthKey(object, +key);\n } else if (isMap(object)) {\n const row = +key;\n const type = +path[++i] === 0 ? 'key' : 'value';\n const keyOfRow = getNthKey(object, row);\n switch (type) {\n case 'key':\n object = keyOfRow;\n break;\n case 'value':\n object = object.get(keyOfRow);\n break;\n }\n } else {\n object = object[key];\n }\n }\n return object;\n};\nexport const setDeep = (object, path, mapper) => {\n validatePath(path);\n if (path.length === 0) {\n return mapper(object);\n }\n let parent = object;\n for (let i = 0; i < path.length - 1; i++) {\n const key = path[i];\n if (isArray(parent)) {\n const index = +key;\n parent = parent[index];\n } else if (isPlainObject(parent)) {\n parent = parent[key];\n } else if (isSet(parent)) {\n const row = +key;\n parent = getNthKey(parent, row);\n } else if (isMap(parent)) {\n const isEnd = i === path.length - 2;\n if (isEnd) {\n break;\n }\n const row = +key;\n const type = +path[++i] === 0 ? 'key' : 'value';\n const keyOfRow = getNthKey(parent, row);\n switch (type) {\n case 'key':\n parent = keyOfRow;\n break;\n case 'value':\n parent = parent.get(keyOfRow);\n break;\n }\n }\n }\n const lastKey = path[path.length - 1];\n if (isArray(parent)) {\n parent[+lastKey] = mapper(parent[+lastKey]);\n } else if (isPlainObject(parent)) {\n parent[lastKey] = mapper(parent[lastKey]);\n }\n if (isSet(parent)) {\n const oldValue = getNthKey(parent, +lastKey);\n const newValue = mapper(oldValue);\n if (oldValue !== newValue) {\n parent.delete(oldValue);\n parent.add(newValue);\n }\n }\n if (isMap(parent)) {\n const row = +path[path.length - 2];\n const keyToRow = getNthKey(parent, row);\n const type = +lastKey === 0 ? 'key' : 'value';\n switch (type) {\n case 'key':\n {\n const newKey = mapper(keyToRow);\n parent.set(newKey, parent.get(keyToRow));\n if (newKey !== keyToRow) {\n parent.delete(keyToRow);\n }\n break;\n }\n case 'value':\n {\n parent.set(keyToRow, mapper(parent.get(keyToRow)));\n break;\n }\n }\n }\n return object;\n};\n","import { isArray, isEmptyObject, isMap, isPlainObject, isPrimitive, isSet } from './is.js';\nimport { escapeKey, stringifyPath } from './pathstringifier.js';\nimport { isInstanceOfRegisteredClass, transformValue, untransformValue } from './transformer.js';\nimport { includes, forEach } from './util.js';\nimport { parsePath } from './pathstringifier.js';\nimport { getDeep, setDeep } from './accessDeep.js';\nfunction traverse(tree, walker, origin = []) {\n if (!tree) {\n return;\n }\n if (!isArray(tree)) {\n forEach(tree, (subtree, key) => traverse(subtree, walker, [...origin, ...parsePath(key)]));\n return;\n }\n const [nodeValue, children] = tree;\n if (children) {\n forEach(children, (child, key) => {\n traverse(child, walker, [...origin, ...parsePath(key)]);\n });\n }\n walker(nodeValue, origin);\n}\nexport function applyValueAnnotations(plain, annotations, superJson) {\n traverse(annotations, (type, path) => {\n plain = setDeep(plain, path, v => untransformValue(v, type, superJson));\n });\n return plain;\n}\nexport function applyReferentialEqualityAnnotations(plain, annotations) {\n function apply(identicalPaths, path) {\n const object = getDeep(plain, parsePath(path));\n identicalPaths.map(parsePath).forEach(identicalObjectPath => {\n plain = setDeep(plain, identicalObjectPath, () => object);\n });\n }\n if (isArray(annotations)) {\n const [root, other] = annotations;\n root.forEach(identicalPath => {\n plain = setDeep(plain, parsePath(identicalPath), () => plain);\n });\n if (other) {\n forEach(other, apply);\n }\n } else {\n forEach(annotations, apply);\n }\n return plain;\n}\nconst isDeep = (object, superJson) => isPlainObject(object) || isArray(object) || isMap(object) || isSet(object) || isInstanceOfRegisteredClass(object, superJson);\nfunction addIdentity(object, path, identities) {\n const existingSet = identities.get(object);\n if (existingSet) {\n existingSet.push(path);\n } else {\n identities.set(object, [path]);\n }\n}\nexport function generateReferentialEqualityAnnotations(identitites, dedupe) {\n const result = {};\n let rootEqualityPaths = undefined;\n identitites.forEach(paths => {\n if (paths.length <= 1) {\n return;\n }\n // if we're not deduping, all of these objects continue existing.\n // putting the shortest path first makes it easier to parse for humans\n // if we're deduping though, only the first entry will still exist, so we can't do this optimisation.\n if (!dedupe) {\n paths = paths.map(path => path.map(String)).sort((a, b) => a.length - b.length);\n }\n const [representativePath, ...identicalPaths] = paths;\n if (representativePath.length === 0) {\n rootEqualityPaths = identicalPaths.map(stringifyPath);\n } else {\n result[stringifyPath(representativePath)] = identicalPaths.map(stringifyPath);\n }\n });\n if (rootEqualityPaths) {\n if (isEmptyObject(result)) {\n return [rootEqualityPaths];\n } else {\n return [rootEqualityPaths, result];\n }\n } else {\n return isEmptyObject(result) ? undefined : result;\n }\n}\nexport const walker = (object, identities, superJson, dedupe, path = [], objectsInThisPath = [], seenObjects = new Map()) => {\n const primitive = isPrimitive(object);\n if (!primitive) {\n addIdentity(object, path, identities);\n const seen = seenObjects.get(object);\n if (seen) {\n // short-circuit result if we've seen this object before\n return dedupe ? {\n transformedValue: null\n } : seen;\n }\n }\n if (!isDeep(object, superJson)) {\n const transformed = transformValue(object, superJson);\n const result = transformed ? {\n transformedValue: transformed.value,\n annotations: [transformed.type]\n } : {\n transformedValue: object\n };\n if (!primitive) {\n seenObjects.set(object, result);\n }\n return result;\n }\n if (includes(objectsInThisPath, object)) {\n // prevent circular references\n return {\n transformedValue: null\n };\n }\n const transformationResult = transformValue(object, superJson);\n const transformed = transformationResult?.value ?? object;\n const transformedValue = isArray(transformed) ? [] : {};\n const innerAnnotations = {};\n forEach(transformed, (value, index) => {\n if (index === '__proto__' || index === 'constructor' || index === 'prototype') {\n throw new Error(`Detected property ${index}. This is a prototype pollution risk, please remove it from your object.`);\n }\n const recursiveResult = walker(value, identities, superJson, dedupe, [...path, index], [...objectsInThisPath, object], seenObjects);\n transformedValue[index] = recursiveResult.transformedValue;\n if (isArray(recursiveResult.annotations)) {\n innerAnnotations[index] = recursiveResult.annotations;\n } else if (isPlainObject(recursiveResult.annotations)) {\n forEach(recursiveResult.annotations, (tree, key) => {\n innerAnnotations[escapeKey(index) + '.' + key] = tree;\n });\n }\n });\n const result = isEmptyObject(innerAnnotations) ? {\n transformedValue,\n annotations: !!transformationResult ? [transformationResult.type] : undefined\n } : {\n transformedValue,\n annotations: !!transformationResult ? [transformationResult.type, innerAnnotations] : innerAnnotations\n };\n if (!primitive) {\n seenObjects.set(object, result);\n }\n return result;\n};\n","function getType(payload) {\n return Object.prototype.toString.call(payload).slice(8, -1);\n}\nfunction isAnyObject(payload) {\n return getType(payload) === \"Object\";\n}\nfunction isArray(payload) {\n return getType(payload) === \"Array\";\n}\nfunction isBlob(payload) {\n return getType(payload) === \"Blob\";\n}\nfunction isBoolean(payload) {\n return getType(payload) === \"Boolean\";\n}\nfunction isDate(payload) {\n return getType(payload) === \"Date\" && !isNaN(payload);\n}\nfunction isEmptyArray(payload) {\n return isArray(payload) && payload.length === 0;\n}\nfunction isPlainObject(payload) {\n if (getType(payload) !== \"Object\") return false;\n const prototype = Object.getPrototypeOf(payload);\n return !!prototype && prototype.constructor === Object && prototype === Object.prototype;\n}\nfunction isEmptyObject(payload) {\n return isPlainObject(payload) && Object.keys(payload).length === 0;\n}\nfunction isEmptyString(payload) {\n return payload === \"\";\n}\nfunction isError(payload) {\n return getType(payload) === \"Error\" || payload instanceof Error;\n}\nfunction isFile(payload) {\n return getType(payload) === \"File\";\n}\nfunction isFullArray(payload) {\n return isArray(payload) && payload.length > 0;\n}\nfunction isFullObject(payload) {\n return isPlainObject(payload) && Object.keys(payload).length > 0;\n}\nfunction isString(payload) {\n return getType(payload) === \"String\";\n}\nfunction isFullString(payload) {\n return isString(payload) && payload !== \"\";\n}\nfunction isFunction(payload) {\n return typeof payload === \"function\";\n}\nfunction isType(payload, type) {\n if (!(type instanceof Function)) {\n throw new TypeError(\"Type must be a function\");\n }\n if (!Object.prototype.hasOwnProperty.call(type, \"prototype\")) {\n throw new TypeError(\"Type is not a class\");\n }\n const name = type.name;\n return getType(payload) === name || Boolean(payload && payload.constructor === type);\n}\nfunction isInstanceOf(value, classOrClassName) {\n if (typeof classOrClassName === \"function\") {\n for (let p = value; p; p = Object.getPrototypeOf(p)) {\n if (isType(p, classOrClassName)) {\n return true;\n }\n }\n return false;\n } else {\n for (let p = value; p; p = Object.getPrototypeOf(p)) {\n if (getType(p) === classOrClassName) {\n return true;\n }\n }\n return false;\n }\n}\nfunction isMap(payload) {\n return getType(payload) === \"Map\";\n}\nfunction isNaNValue(payload) {\n return getType(payload) === \"Number\" && isNaN(payload);\n}\nfunction isNumber(payload) {\n return getType(payload) === \"Number\" && !isNaN(payload);\n}\nfunction isNegativeNumber(payload) {\n return isNumber(payload) && payload < 0;\n}\nfunction isNull(payload) {\n return getType(payload) === \"Null\";\n}\nfunction isOneOf(a, b, c, d, e) {\n return value => a(value) || b(value) || !!c && c(value) || !!d && d(value) || !!e && e(value);\n}\nfunction isUndefined(payload) {\n return getType(payload) === \"Undefined\";\n}\nconst isNullOrUndefined = isOneOf(isNull, isUndefined);\nfunction isObject(payload) {\n return isPlainObject(payload);\n}\nfunction isObjectLike(payload) {\n return isAnyObject(payload);\n}\nfunction isPositiveNumber(payload) {\n return isNumber(payload) && payload > 0;\n}\nfunction isSymbol(payload) {\n return getType(payload) === \"Symbol\";\n}\nfunction isPrimitive(payload) {\n return isBoolean(payload) || isNull(payload) || isUndefined(payload) || isNumber(payload) || isString(payload) || isSymbol(payload);\n}\nfunction isPromise(payload) {\n return getType(payload) === \"Promise\";\n}\nfunction isRegExp(payload) {\n return getType(payload) === \"RegExp\";\n}\nfunction isSet(payload) {\n return getType(payload) === \"Set\";\n}\nfunction isWeakMap(payload) {\n return getType(payload) === \"WeakMap\";\n}\nfunction isWeakSet(payload) {\n return getType(payload) === \"WeakSet\";\n}\nexport { getType, isAnyObject, isArray, isBlob, isBoolean, isDate, isEmptyArray, isEmptyObject, isEmptyString, isError, isFile, isFullArray, isFullObject, isFullString, isFunction, isInstanceOf, isMap, isNaNValue, isNegativeNumber, isNull, isNullOrUndefined, isNumber, isObject, isObjectLike, isOneOf, isPlainObject, isPositiveNumber, isPrimitive, isPromise, isRegExp, isSet, isString, isSymbol, isType, isUndefined, isWeakMap, isWeakSet };","import { isArray, isPlainObject } from 'is-what';\nfunction assignProp(carry, key, newVal, originalObject, includeNonenumerable) {\n const propType = {}.propertyIsEnumerable.call(originalObject, key) ? \"enumerable\" : \"nonenumerable\";\n if (propType === \"enumerable\") carry[key] = newVal;\n if (includeNonenumerable && propType === \"nonenumerable\") {\n Object.defineProperty(carry, key, {\n value: newVal,\n enumerable: false,\n writable: true,\n configurable: true\n });\n }\n}\nfunction copy(target, options = {}) {\n if (isArray(target)) {\n return target.map(item => copy(item, options));\n }\n if (!isPlainObject(target)) {\n return target;\n }\n const props = Object.getOwnPropertyNames(target);\n const symbols = Object.getOwnPropertySymbols(target);\n return [...props, ...symbols].reduce((carry, key) => {\n if (isArray(options.props) && !options.props.includes(key)) {\n return carry;\n }\n const val = target[key];\n const newVal = copy(val, options);\n assignProp(carry, key, newVal, target, options.nonenumerable);\n return carry;\n }, {});\n}\nexport { copy };","import { ClassRegistry } from './class-registry.js';\nimport { Registry } from './registry.js';\nimport { CustomTransformerRegistry } from './custom-transformer-registry.js';\nimport { applyReferentialEqualityAnnotations, applyValueAnnotations, generateReferentialEqualityAnnotations, walker } from './plainer.js';\nimport { copy } from 'copy-anything';\nexport default class SuperJSON {\n /**\n * @param dedupeReferentialEqualities If true, SuperJSON will make sure only one instance of referentially equal objects are serialized and the rest are replaced with `null`.\n */\n constructor({\n dedupe = false\n } = {}) {\n this.classRegistry = new ClassRegistry();\n this.symbolRegistry = new Registry(s => s.description ?? '');\n this.customTransformerRegistry = new CustomTransformerRegistry();\n this.allowedErrorProps = [];\n this.dedupe = dedupe;\n }\n serialize(object) {\n const identities = new Map();\n const output = walker(object, identities, this, this.dedupe);\n const res = {\n json: output.transformedValue\n };\n if (output.annotations) {\n res.meta = {\n ...res.meta,\n values: output.annotations\n };\n }\n const equalityAnnotations = generateReferentialEqualityAnnotations(identities, this.dedupe);\n if (equalityAnnotations) {\n res.meta = {\n ...res.meta,\n referentialEqualities: equalityAnnotations\n };\n }\n return res;\n }\n deserialize(payload) {\n const {\n json,\n meta\n } = payload;\n let result = copy(json);\n if (meta?.values) {\n result = applyValueAnnotations(result, meta.values, this);\n }\n if (meta?.referentialEqualities) {\n result = applyReferentialEqualityAnnotations(result, meta.referentialEqualities);\n }\n return result;\n }\n stringify(object) {\n return JSON.stringify(this.serialize(object));\n }\n parse(string) {\n return this.deserialize(JSON.parse(string));\n }\n registerClass(v, options) {\n this.classRegistry.register(v, options);\n }\n registerSymbol(v, identifier) {\n this.symbolRegistry.register(v, identifier);\n }\n registerCustom(transformer, name) {\n this.customTransformerRegistry.register({\n name,\n ...transformer\n });\n }\n allowErrorProps(...props) {\n this.allowedErrorProps.push(...props);\n }\n}\nSuperJSON.defaultInstance = new SuperJSON();\nSuperJSON.serialize = SuperJSON.defaultInstance.serialize.bind(SuperJSON.defaultInstance);\nSuperJSON.deserialize = SuperJSON.defaultInstance.deserialize.bind(SuperJSON.defaultInstance);\nSuperJSON.stringify = SuperJSON.defaultInstance.stringify.bind(SuperJSON.defaultInstance);\nSuperJSON.parse = SuperJSON.defaultInstance.parse.bind(SuperJSON.defaultInstance);\nSuperJSON.registerClass = SuperJSON.defaultInstance.registerClass.bind(SuperJSON.defaultInstance);\nSuperJSON.registerSymbol = SuperJSON.defaultInstance.registerSymbol.bind(SuperJSON.defaultInstance);\nSuperJSON.registerCustom = SuperJSON.defaultInstance.registerCustom.bind(SuperJSON.defaultInstance);\nSuperJSON.allowErrorProps = SuperJSON.defaultInstance.allowErrorProps.bind(SuperJSON.defaultInstance);\nexport { SuperJSON };\nexport const serialize = SuperJSON.serialize;\nexport const deserialize = SuperJSON.deserialize;\nexport const stringify = SuperJSON.stringify;\nexport const parse = SuperJSON.parse;\nexport const registerClass = SuperJSON.registerClass;\nexport const registerCustom = SuperJSON.registerCustom;\nexport const registerSymbol = SuperJSON.registerSymbol;\nexport const allowErrorProps = SuperJSON.allowErrorProps;\n","import { Component, inject } from '@angular/core';\nimport { Router, RouterOutlet } from '@angular/router';\nimport { Actions } from '@ngxs/store';\nimport { Toast } from 'primeng/toast';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n imports: [RouterOutlet, Toast]\n})\nexport class AppComponent {\n private actions = inject(Actions);\n private router = inject(Router);\n}\n","\n\n \n","import { __extends } from \"tslib\";\nimport { graphQLResultHasProtocolErrors, PROTOCOL_ERRORS_SYMBOL } from \"../../errors/index.js\";\nimport { Observable } from \"../../utilities/index.js\";\nimport { ApolloLink } from \"../core/index.js\";\nexport function onError(errorHandler) {\n return new ApolloLink(function (operation, forward) {\n return new Observable(function (observer) {\n var sub;\n var retriedSub;\n var retriedResult;\n try {\n sub = forward(operation).subscribe({\n next: function (result) {\n if (result.errors) {\n retriedResult = errorHandler({\n graphQLErrors: result.errors,\n response: result,\n operation: operation,\n forward: forward\n });\n } else if (graphQLResultHasProtocolErrors(result)) {\n retriedResult = errorHandler({\n protocolErrors: result.extensions[PROTOCOL_ERRORS_SYMBOL],\n response: result,\n operation: operation,\n forward: forward\n });\n }\n if (retriedResult) {\n retriedSub = retriedResult.subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer)\n });\n return;\n }\n observer.next(result);\n },\n error: function (networkError) {\n retriedResult = errorHandler({\n operation: operation,\n networkError: networkError,\n //Network errors can return GraphQL errors on for example a 403\n graphQLErrors: networkError && networkError.result && networkError.result.errors || void 0,\n forward: forward\n });\n if (retriedResult) {\n retriedSub = retriedResult.subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer)\n });\n return;\n }\n observer.error(networkError);\n },\n complete: function () {\n // disable the previous sub from calling complete on observable\n // if retry is in flight.\n if (!retriedResult) {\n observer.complete.bind(observer)();\n }\n }\n });\n } catch (e) {\n errorHandler({\n networkError: e,\n operation: operation,\n forward: forward\n });\n observer.error(e);\n }\n return function () {\n if (sub) sub.unsubscribe();\n if (retriedSub) sub.unsubscribe();\n };\n });\n });\n}\nvar ErrorLink = /** @class */function (_super) {\n __extends(ErrorLink, _super);\n function ErrorLink(errorHandler) {\n var _this = _super.call(this) || this;\n _this.link = onError(errorHandler);\n return _this;\n }\n ErrorLink.prototype.request = function (operation, forward) {\n return this.link.request(operation, forward);\n };\n return ErrorLink;\n}(ApolloLink);\nexport { ErrorLink };\n","// This file is adapted from the graphql-ws npm package:\n// https://github.com/enisdenjo/graphql-ws\n//\n// Most of the file comes from that package's README; some other parts (such as\n// isLikeCloseEvent) come from its source.\n//\n// Here's the license of the original code:\n//\n// The MIT License (MIT)\n//\n// Copyright (c) 2020-2021 Denis Badurina\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\nimport { __assign, __extends } from \"tslib\";\nimport { print } from \"../../utilities/index.js\";\nimport { ApolloLink } from \"../core/index.js\";\nimport { isNonNullObject, Observable } from \"../../utilities/index.js\";\nimport { ApolloError } from \"../../errors/index.js\";\n// https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close_event\nfunction isLikeCloseEvent(val) {\n return isNonNullObject(val) && \"code\" in val && \"reason\" in val;\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/error_event\nfunction isLikeErrorEvent(err) {\n var _a;\n return isNonNullObject(err) && ((_a = err.target) === null || _a === void 0 ? void 0 : _a.readyState) === WebSocket.CLOSED;\n}\nvar GraphQLWsLink = /** @class */function (_super) {\n __extends(GraphQLWsLink, _super);\n function GraphQLWsLink(client) {\n var _this = _super.call(this) || this;\n _this.client = client;\n return _this;\n }\n GraphQLWsLink.prototype.request = function (operation) {\n var _this = this;\n return new Observable(function (observer) {\n return _this.client.subscribe(__assign(__assign({}, operation), {\n query: print(operation.query)\n }), {\n next: observer.next.bind(observer),\n complete: observer.complete.bind(observer),\n error: function (err) {\n if (err instanceof Error) {\n return observer.error(err);\n }\n var likeClose = isLikeCloseEvent(err);\n if (likeClose || isLikeErrorEvent(err)) {\n return observer.error(\n // reason will be available on clean closes\n new Error(\"Socket closed\".concat(likeClose ? \" with event \".concat(err.code) : \"\").concat(likeClose ? \" \".concat(err.reason) : \"\")));\n }\n return observer.error(new ApolloError({\n graphQLErrors: Array.isArray(err) ? err : [err]\n }));\n }\n // casting around a wrong type in graphql-ws, which incorrectly expects `Sink`\n });\n });\n };\n return GraphQLWsLink;\n}(ApolloLink);\nexport { GraphQLWsLink };\n","import { print } from 'graphql';\nimport * as i0 from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { ApolloLink, Observable as Observable$1 } from '@apollo/client/core';\nimport { BatchLink } from '@apollo/client/link/batch';\nimport { Observable } from 'rxjs';\nimport * as i1 from '@angular/common/http';\nimport { HttpHeaders } from '@angular/common/http';\nconst fetch = (req, httpClient, extractFiles) => {\n const shouldUseBody = ['POST', 'PUT', 'PATCH'].indexOf(req.method.toUpperCase()) !== -1;\n const shouldStringify = param => ['variables', 'extensions'].indexOf(param.toLowerCase()) !== -1;\n const isBatching = req.body.length;\n let shouldUseMultipart = req.options && req.options.useMultipart;\n let multipartInfo;\n if (shouldUseMultipart) {\n if (isBatching) {\n return new Observable(observer => observer.error(new Error('File upload is not available when combined with Batching')));\n }\n if (!shouldUseBody) {\n return new Observable(observer => observer.error(new Error('File upload is not available when GET is used')));\n }\n if (!extractFiles) {\n return new Observable(observer => observer.error(new Error(`To use File upload you need to pass \"extractFiles\" function from \"extract-files\" library to HttpLink's options`)));\n }\n multipartInfo = extractFiles(req.body);\n shouldUseMultipart = !!multipartInfo.files.size;\n }\n // `body` for some, `params` for others\n let bodyOrParams = {};\n if (isBatching) {\n if (!shouldUseBody) {\n return new Observable(observer => observer.error(new Error('Batching is not available for GET requests')));\n }\n bodyOrParams = {\n body: req.body\n };\n } else {\n const body = shouldUseMultipart ? multipartInfo.clone : req.body;\n if (shouldUseBody) {\n bodyOrParams = {\n body\n };\n } else {\n const params = Object.keys(req.body).reduce((obj, param) => {\n const value = req.body[param];\n obj[param] = shouldStringify(param) ? JSON.stringify(value) : value;\n return obj;\n }, {});\n bodyOrParams = {\n params: params\n };\n }\n }\n if (shouldUseMultipart && shouldUseBody) {\n const form = new FormData();\n form.append('operations', JSON.stringify(bodyOrParams.body));\n const map = {};\n const files = multipartInfo.files;\n let i = 0;\n files.forEach(paths => {\n map[++i] = paths;\n });\n form.append('map', JSON.stringify(map));\n i = 0;\n files.forEach((_, file) => {\n form.append(++i + '', file, file.name);\n });\n bodyOrParams.body = form;\n }\n // create a request\n return httpClient.request(req.method, req.url, {\n observe: 'response',\n responseType: 'json',\n reportProgress: false,\n ...bodyOrParams,\n ...req.options\n });\n};\nconst mergeHeaders = (source, destination) => {\n if (source && destination) {\n const merged = destination.keys().reduce((headers, name) => headers.set(name, destination.getAll(name)), source);\n return merged;\n }\n return destination || source;\n};\nfunction prioritize(...values) {\n return values.find(val => typeof val !== 'undefined');\n}\nfunction createHeadersWithClientAwareness(context) {\n // `apollographql-client-*` headers are automatically set if a\n // `clientAwareness` object is found in the context. These headers are\n // set first, followed by the rest of the headers pulled from\n // `context.headers`.\n let headers = context.headers && context.headers instanceof HttpHeaders ? context.headers : new HttpHeaders(context.headers);\n if (context.clientAwareness) {\n const {\n name,\n version\n } = context.clientAwareness;\n // If desired, `apollographql-client-*` headers set by\n // the `clientAwareness` object can be overridden by\n // `apollographql-client-*` headers set in `context.headers`.\n if (name && !headers.has('apollographql-client-name')) {\n headers = headers.set('apollographql-client-name', name);\n }\n if (version && !headers.has('apollographql-client-version')) {\n headers = headers.set('apollographql-client-version', version);\n }\n }\n return headers;\n}\nconst defaults = {\n batchInterval: 10,\n batchMax: 10,\n uri: 'graphql',\n method: 'POST',\n withCredentials: false,\n includeQuery: true,\n includeExtensions: false,\n useMultipart: false\n};\n/**\n * Decides which value to pick from Context, Options or defaults\n */\nfunction pick(context, options, key) {\n return prioritize(context[key], options[key], defaults[key]);\n}\nclass HttpBatchLinkHandler extends ApolloLink {\n httpClient;\n options;\n batcher;\n batchInterval;\n batchMax;\n print = print;\n constructor(httpClient, options) {\n super();\n this.httpClient = httpClient;\n this.options = options;\n this.batchInterval = options.batchInterval || defaults.batchInterval;\n this.batchMax = options.batchMax || defaults.batchMax;\n if (this.options.operationPrinter) {\n this.print = this.options.operationPrinter;\n }\n const batchHandler = operations => {\n return new Observable$1(observer => {\n const body = this.createBody(operations);\n const headers = this.createHeaders(operations);\n const {\n method,\n uri,\n withCredentials\n } = this.createOptions(operations);\n if (typeof uri === 'function') {\n throw new Error(`Option 'uri' is a function, should be a string`);\n }\n const req = {\n method,\n url: uri,\n body: body,\n options: {\n withCredentials,\n headers\n }\n };\n const sub = fetch(req, this.httpClient, () => {\n throw new Error('File upload is not available when combined with Batching');\n }).subscribe({\n next: result => observer.next(result.body),\n error: err => observer.error(err),\n complete: () => observer.complete()\n });\n return () => {\n if (!sub.closed) {\n sub.unsubscribe();\n }\n };\n });\n };\n const batchKey = options.batchKey || (operation => {\n return this.createBatchKey(operation);\n });\n this.batcher = new BatchLink({\n batchInterval: this.batchInterval,\n batchMax: this.batchMax,\n batchKey,\n batchHandler\n });\n }\n createOptions(operations) {\n const context = operations[0].getContext();\n return {\n method: pick(context, this.options, 'method'),\n uri: pick(context, this.options, 'uri'),\n withCredentials: pick(context, this.options, 'withCredentials')\n };\n }\n createBody(operations) {\n return operations.map(operation => {\n const includeExtensions = prioritize(operation.getContext().includeExtensions, this.options.includeExtensions, false);\n const includeQuery = prioritize(operation.getContext().includeQuery, this.options.includeQuery, true);\n const body = {\n operationName: operation.operationName,\n variables: operation.variables\n };\n if (includeExtensions) {\n body.extensions = operation.extensions;\n }\n if (includeQuery) {\n body.query = this.print(operation.query);\n }\n return body;\n });\n }\n createHeaders(operations) {\n return operations.reduce((headers, operation) => {\n return mergeHeaders(headers, operation.getContext().headers);\n }, createHeadersWithClientAwareness({\n headers: this.options.headers,\n clientAwareness: operations[0]?.getContext()?.clientAwareness\n }));\n }\n createBatchKey(operation) {\n const context = operation.getContext();\n if (context.skipBatching) {\n return Math.random().toString(36).substring(2, 11);\n }\n const headers = context.headers && context.headers.keys().map(k => context.headers.get(k));\n const opts = JSON.stringify({\n includeQuery: context.includeQuery,\n includeExtensions: context.includeExtensions,\n headers\n });\n return prioritize(context.uri, this.options.uri, '') + opts;\n }\n request(op) {\n return this.batcher.request(op);\n }\n}\nlet HttpBatchLink = /*#__PURE__*/(() => {\n class HttpBatchLink {\n httpClient;\n constructor(httpClient) {\n this.httpClient = httpClient;\n }\n create(options) {\n return new HttpBatchLinkHandler(this.httpClient, options);\n }\n static ɵfac = function HttpBatchLink_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || HttpBatchLink)(i0.ɵɵinject(i1.HttpClient));\n };\n static ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: HttpBatchLink,\n factory: HttpBatchLink.ɵfac,\n providedIn: 'root'\n });\n }\n return HttpBatchLink;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// XXX find a better name for it\nclass HttpLinkHandler extends ApolloLink {\n httpClient;\n options;\n requester;\n print = print;\n constructor(httpClient, options) {\n super();\n this.httpClient = httpClient;\n this.options = options;\n if (this.options.operationPrinter) {\n this.print = this.options.operationPrinter;\n }\n this.requester = operation => new Observable$1(observer => {\n const context = operation.getContext();\n let method = pick(context, this.options, 'method');\n const includeQuery = pick(context, this.options, 'includeQuery');\n const includeExtensions = pick(context, this.options, 'includeExtensions');\n const url = pick(context, this.options, 'uri');\n const withCredentials = pick(context, this.options, 'withCredentials');\n const useMultipart = pick(context, this.options, 'useMultipart');\n const useGETForQueries = this.options.useGETForQueries === true;\n const isQuery = operation.query.definitions.some(def => def.kind === 'OperationDefinition' && def.operation === 'query');\n if (useGETForQueries && isQuery) {\n method = 'GET';\n }\n const req = {\n method,\n url: typeof url === 'function' ? url(operation) : url,\n body: {\n operationName: operation.operationName,\n variables: operation.variables\n },\n options: {\n withCredentials,\n useMultipart,\n headers: this.options.headers\n }\n };\n if (includeExtensions) {\n req.body.extensions = operation.extensions;\n }\n if (includeQuery) {\n req.body.query = this.print(operation.query);\n }\n const headers = createHeadersWithClientAwareness(context);\n req.options.headers = mergeHeaders(req.options.headers, headers);\n const sub = fetch(req, this.httpClient, this.options.extractFiles).subscribe({\n next: response => {\n operation.setContext({\n response\n });\n observer.next(response.body);\n },\n error: err => observer.error(err),\n complete: () => observer.complete()\n });\n return () => {\n if (!sub.closed) {\n sub.unsubscribe();\n }\n };\n });\n }\n request(op) {\n return this.requester(op);\n }\n}\nlet HttpLink = /*#__PURE__*/(() => {\n class HttpLink {\n httpClient;\n constructor(httpClient) {\n this.httpClient = httpClient;\n }\n create(options) {\n return new HttpLinkHandler(this.httpClient, options);\n }\n static ɵfac = function HttpLink_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || HttpLink)(i0.ɵɵinject(i1.HttpClient));\n };\n static ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: HttpLink,\n factory: HttpLink.ɵfac,\n providedIn: 'root'\n });\n }\n return HttpLink;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// http\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { HttpBatchLink, HttpBatchLinkHandler, HttpLink, HttpLinkHandler };\n","/** @private */\nexport function extendedTypeof(val) {\n if (val === null) {\n return 'null';\n }\n if (Array.isArray(val)) {\n return 'array';\n }\n return typeof val;\n}\n/** @private */\nexport function isObject(val) {\n return extendedTypeof(val) === 'object';\n}\n/** @private */\nexport function isAsyncIterable(val) {\n return typeof Object(val)[Symbol.asyncIterator] === 'function';\n}\n/** @private */\nexport function isAsyncGenerator(val) {\n return isObject(val) && typeof Object(val)[Symbol.asyncIterator] === 'function' && typeof val.return === 'function'\n // for lazy ones, we only need the return anyway\n // typeof val.throw === 'function' &&\n // typeof val.next === 'function'\n ;\n}\n/** @private */\nexport function areGraphQLErrors(obj) {\n return Array.isArray(obj) &&\n // must be at least one error\n obj.length > 0 &&\n // error has at least a message\n obj.every(ob => 'message' in ob);\n}\n/**\n * Limits the WebSocket close event reason to not exceed a length of one frame.\n * Reference: https://datatracker.ietf.org/doc/html/rfc6455#section-5.2.\n *\n * @private\n */\nexport function limitCloseReason(reason, whenTooLong) {\n return reason.length < 124 ? reason : whenTooLong;\n}","/**\n *\n * common\n *\n */\nimport { areGraphQLErrors, extendedTypeof, isObject } from './utils.mjs';\n/**\n * The WebSocket sub-protocol used for the [GraphQL over WebSocket Protocol](https://github.com/graphql/graphql-over-http/blob/main/rfcs/GraphQLOverWebSocket.md).\n *\n * @category Common\n */\nexport const GRAPHQL_TRANSPORT_WS_PROTOCOL = 'graphql-transport-ws';\n/**\n * The deprecated subprotocol used by [subscriptions-transport-ws](https://github.com/apollographql/subscriptions-transport-ws).\n *\n * @private\n */\nexport const DEPRECATED_GRAPHQL_WS_PROTOCOL = 'graphql-ws';\n/**\n * `graphql-ws` expected and standard close codes of the [GraphQL over WebSocket Protocol](https://github.com/graphql/graphql-over-http/blob/main/rfcs/GraphQLOverWebSocket.md).\n *\n * @category Common\n */\nexport var CloseCode = /*#__PURE__*/function (CloseCode) {\n CloseCode[CloseCode[\"InternalServerError\"] = 4500] = \"InternalServerError\";\n CloseCode[CloseCode[\"InternalClientError\"] = 4005] = \"InternalClientError\";\n CloseCode[CloseCode[\"BadRequest\"] = 4400] = \"BadRequest\";\n CloseCode[CloseCode[\"BadResponse\"] = 4004] = \"BadResponse\";\n /** Tried subscribing before connect ack */\n CloseCode[CloseCode[\"Unauthorized\"] = 4401] = \"Unauthorized\";\n CloseCode[CloseCode[\"Forbidden\"] = 4403] = \"Forbidden\";\n CloseCode[CloseCode[\"SubprotocolNotAcceptable\"] = 4406] = \"SubprotocolNotAcceptable\";\n CloseCode[CloseCode[\"ConnectionInitialisationTimeout\"] = 4408] = \"ConnectionInitialisationTimeout\";\n CloseCode[CloseCode[\"ConnectionAcknowledgementTimeout\"] = 4504] = \"ConnectionAcknowledgementTimeout\";\n /** Subscriber distinction is very important */\n CloseCode[CloseCode[\"SubscriberAlreadyExists\"] = 4409] = \"SubscriberAlreadyExists\";\n CloseCode[CloseCode[\"TooManyInitialisationRequests\"] = 4429] = \"TooManyInitialisationRequests\";\n return CloseCode;\n}(CloseCode || {});\n/**\n * Types of messages allowed to be sent by the client/server over the WS protocol.\n *\n * @category Common\n */\nexport var MessageType = /*#__PURE__*/function (MessageType) {\n MessageType[\"ConnectionInit\"] = \"connection_init\";\n MessageType[\"ConnectionAck\"] = \"connection_ack\";\n MessageType[\"Ping\"] = \"ping\";\n MessageType[\"Pong\"] = \"pong\";\n MessageType[\"Subscribe\"] = \"subscribe\";\n MessageType[\"Next\"] = \"next\";\n MessageType[\"Error\"] = \"error\";\n MessageType[\"Complete\"] = \"complete\";\n return MessageType;\n}(MessageType || {});\n/**\n * Validates the message against the GraphQL over WebSocket Protocol.\n *\n * Invalid messages will throw descriptive errors.\n *\n * @category Common\n */\nexport function validateMessage(val) {\n if (!isObject(val)) {\n throw new Error(`Message is expected to be an object, but got ${extendedTypeof(val)}`);\n }\n if (!val.type) {\n throw new Error(`Message is missing the 'type' property`);\n }\n if (typeof val.type !== 'string') {\n throw new Error(`Message is expects the 'type' property to be a string, but got ${extendedTypeof(val.type)}`);\n }\n switch (val.type) {\n case MessageType.ConnectionInit:\n case MessageType.ConnectionAck:\n case MessageType.Ping:\n case MessageType.Pong:\n {\n if (val.payload != null && !isObject(val.payload)) {\n throw new Error(`\"${val.type}\" message expects the 'payload' property to be an object or nullish or missing, but got \"${val.payload}\"`);\n }\n break;\n }\n case MessageType.Subscribe:\n {\n if (typeof val.id !== 'string') {\n throw new Error(`\"${val.type}\" message expects the 'id' property to be a string, but got ${extendedTypeof(val.id)}`);\n }\n if (!val.id) {\n throw new Error(`\"${val.type}\" message requires a non-empty 'id' property`);\n }\n if (!isObject(val.payload)) {\n throw new Error(`\"${val.type}\" message expects the 'payload' property to be an object, but got ${extendedTypeof(val.payload)}`);\n }\n if (typeof val.payload.query !== 'string') {\n throw new Error(`\"${val.type}\" message payload expects the 'query' property to be a string, but got ${extendedTypeof(val.payload.query)}`);\n }\n if (val.payload.variables != null && !isObject(val.payload.variables)) {\n throw new Error(`\"${val.type}\" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${extendedTypeof(val.payload.variables)}`);\n }\n if (val.payload.operationName != null && extendedTypeof(val.payload.operationName) !== 'string') {\n throw new Error(`\"${val.type}\" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${extendedTypeof(val.payload.operationName)}`);\n }\n if (val.payload.extensions != null && !isObject(val.payload.extensions)) {\n throw new Error(`\"${val.type}\" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${extendedTypeof(val.payload.extensions)}`);\n }\n break;\n }\n case MessageType.Next:\n {\n if (typeof val.id !== 'string') {\n throw new Error(`\"${val.type}\" message expects the 'id' property to be a string, but got ${extendedTypeof(val.id)}`);\n }\n if (!val.id) {\n throw new Error(`\"${val.type}\" message requires a non-empty 'id' property`);\n }\n if (!isObject(val.payload)) {\n throw new Error(`\"${val.type}\" message expects the 'payload' property to be an object, but got ${extendedTypeof(val.payload)}`);\n }\n break;\n }\n case MessageType.Error:\n {\n if (typeof val.id !== 'string') {\n throw new Error(`\"${val.type}\" message expects the 'id' property to be a string, but got ${extendedTypeof(val.id)}`);\n }\n if (!val.id) {\n throw new Error(`\"${val.type}\" message requires a non-empty 'id' property`);\n }\n if (!areGraphQLErrors(val.payload)) {\n throw new Error(`\"${val.type}\" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(val.payload)}`);\n }\n break;\n }\n case MessageType.Complete:\n {\n if (typeof val.id !== 'string') {\n throw new Error(`\"${val.type}\" message expects the 'id' property to be a string, but got ${extendedTypeof(val.id)}`);\n }\n if (!val.id) {\n throw new Error(`\"${val.type}\" message requires a non-empty 'id' property`);\n }\n break;\n }\n default:\n throw new Error(`Invalid message 'type' property \"${val.type}\"`);\n }\n return val;\n}\n/**\n * Checks if the provided value is a valid GraphQL over WebSocket message.\n *\n * @deprecated Use `validateMessage` instead.\n *\n * @category Common\n */\nexport function isMessage(val) {\n try {\n validateMessage(val);\n return true;\n } catch (_a) {\n return false;\n }\n}\n/**\n * Parses the raw websocket message data to a valid message.\n *\n * @category Common\n */\nexport function parseMessage(data, reviver) {\n return validateMessage(typeof data === 'string' ? JSON.parse(data, reviver) : data);\n}\n/**\n * Stringifies a valid message ready to be sent through the socket.\n *\n * @category Common\n */\nexport function stringifyMessage(msg, replacer) {\n validateMessage(msg);\n return JSON.stringify(msg, replacer);\n}","/**\n *\n * client\n *\n */\nvar __await = this && this.__await || function (v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n};\nvar __asyncGenerator = this && this.__asyncGenerator || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []),\n i,\n q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () {\n return this;\n }, i;\n function verb(n) {\n if (g[n]) i[n] = function (v) {\n return new Promise(function (a, b) {\n q.push([n, v, a, b]) > 1 || resume(n, v);\n });\n };\n }\n function resume(n, v) {\n try {\n step(g[n](v));\n } catch (e) {\n settle(q[0][3], e);\n }\n }\n function step(r) {\n r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);\n }\n function fulfill(value) {\n resume(\"next\", value);\n }\n function reject(value) {\n resume(\"throw\", value);\n }\n function settle(f, v) {\n if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);\n }\n};\nimport { GRAPHQL_TRANSPORT_WS_PROTOCOL, CloseCode, MessageType, parseMessage, stringifyMessage } from './common.mjs';\nimport { isObject, limitCloseReason } from './utils.mjs';\n/** This file is the entry point for browsers, re-export common elements. */\nexport * from './common.mjs';\n/**\n * Creates a disposable GraphQL over WebSocket client.\n *\n * @category Client\n */\nexport function createClient(options) {\n const {\n url,\n connectionParams,\n lazy = true,\n onNonLazyError = console.error,\n lazyCloseTimeout: lazyCloseTimeoutMs = 0,\n keepAlive = 0,\n disablePong,\n connectionAckWaitTimeout = 0,\n retryAttempts = 5,\n retryWait = async function randomisedExponentialBackoff(retries) {\n let retryDelay = 1000; // start with 1s delay\n for (let i = 0; i < retries; i++) {\n retryDelay *= 2;\n }\n await new Promise(resolve => setTimeout(resolve, retryDelay +\n // add random timeout from 300ms to 3s\n Math.floor(Math.random() * (3000 - 300) + 300)));\n },\n shouldRetry = isLikeCloseEvent,\n isFatalConnectionProblem,\n on,\n webSocketImpl,\n /**\n * Generates a v4 UUID to be used as the ID using `Math`\n * as the random number generator. Supply your own generator\n * in case you need more uniqueness.\n *\n * Reference: https://gist.github.com/jed/982883\n */\n generateID = function generateUUID() {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {\n const r = Math.random() * 16 | 0,\n v = c == 'x' ? r : r & 0x3 | 0x8;\n return v.toString(16);\n });\n },\n jsonMessageReplacer: replacer,\n jsonMessageReviver: reviver\n } = options;\n let ws;\n if (webSocketImpl) {\n if (!isWebSocket(webSocketImpl)) {\n throw new Error('Invalid WebSocket implementation provided');\n }\n ws = webSocketImpl;\n } else if (typeof WebSocket !== 'undefined') {\n ws = WebSocket;\n } else if (typeof global !== 'undefined') {\n ws = global.WebSocket ||\n // @ts-expect-error: Support more browsers\n global.MozWebSocket;\n } else if (typeof window !== 'undefined') {\n ws = window.WebSocket ||\n // @ts-expect-error: Support more browsers\n window.MozWebSocket;\n }\n if (!ws) throw new Error(\"WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`\");\n const WebSocketImpl = ws;\n // websocket status emitter, subscriptions are handled differently\n const emitter = (() => {\n const message = (() => {\n const listeners = {};\n return {\n on(id, listener) {\n listeners[id] = listener;\n return () => {\n delete listeners[id];\n };\n },\n emit(message) {\n var _a;\n if ('id' in message) (_a = listeners[message.id]) === null || _a === void 0 ? void 0 : _a.call(listeners, message);\n }\n };\n })();\n const listeners = {\n connecting: (on === null || on === void 0 ? void 0 : on.connecting) ? [on.connecting] : [],\n opened: (on === null || on === void 0 ? void 0 : on.opened) ? [on.opened] : [],\n connected: (on === null || on === void 0 ? void 0 : on.connected) ? [on.connected] : [],\n ping: (on === null || on === void 0 ? void 0 : on.ping) ? [on.ping] : [],\n pong: (on === null || on === void 0 ? void 0 : on.pong) ? [on.pong] : [],\n message: (on === null || on === void 0 ? void 0 : on.message) ? [message.emit, on.message] : [message.emit],\n closed: (on === null || on === void 0 ? void 0 : on.closed) ? [on.closed] : [],\n error: (on === null || on === void 0 ? void 0 : on.error) ? [on.error] : []\n };\n return {\n onMessage: message.on,\n on(event, listener) {\n const l = listeners[event];\n l.push(listener);\n return () => {\n l.splice(l.indexOf(listener), 1);\n };\n },\n emit(event, ...args) {\n // we copy the listeners so that unlistens dont \"pull the rug under our feet\"\n for (const listener of [...listeners[event]]) {\n // @ts-expect-error: The args should fit\n listener(...args);\n }\n }\n };\n })();\n // invokes the callback either when an error or closed event is emitted,\n // first one that gets called prevails, other emissions are ignored\n function errorOrClosed(cb) {\n const listening = [\n // errors are fatal and more critical than close events, throw them first\n emitter.on('error', err => {\n listening.forEach(unlisten => unlisten());\n cb(err);\n }),\n // closes can be graceful and not fatal, throw them second (if error didnt throw)\n emitter.on('closed', event => {\n listening.forEach(unlisten => unlisten());\n cb(event);\n })];\n }\n let connecting,\n locks = 0,\n lazyCloseTimeout,\n retrying = false,\n retries = 0,\n disposed = false;\n async function connect() {\n // clear the lazy close timeout immediatelly so that close gets debounced\n // see: https://github.com/enisdenjo/graphql-ws/issues/388\n clearTimeout(lazyCloseTimeout);\n const [socket, throwOnClose] = await (connecting !== null && connecting !== void 0 ? connecting : connecting = new Promise((connected, denied) => (async () => {\n if (retrying) {\n await retryWait(retries);\n // subscriptions might complete while waiting for retry\n if (!locks) {\n connecting = undefined;\n return denied({\n code: 1000,\n reason: 'All Subscriptions Gone'\n });\n }\n retries++;\n }\n emitter.emit('connecting');\n const socket = new WebSocketImpl(typeof url === 'function' ? await url() : url, GRAPHQL_TRANSPORT_WS_PROTOCOL);\n let connectionAckTimeout, queuedPing;\n function enqueuePing() {\n if (isFinite(keepAlive) && keepAlive > 0) {\n clearTimeout(queuedPing); // in case where a pong was received before a ping (this is valid behaviour)\n queuedPing = setTimeout(() => {\n if (socket.readyState === WebSocketImpl.OPEN) {\n socket.send(stringifyMessage({\n type: MessageType.Ping\n }));\n emitter.emit('ping', false, undefined);\n }\n }, keepAlive);\n }\n }\n errorOrClosed(errOrEvent => {\n connecting = undefined;\n clearTimeout(connectionAckTimeout);\n clearTimeout(queuedPing);\n denied(errOrEvent);\n if (isLikeCloseEvent(errOrEvent) && errOrEvent.code === 4499) {\n socket.close(4499, 'Terminated'); // close event is artificial and emitted manually, see `Client.terminate()` below\n socket.onerror = null;\n socket.onclose = null;\n }\n });\n socket.onerror = err => emitter.emit('error', err);\n socket.onclose = event => emitter.emit('closed', event);\n socket.onopen = async () => {\n try {\n emitter.emit('opened', socket);\n const payload = typeof connectionParams === 'function' ? await connectionParams() : connectionParams;\n // connectionParams might take too long causing the server to kick off the client\n // the necessary error/close event is already reported - simply stop execution\n if (socket.readyState !== WebSocketImpl.OPEN) return;\n socket.send(stringifyMessage(payload ? {\n type: MessageType.ConnectionInit,\n payload\n } : {\n type: MessageType.ConnectionInit\n // payload is completely absent if not provided\n }, replacer));\n if (isFinite(connectionAckWaitTimeout) && connectionAckWaitTimeout > 0) {\n connectionAckTimeout = setTimeout(() => {\n socket.close(CloseCode.ConnectionAcknowledgementTimeout, 'Connection acknowledgement timeout');\n }, connectionAckWaitTimeout);\n }\n enqueuePing(); // enqueue ping (noop if disabled)\n } catch (err) {\n emitter.emit('error', err);\n socket.close(CloseCode.InternalClientError, limitCloseReason(err instanceof Error ? err.message : new Error(err).message, 'Internal client error'));\n }\n };\n let acknowledged = false;\n socket.onmessage = ({\n data\n }) => {\n try {\n const message = parseMessage(data, reviver);\n emitter.emit('message', message);\n if (message.type === 'ping' || message.type === 'pong') {\n emitter.emit(message.type, true, message.payload); // received\n if (message.type === 'pong') {\n enqueuePing(); // enqueue next ping (noop if disabled)\n } else if (!disablePong) {\n // respond with pong on ping\n socket.send(stringifyMessage(message.payload ? {\n type: MessageType.Pong,\n payload: message.payload\n } : {\n type: MessageType.Pong\n // payload is completely absent if not provided\n }));\n emitter.emit('pong', false, message.payload);\n }\n return; // ping and pongs can be received whenever\n }\n if (acknowledged) return; // already connected and acknowledged\n if (message.type !== MessageType.ConnectionAck) throw new Error(`First message cannot be of type ${message.type}`);\n clearTimeout(connectionAckTimeout);\n acknowledged = true;\n emitter.emit('connected', socket, message.payload); // connected = socket opened + acknowledged\n retrying = false; // future lazy connects are not retries\n retries = 0; // reset the retries on connect\n connected([socket, new Promise((_, reject) => errorOrClosed(reject))]);\n } catch (err) {\n socket.onmessage = null; // stop reading messages as soon as reading breaks once\n emitter.emit('error', err);\n socket.close(CloseCode.BadResponse, limitCloseReason(err instanceof Error ? err.message : new Error(err).message, 'Bad response'));\n }\n };\n })()));\n // if the provided socket is in a closing state, wait for the throw on close\n if (socket.readyState === WebSocketImpl.CLOSING) await throwOnClose;\n let release = () => {\n // releases this connection\n };\n const released = new Promise(resolve => release = resolve);\n return [socket, release, Promise.race([\n // wait for\n released.then(() => {\n if (!locks) {\n // and if no more locks are present, complete the connection\n const complete = () => socket.close(1000, 'Normal Closure');\n if (isFinite(lazyCloseTimeoutMs) && lazyCloseTimeoutMs > 0) {\n // if the keepalive is set, allow for the specified calmdown time and\n // then complete if the socket is still open.\n lazyCloseTimeout = setTimeout(() => {\n if (socket.readyState === WebSocketImpl.OPEN) complete();\n }, lazyCloseTimeoutMs);\n } else {\n // otherwise complete immediately\n complete();\n }\n }\n }),\n // or\n throwOnClose])];\n }\n /**\n * Checks the `connect` problem and evaluates if the client should retry.\n */\n function shouldRetryConnectOrThrow(errOrCloseEvent) {\n // some close codes are worth reporting immediately\n if (isLikeCloseEvent(errOrCloseEvent) && (isFatalInternalCloseCode(errOrCloseEvent.code) || [CloseCode.InternalServerError, CloseCode.InternalClientError, CloseCode.BadRequest, CloseCode.BadResponse, CloseCode.Unauthorized,\n // CloseCode.Forbidden, might grant access out after retry\n CloseCode.SubprotocolNotAcceptable,\n // CloseCode.ConnectionInitialisationTimeout, might not time out after retry\n // CloseCode.ConnectionAcknowledgementTimeout, might not time out after retry\n CloseCode.SubscriberAlreadyExists, CloseCode.TooManyInitialisationRequests\n // 4499, // Terminated, probably because the socket froze, we want to retry\n ].includes(errOrCloseEvent.code))) throw errOrCloseEvent;\n // client was disposed, no retries should proceed regardless\n if (disposed) return false;\n // normal closure (possibly all subscriptions have completed)\n // if no locks were acquired in the meantime, shouldnt try again\n if (isLikeCloseEvent(errOrCloseEvent) && errOrCloseEvent.code === 1000) return locks > 0;\n // retries are not allowed or we tried to many times, report error\n if (!retryAttempts || retries >= retryAttempts) throw errOrCloseEvent;\n // throw non-retryable connection problems\n if (!shouldRetry(errOrCloseEvent)) throw errOrCloseEvent;\n // @deprecated throw fatal connection problems immediately\n if (isFatalConnectionProblem === null || isFatalConnectionProblem === void 0 ? void 0 : isFatalConnectionProblem(errOrCloseEvent)) throw errOrCloseEvent;\n // looks good, start retrying\n return retrying = true;\n }\n // in non-lazy (hot?) mode always hold one connection lock to persist the socket\n if (!lazy) {\n (async () => {\n locks++;\n for (;;) {\n try {\n const [,, throwOnClose] = await connect();\n await throwOnClose; // will always throw because releaser is not used\n } catch (errOrCloseEvent) {\n try {\n if (!shouldRetryConnectOrThrow(errOrCloseEvent)) return;\n } catch (errOrCloseEvent) {\n // report thrown error, no further retries\n return onNonLazyError === null || onNonLazyError === void 0 ? void 0 : onNonLazyError(errOrCloseEvent);\n }\n }\n }\n })();\n }\n return {\n on: emitter.on,\n subscribe(payload, sink) {\n const id = generateID(payload);\n let done = false,\n errored = false,\n releaser = () => {\n // for handling completions before connect\n locks--;\n done = true;\n };\n (async () => {\n locks++;\n for (;;) {\n try {\n const [socket, release, waitForReleaseOrThrowOnClose] = await connect();\n // if done while waiting for connect, release the connection lock right away\n if (done) return release();\n const unlisten = emitter.onMessage(id, message => {\n switch (message.type) {\n case MessageType.Next:\n {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- payload will fit type\n sink.next(message.payload);\n return;\n }\n case MessageType.Error:\n {\n errored = true, done = true;\n sink.error(message.payload);\n releaser();\n return;\n }\n case MessageType.Complete:\n {\n done = true;\n releaser(); // release completes the sink\n return;\n }\n }\n });\n socket.send(stringifyMessage({\n id,\n type: MessageType.Subscribe,\n payload\n }, replacer));\n releaser = () => {\n if (!done && socket.readyState === WebSocketImpl.OPEN)\n // if not completed already and socket is open, send complete message to server on release\n socket.send(stringifyMessage({\n id,\n type: MessageType.Complete\n }, replacer));\n locks--;\n done = true;\n release();\n };\n // either the releaser will be called, connection completed and\n // the promise resolved or the socket closed and the promise rejected.\n // whatever happens though, we want to stop listening for messages\n await waitForReleaseOrThrowOnClose.finally(unlisten);\n return; // completed, shouldnt try again\n } catch (errOrCloseEvent) {\n if (!shouldRetryConnectOrThrow(errOrCloseEvent)) return;\n }\n }\n })().then(() => {\n // delivering either an error or a complete terminates the sequence\n if (!errored) sink.complete();\n }) // resolves on release or normal closure\n .catch(err => {\n sink.error(err);\n }); // rejects on close events and errors\n return () => {\n // dispose only of active subscriptions\n if (!done) releaser();\n };\n },\n iterate(request) {\n const pending = [];\n const deferred = {\n done: false,\n error: null,\n resolve: () => {\n // noop\n }\n };\n const dispose = this.subscribe(request, {\n next(val) {\n pending.push(val);\n deferred.resolve();\n },\n error(err) {\n deferred.done = true;\n deferred.error = err;\n deferred.resolve();\n },\n complete() {\n deferred.done = true;\n deferred.resolve();\n }\n });\n const iterator = function iterator() {\n return __asyncGenerator(this, arguments, function* iterator_1() {\n for (;;) {\n if (!pending.length) {\n // only wait if there are no pending messages available\n yield __await(new Promise(resolve => deferred.resolve = resolve));\n }\n // first flush\n while (pending.length) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n yield yield __await(pending.shift());\n }\n // then error\n if (deferred.error) {\n throw deferred.error;\n }\n // or complete\n if (deferred.done) {\n return yield __await(void 0);\n }\n }\n });\n }();\n iterator.throw = async err => {\n if (!deferred.done) {\n deferred.done = true;\n deferred.error = err;\n deferred.resolve();\n }\n return {\n done: true,\n value: undefined\n };\n };\n iterator.return = async () => {\n dispose();\n return {\n done: true,\n value: undefined\n };\n };\n return iterator;\n },\n async dispose() {\n disposed = true;\n if (connecting) {\n // if there is a connection, close it\n const [socket] = await connecting;\n socket.close(1000, 'Normal Closure');\n }\n },\n terminate() {\n if (connecting) {\n // only if there is a connection\n emitter.emit('closed', {\n code: 4499,\n reason: 'Terminated',\n wasClean: false\n });\n }\n }\n };\n}\nfunction isLikeCloseEvent(val) {\n return isObject(val) && 'code' in val && 'reason' in val;\n}\nfunction isFatalInternalCloseCode(code) {\n if ([1000, 1001, 1006, 1005, 1012, 1013, 1014 // Bad Gateway\n ].includes(code)) return false;\n // all other internal errors are fatal\n return code >= 1000 && code <= 1999;\n}\nfunction isWebSocket(val) {\n return typeof val === 'function' && 'constructor' in val && 'CLOSED' in val && 'CLOSING' in val && 'CONNECTING' in val && 'OPEN' in val;\n}","export class SetRealtimeConnectionStateAction {\n static readonly type = '[Misc] Set Realtime Connection State Action';\n constructor(public connectionState: string) {}\n}\n","import { NgModule } from '@angular/core';\nimport {\n ApolloClientOptions,\n ApolloLink,\n InMemoryCache,\n split,\n} from '@apollo/client/core';\nimport { onError } from '@apollo/client/link/error';\nimport { GraphQLWsLink } from '@apollo/client/link/subscriptions';\nimport { getMainDefinition } from '@apollo/client/utilities';\nimport { Store } from '@ngxs/store';\nimport { APOLLO_OPTIONS, ApolloModule } from 'apollo-angular';\nimport { HttpLink } from 'apollo-angular/http';\nimport { createClient } from 'graphql-ws';\nimport { LogoutAction } from 'src/app/store/user/user.actions';\nimport { environment } from 'src/environments/environment';\nimport { CustomScalarLink } from './helpers/graphql';\nimport { SetRealtimeConnectionStateAction } from './store/misc/misc.actions';\n\n@NgModule({\n exports: [ApolloModule],\n providers: [\n {\n provide: APOLLO_OPTIONS,\n useFactory(httpLink: HttpLink, store: Store): ApolloClientOptions {\n const http = httpLink.create({\n uri: environment.gqlEndpoint,\n withCredentials: true,\n });\n\n // Create a WebSocket link:\n const ws = new GraphQLWsLink(\n createClient({\n url: environment.gqlEndpointWS,\n retryAttempts: Infinity,\n shouldRetry: () => true,\n keepAlive: 10000,\n })\n );\n\n const errorLink = onError(({ graphQLErrors, networkError }) => {\n if (graphQLErrors) {\n graphQLErrors.forEach(({ message, extensions }) => {\n if (extensions && extensions['code'] === 401) {\n console.log(`You have been logged out: ${message}`);\n store.dispatch(new LogoutAction('/login', {}));\n }\n });\n }\n if (networkError) {\n console.log(`[Network error]: ${networkError}`);\n }\n });\n\n ws.client.on('connecting', () => {\n store.dispatch(new SetRealtimeConnectionStateAction('connecting'));\n });\n\n ws.client.on('closed', () => {\n store.dispatch(new SetRealtimeConnectionStateAction('closed'));\n });\n\n ws.client.on('connected', () => {\n store.dispatch(new SetRealtimeConnectionStateAction('connected'));\n });\n\n ws.client.on('error', () => {\n store.dispatch(new SetRealtimeConnectionStateAction('error'));\n });\n\n // using the ability to split links, you can send data to each link\n // depending on what kind of operation is being sent\n const link = split(\n // split based on operation type\n ({ query }) => {\n const { kind, operation } = getMainDefinition(query) as {\n kind: string;\n operation: string;\n };\n return (\n kind === 'OperationDefinition' && operation === 'subscription'\n );\n },\n ws,\n http\n );\n\n return {\n link: ApolloLink.from([errorLink, CustomScalarLink, link]),\n cache: new InMemoryCache(),\n defaultOptions: {\n watchQuery: {\n errorPolicy: 'all',\n },\n query: {\n fetchPolicy: 'no-cache',\n errorPolicy: 'all',\n },\n },\n };\n },\n deps: [HttpLink, Store],\n },\n ],\n})\nexport class GraphQLModule {}\n","import { NgModule } from '@angular/core';\nimport { KratosFormComponent } from '../components/kratos/form.component';\nimport { ReAuthenticateDialogComponent } from './reauthenticate/reauthenticate.component';\n\n@NgModule({\n imports: [KratosFormComponent, ReAuthenticateDialogComponent],\n providers: [],\n exports: [ReAuthenticateDialogComponent],\n})\nexport class DialogsModule {}\n","import { inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { firstValueFrom } from 'rxjs';\nimport { Store } from '@ngxs/store';\nimport { UserState } from 'src/app/store/user/user.state';\nimport { LoadUserAction, LogoutAction } from 'src/app/store/user/user.actions';\n\n// AuthGuard checks wether a user has a valid session and at least one membership\nexport const AuthGuard = async () => {\n const router = inject(Router);\n const store = inject(Store);\n\n try {\n let user = store.selectSnapshot(UserState.getUser);\n\n // when user is empty we probably did not fetch it yet as the user just logged in -> fetch\n if (!user) {\n await firstValueFrom(store.dispatch(new LoadUserAction()));\n user = store.selectSnapshot(UserState.getUser);\n }\n\n if (!user) {\n throw new Error('No user');\n }\n\n // validate session\n const session = store.selectSnapshot(UserState.getSession);\n if (!session || Date.now() > session?.expiresAt.getTime()) {\n // logout if session is expired\n store.dispatch(new LogoutAction());\n\n throw new Error('Session expired');\n }\n\n // check for membership\n if (user.memberships.length == 0) {\n router.navigate(['/organizations/new']);\n }\n\n return true;\n } catch (ex) {\n console.warn(ex);\n router.navigate(['/login']);\n }\n\n return true;\n};\n","export class LoadIncidentsStatisticsAction {\n static readonly type = '[Statistics] Load Incidents Statistics';\n constructor(public days: number) {}\n}\n","import { Injectable, inject } from '@angular/core';\nimport { Apollo, gql } from 'apollo-angular';\nimport { Observable, map } from 'rxjs';\nimport { Statistic, mapStatistics } from 'src/app/models/statistics';\n\nconst GET_STATISTICS_QUERY = gql`\n query GetStatistics($organizationId: ID!, $days: Int!) {\n incidentsStatistics(organizationId: $organizationId, days: $days) {\n name\n unit\n datapoints {\n date\n value\n }\n }\n }\n`;\n\n@Injectable()\nexport class StatisticsService {\n private apollo = inject(Apollo);\n\n loadStatistics(\n organizationId: string,\n days: number\n ): Observable {\n return this.apollo\n .query<{ incidentsStatistics: Statistic[] }>({\n query: GET_STATISTICS_QUERY,\n variables: {\n organizationId: organizationId,\n days: days,\n },\n })\n .pipe(\n map(data => {\n return data.data.incidentsStatistics.map(s => mapStatistics(s));\n })\n );\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { Action, Selector, State, StateContext, Store } from '@ngxs/store';\nimport { map } from 'rxjs';\nimport { toIdentifiableEntities } from 'src/app/helpers/graphql';\nimport { Statistic } from 'src/app/models/statistics';\nimport { ToastService } from 'src/app/services/toast/toast.service';\nimport {\n ListEntities,\n loadEntities,\n NewListEntities,\n} from 'src/app/store/common/list-entity';\nimport { UserState } from 'src/app/store/user/user.state';\nimport { LoadIncidentsStatisticsAction } from './statistics.actions';\nimport { StatisticsService } from './statistics.service';\n\nexport interface StatisticsStateModel {\n incidentsStatistics: ListEntities;\n}\n\n@State({\n name: 'statistics',\n defaults: {\n incidentsStatistics: NewListEntities(),\n },\n})\n@Injectable()\nexport class StatisticsState {\n store = inject(Store);\n toast = inject(ToastService);\n statisticsService = inject(StatisticsService);\n\n @Selector()\n static isLoading(state: StatisticsStateModel) {\n return state.incidentsStatistics.isLoading || false;\n }\n\n @Selector()\n static activeIncidents(state: StatisticsStateModel) {\n return state.incidentsStatistics.entities['active-incidents'];\n }\n\n @Selector()\n static resolvedIncidents(state: StatisticsStateModel) {\n return state.incidentsStatistics.entities['resolved-incidents'];\n }\n\n @Selector()\n static totalImpactDuration(state: StatisticsStateModel) {\n return state.incidentsStatistics.entities['impact-duration'];\n }\n\n @Selector()\n static mtta(state: StatisticsStateModel) {\n return state.incidentsStatistics.entities['mtta'];\n }\n\n @Selector()\n static mttr(state: StatisticsStateModel) {\n return state.incidentsStatistics.entities['mttr'];\n }\n\n @Action(LoadIncidentsStatisticsAction)\n loadStatuspages(\n ctx: StateContext,\n { days }: LoadIncidentsStatisticsAction\n ) {\n const organizationID = this.store.selectSnapshot(\n UserState.getCurrentOrganizationID\n );\n\n if (!organizationID) throw new Error('No organization ID set');\n\n const observable = this.statisticsService.loadStatistics(\n organizationID,\n days\n );\n\n return loadEntities(\n ctx,\n 'incidentsStatistics',\n observable.pipe(\n map((statistics: Statistic[]) => {\n return toIdentifiableEntities(statistics, 'name');\n })\n ),\n {\n clear: true,\n }\n );\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { StatisticsState } from './statistics.state';\nimport { StatisticsService } from './statistics.service';\n\n@NgModule({\n declarations: [],\n imports: [NgxsModule.forFeature([StatisticsState])],\n providers: [StatisticsService],\n exports: [],\n})\nexport class StatisticsStateModule {}\n","import { Component, HostListener, OnInit, inject } from '@angular/core';\nimport { Router, RouterLink } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Store, createModelSelector } from '@ngxs/store';\nimport { AutosizeModule } from 'ngx-autosize';\nimport { DialogService } from 'primeng/dynamicdialog';\nimport { SkeletonModule } from 'primeng/skeleton';\nimport { map } from 'rxjs';\nimport { HeaderFormat } from 'src/app/core/components/stats-card/formatters';\nimport {\n VPageChangeEvent,\n VPaginationState,\n} from 'src/app/core/components/ui-kit/paginator/paginator.component';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport { Service } from 'src/app/models/service';\nimport { Statistic } from 'src/app/models/statistics';\nimport { IncidentsStateModule } from 'src/app/store/incidents/incidents.state.module';\nimport { LoadServices } from 'src/app/store/services/services.actions';\nimport { ServicesState } from 'src/app/store/services/services.state';\nimport { LoadIncidentsStatisticsAction } from 'src/app/store/statistics/statistics.actions';\nimport { StatisticsState } from 'src/app/store/statistics/statistics.state';\nimport { StatisticsStateModule } from 'src/app/store/statistics/statistics.state.module';\nimport { StatsCardComponent } from '../../../core/components/stats-card/stats-card.component';\nimport { VButtonComponent } from '../../../core/components/ui-kit/buttons/button/button.component';\nimport { VDataDisplayComponent } from '../../../core/components/ui-kit/data-display/data-display.component';\nimport { VBasicDataItemComponent } from '../../../core/components/ui-kit/data-display/items/basic/basic-data-item.component';\nimport { VDataItemDirective } from '../../../core/components/ui-kit/data-display/items/data-item.directive';\nimport { CheckRoleDirective } from '../../../services/permission/permission.directive';\nimport { LoadIncidents } from '../../../store/incidents/incidents.actions';\nimport { IncidentsState } from '../../../store/incidents/incidents.state';\nimport { NewIncidentPageComponent } from '../incidents/pages/new/new-incident.component';\nimport { ActiveIncidentComponent } from './components/active-incident/active-incident.component';\n\ninterface StatisticsVM {\n isLoading: boolean;\n activeIncidents?: Statistic;\n resolvedIncidents?: Statistic;\n totalImpactDuration?: Statistic;\n mtta?: Statistic;\n mttr?: Statistic;\n}\n\n@Component({\n selector: 'app-page-home',\n templateUrl: './home.component.html',\n styleUrls: ['./home.component.scss'],\n imports: [\n SharedModule,\n StatsCardComponent,\n VButtonComponent,\n CheckRoleDirective,\n VDataDisplayComponent,\n VDataItemDirective,\n ActiveIncidentComponent,\n SkeletonModule,\n AutosizeModule,\n RouterLink,\n VBasicDataItemComponent,\n IncidentsStateModule,\n StatisticsStateModule,\n ],\n})\nexport class HomePageComponent implements OnInit {\n public dialogService = inject(DialogService);\n private store = inject(Store);\n private router = inject(Router);\n public t = inject(TranslateService);\n\n public statCardSize: 'sm' | 'md' = 'md';\n\n public activeIncidentsPaginationState: VPaginationState = {\n page: 1,\n pageSize: 3,\n };\n\n public HeaderFormat = HeaderFormat;\n\n statisticsVM$ = this.store\n .select(\n createModelSelector({\n isLoading: StatisticsState.isLoading,\n activeIncidents: StatisticsState.activeIncidents,\n resolvedIncidents: StatisticsState.resolvedIncidents,\n totalImpactDuration: StatisticsState.totalImpactDuration,\n mtta: StatisticsState.mtta,\n mttr: StatisticsState.mttr,\n })\n )\n .pipe(\n map(state => {\n if (state.isLoading) {\n return {\n isLoading: true,\n } as StatisticsVM;\n } else {\n return {\n isLoading: false,\n activeIncidents: state.activeIncidents?.data,\n resolvedIncidents: state.resolvedIncidents?.data,\n totalImpactDuration: state.totalImpactDuration?.data,\n mtta: state.mtta?.data,\n mttr: state.mttr?.data,\n };\n }\n })\n );\n\n componentsVM$ = this.store.select(ServicesState.services).pipe(\n map(entities => {\n return {\n isLoading: entities.isLoading,\n components: Object.values(entities.entities).map(c => c.data!),\n };\n })\n );\n\n activeIncidentsVM$ = this.store.select(IncidentsState.incidents).pipe(\n map(entities => {\n if (!entities) {\n return {\n isLoading: true,\n activeIncidents: [],\n };\n }\n return {\n isLoading: entities.isLoading,\n activeIncidents: Object.values(entities.entities).map(e => e.data!),\n pagination: entities.pagination,\n };\n })\n );\n\n ngOnInit(): void {\n this.store.dispatch(new LoadServices());\n this.store.dispatch(new LoadIncidentsStatisticsAction(7));\n this.setStatsCardSize();\n this.loadActiveIncidents();\n }\n\n newIncident() {\n this.dialogService.open(NewIncidentPageComponent, {\n header: this.t.instant('pages.createIncident.header'),\n width: '40%',\n dismissableMask: true,\n modal: true,\n });\n }\n\n setStatsCardSize() {\n if (window.innerWidth < 500) {\n this.statCardSize = 'sm';\n } else {\n this.statCardSize = 'md';\n }\n }\n\n @HostListener('window:resize')\n onResize() {\n this.setStatsCardSize();\n }\n\n loadActiveIncidents() {\n this.store.dispatch(\n new LoadIncidents(this.activeIncidentsPaginationState, 'resolved = false')\n );\n }\n\n onActiveIncidentsPageChange(pagination: VPageChangeEvent) {\n this.activeIncidentsPaginationState = {\n page: pagination.page,\n pageSize: pagination.rows,\n };\n this.loadActiveIncidents();\n }\n\n goToService(service: Service) {\n this.router.navigate(['/services', service.id]);\n }\n}\n","\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n {{ 'pages.home.activeIncidents.header' | translate }}\n \n 0 || vm.isLoading\"\n size=\"small\"\n [label]=\"'pages.incidentList.createIncidentBtn' | translate\"\n icon=\"pi pi-plus\"\n (press)=\"newIncident()\"\n [vRequiredRoles]=\"['incidents.manager']\">\n \n \n @if (vm.activeIncidents.length === 0 && !vm.isLoading) {\n \n \n {{ 'pages.home.activeIncidents.nodata' | translate }}\n \n \n \n } @else {\n \n @for (incident of vm.activeIncidents; track incident.id) {\n \n \n \n }\n \n }\n \n \n \n \n \n {{ 'pages.home.serviceStatus.header' | translate }}\n \n \n\n \n @if (vm.isLoading) {\n \n \n \n } @else {\n @if (vm.components.length === 0) {\n \n \n {{ 'pages.home.serviceStatus.nodata' | translate }}\n \n \n \n } @else {\n \n >\n @for (component of vm.components; track component.id) {\n \n \n \n }\n \n }\n }\n \n \n \n\n","import { inject, Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { Apollo, gql } from 'apollo-angular';\nimport { IncidentEvent } from 'src/app/models/incident';\nimport { Usage } from 'src/app/models/subscription-plan';\nimport { AddIncidentEventAction } from 'src/app/store/incidents/incidents.actions';\nimport { EVENT_FIELDS } from 'src/app/store/incidents/incidents.service';\nimport { UsageUpdatedAction } from 'src/app/store/subscription/subscription.actions';\nimport { UserState } from 'src/app/store/user/user.state';\n\nconst EVENT_SUBSCRIPTION = gql`\n subscription Events($organizationUUID: ID!) {\n incidentEvents(organizationUUID: $organizationUUID) {\n incidentId\n event {\n ${EVENT_FIELDS}\n }\n }\n }\n`;\n\nconst USAGE_SUBSCRIPTION = gql`\n subscription Usage($organizationId: ID!) {\n usageEvents(organizationId: $organizationId) {\n featureName\n usage {\n unit\n value\n }\n }\n }\n`;\n\ninterface IncidentSubscriptionEvent {\n incidentId: number;\n event: IncidentEvent;\n}\n\ninterface UsageSubscriptionEvent {\n featureName: string;\n usage: Usage;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RealtimeService {\n private store = inject(Store);\n private apollo = inject(Apollo);\n\n backoffInterval = 500;\n maxBackoffInterval = 10_000;\n\n constructor() {\n this.store.select(UserState.getCurrentOrganizationID).subscribe({\n next: orgId => {\n if (orgId) {\n this.subscribeToIncidentEvents(orgId);\n this.subscribeToUsageEvents(orgId);\n }\n },\n });\n }\n\n subscribeToIncidentEvents(orgId: string) {\n this.apollo\n .subscribe<{ incidentEvents: IncidentSubscriptionEvent }>({\n query: EVENT_SUBSCRIPTION,\n variables: {\n organizationUUID: orgId,\n },\n })\n .subscribe({\n next: ({ data }) => {\n if (data) {\n this.backoffInterval = 500;\n\n this.store.dispatch(\n new AddIncidentEventAction(\n data.incidentEvents.incidentId,\n data.incidentEvents.event\n )\n );\n }\n },\n error: () => {\n // resubscribe\n if (this.backoffInterval * 2 < this.maxBackoffInterval) {\n this.backoffInterval *= 2;\n } else {\n this.backoffInterval = this.maxBackoffInterval;\n }\n\n console.warn(\n `[RealtimeService] Incident subscription failed.. Retrying in ${this.backoffInterval}ms`\n );\n\n setTimeout(() => {\n this.subscribeToIncidentEvents(orgId);\n }, this.backoffInterval);\n },\n });\n }\n\n subscribeToUsageEvents(orgId: string) {\n this.apollo\n .subscribe<{ usageEvents: UsageSubscriptionEvent }>({\n query: USAGE_SUBSCRIPTION,\n variables: {\n organizationId: orgId,\n },\n })\n .subscribe({\n next: ({ data }) => {\n if (data) {\n this.backoffInterval = 500;\n\n this.store.dispatch(\n new UsageUpdatedAction(\n data.usageEvents.featureName,\n data.usageEvents.usage\n )\n );\n }\n },\n error: () => {\n // resubscribe\n if (this.backoffInterval * 2 < this.maxBackoffInterval) {\n this.backoffInterval *= 2;\n } else {\n this.backoffInterval = this.maxBackoffInterval;\n }\n\n console.warn(\n `[RealtimeService] Usage subscription failed.. Retrying in ${this.backoffInterval}ms`\n );\n\n setTimeout(() => {\n this.subscribeToUsageEvents(orgId);\n }, this.backoffInterval);\n },\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetRealtimeConnectionStateAction } from './misc.actions';\n\nexport interface MiscStateModel {\n realtimeConnectionState: string;\n}\n\n@State({\n name: 'misc',\n defaults: { realtimeConnectionState: 'disconnected' },\n})\n@Injectable()\nexport class MiscState {\n @Selector()\n static getRealtimeConnectionState(state: MiscStateModel) {\n return state.realtimeConnectionState;\n }\n\n @Action(SetRealtimeConnectionStateAction)\n setConnectionState(\n ctx: StateContext,\n { connectionState }: SetRealtimeConnectionStateAction\n ) {\n ctx.patchState({\n realtimeConnectionState: connectionState,\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { BroascastChannelsStateModule } from '../communication/broadcast-channels.state.module';\nimport { OrganizationService } from './organization.service';\nimport { OrganizationDetailsState } from './organization.state';\n\n@NgModule({\n declarations: [],\n imports: [\n BroascastChannelsStateModule,\n NgxsModule.forFeature([OrganizationDetailsState]),\n ],\n providers: [OrganizationService],\n bootstrap: [],\n exports: [],\n})\nexport class OrganizationStateModule {}\n","import { AsyncPipe, NgIf } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Select, Store, createModelSelector } from '@ngxs/store';\nimport { PopoverModule } from 'primeng/popover';\nimport { Observable, map } from 'rxjs';\nimport { SubscriptionStatus } from 'src/app/models/subscription-plan';\nimport { MenuService } from 'src/app/services/menu/menu.service';\nimport { MenuItem } from 'src/app/services/menu/menuItem';\nimport { MiscState } from 'src/app/store/misc/misc.state';\nimport { OrganizationDetailsState } from 'src/app/store/organization/organization.state';\nimport { OrganizationStateModule } from 'src/app/store/organization/organization.state.module';\nimport { SubscriptionState } from 'src/app/store/subscription/subscription.state';\nimport { UpdateUISettingAction } from 'src/app/store/ui-settings/ui-settings.actions';\nimport { UISettingsState } from 'src/app/store/ui-settings/ui-settings.state';\nimport {\n LogoutAction,\n SelectOrganizationAction,\n} from 'src/app/store/user/user.actions';\nimport { UserState } from 'src/app/store/user/user.state';\nimport { CheckRoleDirective } from '../../../services/permission/permission.directive';\nimport { VButtonComponent } from '../ui-kit/buttons/button/button.component';\nimport { VIconButtonComponent } from '../ui-kit/buttons/icon-button/icon-button.component';\nimport { VMessageComponent } from '../ui-kit/message/message.component';\nimport { VSideMenuComponent } from '../ui-kit/sidemenu/sidemenu.component';\n\n@Component({\n selector: 'app-sidebar',\n templateUrl: './sidebar.component.html',\n styleUrls: ['./sidebar.component.scss'],\n imports: [\n NgIf,\n VSideMenuComponent,\n CheckRoleDirective,\n VIconButtonComponent,\n PopoverModule,\n VButtonComponent,\n VMessageComponent,\n AsyncPipe,\n OrganizationStateModule,\n ],\n})\nexport class SidebarComponent {\n private store = inject(Store);\n public menuService = inject(MenuService);\n private router = inject(Router);\n\n @Select(MiscState.getRealtimeConnectionState)\n connectionState$!: Observable;\n\n public subscription$ = this.store.select(SubscriptionState.subscription);\n\n public isCollapsed$ = this.store.select(\n UISettingsState.setting('isSidemenuCollapsed')\n );\n\n public isPinned$ = this.store.select(\n UISettingsState.setting('isSidemenuPinned')\n );\n\n SubscriptionStatus = SubscriptionStatus;\n\n public user$ = this.store\n .select(\n createModelSelector({\n user: UserState.getUser,\n selectedOrganization: OrganizationDetailsState.organization,\n })\n )\n .pipe(\n map(({ user, selectedOrganization }) => {\n if (!user) return;\n\n return {\n avatar: user?.avatar,\n name: user?.firstname + ' ' + user?.lastname,\n email: user?.email,\n selectedOrganization: selectedOrganization?.data?.name || '',\n };\n })\n );\n\n userMenuItems$: Observable = this.store\n .select(\n createModelSelector({\n user: UserState.getUser,\n currentOrg: UserState.getCurrentOrganizationID,\n })\n )\n .pipe(\n map(({ user, currentOrg }) => {\n const organizations: MenuItem[] =\n user && user.memberships.length > 1\n ? user?.memberships.map(membership => ({\n id: membership.organizationId,\n label:\n membership.organizationId === currentOrg\n ? membership.organization.name + ' (current)'\n : membership.organization.name,\n icon: 'pi pi-building',\n onClicked: () => {\n this.store.dispatch(\n new SelectOrganizationAction(membership.organizationId)\n );\n window.location.reload();\n },\n }))\n : [];\n\n return [\n {\n label: 'menu.settings',\n icon: 'pi pi-user',\n routerLink: '/settings/account/general',\n },\n ...organizations,\n {\n label: 'actions.logout',\n icon: 'pi pi-sign-out',\n onClicked: () => {\n this.store.dispatch(new LogoutAction());\n },\n },\n ] as MenuItem[];\n })\n );\n\n goToSubscription() {\n this.router.navigate(['/settings/organization/subscription/upgrade']);\n }\n\n toggleCollapsed() {\n const isCollapsed = this.store.selectSnapshot(\n UISettingsState.setting('isSidemenuCollapsed')\n );\n\n this.store.dispatch(\n new UpdateUISettingAction('isSidemenuCollapsed', !isCollapsed)\n );\n }\n\n togglePinned() {\n const isPinned = this.store.selectSnapshot(\n UISettingsState.setting('isSidemenuPinned')\n );\n\n this.store.dispatch(\n new UpdateUISettingAction('isSidemenuPinned', !isPinned)\n );\n }\n}\n","\n \n\n\n\n @if (subscription$ | async; as subscription) {\n @if (subscription.data?.canStartTrial) {\n @if (isCollapsed) {\n \n \n \n Free Trial available\n \n Start your free trial now and get access to all features.\n \n \n \n \n \n \n } @else {\n \n Free Trial available\n \n Start your free trial now and get access to all features.\n \n \n \n }\n }\n @if (subscription.data?.status === SubscriptionStatus.TRIALING) {\n @if (isCollapsed) {\n \n \n \n Upgrade Your Trial\n \n Continue your access to all features by upgrading your trial.\n \n \n \n \n \n \n } @else {\n \n Upgrade Your Trial\n \n Continue your access to all features by upgrading your trial.\n \n \n \n }\n }\n }\n\n","import { Component } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { SkeletonModule } from 'primeng/skeleton';\nimport { MenuService } from 'src/app/services/menu/menu.service';\nimport { SharedModule } from '../../shared.module';\n\n@Component({\n selector: 'app-breadcrumbs',\n templateUrl: './breadcrumbs.component.html',\n imports: [SharedModule, RouterLink, SkeletonModule],\n})\nexport class BreadcrumbsComponent {\n constructor(public menuService: MenuService) {}\n}\n","\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{ breadcrumb.label | translate }}\n \n \n \n\n","import { Injectable } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TranslationService {\n LOCAL_STORAGE_LOCALE_KEY = 'dashboard-locale';\n DEFAULT_LANGUAGE = 'en';\n\n constructor(private translate: TranslateService) {\n this.translate.addLangs(['en', 'de']);\n this.currentLocale = this.loadCurrentLocaleOrDefault();\n }\n\n get currentLocale(): string {\n return this.translate.currentLang;\n }\n\n set currentLocale(locale: string) {\n localStorage.setItem(this.LOCAL_STORAGE_LOCALE_KEY, locale);\n this.translate.setDefaultLang(locale);\n this.translate.use(locale);\n }\n\n private loadCurrentLocaleOrDefault(): string {\n return (\n localStorage.getItem(this.LOCAL_STORAGE_LOCALE_KEY) ||\n this.DEFAULT_LANGUAGE\n );\n }\n\n getAvailableLocales(): string[] {\n return this.translate.getLangs();\n }\n\n translateInstantKey(key: string, params?: any): string {\n return this.translate.instant(key, params);\n }\n\n translateKey(key: string, params?: any): Observable {\n return this.translate.get(key, params);\n }\n}\n","import { Component, OnInit, inject } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { MenuItem } from 'primeng/api';\nimport { firstValueFrom } from 'rxjs';\nimport { KratosAuthenticationService } from 'src/app/services/authentication/kratos.service';\nimport { TranslationService } from 'src/app/services/translation/translation.service';\nimport { LogoutAction } from 'src/app/store/user/user.actions';\nimport { UserState } from 'src/app/store/user/user.state';\nimport { BreadcrumbsComponent } from '../breadcrumbs/breadcrumbs.component';\n\n@Component({\n selector: 'app-topbar',\n templateUrl: './topbar.component.html',\n imports: [BreadcrumbsComponent]\n})\nexport class TopBarComponent implements OnInit {\n menuItems: MenuItem[] = [];\n\n private store = inject(Store);\n\n public user$ = this.store.select(UserState.getUser);\n\n constructor(\n public authService: KratosAuthenticationService,\n private translate: TranslationService\n ) {}\n\n async ngOnInit() {\n this.menuItems = [\n {\n label: await firstValueFrom(\n this.translate.translateKey('menu.settings')\n ),\n icon: 'pi pi-user',\n routerLink: '/settings/account/general',\n },\n {\n label: await firstValueFrom(\n this.translate.translateKey('actions.logout')\n ),\n icon: 'pi pi-sign-out',\n command: () => {\n this.store.dispatch(new LogoutAction());\n },\n },\n ];\n }\n}\n","\n \n\n","import { Component, OnInit, inject } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { FCMService } from 'src/app/services/notifications/fcm.service';\nimport { RealtimeService } from 'src/app/services/realtime/realtime.service';\nimport { StatuspagesStateModule } from 'src/app/store/statuspages/statuspages.state.module';\nimport { LoadSubscriptionAction } from 'src/app/store/subscription/subscription.actions';\nimport { LoadUserAction } from 'src/app/store/user/user.actions';\nimport { SidebarComponent } from '../../core/components/sidebar/sidebar.component';\nimport { TopBarComponent } from '../../core/components/topbar/topbar.component';\n\n@Component({\n selector: 'app-layout-dashboard',\n templateUrl: './internal.component.html',\n imports: [\n SidebarComponent,\n TopBarComponent,\n RouterOutlet,\n StatuspagesStateModule,\n ],\n})\nexport class InternalLayoutComponent implements OnInit {\n rt = inject(RealtimeService);\n fcm = inject(FCMService);\n\n private store = inject(Store);\n\n ngOnInit(): void {\n this.store.dispatch(new LoadUserAction());\n this.store.dispatch(new LoadSubscriptionAction());\n }\n}\n","\n \n \n \n \n \n \n \n \n \n\n","import { Routes } from '@angular/router';\nimport { AuthGuard } from 'src/app/core/guards/auth.guard';\nimport {\n PermissionGuard,\n RequiredRolesAnnotation,\n} from 'src/app/core/guards/permission.guard';\nimport { HomePageComponent } from './home/home.component';\nimport { InternalLayoutComponent } from './internal.component';\nimport { SettingsShellPageComponent } from './settings/pages/settings.component';\n\nexport const InternalRoutes: Routes = [\n {\n path: 'onboarding',\n loadChildren: () =>\n import('./onboarding/onboarding.module').then(m => m.OnboardingModule),\n },\n {\n path: '',\n component: InternalLayoutComponent,\n canActivate: [AuthGuard],\n canActivateChild: [AuthGuard],\n children: [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'dashboard',\n },\n {\n path: 'dashboard',\n component: HomePageComponent,\n data: {\n title: 'menu.dashboard',\n icon: 'pi-home',\n },\n },\n {\n path: 'incidents',\n data: {\n title: 'menu.incidents',\n icon: 'pi-bolt',\n [RequiredRolesAnnotation]: ['incidents.reader'],\n },\n canActivate: [PermissionGuard],\n loadChildren: () =>\n import('./incidents/incidents.module').then(m => m.IncidentsModule),\n },\n {\n path: 'alerts',\n data: {\n title: 'menu.alerts',\n icon: 'pi-exclamation-triangle',\n [RequiredRolesAnnotation]: ['alerts.reader'],\n },\n canActivate: [PermissionGuard],\n loadChildren: () =>\n import('./alerts/alerts.module').then(m => m.AlertsModule),\n },\n {\n path: 'services',\n data: {\n title: 'menu.services',\n icon: 'pi-th-large',\n [RequiredRolesAnnotation]: ['services.reader'],\n },\n canActivate: [PermissionGuard],\n loadChildren: () =>\n import('./services/services.module').then(m => m.ServicesModule),\n },\n {\n path: 'statuspages',\n data: {\n title: 'menu.statuspages',\n icon: 'pi-clone',\n [RequiredRolesAnnotation]: ['statuspages.reader'],\n },\n canActivate: [PermissionGuard],\n loadChildren: () =>\n import('./statuspages/statuspages.module').then(\n m => m.StatuspageModule\n ),\n },\n {\n path: 'monitors',\n data: {\n title: 'menu.monitors',\n icon: 'pi-wave-pulse',\n [RequiredRolesAnnotation]: ['monitors.reader'],\n },\n canActivate: [PermissionGuard],\n loadChildren: () =>\n import('./monitors/monitors.module').then(m => m.MonitorsModule),\n },\n {\n path: 'teams',\n data: {\n title: 'menu.teams',\n icon: 'pi-users',\n [RequiredRolesAnnotation]: ['teams.reader'],\n },\n canActivate: [PermissionGuard],\n loadChildren: () =>\n import('./teams/teams.module').then(m => m.TeamsModule),\n },\n {\n path: 'settings',\n component: SettingsShellPageComponent,\n loadChildren: () =>\n import('./settings/settings.module').then(m => m.SettingsModule),\n data: {\n title: 'menu.settings',\n icon: 'pi-cog',\n },\n },\n ],\n },\n];\n","import { Component, Input } from '@angular/core';\nimport { SharedModule } from 'src/app/core/shared.module';\n\n@Component({\n selector: 'v-card-image-header',\n\n imports: [SharedModule],\n templateUrl: './image-header.component.html',\n styleUrl: './image-header.component.scss',\n})\nexport class VCardImageHeaderComponent {\n /**\n * The text to display in the header\n */\n @Input() text = 'Header';\n\n /**\n * The image to display in the header\n */\n @Input() image = '';\n\n @Input() imageClass = '';\n}\n","\n {{ text }}\n \n\n","export class OAuth2ConfirmLoginChallengeAction {\n static readonly type = '[OAuth2] Confirm Login Challenge';\n constructor(public challenge: string) {}\n}\n\nexport class OAuth2ConfirmConsentChallengeAction {\n static readonly type = '[OAuth2] Confirm Consent Challenge';\n constructor(public challenge: string) {}\n}\n\nexport class OAuth2GetConsentInfoAction {\n static readonly type = '[OAuth2] Get Consent Info';\n constructor(public challenge: string) {}\n}\n","import { inject, Injectable } from '@angular/core';\nimport { Apollo, gql } from 'apollo-angular';\nimport { map, Observable } from 'rxjs';\nimport { OAuth2ConsentInfo } from 'src/app/models/oauth2';\n\nconst CONFIRM_OAUTH2_LOGIN_CHALLENGE_MUTATION = gql`\n mutation OAuth2ConfirmLoginChallenge($challenge: String!) {\n confirmOAuth2LoginChallenge(challenge: $challenge) {\n redirectUri\n }\n }\n`;\n\nconst CONFIRM_OAUTH2_CONSENT_CHALLENGE_MUTATION = gql`\n mutation OAuth2ConfirmConsentChallenge($challenge: String!) {\n confirmOAuth2ConsentChallenge(challenge: $challenge) {\n redirectUri\n }\n }\n`;\n\nconst GET_OAUTH2_CONSENT_INFO_QUERY = gql`\n query GetOAuth2ConsentChallenge($challenge: String!) {\n oauth2ConsentChallenge(challenge: $challenge) {\n client {\n id\n name\n logoUri\n }\n requestedScopes\n skip\n }\n }\n`;\n\n@Injectable()\nexport class OAuth2Service {\n private apollo = inject(Apollo);\n\n confirmLoginChallenge(challenge: string): Observable {\n return this.apollo\n .mutate<{ confirmOAuth2LoginChallenge: { redirectUri: string } }>({\n mutation: CONFIRM_OAUTH2_LOGIN_CHALLENGE_MUTATION,\n variables: {\n challenge: challenge,\n },\n })\n .pipe(\n map(data => {\n if (data.errors) {\n throw new Error(data.errors[0].message);\n }\n return data.data!.confirmOAuth2LoginChallenge.redirectUri!;\n })\n );\n }\n\n confirmConsentChallenge(challenge: string): Observable {\n return this.apollo\n .mutate<{ confirmOAuth2ConsentChallenge: { redirectUri: string } }>({\n mutation: CONFIRM_OAUTH2_CONSENT_CHALLENGE_MUTATION,\n variables: {\n challenge: challenge,\n },\n })\n .pipe(\n map(data => {\n if (data.errors) {\n throw new Error(data.errors[0].message);\n }\n return data.data!.confirmOAuth2ConsentChallenge.redirectUri!;\n })\n );\n }\n\n getConsentChallenge(challenge: string): Observable {\n return this.apollo\n .query<{ oauth2ConsentChallenge: OAuth2ConsentInfo }>({\n query: GET_OAUTH2_CONSENT_INFO_QUERY,\n variables: {\n challenge: challenge,\n },\n })\n .pipe(\n map(data => {\n if (data.errors) {\n throw new Error(data.errors[0].message);\n }\n return data.data!.oauth2ConsentChallenge!;\n })\n );\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { Action, Selector, State, StateContext, Store } from '@ngxs/store';\nimport {\n OAuth2ConfirmConsentChallengeAction,\n OAuth2ConfirmLoginChallengeAction,\n OAuth2GetConsentInfoAction,\n} from './oauth2.actions';\nimport { OAuth2Service } from './oauth2.service';\nimport { catchError, tap } from 'rxjs';\nimport { OAuth2ConsentInfo } from 'src/app/models/oauth2';\nimport { Entity, loadEntity, NewEntity } from '../common/entity';\nimport { ToastService } from 'src/app/services/toast/toast.service';\n\nexport interface OAuth2StateModel {\n isAcceptingConsent: boolean;\n currentConsentRequestInfo: Entity;\n}\n\n@State({\n name: 'oauth2',\n children: [],\n defaults: {\n isAcceptingConsent: false,\n currentConsentRequestInfo: NewEntity(),\n },\n})\n@Injectable()\nexport class OAuth2State {\n store = inject(Store);\n oauth2Service = inject(OAuth2Service);\n toast = inject(ToastService);\n\n @Selector()\n static currentConsent(\n state: OAuth2StateModel\n ): Entity | undefined {\n return state.currentConsentRequestInfo;\n }\n\n @Selector()\n static isAcceptingConsent(state: OAuth2StateModel): boolean {\n return state.isAcceptingConsent;\n }\n\n @Action(OAuth2ConfirmLoginChallengeAction)\n confirmLoginChallenge(\n ctx: StateContext,\n { challenge }: OAuth2ConfirmLoginChallengeAction\n ) {\n return this.oauth2Service.confirmLoginChallenge(challenge).pipe(\n tap(redirectUri => {\n window.location.href = redirectUri;\n })\n );\n }\n\n @Action(OAuth2ConfirmConsentChallengeAction)\n confirmConsentChallenge(\n ctx: StateContext,\n { challenge }: OAuth2ConfirmConsentChallengeAction\n ) {\n ctx.patchState({ isAcceptingConsent: true });\n return this.oauth2Service.confirmConsentChallenge(challenge).pipe(\n tap(redirectUri => {\n window.location.href = redirectUri;\n }),\n catchError(err => {\n ctx.patchState({ isAcceptingConsent: false });\n this.toast.showError(new Error(`failed to accept consent: ${err}`));\n throw err;\n })\n );\n }\n\n @Action(OAuth2GetConsentInfoAction)\n getConsentInfo(\n ctx: StateContext,\n { challenge }: OAuth2GetConsentInfoAction\n ) {\n return loadEntity(\n ctx,\n 'currentConsentRequestInfo',\n this.oauth2Service.getConsentChallenge(challenge)\n ).pipe(\n tap((consentInfo: OAuth2ConsentInfo) => {\n // if the consent was already accepted or the client does\n // not require consents due to us trusting him, we can safely\n // skip the consent screen here.\n if (consentInfo.skip) {\n this.store.dispatch(\n new OAuth2ConfirmConsentChallengeAction(challenge)\n );\n }\n })\n );\n }\n}\n","import { Component, OnInit, inject } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { Store, createModelSelector } from '@ngxs/store';\nimport { map } from 'rxjs';\nimport { VButtonComponent } from 'src/app/core/components/ui-kit/buttons/button/button.component';\nimport { VCardImageHeaderComponent } from 'src/app/core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from 'src/app/core/components/ui-kit/card/card.component';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport { OAuth2ConsentInfo } from 'src/app/models/oauth2';\nimport { Entity } from 'src/app/store/common/entity';\nimport {\n OAuth2ConfirmConsentChallengeAction,\n OAuth2GetConsentInfoAction,\n} from 'src/app/store/oauth2/oauth2.actions';\nimport { OAuth2State } from 'src/app/store/oauth2/oauth2.state';\n\ninterface VM {\n currentConsent: Entity;\n isLoading: boolean;\n}\n\n@Component({\n selector: 'app-page-oauth2-consent',\n imports: [\n SharedModule,\n VCardComponent,\n VCardImageHeaderComponent,\n VButtonComponent,\n ],\n templateUrl: './consent.component.html',\n})\nexport class OAuth2ConsentPageComponent implements OnInit {\n route = inject(ActivatedRoute);\n store = inject(Store);\n\n oAuth2ConsentChallenge?: string;\n\n vm$ = this.store\n .select(\n createModelSelector({\n currentConsent: OAuth2State.currentConsent,\n isLoading: OAuth2State.isAcceptingConsent,\n })\n )\n .pipe(\n map(state => {\n return {\n currentConsent: state.currentConsent,\n isLoading: state.isLoading,\n } as VM;\n })\n );\n\n ngOnInit() {\n this.route.queryParams.subscribe(params => {\n if (params['consent_challenge']) {\n this.oAuth2ConsentChallenge = params['consent_challenge'];\n this.store.dispatch(\n new OAuth2GetConsentInfoAction(this.oAuth2ConsentChallenge!)\n );\n }\n });\n }\n\n onConsent() {\n this.store.dispatch(\n new OAuth2ConfirmConsentChallengeAction(this.oAuth2ConsentChallenge!)\n );\n }\n}\n","\n \n\n \n @if (consent.skip) {\n \n \n \n \n } @else {\n \n \n {{ consent.client.name || consent.client.id }}\n {{ 'pages.consent.message' | translate }}\n\n \n \n @for (scope of consent.requestedScopes; track scope) {\n {{ scope }}\n }\n \n \n \n }\n \n\n \n @if (!vm.currentConsent.data?.skip) {\n \n \n \n }\n \n\n","import { Component, inject } from '@angular/core';\nimport { FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Apollo, gql } from 'apollo-angular';\nimport { Observable, map } from 'rxjs';\nimport { VButtonComponent } from 'src/app/core/components/ui-kit/buttons/button/button.component';\n\nimport { MessageModule } from 'primeng/message';\nimport { VMessageComponent } from 'src/app/core/components/ui-kit/message/message.component';\nimport { UserMetadata } from 'src/app/core/components/ui-kit/sidemenu/sidemenu.component';\nimport { VUserCardComponent } from 'src/app/core/components/ui-kit/user-card/user-card.component';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport {\n Invitation,\n KratosAuthenticationService,\n} from 'src/app/services/authentication/kratos.service';\nimport {\n LoadUserAction,\n LogoutAction,\n SelectOrganizationAction,\n} from 'src/app/store/user/user.actions';\nimport { UserState } from 'src/app/store/user/user.state';\nimport { VCardImageHeaderComponent } from '../../../core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from '../../../core/components/ui-kit/card/card.component';\n\ninterface VM {\n isLoading: boolean;\n user?: UserMetadata;\n isAlreadyMember?: boolean;\n}\n\nconst JOIN_ORGANIZATION_MUTATION = gql`\n mutation JoinOrganization($token: String!) {\n joinOrganization(token: $token) {\n id\n }\n }\n`;\n\n@Component({\n selector: 'app-page-join-organization',\n imports: [\n SharedModule,\n VCardComponent,\n VCardImageHeaderComponent,\n VButtonComponent,\n MessageModule,\n VUserCardComponent,\n VMessageComponent,\n ReactiveFormsModule,\n ],\n templateUrl: './join-organization.component.html',\n})\nexport class JoinOrganizationPageComponent {\n private auth = inject(KratosAuthenticationService);\n private apollo = inject(Apollo);\n private router = inject(Router);\n private route = inject(ActivatedRoute);\n private store = inject(Store);\n\n invitation?: Invitation;\n isJoining = false;\n\n constructor() {\n this.route.queryParams.subscribe(params => {\n this.loadInvitation(params['token']);\n });\n }\n\n vm$: Observable = this.store.select(UserState.getUser).pipe(\n map(user => {\n if (!user) {\n return {\n isLoading: true,\n };\n }\n\n return {\n isLoading: false,\n user: {\n avatar: user.avatar,\n name: user.firstname + ' ' + user?.lastname,\n email: user.email,\n },\n isAlreadyMember:\n user.memberships.find(membership => {\n return (\n membership.organizationId === this.invitation?.organization.id\n );\n }) !== undefined,\n };\n })\n );\n\n joinOrgForm = new FormGroup({});\n joinOrganizationError?: string;\n\n loadInvitation(token: string) {\n this.auth.getInvitation(token).subscribe({\n next: invitation => {\n this.invitation = invitation;\n },\n });\n\n this.store.dispatch(new LoadUserAction());\n }\n\n onFormSubmit() {\n if (!this.joinOrgForm.valid) return;\n\n this.joinOrganizationError = undefined;\n this.joinOrgForm.disable();\n\n this.isJoining = true;\n\n this.apollo\n .mutate({\n mutation: JOIN_ORGANIZATION_MUTATION,\n variables: {\n token: this.invitation?.token,\n },\n })\n .subscribe({\n next: () => {\n this.store.dispatch(new LoadUserAction()).subscribe({\n next: () => {\n this.router.navigate(['/']);\n },\n });\n },\n error: err => {\n this.isJoining = false;\n this.joinOrganizationError = err.toString();\n this.joinOrgForm.enable();\n },\n });\n }\n\n goToDashboard() {\n this.store\n .dispatch(new SelectOrganizationAction(this.invitation!.organization.id))\n .subscribe({\n next: () => {\n this.router.navigate(['/']);\n },\n });\n }\n\n logout() {\n this.store.dispatch(\n new LogoutAction('/register', {\n token: this.invitation?.token,\n })\n );\n }\n}\n","\n \n\n \n @if (vm.user) {\n \n }\n\n @if (vm.isAlreadyMember) {\n \n \n {{ 'pages.joinOrganization.alreadyMember' | translate }}\n \n \n \n \n \n \n \n \n \n \n } @else {\n \n \n\n \n \n \n \n }\n \n\n","import { Component, OnInit, inject } from '@angular/core';\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { LoginFlow, Session, UpdateLoginFlowBody } from '@ory/client';\nimport { KratosFormComponent } from 'src/app/core/components/kratos/form.component';\n\nimport { SkeletonModule } from 'primeng/skeleton';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport {\n ErrBrowserLocationChangeRequired,\n ErrTwoFARequired,\n} from 'src/app/services/authentication/kratos.errors';\nimport { KratosAuthenticationService } from 'src/app/services/authentication/kratos.service';\nimport { OAuth2ConfirmLoginChallengeAction } from 'src/app/store/oauth2/oauth2.actions';\nimport { TrackUserLoggedInEventAction } from 'src/app/store/tracking/tracking.actions';\nimport { environment } from 'src/environments/environment';\nimport { VCardImageHeaderComponent } from '../../../core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from '../../../core/components/ui-kit/card/card.component';\n\n@Component({\n selector: 'app-login-page',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.scss'],\n imports: [\n SharedModule,\n KratosFormComponent,\n VCardComponent,\n VCardImageHeaderComponent,\n SkeletonModule,\n RouterModule,\n ],\n})\nexport class LoginPageComponent implements OnInit {\n private auth = inject(KratosAuthenticationService);\n private router = inject(Router);\n private route = inject(ActivatedRoute);\n private store = inject(Store);\n\n aal: 'aal1' | 'aal2' = 'aal1';\n returnTo = '/';\n\n loginFlow?: LoginFlow;\n twoFAFlow?: LoginFlow;\n\n initialFlowLoading = true;\n\n isOAuth2Flow = false;\n oauth2LoginChallenge?: string;\n\n // when a user logs in with sso he will be redirected to kratos self service first\n // to complete the login flow. After that he will be redirected back to our login page.\n // the check parameter is used to check if the user is then logged in.\n oauth2ReturnUrl = `${environment.frontendUrl}/login?check=whoami`;\n\n isCompletingLoginFlow = false;\n isCompletingTwoFAFlow = false;\n\n ngOnInit() {\n this.route.queryParams.subscribe(params => {\n // redirect to returnTo parameter after successful login\n if (params['returnTo']) {\n this.returnTo = params['returnTo'];\n }\n\n if (params['login_challenge']) {\n this.isOAuth2Flow = true;\n this.oauth2LoginChallenge = params['login_challenge'];\n\n // in case we are acting as an oauth2 provider we need to persist the login_challenge\n // accross the redirection process to the kratos self service\n this.oauth2ReturnUrl = `${environment.frontendUrl}/login?login_challenge=${params['login_challenge']}&check=whoami`;\n }\n\n if (params['check'] === 'whoami') {\n this.auth.setSessionFromWhoami().then(session => {\n this.onLoginCompleted(session);\n });\n } else {\n if (params['flow']) {\n this.auth.getLoginFlow(params['flow']).then(flow => {\n if (flow.requested_aal === 'aal2') {\n this.aal = 'aal2';\n this.twoFAFlow = flow;\n\n // when the user has enabled two factor authentication kratos self service\n // will redirect to /login?flow=xxx as the login flow is not yet completed.\n // however in this case there will be a return_to parameter which contains the\n // original oauth2 login challenge. we switch to the oauth2 flow in this case.\n if (flow.return_to) {\n const url = new URL(flow.return_to);\n const loginChallenge = url.searchParams.get('login_challenge');\n if (loginChallenge) {\n this.isOAuth2Flow = true;\n this.oauth2LoginChallenge = loginChallenge;\n }\n }\n } else {\n this.loginFlow = flow;\n }\n\n this.initialFlowLoading = false;\n });\n } else {\n // check wether we need assurance level 1 (password) or level 2 (two factor)\n if (params['aal'] && params['aal'] === 'aal2') {\n this.aal = 'aal2';\n\n // get two factor flow\n this.auth.createLoginFlow('aal2').then(twoFAFlow => {\n this.initialFlowLoading = false;\n this.twoFAFlow = twoFAFlow;\n });\n } else {\n // get password flow\n this.auth\n .createLoginFlow('aal1', this.oauth2ReturnUrl)\n .then(flow => {\n this.initialFlowLoading = false;\n this.loginFlow = flow;\n });\n }\n }\n }\n });\n }\n\n async submitFlow(data: UpdateLoginFlowBody) {\n this.isCompletingLoginFlow = true;\n await this.auth\n .completeLoginFlowV2(this.loginFlow!, data.method, data)\n .then(session => {\n this.onLoginCompleted(session);\n })\n .catch(err => {\n if (err instanceof ErrTwoFARequired) {\n this.router.navigate(['/login'], { queryParams: { aal: 'aal2' } });\n } else if (err instanceof ErrBrowserLocationChangeRequired) {\n window.location.href = err.redirectUri;\n } else {\n this.loginFlow = err.response.data;\n }\n })\n .finally(() => {\n this.isCompletingLoginFlow = false;\n });\n }\n\n async submitTwoFAFlow(data: UpdateLoginFlowBody) {\n this.isCompletingTwoFAFlow = true;\n await this.auth\n .completeLoginFlowV2(this.twoFAFlow!, data.method, data)\n .then(session => {\n this.onLoginCompleted(session);\n })\n .catch(err => {\n this.twoFAFlow = err.response.data;\n })\n .finally(() => {\n this.isCompletingTwoFAFlow = false;\n });\n }\n\n onLoginCompleted(session: Session) {\n this.store.dispatch(new TrackUserLoggedInEventAction(session.identity!.id));\n\n if (this.isOAuth2Flow) {\n this.store.dispatch(\n new OAuth2ConfirmLoginChallengeAction(this.oauth2LoginChallenge!)\n );\n } else {\n this.router.navigate([this.returnTo]);\n }\n }\n}\n","\n \n \n\n \n \n \n \n \n \n\n \n \n\n \n \n {{ 'pages.login.createAccount' | translate }}\n \n \n {{ 'pages.login.forgotPassword' | translate }}\n \n \n\n\n\n \n\n \n \n \n\n","import { Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { VButtonComponent } from 'src/app/core/components/ui-kit/buttons/button/button.component';\nimport { VCardImageHeaderComponent } from 'src/app/core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from 'src/app/core/components/ui-kit/card/card.component';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport { FeaturesState } from 'src/app/store/features/features.state';\nimport { FLAGS } from 'src/app/store/features/flags';\n\n@Component({\n selector: 'app-page-maintenance',\n\n imports: [\n SharedModule,\n VButtonComponent,\n VCardComponent,\n VCardImageHeaderComponent,\n ],\n templateUrl: './maintenance.component.html',\n})\nexport class MaintenancePageComponent {\n store = inject(Store);\n router = inject(Router);\n\n public maintenanceEnabled$ = this.store.select(\n FeaturesState.boolFlag(FLAGS.HALO_PROTOCOL_FRONTENT)\n );\n\n returnToDashboard() {\n this.router.navigate(['/']);\n }\n}\n","\n \n\n \n \n \n\n @if ((maintenanceEnabled$ | async) === false) {\n \n \n \n } @else {\n \n {{ 'pages.maintenance.message' | translate }}\n \n }\n \n \n\n","import { Component, inject } from '@angular/core';\nimport {\n FormControl,\n FormGroup,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Apollo, gql } from 'apollo-angular';\nimport { MessageModule } from 'primeng/message';\nimport { firstValueFrom } from 'rxjs';\nimport { VButtonComponent } from 'src/app/core/components/ui-kit/buttons/button/button.component';\nimport { VDropdownComponent } from 'src/app/core/components/ui-kit/dropdown/dropdown.component';\nimport { VInputFieldComponent } from 'src/app/core/components/ui-kit/input-field/input-field.component';\n\nimport { VInputComponent } from 'src/app/core/components/ui-kit/input/input.component';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport { ResetOnboardingAction } from 'src/app/store/onboarding/onboarding.actions';\nimport {\n ChangeSubscriptionAction,\n LoadSubscriptionAction,\n} from 'src/app/store/subscription/subscription.actions';\nimport { SubscriptionState } from 'src/app/store/subscription/subscription.state';\nimport {\n LoadUserAction,\n LogoutAction,\n SelectOrganizationAction,\n} from 'src/app/store/user/user.actions';\nimport { environment } from 'src/environments/environment';\n\nconst CREATE_ORGANIZATION_MUTATION = gql`\n mutation CreateOrganization($name: String!) {\n createOrganization(newOrganization: { name: $name }) {\n id\n }\n }\n`;\n\n@Component({\n selector: 'app-page-new-organization',\n imports: [\n SharedModule,\n VInputComponent,\n VButtonComponent,\n MessageModule,\n ReactiveFormsModule,\n VInputFieldComponent,\n VInputComponent,\n VDropdownComponent,\n ],\n templateUrl: './new-organization.component.html',\n})\nexport class NewOrganizationPageComponent {\n private apollo = inject(Apollo);\n private router = inject(Router);\n private store = inject(Store);\n\n newOrgForm = new FormGroup({\n orgName: new FormControl('', Validators.required),\n industry: new FormControl('', Validators.required),\n size: new FormControl('', Validators.required),\n });\n\n isSubmitting = false;\n\n createOrganizationError?: string;\n\n onFormSubmit() {\n if (!this.newOrgForm.valid) return;\n\n this.createOrganizationError = undefined;\n this.newOrgForm.disable();\n\n this.isSubmitting = true;\n\n this.apollo\n .mutate<{ createOrganization: { id: string } }>({\n mutation: CREATE_ORGANIZATION_MUTATION,\n variables: {\n name: this.newOrgForm.value.orgName,\n },\n })\n .subscribe({\n next: res => {\n const actions = [\n new SelectOrganizationAction(res.data!.createOrganization.id),\n new LoadUserAction(),\n new ResetOnboardingAction(),\n ];\n\n // Create a timer that resolves after 3 seconds\n const timer = new Promise(resolve => setTimeout(resolve, 3000));\n\n const checkSubscription = async (\n attempt = 1,\n delay = 500\n ): Promise => {\n if (attempt > 10) return;\n\n await this.store.dispatch(new LoadSubscriptionAction()).toPromise();\n const canChange = this.store.selectSnapshot(\n SubscriptionState.canChangeSubscription\n );\n\n if (!canChange) {\n await new Promise(resolve => setTimeout(resolve, delay));\n return checkSubscription(attempt + 1, delay * 2);\n }\n };\n\n // Wait for both the actions and the timer to complete\n Promise.all([\n firstValueFrom(this.store.dispatch(actions)),\n checkSubscription(),\n timer,\n ]).then(() => {\n this.store\n .dispatch(\n new ChangeSubscriptionAction(\n {\n planName: 'pro',\n priceId: environment.productPriceIds.pro.monthly,\n isTrial: true,\n },\n true\n )\n )\n .subscribe({\n complete: () => {\n this.router.navigate(['/onboarding']);\n },\n });\n });\n },\n error: err => {\n this.isSubmitting = false;\n this.createOrganizationError = err.toString();\n this.newOrgForm.enable();\n },\n });\n }\n\n logout() {\n this.store.dispatch(new LogoutAction());\n }\n}\n","\n \n \n \n \n \n \n \n \n Welcome to Incidite\n \n \n Tell us about your organization\n \n \n\n \n \n \n \n \n\n \n \n \n\n \n \n \n \n \n\n \n \n \n \n Setting up your organization\n \n \n Convincing the logs to be useful...\n \n \n Snoozing all the “urgent” non-urgent alerts...\n \n \n Accidentally deploying to production... wait, what?\n \n \n \n\n \n\n \n \n\n \n \n \n \n \n \n\n","import { Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\n\n@Component({\n selector: 'app-public-pages',\n templateUrl: './public.component.html',\n styleUrl: './public.component.scss',\n\n imports: [RouterOutlet],\n})\nexport class PublicPageComponent {}\n","\n \n\n\n\n \n\n","import { Component, OnInit, inject } from '@angular/core';\nimport { Router, RouterModule } from '@angular/router';\nimport {\n RecoveryFlow,\n SettingsFlow,\n UpdateRecoveryFlowBody,\n UpdateSettingsFlowWithPasswordMethod,\n} from '@ory/client';\nimport { KratosFormComponent } from 'src/app/core/components/kratos/form.component';\n\nimport { SharedModule } from 'src/app/core/shared.module';\nimport {\n ErrAlreadyLoggedIn,\n ErrBrowserLocationChangeRequired,\n ErrTwoFARequired,\n} from 'src/app/services/authentication/kratos.errors';\nimport { KratosAuthenticationService } from 'src/app/services/authentication/kratos.service';\nimport { ToastService } from 'src/app/services/toast/toast.service';\nimport { VCardImageHeaderComponent } from '../../../core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from '../../../core/components/ui-kit/card/card.component';\n\n@Component({\n selector: 'app-recovery-page',\n templateUrl: './recovery.component.html',\n styleUrls: ['./recovery.component.scss'],\n imports: [\n SharedModule,\n KratosFormComponent,\n VCardComponent,\n VCardImageHeaderComponent,\n RouterModule,\n ],\n})\nexport class RecoveryPageComponent implements OnInit {\n private auth = inject(KratosAuthenticationService);\n private router = inject(Router);\n private toast = inject(ToastService);\n\n recoveryFlow?: RecoveryFlow;\n settingsFlow?: SettingsFlow;\n isCompletingRegistrationFlow = false;\n isCompletingSettingsFlow = false;\n\n stage: 'confirm-code' | 'reset-password' = 'confirm-code';\n\n initialFlowLoading = true;\n\n ngOnInit(): void {\n this.loadRecoveryFlow();\n }\n\n // Starts the recovery process by loading a flow which sends a code to the\n // email address a user entered.\n\n private loadRecoveryFlow() {\n this.auth\n .getRecoveryFlow()\n .then(flow => {\n this.recoveryFlow = flow;\n })\n .catch(ex => {\n if (ex instanceof ErrAlreadyLoggedIn) {\n this.stage = 'reset-password';\n this.loadSettingsFlow();\n }\n })\n .finally(() => {\n this.initialFlowLoading = false;\n });\n }\n\n async submitFlow(data: UpdateRecoveryFlowBody) {\n this.isCompletingRegistrationFlow = true;\n await this.auth\n .completeRecoveryFlow(this.recoveryFlow!, data)\n .then(newFlow => {\n this.recoveryFlow = newFlow;\n })\n .catch(err => {\n if (err instanceof ErrBrowserLocationChangeRequired) {\n this.stage = 'reset-password';\n this.loadSettingsFlow();\n } else {\n this.recoveryFlow = err.response.data;\n }\n })\n .finally(() => {\n this.isCompletingRegistrationFlow = false;\n });\n }\n\n // Settings flow is used to reset the password after successful validation\n // of email.\n\n private loadSettingsFlow() {\n this.auth\n .getSettingsFlow()\n .then(flow => {\n this.settingsFlow = flow;\n })\n .catch(ex => {\n if (ex instanceof ErrTwoFARequired) {\n this.router.navigate(['/login'], {\n queryParams: { aal: 'aal2', returnTo: '/recovery' },\n });\n }\n });\n }\n\n async submitSettingsFlow(data: UpdateSettingsFlowWithPasswordMethod) {\n this.isCompletingSettingsFlow = true;\n await this.auth\n .completeSettingsFlow(this.settingsFlow!.id, 'password', {\n ...data,\n method: 'password',\n })\n .then(() => {\n this.toast.showInfo(\n 'Password Updated!',\n 'Please use your new password to log into your account.'\n );\n this.router.navigate(['/login']);\n })\n .catch(err => {\n this.settingsFlow = err.response.data;\n })\n .finally(() => {\n this.isCompletingSettingsFlow = false;\n });\n }\n}\n","\n \n\n \n \n \n \n\n \n \n \n \n\n \n {{ 'pages.resetPassword.accountExists' | translate }}\n \n \n {{ 'actions.login' | translate }}\n \n \n\n","import { Component, OnInit, inject } from '@angular/core';\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { UpdateRegistrationFlowBody } from '@ory/client';\nimport { KratosFormComponent } from 'src/app/core/components/kratos/form.component';\nimport { VButtonComponent } from 'src/app/core/components/ui-kit/buttons/button/button.component';\n\nimport { MessageModule } from 'primeng/message';\nimport { MessagesModule } from 'primeng/messages';\nimport { SkeletonModule } from 'primeng/skeleton';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport { ErrBrowserLocationChangeRequired } from 'src/app/services/authentication/kratos.errors';\nimport {\n Invitation,\n KratosAuthenticationService,\n} from 'src/app/services/authentication/kratos.service';\nimport { FeaturesState } from 'src/app/store/features/features.state';\nimport { FLAGS } from 'src/app/store/features/flags';\nimport { LogoutAction } from 'src/app/store/user/user.actions';\nimport { environment } from 'src/environments/environment';\nimport { VCardImageHeaderComponent } from '../../../core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from '../../../core/components/ui-kit/card/card.component';\n\n@Component({\n selector: 'app-register',\n templateUrl: './register.component.html',\n styleUrls: ['./register.component.scss'],\n imports: [\n SharedModule,\n KratosFormComponent,\n VCardComponent,\n VCardImageHeaderComponent,\n VButtonComponent,\n SkeletonModule,\n MessagesModule,\n MessageModule,\n RouterModule,\n ],\n})\nexport class RegisterPageComponent implements OnInit {\n private route = inject(ActivatedRoute);\n private auth = inject(KratosAuthenticationService);\n private router = inject(Router);\n private store = inject(Store);\n\n disableRegistration$ = this.store.select(\n FeaturesState.boolFlag(FLAGS.DISABLE_REGISTRATION)\n );\n\n registrationFlow?: any;\n isCompletingRegistrationFlow = false;\n\n isLoading = false;\n\n isInvite = false;\n invitation?: Invitation;\n loadInvitationError?: string;\n\n initialFlowLoading = true;\n\n showAlreadyLoggedIn = false;\n\n ngOnInit(): void {\n this.route.queryParams.subscribe(params => {\n const invitationToken = params['token'];\n const flowId = params['flow'];\n\n if (flowId) {\n this.loadRegistrationFlow(flowId);\n } else {\n if (invitationToken) {\n this.isInvite = true;\n this.loadInvitation(invitationToken).then(invitation => {\n this.invitation = invitation;\n this.createRegistrationFlow();\n });\n } else {\n this.createRegistrationFlow();\n }\n }\n });\n }\n\n private loadRegistrationFlow(flowId: string) {\n this.auth.getRegistrationFlow(flowId).then(flow => {\n this.registrationFlow = flow;\n this.initialFlowLoading = false;\n });\n }\n\n private createRegistrationFlow() {\n const returnTo = `${environment.frontendUrl}/login?check=whoami`;\n\n this.auth\n .createRegistrationFlow(returnTo)\n .then(flow => {\n // preset email\n if (this.invitation) {\n flow?.ui.nodes.find((n: any) => {\n if (n.attributes.name === 'traits.email') {\n n.attributes.value = this.invitation?.email;\n }\n });\n }\n\n this.registrationFlow = flow;\n })\n .catch(() => {\n this.showAlreadyLoggedIn = true;\n\n if (this.isInvite) {\n this.router.navigate(['/organizations/join'], {\n queryParams: { token: this.invitation?.token },\n });\n }\n })\n .finally(() => {\n this.initialFlowLoading = false;\n });\n }\n\n loadInvitation(token: string): Promise {\n return new Promise((resolve, reject) => {\n return this.auth.getInvitation(token).subscribe({\n next: invitation => {\n resolve(invitation);\n },\n error: error => {\n this.loadInvitationError = error;\n reject(error);\n },\n });\n });\n }\n\n async submitFlow(data: UpdateRegistrationFlowBody) {\n this.isCompletingRegistrationFlow = true;\n\n if (data.method === 'oidc') {\n try {\n // remove traits as they will be provided by the OIDC provider\n delete data.traits;\n\n await this.auth.completeRegistrationFlowV2(\n this.registrationFlow!,\n data\n );\n } catch (err) {\n if (err instanceof ErrBrowserLocationChangeRequired) {\n window.location.href = err.redirectUri;\n }\n }\n } else if (data.method === 'password') {\n try {\n await this.auth.completeRegistrationFlowV2(\n this.registrationFlow!,\n data\n );\n if (this.isInvite) {\n this.router.navigate(['/organizations/join'], {\n queryParams: { token: this.invitation?.token },\n });\n } else {\n this.router.navigate(['/']);\n }\n } catch (error: any) {\n this.registrationFlow = error.response.data;\n } finally {\n this.isCompletingRegistrationFlow = false;\n }\n }\n }\n\n logout() {\n this.store.dispatch(new LogoutAction());\n }\n\n goToDashboard() {\n this.router.navigate(['/dashboard']);\n }\n}\n","\n \n\n \n \n \n \n \n \n\n\n\n \n\n \n @if (disableRegistration$ | async) {\n \n \n Registration is currently disabled\n \n \n } @else {\n \n \n \n \n \n\n \n \n \n \n\n \n \n\n \n {{ 'pages.register.accountExists' | translate }}\n {{\n 'actions.login' | translate\n }}\n \n }\n \n\n","import { Component, inject } from '@angular/core';\nimport { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { VButtonComponent } from 'src/app/core/components/ui-kit/buttons/button/button.component';\n\nimport { MessageModule } from 'primeng/message';\nimport { VInputFieldComponent } from 'src/app/core/components/ui-kit/input-field/input-field.component';\nimport { VInputComponent } from 'src/app/core/components/ui-kit/input/input.component';\nimport { SharedModule } from 'src/app/core/shared.module';\nimport { KratosAuthenticationService } from 'src/app/services/authentication/kratos.service';\nimport { LoadUserAction } from 'src/app/store/user/user.actions';\nimport { VCardImageHeaderComponent } from '../../../core/components/ui-kit/card/card-headers/image-header.component';\nimport { VCardComponent } from '../../../core/components/ui-kit/card/card.component';\n\n@Component({\n selector: 'app-verification',\n\n imports: [\n SharedModule,\n VCardComponent,\n VCardImageHeaderComponent,\n VInputComponent,\n VButtonComponent,\n MessageModule,\n VInputFieldComponent,\n VInputComponent,\n ReactiveFormsModule,\n ],\n templateUrl: './verification.component.html',\n styleUrls: ['./verification.component.scss'],\n})\nexport class VerificationPageComponent {\n private auth = inject(KratosAuthenticationService);\n private route = inject(ActivatedRoute);\n private router = inject(Router);\n private store = inject(Store);\n\n verificationGroup = new FormGroup({\n code: new FormControl(),\n });\n\n verificationFlowId?: string;\n\n verificationError?: string;\n\n constructor() {\n this.route.queryParams.subscribe(params => {\n this.verificationFlowId = params['flow'];\n\n if (params['code']) {\n this.verificationGroup.controls.code.setValue(params['code']);\n }\n });\n }\n\n onVerificationFormSubmit() {\n this.verificationError = undefined;\n this.auth\n .completeVerificationFlow(\n this.verificationFlowId!,\n this.verificationGroup.controls.code.value\n )\n .then(() => {\n this.store.dispatch(new LoadUserAction());\n this.router.navigate(['/']);\n })\n .catch(err => {\n this.verificationError = err.toString();\n });\n }\n}\n","\n \n\n \n \n \n \n \n\n \n \n \n\n \n \n \n\n","import { Routes } from '@angular/router';\nimport { OAuth2ConsentPageComponent } from './consent/consent.component';\nimport { JoinOrganizationPageComponent } from './join-organization/join-organization.component';\nimport { LoginPageComponent } from './login/login.component';\nimport { MaintenancePageComponent } from './maintenance/maintenance.component';\nimport { NewOrganizationPageComponent } from './new-organization/new-organization.component';\nimport { PublicPageComponent } from './public.component';\nimport { RecoveryPageComponent } from './recovery/recovery.component';\nimport { RegisterPageComponent } from './register/register.component';\nimport { VerificationPageComponent } from './verification/verification.component';\n\nexport const PublicRoutes: Routes = [\n {\n path: '',\n component: PublicPageComponent,\n children: [\n {\n path: 'maintenance',\n component: MaintenancePageComponent,\n },\n {\n path: 'login',\n component: LoginPageComponent,\n },\n {\n path: 'register',\n component: RegisterPageComponent,\n },\n {\n path: 'recovery',\n component: RecoveryPageComponent,\n },\n {\n path: 'self-service/verification',\n component: VerificationPageComponent,\n },\n {\n path: 'organizations/new',\n component: NewOrganizationPageComponent,\n data: {\n title: 'New Organization',\n icon: 'pi-home',\n },\n },\n {\n path: 'organizations/join',\n component: JoinOrganizationPageComponent,\n },\n {\n path: 'consent',\n component: OAuth2ConsentPageComponent,\n },\n ],\n },\n];\n","import { Routes } from '@angular/router';\nimport { InternalRoutes } from './internal/internal.routes';\nimport { PublicRoutes } from './public/public.routes';\n\nexport const routes: Routes = [...InternalRoutes, ...PublicRoutes];\n","import { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { DialogService } from 'primeng/dynamicdialog';\nimport { DialogsModule } from '../core/dialogs/dialogs.module';\nimport { routes } from './routes';\n\n@NgModule({\n declarations: [],\n imports: [\n RouterModule.forRoot(routes, { enableViewTransitions: true }),\n DialogsModule,\n ],\n providers: [DialogService],\n})\nexport class PagesModule {}\n","class TranslateHttpLoader {\n http;\n prefix;\n suffix;\n constructor(http, prefix = \"/assets/i18n/\", suffix = \".json\") {\n this.http = http;\n this.prefix = prefix;\n this.suffix = suffix;\n }\n /**\n * Gets the translations from the server\n */\n getTranslation(lang) {\n return this.http.get(`${this.prefix}${lang}${this.suffix}`);\n }\n}\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { TranslateHttpLoader };\n","import { HttpClient } from '@angular/common/http';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\n\nexport function createTranslateLoader(http: HttpClient) {\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\n}\n","import { Injectable } from '@angular/core';\nimport { TranslateDefaultParser, TranslateParser } from '@ngx-translate/core';\n\n@Injectable()\nexport class MessageParser extends TranslateParser {\n constructor(private defaultParser: TranslateDefaultParser) {\n super();\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\n interpolate(expr: string | Function, params?: any): string | undefined {\n if (typeof expr === 'function' && !params) params = { count: 1 };\n return this.defaultParser.interpolate(expr, params);\n }\n\n getValue(target: any, key: string) {\n return this.defaultParser.getValue(target, key);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeaturesService } from './features.service';\nimport { FeaturesState } from './features.state';\n\n@NgModule({\n declarations: [],\n imports: [NgxsModule.forFeature([FeaturesState])],\n providers: [FeaturesService],\n exports: [],\n})\nexport class FeaturesStateModule {}\n","import { inject, Injectable, OnDestroy } from '@angular/core';\nimport { Action, State, StateContext, Store } from '@ngxs/store';\nimport { Subject } from 'rxjs';\nimport { VKitDialogService } from 'src/app/core/components/ui-kit/dialogs/dialog.service';\nimport { CommunicationProviderType } from 'src/app/models/communication-provider';\nimport { ListEntitiesToIterable } from '../common/list-entity';\nimport {\n CreateWebPushRecipientEndpointAction,\n LoadRecipientEndpointsForOrganizationMemberAction,\n} from '../communication/communication.actions';\nimport { CommunicationState } from '../communication/communication.state';\nimport {\n AskForPushAction,\n EnablePushNotificationsAction,\n SetIgnoreAskForPushUntilAction,\n} from './notifications.actions';\n\nconst CHECK_NOTIFICATIONS_INTERVAL = 1000 * 60 * 60; // 1 hour\nconst ASK_FOR_PUSH_INTERVAL = 1000 * 60 * 60 * 24 * 7; // 1 week\n// const CHECK_NOTIFICATIONS_INTERVAL = 1000; // 1 hour\n// const ASK_FOR_PUSH_INTERVAL = 1000 * 10;\n\nexport interface NotificationsStateModel {\n lastChecked?: Date;\n ignoreAskForPushUntil?: Date;\n hasPushConfigured?: boolean;\n}\n\n@State({\n name: 'notifications',\n children: [],\n defaults: {},\n})\n@Injectable()\nexport class NotificationsState implements OnDestroy {\n private store = inject(Store);\n private ds = inject(VKitDialogService);\n\n private destroy$ = new Subject();\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n @Action(AskForPushAction)\n askForPushNotifications(ctx: StateContext) {\n const lastChecked = ctx.getState().lastChecked;\n\n if (\n !lastChecked ||\n lastChecked.getTime() <\n new Date().getTime() - CHECK_NOTIFICATIONS_INTERVAL\n ) {\n ctx\n .dispatch(new LoadRecipientEndpointsForOrganizationMemberAction())\n .subscribe(() => {\n const endpoints = this.store.selectSnapshot(\n CommunicationState.orgMemberRecipientEndpoints\n );\n\n const hasPushConfigured = ListEntitiesToIterable(\n endpoints\n ).entities.some(\n e => e.data?.providerType === CommunicationProviderType.FCM\n );\n\n ctx.patchState({\n lastChecked: new Date(),\n hasPushConfigured: hasPushConfigured,\n });\n\n // If push notifications are not configured, ask the user to enable them\n if (!hasPushConfigured) {\n this.promptUserForPushNotifications(ctx);\n }\n });\n }\n }\n\n private promptUserForPushNotifications(\n ctx: StateContext\n ) {\n const ignoreAskForPushUntil = ctx.getState().ignoreAskForPushUntil;\n\n if (\n ignoreAskForPushUntil &&\n ignoreAskForPushUntil.getTime() > new Date().getTime()\n ) {\n return;\n }\n\n this.ds\n .confirm({\n header: 'Enable Push Notifications?',\n description:\n 'Push notifications will inform you about incidents, tasks and other important events in real-time.',\n confirmIcon: 'pi pi-bell',\n confirmText: 'Enable Push Notifications',\n cancelText: 'Not now',\n variant: 'primary',\n })\n .then(ok => {\n if (ok) {\n return ctx.dispatch(new EnablePushNotificationsAction());\n } else {\n const ignoreUntil = new Date(\n new Date().getTime() + ASK_FOR_PUSH_INTERVAL\n );\n return ctx.dispatch(new SetIgnoreAskForPushUntilAction(ignoreUntil));\n }\n });\n }\n\n @Action(EnablePushNotificationsAction)\n enablePushNotifications(ctx: StateContext) {\n return ctx.dispatch(new CreateWebPushRecipientEndpointAction());\n }\n\n @Action(SetIgnoreAskForPushUntilAction)\n setIgnoreAskForPushUntil(\n ctx: StateContext,\n action: SetIgnoreAskForPushUntilAction\n ) {\n ctx.patchState({\n ignoreAskForPushUntil: action.ignoreUntil,\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { CommunicationStateModule } from '../communication/communication.state.module';\nimport { NotificationsState } from './notifications.state';\n\n@NgModule({\n declarations: [],\n imports: [\n NgxsModule.forFeature([NotificationsState]),\n CommunicationStateModule,\n ],\n providers: [],\n bootstrap: [],\n exports: [],\n})\nexport class NotificationsStateModule {}\n","import { inject, Injectable } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { createModelSelector, Store } from '@ngxs/store';\nimport { GoogleTagManagerService } from 'angular-google-tag-manager';\nimport { map } from 'rxjs';\nimport { IntercomService } from 'src/app/services/intercom/intercom.service';\nimport { UserState } from 'src/app/store/user/user.state';\nimport { environment } from 'src/environments/environment';\n\nexport enum Tracker {\n GTM = 'GTM',\n INTERCOM = 'INTERCOM',\n}\n\nexport interface TrackingConfig {\n trackers: Tracker[];\n}\n\nexport interface TrackingEvent {\n event: string;\n data?: any;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TrackingService {\n private gtmService = inject(GoogleTagManagerService);\n private store = inject(Store);\n private router = inject(Router);\n private intercom = inject(IntercomService);\n\n constructor() {\n if (environment.gtm.enabled && environment.gtm.id) {\n this.init();\n }\n }\n\n private async init() {\n await this.gtmService.addGtmToDom();\n\n this.store\n .select(\n createModelSelector({\n user: UserState.getUser,\n })\n )\n .pipe(\n map(async ({ user }) => {\n if (!user) return;\n await this.trackEvent(\n {\n event: 'login',\n data: { userId: user.id },\n },\n { trackers: [Tracker.GTM] }\n );\n })\n )\n .subscribe();\n\n this.router.events.forEach(item => {\n if (item instanceof NavigationEnd) {\n this.trackEvent(\n {\n event: 'page',\n data: { pageName: item.url },\n },\n { trackers: [Tracker.GTM] }\n );\n }\n });\n }\n\n public async trackEvent(event: TrackingEvent, config: TrackingConfig) {\n try {\n if (config.trackers.includes(Tracker.GTM)) {\n await this.gtmService.pushTag({\n event: event.event,\n ...event.data,\n });\n }\n\n if (config.trackers.includes(Tracker.INTERCOM)) {\n await this.intercom.trackEvent(event.event, event.data);\n }\n } catch (ex) {\n console.warn('Failed to track event', ex);\n }\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { Action, State, StateContext } from '@ngxs/store';\nimport {\n TrackGenericEventAction,\n TrackSubscriptionCanceledEventAction,\n TrackSubscriptionChangedEventAction,\n TrackSubscriptionDowngradedCanceledEventAction,\n TrackSubscriptionUnCanceledEventAction,\n TrackUserLoggedInEventAction,\n TrackUserRegisteredEventAction,\n} from './tracking.actions';\nimport { Tracker, TrackingService } from './tracking.service';\n\nexport type TrackingStateModel = object;\n\n@State({\n name: 'tracking',\n defaults: {},\n})\n@Injectable()\nexport class TrackingState {\n private trackingService = inject(TrackingService);\n\n @Action(TrackGenericEventAction)\n async trackEvent(\n ctx: StateContext,\n { event, config }: TrackGenericEventAction\n ) {\n await this.trackingService.trackEvent(event, config);\n }\n\n @Action(TrackUserLoggedInEventAction)\n async trackUserLoggedInEvent(\n ctx: StateContext,\n { identityId }: TrackUserLoggedInEventAction\n ) {\n await this.trackingService.trackEvent(\n {\n event: 'incidite_user_logged_in',\n data: {\n userId: identityId,\n },\n },\n { trackers: [Tracker.GTM] }\n );\n }\n\n @Action(TrackUserRegisteredEventAction)\n async trackUserRegisteredEvent(\n ctx: StateContext,\n { identityId }: TrackUserRegisteredEventAction\n ) {\n await this.trackingService.trackEvent(\n {\n event: 'incidite_user_registered',\n data: {\n userId: identityId,\n },\n },\n { trackers: [Tracker.GTM] }\n );\n }\n\n @Action(TrackSubscriptionChangedEventAction)\n async trackSubscriptionChangedEvent(\n ctx: StateContext,\n {\n planName,\n priceId,\n isTrial,\n discountCodes,\n }: TrackSubscriptionChangedEventAction\n ) {\n await this.trackingService.trackEvent(\n {\n event: 'incidite_subscription_changed',\n data: {\n planName: planName,\n priceId: priceId,\n isTrial: isTrial,\n discountCodes: discountCodes?.join(','),\n },\n },\n { trackers: [Tracker.GTM, Tracker.INTERCOM] }\n );\n }\n\n @Action(TrackSubscriptionCanceledEventAction)\n async trackSubscriptionCanceledEvent(\n ctx: StateContext,\n { planName }: TrackSubscriptionCanceledEventAction\n ) {\n await this.trackingService.trackEvent(\n {\n event: 'incidite_subscription_canceled',\n data: {\n planName: planName,\n },\n },\n { trackers: [Tracker.GTM, Tracker.INTERCOM] }\n );\n }\n\n @Action(TrackSubscriptionUnCanceledEventAction)\n async trackSubscriptionUnCanceledEvent(\n ctx: StateContext,\n { planName }: TrackSubscriptionUnCanceledEventAction\n ) {\n await this.trackingService.trackEvent(\n {\n event: 'incidite_subscription_uncanceled',\n data: {\n planName: planName,\n },\n },\n { trackers: [Tracker.GTM, Tracker.INTERCOM] }\n );\n }\n\n @Action(TrackSubscriptionDowngradedCanceledEventAction)\n async trackSubscriptionDowngradedCanceledEvent(\n ctx: StateContext,\n { planName }: TrackSubscriptionDowngradedCanceledEventAction\n ) {\n await this.trackingService.trackEvent(\n {\n event: 'incidite_subscription_downgrade_canceled',\n data: {\n planName: planName,\n },\n },\n { trackers: [Tracker.GTM, Tracker.INTERCOM] }\n );\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { TrackingService } from './tracking.service';\nimport { TrackingState } from './tracking.state';\n\n@NgModule({\n declarations: [],\n imports: [NgxsModule.forFeature([TrackingState])],\n providers: [TrackingService],\n exports: [],\n})\nexport class TrackingStateModule {}\n","import { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { UserState } from './user.state';\nimport { UserService } from './user.service';\n\n@NgModule({\n declarations: [],\n imports: [NgxsModule.forFeature([UserState])],\n providers: [UserService],\n exports: [],\n})\nexport class UserStateModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n// THIS CODE IS GENERATED - DO NOT MODIFY.\nconst u = undefined;\nfunction plural(val) {\n const n = val,\n i = Math.floor(Math.abs(val)),\n v = val.toString().replace(/^[^.]*\\.?/, '').length;\n if (i === 1 && v === 0) return 1;\n return 5;\n}\nexport default [\"de\", [[\"AM\", \"PM\"], u, u], u, [[\"S\", \"M\", \"D\", \"M\", \"D\", \"F\", \"S\"], [\"So.\", \"Mo.\", \"Di.\", \"Mi.\", \"Do.\", \"Fr.\", \"Sa.\"], [\"Sonntag\", \"Montag\", \"Dienstag\", \"Mittwoch\", \"Donnerstag\", \"Freitag\", \"Samstag\"], [\"So.\", \"Mo.\", \"Di.\", \"Mi.\", \"Do.\", \"Fr.\", \"Sa.\"]], [[\"S\", \"M\", \"D\", \"M\", \"D\", \"F\", \"S\"], [\"So\", \"Mo\", \"Di\", \"Mi\", \"Do\", \"Fr\", \"Sa\"], [\"Sonntag\", \"Montag\", \"Dienstag\", \"Mittwoch\", \"Donnerstag\", \"Freitag\", \"Samstag\"], [\"So.\", \"Mo.\", \"Di.\", \"Mi.\", \"Do.\", \"Fr.\", \"Sa.\"]], [[\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"], [\"Jan.\", \"Feb.\", \"März\", \"Apr.\", \"Mai\", \"Juni\", \"Juli\", \"Aug.\", \"Sept.\", \"Okt.\", \"Nov.\", \"Dez.\"], [\"Januar\", \"Februar\", \"März\", \"April\", \"Mai\", \"Juni\", \"Juli\", \"August\", \"September\", \"Oktober\", \"November\", \"Dezember\"]], [[\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"], [\"Jan\", \"Feb\", \"Mär\", \"Apr\", \"Mai\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Dez\"], [\"Januar\", \"Februar\", \"März\", \"April\", \"Mai\", \"Juni\", \"Juli\", \"August\", \"September\", \"Oktober\", \"November\", \"Dezember\"]], [[\"v. Chr.\", \"n. Chr.\"], u, u], 1, [6, 0], [\"dd.MM.yy\", \"dd.MM.y\", \"d. MMMM y\", \"EEEE, d. MMMM y\"], [\"HH:mm\", \"HH:mm:ss\", \"HH:mm:ss z\", \"HH:mm:ss zzzz\"], [\"{1}, {0}\", u, \"{1} 'um' {0}\", u], [\",\", \".\", \";\", \"%\", \"+\", \"-\", \"E\", \"·\", \"‰\", \"∞\", \"NaN\", \":\"], [\"#,##0.###\", \"#,##0 %\", \"#,##0.00 ¤\", \"#E0\"], \"EUR\", \"€\", \"Euro\", {\n \"ATS\": [\"öS\"],\n \"AUD\": [\"AU$\", \"$\"],\n \"BGM\": [\"BGK\"],\n \"BGO\": [\"BGJ\"],\n \"BYN\": [u, \"р.\"],\n \"CUC\": [u, \"Cub$\"],\n \"DEM\": [\"DM\"],\n \"FKP\": [u, \"Fl£\"],\n \"GHS\": [u, \"₵\"],\n \"GNF\": [u, \"F.G.\"],\n \"KMF\": [u, \"FC\"],\n \"PHP\": [u, \"₱\"],\n \"RON\": [u, \"L\"],\n \"RUR\": [u, \"р.\"],\n \"RWF\": [u, \"F.Rw\"],\n \"SYP\": [],\n \"THB\": [\"฿\"],\n \"TWD\": [\"NT$\"],\n \"XXX\": [],\n \"ZMW\": [u, \"K\"]\n}, \"ltr\", plural];\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n// THIS CODE IS GENERATED - DO NOT MODIFY.\nconst u = undefined;\nfunction plural(val) {\n const n = val,\n i = Math.floor(Math.abs(val)),\n v = val.toString().replace(/^[^.]*\\.?/, '').length;\n if (i === 1 && v === 0) return 1;\n return 5;\n}\nexport default [\"en\", [[\"a\", \"p\"], [\"AM\", \"PM\"], u], [[\"AM\", \"PM\"], u, u], [[\"S\", \"M\", \"T\", \"W\", \"T\", \"F\", \"S\"], [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"], [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"], [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"]], u, [[\"J\", \"F\", \"M\", \"A\", \"M\", \"J\", \"J\", \"A\", \"S\", \"O\", \"N\", \"D\"], [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"], [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]], u, [[\"B\", \"A\"], [\"BC\", \"AD\"], [\"Before Christ\", \"Anno Domini\"]], 0, [6, 0], [\"M/d/yy\", \"MMM d, y\", \"MMMM d, y\", \"EEEE, MMMM d, y\"], [\"h:mm a\", \"h:mm:ss a\", \"h:mm:ss a z\", \"h:mm:ss a zzzz\"], [\"{1}, {0}\", u, \"{1} 'at' {0}\", u], [\".\", \",\", \";\", \"%\", \"+\", \"-\", \"E\", \"×\", \"‰\", \"∞\", \"NaN\", \":\"], [\"#,##0.###\", \"#,##0%\", \"¤#,##0.00\", \"#E0\"], \"USD\", \"$\", \"US Dollar\", {}, \"ltr\", plural];\n","// src/presets/aura/accordion/index.ts\nvar accordion_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n panel: {\n borderWidth: \"0 0 1px 0\",\n borderColor: \"{content.border.color}\"\n },\n header: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{text.color}\",\n padding: \"1.125rem\",\n fontWeight: \"600\",\n borderRadius: \"0\",\n borderWidth: \"0\",\n borderColor: \"{content.border.color}\",\n background: \"{content.background}\",\n hoverBackground: \"{content.background}\",\n activeBackground: \"{content.background}\",\n activeHoverBackground: \"{content.background}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n },\n toggleIcon: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{text.color}\",\n activeHoverColor: \"{text.color}\"\n },\n first: {\n topBorderRadius: \"{content.border.radius}\",\n borderWidth: \"0\"\n },\n last: {\n bottomBorderRadius: \"{content.border.radius}\",\n activeBottomBorderRadius: \"0\"\n }\n },\n content: {\n borderWidth: \"0\",\n borderColor: \"{content.border.color}\",\n background: \"{content.background}\",\n color: \"{text.color}\",\n padding: \"0 1.125rem 1.125rem 1.125rem\"\n }\n};\nexport { accordion_default as default };\n","// src/presets/aura/autocomplete/index.ts\nvar autocomplete_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\"\n },\n overlay: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\"\n },\n list: {\n padding: \"{list.padding}\",\n gap: \"{list.gap}\"\n },\n option: {\n focusBackground: \"{list.option.focus.background}\",\n selectedBackground: \"{list.option.selected.background}\",\n selectedFocusBackground: \"{list.option.selected.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n selectedColor: \"{list.option.selected.color}\",\n selectedFocusColor: \"{list.option.selected.focus.color}\",\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\"\n },\n optionGroup: {\n background: \"{list.option.group.background}\",\n color: \"{list.option.group.color}\",\n fontWeight: \"{list.option.group.font.weight}\",\n padding: \"{list.option.group.padding}\"\n },\n dropdown: {\n width: \"2.5rem\",\n sm: {\n width: \"2rem\"\n },\n lg: {\n width: \"3rem\"\n },\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.border.color}\",\n activeBorderColor: \"{form.field.border.color}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n chip: {\n borderRadius: \"{border.radius.sm}\"\n },\n emptyMessage: {\n padding: \"{list.option.padding}\"\n },\n colorScheme: {\n light: {\n chip: {\n focusBackground: \"{surface.200}\",\n focusColor: \"{surface.800}\"\n },\n dropdown: {\n background: \"{surface.100}\",\n hoverBackground: \"{surface.200}\",\n activeBackground: \"{surface.300}\",\n color: \"{surface.600}\",\n hoverColor: \"{surface.700}\",\n activeColor: \"{surface.800}\"\n }\n },\n dark: {\n chip: {\n focusBackground: \"{surface.700}\",\n focusColor: \"{surface.0}\"\n },\n dropdown: {\n background: \"{surface.800}\",\n hoverBackground: \"{surface.700}\",\n activeBackground: \"{surface.600}\",\n color: \"{surface.300}\",\n hoverColor: \"{surface.200}\",\n activeColor: \"{surface.100}\"\n }\n }\n }\n};\nexport { autocomplete_default as default };\n","// src/presets/aura/avatar/index.ts\nvar avatar_default = {\n root: {\n width: \"2rem\",\n height: \"2rem\",\n fontSize: \"1rem\",\n background: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\"\n },\n icon: {\n size: \"1rem\"\n },\n group: {\n borderColor: \"{content.background}\",\n offset: \"-0.75rem\"\n },\n lg: {\n width: \"3rem\",\n height: \"3rem\",\n fontSize: \"1.5rem\",\n icon: {\n size: \"1.5rem\"\n },\n group: {\n offset: \"-1rem\"\n }\n },\n xl: {\n width: \"4rem\",\n height: \"4rem\",\n fontSize: \"2rem\",\n icon: {\n size: \"2rem\"\n },\n group: {\n offset: \"-1.5rem\"\n }\n }\n};\nexport { avatar_default as default };\n","// src/presets/aura/badge/index.ts\nvar badge_default = {\n root: {\n borderRadius: \"{border.radius.md}\",\n padding: \"0 0.5rem\",\n fontSize: \"0.75rem\",\n fontWeight: \"700\",\n minWidth: \"1.5rem\",\n height: \"1.5rem\"\n },\n dot: {\n size: \"0.5rem\"\n },\n sm: {\n fontSize: \"0.625rem\",\n minWidth: \"1.25rem\",\n height: \"1.25rem\"\n },\n lg: {\n fontSize: \"0.875rem\",\n minWidth: \"1.75rem\",\n height: \"1.75rem\"\n },\n xl: {\n fontSize: \"1rem\",\n minWidth: \"2rem\",\n height: \"2rem\"\n },\n colorScheme: {\n light: {\n primary: {\n background: \"{primary.color}\",\n color: \"{primary.contrast.color}\"\n },\n secondary: {\n background: \"{surface.100}\",\n color: \"{surface.600}\"\n },\n success: {\n background: \"{green.500}\",\n color: \"{surface.0}\"\n },\n info: {\n background: \"{sky.500}\",\n color: \"{surface.0}\"\n },\n warn: {\n background: \"{orange.500}\",\n color: \"{surface.0}\"\n },\n danger: {\n background: \"{red.500}\",\n color: \"{surface.0}\"\n },\n contrast: {\n background: \"{surface.950}\",\n color: \"{surface.0}\"\n }\n },\n dark: {\n primary: {\n background: \"{primary.color}\",\n color: \"{primary.contrast.color}\"\n },\n secondary: {\n background: \"{surface.800}\",\n color: \"{surface.300}\"\n },\n success: {\n background: \"{green.400}\",\n color: \"{green.950}\"\n },\n info: {\n background: \"{sky.400}\",\n color: \"{sky.950}\"\n },\n warn: {\n background: \"{orange.400}\",\n color: \"{orange.950}\"\n },\n danger: {\n background: \"{red.400}\",\n color: \"{red.950}\"\n },\n contrast: {\n background: \"{surface.0}\",\n color: \"{surface.950}\"\n }\n }\n }\n};\nexport { badge_default as default };\n","// src/presets/aura/base/index.ts\nvar base_default = {\n primitive: {\n borderRadius: {\n none: \"0\",\n xs: \"2px\",\n sm: \"4px\",\n md: \"6px\",\n lg: \"8px\",\n xl: \"12px\"\n },\n emerald: {\n 50: \"#ecfdf5\",\n 100: \"#d1fae5\",\n 200: \"#a7f3d0\",\n 300: \"#6ee7b7\",\n 400: \"#34d399\",\n 500: \"#10b981\",\n 600: \"#059669\",\n 700: \"#047857\",\n 800: \"#065f46\",\n 900: \"#064e3b\",\n 950: \"#022c22\"\n },\n green: {\n 50: \"#f0fdf4\",\n 100: \"#dcfce7\",\n 200: \"#bbf7d0\",\n 300: \"#86efac\",\n 400: \"#4ade80\",\n 500: \"#22c55e\",\n 600: \"#16a34a\",\n 700: \"#15803d\",\n 800: \"#166534\",\n 900: \"#14532d\",\n 950: \"#052e16\"\n },\n lime: {\n 50: \"#f7fee7\",\n 100: \"#ecfccb\",\n 200: \"#d9f99d\",\n 300: \"#bef264\",\n 400: \"#a3e635\",\n 500: \"#84cc16\",\n 600: \"#65a30d\",\n 700: \"#4d7c0f\",\n 800: \"#3f6212\",\n 900: \"#365314\",\n 950: \"#1a2e05\"\n },\n red: {\n 50: \"#fef2f2\",\n 100: \"#fee2e2\",\n 200: \"#fecaca\",\n 300: \"#fca5a5\",\n 400: \"#f87171\",\n 500: \"#ef4444\",\n 600: \"#dc2626\",\n 700: \"#b91c1c\",\n 800: \"#991b1b\",\n 900: \"#7f1d1d\",\n 950: \"#450a0a\"\n },\n orange: {\n 50: \"#fff7ed\",\n 100: \"#ffedd5\",\n 200: \"#fed7aa\",\n 300: \"#fdba74\",\n 400: \"#fb923c\",\n 500: \"#f97316\",\n 600: \"#ea580c\",\n 700: \"#c2410c\",\n 800: \"#9a3412\",\n 900: \"#7c2d12\",\n 950: \"#431407\"\n },\n amber: {\n 50: \"#fffbeb\",\n 100: \"#fef3c7\",\n 200: \"#fde68a\",\n 300: \"#fcd34d\",\n 400: \"#fbbf24\",\n 500: \"#f59e0b\",\n 600: \"#d97706\",\n 700: \"#b45309\",\n 800: \"#92400e\",\n 900: \"#78350f\",\n 950: \"#451a03\"\n },\n yellow: {\n 50: \"#fefce8\",\n 100: \"#fef9c3\",\n 200: \"#fef08a\",\n 300: \"#fde047\",\n 400: \"#facc15\",\n 500: \"#eab308\",\n 600: \"#ca8a04\",\n 700: \"#a16207\",\n 800: \"#854d0e\",\n 900: \"#713f12\",\n 950: \"#422006\"\n },\n teal: {\n 50: \"#f0fdfa\",\n 100: \"#ccfbf1\",\n 200: \"#99f6e4\",\n 300: \"#5eead4\",\n 400: \"#2dd4bf\",\n 500: \"#14b8a6\",\n 600: \"#0d9488\",\n 700: \"#0f766e\",\n 800: \"#115e59\",\n 900: \"#134e4a\",\n 950: \"#042f2e\"\n },\n cyan: {\n 50: \"#ecfeff\",\n 100: \"#cffafe\",\n 200: \"#a5f3fc\",\n 300: \"#67e8f9\",\n 400: \"#22d3ee\",\n 500: \"#06b6d4\",\n 600: \"#0891b2\",\n 700: \"#0e7490\",\n 800: \"#155e75\",\n 900: \"#164e63\",\n 950: \"#083344\"\n },\n sky: {\n 50: \"#f0f9ff\",\n 100: \"#e0f2fe\",\n 200: \"#bae6fd\",\n 300: \"#7dd3fc\",\n 400: \"#38bdf8\",\n 500: \"#0ea5e9\",\n 600: \"#0284c7\",\n 700: \"#0369a1\",\n 800: \"#075985\",\n 900: \"#0c4a6e\",\n 950: \"#082f49\"\n },\n blue: {\n 50: \"#eff6ff\",\n 100: \"#dbeafe\",\n 200: \"#bfdbfe\",\n 300: \"#93c5fd\",\n 400: \"#60a5fa\",\n 500: \"#3b82f6\",\n 600: \"#2563eb\",\n 700: \"#1d4ed8\",\n 800: \"#1e40af\",\n 900: \"#1e3a8a\",\n 950: \"#172554\"\n },\n indigo: {\n 50: \"#eef2ff\",\n 100: \"#e0e7ff\",\n 200: \"#c7d2fe\",\n 300: \"#a5b4fc\",\n 400: \"#818cf8\",\n 500: \"#6366f1\",\n 600: \"#4f46e5\",\n 700: \"#4338ca\",\n 800: \"#3730a3\",\n 900: \"#312e81\",\n 950: \"#1e1b4b\"\n },\n violet: {\n 50: \"#f5f3ff\",\n 100: \"#ede9fe\",\n 200: \"#ddd6fe\",\n 300: \"#c4b5fd\",\n 400: \"#a78bfa\",\n 500: \"#8b5cf6\",\n 600: \"#7c3aed\",\n 700: \"#6d28d9\",\n 800: \"#5b21b6\",\n 900: \"#4c1d95\",\n 950: \"#2e1065\"\n },\n purple: {\n 50: \"#faf5ff\",\n 100: \"#f3e8ff\",\n 200: \"#e9d5ff\",\n 300: \"#d8b4fe\",\n 400: \"#c084fc\",\n 500: \"#a855f7\",\n 600: \"#9333ea\",\n 700: \"#7e22ce\",\n 800: \"#6b21a8\",\n 900: \"#581c87\",\n 950: \"#3b0764\"\n },\n fuchsia: {\n 50: \"#fdf4ff\",\n 100: \"#fae8ff\",\n 200: \"#f5d0fe\",\n 300: \"#f0abfc\",\n 400: \"#e879f9\",\n 500: \"#d946ef\",\n 600: \"#c026d3\",\n 700: \"#a21caf\",\n 800: \"#86198f\",\n 900: \"#701a75\",\n 950: \"#4a044e\"\n },\n pink: {\n 50: \"#fdf2f8\",\n 100: \"#fce7f3\",\n 200: \"#fbcfe8\",\n 300: \"#f9a8d4\",\n 400: \"#f472b6\",\n 500: \"#ec4899\",\n 600: \"#db2777\",\n 700: \"#be185d\",\n 800: \"#9d174d\",\n 900: \"#831843\",\n 950: \"#500724\"\n },\n rose: {\n 50: \"#fff1f2\",\n 100: \"#ffe4e6\",\n 200: \"#fecdd3\",\n 300: \"#fda4af\",\n 400: \"#fb7185\",\n 500: \"#f43f5e\",\n 600: \"#e11d48\",\n 700: \"#be123c\",\n 800: \"#9f1239\",\n 900: \"#881337\",\n 950: \"#4c0519\"\n },\n slate: {\n 50: \"#f8fafc\",\n 100: \"#f1f5f9\",\n 200: \"#e2e8f0\",\n 300: \"#cbd5e1\",\n 400: \"#94a3b8\",\n 500: \"#64748b\",\n 600: \"#475569\",\n 700: \"#334155\",\n 800: \"#1e293b\",\n 900: \"#0f172a\",\n 950: \"#020617\"\n },\n gray: {\n 50: \"#f9fafb\",\n 100: \"#f3f4f6\",\n 200: \"#e5e7eb\",\n 300: \"#d1d5db\",\n 400: \"#9ca3af\",\n 500: \"#6b7280\",\n 600: \"#4b5563\",\n 700: \"#374151\",\n 800: \"#1f2937\",\n 900: \"#111827\",\n 950: \"#030712\"\n },\n zinc: {\n 50: \"#fafafa\",\n 100: \"#f4f4f5\",\n 200: \"#e4e4e7\",\n 300: \"#d4d4d8\",\n 400: \"#a1a1aa\",\n 500: \"#71717a\",\n 600: \"#52525b\",\n 700: \"#3f3f46\",\n 800: \"#27272a\",\n 900: \"#18181b\",\n 950: \"#09090b\"\n },\n neutral: {\n 50: \"#fafafa\",\n 100: \"#f5f5f5\",\n 200: \"#e5e5e5\",\n 300: \"#d4d4d4\",\n 400: \"#a3a3a3\",\n 500: \"#737373\",\n 600: \"#525252\",\n 700: \"#404040\",\n 800: \"#262626\",\n 900: \"#171717\",\n 950: \"#0a0a0a\"\n },\n stone: {\n 50: \"#fafaf9\",\n 100: \"#f5f5f4\",\n 200: \"#e7e5e4\",\n 300: \"#d6d3d1\",\n 400: \"#a8a29e\",\n 500: \"#78716c\",\n 600: \"#57534e\",\n 700: \"#44403c\",\n 800: \"#292524\",\n 900: \"#1c1917\",\n 950: \"#0c0a09\"\n }\n },\n semantic: {\n transitionDuration: \"0.2s\",\n focusRing: {\n width: \"1px\",\n style: \"solid\",\n color: \"{primary.color}\",\n offset: \"2px\",\n shadow: \"none\"\n },\n disabledOpacity: \"0.6\",\n iconSize: \"1rem\",\n anchorGutter: \"2px\",\n primary: {\n 50: \"{emerald.50}\",\n 100: \"{emerald.100}\",\n 200: \"{emerald.200}\",\n 300: \"{emerald.300}\",\n 400: \"{emerald.400}\",\n 500: \"{emerald.500}\",\n 600: \"{emerald.600}\",\n 700: \"{emerald.700}\",\n 800: \"{emerald.800}\",\n 900: \"{emerald.900}\",\n 950: \"{emerald.950}\"\n },\n formField: {\n paddingX: \"0.75rem\",\n paddingY: \"0.5rem\",\n sm: {\n fontSize: \"0.875rem\",\n paddingX: \"0.625rem\",\n paddingY: \"0.375rem\"\n },\n lg: {\n fontSize: \"1.125rem\",\n paddingX: \"0.875rem\",\n paddingY: \"0.625rem\"\n },\n borderRadius: \"{border.radius.md}\",\n focusRing: {\n width: \"0\",\n style: \"none\",\n color: \"transparent\",\n offset: \"0\",\n shadow: \"none\"\n },\n transitionDuration: \"{transition.duration}\"\n },\n list: {\n padding: \"0.25rem 0.25rem\",\n gap: \"2px\",\n header: {\n padding: \"0.5rem 1rem 0.25rem 1rem\"\n },\n option: {\n padding: \"0.5rem 0.75rem\",\n borderRadius: \"{border.radius.sm}\"\n },\n optionGroup: {\n padding: \"0.5rem 0.75rem\",\n fontWeight: \"600\"\n }\n },\n content: {\n borderRadius: \"{border.radius.md}\"\n },\n mask: {\n transitionDuration: \"0.15s\"\n },\n navigation: {\n list: {\n padding: \"0.25rem 0.25rem\",\n gap: \"2px\"\n },\n item: {\n padding: \"0.5rem 0.75rem\",\n borderRadius: \"{border.radius.sm}\",\n gap: \"0.5rem\"\n },\n submenuLabel: {\n padding: \"0.5rem 0.75rem\",\n fontWeight: \"600\"\n },\n submenuIcon: {\n size: \"0.875rem\"\n }\n },\n overlay: {\n select: {\n borderRadius: \"{border.radius.md}\",\n shadow: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\"\n },\n popover: {\n borderRadius: \"{border.radius.md}\",\n padding: \"0.75rem\",\n shadow: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\"\n },\n modal: {\n borderRadius: \"{border.radius.xl}\",\n padding: \"1.25rem\",\n shadow: \"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)\"\n },\n navigation: {\n shadow: \"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)\"\n }\n },\n colorScheme: {\n light: {\n surface: {\n 0: \"#ffffff\",\n 50: \"{slate.50}\",\n 100: \"{slate.100}\",\n 200: \"{slate.200}\",\n 300: \"{slate.300}\",\n 400: \"{slate.400}\",\n 500: \"{slate.500}\",\n 600: \"{slate.600}\",\n 700: \"{slate.700}\",\n 800: \"{slate.800}\",\n 900: \"{slate.900}\",\n 950: \"{slate.950}\"\n },\n primary: {\n color: \"{primary.500}\",\n contrastColor: \"#ffffff\",\n hoverColor: \"{primary.600}\",\n activeColor: \"{primary.700}\"\n },\n highlight: {\n background: \"{primary.50}\",\n focusBackground: \"{primary.100}\",\n color: \"{primary.700}\",\n focusColor: \"{primary.800}\"\n },\n mask: {\n background: \"rgba(0,0,0,0.4)\",\n color: \"{surface.200}\"\n },\n formField: {\n background: \"{surface.0}\",\n disabledBackground: \"{surface.200}\",\n filledBackground: \"{surface.50}\",\n filledHoverBackground: \"{surface.50}\",\n filledFocusBackground: \"{surface.50}\",\n borderColor: \"{surface.300}\",\n hoverBorderColor: \"{surface.400}\",\n focusBorderColor: \"{primary.color}\",\n invalidBorderColor: \"{red.400}\",\n color: \"{surface.700}\",\n disabledColor: \"{surface.500}\",\n placeholderColor: \"{surface.500}\",\n invalidPlaceholderColor: \"{red.600}\",\n floatLabelColor: \"{surface.500}\",\n floatLabelFocusColor: \"{primary.600}\",\n floatLabelActiveColor: \"{surface.500}\",\n floatLabelInvalidColor: \"{form.field.invalid.placeholder.color}\",\n iconColor: \"{surface.400}\",\n shadow: \"0 0 #0000, 0 0 #0000, 0 1px 2px 0 rgba(18, 18, 23, 0.05)\"\n },\n text: {\n color: \"{surface.700}\",\n hoverColor: \"{surface.800}\",\n mutedColor: \"{surface.500}\",\n hoverMutedColor: \"{surface.600}\"\n },\n content: {\n background: \"{surface.0}\",\n hoverBackground: \"{surface.100}\",\n borderColor: \"{surface.200}\",\n color: \"{text.color}\",\n hoverColor: \"{text.hover.color}\"\n },\n overlay: {\n select: {\n background: \"{surface.0}\",\n borderColor: \"{surface.200}\",\n color: \"{text.color}\"\n },\n popover: {\n background: \"{surface.0}\",\n borderColor: \"{surface.200}\",\n color: \"{text.color}\"\n },\n modal: {\n background: \"{surface.0}\",\n borderColor: \"{surface.200}\",\n color: \"{text.color}\"\n }\n },\n list: {\n option: {\n focusBackground: \"{surface.100}\",\n selectedBackground: \"{highlight.background}\",\n selectedFocusBackground: \"{highlight.focus.background}\",\n color: \"{text.color}\",\n focusColor: \"{text.hover.color}\",\n selectedColor: \"{highlight.color}\",\n selectedFocusColor: \"{highlight.focus.color}\",\n icon: {\n color: \"{surface.400}\",\n focusColor: \"{surface.500}\"\n }\n },\n optionGroup: {\n background: \"transparent\",\n color: \"{text.muted.color}\"\n }\n },\n navigation: {\n item: {\n focusBackground: \"{surface.100}\",\n activeBackground: \"{surface.100}\",\n color: \"{text.color}\",\n focusColor: \"{text.hover.color}\",\n activeColor: \"{text.hover.color}\",\n icon: {\n color: \"{surface.400}\",\n focusColor: \"{surface.500}\",\n activeColor: \"{surface.500}\"\n }\n },\n submenuLabel: {\n background: \"transparent\",\n color: \"{text.muted.color}\"\n },\n submenuIcon: {\n color: \"{surface.400}\",\n focusColor: \"{surface.500}\",\n activeColor: \"{surface.500}\"\n }\n }\n },\n dark: {\n surface: {\n 0: \"#ffffff\",\n 50: \"{zinc.50}\",\n 100: \"{zinc.100}\",\n 200: \"{zinc.200}\",\n 300: \"{zinc.300}\",\n 400: \"{zinc.400}\",\n 500: \"{zinc.500}\",\n 600: \"{zinc.600}\",\n 700: \"{zinc.700}\",\n 800: \"{zinc.800}\",\n 900: \"{zinc.900}\",\n 950: \"{zinc.950}\"\n },\n primary: {\n color: \"{primary.400}\",\n contrastColor: \"{surface.900}\",\n hoverColor: \"{primary.300}\",\n activeColor: \"{primary.200}\"\n },\n highlight: {\n background: \"color-mix(in srgb, {primary.400}, transparent 84%)\",\n focusBackground: \"color-mix(in srgb, {primary.400}, transparent 76%)\",\n color: \"rgba(255,255,255,.87)\",\n focusColor: \"rgba(255,255,255,.87)\"\n },\n mask: {\n background: \"rgba(0,0,0,0.6)\",\n color: \"{surface.200}\"\n },\n formField: {\n background: \"{surface.950}\",\n disabledBackground: \"{surface.700}\",\n filledBackground: \"{surface.800}\",\n filledHoverBackground: \"{surface.800}\",\n filledFocusBackground: \"{surface.800}\",\n borderColor: \"{surface.600}\",\n hoverBorderColor: \"{surface.500}\",\n focusBorderColor: \"{primary.color}\",\n invalidBorderColor: \"{red.300}\",\n color: \"{surface.0}\",\n disabledColor: \"{surface.400}\",\n placeholderColor: \"{surface.400}\",\n invalidPlaceholderColor: \"{red.400}\",\n floatLabelColor: \"{surface.400}\",\n floatLabelFocusColor: \"{primary.color}\",\n floatLabelActiveColor: \"{surface.400}\",\n floatLabelInvalidColor: \"{form.field.invalid.placeholder.color}\",\n iconColor: \"{surface.400}\",\n shadow: \"0 0 #0000, 0 0 #0000, 0 1px 2px 0 rgba(18, 18, 23, 0.05)\"\n },\n text: {\n color: \"{surface.0}\",\n hoverColor: \"{surface.0}\",\n mutedColor: \"{surface.400}\",\n hoverMutedColor: \"{surface.300}\"\n },\n content: {\n background: \"{surface.900}\",\n hoverBackground: \"{surface.800}\",\n borderColor: \"{surface.700}\",\n color: \"{text.color}\",\n hoverColor: \"{text.hover.color}\"\n },\n overlay: {\n select: {\n background: \"{surface.900}\",\n borderColor: \"{surface.700}\",\n color: \"{text.color}\"\n },\n popover: {\n background: \"{surface.900}\",\n borderColor: \"{surface.700}\",\n color: \"{text.color}\"\n },\n modal: {\n background: \"{surface.900}\",\n borderColor: \"{surface.700}\",\n color: \"{text.color}\"\n }\n },\n list: {\n option: {\n focusBackground: \"{surface.800}\",\n selectedBackground: \"{highlight.background}\",\n selectedFocusBackground: \"{highlight.focus.background}\",\n color: \"{text.color}\",\n focusColor: \"{text.hover.color}\",\n selectedColor: \"{highlight.color}\",\n selectedFocusColor: \"{highlight.focus.color}\",\n icon: {\n color: \"{surface.500}\",\n focusColor: \"{surface.400}\"\n }\n },\n optionGroup: {\n background: \"transparent\",\n color: \"{text.muted.color}\"\n }\n },\n navigation: {\n item: {\n focusBackground: \"{surface.800}\",\n activeBackground: \"{surface.800}\",\n color: \"{text.color}\",\n focusColor: \"{text.hover.color}\",\n activeColor: \"{text.hover.color}\",\n icon: {\n color: \"{surface.500}\",\n focusColor: \"{surface.400}\",\n activeColor: \"{surface.400}\"\n }\n },\n submenuLabel: {\n background: \"transparent\",\n color: \"{text.muted.color}\"\n },\n submenuIcon: {\n color: \"{surface.500}\",\n focusColor: \"{surface.400}\",\n activeColor: \"{surface.400}\"\n }\n }\n }\n }\n }\n};\nexport { base_default as default };\n","// src/presets/aura/blockui/index.ts\nvar blockui_default = {\n root: {\n borderRadius: \"{content.border.radius}\"\n }\n};\nexport { blockui_default as default };\n","// src/presets/aura/breadcrumb/index.ts\nvar breadcrumb_default = {\n root: {\n padding: \"1rem\",\n background: \"{content.background}\",\n gap: \"0.5rem\",\n transitionDuration: \"{transition.duration}\"\n },\n item: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n borderRadius: \"{content.border.radius}\",\n gap: \"{navigation.item.gap}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n hoverColor: \"{navigation.item.icon.focus.color}\"\n },\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n separator: {\n color: \"{navigation.item.icon.color}\"\n }\n};\nexport { breadcrumb_default as default };\n","// src/presets/aura/button/index.ts\nvar button_default = {\n root: {\n borderRadius: \"{form.field.border.radius}\",\n roundedBorderRadius: \"2rem\",\n gap: \"0.5rem\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n iconOnlyWidth: \"2.5rem\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n },\n label: {\n fontWeight: \"500\"\n },\n raisedShadow: \"0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12)\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n offset: \"{focus.ring.offset}\"\n },\n badgeSize: \"1rem\",\n transitionDuration: \"{form.field.transition.duration}\"\n },\n colorScheme: {\n light: {\n root: {\n primary: {\n background: \"{primary.color}\",\n hoverBackground: \"{primary.hover.color}\",\n activeBackground: \"{primary.active.color}\",\n borderColor: \"{primary.color}\",\n hoverBorderColor: \"{primary.hover.color}\",\n activeBorderColor: \"{primary.active.color}\",\n color: \"{primary.contrast.color}\",\n hoverColor: \"{primary.contrast.color}\",\n activeColor: \"{primary.contrast.color}\",\n focusRing: {\n color: \"{primary.color}\",\n shadow: \"none\"\n }\n },\n secondary: {\n background: \"{surface.100}\",\n hoverBackground: \"{surface.200}\",\n activeBackground: \"{surface.300}\",\n borderColor: \"{surface.100}\",\n hoverBorderColor: \"{surface.200}\",\n activeBorderColor: \"{surface.300}\",\n color: \"{surface.600}\",\n hoverColor: \"{surface.700}\",\n activeColor: \"{surface.800}\",\n focusRing: {\n color: \"{surface.600}\",\n shadow: \"none\"\n }\n },\n info: {\n background: \"{sky.500}\",\n hoverBackground: \"{sky.600}\",\n activeBackground: \"{sky.700}\",\n borderColor: \"{sky.500}\",\n hoverBorderColor: \"{sky.600}\",\n activeBorderColor: \"{sky.700}\",\n color: \"#ffffff\",\n hoverColor: \"#ffffff\",\n activeColor: \"#ffffff\",\n focusRing: {\n color: \"{sky.500}\",\n shadow: \"none\"\n }\n },\n success: {\n background: \"{green.500}\",\n hoverBackground: \"{green.600}\",\n activeBackground: \"{green.700}\",\n borderColor: \"{green.500}\",\n hoverBorderColor: \"{green.600}\",\n activeBorderColor: \"{green.700}\",\n color: \"#ffffff\",\n hoverColor: \"#ffffff\",\n activeColor: \"#ffffff\",\n focusRing: {\n color: \"{green.500}\",\n shadow: \"none\"\n }\n },\n warn: {\n background: \"{orange.500}\",\n hoverBackground: \"{orange.600}\",\n activeBackground: \"{orange.700}\",\n borderColor: \"{orange.500}\",\n hoverBorderColor: \"{orange.600}\",\n activeBorderColor: \"{orange.700}\",\n color: \"#ffffff\",\n hoverColor: \"#ffffff\",\n activeColor: \"#ffffff\",\n focusRing: {\n color: \"{orange.500}\",\n shadow: \"none\"\n }\n },\n help: {\n background: \"{purple.500}\",\n hoverBackground: \"{purple.600}\",\n activeBackground: \"{purple.700}\",\n borderColor: \"{purple.500}\",\n hoverBorderColor: \"{purple.600}\",\n activeBorderColor: \"{purple.700}\",\n color: \"#ffffff\",\n hoverColor: \"#ffffff\",\n activeColor: \"#ffffff\",\n focusRing: {\n color: \"{purple.500}\",\n shadow: \"none\"\n }\n },\n danger: {\n background: \"{red.500}\",\n hoverBackground: \"{red.600}\",\n activeBackground: \"{red.700}\",\n borderColor: \"{red.500}\",\n hoverBorderColor: \"{red.600}\",\n activeBorderColor: \"{red.700}\",\n color: \"#ffffff\",\n hoverColor: \"#ffffff\",\n activeColor: \"#ffffff\",\n focusRing: {\n color: \"{red.500}\",\n shadow: \"none\"\n }\n },\n contrast: {\n background: \"{surface.950}\",\n hoverBackground: \"{surface.900}\",\n activeBackground: \"{surface.800}\",\n borderColor: \"{surface.950}\",\n hoverBorderColor: \"{surface.900}\",\n activeBorderColor: \"{surface.800}\",\n color: \"{surface.0}\",\n hoverColor: \"{surface.0}\",\n activeColor: \"{surface.0}\",\n focusRing: {\n color: \"{surface.950}\",\n shadow: \"none\"\n }\n }\n },\n outlined: {\n primary: {\n hoverBackground: \"{primary.50}\",\n activeBackground: \"{primary.100}\",\n borderColor: \"{primary.200}\",\n color: \"{primary.color}\"\n },\n secondary: {\n hoverBackground: \"{surface.50}\",\n activeBackground: \"{surface.100}\",\n borderColor: \"{surface.200}\",\n color: \"{surface.500}\"\n },\n success: {\n hoverBackground: \"{green.50}\",\n activeBackground: \"{green.100}\",\n borderColor: \"{green.200}\",\n color: \"{green.500}\"\n },\n info: {\n hoverBackground: \"{sky.50}\",\n activeBackground: \"{sky.100}\",\n borderColor: \"{sky.200}\",\n color: \"{sky.500}\"\n },\n warn: {\n hoverBackground: \"{orange.50}\",\n activeBackground: \"{orange.100}\",\n borderColor: \"{orange.200}\",\n color: \"{orange.500}\"\n },\n help: {\n hoverBackground: \"{purple.50}\",\n activeBackground: \"{purple.100}\",\n borderColor: \"{purple.200}\",\n color: \"{purple.500}\"\n },\n danger: {\n hoverBackground: \"{red.50}\",\n activeBackground: \"{red.100}\",\n borderColor: \"{red.200}\",\n color: \"{red.500}\"\n },\n contrast: {\n hoverBackground: \"{surface.50}\",\n activeBackground: \"{surface.100}\",\n borderColor: \"{surface.700}\",\n color: \"{surface.950}\"\n },\n plain: {\n hoverBackground: \"{surface.50}\",\n activeBackground: \"{surface.100}\",\n borderColor: \"{surface.200}\",\n color: \"{surface.700}\"\n }\n },\n text: {\n primary: {\n hoverBackground: \"{primary.50}\",\n activeBackground: \"{primary.100}\",\n color: \"{primary.color}\"\n },\n secondary: {\n hoverBackground: \"{surface.50}\",\n activeBackground: \"{surface.100}\",\n color: \"{surface.500}\"\n },\n success: {\n hoverBackground: \"{green.50}\",\n activeBackground: \"{green.100}\",\n color: \"{green.500}\"\n },\n info: {\n hoverBackground: \"{sky.50}\",\n activeBackground: \"{sky.100}\",\n color: \"{sky.500}\"\n },\n warn: {\n hoverBackground: \"{orange.50}\",\n activeBackground: \"{orange.100}\",\n color: \"{orange.500}\"\n },\n help: {\n hoverBackground: \"{purple.50}\",\n activeBackground: \"{purple.100}\",\n color: \"{purple.500}\"\n },\n danger: {\n hoverBackground: \"{red.50}\",\n activeBackground: \"{red.100}\",\n color: \"{red.500}\"\n },\n contrast: {\n hoverBackground: \"{surface.50}\",\n activeBackground: \"{surface.100}\",\n color: \"{surface.950}\"\n },\n plain: {\n hoverBackground: \"{surface.50}\",\n activeBackground: \"{surface.100}\",\n color: \"{surface.700}\"\n }\n },\n link: {\n color: \"{primary.color}\",\n hoverColor: \"{primary.color}\",\n activeColor: \"{primary.color}\"\n }\n },\n dark: {\n root: {\n primary: {\n background: \"{primary.color}\",\n hoverBackground: \"{primary.hover.color}\",\n activeBackground: \"{primary.active.color}\",\n borderColor: \"{primary.color}\",\n hoverBorderColor: \"{primary.hover.color}\",\n activeBorderColor: \"{primary.active.color}\",\n color: \"{primary.contrast.color}\",\n hoverColor: \"{primary.contrast.color}\",\n activeColor: \"{primary.contrast.color}\",\n focusRing: {\n color: \"{primary.color}\",\n shadow: \"none\"\n }\n },\n secondary: {\n background: \"{surface.800}\",\n hoverBackground: \"{surface.700}\",\n activeBackground: \"{surface.600}\",\n borderColor: \"{surface.800}\",\n hoverBorderColor: \"{surface.700}\",\n activeBorderColor: \"{surface.600}\",\n color: \"{surface.300}\",\n hoverColor: \"{surface.200}\",\n activeColor: \"{surface.100}\",\n focusRing: {\n color: \"{surface.300}\",\n shadow: \"none\"\n }\n },\n info: {\n background: \"{sky.400}\",\n hoverBackground: \"{sky.300}\",\n activeBackground: \"{sky.200}\",\n borderColor: \"{sky.400}\",\n hoverBorderColor: \"{sky.300}\",\n activeBorderColor: \"{sky.200}\",\n color: \"{sky.950}\",\n hoverColor: \"{sky.950}\",\n activeColor: \"{sky.950}\",\n focusRing: {\n color: \"{sky.400}\",\n shadow: \"none\"\n }\n },\n success: {\n background: \"{green.400}\",\n hoverBackground: \"{green.300}\",\n activeBackground: \"{green.200}\",\n borderColor: \"{green.400}\",\n hoverBorderColor: \"{green.300}\",\n activeBorderColor: \"{green.200}\",\n color: \"{green.950}\",\n hoverColor: \"{green.950}\",\n activeColor: \"{green.950}\",\n focusRing: {\n color: \"{green.400}\",\n shadow: \"none\"\n }\n },\n warn: {\n background: \"{orange.400}\",\n hoverBackground: \"{orange.300}\",\n activeBackground: \"{orange.200}\",\n borderColor: \"{orange.400}\",\n hoverBorderColor: \"{orange.300}\",\n activeBorderColor: \"{orange.200}\",\n color: \"{orange.950}\",\n hoverColor: \"{orange.950}\",\n activeColor: \"{orange.950}\",\n focusRing: {\n color: \"{orange.400}\",\n shadow: \"none\"\n }\n },\n help: {\n background: \"{purple.400}\",\n hoverBackground: \"{purple.300}\",\n activeBackground: \"{purple.200}\",\n borderColor: \"{purple.400}\",\n hoverBorderColor: \"{purple.300}\",\n activeBorderColor: \"{purple.200}\",\n color: \"{purple.950}\",\n hoverColor: \"{purple.950}\",\n activeColor: \"{purple.950}\",\n focusRing: {\n color: \"{purple.400}\",\n shadow: \"none\"\n }\n },\n danger: {\n background: \"{red.400}\",\n hoverBackground: \"{red.300}\",\n activeBackground: \"{red.200}\",\n borderColor: \"{red.400}\",\n hoverBorderColor: \"{red.300}\",\n activeBorderColor: \"{red.200}\",\n color: \"{red.950}\",\n hoverColor: \"{red.950}\",\n activeColor: \"{red.950}\",\n focusRing: {\n color: \"{red.400}\",\n shadow: \"none\"\n }\n },\n contrast: {\n background: \"{surface.0}\",\n hoverBackground: \"{surface.100}\",\n activeBackground: \"{surface.200}\",\n borderColor: \"{surface.0}\",\n hoverBorderColor: \"{surface.100}\",\n activeBorderColor: \"{surface.200}\",\n color: \"{surface.950}\",\n hoverColor: \"{surface.950}\",\n activeColor: \"{surface.950}\",\n focusRing: {\n color: \"{surface.0}\",\n shadow: \"none\"\n }\n }\n },\n outlined: {\n primary: {\n hoverBackground: \"color-mix(in srgb, {primary.color}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {primary.color}, transparent 84%)\",\n borderColor: \"{primary.700}\",\n color: \"{primary.color}\"\n },\n secondary: {\n hoverBackground: \"rgba(255,255,255,0.04)\",\n activeBackground: \"rgba(255,255,255,0.16)\",\n borderColor: \"{surface.700}\",\n color: \"{surface.400}\"\n },\n success: {\n hoverBackground: \"color-mix(in srgb, {green.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {green.400}, transparent 84%)\",\n borderColor: \"{green.700}\",\n color: \"{green.400}\"\n },\n info: {\n hoverBackground: \"color-mix(in srgb, {sky.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {sky.400}, transparent 84%)\",\n borderColor: \"{sky.700}\",\n color: \"{sky.400}\"\n },\n warn: {\n hoverBackground: \"color-mix(in srgb, {orange.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {orange.400}, transparent 84%)\",\n borderColor: \"{orange.700}\",\n color: \"{orange.400}\"\n },\n help: {\n hoverBackground: \"color-mix(in srgb, {purple.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {purple.400}, transparent 84%)\",\n borderColor: \"{purple.700}\",\n color: \"{purple.400}\"\n },\n danger: {\n hoverBackground: \"color-mix(in srgb, {red.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {red.400}, transparent 84%)\",\n borderColor: \"{red.700}\",\n color: \"{red.400}\"\n },\n contrast: {\n hoverBackground: \"{surface.800}\",\n activeBackground: \"{surface.700}\",\n borderColor: \"{surface.500}\",\n color: \"{surface.0}\"\n },\n plain: {\n hoverBackground: \"{surface.800}\",\n activeBackground: \"{surface.700}\",\n borderColor: \"{surface.600}\",\n color: \"{surface.0}\"\n }\n },\n text: {\n primary: {\n hoverBackground: \"color-mix(in srgb, {primary.color}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {primary.color}, transparent 84%)\",\n color: \"{primary.color}\"\n },\n secondary: {\n hoverBackground: \"{surface.800}\",\n activeBackground: \"{surface.700}\",\n color: \"{surface.400}\"\n },\n success: {\n hoverBackground: \"color-mix(in srgb, {green.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {green.400}, transparent 84%)\",\n color: \"{green.400}\"\n },\n info: {\n hoverBackground: \"color-mix(in srgb, {sky.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {sky.400}, transparent 84%)\",\n color: \"{sky.400}\"\n },\n warn: {\n hoverBackground: \"color-mix(in srgb, {orange.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {orange.400}, transparent 84%)\",\n color: \"{orange.400}\"\n },\n help: {\n hoverBackground: \"color-mix(in srgb, {purple.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {purple.400}, transparent 84%)\",\n color: \"{purple.400}\"\n },\n danger: {\n hoverBackground: \"color-mix(in srgb, {red.400}, transparent 96%)\",\n activeBackground: \"color-mix(in srgb, {red.400}, transparent 84%)\",\n color: \"{red.400}\"\n },\n contrast: {\n hoverBackground: \"{surface.800}\",\n activeBackground: \"{surface.700}\",\n color: \"{surface.0}\"\n },\n plain: {\n hoverBackground: \"{surface.800}\",\n activeBackground: \"{surface.700}\",\n color: \"{surface.0}\"\n }\n },\n link: {\n color: \"{primary.color}\",\n hoverColor: \"{primary.color}\",\n activeColor: \"{primary.color}\"\n }\n }\n }\n};\nexport { button_default as default };\n","// src/presets/aura/card/index.ts\nvar card_default = {\n root: {\n background: \"{content.background}\",\n borderRadius: \"{border.radius.xl}\",\n color: \"{content.color}\",\n shadow: \"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)\"\n },\n body: {\n padding: \"1.25rem\",\n gap: \"0.5rem\"\n },\n caption: {\n gap: \"0.5rem\"\n },\n title: {\n fontSize: \"1.25rem\",\n fontWeight: \"500\"\n },\n subtitle: {\n color: \"{text.muted.color}\"\n }\n};\nexport { card_default as default };\n","// src/presets/aura/carousel/index.ts\nvar carousel_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n content: {\n gap: \"0.25rem\"\n },\n indicatorList: {\n padding: \"1rem\",\n gap: \"0.5rem\"\n },\n indicator: {\n width: \"2rem\",\n height: \"0.5rem\",\n borderRadius: \"{content.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n colorScheme: {\n light: {\n indicator: {\n background: \"{surface.200}\",\n hoverBackground: \"{surface.300}\",\n activeBackground: \"{primary.color}\"\n }\n },\n dark: {\n indicator: {\n background: \"{surface.700}\",\n hoverBackground: \"{surface.600}\",\n activeBackground: \"{primary.color}\"\n }\n }\n }\n};\nexport { carousel_default as default };\n","// src/presets/aura/cascadeselect/index.ts\nvar cascadeselect_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n }\n },\n dropdown: {\n width: \"2.5rem\",\n color: \"{form.field.icon.color}\"\n },\n overlay: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\"\n },\n list: {\n padding: \"{list.padding}\",\n gap: \"{list.gap}\",\n mobileIndent: \"1rem\"\n },\n option: {\n focusBackground: \"{list.option.focus.background}\",\n selectedBackground: \"{list.option.selected.background}\",\n selectedFocusBackground: \"{list.option.selected.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n selectedColor: \"{list.option.selected.color}\",\n selectedFocusColor: \"{list.option.selected.focus.color}\",\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\",\n icon: {\n color: \"{list.option.icon.color}\",\n focusColor: \"{list.option.icon.focus.color}\",\n size: \"0.875rem\"\n }\n },\n clearIcon: {\n color: \"{form.field.icon.color}\"\n }\n};\nexport { cascadeselect_default as default };\n","// src/presets/aura/checkbox/index.ts\nvar checkbox_default = {\n root: {\n borderRadius: \"{border.radius.sm}\",\n width: \"1.25rem\",\n height: \"1.25rem\",\n background: \"{form.field.background}\",\n checkedBackground: \"{primary.color}\",\n checkedHoverBackground: \"{primary.hover.color}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.border.color}\",\n checkedBorderColor: \"{primary.color}\",\n checkedHoverBorderColor: \"{primary.hover.color}\",\n checkedFocusBorderColor: \"{primary.color}\",\n checkedDisabledBorderColor: \"{form.field.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n shadow: \"{form.field.shadow}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n width: \"1rem\",\n height: \"1rem\"\n },\n lg: {\n width: \"1.5rem\",\n height: \"1.5rem\"\n }\n },\n icon: {\n size: \"0.875rem\",\n color: \"{form.field.color}\",\n checkedColor: \"{primary.contrast.color}\",\n checkedHoverColor: \"{primary.contrast.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n sm: {\n size: \"0.75rem\"\n },\n lg: {\n size: \"1rem\"\n }\n }\n};\nexport { checkbox_default as default };\n","// src/presets/aura/chip/index.ts\nvar chip_default = {\n root: {\n borderRadius: \"16px\",\n paddingX: \"0.75rem\",\n paddingY: \"0.5rem\",\n gap: \"0.5rem\",\n transitionDuration: \"{transition.duration}\"\n },\n image: {\n width: \"2rem\",\n height: \"2rem\"\n },\n icon: {\n size: \"1rem\"\n },\n removeIcon: {\n size: \"1rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n }\n },\n colorScheme: {\n light: {\n root: {\n background: \"{surface.100}\",\n color: \"{surface.800}\"\n },\n icon: {\n color: \"{surface.800}\"\n },\n removeIcon: {\n color: \"{surface.800}\"\n }\n },\n dark: {\n root: {\n background: \"{surface.800}\",\n color: \"{surface.0}\"\n },\n icon: {\n color: \"{surface.0}\"\n },\n removeIcon: {\n color: \"{surface.0}\"\n }\n }\n }\n};\nexport { chip_default as default };\n","// src/presets/aura/colorpicker/index.ts\nvar colorpicker_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n preview: {\n width: \"1.5rem\",\n height: \"1.5rem\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n panel: {\n shadow: \"{overlay.popover.shadow}\",\n borderRadius: \"{overlay.popover.borderRadius}\"\n },\n colorScheme: {\n light: {\n panel: {\n background: \"{surface.800}\",\n borderColor: \"{surface.900}\"\n },\n handle: {\n color: \"{surface.0}\"\n }\n },\n dark: {\n panel: {\n background: \"{surface.900}\",\n borderColor: \"{surface.700}\"\n },\n handle: {\n color: \"{surface.0}\"\n }\n }\n }\n};\nexport { colorpicker_default as default };\n","// src/presets/aura/confirmdialog/index.ts\nvar confirmdialog_default = {\n icon: {\n size: \"2rem\",\n color: \"{overlay.modal.color}\"\n },\n content: {\n gap: \"1rem\"\n }\n};\nexport { confirmdialog_default as default };\n","// src/presets/aura/confirmpopup/index.ts\nvar confirmpopup_default = {\n root: {\n background: \"{overlay.popover.background}\",\n borderColor: \"{overlay.popover.border.color}\",\n color: \"{overlay.popover.color}\",\n borderRadius: \"{overlay.popover.border.radius}\",\n shadow: \"{overlay.popover.shadow}\",\n gutter: \"10px\",\n arrowOffset: \"1.25rem\"\n },\n content: {\n padding: \"{overlay.popover.padding}\",\n gap: \"1rem\"\n },\n icon: {\n size: \"1.5rem\",\n color: \"{overlay.popover.color}\"\n },\n footer: {\n gap: \"0.5rem\",\n padding: \"0 {overlay.popover.padding} {overlay.popover.padding} {overlay.popover.padding}\"\n }\n};\nexport { confirmpopup_default as default };\n","// src/presets/aura/contextmenu/index.ts\nvar contextmenu_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\",\n shadow: \"{overlay.navigation.shadow}\",\n transitionDuration: \"{transition.duration}\"\n },\n list: {\n padding: \"{navigation.list.padding}\",\n gap: \"{navigation.list.gap}\"\n },\n item: {\n focusBackground: \"{navigation.item.focus.background}\",\n activeBackground: \"{navigation.item.active.background}\",\n color: \"{navigation.item.color}\",\n focusColor: \"{navigation.item.focus.color}\",\n activeColor: \"{navigation.item.active.color}\",\n padding: \"{navigation.item.padding}\",\n borderRadius: \"{navigation.item.border.radius}\",\n gap: \"{navigation.item.gap}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n focusColor: \"{navigation.item.icon.focus.color}\",\n activeColor: \"{navigation.item.icon.active.color}\"\n }\n },\n submenu: {\n mobileIndent: \"1rem\"\n },\n submenuIcon: {\n size: \"{navigation.submenu.icon.size}\",\n color: \"{navigation.submenu.icon.color}\",\n focusColor: \"{navigation.submenu.icon.focus.color}\",\n activeColor: \"{navigation.submenu.icon.active.color}\"\n },\n separator: {\n borderColor: \"{content.border.color}\"\n }\n};\nexport { contextmenu_default as default };\n","// src/presets/aura/datatable/index.ts\nvar datatable_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n header: {\n background: \"{content.background}\",\n borderColor: \"{datatable.border.color}\",\n color: \"{content.color}\",\n borderWidth: \"0 0 1px 0\",\n padding: \"0.75rem 1rem\"\n },\n headerCell: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n borderColor: \"{datatable.border.color}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n selectedColor: \"{highlight.color}\",\n gap: \"0.5rem\",\n padding: \"0.75rem 1rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n columnTitle: {\n fontWeight: \"600\"\n },\n row: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n selectedColor: \"{highlight.color}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n bodyCell: {\n borderColor: \"{datatable.border.color}\",\n padding: \"0.75rem 1rem\"\n },\n footerCell: {\n background: \"{content.background}\",\n borderColor: \"{datatable.border.color}\",\n color: \"{content.color}\",\n padding: \"0.75rem 1rem\"\n },\n columnFooter: {\n fontWeight: \"600\"\n },\n footer: {\n background: \"{content.background}\",\n borderColor: \"{datatable.border.color}\",\n color: \"{content.color}\",\n borderWidth: \"0 0 1px 0\",\n padding: \"0.75rem 1rem\"\n },\n dropPoint: {\n color: \"{primary.color}\"\n },\n columnResizerWidth: \"0.5rem\",\n resizeIndicator: {\n width: \"1px\",\n color: \"{primary.color}\"\n },\n sortIcon: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n size: \"0.875rem\"\n },\n loadingIcon: {\n size: \"2rem\"\n },\n rowToggleButton: {\n hoverBackground: \"{content.hover.background}\",\n selectedHoverBackground: \"{content.background}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n selectedHoverColor: \"{primary.color}\",\n size: \"1.75rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n filter: {\n inlineGap: \"0.5rem\",\n overlaySelect: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\"\n },\n overlayPopover: {\n background: \"{overlay.popover.background}\",\n borderColor: \"{overlay.popover.border.color}\",\n borderRadius: \"{overlay.popover.border.radius}\",\n color: \"{overlay.popover.color}\",\n shadow: \"{overlay.popover.shadow}\",\n padding: \"{overlay.popover.padding}\",\n gap: \"0.5rem\"\n },\n rule: {\n borderColor: \"{content.border.color}\"\n },\n constraintList: {\n padding: \"{list.padding}\",\n gap: \"{list.gap}\"\n },\n constraint: {\n focusBackground: \"{list.option.focus.background}\",\n selectedBackground: \"{list.option.selected.background}\",\n selectedFocusBackground: \"{list.option.selected.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n selectedColor: \"{list.option.selected.color}\",\n selectedFocusColor: \"{list.option.selected.focus.color}\",\n separator: {\n borderColor: \"{content.border.color}\"\n },\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\"\n }\n },\n paginatorTop: {\n borderColor: \"{datatable.border.color}\",\n borderWidth: \"0 0 1px 0\"\n },\n paginatorBottom: {\n borderColor: \"{datatable.border.color}\",\n borderWidth: \"0 0 1px 0\"\n },\n colorScheme: {\n light: {\n root: {\n borderColor: \"{content.border.color}\"\n },\n row: {\n stripedBackground: \"{surface.50}\"\n },\n bodyCell: {\n selectedBorderColor: \"{primary.100}\"\n }\n },\n dark: {\n root: {\n borderColor: \"{surface.800}\"\n },\n row: {\n stripedBackground: \"{surface.950}\"\n },\n bodyCell: {\n selectedBorderColor: \"{primary.900}\"\n }\n }\n }\n};\nexport { datatable_default as default };\n","// src/presets/aura/dataview/index.ts\nvar dataview_default = {\n root: {\n borderColor: \"transparent\",\n borderWidth: \"0\",\n borderRadius: \"0\",\n padding: \"0\"\n },\n header: {\n background: \"{content.background}\",\n color: \"{content.color}\",\n borderColor: \"{content.border.color}\",\n borderWidth: \"0 0 1px 0\",\n padding: \"0.75rem 1rem\",\n borderRadius: \"0\"\n },\n content: {\n background: \"{content.background}\",\n color: \"{content.color}\",\n borderColor: \"transparent\",\n borderWidth: \"0\",\n padding: \"0\",\n borderRadius: \"0\"\n },\n footer: {\n background: \"{content.background}\",\n color: \"{content.color}\",\n borderColor: \"{content.border.color}\",\n borderWidth: \"1px 0 0 0\",\n padding: \"0.75rem 1rem\",\n borderRadius: \"0\"\n },\n paginatorTop: {\n borderColor: \"{content.border.color}\",\n borderWidth: \"0 0 1px 0\"\n },\n paginatorBottom: {\n borderColor: \"{content.border.color}\",\n borderWidth: \"1px 0 0 0\"\n }\n};\nexport { dataview_default as default };\n","// src/presets/aura/datepicker/index.ts\nvar datepicker_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n panel: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\",\n shadow: \"{overlay.popover.shadow}\",\n padding: \"{overlay.popover.padding}\"\n },\n header: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n padding: \"0 0 0.5rem 0\"\n },\n title: {\n gap: \"0.5rem\",\n fontWeight: \"500\"\n },\n dropdown: {\n width: \"2.5rem\",\n sm: {\n width: \"2rem\"\n },\n lg: {\n width: \"3rem\"\n },\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.border.color}\",\n activeBorderColor: \"{form.field.border.color}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n inputIcon: {\n color: \"{form.field.icon.color}\"\n },\n selectMonth: {\n hoverBackground: \"{content.hover.background}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n padding: \"0.25rem 0.5rem\",\n borderRadius: \"{content.border.radius}\"\n },\n selectYear: {\n hoverBackground: \"{content.hover.background}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n padding: \"0.25rem 0.5rem\",\n borderRadius: \"{content.border.radius}\"\n },\n group: {\n borderColor: \"{content.border.color}\",\n gap: \"{overlay.popover.padding}\"\n },\n dayView: {\n margin: \"0.5rem 0 0 0\"\n },\n weekDay: {\n padding: \"0.25rem\",\n fontWeight: \"500\",\n color: \"{content.color}\"\n },\n date: {\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{primary.color}\",\n rangeSelectedBackground: \"{highlight.background}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n selectedColor: \"{primary.contrast.color}\",\n rangeSelectedColor: \"{highlight.color}\",\n width: \"2rem\",\n height: \"2rem\",\n borderRadius: \"50%\",\n padding: \"0.25rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n monthView: {\n margin: \"0.5rem 0 0 0\"\n },\n month: {\n padding: \"0.375rem\",\n borderRadius: \"{content.border.radius}\"\n },\n yearView: {\n margin: \"0.5rem 0 0 0\"\n },\n year: {\n padding: \"0.375rem\",\n borderRadius: \"{content.border.radius}\"\n },\n buttonbar: {\n padding: \"0.5rem 0 0 0\",\n borderColor: \"{content.border.color}\"\n },\n timePicker: {\n padding: \"0.5rem 0 0 0\",\n borderColor: \"{content.border.color}\",\n gap: \"0.5rem\",\n buttonGap: \"0.25rem\"\n },\n colorScheme: {\n light: {\n dropdown: {\n background: \"{surface.100}\",\n hoverBackground: \"{surface.200}\",\n activeBackground: \"{surface.300}\",\n color: \"{surface.600}\",\n hoverColor: \"{surface.700}\",\n activeColor: \"{surface.800}\"\n },\n today: {\n background: \"{surface.200}\",\n color: \"{surface.900}\"\n }\n },\n dark: {\n dropdown: {\n background: \"{surface.800}\",\n hoverBackground: \"{surface.700}\",\n activeBackground: \"{surface.600}\",\n color: \"{surface.300}\",\n hoverColor: \"{surface.200}\",\n activeColor: \"{surface.100}\"\n },\n today: {\n background: \"{surface.700}\",\n color: \"{surface.0}\"\n }\n }\n }\n};\nexport { datepicker_default as default };\n","// src/presets/aura/dialog/index.ts\nvar dialog_default = {\n root: {\n background: \"{overlay.modal.background}\",\n borderColor: \"{overlay.modal.border.color}\",\n color: \"{overlay.modal.color}\",\n borderRadius: \"{overlay.modal.border.radius}\",\n shadow: \"{overlay.modal.shadow}\"\n },\n header: {\n padding: \"{overlay.modal.padding}\",\n gap: \"0.5rem\"\n },\n title: {\n fontSize: \"1.25rem\",\n fontWeight: \"600\"\n },\n content: {\n padding: \"0 {overlay.modal.padding} {overlay.modal.padding} {overlay.modal.padding}\"\n },\n footer: {\n padding: \"0 {overlay.modal.padding} {overlay.modal.padding} {overlay.modal.padding}\",\n gap: \"0.5rem\"\n }\n};\nexport { dialog_default as default };\n","// src/presets/aura/divider/index.ts\nvar divider_default = {\n root: {\n borderColor: \"{content.border.color}\"\n },\n content: {\n background: \"{content.background}\",\n color: \"{text.color}\"\n },\n horizontal: {\n margin: \"1rem 0\",\n padding: \"0 1rem\",\n content: {\n padding: \"0 0.5rem\"\n }\n },\n vertical: {\n margin: \"0 1rem\",\n padding: \"0.5rem 0\",\n content: {\n padding: \"0.5rem 0\"\n }\n }\n};\nexport { divider_default as default };\n","// src/presets/aura/dock/index.ts\nvar dock_default = {\n root: {\n background: \"rgba(255, 255, 255, 0.1)\",\n borderColor: \"rgba(255, 255, 255, 0.2)\",\n padding: \"0.5rem\",\n borderRadius: \"{border.radius.xl}\"\n },\n item: {\n borderRadius: \"{content.border.radius}\",\n padding: \"0.5rem\",\n size: \"3rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n }\n};\nexport { dock_default as default };\n","// src/presets/aura/drawer/index.ts\nvar drawer_default = {\n root: {\n background: \"{overlay.modal.background}\",\n borderColor: \"{overlay.modal.border.color}\",\n color: \"{overlay.modal.color}\",\n shadow: \"{overlay.modal.shadow}\"\n },\n header: {\n padding: \"{overlay.modal.padding}\"\n },\n title: {\n fontSize: \"1.5rem\",\n fontWeight: \"600\"\n },\n content: {\n padding: \"0 {overlay.modal.padding} {overlay.modal.padding} {overlay.modal.padding}\"\n },\n footer: {\n padding: \"{overlay.modal.padding}\"\n }\n};\nexport { drawer_default as default };\n","// src/presets/aura/editor/index.ts\nvar editor_default = {\n toolbar: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\"\n },\n toolbarItem: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{primary.color}\"\n },\n overlay: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\",\n padding: \"{list.padding}\"\n },\n overlayOption: {\n focusBackground: \"{list.option.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\"\n },\n content: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\"\n }\n};\nexport { editor_default as default };\n","// src/presets/aura/fieldset/index.ts\nvar fieldset_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n color: \"{content.color}\",\n padding: \"0 1.125rem 1.125rem 1.125rem\",\n transitionDuration: \"{transition.duration}\"\n },\n legend: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n borderRadius: \"{content.border.radius}\",\n borderWidth: \"1px\",\n borderColor: \"transparent\",\n padding: \"0.5rem 0.75rem\",\n gap: \"0.5rem\",\n fontWeight: \"600\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n toggleIcon: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\"\n },\n content: {\n padding: \"0\"\n }\n};\nexport { fieldset_default as default };\n","// src/presets/aura/fileupload/index.ts\nvar fileupload_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\",\n transitionDuration: \"{transition.duration}\"\n },\n header: {\n background: \"transparent\",\n color: \"{text.color}\",\n padding: \"1.125rem\",\n borderColor: \"unset\",\n borderWidth: \"0\",\n borderRadius: \"0\",\n gap: \"0.5rem\"\n },\n content: {\n highlightBorderColor: \"{primary.color}\",\n padding: \"0 1.125rem 1.125rem 1.125rem\",\n gap: \"1rem\"\n },\n file: {\n padding: \"1rem\",\n gap: \"1rem\",\n borderColor: \"{content.border.color}\",\n info: {\n gap: \"0.5rem\"\n }\n },\n fileList: {\n gap: \"0.5rem\"\n },\n progressbar: {\n height: \"0.25rem\"\n },\n basic: {\n gap: \"0.5rem\"\n }\n};\nexport { fileupload_default as default };\n","// src/presets/aura/floatlabel/index.ts\nvar floatlabel_default = {\n root: {\n color: \"{form.field.float.label.color}\",\n focusColor: \"{form.field.float.label.focus.color}\",\n activeColor: \"{form.field.float.label.active.color}\",\n invalidColor: \"{form.field.float.label.invalid.color}\",\n transitionDuration: \"0.2s\",\n positionX: \"{form.field.padding.x}\",\n positionY: \"{form.field.padding.y}\",\n fontWeight: \"500\",\n active: {\n fontSize: \"0.75rem\",\n fontWeight: \"400\"\n }\n },\n over: {\n active: {\n top: \"-1.25rem\"\n }\n },\n in: {\n input: {\n paddingTop: \"1.5rem\",\n paddingBottom: \"{form.field.padding.y}\"\n },\n active: {\n top: \"{form.field.padding.y}\"\n }\n },\n on: {\n borderRadius: \"{border.radius.xs}\",\n active: {\n background: \"{form.field.background}\",\n padding: \"0 0.125rem\"\n }\n }\n};\nexport { floatlabel_default as default };\n","// src/presets/aura/galleria/index.ts\nvar galleria_default = {\n root: {\n borderWidth: \"1px\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n transitionDuration: \"{transition.duration}\"\n },\n navButton: {\n background: \"rgba(255, 255, 255, 0.1)\",\n hoverBackground: \"rgba(255, 255, 255, 0.2)\",\n color: \"{surface.100}\",\n hoverColor: \"{surface.0}\",\n size: \"3rem\",\n gutter: \"0.5rem\",\n prev: {\n borderRadius: \"50%\"\n },\n next: {\n borderRadius: \"50%\"\n },\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n navIcon: {\n size: \"1.5rem\"\n },\n thumbnailsContent: {\n background: \"{content.background}\",\n padding: \"1rem 0.25rem\"\n },\n thumbnailNavButton: {\n size: \"2rem\",\n borderRadius: \"{content.border.radius}\",\n gutter: \"0.5rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n thumbnailNavButtonIcon: {\n size: \"1rem\"\n },\n caption: {\n background: \"rgba(0, 0, 0, 0.5)\",\n color: \"{surface.100}\",\n padding: \"1rem\"\n },\n indicatorList: {\n gap: \"0.5rem\",\n padding: \"1rem\"\n },\n indicatorButton: {\n width: \"1rem\",\n height: \"1rem\",\n activeBackground: \"{primary.color}\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n insetIndicatorList: {\n background: \"rgba(0, 0, 0, 0.5)\"\n },\n insetIndicatorButton: {\n background: \"rgba(255, 255, 255, 0.4)\",\n hoverBackground: \"rgba(255, 255, 255, 0.6)\",\n activeBackground: \"rgba(255, 255, 255, 0.9)\"\n },\n closeButton: {\n size: \"3rem\",\n gutter: \"0.5rem\",\n background: \"rgba(255, 255, 255, 0.1)\",\n hoverBackground: \"rgba(255, 255, 255, 0.2)\",\n color: \"{surface.50}\",\n hoverColor: \"{surface.0}\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n closeButtonIcon: {\n size: \"1.5rem\"\n },\n colorScheme: {\n light: {\n thumbnailNavButton: {\n hoverBackground: \"{surface.100}\",\n color: \"{surface.600}\",\n hoverColor: \"{surface.700}\"\n },\n indicatorButton: {\n background: \"{surface.200}\",\n hoverBackground: \"{surface.300}\"\n }\n },\n dark: {\n thumbnailNavButton: {\n hoverBackground: \"{surface.700}\",\n color: \"{surface.400}\",\n hoverColor: \"{surface.0}\"\n },\n indicatorButton: {\n background: \"{surface.700}\",\n hoverBackground: \"{surface.600}\"\n }\n }\n }\n};\nexport { galleria_default as default };\n","// src/presets/aura/iconfield/index.ts\nvar iconfield_default = {\n icon: {\n color: \"{form.field.icon.color}\"\n }\n};\nexport { iconfield_default as default };\n","// src/presets/aura/iftalabel/index.ts\nvar iftalabel_default = {\n root: {\n color: \"{form.field.float.label.color}\",\n focusColor: \"{form.field.float.label.focus.color}\",\n invalidColor: \"{form.field.float.label.invalid.color}\",\n transitionDuration: \"0.2s\",\n positionX: \"{form.field.padding.x}\",\n top: \"{form.field.padding.y}\",\n fontSize: \"0.75rem\",\n fontWeight: \"400\"\n },\n input: {\n paddingTop: \"1.5rem\",\n paddingBottom: \"{form.field.padding.y}\"\n }\n};\nexport { iftalabel_default as default };\n","// src/presets/aura/image/index.ts\nvar image_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n preview: {\n icon: {\n size: \"1.5rem\"\n },\n mask: {\n background: \"{mask.background}\",\n color: \"{mask.color}\"\n }\n },\n toolbar: {\n position: {\n left: \"auto\",\n right: \"1rem\",\n top: \"1rem\",\n bottom: \"auto\"\n },\n blur: \"8px\",\n background: \"rgba(255,255,255,0.1)\",\n borderColor: \"rgba(255,255,255,0.2)\",\n borderWidth: \"1px\",\n borderRadius: \"30px\",\n padding: \".5rem\",\n gap: \"0.5rem\"\n },\n action: {\n hoverBackground: \"rgba(255,255,255,0.1)\",\n color: \"{surface.50}\",\n hoverColor: \"{surface.0}\",\n size: \"3rem\",\n iconSize: \"1.5rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n }\n};\nexport { image_default as default };\n","// src/presets/aura/imagecompare/index.ts\nvar imagecompare_default = {\n handle: {\n size: \"15px\",\n hoverSize: \"30px\",\n background: \"rgba(255,255,255,0.3)\",\n hoverBackground: \"rgba(255,255,255,0.3)\",\n borderColor: \"unset\",\n hoverBorderColor: \"unset\",\n borderWidth: \"0\",\n borderRadius: \"50%\",\n transitionDuration: \"{transition.duration}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"rgba(255,255,255,0.3)\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n }\n};\nexport { imagecompare_default as default };\n","// src/presets/aura/inlinemessage/index.ts\nvar inlinemessage_default = {\n root: {\n padding: \"{form.field.padding.y} {form.field.padding.x}\",\n borderRadius: \"{content.border.radius}\",\n gap: \"0.5rem\"\n },\n text: {\n fontWeight: \"500\"\n },\n icon: {\n size: \"1rem\"\n },\n colorScheme: {\n light: {\n info: {\n background: \"color-mix(in srgb, {blue.50}, transparent 5%)\",\n borderColor: \"{blue.200}\",\n color: \"{blue.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {blue.500}, transparent 96%)\"\n },\n success: {\n background: \"color-mix(in srgb, {green.50}, transparent 5%)\",\n borderColor: \"{green.200}\",\n color: \"{green.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {green.500}, transparent 96%)\"\n },\n warn: {\n background: \"color-mix(in srgb,{yellow.50}, transparent 5%)\",\n borderColor: \"{yellow.200}\",\n color: \"{yellow.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {yellow.500}, transparent 96%)\"\n },\n error: {\n background: \"color-mix(in srgb, {red.50}, transparent 5%)\",\n borderColor: \"{red.200}\",\n color: \"{red.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {red.500}, transparent 96%)\"\n },\n secondary: {\n background: \"{surface.100}\",\n borderColor: \"{surface.200}\",\n color: \"{surface.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.500}, transparent 96%)\"\n },\n contrast: {\n background: \"{surface.900}\",\n borderColor: \"{surface.950}\",\n color: \"{surface.50}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.950}, transparent 96%)\"\n }\n },\n dark: {\n info: {\n background: \"color-mix(in srgb, {blue.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {blue.700}, transparent 64%)\",\n color: \"{blue.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {blue.500}, transparent 96%)\"\n },\n success: {\n background: \"color-mix(in srgb, {green.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {green.700}, transparent 64%)\",\n color: \"{green.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {green.500}, transparent 96%)\"\n },\n warn: {\n background: \"color-mix(in srgb, {yellow.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {yellow.700}, transparent 64%)\",\n color: \"{yellow.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {yellow.500}, transparent 96%)\"\n },\n error: {\n background: \"color-mix(in srgb, {red.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {red.700}, transparent 64%)\",\n color: \"{red.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {red.500}, transparent 96%)\"\n },\n secondary: {\n background: \"{surface.800}\",\n borderColor: \"{surface.700}\",\n color: \"{surface.300}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.500}, transparent 96%)\"\n },\n contrast: {\n background: \"{surface.0}\",\n borderColor: \"{surface.100}\",\n color: \"{surface.950}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.950}, transparent 96%)\"\n }\n }\n }\n};\nexport { inlinemessage_default as default };\n","// src/presets/aura/inplace/index.ts\nvar inplace_default = {\n root: {\n padding: \"{form.field.padding.y} {form.field.padding.x}\",\n borderRadius: \"{content.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n transitionDuration: \"{transition.duration}\"\n },\n display: {\n hoverBackground: \"{content.hover.background}\",\n hoverColor: \"{content.hover.color}\"\n }\n};\nexport { inplace_default as default };\n","// src/presets/aura/inputchips/index.ts\nvar inputchips_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\"\n },\n chip: {\n borderRadius: \"{border.radius.sm}\"\n },\n colorScheme: {\n light: {\n chip: {\n focusBackground: \"{surface.200}\",\n color: \"{surface.800}\"\n }\n },\n dark: {\n chip: {\n focusBackground: \"{surface.700}\",\n color: \"{surface.0}\"\n }\n }\n }\n};\nexport { inputchips_default as default };\n","// src/presets/aura/inputgroup/index.ts\nvar inputgroup_default = {\n addon: {\n background: \"{form.field.background}\",\n borderColor: \"{form.field.border.color}\",\n color: \"{form.field.icon.color}\",\n borderRadius: \"{form.field.border.radius}\",\n padding: \"0.5rem\",\n minWidth: \"2.5rem\"\n }\n};\nexport { inputgroup_default as default };\n","// src/presets/aura/inputnumber/index.ts\nvar inputnumber_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n button: {\n width: \"2.5rem\",\n borderRadius: \"{form.field.border.radius}\",\n verticalPadding: \"{form.field.padding.y}\"\n },\n colorScheme: {\n light: {\n button: {\n background: \"transparent\",\n hoverBackground: \"{surface.100}\",\n activeBackground: \"{surface.200}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.border.color}\",\n activeBorderColor: \"{form.field.border.color}\",\n color: \"{surface.400}\",\n hoverColor: \"{surface.500}\",\n activeColor: \"{surface.600}\"\n }\n },\n dark: {\n button: {\n background: \"transparent\",\n hoverBackground: \"{surface.800}\",\n activeBackground: \"{surface.700}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.border.color}\",\n activeBorderColor: \"{form.field.border.color}\",\n color: \"{surface.400}\",\n hoverColor: \"{surface.300}\",\n activeColor: \"{surface.200}\"\n }\n }\n }\n};\nexport { inputnumber_default as default };\n","// src/presets/aura/inputotp/index.ts\nvar inputotp_default = {\n root: {\n gap: \"0.5rem\"\n },\n input: {\n width: \"2.5rem\",\n sm: {\n width: \"2rem\"\n },\n lg: {\n width: \"3rem\"\n }\n }\n};\nexport { inputotp_default as default };\n","// src/presets/aura/inputtext/index.ts\nvar inputtext_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n }\n }\n};\nexport { inputtext_default as default };\n","// src/presets/aura/knob/index.ts\nvar knob_default = {\n root: {\n transitionDuration: \"{transition.duration}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n value: {\n background: \"{primary.color}\"\n },\n range: {\n background: \"{content.border.color}\"\n },\n text: {\n color: \"{text.muted.color}\"\n }\n};\nexport { knob_default as default };\n","// src/presets/aura/listbox/index.ts\nvar listbox_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n borderColor: \"{form.field.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n shadow: \"{form.field.shadow}\",\n borderRadius: \"{form.field.border.radius}\",\n transitionDuration: \"{form.field.transition.duration}\"\n },\n list: {\n padding: \"{list.padding}\",\n gap: \"{list.gap}\",\n header: {\n padding: \"{list.header.padding}\"\n }\n },\n option: {\n focusBackground: \"{list.option.focus.background}\",\n selectedBackground: \"{list.option.selected.background}\",\n selectedFocusBackground: \"{list.option.selected.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n selectedColor: \"{list.option.selected.color}\",\n selectedFocusColor: \"{list.option.selected.focus.color}\",\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\"\n },\n optionGroup: {\n background: \"{list.option.group.background}\",\n color: \"{list.option.group.color}\",\n fontWeight: \"{list.option.group.font.weight}\",\n padding: \"{list.option.group.padding}\"\n },\n checkmark: {\n color: \"{list.option.color}\",\n gutterStart: \"-0.375rem\",\n gutterEnd: \"0.375rem\"\n },\n emptyMessage: {\n padding: \"{list.option.padding}\"\n },\n colorScheme: {\n light: {\n option: {\n stripedBackground: \"{surface.50}\"\n }\n },\n dark: {\n option: {\n stripedBackground: \"{surface.900}\"\n }\n }\n }\n};\nexport { listbox_default as default };\n","// src/presets/aura/megamenu/index.ts\nvar megamenu_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n color: \"{content.color}\",\n gap: \"0.5rem\",\n verticalOrientation: {\n padding: \"{navigation.list.padding}\",\n gap: \"{navigation.list.gap}\"\n },\n horizontalOrientation: {\n padding: \"0.5rem 0.75rem\",\n gap: \"0.5rem\"\n },\n transitionDuration: \"{transition.duration}\"\n },\n baseItem: {\n borderRadius: \"{content.border.radius}\",\n padding: \"{navigation.item.padding}\"\n },\n item: {\n focusBackground: \"{navigation.item.focus.background}\",\n activeBackground: \"{navigation.item.active.background}\",\n color: \"{navigation.item.color}\",\n focusColor: \"{navigation.item.focus.color}\",\n activeColor: \"{navigation.item.active.color}\",\n padding: \"{navigation.item.padding}\",\n borderRadius: \"{navigation.item.border.radius}\",\n gap: \"{navigation.item.gap}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n focusColor: \"{navigation.item.icon.focus.color}\",\n activeColor: \"{navigation.item.icon.active.color}\"\n }\n },\n overlay: {\n padding: \"0\",\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n color: \"{content.color}\",\n shadow: \"{overlay.navigation.shadow}\",\n gap: \"0.5rem\"\n },\n submenu: {\n padding: \"{navigation.list.padding}\",\n gap: \"{navigation.list.gap}\"\n },\n submenuLabel: {\n padding: \"{navigation.submenu.label.padding}\",\n fontWeight: \"{navigation.submenu.label.font.weight}\",\n background: \"{navigation.submenu.label.background.}\",\n color: \"{navigation.submenu.label.color}\"\n },\n submenuIcon: {\n size: \"{navigation.submenu.icon.size}\",\n color: \"{navigation.submenu.icon.color}\",\n focusColor: \"{navigation.submenu.icon.focus.color}\",\n activeColor: \"{navigation.submenu.icon.active.color}\"\n },\n separator: {\n borderColor: \"{content.border.color}\"\n },\n mobileButton: {\n borderRadius: \"50%\",\n size: \"1.75rem\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n hoverBackground: \"{content.hover.background}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n }\n};\nexport { megamenu_default as default };\n","// src/presets/aura/menu/index.ts\nvar menu_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\",\n shadow: \"{overlay.navigation.shadow}\",\n transitionDuration: \"{transition.duration}\"\n },\n list: {\n padding: \"{navigation.list.padding}\",\n gap: \"{navigation.list.gap}\"\n },\n item: {\n focusBackground: \"{navigation.item.focus.background}\",\n color: \"{navigation.item.color}\",\n focusColor: \"{navigation.item.focus.color}\",\n padding: \"{navigation.item.padding}\",\n borderRadius: \"{navigation.item.border.radius}\",\n gap: \"{navigation.item.gap}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n focusColor: \"{navigation.item.icon.focus.color}\"\n }\n },\n submenuLabel: {\n padding: \"{navigation.submenu.label.padding}\",\n fontWeight: \"{navigation.submenu.label.font.weight}\",\n background: \"{navigation.submenu.label.background}\",\n color: \"{navigation.submenu.label.color}\"\n },\n separator: {\n borderColor: \"{content.border.color}\"\n }\n};\nexport { menu_default as default };\n","// src/presets/aura/menubar/index.ts\nvar menubar_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n color: \"{content.color}\",\n gap: \"0.5rem\",\n padding: \"0.5rem 0.75rem\",\n transitionDuration: \"{transition.duration}\"\n },\n baseItem: {\n borderRadius: \"{content.border.radius}\",\n padding: \"{navigation.item.padding}\"\n },\n item: {\n focusBackground: \"{navigation.item.focus.background}\",\n activeBackground: \"{navigation.item.active.background}\",\n color: \"{navigation.item.color}\",\n focusColor: \"{navigation.item.focus.color}\",\n activeColor: \"{navigation.item.active.color}\",\n padding: \"{navigation.item.padding}\",\n borderRadius: \"{navigation.item.border.radius}\",\n gap: \"{navigation.item.gap}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n focusColor: \"{navigation.item.icon.focus.color}\",\n activeColor: \"{navigation.item.icon.active.color}\"\n }\n },\n submenu: {\n padding: \"{navigation.list.padding}\",\n gap: \"{navigation.list.gap}\",\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n shadow: \"{overlay.navigation.shadow}\",\n mobileIndent: \"1rem\",\n icon: {\n size: \"{navigation.submenu.icon.size}\",\n color: \"{navigation.submenu.icon.color}\",\n focusColor: \"{navigation.submenu.icon.focus.color}\",\n activeColor: \"{navigation.submenu.icon.active.color}\"\n }\n },\n separator: {\n borderColor: \"{content.border.color}\"\n },\n mobileButton: {\n borderRadius: \"50%\",\n size: \"1.75rem\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n hoverBackground: \"{content.hover.background}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n }\n};\nexport { menubar_default as default };\n","// src/presets/aura/message/index.ts\nvar message_default = {\n root: {\n borderRadius: \"{content.border.radius}\",\n borderWidth: \"1px\",\n transitionDuration: \"{transition.duration}\"\n },\n content: {\n padding: \"0.5rem 0.75rem\",\n gap: \"0.5rem\",\n sm: {\n padding: \"0.375rem 0.625rem\"\n },\n lg: {\n padding: \"0.625rem 0.875rem\"\n }\n },\n text: {\n fontSize: \"1rem\",\n fontWeight: \"500\",\n sm: {\n fontSize: \"0.875rem\"\n },\n lg: {\n fontSize: \"1.125rem\"\n }\n },\n icon: {\n size: \"1.125rem\",\n sm: {\n size: \"1rem\"\n },\n lg: {\n size: \"1.25rem\"\n }\n },\n closeButton: {\n width: \"1.75rem\",\n height: \"1.75rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n offset: \"{focus.ring.offset}\"\n }\n },\n closeIcon: {\n size: \"1rem\",\n sm: {\n size: \"0.875rem\"\n },\n lg: {\n size: \"1.125rem\"\n }\n },\n outlined: {\n root: {\n borderWidth: \"1px\"\n }\n },\n simple: {\n content: {\n padding: \"0\"\n }\n },\n colorScheme: {\n light: {\n info: {\n background: \"color-mix(in srgb, {blue.50}, transparent 5%)\",\n borderColor: \"{blue.200}\",\n color: \"{blue.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {blue.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{blue.100}\",\n focusRing: {\n color: \"{blue.600}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{blue.600}\",\n borderColor: \"{blue.600}\"\n },\n simple: {\n color: \"{blue.600}\"\n }\n },\n success: {\n background: \"color-mix(in srgb, {green.50}, transparent 5%)\",\n borderColor: \"{green.200}\",\n color: \"{green.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {green.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{green.100}\",\n focusRing: {\n color: \"{green.600}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{green.600}\",\n borderColor: \"{green.600}\"\n },\n simple: {\n color: \"{green.600}\"\n }\n },\n warn: {\n background: \"color-mix(in srgb,{yellow.50}, transparent 5%)\",\n borderColor: \"{yellow.200}\",\n color: \"{yellow.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {yellow.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{yellow.100}\",\n focusRing: {\n color: \"{yellow.600}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{yellow.600}\",\n borderColor: \"{yellow.600}\"\n },\n simple: {\n color: \"{yellow.600}\"\n }\n },\n error: {\n background: \"color-mix(in srgb, {red.50}, transparent 5%)\",\n borderColor: \"{red.200}\",\n color: \"{red.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {red.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{red.100}\",\n focusRing: {\n color: \"{red.600}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{red.600}\",\n borderColor: \"{red.600}\"\n },\n simple: {\n color: \"{red.600}\"\n }\n },\n secondary: {\n background: \"{surface.100}\",\n borderColor: \"{surface.200}\",\n color: \"{surface.600}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.200}\",\n focusRing: {\n color: \"{surface.600}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{surface.500}\",\n borderColor: \"{surface.500}\"\n },\n simple: {\n color: \"{surface.500}\"\n }\n },\n contrast: {\n background: \"{surface.900}\",\n borderColor: \"{surface.950}\",\n color: \"{surface.50}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.950}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.800}\",\n focusRing: {\n color: \"{surface.50}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{surface.950}\",\n borderColor: \"{surface.950}\"\n },\n simple: {\n color: \"{surface.950}\"\n }\n }\n },\n dark: {\n info: {\n background: \"color-mix(in srgb, {blue.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {blue.700}, transparent 64%)\",\n color: \"{blue.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {blue.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{blue.500}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{blue.500}\",\n borderColor: \"{blue.500}\"\n },\n simple: {\n color: \"{blue.500}\"\n }\n },\n success: {\n background: \"color-mix(in srgb, {green.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {green.700}, transparent 64%)\",\n color: \"{green.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {green.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{green.500}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{green.500}\",\n borderColor: \"{green.500}\"\n },\n simple: {\n color: \"{green.500}\"\n }\n },\n warn: {\n background: \"color-mix(in srgb, {yellow.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {yellow.700}, transparent 64%)\",\n color: \"{yellow.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {yellow.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{yellow.500}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{yellow.500}\",\n borderColor: \"{yellow.500}\"\n },\n simple: {\n color: \"{yellow.500}\"\n }\n },\n error: {\n background: \"color-mix(in srgb, {red.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {red.700}, transparent 64%)\",\n color: \"{red.500}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {red.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{red.500}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{red.500}\",\n borderColor: \"{red.500}\"\n },\n simple: {\n color: \"{red.500}\"\n }\n },\n secondary: {\n background: \"{surface.800}\",\n borderColor: \"{surface.700}\",\n color: \"{surface.300}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.700}\",\n focusRing: {\n color: \"{surface.300}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{surface.400}\",\n borderColor: \"{surface.400}\"\n },\n simple: {\n color: \"{surface.400}\"\n }\n },\n contrast: {\n background: \"{surface.0}\",\n borderColor: \"{surface.100}\",\n color: \"{surface.950}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.950}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.100}\",\n focusRing: {\n color: \"{surface.950}\",\n shadow: \"none\"\n }\n },\n outlined: {\n color: \"{surface.0}\",\n borderColor: \"{surface.0}\"\n },\n simple: {\n color: \"{surface.0}\"\n }\n }\n }\n }\n};\nexport { message_default as default };\n","// src/presets/aura/metergroup/index.ts\nvar metergroup_default = {\n root: {\n borderRadius: \"{content.border.radius}\",\n gap: \"1rem\"\n },\n meters: {\n background: \"{content.border.color}\",\n size: \"0.5rem\"\n },\n label: {\n gap: \"0.5rem\"\n },\n labelMarker: {\n size: \"0.5rem\"\n },\n labelIcon: {\n size: \"1rem\"\n },\n labelList: {\n verticalGap: \"0.5rem\",\n horizontalGap: \"1rem\"\n }\n};\nexport { metergroup_default as default };\n","// src/presets/aura/multiselect/index.ts\nvar multiselect_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n }\n },\n dropdown: {\n width: \"2.5rem\",\n color: \"{form.field.icon.color}\"\n },\n overlay: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\"\n },\n list: {\n padding: \"{list.padding}\",\n gap: \"{list.gap}\",\n header: {\n padding: \"{list.header.padding}\"\n }\n },\n option: {\n focusBackground: \"{list.option.focus.background}\",\n selectedBackground: \"{list.option.selected.background}\",\n selectedFocusBackground: \"{list.option.selected.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n selectedColor: \"{list.option.selected.color}\",\n selectedFocusColor: \"{list.option.selected.focus.color}\",\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\",\n gap: \"0.5rem\"\n },\n optionGroup: {\n background: \"{list.option.group.background}\",\n color: \"{list.option.group.color}\",\n fontWeight: \"{list.option.group.font.weight}\",\n padding: \"{list.option.group.padding}\"\n },\n clearIcon: {\n color: \"{form.field.icon.color}\"\n },\n chip: {\n borderRadius: \"{border.radius.sm}\"\n },\n emptyMessage: {\n padding: \"{list.option.padding}\"\n }\n};\nexport { multiselect_default as default };\n","// src/presets/aura/orderlist/index.ts\nvar orderlist_default = {\n root: {\n gap: \"1.125rem\"\n },\n controls: {\n gap: \"0.5rem\"\n }\n};\nexport { orderlist_default as default };\n","// src/presets/aura/organizationchart/index.ts\nvar organizationchart_default = {\n root: {\n gutter: \"0.75rem\",\n transitionDuration: \"{transition.duration}\"\n },\n node: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n selectedColor: \"{highlight.color}\",\n hoverColor: \"{content.hover.color}\",\n padding: \"0.75rem 1rem\",\n toggleablePadding: \"0.75rem 1rem 1.25rem 1rem\",\n borderRadius: \"{content.border.radius}\"\n },\n nodeToggleButton: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n size: \"1.5rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n connector: {\n color: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n height: \"24px\"\n }\n};\nexport { organizationchart_default as default };\n","// src/presets/aura/overlaybadge/index.ts\nvar overlaybadge_default = {\n root: {\n outline: {\n width: \"2px\",\n color: \"{content.background}\"\n }\n }\n};\nexport { overlaybadge_default as default };\n","// src/presets/aura/paginator/index.ts\nvar paginator_default = {\n root: {\n padding: \"0.5rem 1rem\",\n gap: \"0.25rem\",\n borderRadius: \"{content.border.radius}\",\n background: \"{content.background}\",\n color: \"{content.color}\",\n transitionDuration: \"{transition.duration}\"\n },\n navButton: {\n background: \"transparent\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n selectedColor: \"{highlight.color}\",\n width: \"2.5rem\",\n height: \"2.5rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n currentPageReport: {\n color: \"{text.muted.color}\"\n },\n jumpToPageInput: {\n maxWidth: \"2.5rem\"\n }\n};\nexport { paginator_default as default };\n","// src/presets/aura/panel/index.ts\nvar panel_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\"\n },\n header: {\n background: \"transparent\",\n color: \"{text.color}\",\n padding: \"1.125rem\",\n borderColor: \"{content.border.color}\",\n borderWidth: \"0\",\n borderRadius: \"0\"\n },\n toggleableHeader: {\n padding: \"0.375rem 1.125rem\"\n },\n title: {\n fontWeight: \"600\"\n },\n content: {\n padding: \"0 1.125rem 1.125rem 1.125rem\"\n },\n footer: {\n padding: \"0 1.125rem 1.125rem 1.125rem\"\n }\n};\nexport { panel_default as default };\n","// src/presets/aura/panelmenu/index.ts\nvar panelmenu_default = {\n root: {\n gap: \"0.5rem\",\n transitionDuration: \"{transition.duration}\"\n },\n panel: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderWidth: \"1px\",\n color: \"{content.color}\",\n padding: \"0.25rem 0.25rem\",\n borderRadius: \"{content.border.radius}\",\n first: {\n borderWidth: \"1px\",\n topBorderRadius: \"{content.border.radius}\"\n },\n last: {\n borderWidth: \"1px\",\n bottomBorderRadius: \"{content.border.radius}\"\n }\n },\n item: {\n focusBackground: \"{navigation.item.focus.background}\",\n color: \"{navigation.item.color}\",\n focusColor: \"{navigation.item.focus.color}\",\n gap: \"0.5rem\",\n padding: \"{navigation.item.padding}\",\n borderRadius: \"{content.border.radius}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n focusColor: \"{navigation.item.icon.focus.color}\"\n }\n },\n submenu: {\n indent: \"1rem\"\n },\n submenuIcon: {\n color: \"{navigation.submenu.icon.color}\",\n focusColor: \"{navigation.submenu.icon.focus.color}\"\n }\n};\nexport { panelmenu_default as default };\n","// src/presets/aura/password/index.ts\nvar password_default = {\n meter: {\n background: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n height: \".75rem\"\n },\n icon: {\n color: \"{form.field.icon.color}\"\n },\n overlay: {\n background: \"{overlay.popover.background}\",\n borderColor: \"{overlay.popover.border.color}\",\n borderRadius: \"{overlay.popover.border.radius}\",\n color: \"{overlay.popover.color}\",\n padding: \"{overlay.popover.padding}\",\n shadow: \"{overlay.popover.shadow}\"\n },\n content: {\n gap: \"0.5rem\"\n },\n colorScheme: {\n light: {\n strength: {\n weakBackground: \"{red.500}\",\n mediumBackground: \"{amber.500}\",\n strongBackground: \"{green.500}\"\n }\n },\n dark: {\n strength: {\n weakBackground: \"{red.400}\",\n mediumBackground: \"{amber.400}\",\n strongBackground: \"{green.400}\"\n }\n }\n }\n};\nexport { password_default as default };\n","// src/presets/aura/picklist/index.ts\nvar picklist_default = {\n root: {\n gap: \"1.125rem\"\n },\n controls: {\n gap: \"0.5rem\"\n }\n};\nexport { picklist_default as default };\n","// src/presets/aura/popover/index.ts\nvar popover_default = {\n root: {\n background: \"{overlay.popover.background}\",\n borderColor: \"{overlay.popover.border.color}\",\n color: \"{overlay.popover.color}\",\n borderRadius: \"{overlay.popover.border.radius}\",\n shadow: \"{overlay.popover.shadow}\",\n gutter: \"10px\",\n arrowOffset: \"1.25rem\"\n },\n content: {\n padding: \"{overlay.popover.padding}\"\n }\n};\nexport { popover_default as default };\n","// src/presets/aura/progressbar/index.ts\nvar progressbar_default = {\n root: {\n background: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n height: \"1.25rem\"\n },\n value: {\n background: \"{primary.color}\"\n },\n label: {\n color: \"{primary.contrast.color}\",\n fontSize: \"0.75rem\",\n fontWeight: \"600\"\n }\n};\nexport { progressbar_default as default };\n","// src/presets/aura/progressspinner/index.ts\nvar progressspinner_default = {\n colorScheme: {\n light: {\n root: {\n \"color.1\": \"{red.500}\",\n \"color.2\": \"{blue.500}\",\n \"color.3\": \"{green.500}\",\n \"color.4\": \"{yellow.500}\"\n }\n },\n dark: {\n root: {\n \"color.1\": \"{red.400}\",\n \"color.2\": \"{blue.400}\",\n \"color.3\": \"{green.400}\",\n \"color.4\": \"{yellow.400}\"\n }\n }\n }\n};\nexport { progressspinner_default as default };\n","// src/presets/aura/radiobutton/index.ts\nvar radiobutton_default = {\n root: {\n width: \"1.25rem\",\n height: \"1.25rem\",\n background: \"{form.field.background}\",\n checkedBackground: \"{primary.color}\",\n checkedHoverBackground: \"{primary.hover.color}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.border.color}\",\n checkedBorderColor: \"{primary.color}\",\n checkedHoverBorderColor: \"{primary.hover.color}\",\n checkedFocusBorderColor: \"{primary.color}\",\n checkedDisabledBorderColor: \"{form.field.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n shadow: \"{form.field.shadow}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n width: \"1rem\",\n height: \"1rem\"\n },\n lg: {\n width: \"1.5rem\",\n height: \"1.5rem\"\n }\n },\n icon: {\n size: \"0.75rem\",\n checkedColor: \"{primary.contrast.color}\",\n checkedHoverColor: \"{primary.contrast.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n sm: {\n size: \"0.5rem\"\n },\n lg: {\n size: \"1rem\"\n }\n }\n};\nexport { radiobutton_default as default };\n","// src/presets/aura/rating/index.ts\nvar rating_default = {\n root: {\n gap: \"0.25rem\",\n transitionDuration: \"{transition.duration}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n icon: {\n size: \"1rem\",\n color: \"{text.muted.color}\",\n hoverColor: \"{primary.color}\",\n activeColor: \"{primary.color}\"\n }\n};\nexport { rating_default as default };\n","// src/presets/aura/ripple/index.ts\nvar ripple_default = {\n colorScheme: {\n light: {\n root: {\n background: \"rgba(0,0,0,0.1)\"\n }\n },\n dark: {\n root: {\n background: \"rgba(255,255,255,0.3)\"\n }\n }\n }\n};\nexport { ripple_default as default };\n","// src/presets/aura/scrollpanel/index.ts\nvar scrollpanel_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n bar: {\n size: \"9px\",\n borderRadius: \"{border.radius.sm}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n colorScheme: {\n light: {\n bar: {\n background: \"{surface.100}\"\n }\n },\n dark: {\n bar: {\n background: \"{surface.800}\"\n }\n }\n }\n};\nexport { scrollpanel_default as default };\n","// src/presets/aura/select/index.ts\nvar select_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n }\n },\n dropdown: {\n width: \"2.5rem\",\n color: \"{form.field.icon.color}\"\n },\n overlay: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\"\n },\n list: {\n padding: \"{list.padding}\",\n gap: \"{list.gap}\",\n header: {\n padding: \"{list.header.padding}\"\n }\n },\n option: {\n focusBackground: \"{list.option.focus.background}\",\n selectedBackground: \"{list.option.selected.background}\",\n selectedFocusBackground: \"{list.option.selected.focus.background}\",\n color: \"{list.option.color}\",\n focusColor: \"{list.option.focus.color}\",\n selectedColor: \"{list.option.selected.color}\",\n selectedFocusColor: \"{list.option.selected.focus.color}\",\n padding: \"{list.option.padding}\",\n borderRadius: \"{list.option.border.radius}\"\n },\n optionGroup: {\n background: \"{list.option.group.background}\",\n color: \"{list.option.group.color}\",\n fontWeight: \"{list.option.group.font.weight}\",\n padding: \"{list.option.group.padding}\"\n },\n clearIcon: {\n color: \"{form.field.icon.color}\"\n },\n checkmark: {\n color: \"{list.option.color}\",\n gutterStart: \"-0.375rem\",\n gutterEnd: \"0.375rem\"\n },\n emptyMessage: {\n padding: \"{list.option.padding}\"\n }\n};\nexport { select_default as default };\n","// src/presets/aura/selectbutton/index.ts\nvar selectbutton_default = {\n root: {\n borderRadius: \"{form.field.border.radius}\"\n },\n colorScheme: {\n light: {\n root: {\n invalidBorderColor: \"{form.field.invalid.border.color}\"\n }\n },\n dark: {\n root: {\n invalidBorderColor: \"{form.field.invalid.border.color}\"\n }\n }\n }\n};\nexport { selectbutton_default as default };\n","// src/presets/aura/skeleton/index.ts\nvar skeleton_default = {\n root: {\n borderRadius: \"{content.border.radius}\"\n },\n colorScheme: {\n light: {\n root: {\n background: \"{surface.200}\",\n animationBackground: \"rgba(255,255,255,0.4)\"\n }\n },\n dark: {\n root: {\n background: \"rgba(255, 255, 255, 0.06)\",\n animationBackground: \"rgba(255, 255, 255, 0.04)\"\n }\n }\n }\n};\nexport { skeleton_default as default };\n","// src/presets/aura/slider/index.ts\nvar slider_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n track: {\n background: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n size: \"3px\"\n },\n range: {\n background: \"{primary.color}\"\n },\n handle: {\n width: \"20px\",\n height: \"20px\",\n borderRadius: \"50%\",\n background: \"{content.border.color}\",\n hoverBackground: \"{content.border.color}\",\n content: {\n borderRadius: \"50%\",\n hoverBackground: \"{content.background}\",\n width: \"16px\",\n height: \"16px\",\n shadow: \"0px 0.5px 0px 0px rgba(0, 0, 0, 0.08), 0px 1px 1px 0px rgba(0, 0, 0, 0.14)\"\n },\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n colorScheme: {\n light: {\n handle: {\n contentBackground: \"{surface.0}\"\n }\n },\n dark: {\n handle: {\n contentBackground: \"{surface.950}\"\n }\n }\n }\n};\nexport { slider_default as default };\n","// src/presets/aura/speeddial/index.ts\nvar speeddial_default = {\n root: {\n gap: \"0.5rem\",\n transitionDuration: \"{transition.duration}\"\n }\n};\nexport { speeddial_default as default };\n","// src/presets/aura/splitbutton/index.ts\nvar splitbutton_default = {\n root: {\n borderRadius: \"{form.field.border.radius}\",\n roundedBorderRadius: \"2rem\",\n raisedShadow: \"0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12)\"\n }\n};\nexport { splitbutton_default as default };\n","// src/presets/aura/splitter/index.ts\nvar splitter_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n transitionDuration: \"{transition.duration}\"\n },\n gutter: {\n background: \"{content.border.color}\"\n },\n handle: {\n size: \"24px\",\n background: \"transparent\",\n borderRadius: \"{content.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n }\n};\nexport { splitter_default as default };\n","// src/presets/aura/stepper/index.ts\nvar stepper_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n separator: {\n background: \"{content.border.color}\",\n activeBackground: \"{primary.color}\",\n margin: \"0 0 0 1.625rem\",\n size: \"2px\"\n },\n step: {\n padding: \"0.5rem\",\n gap: \"1rem\"\n },\n stepHeader: {\n padding: \"0\",\n borderRadius: \"{content.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n gap: \"0.5rem\"\n },\n stepTitle: {\n color: \"{text.muted.color}\",\n activeColor: \"{primary.color}\",\n fontWeight: \"500\"\n },\n stepNumber: {\n background: \"{content.background}\",\n activeBackground: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n activeBorderColor: \"{content.border.color}\",\n color: \"{text.muted.color}\",\n activeColor: \"{primary.color}\",\n size: \"2rem\",\n fontSize: \"1.143rem\",\n fontWeight: \"500\",\n borderRadius: \"50%\",\n shadow: \"0px 0.5px 0px 0px rgba(0, 0, 0, 0.06), 0px 1px 1px 0px rgba(0, 0, 0, 0.12)\"\n },\n steppanels: {\n padding: \"0.875rem 0.5rem 1.125rem 0.5rem\"\n },\n steppanel: {\n background: \"{content.background}\",\n color: \"{content.color}\",\n padding: \"0\",\n indent: \"1rem\"\n }\n};\nexport { stepper_default as default };\n","// src/presets/aura/steps/index.ts\nvar steps_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n separator: {\n background: \"{content.border.color}\"\n },\n itemLink: {\n borderRadius: \"{content.border.radius}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n gap: \"0.5rem\"\n },\n itemLabel: {\n color: \"{text.muted.color}\",\n activeColor: \"{primary.color}\",\n fontWeight: \"500\"\n },\n itemNumber: {\n background: \"{content.background}\",\n activeBackground: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n activeBorderColor: \"{content.border.color}\",\n color: \"{text.muted.color}\",\n activeColor: \"{primary.color}\",\n size: \"2rem\",\n fontSize: \"1.143rem\",\n fontWeight: \"500\",\n borderRadius: \"50%\",\n shadow: \"0px 0.5px 0px 0px rgba(0, 0, 0, 0.06), 0px 1px 1px 0px rgba(0, 0, 0, 0.12)\"\n }\n};\nexport { steps_default as default };\n","// src/presets/aura/tabmenu/index.ts\nvar tabmenu_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n tablist: {\n borderWidth: \"0 0 1px 0\",\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\"\n },\n item: {\n background: \"transparent\",\n hoverBackground: \"transparent\",\n activeBackground: \"transparent\",\n borderWidth: \"0 0 1px 0\",\n borderColor: \"{content.border.color}\",\n hoverBorderColor: \"{content.border.color}\",\n activeBorderColor: \"{primary.color}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{primary.color}\",\n padding: \"1rem 1.125rem\",\n fontWeight: \"600\",\n margin: \"0 0 -1px 0\",\n gap: \"0.5rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n itemIcon: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{primary.color}\"\n },\n activeBar: {\n height: \"1px\",\n bottom: \"-1px\",\n background: \"{primary.color}\"\n }\n};\nexport { tabmenu_default as default };\n","// src/presets/aura/tabs/index.ts\nvar tabs_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n tablist: {\n borderWidth: \"0 0 1px 0\",\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\"\n },\n tab: {\n background: \"transparent\",\n hoverBackground: \"transparent\",\n activeBackground: \"transparent\",\n borderWidth: \"0 0 1px 0\",\n borderColor: \"{content.border.color}\",\n hoverBorderColor: \"{content.border.color}\",\n activeBorderColor: \"{primary.color}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{primary.color}\",\n padding: \"1rem 1.125rem\",\n fontWeight: \"600\",\n margin: \"0 0 -1px 0\",\n gap: \"0.5rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n tabpanel: {\n background: \"{content.background}\",\n color: \"{content.color}\",\n padding: \"0.875rem 1.125rem 1.125rem 1.125rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"inset {focus.ring.shadow}\"\n }\n },\n navButton: {\n background: \"{content.background}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n width: \"2.5rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n activeBar: {\n height: \"1px\",\n bottom: \"-1px\",\n background: \"{primary.color}\"\n },\n colorScheme: {\n light: {\n navButton: {\n shadow: \"0px 0px 10px 50px rgba(255, 255, 255, 0.6)\"\n }\n },\n dark: {\n navButton: {\n shadow: \"0px 0px 10px 50px color-mix(in srgb, {content.background}, transparent 50%)\"\n }\n }\n }\n};\nexport { tabs_default as default };\n","// src/presets/aura/tabview/index.ts\nvar tabview_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n tabList: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\"\n },\n tab: {\n borderColor: \"{content.border.color}\",\n activeBorderColor: \"{primary.color}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n activeColor: \"{primary.color}\"\n },\n tabPanel: {\n background: \"{content.background}\",\n color: \"{content.color}\"\n },\n navButton: {\n background: \"{content.background}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\"\n },\n colorScheme: {\n light: {\n navButton: {\n shadow: \"0px 0px 10px 50px rgba(255, 255, 255, 0.6)\"\n }\n },\n dark: {\n navButton: {\n shadow: \"0px 0px 10px 50px color-mix(in srgb, {content.background}, transparent 50%)\"\n }\n }\n }\n};\nexport { tabview_default as default };\n","// src/presets/aura/tag/index.ts\nvar tag_default = {\n root: {\n fontSize: \"0.875rem\",\n fontWeight: \"700\",\n padding: \"0.25rem 0.5rem\",\n gap: \"0.25rem\",\n borderRadius: \"{content.border.radius}\",\n roundedBorderRadius: \"{border.radius.xl}\"\n },\n icon: {\n size: \"0.75rem\"\n },\n colorScheme: {\n light: {\n primary: {\n background: \"{primary.100}\",\n color: \"{primary.700}\"\n },\n secondary: {\n background: \"{surface.100}\",\n color: \"{surface.600}\"\n },\n success: {\n background: \"{green.100}\",\n color: \"{green.700}\"\n },\n info: {\n background: \"{sky.100}\",\n color: \"{sky.700}\"\n },\n warn: {\n background: \"{orange.100}\",\n color: \"{orange.700}\"\n },\n danger: {\n background: \"{red.100}\",\n color: \"{red.700}\"\n },\n contrast: {\n background: \"{surface.950}\",\n color: \"{surface.0}\"\n }\n },\n dark: {\n primary: {\n background: \"color-mix(in srgb, {primary.500}, transparent 84%)\",\n color: \"{primary.300}\"\n },\n secondary: {\n background: \"{surface.800}\",\n color: \"{surface.300}\"\n },\n success: {\n background: \"color-mix(in srgb, {green.500}, transparent 84%)\",\n color: \"{green.300}\"\n },\n info: {\n background: \"color-mix(in srgb, {sky.500}, transparent 84%)\",\n color: \"{sky.300}\"\n },\n warn: {\n background: \"color-mix(in srgb, {orange.500}, transparent 84%)\",\n color: \"{orange.300}\"\n },\n danger: {\n background: \"color-mix(in srgb, {red.500}, transparent 84%)\",\n color: \"{red.300}\"\n },\n contrast: {\n background: \"{surface.0}\",\n color: \"{surface.950}\"\n }\n }\n }\n};\nexport { tag_default as default };\n","// src/presets/aura/terminal/index.ts\nvar terminal_default = {\n root: {\n background: \"{form.field.background}\",\n borderColor: \"{form.field.border.color}\",\n color: \"{form.field.color}\",\n height: \"18rem\",\n padding: \"{form.field.padding.y} {form.field.padding.x}\",\n borderRadius: \"{form.field.border.radius}\"\n },\n prompt: {\n gap: \"0.25rem\"\n },\n commandResponse: {\n margin: \"2px 0\"\n }\n};\nexport { terminal_default as default };\n","// src/presets/aura/textarea/index.ts\nvar textarea_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n }\n }\n};\nexport { textarea_default as default };\n","// src/presets/aura/tieredmenu/index.ts\nvar tieredmenu_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n color: \"{content.color}\",\n borderRadius: \"{content.border.radius}\",\n shadow: \"{overlay.navigation.shadow}\",\n transitionDuration: \"{transition.duration}\"\n },\n list: {\n padding: \"{navigation.list.padding}\",\n gap: \"{navigation.list.gap}\"\n },\n item: {\n focusBackground: \"{navigation.item.focus.background}\",\n activeBackground: \"{navigation.item.active.background}\",\n color: \"{navigation.item.color}\",\n focusColor: \"{navigation.item.focus.color}\",\n activeColor: \"{navigation.item.active.color}\",\n padding: \"{navigation.item.padding}\",\n borderRadius: \"{navigation.item.border.radius}\",\n gap: \"{navigation.item.gap}\",\n icon: {\n color: \"{navigation.item.icon.color}\",\n focusColor: \"{navigation.item.icon.focus.color}\",\n activeColor: \"{navigation.item.icon.active.color}\"\n }\n },\n submenu: {\n mobileIndent: \"1rem\"\n },\n submenuIcon: {\n size: \"{navigation.submenu.icon.size}\",\n color: \"{navigation.submenu.icon.color}\",\n focusColor: \"{navigation.submenu.icon.focus.color}\",\n activeColor: \"{navigation.submenu.icon.active.color}\"\n },\n separator: {\n borderColor: \"{content.border.color}\"\n }\n};\nexport { tieredmenu_default as default };\n","// src/presets/aura/timeline/index.ts\nvar timeline_default = {\n event: {\n minHeight: \"5rem\"\n },\n horizontal: {\n eventContent: {\n padding: \"1rem 0\"\n }\n },\n vertical: {\n eventContent: {\n padding: \"0 1rem\"\n }\n },\n eventMarker: {\n size: \"1.125rem\",\n borderRadius: \"50%\",\n borderWidth: \"2px\",\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n content: {\n borderRadius: \"50%\",\n size: \"0.375rem\",\n background: \"{primary.color}\",\n insetShadow: \"0px 0.5px 0px 0px rgba(0, 0, 0, 0.06), 0px 1px 1px 0px rgba(0, 0, 0, 0.12)\"\n }\n },\n eventConnector: {\n color: \"{content.border.color}\",\n size: \"2px\"\n }\n};\nexport { timeline_default as default };\n","// src/presets/aura/toast/index.ts\nvar toast_default = {\n root: {\n width: \"25rem\",\n borderRadius: \"{content.border.radius}\",\n borderWidth: \"1px\",\n transitionDuration: \"{transition.duration}\"\n },\n icon: {\n size: \"1.125rem\"\n },\n content: {\n padding: \"{overlay.popover.padding}\",\n gap: \"0.5rem\"\n },\n text: {\n gap: \"0.5rem\"\n },\n summary: {\n fontWeight: \"500\",\n fontSize: \"1rem\"\n },\n detail: {\n fontWeight: \"500\",\n fontSize: \"0.875rem\"\n },\n closeButton: {\n width: \"1.75rem\",\n height: \"1.75rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n offset: \"{focus.ring.offset}\"\n }\n },\n closeIcon: {\n size: \"1rem\"\n },\n colorScheme: {\n light: {\n blur: \"1.5px\",\n info: {\n background: \"color-mix(in srgb, {blue.50}, transparent 5%)\",\n borderColor: \"{blue.200}\",\n color: \"{blue.600}\",\n detailColor: \"{surface.700}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {blue.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{blue.100}\",\n focusRing: {\n color: \"{blue.600}\",\n shadow: \"none\"\n }\n }\n },\n success: {\n background: \"color-mix(in srgb, {green.50}, transparent 5%)\",\n borderColor: \"{green.200}\",\n color: \"{green.600}\",\n detailColor: \"{surface.700}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {green.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{green.100}\",\n focusRing: {\n color: \"{green.600}\",\n shadow: \"none\"\n }\n }\n },\n warn: {\n background: \"color-mix(in srgb,{yellow.50}, transparent 5%)\",\n borderColor: \"{yellow.200}\",\n color: \"{yellow.600}\",\n detailColor: \"{surface.700}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {yellow.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{yellow.100}\",\n focusRing: {\n color: \"{yellow.600}\",\n shadow: \"none\"\n }\n }\n },\n error: {\n background: \"color-mix(in srgb, {red.50}, transparent 5%)\",\n borderColor: \"{red.200}\",\n color: \"{red.600}\",\n detailColor: \"{surface.700}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {red.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{red.100}\",\n focusRing: {\n color: \"{red.600}\",\n shadow: \"none\"\n }\n }\n },\n secondary: {\n background: \"{surface.100}\",\n borderColor: \"{surface.200}\",\n color: \"{surface.600}\",\n detailColor: \"{surface.700}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.200}\",\n focusRing: {\n color: \"{surface.600}\",\n shadow: \"none\"\n }\n }\n },\n contrast: {\n background: \"{surface.900}\",\n borderColor: \"{surface.950}\",\n color: \"{surface.50}\",\n detailColor: \"{surface.0}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.950}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.800}\",\n focusRing: {\n color: \"{surface.50}\",\n shadow: \"none\"\n }\n }\n }\n },\n dark: {\n blur: \"10px\",\n info: {\n background: \"color-mix(in srgb, {blue.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {blue.700}, transparent 64%)\",\n color: \"{blue.500}\",\n detailColor: \"{surface.0}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {blue.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{blue.500}\",\n shadow: \"none\"\n }\n }\n },\n success: {\n background: \"color-mix(in srgb, {green.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {green.700}, transparent 64%)\",\n color: \"{green.500}\",\n detailColor: \"{surface.0}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {green.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{green.500}\",\n shadow: \"none\"\n }\n }\n },\n warn: {\n background: \"color-mix(in srgb, {yellow.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {yellow.700}, transparent 64%)\",\n color: \"{yellow.500}\",\n detailColor: \"{surface.0}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {yellow.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{yellow.500}\",\n shadow: \"none\"\n }\n }\n },\n error: {\n background: \"color-mix(in srgb, {red.500}, transparent 84%)\",\n borderColor: \"color-mix(in srgb, {red.700}, transparent 64%)\",\n color: \"{red.500}\",\n detailColor: \"{surface.0}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {red.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"rgba(255, 255, 255, 0.05)\",\n focusRing: {\n color: \"{red.500}\",\n shadow: \"none\"\n }\n }\n },\n secondary: {\n background: \"{surface.800}\",\n borderColor: \"{surface.700}\",\n color: \"{surface.300}\",\n detailColor: \"{surface.0}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.500}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.700}\",\n focusRing: {\n color: \"{surface.300}\",\n shadow: \"none\"\n }\n }\n },\n contrast: {\n background: \"{surface.0}\",\n borderColor: \"{surface.100}\",\n color: \"{surface.950}\",\n detailColor: \"{surface.950}\",\n shadow: \"0px 4px 8px 0px color-mix(in srgb, {surface.950}, transparent 96%)\",\n closeButton: {\n hoverBackground: \"{surface.100}\",\n focusRing: {\n color: \"{surface.950}\",\n shadow: \"none\"\n }\n }\n }\n }\n }\n};\nexport { toast_default as default };\n","// src/presets/aura/togglebutton/index.ts\nvar togglebutton_default = {\n root: {\n padding: \"0.5rem 1rem\",\n borderRadius: \"{content.border.radius}\",\n gap: \"0.5rem\",\n fontWeight: \"500\",\n disabledBackground: \"{form.field.disabled.background}\",\n disabledBorderColor: \"{form.field.disabled.background}\",\n disabledColor: \"{form.field.disabled.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n padding: \"0.375rem 0.75rem\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n padding: \"0.625rem 1.25rem\"\n }\n },\n icon: {\n disabledColor: \"{form.field.disabled.color}\"\n },\n content: {\n left: \"0.25rem\",\n top: \"0.25rem\",\n checkedShadow: \"0px 1px 2px 0px rgba(0, 0, 0, 0.02), 0px 1px 2px 0px rgba(0, 0, 0, 0.04)\"\n },\n colorScheme: {\n light: {\n root: {\n background: \"{surface.100}\",\n checkedBackground: \"{surface.100}\",\n hoverBackground: \"{surface.100}\",\n borderColor: \"{surface.100}\",\n color: \"{surface.500}\",\n hoverColor: \"{surface.700}\",\n checkedColor: \"{surface.900}\",\n checkedBorderColor: \"{surface.100}\"\n },\n content: {\n checkedBackground: \"{surface.0}\"\n },\n icon: {\n color: \"{surface.500}\",\n hoverColor: \"{surface.700}\",\n checkedColor: \"{surface.900}\"\n }\n },\n dark: {\n root: {\n background: \"{surface.950}\",\n checkedBackground: \"{surface.950}\",\n hoverBackground: \"{surface.950}\",\n borderColor: \"{surface.950}\",\n color: \"{surface.400}\",\n hoverColor: \"{surface.300}\",\n checkedColor: \"{surface.0}\",\n checkedBorderColor: \"{surface.950}\"\n },\n content: {\n checkedBackground: \"{surface.800}\"\n },\n icon: {\n color: \"{surface.400}\",\n hoverColor: \"{surface.300}\",\n checkedColor: \"{surface.0}\"\n }\n }\n }\n};\nexport { togglebutton_default as default };\n","// src/presets/aura/toggleswitch/index.ts\nvar toggleswitch_default = {\n root: {\n width: \"2.5rem\",\n height: \"1.5rem\",\n borderRadius: \"30px\",\n gap: \"0.25rem\",\n shadow: \"{form.field.shadow}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n },\n borderWidth: \"1px\",\n borderColor: \"transparent\",\n hoverBorderColor: \"transparent\",\n checkedBorderColor: \"transparent\",\n checkedHoverBorderColor: \"transparent\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n transitionDuration: \"{form.field.transition.duration}\",\n slideDuration: \"0.2s\"\n },\n handle: {\n borderRadius: \"50%\",\n size: \"1rem\"\n },\n colorScheme: {\n light: {\n root: {\n background: \"{surface.300}\",\n disabledBackground: \"{form.field.disabled.background}\",\n hoverBackground: \"{surface.400}\",\n checkedBackground: \"{primary.color}\",\n checkedHoverBackground: \"{primary.hover.color}\"\n },\n handle: {\n background: \"{surface.0}\",\n disabledBackground: \"{form.field.disabled.color}\",\n hoverBackground: \"{surface.0}\",\n checkedBackground: \"{surface.0}\",\n checkedHoverBackground: \"{surface.0}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n checkedColor: \"{primary.color}\",\n checkedHoverColor: \"{primary.hover.color}\"\n }\n },\n dark: {\n root: {\n background: \"{surface.700}\",\n disabledBackground: \"{surface.600}\",\n hoverBackground: \"{surface.600}\",\n checkedBackground: \"{primary.color}\",\n checkedHoverBackground: \"{primary.hover.color}\"\n },\n handle: {\n background: \"{surface.400}\",\n disabledBackground: \"{surface.900}\",\n hoverBackground: \"{surface.300}\",\n checkedBackground: \"{surface.900}\",\n checkedHoverBackground: \"{surface.900}\",\n color: \"{surface.900}\",\n hoverColor: \"{surface.800}\",\n checkedColor: \"{primary.color}\",\n checkedHoverColor: \"{primary.hover.color}\"\n }\n }\n }\n};\nexport { toggleswitch_default as default };\n","// src/presets/aura/toolbar/index.ts\nvar toolbar_default = {\n root: {\n background: \"{content.background}\",\n borderColor: \"{content.border.color}\",\n borderRadius: \"{content.border.radius}\",\n color: \"{content.color}\",\n gap: \"0.5rem\",\n padding: \"0.75rem\"\n }\n};\nexport { toolbar_default as default };\n","// src/presets/aura/tooltip/index.ts\nvar tooltip_default = {\n root: {\n maxWidth: \"12.5rem\",\n gutter: \"0.25rem\",\n shadow: \"{overlay.popover.shadow}\",\n padding: \"0.5rem 0.75rem\",\n borderRadius: \"{overlay.popover.border.radius}\"\n },\n colorScheme: {\n light: {\n root: {\n background: \"{surface.700}\",\n color: \"{surface.0}\"\n }\n },\n dark: {\n root: {\n background: \"{surface.700}\",\n color: \"{surface.0}\"\n }\n }\n }\n};\nexport { tooltip_default as default };\n","// src/presets/aura/tree/index.ts\nvar tree_default = {\n root: {\n background: \"{content.background}\",\n color: \"{content.color}\",\n padding: \"1rem\",\n gap: \"2px\",\n indent: \"1rem\",\n transitionDuration: \"{transition.duration}\"\n },\n node: {\n padding: \"0.25rem 0.5rem\",\n borderRadius: \"{content.border.radius}\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n color: \"{text.color}\",\n hoverColor: \"{text.hover.color}\",\n selectedColor: \"{highlight.color}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n },\n gap: \"0.25rem\"\n },\n nodeIcon: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n selectedColor: \"{highlight.color}\"\n },\n nodeToggleButton: {\n borderRadius: \"50%\",\n size: \"1.75rem\",\n hoverBackground: \"{content.hover.background}\",\n selectedHoverBackground: \"{content.background}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n selectedHoverColor: \"{primary.color}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n loadingIcon: {\n size: \"2rem\"\n },\n filter: {\n margin: \"0 0 0.5rem 0\"\n }\n};\nexport { tree_default as default };\n","// src/presets/aura/treeselect/index.ts\nvar treeselect_default = {\n root: {\n background: \"{form.field.background}\",\n disabledBackground: \"{form.field.disabled.background}\",\n filledBackground: \"{form.field.filled.background}\",\n filledHoverBackground: \"{form.field.filled.hover.background}\",\n filledFocusBackground: \"{form.field.filled.focus.background}\",\n borderColor: \"{form.field.border.color}\",\n hoverBorderColor: \"{form.field.hover.border.color}\",\n focusBorderColor: \"{form.field.focus.border.color}\",\n invalidBorderColor: \"{form.field.invalid.border.color}\",\n color: \"{form.field.color}\",\n disabledColor: \"{form.field.disabled.color}\",\n placeholderColor: \"{form.field.placeholder.color}\",\n invalidPlaceholderColor: \"{form.field.invalid.placeholder.color}\",\n shadow: \"{form.field.shadow}\",\n paddingX: \"{form.field.padding.x}\",\n paddingY: \"{form.field.padding.y}\",\n borderRadius: \"{form.field.border.radius}\",\n focusRing: {\n width: \"{form.field.focus.ring.width}\",\n style: \"{form.field.focus.ring.style}\",\n color: \"{form.field.focus.ring.color}\",\n offset: \"{form.field.focus.ring.offset}\",\n shadow: \"{form.field.focus.ring.shadow}\"\n },\n transitionDuration: \"{form.field.transition.duration}\",\n sm: {\n fontSize: \"{form.field.sm.font.size}\",\n paddingX: \"{form.field.sm.padding.x}\",\n paddingY: \"{form.field.sm.padding.y}\"\n },\n lg: {\n fontSize: \"{form.field.lg.font.size}\",\n paddingX: \"{form.field.lg.padding.x}\",\n paddingY: \"{form.field.lg.padding.y}\"\n }\n },\n dropdown: {\n width: \"2.5rem\",\n color: \"{form.field.icon.color}\"\n },\n overlay: {\n background: \"{overlay.select.background}\",\n borderColor: \"{overlay.select.border.color}\",\n borderRadius: \"{overlay.select.border.radius}\",\n color: \"{overlay.select.color}\",\n shadow: \"{overlay.select.shadow}\"\n },\n tree: {\n padding: \"{list.padding}\"\n },\n clearIcon: {\n color: \"{form.field.icon.color}\"\n },\n emptyMessage: {\n padding: \"{list.option.padding}\"\n },\n chip: {\n borderRadius: \"{border.radius.sm}\"\n }\n};\nexport { treeselect_default as default };\n","// src/presets/aura/treetable/index.ts\nvar treetable_default = {\n root: {\n transitionDuration: \"{transition.duration}\"\n },\n header: {\n background: \"{content.background}\",\n borderColor: \"{treetable.border.color}\",\n color: \"{content.color}\",\n borderWidth: \"0 0 1px 0\",\n padding: \"0.75rem 1rem\"\n },\n headerCell: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n borderColor: \"{treetable.border.color}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n selectedColor: \"{highlight.color}\",\n gap: \"0.5rem\",\n padding: \"0.75rem 1rem\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n columnTitle: {\n fontWeight: \"600\"\n },\n row: {\n background: \"{content.background}\",\n hoverBackground: \"{content.hover.background}\",\n selectedBackground: \"{highlight.background}\",\n color: \"{content.color}\",\n hoverColor: \"{content.hover.color}\",\n selectedColor: \"{highlight.color}\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"-1px\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n bodyCell: {\n borderColor: \"{treetable.border.color}\",\n padding: \"0.75rem 1rem\",\n gap: \"0.5rem\"\n },\n footerCell: {\n background: \"{content.background}\",\n borderColor: \"{treetable.border.color}\",\n color: \"{content.color}\",\n padding: \"0.75rem 1rem\"\n },\n columnFooter: {\n fontWeight: \"600\"\n },\n footer: {\n background: \"{content.background}\",\n borderColor: \"{treetable.border.color}\",\n color: \"{content.color}\",\n borderWidth: \"0 0 1px 0\",\n padding: \"0.75rem 1rem\"\n },\n columnResizerWidth: \"0.5rem\",\n resizeIndicator: {\n width: \"1px\",\n color: \"{primary.color}\"\n },\n sortIcon: {\n color: \"{text.muted.color}\",\n hoverColor: \"{text.hover.muted.color}\",\n size: \"0.875rem\"\n },\n loadingIcon: {\n size: \"2rem\"\n },\n nodeToggleButton: {\n hoverBackground: \"{content.hover.background}\",\n selectedHoverBackground: \"{content.background}\",\n color: \"{text.muted.color}\",\n hoverColor: \"{text.color}\",\n selectedHoverColor: \"{primary.color}\",\n size: \"1.75rem\",\n borderRadius: \"50%\",\n focusRing: {\n width: \"{focus.ring.width}\",\n style: \"{focus.ring.style}\",\n color: \"{focus.ring.color}\",\n offset: \"{focus.ring.offset}\",\n shadow: \"{focus.ring.shadow}\"\n }\n },\n paginatorTop: {\n borderColor: \"{content.border.color}\",\n borderWidth: \"0 0 1px 0\"\n },\n paginatorBottom: {\n borderColor: \"{content.border.color}\",\n borderWidth: \"0 0 1px 0\"\n },\n colorScheme: {\n light: {\n root: {\n borderColor: \"{content.border.color}\"\n },\n bodyCell: {\n selectedBorderColor: \"{primary.100}\"\n }\n },\n dark: {\n root: {\n borderColor: \"{surface.800}\"\n },\n bodyCell: {\n selectedBorderColor: \"{primary.900}\"\n }\n }\n }\n};\nexport { treetable_default as default };\n","// src/presets/aura/virtualscroller/index.ts\nvar virtualscroller_default = {\n loader: {\n mask: {\n background: \"{content.background}\",\n color: \"{text.muted.color}\"\n },\n icon: {\n size: \"2rem\"\n }\n }\n};\nexport { virtualscroller_default as default };\n","// src/presets/aura/index.ts\nimport accordion from \"@primeng/themes/aura/accordion\";\nimport autocomplete from \"@primeng/themes/aura/autocomplete\";\nimport avatar from \"@primeng/themes/aura/avatar\";\nimport badge from \"@primeng/themes/aura/badge\";\nimport base from \"@primeng/themes/aura/base\";\nimport blockui from \"@primeng/themes/aura/blockui\";\nimport breadcrumb from \"@primeng/themes/aura/breadcrumb\";\nimport button from \"@primeng/themes/aura/button\";\nimport card from \"@primeng/themes/aura/card\";\nimport carousel from \"@primeng/themes/aura/carousel\";\nimport cascadeselect from \"@primeng/themes/aura/cascadeselect\";\nimport checkbox from \"@primeng/themes/aura/checkbox\";\nimport chip from \"@primeng/themes/aura/chip\";\nimport colorpicker from \"@primeng/themes/aura/colorpicker\";\nimport confirmdialog from \"@primeng/themes/aura/confirmdialog\";\nimport confirmpopup from \"@primeng/themes/aura/confirmpopup\";\nimport contextmenu from \"@primeng/themes/aura/contextmenu\";\nimport datatable from \"@primeng/themes/aura/datatable\";\nimport dataview from \"@primeng/themes/aura/dataview\";\nimport datepicker from \"@primeng/themes/aura/datepicker\";\nimport dialog from \"@primeng/themes/aura/dialog\";\nimport divider from \"@primeng/themes/aura/divider\";\nimport dock from \"@primeng/themes/aura/dock\";\nimport drawer from \"@primeng/themes/aura/drawer\";\nimport editor from \"@primeng/themes/aura/editor\";\nimport fieldset from \"@primeng/themes/aura/fieldset\";\nimport fileupload from \"@primeng/themes/aura/fileupload\";\nimport floatlabel from \"@primeng/themes/aura/floatlabel\";\nimport galleria from \"@primeng/themes/aura/galleria\";\nimport iconfield from \"@primeng/themes/aura/iconfield\";\nimport iftalabel from \"@primeng/themes/aura/iftalabel\";\nimport image from \"@primeng/themes/aura/image\";\nimport imagecompare from \"@primeng/themes/aura/imagecompare\";\nimport inlinemessage from \"@primeng/themes/aura/inlinemessage\";\nimport inplace from \"@primeng/themes/aura/inplace\";\nimport inputchips from \"@primeng/themes/aura/inputchips\";\nimport inputgroup from \"@primeng/themes/aura/inputgroup\";\nimport inputnumber from \"@primeng/themes/aura/inputnumber\";\nimport inputotp from \"@primeng/themes/aura/inputotp\";\nimport inputtext from \"@primeng/themes/aura/inputtext\";\nimport knob from \"@primeng/themes/aura/knob\";\nimport listbox from \"@primeng/themes/aura/listbox\";\nimport megamenu from \"@primeng/themes/aura/megamenu\";\nimport menu from \"@primeng/themes/aura/menu\";\nimport menubar from \"@primeng/themes/aura/menubar\";\nimport message from \"@primeng/themes/aura/message\";\nimport metergroup from \"@primeng/themes/aura/metergroup\";\nimport multiselect from \"@primeng/themes/aura/multiselect\";\nimport orderlist from \"@primeng/themes/aura/orderlist\";\nimport organizationchart from \"@primeng/themes/aura/organizationchart\";\nimport overlaybadge from \"@primeng/themes/aura/overlaybadge\";\nimport paginator from \"@primeng/themes/aura/paginator\";\nimport panel from \"@primeng/themes/aura/panel\";\nimport panelmenu from \"@primeng/themes/aura/panelmenu\";\nimport password from \"@primeng/themes/aura/password\";\nimport picklist from \"@primeng/themes/aura/picklist\";\nimport popover from \"@primeng/themes/aura/popover\";\nimport progressbar from \"@primeng/themes/aura/progressbar\";\nimport progressspinner from \"@primeng/themes/aura/progressspinner\";\nimport radiobutton from \"@primeng/themes/aura/radiobutton\";\nimport rating from \"@primeng/themes/aura/rating\";\nimport ripple from \"@primeng/themes/aura/ripple\";\nimport scrollpanel from \"@primeng/themes/aura/scrollpanel\";\nimport select from \"@primeng/themes/aura/select\";\nimport selectbutton from \"@primeng/themes/aura/selectbutton\";\nimport skeleton from \"@primeng/themes/aura/skeleton\";\nimport slider from \"@primeng/themes/aura/slider\";\nimport speeddial from \"@primeng/themes/aura/speeddial\";\nimport splitbutton from \"@primeng/themes/aura/splitbutton\";\nimport splitter from \"@primeng/themes/aura/splitter\";\nimport stepper from \"@primeng/themes/aura/stepper\";\nimport steps from \"@primeng/themes/aura/steps\";\nimport tabmenu from \"@primeng/themes/aura/tabmenu\";\nimport tabs from \"@primeng/themes/aura/tabs\";\nimport tabview from \"@primeng/themes/aura/tabview\";\nimport tag from \"@primeng/themes/aura/tag\";\nimport terminal from \"@primeng/themes/aura/terminal\";\nimport textarea from \"@primeng/themes/aura/textarea\";\nimport tieredmenu from \"@primeng/themes/aura/tieredmenu\";\nimport timeline from \"@primeng/themes/aura/timeline\";\nimport toast from \"@primeng/themes/aura/toast\";\nimport togglebutton from \"@primeng/themes/aura/togglebutton\";\nimport toggleswitch from \"@primeng/themes/aura/toggleswitch\";\nimport toolbar from \"@primeng/themes/aura/toolbar\";\nimport tooltip from \"@primeng/themes/aura/tooltip\";\nimport tree from \"@primeng/themes/aura/tree\";\nimport treeselect from \"@primeng/themes/aura/treeselect\";\nimport treetable from \"@primeng/themes/aura/treetable\";\nimport virtualscroller from \"@primeng/themes/aura/virtualscroller\";\nvar aura_default = {\n ...base,\n components: {\n accordion,\n autocomplete,\n avatar,\n badge,\n blockui,\n breadcrumb,\n button,\n datepicker,\n card,\n carousel,\n cascadeselect,\n checkbox,\n chip,\n colorpicker,\n confirmdialog,\n confirmpopup,\n contextmenu,\n dataview,\n datatable,\n dialog,\n divider,\n dock,\n drawer,\n editor,\n fieldset,\n fileupload,\n iftalabel,\n floatlabel,\n galleria,\n iconfield,\n image,\n imagecompare,\n inlinemessage,\n inplace,\n inputchips,\n inputgroup,\n inputnumber,\n inputotp,\n inputtext,\n knob,\n listbox,\n megamenu,\n menu,\n menubar,\n message,\n metergroup,\n multiselect,\n orderlist,\n organizationchart,\n overlaybadge,\n popover,\n paginator,\n password,\n panel,\n panelmenu,\n picklist,\n progressbar,\n progressspinner,\n radiobutton,\n rating,\n scrollpanel,\n select,\n selectbutton,\n skeleton,\n slider,\n speeddial,\n splitter,\n splitbutton,\n stepper,\n steps,\n tabmenu,\n tabs,\n tabview,\n textarea,\n tieredmenu,\n tag,\n terminal,\n timeline,\n togglebutton,\n toggleswitch,\n tree,\n treeselect,\n treetable,\n toast,\n toolbar,\n virtualscroller,\n tooltip,\n ripple\n }\n};\nexport { aura_default as default };\n","import { definePreset } from '@primeng/themes';\nimport Aura from '@primeng/themes/aura';\n\nexport const InciditeThemePreset = definePreset(Aura, {\n //Your customizations, see the following sections for examples\n semantic: {\n primary: {\n 50: '{blue.50}',\n 100: '{blue.100}',\n 200: '{blue.200}',\n 300: '{blue.300}',\n 400: '{blue.400}',\n 500: '{blue.500}',\n 600: '{blue.600}',\n 700: '{blue.700}',\n 800: '{blue.800}',\n 900: '{blue.900}',\n 950: '{blue.950}',\n },\n colorScheme: {\n dark: {\n primary: {\n color: '#117cfa',\n inverseColor: '#ffffff',\n hoverColor: '#4c9cfb',\n activeColor: '#044ba0',\n },\n surface: {\n 0: '#ffffff',\n 50: '#f8f9fb',\n 100: '#edf0f5',\n 200: '#dce1ea',\n 300: '#cbd3e0',\n 400: '#b9c4d5',\n 500: '#97a7c0',\n 600: '#748cab',\n 700: '#516275',\n 800: '#3d4a59',\n 900: '#1f2d40',\n },\n highlight: {\n background: '#117cfa',\n focusBackground: '#117cfa',\n color: '#ffffff',\n focusColor: '#ffffff',\n },\n formField: {\n background: 'var(--v-input-background)',\n borderRadius: 'var(--v-border-radius)',\n borderColor: '{slate.700}',\n paddingY: '0.25rem',\n paddingX: '0.5rem',\n disabledBackground: '{slate.800}',\n },\n listOption: {\n padding: '0.25rem 0.5rem',\n },\n list: {\n gap: '4px',\n },\n },\n },\n },\n components: {\n chip: {\n paddingY: '0.2rem',\n paddingX: '0.5rem',\n colorScheme: {\n dark: {\n background: '{slate.700}',\n },\n },\n },\n paginator: {\n nav: {\n button: {\n width: '2rem',\n height: '2rem',\n borderRadius: 'var(--v-border-radius)',\n },\n },\n },\n listbox: {\n background: 'transparent',\n borderColor: 'transparent',\n list: {\n padding: '0px',\n },\n option: {\n focus: {\n background: 'transparent',\n },\n selected: {\n background: 'transparent',\n focus: {\n background: 'transparent',\n },\n },\n },\n },\n dialog: {\n border: {\n radius: 'var(--v-border-radius)',\n },\n },\n },\n});\n","import { registerLocaleData } from '@angular/common';\nimport {\n HttpClient,\n provideHttpClient,\n withInterceptorsFromDi,\n} from '@angular/common/http';\nimport {\n ErrorHandler,\n LOCALE_ID,\n importProvidersFrom,\n inject,\n provideAppInitializer,\n} from '@angular/core';\nimport { initializeApp, provideFirebaseApp } from '@angular/fire/app';\nimport { getMessaging, provideMessaging } from '@angular/fire/messaging';\nimport { BrowserModule, bootstrapApplication } from '@angular/platform-browser';\nimport { provideAnimationsAsync } from '@angular/platform-browser/animations/async';\nimport { Router, RouterModule } from '@angular/router';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport {\n TranslateCompiler,\n TranslateDefaultParser,\n TranslateLoader,\n TranslateModule,\n TranslateParser,\n} from '@ngx-translate/core';\nimport { NgxsReduxDevtoolsPluginModule } from '@ngxs/devtools-plugin';\nimport { NgxsFormPluginModule } from '@ngxs/form-plugin';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport {\n LOCAL_STORAGE_ENGINE,\n NgxsStoragePluginModule,\n} from '@ngxs/storage-plugin';\nimport { NgxsModule } from '@ngxs/store';\nimport * as Sentry from '@sentry/angular';\nimport { INTL_LOCALES, IntlModule } from 'angular-ecmascript-intl';\nimport { GoogleTagManagerModule } from 'angular-google-tag-manager';\nimport { CookieService } from 'ngx-cookie-service';\nimport { NgxStripeModule } from 'ngx-stripe';\nimport { TranslateMessageFormatCompiler } from 'ngx-translate-messageformat-compiler';\nimport { MessageService } from 'primeng/api';\nimport { providePrimeNG } from 'primeng/config';\nimport { ToastModule } from 'primeng/toast';\nimport * as superjson from 'superjson';\nimport { AppComponent } from './app/app.component';\nimport { GraphQLModule } from './app/graphql.module';\nimport { PagesModule } from './app/pages/pages.module';\nimport { KratosAuthenticationService } from './app/services/authentication/kratos.service';\nimport { IntercomService } from './app/services/intercom/intercom.service';\nimport { FCMService } from './app/services/notifications/fcm.service';\nimport { ObservabilityService } from './app/services/observability/observability.service';\nimport { ToastService } from './app/services/toast/toast.service';\nimport { createTranslateLoader } from './app/services/translation/http-loader';\nimport { MessageParser } from './app/services/translation/parser';\nimport { FeaturesStateModule } from './app/store/features/features.state.module';\nimport { MiscState } from './app/store/misc/misc.state';\nimport { NotificationsState } from './app/store/notifications/notifications.state';\nimport { NotificationsStateModule } from './app/store/notifications/notifications.state.module';\nimport { OnboardingState } from './app/store/onboarding/onboarding.state';\nimport { OnboardingStateModule } from './app/store/onboarding/onboarding.state.module';\nimport { ServicesStateModule } from './app/store/services/services.state.module';\nimport { SubscriptionStateModule } from './app/store/subscription/subscription.state.module';\nimport { TrackingStateModule } from './app/store/tracking/tracking.state.module';\nimport { UISettingsState } from './app/store/ui-settings/ui-settings.state';\nimport { UserState } from './app/store/user/user.state';\nimport { UserStateModule } from './app/store/user/user.state.module';\nimport { environment } from './environments/environment';\n\nimport localeDe from '@angular/common/locales/de';\nimport localeEn from '@angular/common/locales/en';\nimport posthog from 'posthog-js';\nimport { InciditeThemePreset } from './primeng-preset';\n\nregisterLocaleData(localeDe);\nregisterLocaleData(localeEn);\n\nif (environment.posthog.enabled) {\n posthog.init(environment.posthog.key, {\n api_host: environment.posthog.host,\n opt_in_site_apps: true,\n });\n}\n\nif (environment.sentry.enabled) {\n Sentry.init({\n dsn: environment.sentry.dsn,\n environment: environment.sentry.environment,\n integrations: [\n Sentry.browserTracingIntegration(),\n Sentry.replayIntegration({\n maskAllText: false,\n blockAllMedia: false,\n }),\n ],\n tracePropagationTargets: [environment.gqlEndpoint],\n tracesSampleRate: 1.0,\n replaysSessionSampleRate: 1.0,\n replaysOnErrorSampleRate: 1.0,\n });\n}\n\nbootstrapApplication(AppComponent, {\n providers: [\n importProvidersFrom(\n BrowserModule,\n NgxsModule.forRoot([MiscState, UISettingsState], {\n selectorOptions: {\n suppressErrors: true,\n },\n }),\n NgxsRouterPluginModule.forRoot(),\n NgxsStoragePluginModule.forRoot({\n keys: [\n {\n key: UserState,\n engine: LOCAL_STORAGE_ENGINE,\n },\n {\n key: UISettingsState,\n engine: LOCAL_STORAGE_ENGINE,\n },\n {\n key: NotificationsState,\n engine: LOCAL_STORAGE_ENGINE,\n },\n {\n key: OnboardingState,\n engine: LOCAL_STORAGE_ENGINE,\n },\n ],\n serialize: obj => {\n return superjson.stringify(obj);\n },\n deserialize: obj => {\n return superjson.parse(obj);\n },\n }),\n NgxsFormPluginModule.forRoot(),\n NgxsReduxDevtoolsPluginModule.forRoot({\n latency: 0,\n }),\n RouterModule,\n PagesModule,\n GraphQLModule,\n IntlModule,\n TranslateModule.forRoot({\n defaultLanguage: 'en',\n loader: {\n provide: TranslateLoader,\n useFactory: createTranslateLoader,\n deps: [HttpClient],\n },\n compiler: {\n provide: TranslateCompiler,\n useClass: TranslateMessageFormatCompiler,\n },\n parser: {\n provide: TranslateParser,\n useClass: MessageParser,\n deps: [TranslateDefaultParser],\n },\n }),\n UserStateModule,\n OnboardingStateModule,\n FeaturesStateModule,\n ServicesStateModule,\n TrackingStateModule,\n ToastModule,\n FontAwesomeModule,\n NgxStripeModule.forRoot(),\n GoogleTagManagerModule.forRoot({\n id: environment.gtm.id,\n gtm_preview: environment.gtm.previewEnv,\n gtm_auth: environment.gtm.auth,\n }),\n NotificationsStateModule,\n SubscriptionStateModule\n ),\n KratosAuthenticationService,\n TranslateDefaultParser,\n ToastService,\n MessageService,\n CookieService,\n ObservabilityService,\n IntercomService,\n FCMService,\n // Sentry error tracking\n {\n provide: ErrorHandler,\n useValue: Sentry.createErrorHandler({\n showDialog: false,\n }),\n },\n {\n provide: Sentry.TraceService,\n deps: [Router],\n },\n provideAppInitializer(() => {\n inject(Sentry.TraceService);\n }),\n {\n provide: LOCALE_ID,\n useValue: 'en-US',\n },\n {\n provide: INTL_LOCALES,\n useValue: ['en-US'],\n },\n provideHttpClient(withInterceptorsFromDi()),\n provideFirebaseApp(() =>\n initializeApp({\n projectId: 'incidite-687a5',\n appId: '1:221325142302:web:5e1d1970d032d9bfeac10f',\n storageBucket: 'incidite-687a5.firebasestorage.app',\n apiKey: 'AIzaSyBjD8VycHJLLnrHsKbzqQA2nTFKtuZvA04',\n authDomain: 'incidite-687a5.firebaseapp.com',\n messagingSenderId: '221325142302',\n })\n ),\n provideMessaging(() => getMessaging()),\n provideAnimationsAsync(),\n providePrimeNG({\n theme: {\n preset: InciditeThemePreset,\n options: {\n darkModeSelector: '.dark',\n },\n },\n }),\n ],\n}).catch(err => console.error(err));\n"],"names":["require_messageformat","__commonJSMin","exports","module","global","factory","__assign","t","s","n","p","__values","o","m","__read","r","ar","e","error","__spreadArray","to","from","pack","l","DateFormatError","msg","token","type","alpha","width","numeric","yearOptions","onError","monthStyle","dayStyle","char","desc","weekdayStyle","hourOptions","hour","hourCycle","timeZoneNameStyle","compileOptions","getDateFormatOptions","tokens","options","fields","field","str","dte","opt","isWarning","isLetter","readFieldToken","src","pos","readQuotedToken","next","readToken","parseDateTokens","getDateFormatter","locales","dtf","date","getDateFormatterSource","NumberFormatError","code","BadOptionError","stem","BadStemError","MaskedValueError","prev","MissingOptionError","PatternError","TooManyOptionsError","maxOpt","maxOptStr","UnsupportedError","source","getNumberFormatLocales","_ref","numberingSystem","lc","ext","round","x","precision","y","getNumberFormatMultiplier","scale","unit","mult","getNumberFormatModifier","skeleton","getNumberFormatModifierSource","setX","res","getNumberFormatOptions","onUnsupported","decimal","group","integerWidth","notation","roundingMode","sign","unitPer","unitWidth","fail","minF","maxF","minS","maxS","expDigits","expSign","style","min","max","hasExp","parseAffixToken","pad","isDigit","parseNumberToken","digits","plus","parseSubpattern","State","prefix","number","suffix","state","parseTokens","pattern","negative","parseNumberAsSkeleton","hasGroups","hasExponent","intOptional","intDigits","decimalPos","fracDigits","fracOptional","increment","dc","handleAffix","affixTokens","currency","isPrefix","inFmt","getNegativeAffix","parseNumberPattern","negPrefix","negSuffix","isNumberingSystem","ns","isUnit","types","maxOptions","minOptions","hasMaxOption","hasMinOption","validOptions","parseBlueprintDigits","re","match","parsePrecisionBlueprint","fd","option","sd","TokenParser","key","parseNumberSkeleton","part","parser","getNumberFormatter","mod","nf","p0","p1","n0","n1","value","getNumberFormatterSource","modSrc","lines","commonjsGlobal","getDefaultExportFromCjs","lexer","moo","root","hasOwnProperty","toString","hasSticky","isRegExp","isObject","reEscape","reGroups","reCapture","reUnion","regexps","regexpOrLiteral","obj","length","lastNLines","string","numLines","position","lineBreaks","idx","startPosition","objectToRules","object","keys","result","i","thing","rules","j","rule","ruleOptions","arrayToRules","array","include","a","b","toRules","spec","defaultErrorRule","compileRules","hasStates","errorRule","fast","fastAllowed","unicodeFlag","groups","parts","word","pat","regexp","groupCount","fallbackRule","flags","combined","compile","Lexer","checkStateGroup","g","name","map","compileStates","states","start","all","ruleMap","included","splice","newRules","k","newRule","fastKeys","keywordTransform","isMap","reverseMap","tokenType","item","keywordList","keyword","data","info","eat","buffer","tokenToString","index","text","offset","matchNL","nl","size","err","LexerIterator","message","numLinesAround","firstDisplayedLine","lastDisplayedLine","lastLineDigits","displayedLines","errorLines","line","lineNo","mooExports","__importDefault","moo_1","parse_1","lexer_js_1","getContext","lt","isSelectType","strictArgStyleParam","param","pText","ParseError","strictArgTypes","defaultPluralKeys","Parser","_a","_b","_c","_d","inPlural","ctx","arg","sel","argType","end","atRoot","content","errMsg","parse","_nf$1","strictNumber","plural","lcfunc","isOrdinal","select","reqArgs","Runtime","duration","sec","first","_nf","numberFmt","defaultCurrency","numberCurrency","numberInteger","numberPercent","time","Formatters","reserved","reserved$1","hashCode","hash","identifier","unique","id","property","jkey","rtlLanguages","rtlRegExp","biDiMarkText","locale","isLocaleRTL","mark","RUNTIME_MODULE","CARDINAL_MODULE","PLURAL_MODULE","FORMATTER_MODULE","Compiler","plurals","e_1","_this","localeCodeFromKey","requireAllArguments","strict","strictPluralKeys","pl","e_1_1","parserOptions","hasArgs","pluralToken","needOther","tok","cardinals","ordinals","asValues","args","fn","formatter","isModuleFn","ord","getCardinal","getPlural","isDefault","pf","e_2","e_3","fmt","isFormatterKey","argShape","param_1","param_1_1","e_2_1","_e","pair","keyEnd","v","e_3_1","parentKey","cf","cfo_1","argStyle","argSkeletonText_1","fmtArg_1","cm","currency_1","a$2","b$2","c$2","d$2","v0","e$1","f$2","Cardinals","t0","n100","n10","n1000000","f","i10","i100","f10","f100","i1000000","n1000","n100000","z","f$1","a$1","b$1","c$1","d$1","PluralCategories","c","d","Plurals","i1000","normalize","lc_1","isPluralId","getAllPlurals","firstLocale","hasPlural","MessageFormat","octothorpe","esc","la","compiler","fnBody","nfArgs","fnArgs","ANIMATION_PREFIX","AsyncAnimationRendererFactory","inject","Injector","ɵASYNC_ANIMATION_LOADING_SCHEDULER_FN","doc","delegate","zone","animationType","moduleImpl","loadFn","m","moduleImplPromise","e","RuntimeError","ɵcreateEngine","ɵAnimationRendererFactory","rendererFactory","hostElement","rendererType","renderer","dynamicRenderer","DynamicDelegationRenderer","animationRendererFactory","animationRenderer","ChangeDetectionScheduler","componentId","__ngFactoryType__","ɵɵinvalidFactory","ɵɵdefineInjectable","impl","fn","name","namespace","value","parent","newChild","refChild","isMove","oldChild","isHostElement","selectorOrNode","preserveContent","node","el","style","flags","target","eventName","callback","options","propOrEventName","InjectionToken","provideAnimationsAsync","type","performanceMarkFeature","makeEnvironmentProviders","RendererFactory2","DOCUMENT","DomRendererFactory2","NgZone","ANIMATION_MODULE_TYPE","NGXS_DEVTOOLS_OPTIONS","InjectionToken","NgxsReduxDevtoolsPlugin","inject","Injector","NgZone","_global","Store","state","action","next","catchError","error","newState","tap","type","getActionTypeFromInstance","InitState","__spreadProps","__spreadValues","prevState","actionsById","computedStates","currentStateIndex","actionId","actionPayload","__ngFactoryType__","ɵɵdefineInjectable","devtoolsOptionsFactory","options","USER_OPTIONS","NgxsReduxDevtoolsPluginModule","withNgxsPlugin","ɵɵdefineNgModule","ɵɵdefineInjector","ɵDEFAULT_STATE_KEY","ɵUSER_OPTIONS","InjectionToken","ɵALL_STATES_PERSISTED","inject","ɵNGXS_STORAGE_PLUGIN_OPTIONS","STORAGE_ENGINE","ɵisKeyWithExplicitEngine","key","ɵextractStringKey","storageKey","ɵMETA_OPTIONS_KEY","StateToken","storageOptionsFactory","options","__spreadProps","__spreadValues","obj","ɵDEFAULT_STATE_KEY","engineFactory","platformId","isPlatformServer","getStorageKey","key","ɵNgxsStoragePluginKeysManager","inject","Injector","keys","ɵNGXS_STORAGE_PLUGIN_OPTIONS","storageKeys","storageKey","ɵextractStringKey","engine","ɵisKeyWithExplicitEngine","STORAGE_ENGINE","__ngFactoryType__","ɵɵdefineInjectable","NgxsStoragePlugin","ɵALL_STATES_PERSISTED","PLATFORM_ID","state","event","next","matches","actionMatcher","isInitAction","InitState","isUpdateAction","UpdateState","isInitOrUpdateAction","hasMigration","addedStates","dotNotationIndex","DOT","stateName","storedValue","newVal","strategy","versionMatch","getValue","keyMatch","setValue","tap","nextState","newStoredValue","accumulator","addedState","NgxsStoragePluginModule","withNgxsPlugin","ɵUSER_OPTIONS","ɵɵdefineNgModule","ɵɵdefineInjector","LOCAL_STORAGE_ENGINE","InjectionToken","isPlatformBrowser","inject","PLATFORM_ID","GoogleTagManagerConfigService","InjectionToken","GoogleTagManagerConfiguration","googleTagManagerConfig","__ngFactoryType__","ɵɵinject","ɵɵdefineInjectable","GoogleTagManagerModule","config","ɵɵdefineNgModule","ɵɵdefineInjector","GoogleTagManagerService","googleTagManagerConfiguration","googleTagManagerId","googleTagManagerMode","googleTagManagerAuth","googleTagManagerPreview","googleTagManagerResourcePath","googleTagManagerCSPNonce","__spreadProps","__spreadValues","window","obj","resolve","reject","doc","gtmScript","item","url","k","__ngFactoryType__","ɵɵinject","GoogleTagManagerConfiguration","ɵɵdefineInjectable","import_core","MESSAGE_FORMAT_CONFIG","InjectionToken","defaultConfig","TranslateMessageFormatCompiler","TranslateCompiler","config","customFormatters","biDiSupport","strict","currency","strictPluralKeys","__spreadValues","value","lang","translations","acc","key","__spreadProps","locale","MessageFormat","__ngFactoryType__","ɵɵinject","ɵɵdefineInjectable","theme","dt","inlineStyles","instance","_position","classes","ToastStyle","BaseStyle","ɵToastStyle_BaseFactory","__ngFactoryType__","ɵɵgetInheritedFactory","ɵɵdefineInjectable","_c0","_c1","a0","a1","a2","a3","_c2","_c3","_c4","ToastItem_Conditional_2_ng_container_0_Template","rf","ctx","ɵɵelementContainer","ToastItem_Conditional_2_Template","ɵɵtemplate","ctx_r1","ɵɵnextContext","ɵɵproperty","ɵɵpureFunction2","ToastItem_Conditional_3_ng_container_1_span_1_Template","ɵɵelement","ToastItem_Conditional_3_ng_container_1_span_2_Case_1_Template","ɵɵattribute","ToastItem_Conditional_3_ng_container_1_span_2_Case_2_Template","ToastItem_Conditional_3_ng_container_1_span_2_Case_3_Template","ToastItem_Conditional_3_ng_container_1_span_2_Case_4_Template","ToastItem_Conditional_3_ng_container_1_span_2_Case_5_Template","ToastItem_Conditional_3_ng_container_1_span_2_Template","ɵɵelementStart","ɵɵelementEnd","tmp_7_0","ɵɵadvance","ɵɵconditional","ToastItem_Conditional_3_ng_container_1_Template","ɵɵelementContainerStart","ɵɵtext","ɵɵelementContainerEnd","ɵɵtextInterpolate1","ɵɵtextInterpolate","ToastItem_Conditional_3_ng_container_2_Template","ToastItem_Conditional_3_Conditional_3_Conditional_2_span_0_Template","ToastItem_Conditional_3_Conditional_3_Conditional_2_Template","ToastItem_Conditional_3_Conditional_3_Conditional_3_Template","ToastItem_Conditional_3_Conditional_3_Template","_r3","ɵɵgetCurrentView","ɵɵlistener","$event","ɵɵrestoreView","ɵɵresetView","ToastItem_Conditional_3_Template","ɵɵclassMap","ɵɵpureFunction1","_c5","_c6","Toast_p_toastItem_2_Template","_r1","msg_r3","i_r4","ToastItem","BaseComponent","EventEmitter","inject","ToastStyle","zone","event","__ngFactoryType__","ɵɵdirectiveInject","NgZone","ɵɵdefineComponent","ɵɵviewQuery","_t","ɵɵqueryRefresh","ɵɵloadQuery","numberAttribute","ɵɵProvidersFeature","ɵɵInputTransformsFeature","ɵɵInheritDefinitionFeature","ɵɵpureFunction4","CommonModule","NgClass","NgIf","NgTemplateOutlet","CheckIcon","ExclamationTriangleIcon","InfoCircleIcon","TimesIcon","TimesCircleIcon","SharedModule","trigger","state","style","transition","animate","Toast","value","MessageService","uuid","messages","filteredMessages","m","key","item","message","allow","collection","zindexutils","isEmpty","innerHTML","breakpoint","breakpointStyle","styleProp","setAttribute","ɵToast_BaseFactory","ɵɵgetInheritedFactory","dirIndex","ɵɵcontentQuery","PrimeTemplate","booleanAttribute","ɵɵstyleMap","NgForOf","NgStyle","query","animateChild","ToastModule","ɵɵdefineNgModule","ɵɵdefineInjector","DoubleIndexedKV","key","value","Registry","generateIdentifier","DoubleIndexedKV","value","identifier","ClassRegistry","Registry","value","options","valuesOfObj","record","values","key","find","predicate","valuesNotNever","i","value","forEach","run","includes","arr","findArr","CustomTransformerRegistry","transformer","v","find","name","getType","payload","isUndefined","isNull","isPlainObject","isEmptyObject","isArray","isString","isNumber","isBoolean","isRegExp","isMap","isSet","isSymbol","isDate","isError","isNaNValue","isPrimitive","isBigint","isInfinite","isTypedArray","isURL","escapeKey","key","stringifyPath","path","parsePath","string","result","segment","i","char","lastSegment","simpleTransformation","isApplicable","annotation","transform","untransform","simpleRules","isUndefined","isBigint","v","isDate","isError","superJson","baseError","prop","e","isRegExp","regex","body","flags","isSet","isMap","isNaNValue","isInfinite","isURL","compositeTransformation","symbolRule","s","isSymbol","_","a","value","constructorToName","obj","ctor","typedArrayRule","isTypedArray","isInstanceOfRegisteredClass","potentialClass","classRule","clazz","allowedProps","__spreadValues","result","customRule","transformer","compositeRules","transformValue","applicableCompositeRule","findArr","rule","applicableSimpleRule","simpleRulesByAnnotation","untransformValue","json","type","isArray","transformation","getNthKey","value","n","keys","validatePath","path","includes","getDeep","object","i","key","isSet","isMap","row","type","keyOfRow","setDeep","mapper","parent","isArray","index","isPlainObject","lastKey","oldValue","newValue","keyToRow","newKey","traverse","tree","walker","origin","isArray","forEach","subtree","key","parsePath","nodeValue","children","child","applyValueAnnotations","plain","annotations","superJson","type","path","setDeep","v","untransformValue","applyReferentialEqualityAnnotations","apply","identicalPaths","object","getDeep","identicalObjectPath","root","other","identicalPath","isDeep","isPlainObject","isMap","isSet","isInstanceOfRegisteredClass","addIdentity","identities","existingSet","generateReferentialEqualityAnnotations","identitites","dedupe","result","rootEqualityPaths","paths","a","b","representativePath","stringifyPath","isEmptyObject","objectsInThisPath","seenObjects","primitive","isPrimitive","seen","transformed","transformValue","includes","transformationResult","transformedValue","innerAnnotations","value","index","recursiveResult","escapeKey","getType","payload","isArray","payload","getType","isPlainObject","payload","getType","prototype","isNull","payload","getType","isOneOf","a","b","c","d","e","value","isUndefined","isNullOrUndefined","assignProp","carry","key","newVal","originalObject","includeNonenumerable","propType","copy","target","options","isArray","item","isPlainObject","props","symbols","val","SuperJSON","dedupe","ClassRegistry","Registry","s","CustomTransformerRegistry","object","identities","output","walker","res","__spreadProps","__spreadValues","equalityAnnotations","generateReferentialEqualityAnnotations","payload","json","meta","result","copy","applyValueAnnotations","applyReferentialEqualityAnnotations","string","v","options","identifier","transformer","name","props","serialize","SuperJSON","deserialize","stringify","parse","registerClass","registerCustom","registerSymbol","allowErrorProps","AppComponent","constructor","actions","inject","Actions","router","Router","selectors","decls","vars","consts","template","rf","ctx","ɵɵelement","RouterOutlet","Toast","styles","onError","errorHandler","ApolloLink","operation","forward","Observable","observer","sub","retriedSub","retriedResult","result","graphQLResultHasProtocolErrors","PROTOCOL_ERRORS_SYMBOL","networkError","e","ErrorLink","_super","__extends","_this","isLikeCloseEvent","val","isNonNullObject","isLikeErrorEvent","err","_a","GraphQLWsLink","_super","__extends","client","_this","operation","Observable","observer","__assign","print","likeClose","ApolloError","ApolloLink","fetch","req","httpClient","extractFiles","shouldUseBody","shouldStringify","param","isBatching","shouldUseMultipart","multipartInfo","Observable","observer","bodyOrParams","body","obj","value","form","map","files","i","paths","_","file","__spreadValues","mergeHeaders","source","destination","headers","name","prioritize","values","val","createHeadersWithClientAwareness","context","HttpHeaders","version","defaults","pick","options","key","HttpLinkHandler","ApolloLink","print","httpClient","options","operation","Observable","observer","context","method","pick","includeQuery","includeExtensions","url","withCredentials","useMultipart","useGETForQueries","isQuery","def","req","headers","createHeadersWithClientAwareness","mergeHeaders","sub","fetch","response","err","op","HttpLink","__ngFactoryType__","ɵɵinject","HttpClient","ɵɵdefineInjectable","extendedTypeof","val","isObject","areGraphQLErrors","obj","ob","limitCloseReason","reason","whenTooLong","GRAPHQL_TRANSPORT_WS_PROTOCOL","CloseCode","MessageType","validateMessage","val","isObject","extendedTypeof","areGraphQLErrors","parseMessage","data","reviver","validateMessage","stringifyMessage","msg","replacer","__await","v","__asyncGenerator","thisArg","_arguments","generator","g","i","q","verb","n","a","b","resume","step","e","settle","r","fulfill","reject","value","f","createClient","options","url","connectionParams","lazy","onNonLazyError","lazyCloseTimeoutMs","keepAlive","disablePong","connectionAckWaitTimeout","retryAttempts","retryWait","retries","__async","retryDelay","resolve","shouldRetry","isLikeCloseEvent","isFatalConnectionProblem","on","webSocketImpl","generateID","c","replacer","reviver","ws","isWebSocket","WebSocketImpl","emitter","message","listeners","id","listener","_a","event","l","args","errorOrClosed","cb","listening","err","unlisten","connecting","locks","lazyCloseTimeout","retrying","disposed","connect","socket","throwOnClose","connected","denied","GRAPHQL_TRANSPORT_WS_PROTOCOL","connectionAckTimeout","queuedPing","enqueuePing","stringifyMessage","MessageType","errOrEvent","payload","CloseCode","limitCloseReason","acknowledged","data","parseMessage","_","release","released","complete","shouldRetryConnectOrThrow","errOrCloseEvent","isFatalInternalCloseCode","sink","done","errored","releaser","waitForReleaseOrThrowOnClose","request","pending","deferred","dispose","val","iterator","isObject","code","SetRealtimeConnectionStateAction","type","constructor","connectionState","GraphQLModule","provide","APOLLO_OPTIONS","useFactory","httpLink","store","http","create","uri","environment","gqlEndpoint","withCredentials","ws","GraphQLWsLink","createClient","url","gqlEndpointWS","retryAttempts","Infinity","shouldRetry","keepAlive","errorLink","onError","graphQLErrors","networkError","forEach","message","extensions","console","log","dispatch","LogoutAction","client","on","SetRealtimeConnectionStateAction","link","split","query","kind","operation","getMainDefinition","ApolloLink","from","CustomScalarLink","cache","InMemoryCache","defaultOptions","watchQuery","errorPolicy","fetchPolicy","deps","HttpLink","Store","imports","ApolloModule","DialogsModule","KratosFormComponent","ReAuthenticateDialogComponent","AuthGuard","__async","router","inject","Router","store","Store","user","selectSnapshot","UserState","getUser","firstValueFrom","dispatch","LoadUserAction","Error","session","getSession","Date","now","expiresAt","getTime","LogoutAction","memberships","length","navigate","ex","console","warn","LoadIncidentsStatisticsAction","type","constructor","days","GET_STATISTICS_QUERY","gql","StatisticsService","constructor","apollo","inject","Apollo","loadStatistics","organizationId","days","query","variables","pipe","map","data","incidentsStatistics","s","mapStatistics","factory","ɵfac","StatisticsState","constructor","store","inject","Store","toast","ToastService","statisticsService","StatisticsService","isLoading","state","incidentsStatistics","activeIncidents","entities","resolvedIncidents","totalImpactDuration","mtta","mttr","loadStatuspages","ctx","days","organizationID","selectSnapshot","UserState","getCurrentOrganizationID","Error","observable","loadStatistics","loadEntities","pipe","map","statistics","toIdentifiableEntities","clear","factory","ɵfac","__decorate","Action","LoadIncidentsStatisticsAction","Selector","State","name","defaults","NewListEntities","StatisticsStateModule","StatisticsService","imports","NgxsModule","forFeature","StatisticsState","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","ɵɵadvance","ɵɵproperty","ctx_r1","HeaderFormat","Text","statCardSize","vm_r1","activeIncidents","datapoints","resolvedIncidents","Duration","totalImpactDuration","unit","mtta","mttr","ɵɵlistener","ɵɵrestoreView","_r3","ɵɵnextContext","ɵɵresetView","newIncident","ɵɵpipeBind1","ɵɵpureFunction0","_c0","ɵɵtext","_r4","ɵɵtextInterpolate1","incident_r6","ɵɵtemplate","HomePageComponent_div_4_Conditional_8_For_2_ng_template_0_Template","$event","_r5","onActiveIncidentsPageChange","ɵɵrepeaterCreate","HomePageComponent_div_4_Conditional_8_For_2_Template","_forTrack0","vm_r7","isLoading","activeIncidentsPaginationState","pageSize","page","_c1","pagination","totalRecords","ɵɵrepeater","HomePageComponent_div_4_v_button_5_Template","HomePageComponent_div_4_Conditional_7_Template","HomePageComponent_div_4_Conditional_8_Template","length","ɵɵconditional","HomePageComponent_div_11_Conditional_1_p_skeleton_1_Template","_c2","_c3","_c4","_r8","component_r9","$implicit","goToService","name","description","health","color","HomePageComponent_div_11_Conditional_2_Conditional_1_For_3_ng_template_0_Template","ɵɵpureFunction2","_c9","_c8","owner","HomePageComponent_div_11_Conditional_2_Conditional_1_For_3_Template","vm_r10","_c7","_c5","_c6","components","HomePageComponent_div_11_Conditional_2_Conditional_0_Template","HomePageComponent_div_11_Conditional_2_Conditional_1_Template","HomePageComponent_div_11_Conditional_1_Template","HomePageComponent_div_11_Conditional_2_Template","HomePageComponent","constructor","dialogService","inject","DialogService","store","Store","router","Router","t","TranslateService","statisticsVM$","select","createModelSelector","StatisticsState","pipe","map","state","data","componentsVM$","ServicesState","services","entities","Object","values","c","activeIncidentsVM$","IncidentsState","incidents","e","ngOnInit","dispatch","LoadServices","LoadIncidentsStatisticsAction","setStatsCardSize","loadActiveIncidents","open","NewIncidentPageComponent","header","instant","width","dismissableMask","modal","window","innerWidth","onResize","LoadIncidents","rows","service","navigate","id","selectors","hostBindings","rf","ctx","ɵɵresolveWindow","HomePageComponent_div_1_Template","HomePageComponent_div_4_Template","HomePageComponent_div_11_Template","SharedModule","NgForOf","NgIf","AsyncPipe","TranslatePipe","StatsCardComponent","VButtonComponent","CheckRoleDirective","VDataDisplayComponent","VDataItemDirective","ActiveIncidentComponent","SkeletonModule","Skeleton","AutosizeModule","AutosizeDirective","RouterLink","VBasicDataItemComponent","IncidentsStateModule","StatisticsStateModule","styles","EVENT_SUBSCRIPTION","gql","EVENT_FIELDS","USAGE_SUBSCRIPTION","RealtimeService","constructor","store","inject","Store","apollo","Apollo","backoffInterval","maxBackoffInterval","select","UserState","getCurrentOrganizationID","subscribe","next","orgId","subscribeToIncidentEvents","subscribeToUsageEvents","query","variables","organizationUUID","data","dispatch","AddIncidentEventAction","incidentEvents","incidentId","event","error","console","warn","setTimeout","organizationId","UsageUpdatedAction","usageEvents","featureName","usage","factory","ɵfac","providedIn","MiscState","getRealtimeConnectionState","state","realtimeConnectionState","setConnectionState","ctx","connectionState","patchState","factory","ɵfac","__decorate","Action","SetRealtimeConnectionStateAction","Selector","State","name","defaults","OrganizationStateModule","OrganizationService","imports","BroascastChannelsStateModule","NgxsModule","forFeature","OrganizationDetailsState","ɵɵelementStart","ɵɵlistener","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","toggleCollapsed","togglePinned","ɵɵelementEnd","ɵɵadvance","ɵɵproperty","menuService","getMenuItems","user_r3","ɵɵpipeBind1","userMenuItems$","ɵɵpureFunction0","_c0","isCollapsed$","isPinned$","additionalSidebarContent_r4","$event","_r5","op_r6","ɵɵreference","toggle","ɵɵtext","hide","goToSubscription","_c1","_r7","ɵɵtemplate","SidebarComponent_ng_template_2_Conditional_0_Conditional_0_Conditional_0_Template","SidebarComponent_ng_template_2_Conditional_0_Conditional_0_Conditional_1_Template","ɵɵconditional","isCollapsed_r8","_r9","op_r10","_r11","SidebarComponent_ng_template_2_Conditional_0_Conditional_1_Conditional_0_Template","SidebarComponent_ng_template_2_Conditional_0_Conditional_1_Conditional_1_Template","SidebarComponent_ng_template_2_Conditional_0_Conditional_0_Template","SidebarComponent_ng_template_2_Conditional_0_Conditional_1_Template","subscription_r12","data","canStartTrial","status","SubscriptionStatus","TRIALING","SidebarComponent_ng_template_2_Conditional_0_Template","tmp_3_0","subscription$","SidebarComponent","constructor","store","inject","Store","MenuService","router","Router","select","SubscriptionState","subscription","UISettingsState","setting","user$","createModelSelector","user","UserState","getUser","selectedOrganization","OrganizationDetailsState","organization","pipe","map","avatar","name","firstname","lastname","email","currentOrg","getCurrentOrganizationID","organizations","memberships","length","membership","id","organizationId","label","icon","onClicked","dispatch","SelectOrganizationAction","window","location","reload","routerLink","LogoutAction","navigate","isCollapsed","selectSnapshot","UpdateUISettingAction","isPinned","selectors","decls","vars","consts","template","rf","ctx","SidebarComponent_div_0_Template","SidebarComponent_ng_template_2_Template","ɵɵtemplateRefExtractor","NgIf","VSideMenuComponent","CheckRoleDirective","VIconButtonComponent","PopoverModule","Popover","VButtonComponent","VMessageComponent","AsyncPipe","OrganizationStateModule","styles","__decorate","Select","MiscState","getRealtimeConnectionState","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","ɵɵtext","ɵɵproperty","last_r3","undefined","breadcrumb_r2","routerLink","ɵɵpureFunction2","_c1","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind1","label","ɵɵelementContainerStart","ɵɵtemplate","BreadcrumbsComponent_ng_container_4_div_4_Template","BreadcrumbsComponent_ng_container_4_a_5_Template","loading","BreadcrumbsComponent","constructor","menuService","ɵɵdirectiveInject","MenuService","selectors","decls","vars","consts","template","rf","ctx","BreadcrumbsComponent_ng_container_4_Template","ɵɵpureFunction0","_c0","getBreadcrumbs","SharedModule","NgClass","NgForOf","NgIf","TranslatePipe","RouterLink","SkeletonModule","Skeleton","encapsulation","TranslationService","constructor","translate","LOCAL_STORAGE_LOCALE_KEY","DEFAULT_LANGUAGE","addLangs","currentLocale","loadCurrentLocaleOrDefault","currentLang","locale","localStorage","setItem","setDefaultLang","use","getItem","getAvailableLocales","getLangs","translateInstantKey","key","params","instant","translateKey","get","ɵɵinject","TranslateService","factory","ɵfac","providedIn","TopBarComponent","constructor","authService","translate","menuItems","store","inject","Store","user$","select","UserState","getUser","ngOnInit","__async","label","firstValueFrom","translateKey","icon","routerLink","command","dispatch","LogoutAction","ɵɵdirectiveInject","KratosAuthenticationService","TranslationService","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","BreadcrumbsComponent","encapsulation","InternalLayoutComponent","constructor","rt","inject","RealtimeService","fcm","FCMService","store","Store","ngOnInit","dispatch","LoadUserAction","LoadSubscriptionAction","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","SidebarComponent","TopBarComponent","RouterOutlet","StatuspagesStateModule","encapsulation","InternalRoutes","path","loadChildren","then","m","OnboardingModule","component","InternalLayoutComponent","canActivate","AuthGuard","canActivateChild","children","pathMatch","redirectTo","HomePageComponent","data","title","icon","RequiredRolesAnnotation","PermissionGuard","IncidentsModule","AlertsModule","ServicesModule","StatuspageModule","MonitorsModule","TeamsModule","SettingsShellPageComponent","SettingsModule","ɵɵelement","ɵɵproperty","ctx_r0","image","ɵɵsanitizeUrl","imageClass","VCardImageHeaderComponent","constructor","text","selectors","inputs","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵtemplate","VCardImageHeaderComponent_img_3_Template","ɵɵadvance","ɵɵtextInterpolate","SharedModule","NgClass","NgIf","styles","OAuth2ConfirmLoginChallengeAction","type","constructor","challenge","OAuth2ConfirmConsentChallengeAction","OAuth2GetConsentInfoAction","CONFIRM_OAUTH2_LOGIN_CHALLENGE_MUTATION","gql","CONFIRM_OAUTH2_CONSENT_CHALLENGE_MUTATION","GET_OAUTH2_CONSENT_INFO_QUERY","OAuth2Service","constructor","apollo","inject","Apollo","confirmLoginChallenge","challenge","mutate","mutation","variables","pipe","map","data","errors","Error","message","confirmOAuth2LoginChallenge","redirectUri","confirmConsentChallenge","confirmOAuth2ConsentChallenge","getConsentChallenge","query","oauth2ConsentChallenge","factory","ɵfac","OAuth2State","constructor","store","inject","Store","oauth2Service","OAuth2Service","toast","ToastService","currentConsent","state","currentConsentRequestInfo","isAcceptingConsent","confirmLoginChallenge","ctx","challenge","pipe","tap","redirectUri","window","location","href","confirmConsentChallenge","patchState","catchError","err","showError","Error","getConsentInfo","loadEntity","getConsentChallenge","consentInfo","skip","dispatch","OAuth2ConfirmConsentChallengeAction","factory","ɵfac","__decorate","Action","OAuth2ConfirmLoginChallengeAction","OAuth2GetConsentInfoAction","Selector","State","name","children","defaults","NewEntity","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","ɵɵtext","ɵɵadvance","ɵɵtextInterpolate","scope_r1","ɵɵrepeaterCreate","OAuth2ConsentPageComponent_v_card_0_div_3_Conditional_2_For_9_Template","ɵɵrepeaterTrackByIdentity","consent_r2","client","name","id","ɵɵpipeBind1","ɵɵrepeater","requestedScopes","ɵɵtemplate","OAuth2ConsentPageComponent_v_card_0_div_3_Conditional_1_Template","OAuth2ConsentPageComponent_v_card_0_div_3_Conditional_2_Template","ɵɵconditional","skip","ɵɵlistener","ɵɵrestoreView","_r3","ctx_r3","ɵɵnextContext","ɵɵresetView","onConsent","ɵɵproperty","vm_r5","isLoading","OAuth2ConsentPageComponent_v_card_0_div_3_Template","OAuth2ConsentPageComponent_v_card_0_Conditional_5_Template","currentConsent","data","OAuth2ConsentPageComponent","constructor","route","inject","ActivatedRoute","store","Store","vm$","select","createModelSelector","OAuth2State","isAcceptingConsent","pipe","map","state","ngOnInit","queryParams","subscribe","params","oAuth2ConsentChallenge","dispatch","OAuth2GetConsentInfoAction","OAuth2ConfirmConsentChallengeAction","selectors","decls","vars","consts","template","rf","ctx","OAuth2ConsentPageComponent_v_card_0_Template","SharedModule","NgIf","AsyncPipe","TranslatePipe","VCardComponent","VCardImageHeaderComponent","VButtonComponent","encapsulation","ɵɵelement","ɵɵproperty","vm_r1","user","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵlistener","ɵɵrestoreView","_r2","ctx_r2","ɵɵnextContext","ɵɵresetView","logout","goToDashboard","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind1","joinOrganizationError","_r4","onFormSubmit","ɵɵtemplate","JoinOrganizationPageComponent_v_card_0_Conditional_6_p_message_1_Template","joinOrgForm","isJoining","valid","JoinOrganizationPageComponent_v_card_0_Conditional_4_Template","JoinOrganizationPageComponent_v_card_0_Conditional_5_Template","JoinOrganizationPageComponent_v_card_0_Conditional_6_Template","ɵɵpipeBind2","ɵɵpureFunction1","_c0","invitation","organization","name","ɵɵconditional","isAlreadyMember","JOIN_ORGANIZATION_MUTATION","gql","JoinOrganizationPageComponent","constructor","auth","inject","KratosAuthenticationService","apollo","Apollo","router","Router","route","ActivatedRoute","store","Store","vm$","select","UserState","getUser","pipe","map","isLoading","avatar","firstname","lastname","email","memberships","find","membership","organizationId","id","undefined","FormGroup","queryParams","subscribe","params","loadInvitation","token","getInvitation","next","dispatch","LoadUserAction","disable","mutate","mutation","variables","navigate","error","err","toString","enable","SelectOrganizationAction","LogoutAction","selectors","decls","vars","consts","template","rf","ctx","JoinOrganizationPageComponent_v_card_0_Template","SharedModule","NgIf","AsyncPipe","TranslatePipe","VCardComponent","VCardImageHeaderComponent","VButtonComponent","MessageModule","Message","VUserCardComponent","VMessageComponent","ReactiveFormsModule","ɵNgNoValidate","NgControlStatusGroup","FormGroupDirective","encapsulation","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","ɵɵlistener","$event","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","submitFlow","ɵɵproperty","isCompletingLoginFlow","loginFlow","ɵɵpureFunction0","_c2","ɵɵtemplate","LoginPageComponent_v_card_0_div_4_Template","LoginPageComponent_v_card_0_app_kratos_form_5_Template","ɵɵtext","ɵɵadvance","ɵɵpipeBind1","initialFlowLoading","_c0","ɵɵtextInterpolate1","_c1","_r3","submitTwoFAFlow","isCompletingTwoFAFlow","twoFAFlow","_c3","LoginPageComponent_v_card_1_app_kratos_form_4_Template","LoginPageComponent","constructor","auth","inject","KratosAuthenticationService","router","Router","route","ActivatedRoute","store","Store","aal","returnTo","isOAuth2Flow","oauth2ReturnUrl","environment","frontendUrl","ngOnInit","queryParams","subscribe","params","oauth2LoginChallenge","setSessionFromWhoami","then","session","onLoginCompleted","getLoginFlow","flow","requested_aal","return_to","loginChallenge","URL","searchParams","get","createLoginFlow","data","__async","completeLoginFlowV2","method","catch","err","ErrTwoFARequired","navigate","ErrBrowserLocationChangeRequired","window","location","href","redirectUri","response","finally","dispatch","TrackUserLoggedInEventAction","identity","id","OAuth2ConfirmLoginChallengeAction","selectors","decls","vars","consts","template","rf","ctx","LoginPageComponent_v_card_0_Template","LoginPageComponent_v_card_1_Template","SharedModule","NgIf","TranslatePipe","KratosFormComponent","VCardComponent","VCardImageHeaderComponent","SkeletonModule","Skeleton","RouterModule","RouterLink","styles","ɵɵelementStart","ɵɵlistener","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","returnToDashboard","ɵɵelementEnd","ɵɵadvance","ɵɵproperty","ɵɵpipeBind1","ɵɵtemplate","MaintenancePageComponent_Conditional_6_div_0_Template","maintenanceEnabled$","ɵɵtext","ɵɵtextInterpolate1","MaintenancePageComponent","constructor","store","inject","Store","router","Router","select","FeaturesState","boolFlag","FLAGS","HALO_PROTOCOL_FRONTENT","navigate","selectors","decls","vars","consts","template","rf","ctx","ɵɵelement","MaintenancePageComponent_Conditional_6_Template","MaintenancePageComponent_Conditional_8_Template","ɵɵconditional","SharedModule","NgIf","AsyncPipe","TranslatePipe","VButtonComponent","VCardComponent","VCardImageHeaderComponent","encapsulation","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵelement","ɵɵadvance","ɵɵproperty","ctx_r0","newOrgForm","ɵɵpureFunction6","_c6","ɵɵpureFunction0","_c0","_c1","_c2","_c3","_c4","_c5","ɵɵpureFunction5","_c12","_c7","_c8","_c9","_c10","_c11","createOrganizationError","ɵɵlistener","ɵɵrestoreView","_r2","ɵɵnextContext","ɵɵresetView","logout","onFormSubmit","ɵɵpipeBind1","valid","CREATE_ORGANIZATION_MUTATION","gql","NewOrganizationPageComponent","constructor","apollo","inject","Apollo","router","Router","store","Store","FormGroup","orgName","FormControl","Validators","required","industry","size","isSubmitting","undefined","disable","mutate","mutation","variables","name","value","subscribe","next","res","actions","SelectOrganizationAction","data","createOrganization","id","LoadUserAction","ResetOnboardingAction","timer","Promise","resolve","setTimeout","checkSubscription","attempt","delay","__async","dispatch","LoadSubscriptionAction","toPromise","selectSnapshot","SubscriptionState","canChangeSubscription","all","firstValueFrom","then","ChangeSubscriptionAction","planName","priceId","environment","productPriceIds","pro","monthly","isTrial","complete","navigate","error","err","toString","enable","LogoutAction","selectors","decls","vars","consts","template","rf","ctx","ɵɵtemplate","NewOrganizationPageComponent_div_6_Template","NewOrganizationPageComponent_div_7_Template","NewOrganizationPageComponent_div_8_Template","NewOrganizationPageComponent_p_message_9_Template","NewOrganizationPageComponent_div_10_Template","SharedModule","NgIf","TranslatePipe","VInputComponent","VButtonComponent","MessageModule","Message","ReactiveFormsModule","ɵNgNoValidate","NgControlStatusGroup","FormGroupDirective","VInputFieldComponent","VDropdownComponent","encapsulation","PublicPageComponent","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","RouterOutlet","styles","ɵɵelementStart","ɵɵlistener","$event","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","submitFlow","ɵɵelementEnd","ɵɵproperty","ɵɵpureFunction0","_c1","recoveryFlow","isCompletingRegistrationFlow","ɵɵtemplate","RecoveryPageComponent_div_4_app_kratos_form_1_Template","ɵɵadvance","_r3","submitSettingsFlow","_c2","settingsFlow","isCompletingSettingsFlow","RecoveryPageComponent_div_5_app_kratos_form_1_Template","RecoveryPageComponent","constructor","auth","inject","KratosAuthenticationService","router","Router","toast","ToastService","stage","initialFlowLoading","ngOnInit","loadRecoveryFlow","getRecoveryFlow","then","flow","catch","ex","ErrAlreadyLoggedIn","loadSettingsFlow","finally","data","__async","completeRecoveryFlow","newFlow","err","ErrBrowserLocationChangeRequired","response","getSettingsFlow","ErrTwoFARequired","navigate","queryParams","aal","returnTo","completeSettingsFlow","id","__spreadProps","__spreadValues","method","showInfo","selectors","decls","vars","consts","template","rf","ctx","ɵɵelement","ɵɵelementContainerStart","RecoveryPageComponent_div_4_Template","RecoveryPageComponent_div_5_Template","ɵɵtext","ɵɵpipeBind1","ɵɵtextInterpolate1","_c0","SharedModule","NgIf","TranslatePipe","KratosFormComponent","VCardComponent","VCardImageHeaderComponent","RouterModule","RouterLink","styles","ɵɵelementStart","ɵɵelement","ɵɵlistener","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","logout","ɵɵelementEnd","goToDashboard","ɵɵproperty","ɵɵadvance","ɵɵpipeBind1","ɵɵtext","ɵɵtemplate","RegisterPageComponent_v_card_1_Conditional_4_ng_template_1_Template","ɵɵpipeBind2","ɵɵpureFunction1","_c1","invitation","organization","name","ɵɵsanitizeHtml","RegisterPageComponent_v_card_1_Conditional_6_p_messages_0_ng_template_1_Template","RegisterPageComponent_v_card_1_Conditional_6_div_2_p_skeleton_1_Template","ɵɵpureFunction0","_c2","constructor","$event","_r3","submitFlow","_c3","registrationFlow","isCompletingRegistrationFlow","RegisterPageComponent_v_card_1_Conditional_6_p_messages_0_Template","RegisterPageComponent_v_card_1_Conditional_6_div_2_Template","RegisterPageComponent_v_card_1_Conditional_6_app_kratos_form_3_Template","isInvite","initialFlowLoading","ɵɵtextInterpolate1","_c0","ɵɵtextInterpolate","RegisterPageComponent_v_card_1_Conditional_4_Template","RegisterPageComponent_v_card_1_Conditional_6_Template","ɵɵconditional","disableRegistration$","RegisterPageComponent","route","inject","ActivatedRoute","auth","KratosAuthenticationService","router","Router","store","Store","select","FeaturesState","boolFlag","FLAGS","DISABLE_REGISTRATION","isLoading","showAlreadyLoggedIn","ngOnInit","queryParams","subscribe","params","invitationToken","flowId","loadRegistrationFlow","loadInvitation","then","createRegistrationFlow","getRegistrationFlow","flow","returnTo","environment","frontendUrl","ui","nodes","find","n","attributes","value","email","catch","navigate","token","finally","Promise","resolve","reject","getInvitation","next","error","loadInvitationError","data","__async","method","traits","completeRegistrationFlowV2","err","ErrBrowserLocationChangeRequired","window","location","href","redirectUri","response","dispatch","LogoutAction","selectors","decls","vars","consts","template","rf","ctx","RegisterPageComponent_v_card_0_Template","RegisterPageComponent_v_card_1_Template","SharedModule","NgForOf","NgIf","AsyncPipe","TranslatePipe","KratosFormComponent","VCardComponent","VCardImageHeaderComponent","VButtonComponent","SkeletonModule","Skeleton","PrimeTemplate","MessagesModule","Messages","MessageModule","RouterModule","RouterLink","styles","ɵɵelement","ɵɵproperty","ctx_r0","verificationError","VerificationPageComponent","constructor","auth","inject","KratosAuthenticationService","route","ActivatedRoute","router","Router","store","Store","verificationGroup","FormGroup","code","FormControl","queryParams","subscribe","params","verificationFlowId","controls","setValue","onVerificationFormSubmit","undefined","completeVerificationFlow","value","then","dispatch","LoadUserAction","navigate","catch","err","toString","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵlistener","ɵɵelementEnd","ɵɵtemplate","VerificationPageComponent_p_message_11_Template","ɵɵadvance","ɵɵpipeBind1","SharedModule","NgIf","TranslatePipe","VCardComponent","VCardImageHeaderComponent","VInputComponent","VButtonComponent","MessageModule","Message","VInputFieldComponent","ReactiveFormsModule","ɵNgNoValidate","NgControlStatusGroup","FormGroupDirective","styles","PublicRoutes","path","component","PublicPageComponent","children","MaintenancePageComponent","LoginPageComponent","RegisterPageComponent","RecoveryPageComponent","VerificationPageComponent","NewOrganizationPageComponent","data","title","icon","JoinOrganizationPageComponent","OAuth2ConsentPageComponent","routes","InternalRoutes","PublicRoutes","PagesModule","DialogService","imports","RouterModule","forRoot","routes","enableViewTransitions","DialogsModule","TranslateHttpLoader","http","prefix","suffix","lang","createTranslateLoader","http","TranslateHttpLoader","MessageParser","TranslateParser","constructor","defaultParser","interpolate","expr","params","count","getValue","target","key","ɵɵinject","TranslateDefaultParser","factory","ɵfac","FeaturesStateModule","FeaturesService","imports","NgxsModule","forFeature","FeaturesState","CHECK_NOTIFICATIONS_INTERVAL","ASK_FOR_PUSH_INTERVAL","NotificationsState","constructor","store","inject","Store","ds","VKitDialogService","destroy$","Subject","ngOnDestroy","next","complete","askForPushNotifications","ctx","lastChecked","getState","getTime","Date","dispatch","LoadRecipientEndpointsForOrganizationMemberAction","subscribe","endpoints","selectSnapshot","CommunicationState","orgMemberRecipientEndpoints","hasPushConfigured","ListEntitiesToIterable","entities","some","e","data","providerType","CommunicationProviderType","FCM","patchState","promptUserForPushNotifications","ignoreAskForPushUntil","confirm","header","description","confirmIcon","confirmText","cancelText","variant","then","ok","EnablePushNotificationsAction","ignoreUntil","SetIgnoreAskForPushUntilAction","enablePushNotifications","CreateWebPushRecipientEndpointAction","setIgnoreAskForPushUntil","action","factory","ɵfac","__decorate","Action","AskForPushAction","State","name","children","defaults","NotificationsStateModule","NgxsModule","forFeature","NotificationsState","CommunicationStateModule","Tracker","TrackingService","constructor","gtmService","inject","GoogleTagManagerService","store","Store","router","Router","intercom","IntercomService","environment","gtm","enabled","id","init","__async","addGtmToDom","select","createModelSelector","user","UserState","getUser","pipe","map","_0","trackEvent","event","data","userId","trackers","GTM","subscribe","events","forEach","item","NavigationEnd","pageName","url","config","includes","pushTag","__spreadValues","INTERCOM","ex","console","warn","factory","ɵfac","providedIn","TrackingState","constructor","trackingService","inject","TrackingService","trackEvent","ctx","_1","__async","event","config","trackUserLoggedInEvent","identityId","data","userId","trackers","Tracker","GTM","trackUserRegisteredEvent","trackSubscriptionChangedEvent","planName","priceId","isTrial","discountCodes","join","INTERCOM","trackSubscriptionCanceledEvent","trackSubscriptionUnCanceledEvent","trackSubscriptionDowngradedCanceledEvent","factory","ɵfac","__decorate","Action","TrackGenericEventAction","TrackUserLoggedInEventAction","TrackUserRegisteredEventAction","TrackSubscriptionChangedEventAction","TrackSubscriptionCanceledEventAction","TrackSubscriptionUnCanceledEventAction","TrackSubscriptionDowngradedCanceledEventAction","State","name","defaults","TrackingStateModule","TrackingService","imports","NgxsModule","forFeature","TrackingState","UserStateModule","UserService","imports","NgxsModule","forFeature","UserState","plural","val","n","i","v","de_default","plural","val","n","i","v","en_default","accordion_default","autocomplete_default","avatar_default","badge_default","base_default","blockui_default","breadcrumb_default","button_default","card_default","carousel_default","cascadeselect_default","checkbox_default","chip_default","colorpicker_default","confirmdialog_default","confirmpopup_default","contextmenu_default","datatable_default","dataview_default","datepicker_default","dialog_default","divider_default","dock_default","drawer_default","editor_default","fieldset_default","fileupload_default","floatlabel_default","galleria_default","iconfield_default","iftalabel_default","image_default","imagecompare_default","inlinemessage_default","inplace_default","inputchips_default","inputgroup_default","inputnumber_default","inputotp_default","inputtext_default","knob_default","listbox_default","megamenu_default","menu_default","menubar_default","message_default","metergroup_default","multiselect_default","orderlist_default","organizationchart_default","overlaybadge_default","paginator_default","panel_default","panelmenu_default","password_default","picklist_default","popover_default","progressbar_default","progressspinner_default","radiobutton_default","rating_default","ripple_default","scrollpanel_default","select_default","selectbutton_default","skeleton_default","slider_default","speeddial_default","splitbutton_default","splitter_default","stepper_default","steps_default","tabmenu_default","tabs_default","tabview_default","tag_default","terminal_default","textarea_default","tieredmenu_default","timeline_default","toast_default","togglebutton_default","toggleswitch_default","toolbar_default","tooltip_default","tree_default","treeselect_default","treetable_default","virtualscroller_default","aura_default","__spreadProps","__spreadValues","base_default","accordion_default","autocomplete_default","avatar_default","badge_default","blockui_default","breadcrumb_default","button_default","datepicker_default","card_default","carousel_default","cascadeselect_default","checkbox_default","chip_default","colorpicker_default","confirmdialog_default","confirmpopup_default","contextmenu_default","dataview_default","datatable_default","dialog_default","divider_default","dock_default","drawer_default","editor_default","fieldset_default","fileupload_default","iftalabel_default","floatlabel_default","galleria_default","iconfield_default","image_default","imagecompare_default","inlinemessage_default","inplace_default","inputchips_default","inputgroup_default","inputnumber_default","inputotp_default","inputtext_default","knob_default","listbox_default","megamenu_default","menu_default","menubar_default","message_default","metergroup_default","multiselect_default","orderlist_default","organizationchart_default","overlaybadge_default","popover_default","paginator_default","password_default","panel_default","panelmenu_default","picklist_default","progressbar_default","progressspinner_default","radiobutton_default","rating_default","scrollpanel_default","select_default","selectbutton_default","skeleton_default","slider_default","speeddial_default","splitter_default","splitbutton_default","stepper_default","steps_default","tabmenu_default","tabs_default","tabview_default","textarea_default","tieredmenu_default","tag_default","terminal_default","timeline_default","togglebutton_default","toggleswitch_default","tree_default","treeselect_default","treetable_default","toast_default","toolbar_default","virtualscroller_default","tooltip_default","ripple_default","InciditeThemePreset","definePreset","Aura","semantic","primary","colorScheme","dark","color","inverseColor","hoverColor","activeColor","surface","highlight","background","focusBackground","focusColor","formField","borderRadius","borderColor","paddingY","paddingX","disabledBackground","listOption","padding","list","gap","components","chip","paginator","nav","button","width","height","listbox","option","focus","selected","dialog","border","radius","registerLocaleData","localeDe","localeEn","environment","posthog","enabled","init","key","api_host","host","opt_in_site_apps","sentry","dsn","integrations","browserTracingIntegration","replayIntegration","maskAllText","blockAllMedia","tracePropagationTargets","gqlEndpoint","tracesSampleRate","replaysSessionSampleRate","replaysOnErrorSampleRate","bootstrapApplication","AppComponent","providers","importProvidersFrom","BrowserModule","NgxsModule","forRoot","MiscState","UISettingsState","selectorOptions","suppressErrors","NgxsRouterPluginModule","NgxsStoragePluginModule","keys","UserState","engine","LOCAL_STORAGE_ENGINE","NotificationsState","OnboardingState","serialize","obj","stringify","deserialize","parse","NgxsFormPluginModule","NgxsReduxDevtoolsPluginModule","latency","RouterModule","PagesModule","GraphQLModule","IntlModule","TranslateModule","defaultLanguage","loader","provide","TranslateLoader","useFactory","createTranslateLoader","deps","HttpClient","compiler","TranslateCompiler","useClass","TranslateMessageFormatCompiler","parser","TranslateParser","MessageParser","TranslateDefaultParser","UserStateModule","OnboardingStateModule","FeaturesStateModule","ServicesStateModule","TrackingStateModule","ToastModule","FontAwesomeModule","NgxStripeModule","GoogleTagManagerModule","id","gtm","gtm_preview","previewEnv","gtm_auth","auth","NotificationsStateModule","SubscriptionStateModule","KratosAuthenticationService","ToastService","MessageService","CookieService","ObservabilityService","IntercomService","FCMService","ErrorHandler","useValue","createErrorHandler","showDialog","TraceService","Router","provideAppInitializer","inject","LOCALE_ID","INTL_LOCALES","provideHttpClient","withInterceptorsFromDi","provideFirebaseApp","initializeApp","projectId","appId","storageBucket","apiKey","authDomain","messagingSenderId","provideMessaging","getMessaging","provideAnimationsAsync","providePrimeNG","theme","preset","InciditeThemePreset","options","darkModeSelector","catch","err","console","error"],"mappings":"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,KAAM,wBACR,EACA,EAAG,CACD,MAAO,UACP,KAAM,SACR,EACA,EAAG,CACD,MAAO,UACP,KAAM,qBACR,EACA,EAAG,CACD,MAAO,QACP,KAAM,eACR,EACA,EAAG,CACD,MAAO,QACP,KAAM,2BACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,cACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,eACR,EACA,EAAG,CACD,MAAO,MACP,KAAM,cACR,EACA,EAAG,CACD,MAAO,MACP,KAAM,aACR,EACA,EAAG,CACD,MAAO,MACP,KAAM,sBACR,EACA,EAAG,CACD,MAAO,MACP,KAAM,qBACR,EACA,EAAG,CACD,MAAO,UACP,KAAM,aACR,EACA,EAAG,CACD,MAAO,UACP,KAAM,mBACR,EACA,EAAG,CACD,MAAO,UACP,KAAM,+BACR,EACA,EAAG,CACD,MAAO,SACP,KAAM,cACR,EACA,EAAG,CACD,MAAO,SACP,KAAM,4BACR,EACA,EAAG,CACD,MAAO,SACP,KAAM,qBACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,sBACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,oBACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,oBACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,sBACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,yBACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,wCACR,EACA,EAAG,CACD,MAAO,OACP,KAAM,8CACR,EACA,EAAG,CACD,MAAO,MACP,KAAM,gBACR,EACA,EAAG,CACD,MAAO,MACP,KAAM,kBACR,EACA,EAAG,CACD,MAAO,WACP,KAAM,mBACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,qBACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,kCACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,WACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,sBACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,iCACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,eACR,EACA,EAAG,CACD,MAAO,KACP,KAAM,2BACR,EACA,EAAG,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","debug_id":"2ac38c14-09f8-5bad-8ae2-5225261e613a"}
\n {{ 'pages.home.activeIncidents.nodata' | translate }}\n
\n {{ 'pages.home.serviceStatus.nodata' | translate }}\n
\n Start your free trial now and get access to all features.\n
\n Continue your access to all features by upgrading your trial.\n
\n {{ 'pages.maintenance.message' | translate }}\n
\n Tell us about your organization\n
\n Setting up your organization\n
\n Convincing the logs to be useful...\n
\n Snoozing all the “urgent” non-urgent alerts...\n
\n Accidentally deploying to production... wait, what?\n