@refinitiv-ui/i18n 5.3.0-alpha.0 → 5.3.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [5.2.6](https://github.com/Refinitiv/refinitiv-ui/compare/@refinitiv-ui/i18n@5.2.5...@refinitiv-ui/i18n@5.2.6) (2022-01-12)
7
+
8
+ **Note:** Version bump only for package @refinitiv-ui/i18n
9
+
10
+
11
+
12
+
13
+
6
14
  ## [5.2.5](https://github.com/Refinitiv/refinitiv-ui/compare/@refinitiv-ui/i18n@5.2.4...@refinitiv-ui/i18n@5.2.5) (2021-12-21)
7
15
 
8
16
  **Note:** Version bump only for package @refinitiv-ui/i18n
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@refinitiv-ui/i18n",
3
- "version": "5.3.0-alpha.0",
3
+ "version": "5.3.0-alpha.1",
4
4
  "description": "i18n support for Web Components",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib/index.js",
@@ -13,7 +13,7 @@
13
13
  "scripts": {
14
14
  "build": "tsc --sourceMap --declarationMap",
15
15
  "build:watch": "npm run build -- --watch --preserveWatchOutput",
16
- "build:prod": "tsc",
16
+ "build:prod": "echo \"No build:prod command found\"",
17
17
  "lint": "eslint .",
18
18
  "lint:fix": "eslint . --fix",
19
19
  "test": "npm run build && karma start ../../karma.config.js --package=i18n --include-snapshots=false",
@@ -24,16 +24,18 @@
24
24
  "dependencies": {
25
25
  "@formatjs/icu-messageformat-parser": "^2.0.15",
26
26
  "@formatjs/intl-utils": "^3.8.4",
27
- "@refinitiv-ui/phrasebook": "^5.5.0-alpha.0",
28
27
  "intl-format-cache": "^4.3.1",
29
28
  "intl-messageformat": "^9.10.0",
30
29
  "tslib": "^2.3.1"
31
30
  },
32
31
  "devDependencies": {
33
- "@refinitiv-ui/test-helpers": "^5.2.0-alpha.0"
32
+ "@refinitiv-ui/test-helpers": "^5.1.2"
33
+ },
34
+ "peerDependencies": {
35
+ "@refinitiv-ui/phrasebook": "^5.5.0-alpha.0"
34
36
  },
35
37
  "publishConfig": {
36
38
  "access": "public"
37
39
  },
38
- "gitHead": "41ad2a9927526e4beaccc6d519bc16b0c20e5864"
40
+ "gitHead": "de44f7c988b30eec26d37336eb9c6dc6ba54da64"
39
41
  }
@@ -1,2 +0,0 @@
1
- declare const DEFAULT_LOCALE = "en-GB";
2
- export { DEFAULT_LOCALE };
package/lib/constants.js DELETED
@@ -1,2 +0,0 @@
1
- const DEFAULT_LOCALE = 'en-GB';
2
- export { DEFAULT_LOCALE };
package/lib/index.d.ts DELETED
@@ -1,4 +0,0 @@
1
- export type { TranslateOptions, TranslateMessage, TranslateParams, UnicodeExtensions, MessageFormats, MessageOptions } from './types';
2
- export { LangObserverCallback, LangAttributeObserver } from './lang-attribute-observer.js';
3
- export { t, clearCache, resolveLocale, clearCachedRecord } from './translate.js';
4
- export { DEFAULT_LOCALE } from './constants.js';
package/lib/index.js DELETED
@@ -1,3 +0,0 @@
1
- export { LangAttributeObserver } from './lang-attribute-observer.js';
2
- export { t, clearCache, resolveLocale, clearCachedRecord } from './translate.js';
3
- export { DEFAULT_LOCALE } from './constants.js';
@@ -1,33 +0,0 @@
1
- declare type LangObserverCallback = () => void;
2
- /**
3
- * An abstract class to observe `lang` attribute changes
4
- * on element and document element
5
- */
6
- declare abstract class LangAttributeObserver {
7
- private static documentObserver;
8
- private static elements;
9
- private static callbacks;
10
- private static startObserving;
11
- private static stopObserving;
12
- private static onDocumentLang;
13
- private static documentChangeCallback;
14
- /**
15
- * Start observing `lang` changes on element
16
- * @param element An element
17
- * @param callback A callback to run when `lang` has changed
18
- * @returns {void}
19
- */
20
- static observe(element: HTMLElement, callback: LangObserverCallback): void;
21
- /**
22
- * Disconnect `lang` element observer from element
23
- * @param element An element
24
- * @returns {void}
25
- */
26
- static disconnect(element: HTMLElement): void;
27
- /**
28
- * Get document element lang
29
- * @returns lang
30
- */
31
- static get documentLang(): string;
32
- }
33
- export { LangObserverCallback, LangAttributeObserver };
@@ -1,68 +0,0 @@
1
- /**
2
- * MutationObserver configuration
3
- */
4
- const OBSERVER_CONFIG = {
5
- attributes: true,
6
- attributeFilter: ['lang']
7
- };
8
- /**
9
- * An abstract class to observe `lang` attribute changes
10
- * on element and document element
11
- */
12
- class LangAttributeObserver {
13
- static startObserving(element, callback) {
14
- const observer = new MutationObserver(() => callback());
15
- observer.observe(element, OBSERVER_CONFIG);
16
- return observer;
17
- }
18
- static stopObserving(observer) {
19
- observer.disconnect();
20
- }
21
- static onDocumentLang() {
22
- this.callbacks.forEach(this.documentChangeCallback);
23
- }
24
- static documentChangeCallback(callback, element) {
25
- if (!element.lang) {
26
- callback();
27
- }
28
- }
29
- /**
30
- * Start observing `lang` changes on element
31
- * @param element An element
32
- * @param callback A callback to run when `lang` has changed
33
- * @returns {void}
34
- */
35
- static observe(element, callback) {
36
- if (!this.documentObserver) {
37
- this.documentObserver = this.startObserving(document.documentElement, this.onDocumentLang.bind(this));
38
- }
39
- this.callbacks.set(element, callback);
40
- if (this.elements.has(element)) {
41
- this.stopObserving(this.elements.get(element));
42
- }
43
- this.elements.set(element, this.startObserving(element, callback));
44
- }
45
- /**
46
- * Disconnect `lang` element observer from element
47
- * @param element An element
48
- * @returns {void}
49
- */
50
- static disconnect(element) {
51
- this.callbacks.delete(element);
52
- if (!this.callbacks.size && this.documentObserver) {
53
- this.stopObserving(this.documentObserver);
54
- this.documentObserver = null;
55
- }
56
- }
57
- /**
58
- * Get document element lang
59
- * @returns lang
60
- */
61
- static get documentLang() {
62
- return document.documentElement.lang;
63
- }
64
- }
65
- LangAttributeObserver.documentObserver = null;
66
- LangAttributeObserver.elements = new WeakMap();
67
- LangAttributeObserver.callbacks = new Map();
68
- export { LangAttributeObserver };
package/lib/memoiser.d.ts DELETED
@@ -1,58 +0,0 @@
1
- import type { TranslateOptions, TranslateMessage, MessageFormats, MessageOptions } from './types';
2
- declare abstract class Memoiser {
3
- /**
4
- * There is no right answer when to delete memoised function
5
- * To crete a new intl object is expensive, as well as to keep all memoised functions in memory
6
- * might not be what the developer want
7
- * Therefore set a timer and delete memoised function if not in use
8
- */
9
- private static Timeout;
10
- private static interval;
11
- private static memoiseMap;
12
- private static getMemoiseKey;
13
- private static clearRecord;
14
- private static setInterval;
15
- private static intervalCallback;
16
- private static clearInterval;
17
- private static hasRecords;
18
- /**
19
- * Get IntlMessageFormat memoised function
20
- * @param scope Scope
21
- * @param locale Locale
22
- * @param key Key
23
- * @param message Message
24
- * @param [formats] Override Formats
25
- * @param [opts] Options
26
- * @returns IntlMessageFormat
27
- */
28
- private static get;
29
- /**
30
- * Clear all cached records
31
- * @param scope Scope
32
- * @param locale Local
33
- * @returns {void}
34
- */
35
- static clear(): void;
36
- /**
37
- * Delete cached record
38
- * @param scope Scope
39
- * @param locale Local
40
- * @returns {void}
41
- */
42
- static delete(scope: string, locale: string): void;
43
- /**
44
- * Get a formatted localised string
45
- * @param scope Scope
46
- * @param locale Locale
47
- * @param key Key
48
- * @param message Message
49
- * @param [options] Additional options to format the string
50
- * @param [formats] Optional object with user defined options for format styles.
51
- * @param [opts] Optional options.
52
- * - formatters: Map containing memoized formatters for performance.
53
- * - ignoreTag: Whether to treat HTML/XML tags as string literal instead of parsing them as tag token. When this is false we only allow simple tags without any attributes
54
- * @returns formatted message
55
- */
56
- static format(scope: string, locale: string, key: string, message: TranslateMessage, options?: TranslateOptions, formats?: MessageFormats, opts?: MessageOptions): string;
57
- }
58
- export { Memoiser };
package/lib/memoiser.js DELETED
@@ -1,123 +0,0 @@
1
- // see https://github.com/formatjs/formatjs/tree/main/packages/intl-format-cache
2
- // to understand more why memoiser is required
3
- import IntlMessageFormat from 'intl-messageformat';
4
- import memoizeFormatConstructor from 'intl-format-cache';
5
- class Memoiser {
6
- static getMemoiseKey(scope, locale) {
7
- return `${scope}|${locale}`;
8
- }
9
- static clearRecord(memoiseKey) {
10
- delete this.memoiseMap[memoiseKey];
11
- }
12
- static setInterval() {
13
- if (this.interval === null) {
14
- this.interval = window.setInterval(() => this.intervalCallback(), this.Timeout);
15
- }
16
- }
17
- static intervalCallback() {
18
- const now = Date.now();
19
- let memoiseKey;
20
- for (memoiseKey in this.memoiseMap) {
21
- const { time } = this.memoiseMap[memoiseKey];
22
- if (now - time > this.Timeout) {
23
- this.clearRecord(memoiseKey);
24
- }
25
- }
26
- if (!this.hasRecords()) {
27
- this.clearInterval();
28
- }
29
- }
30
- static clearInterval() {
31
- if (this.interval) {
32
- clearInterval(this.interval);
33
- this.interval = null;
34
- }
35
- }
36
- static hasRecords() {
37
- return Object.keys(this.memoiseMap).length > 0;
38
- }
39
- /**
40
- * Get IntlMessageFormat memoised function
41
- * @param scope Scope
42
- * @param locale Locale
43
- * @param key Key
44
- * @param message Message
45
- * @param [formats] Override Formats
46
- * @param [opts] Options
47
- * @returns IntlMessageFormat
48
- */
49
- static get(scope, locale, key, message, formats, opts) {
50
- const memoiseKey = this.getMemoiseKey(scope, locale);
51
- let memoised = this.memoiseMap[memoiseKey];
52
- // set the formatter first
53
- if (!memoised) {
54
- memoised = {
55
- formatter: memoizeFormatConstructor(IntlMessageFormat),
56
- keys: {},
57
- time: 0
58
- };
59
- this.memoiseMap[memoiseKey] = memoised;
60
- }
61
- // keys collection stores all memoised keys
62
- const { keys, formatter } = memoised;
63
- let format = keys[key];
64
- if (!format) {
65
- format = formatter(message, locale, formats, opts);
66
- keys[key] = format;
67
- }
68
- // reset self timeout
69
- memoised.time = Date.now();
70
- this.setInterval();
71
- return format;
72
- }
73
- /**
74
- * Clear all cached records
75
- * @param scope Scope
76
- * @param locale Local
77
- * @returns {void}
78
- */
79
- static clear() {
80
- this.memoiseMap = {};
81
- this.clearInterval();
82
- }
83
- /**
84
- * Delete cached record
85
- * @param scope Scope
86
- * @param locale Local
87
- * @returns {void}
88
- */
89
- static delete(scope, locale) {
90
- const memoiseKey = this.getMemoiseKey(scope, locale);
91
- this.clearRecord(memoiseKey);
92
- if (!this.hasRecords()) {
93
- this.clearInterval();
94
- }
95
- }
96
- /**
97
- * Get a formatted localised string
98
- * @param scope Scope
99
- * @param locale Locale
100
- * @param key Key
101
- * @param message Message
102
- * @param [options] Additional options to format the string
103
- * @param [formats] Optional object with user defined options for format styles.
104
- * @param [opts] Optional options.
105
- * - formatters: Map containing memoized formatters for performance.
106
- * - ignoreTag: Whether to treat HTML/XML tags as string literal instead of parsing them as tag token. When this is false we only allow simple tags without any attributes
107
- * @returns formatted message
108
- */
109
- static format(scope, locale, key, message, options, formats, opts) {
110
- const intlMessage = this.get(scope, locale, key, message, formats, opts);
111
- return String(intlMessage.format(options)); /* need casting as default return is unknown */
112
- }
113
- }
114
- /**
115
- * There is no right answer when to delete memoised function
116
- * To crete a new intl object is expensive, as well as to keep all memoised functions in memory
117
- * might not be what the developer want
118
- * Therefore set a timer and delete memoised function if not in use
119
- */
120
- Memoiser.Timeout = 30 * 60 * 1000; // 30 minutes
121
- Memoiser.interval = null; /* used to run through map to clean it */
122
- Memoiser.memoiseMap = {};
123
- export { Memoiser };
@@ -1,39 +0,0 @@
1
- import type { TranslateOptions, TranslateParams } from './types';
2
- /**
3
- * Resolve translation from provided locale. For instance:
4
- * if `supported=['en', 'zh-Hant', 'zh-Hans']`
5
- * - en -> en
6
- * - en-GB -> en
7
- * - en-US -> en
8
- * - ru -> ''
9
- * - zh -> ''
10
- * - zh-Hant -> zh-Hant
11
- * - zh-Hant-HK -> zh-Hant
12
- * @param scope Scope
13
- * @param locale Locale to resolve
14
- * @returns resolved locale
15
- */
16
- declare const resolveLocale: (scope: string, locale: string) => string;
17
- /**
18
- * Clear all cached records
19
- * @returns {void}
20
- */
21
- declare const clearCache: () => void;
22
- /**
23
- * A helper method to clear cache for specific scope and locale
24
- * @param scope Scope
25
- * @param locale Locale
26
- * @returns {void}
27
- */
28
- declare const clearCachedRecord: (scope: string, locale: string) => void;
29
- /**
30
- * Get translation message from Phrasebook
31
- * @param scope Scope
32
- * @param locale Locale
33
- * @param key Translation key
34
- * @param options Translate options as key value combination
35
- * @param translateParams Translate parameters
36
- * @returns Promise<message>
37
- */
38
- declare const t: (scope: string, locale: string, key: string, options?: TranslateOptions | undefined, translateParams?: TranslateParams | undefined) => Promise<string>;
39
- export { t, resolveLocale, clearCache, clearCachedRecord };
package/lib/translate.js DELETED
@@ -1,110 +0,0 @@
1
- import { Phrasebook } from '@refinitiv-ui/phrasebook';
2
- import { supportedLocales } from '@formatjs/intl-utils';
3
- import { DEFAULT_LOCALE } from './constants.js';
4
- import { Memoiser } from './memoiser.js';
5
- /**
6
- * Resolve translation from provided locale. For instance:
7
- * if `supported=['en', 'zh-Hant', 'zh-Hans']`
8
- * - en -> en
9
- * - en-GB -> en
10
- * - en-US -> en
11
- * - ru -> ''
12
- * - zh -> ''
13
- * - zh-Hant -> zh-Hant
14
- * - zh-Hant-HK -> zh-Hant
15
- * @param scope Scope
16
- * @param locale Locale to resolve
17
- * @returns resolved locale
18
- */
19
- const resolveLocale = (scope, locale) => {
20
- if (!locale) {
21
- return '';
22
- }
23
- const supported = Phrasebook.supported(scope);
24
- // pick the first available locale in priority.
25
- return supportedLocales(supported, [locale])[0] || '';
26
- };
27
- /**
28
- * Clear all cached records
29
- * @returns {void}
30
- */
31
- const clearCache = () => {
32
- Memoiser.clear();
33
- };
34
- /**
35
- * A helper method to clear cache for specific scope and locale
36
- * @param scope Scope
37
- * @param locale Locale
38
- * @returns {void}
39
- */
40
- const clearCachedRecord = (scope, locale) => {
41
- const resolvedLocale = resolveLocale(scope, locale);
42
- if (resolvedLocale) {
43
- Memoiser.delete(scope, locale);
44
- }
45
- };
46
- /**
47
- * Add unicode extensions to locale. E.g: 'en-u-hc-h24-ca-islamic'
48
- * Note: if unicode extensions are passed with the locale itself, override those.
49
- * @param locale Locale to add extension
50
- * @param unicodeExtensions A list of extension
51
- * @returns locale with unicode extensions
52
- */
53
- const parseUnicodeExtensions = (locale, unicodeExtensions) => {
54
- if (!unicodeExtensions) {
55
- return locale;
56
- }
57
- const extensions = [];
58
- const localeUSplit = locale.split('-u-');
59
- locale = localeUSplit[0];
60
- const localeExtensions = {};
61
- if (localeUSplit[1]) {
62
- const split = localeUSplit[1].split('-'); // name-value pairs
63
- while (split.length) {
64
- const name = String(split.shift());
65
- const value = split.shift() || '';
66
- localeExtensions[name] = value;
67
- }
68
- }
69
- unicodeExtensions = Object.assign(localeExtensions, unicodeExtensions);
70
- for (const name in unicodeExtensions) {
71
- extensions.push(name, unicodeExtensions[name]);
72
- }
73
- if (extensions.length) {
74
- locale += `-u-${extensions.join('-')}`;
75
- }
76
- return locale;
77
- };
78
- /**
79
- * Get translation message from Phrasebook
80
- * @param scope Scope
81
- * @param locale Locale
82
- * @param key Translation key
83
- * @param options Translate options as key value combination
84
- * @param translateParams Translate parameters
85
- * @returns Promise<message>
86
- */
87
- const t = (scope, locale, key, options, translateParams) => {
88
- try {
89
- let resolvedLocale = resolveLocale(scope, locale);
90
- if (!resolvedLocale && locale !== DEFAULT_LOCALE) {
91
- // requested locale is not found in scope. Fallback to default locale
92
- locale = DEFAULT_LOCALE;
93
- resolvedLocale = resolveLocale(scope, locale);
94
- }
95
- const translation = resolvedLocale ? Phrasebook.get(resolvedLocale, scope) : null;
96
- if (!translation || !translation[key]) {
97
- // eslint-disable-next-line no-console
98
- console.warn(`elf-i18n: "${key}" is not found in scope: "${scope}", locale: "${locale}" translations`);
99
- return Promise.resolve(key);
100
- }
101
- if (translateParams === null || translateParams === void 0 ? void 0 : translateParams.unicodeExtensions) {
102
- locale = parseUnicodeExtensions(locale, translateParams === null || translateParams === void 0 ? void 0 : translateParams.unicodeExtensions);
103
- }
104
- return Promise.resolve(Memoiser.format(scope, locale, key, translation[key], options, translateParams === null || translateParams === void 0 ? void 0 : translateParams.formats, translateParams === null || translateParams === void 0 ? void 0 : translateParams.options));
105
- }
106
- catch (error) {
107
- return Promise.reject(error);
108
- }
109
- };
110
- export { t, resolveLocale, clearCache, clearCachedRecord };
package/lib/types.d.ts DELETED
@@ -1,64 +0,0 @@
1
- import type { MessageFormatElement } from '@formatjs/icu-messageformat-parser';
2
- import { Formats, Options } from 'intl-messageformat';
3
- declare type TranslateOptions = {
4
- [key: string]: unknown;
5
- };
6
- declare type TranslateMessage = string | MessageFormatElement[];
7
- declare type MessageFormats = Partial<Formats>;
8
- declare type MessageOptions = Options;
9
- /**
10
- * BCP 47 unicode extensions.
11
- * Check http://unicode.org/reports/tr35/ for full list of extensions
12
- */
13
- declare type UnicodeExtensions = {
14
- /**
15
- * Numbering system
16
- * For instance: 'thai', 'roman', 'latn'
17
- */
18
- nu?: string;
19
- /**
20
- * Calendar
21
- * For instance: 'iso8601', 'gregory', 'persian'
22
- */
23
- ca?: string;
24
- /**
25
- * Hour cycle
26
- * For instance: 'h11', 'h12', 'h23', 'h24'
27
- */
28
- hc?: string;
29
- /**
30
- * Custom extensions, like:
31
- * cf - currency format
32
- * cu - currency type
33
- * em - emoji style
34
- * and many others
35
- */
36
- [key: string]: string | undefined;
37
- };
38
- /**
39
- * Translate parameters
40
- */
41
- declare type TranslateParams = {
42
- /**
43
- * BCP 47 unicode extensions
44
- */
45
- unicodeExtensions?: UnicodeExtensions;
46
- /**
47
- * Intl.IntlMessageFormat optional object with user defined options for format styles.
48
- * e.g. to define custom date formatter, to be used with {{ date, date, calendar }}
49
- * date: { calendar: { day: 'numeric', month: 'long', year: 'numeric', timeZone: 'UTC', calendar: 'gregory' } }
50
- *
51
- * See more: https://formatjs.io/docs/intl-messageformat
52
- */
53
- formats?: MessageFormats;
54
- /**
55
- * Intl.IntlMessageFormat optional options.
56
- * - formatters: Map containing memoized formatters for performance.
57
- * - ignoreTag: Whether to treat HTML/XML tags as string literal instead of parsing them as tag token.
58
- * When this is false we only allow simple tags without any attributes
59
- *
60
- * See more: https://formatjs.io/docs/intl-messageformat
61
- */
62
- options?: MessageOptions;
63
- };
64
- export { TranslateOptions, TranslateParams, TranslateMessage, UnicodeExtensions, MessageFormats, MessageOptions };
package/lib/types.js DELETED
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/tslib/tslib.d.ts","./src/constants.ts","../../node_modules/@formatjs/ecma402-abstract/CanonicalizeLocaleList.d.ts","../../node_modules/@formatjs/ecma402-abstract/CanonicalizeTimeZoneName.d.ts","../../node_modules/@formatjs/ecma402-abstract/CoerceOptionsToObject.d.ts","../../node_modules/@formatjs/ecma402-abstract/GetNumberOption.d.ts","../../node_modules/@formatjs/ecma402-abstract/GetOption.d.ts","../../node_modules/@formatjs/ecma402-abstract/GetOptionsObject.d.ts","../../node_modules/@formatjs/ecma402-abstract/IsSanctionedSimpleUnitIdentifier.d.ts","../../node_modules/@formatjs/ecma402-abstract/IsValidTimeZoneName.d.ts","../../node_modules/@formatjs/ecma402-abstract/IsWellFormedCurrencyCode.d.ts","../../node_modules/@formatjs/ecma402-abstract/IsWellFormedUnitIdentifier.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/core.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/plural-rules.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/number.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/ComputeExponent.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/ComputeExponentForMagnitude.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/CurrencyDigits.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/FormatNumericToParts.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/FormatNumericToString.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/InitializeNumberFormat.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/PartitionNumberPattern.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/SetNumberFormatDigitOptions.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/SetNumberFormatUnitOptions.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/ToRawFixed.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/ToRawPrecision.d.ts","../../node_modules/@formatjs/ecma402-abstract/NumberFormat/format_to_parts.d.ts","../../node_modules/@formatjs/ecma402-abstract/PartitionPattern.d.ts","../../node_modules/@formatjs/ecma402-abstract/SupportedLocales.d.ts","../../node_modules/@formatjs/ecma402-abstract/utils.d.ts","../../node_modules/@formatjs/ecma402-abstract/data.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/relative-time.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/date-time.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/list.d.ts","../../node_modules/@formatjs/ecma402-abstract/types/displaynames.d.ts","../../node_modules/@formatjs/ecma402-abstract/262.d.ts","../../node_modules/@formatjs/ecma402-abstract/index.d.ts","../../node_modules/@formatjs/icu-skeleton-parser/date-time.d.ts","../../node_modules/@formatjs/icu-skeleton-parser/number.d.ts","../../node_modules/@formatjs/icu-skeleton-parser/index.d.ts","../../node_modules/@formatjs/icu-messageformat-parser/types.d.ts","../../node_modules/@formatjs/icu-messageformat-parser/error.d.ts","../../node_modules/@formatjs/icu-messageformat-parser/parser.d.ts","../../node_modules/@formatjs/icu-messageformat-parser/index.d.ts","../../node_modules/intl-messageformat/src/formatters.d.ts","../../node_modules/intl-messageformat/src/core.d.ts","../../node_modules/intl-messageformat/src/error.d.ts","../../node_modules/intl-messageformat/index.d.ts","./src/types.ts","./src/lang-attribute-observer.ts","../phrasebook/lib/types.d.ts","../phrasebook/lib/translation.d.ts","../phrasebook/lib/index.d.ts","../../node_modules/@formatjs/intl-utils/src/diff.d.ts","../../node_modules/@formatjs/intl-utils/src/types.d.ts","../../node_modules/@formatjs/intl-utils/src/plural-rules-types.d.ts","../../node_modules/@formatjs/intl-utils/src/number-types.d.ts","../../node_modules/@formatjs/intl-utils/src/polyfill-utils.d.ts","../../node_modules/@formatjs/intl-utils/src/resolve-locale.d.ts","../../node_modules/@formatjs/intl-utils/src/units.d.ts","../../node_modules/@formatjs/intl-utils/src/relative-time-types.d.ts","../../node_modules/@formatjs/intl-utils/src/list-types.d.ts","../../node_modules/@formatjs/intl-utils/src/displaynames-types.d.ts","../../node_modules/@formatjs/intl-utils/src/invariant.d.ts","../../node_modules/@formatjs/intl-utils/index.d.ts","../../node_modules/intl-format-cache/index.d.ts","./src/memoiser.ts","./src/translate.ts","./src/index.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/@types/accepts/index.d.ts","../../node_modules/@types/babel__code-frame/index.d.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/connect/index.d.ts","../../node_modules/@types/body-parser/index.d.ts","../../node_modules/@types/browserslist-useragent/index.d.ts","../../node_modules/@types/caniuse-api/index.d.ts","../../node_modules/@types/chai/index.d.ts","../../node_modules/@types/chai-dom/index.d.ts","../../node_modules/moment/ts3.1-typings/moment.d.ts","../../node_modules/@types/chart.js/index.d.ts","../../node_modules/@types/qs/index.d.ts","../../node_modules/@types/co-body/index.d.ts","../../node_modules/@types/command-line-args/index.d.ts","../../node_modules/@types/command-line-usage/index.d.ts","../../node_modules/@types/component-emitter/index.d.ts","../../node_modules/@types/content-disposition/index.d.ts","../../node_modules/@types/convert-source-map/index.d.ts","../../node_modules/@types/cookie/index.d.ts","../../node_modules/@types/keygrip/index.d.ts","../../node_modules/@types/range-parser/index.d.ts","../../node_modules/@types/express-serve-static-core/index.d.ts","../../node_modules/@types/mime/index.d.ts","../../node_modules/@types/serve-static/index.d.ts","../../node_modules/@types/express/index.d.ts","../../node_modules/@types/cookies/index.d.ts","../../node_modules/@types/cors/index.d.ts","../../node_modules/@types/d3-color/index.d.ts","../../node_modules/@types/d3-interpolate/index.d.ts","../../node_modules/@types/debounce/index.d.ts","../../node_modules/@types/estree/index.d.ts","../../node_modules/@types/etag/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/glob/index.d.ts","../../node_modules/@types/http-assert/index.d.ts","../../node_modules/@types/http-errors/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/@types/koa-compose/index.d.ts","../../node_modules/@types/koa/index.d.ts","../../node_modules/@types/koa-compress/index.d.ts","../../node_modules/@types/koa-etag/index.d.ts","../../node_modules/@types/koa-send/index.d.ts","../../node_modules/@types/koa-static/index.d.ts","../../node_modules/@types/koa__cors/index.d.ts","../../node_modules/@types/lru-cache/index.d.ts","../../node_modules/@types/mime-types/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/mocha/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts","../../node_modules/@types/parse5/lib/tree-adapters/default.d.ts","../../node_modules/@types/parse5/index.d.ts","../../node_modules/@types/path-is-inside/index.d.ts","../../node_modules/@types/resolve/index.d.ts","../../node_modules/@types/sinon/node_modules/@sinonjs/fake-timers/types/fake-timers-src.d.ts","../../node_modules/@types/sinon/index.d.ts","../../node_modules/@types/sinon-chai/index.d.ts","../../node_modules/@types/trusted-types/lib/index.d.ts","../../node_modules/@types/trusted-types/index.d.ts","../../node_modules/@types/whatwg-url/index.d.ts","../../node_modules/@types/ws/index.d.ts"],"fileInfos":[{"version":"89f78430e422a0f06d13019d60d5a45b37ec2d28e67eb647f73b1b0d19a46b72","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940",{"version":"abba1071bfd89e55e88a054b0c851ea3e8a494c340d0f3fab19eb18f6afb0c9e","affectsGlobalScope":true},{"version":"927cb2b60048e1395b183bf74b2b80a75bdb1dbe384e1d9fac654313ea2fb136","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"4378fc8122ec9d1a685b01eb66c46f62aba6b239ca7228bb6483bcf8259ee493","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"d071129cba6a5f2700be09c86c07ad2791ab67d4e5ed1eb301d6746c62745ea4","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"12f4cfe2fe60b810c3174537bc2ddb20c1067b7768643d12cb1266fd183afb75","9b7a271fe79492e92c3f40bf99eb0144fe64b8f5ecd09616cf590ea37d241b61","13f6a3df166c16f3dcf81a87c26d9803c7fd7895e7fcc71b7c149f52ee24b639","1ee5885d5027d5193ecacf31e8ed6b6f03a3a6de2e4fb37a3280b71e65915af1","494bf82a2bd0cf241e89fdb21dd46f273e530f49f6599a985b7852f7322fc192","0edc48b402f3efa10343c59746b269ec3cab88ea08be63d73014c78d372e94ab","ba9f6d4253a5b902ddb60345aead6f691b89292f9387068bf99d9928e839a9af","eabe0e0f52a2c58966cbbed77ea6b13ff3efdab453d411c88fbf91ba4964a5ff","257369022582c2220790c87a487fda57b264e1dcb16bb9ce34172345e7f933f3","5753b9cbd5ea496f68d4459b83a5091c0dbb33a896434d2f43c5f5b9e3f4ffa8","abbf59b2100d962d82f9c842c4a20cb5db35aee74175e5c942b361138870d8eb","f408d89ab81d183abcdaaf9961ebe9ef1a892064c5790b4b87af0b7d05a43240","eb974217eac7354c2ee28c68b1fefb3aebb5839c7da0dc8b2e1670eb1bb73fc3","20f33c814aaef326c0e3f2e37f627f8e3b22d85b0859a1b47c1013f1eaa0b628","4c32e274c22c133d96fa3bd1e66af0e213c88d37372598442247e1ea2b3f3616","b446fafdc7c077bec8f3117e200fd8e8606799ef212804a58bae3b7cd3ac353c","bfd64f97f7e12d92ad6c50caddd7a5e91080ccf15e887d4574646dda09b5b8d5","4475d3f490464dd09f29d5a590392ebc9f3026a79f2f0ba247f7b3f2acc01655","09eae5649c2133876c6c07137142b2786f858ef7f2269c24c2320dc950ab1866","f2061152503791189f5fcee1e6000e1db3601a60dba32011e6ee2c3a12f23510","03e162e0e48312346141962cf4dd2aa1569a58feff88a33ac579840d24c3d165","29f7e25ee9edb7ac875d3fea892e6328a439b55b6dd994431d55315dced635ae","a1e456a92e80e7884ed0bf9c83eac71e31a7ec949eb5982d36811154bed6fb1f","3a378f155a084b9722c89ffc3d2b2ab62f50603aa80fd5d5614ade949007a891","4a254ae095bd9e42bb24b0b539fa3ad0889089f0f56c7f8b63acf2adfd4ada66","ca32554db1a6962f85143e6e9216883c0e439408541d4379eac2b80aed60cb5f","64a89eb80302eca86236ef2f40dd6b914aa42f35a7384893e7fe864b6961695f","99bb361d32c05762ab4ac1d647f750eb2e280070e30011b5feff952327d07844","19a5ca90bcba89bd8fcb7e02c379ca017dce60050e1e7671bf45f68d921870cc","84747db6b80b4e5567c21a82cbaeda7a9810307ba4023ff5ffcd90e1f7713172","214c8b4c06c4858b93230b16745a7a480cef4524b0e7745ef64755ee9b81aaf6","dea3cf3a10d7caaededded8f0a794ce9f8b17da31ccbb8ee9159d7bd2fce42ac","51dc756ec3df8a7599ef0d16268cf7cd429d5d226ceb53cf8f85657a4ade6c29","4480de0ded16219521ccf012892091e5ec44863039c965ff1664f7f4799f4126","eeaf71356de97a805f3dfb0dd93a16196da7d2480955063a79216a8fd4f1414b","c38905d6fda359cf384b9306d6b9782a1b055e6670c7894b0ffda04c81b8e59a","6beedecf272c57713b780ee23040cf45adbfedb92f893b4be80ad11fe42c1cbe","3e873837e506db540c03f5e1069427b11ed7e1a016bd29c0d83fb4c4ea9d519f","b85018c97705258ff235ae9ac44d532ab3546eb5d0354123bd781e8bea3bdc18","4386eea018b5f6eadd8dc9dc407642369bea81dcaebe64dc30285e736b102343","69818b78af77862718c44e8236defa5fd318281de3ea1a8d43f3b350439589a4","cd41024509c20e761a3bd6ce8a976f1a79ae8193e1fdba46396744136d1b6bd0","81b6d7ff019d77399bdebae52a370011cea01943fc7c2016c3dc846839206df0","407bddb7f03e070e7969eb2bc19bf931cb76ddbe2761326b8ca1f0cccb6bd35b","1135099814b6525159e76fa51f295bf05942f0d9ef84c7030f0a7ad7563531f5","5cca0d064ddbcbde07a28b74038b3f5c6b9cd41d328fd927b060da5d3c59da7b","aa29954e994b2c4566ff98b0ca2313aeffcf60924aa140053efd916a15127c6a","4e799b631914398921cd8edda132320100399522cc3c8809d7c4dad89a697c5b","b4432e5754516015885b940e22df3a7d6f029cfab9645c23a1aec10affc945ff","f1b6f13db02a0064e1c50fe2b09f219b04422786b85491c8babdb3f43dc52a68","7a0f79b526b2c8d5ef2f01abd10b2ed16274f6824cfe88e5033fdb57fb4ba7dd","d6fb032aba2e16463502e909e7022a006430ba80f04eae6a86932b66aea29364","d63cf71176fe30f0a3120a95fd0669b130b40bd560ddccfd799b089a2d4ed6b6","93f1f0dd74f1f2816c40c13c916952d7dbcdb69606d86fb28d984dd2fba2a067","0366b3fa8d01da15186ac6a09eab7a43ade5d44b9b100fc7fa9d311a25fe505c","1eaedf821c75a94b7cbbd636643312bd53694decb71be681ac3e414a140b93e3","5f16227234824bb1d4a857c53c384217185f6f373b6863fbbc50136baa56a6cc","9291d6299e19b59a45f734ae6c97fc6f642c1009b772e138b91db197ff115eef","30ec44129f22584b60afdfcd7e783b8991ad6d50895a39c5bb3a267adf8563ad","e14cb76ee0ae7632f38c738a71f540b9ec9b4f5675704688dc6059addc813b34","b4423ffe74183f243190a9f0ecd74f71a6c4ee245c622222c1b647a6703bb76e","6503ce675bb2e46edc40560059b6a63b6535a25ceb414ae096ec8ea9ffc57a06","57dfc916942b39303628af26fe856b9fa0bf59e8b6e0c3cabb286b6a3921bea7","387d0471a01ff536b633ef7acf4a2eca9c64c6041ffe7b85794933510e5f99a7","16b42aa05bfdc4738eb95aba97209316f9a1cb7cc138a7b4ea3acc6f09cfd3c7","6967c67788bab272bd6661a60a8716a5916163525f1626a5a857e5a0639d8362","73739a929041eeda79c43209e739f230252343bd8e28463d2384c61ff5860029","f7a890b4366c8cb3b22ce22437dd13a18a8f26013a0da11232a5717c166976f4","82877fa6703de854be5c55043a87bc2a94d48b042669154a1eac03c210ba76b1","0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"c2ab70bbc7a24c42a790890739dd8a0ba9d2e15038b40dff8163a97a5d148c00","affectsGlobalScope":true},"422dbb183fdced59425ca072c8bd09efaa77ce4e2ab928ec0d8a1ce062d2a45a",{"version":"2a801b0322994c3dd7f0ef30265d19b3dd3bae6d793596879166ed6219c3da68","affectsGlobalScope":true},"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894",{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","bcc8caf03ee65fe8610d258752f255fbdddbb2e4de7b6c5628956a5a0d859ec8","34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","cc0b61316c4f37393f1f9595e93b673f4184e9d07f4c127165a490ec4a928668","f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79",{"version":"c28e5baab1b53377c90d12970e207a2644bc3627840066449e37e2a59125d07e","affectsGlobalScope":true},"7a5459efa09ea82088234e6533a203d528c594b01787fb90fba148885a36e8b6","ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","fce6a1a1553ff7d54ffb8bb3ae488c9cb5f2f4f4e52212c1abe40f544819ef35","ad41bb744149e92adb06eb953da195115620a3f2ad48e7d3ae04d10762dae197","bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"5d0a9ea09d990b5788f867f1c79d4878f86f7384cb7dab38eecbf22f9efd063d","12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304",{"version":"8207e7e6db9aa5fc7e61c8f17ba74cf9c115d26f51f91ee93f790815a7ea9dfb","affectsGlobalScope":true},"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"cfe724f7c694aab65a9bdd1acb05997848c504548c9d4c71645c187a091cfa2a","5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248",{"version":"3345c276cab0e76dda86c0fb79104ff915a4580ba0f3e440870e183b1baec476","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","e383ff72aabf294913f8c346f5da1445ae6ad525836d28efd52cbadc01a361a6","f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7","1835259a20b9fa6b1882931375b69ae5978195f2b139b4e0db51ec8319261649","b52cd693219a63dd21282ac99a7bf55f77cbe8a91f097968856419cc2e05f017","3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"267af67ea520cabd16402522756b19ac63d9e2c1c86e7c4d1ddeb991c32e12c9","6738101ae8e56cd3879ab3f99630ada7d78097fc9fd334df7e766216778ca219","b95f751a58d283cb5e32f2655361f6e2a27f0368f69edc463a3472aae21d1303","d5d7b68f5369a210c235cd65458369888f8b839192d088c964f21cab3ac954db","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","64b867c61effed7b5bc0cc06b3d8eac23b067a3fba581fc7d3c292fa593e6a45","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","dd5647a9ccccb2b074dca8a02b00948ac293091ebe73fdf2e6e98f718819f669","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","9eb49645576740f4fb4cca25cadbc0d7e61a218c215e8578dd899b01d5db89d4","d59cea1102bba38053ca19260e37bda2715df10d147c40db92035c0420489358",{"version":"c8747693e5872ad5ef3aa016731a06915e1c34dae987829d9aa5bd40c7a2c54b","affectsGlobalScope":true},{"version":"d95d76d79a0351572ec5b1a6cc1e5c4bce1be82eedeed7278d6f31ea1059fa69","affectsGlobalScope":true},"f97edc4d3b4dd0b32766e9633086497565c37657fb591cc84a35864db4bc2fc5","9f47decc2af980bb05b5c76464c08d23d28363ddf8d5352120f4026b083af8ac","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc","495da6628b9474e31d0636d66c54448bb8d84dbce902e8f70539ef6a525a2d7b","629766229f541d92210f30a92b6038568ec165fab14b7ee53bdf13667da37ca3","29193c018378ca9c8033eaa974c02c1f503e8fcd8a2bf406057c53f7d3fa17a8","567a315b240a060518c532d38a46803b6d35e75dc14a9be435b6dc20c816741e","e4dfe0e169e1cb3c8dd0713972e94e2141595c840ed7387623ac8b29fc6c35b8","c1ea344dc311b2c539ed1e3b4e17e9f4853dc7f348366b51f1d8a09a40fb223f","117ffeecf6c55e25b6446f449ad079029b5e7317399b0a693858faaaea5ca73e","ce013414484233b24f42c0fcfca48a60bb66ab4e13c82953662305e8f1ee4925","16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c",{"version":"548311a7ece846e4b9c70c3cb5ac0776559957ff6fcedfde938ebe2774439509","affectsGlobalScope":true},"84e3bbd6f80983d468260fdbfeeb431cc81f7ea98d284d836e4d168e36875e86","0b85cb069d0e427ba946e5eb2d86ef65ffd19867042810516d16919f6c1a5aec","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","eb96a2321f717bccc3e49e104e299152984b927ea4546b559ae631c06565819c","6fbd58e4015b9ae31ea977d4d549eb24a1102cc798b57ec5d70868b542c06612","c168e28f723898f77b8140887b06baced58aa902327aea3746571756f7a721b5","c24944ff5879b91478b153cf16802b9c6a10cfa3b7d85855813a08431ec2d36a","68c559681a043ca6d622debcce75c4d82446fec08e06bf1066f71d6c325f224e","89ccbe04e737ce613f5f04990271cfa84901446350b8551b0555ddf19319723b","7e510fb0ca02da05976eb0dbfeb42bdb0dc64b78acbb3b5ecf77ddd57ce08cda","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","e98185f4249720ace1921d59c1ff4612fa5c633a183fc9bf28e2e7b8e3c7fd51","ee736349ccbd61aa257ef9811668109d57ab9e9dea654b6ccd7bb274e5584a20","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4","5006668996956580886022c05108e32c742823e1b5652aff7914917233731518","0c52f5366c9146ad79b546e70162c659972a2798522806e8283f3137feab3965","d1494c6dbbe5fca590ca73ccd21d013e6617e9ea19773c9ca7c0f3214df86628","97395602cea957af0cf517d84b651a07e010192db667ba379d36bec40cdbef52","f88d8a4ba9ad0270309cf46121d3dc9fb055bea08ac3e699d2b4673b1e6a25ea","b6360d5b5a52a1d6fc6b9838135f766b638e7c7a03b227974344200be603c150","c2076e1fa255efd41a6f0b6b3b83d4340d88122073e98f9b223dcea8437ee46f","6d727c1f6a7122c04e4f7c164c5e6f460c21ada618856894cdaa6ac25e95f38c","c757372a092924f5c16eaf11a1475b80b95bb4dae49fe3242d2ad908f97d5abe","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05",{"version":"c4c03cf65951d980ba618ae9601d10438730803fc9c8a1f7b34af8739981e205","affectsGlobalScope":true},"6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","fc37aca06f6b8b296c42412a2e75ab53d30cd1fa8a340a3bb328a723fd678377","5f2c582b9ef260cb9559a64221b38606378c1fabe17694592cdfe5975a6d7efa","a0b27b55228349ea85cecd9479ace1009697af44b66527f30526a1539d4e78ea","8a19491eba2108d5c333c249699f40aff05ad312c04a17504573b27d91f0aede","6b40029289530423f407a22755c85b81740f9acfd88d2b53564f8c1657c26660","50a5b297e6c91df4f6068d98467a5e7ba4eeb888b9376757734dd4b1dfcdacd4",{"version":"0fd3b5704bf037608646df5aa053fd06819ff69302ff6ada9736c300f79df852","affectsGlobalScope":true},"2fcd2d22b1f30555e785105597cd8f57ed50300e213c4f1bbca6ae149f782c38",{"version":"bb4248c7f953233ac52332088fac897d62b82be07244e551d87c5049600b6cf7","affectsGlobalScope":true},"0f048a7e91a4c764f08be48e156c9d274a038cb454d312427214ab4d34a9a5ab","bc81aff061c53a7140270555f4b22da4ecfe8601e8027cf5aa175fbdc7927c31"],"options":{"declaration":true,"declarationMap":false,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"module":5,"noEmitHelpers":true,"outDir":"./lib","rootDir":"./src","sourceMap":false,"strict":true,"target":4},"fileIdsList":[[153,163],[153],[55,153],[43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,153],[53,153],[53,54,153],[53,55,153],[81,153],[81,83,153],[81,82,153],[77,80,153],[78,79,153],[77,153],[94,95,96,97,98,99,100,101,102,103,104,153],[95,153],[95,96,153],[97,153],[128,153,160],[153,163,164,165,166,167],[153,163,165],[128,153,160,169],[153,173],[153,175],[128,153,160,177],[128,153,160,169,185,190],[128,153],[153,193],[153,160],[125,128,153,160,177,186],[153,170,177,187,189],[125,126,153,160,198],[153,202],[153,203],[153,207],[153,158,160,207],[153,197,207],[126,153,207],[153,207,210],[125,128,129,133,139,152,153,160,161,182,185,191,200,201,206],[110,153],[113,153],[114,119,153],[115,125,126,133,142,152,153],[115,116,125,133,153],[117,153],[118,119,126,134,153],[119,142,149,153],[120,122,125,133,153],[121,153],[122,123,153],[124,125,153],[125,153],[125,126,127,142,152,153],[125,126,127,142,153],[128,133,142,152,153],[125,126,128,129,133,142,149,152,153],[128,130,142,149,152,153],[110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159],[125,131,153],[132,152,153],[122,125,133,142,153],[134,153],[135,153],[113,136,153],[137,151,153,157],[138,153],[139,153],[125,140,153],[140,141,153,155],[125,142,143,144,153],[142,144,153],[142,143,153],[145,153],[146,153],[125,147,148,153],[147,148,153],[119,133,142,149,153],[150,153],[133,151,153],[114,128,139,152,153],[119,153],[142,153,154],[153,155],[153,156],[114,119,125,127,136,142,152,153,155,157],[142,153,158],[153,219],[153,220],[128,153,160,188],[153,173,224],[153,223],[153,226],[125,128,130,133,142,149,152,153,158,160],[85,86,87,153],[84,85,153],[77,84,153],[41,153],[41,42,89,90,108,153],[41,88,89,106,153],[41,42,89,93,105,107,153],[41,84,88,153],[91,92,153],[91,153]],"referencedMap":[[165,1],[163,2],[76,2],[43,2],[44,2],[45,2],[46,2],[47,2],[48,2],[49,2],[50,2],[51,2],[52,2],[56,3],[57,3],[58,2],[59,3],[60,3],[61,3],[62,3],[63,3],[64,3],[65,3],[66,3],[67,3],[68,2],[69,2],[71,2],[77,4],[53,2],[73,2],[75,5],[74,5],[55,6],[54,7],[72,6],[70,2],[82,8],[84,9],[83,10],[81,11],[78,2],[80,12],[79,13],[105,14],[94,2],[103,15],[104,2],[102,15],[97,16],[96,15],[98,17],[101,16],[99,15],[95,2],[100,2],[161,18],[162,2],[168,19],[164,1],[166,20],[167,1],[170,21],[171,2],[172,2],[174,22],[173,2],[176,23],[178,24],[179,2],[180,2],[181,2],[169,18],[182,2],[183,2],[184,2],[191,25],[192,26],[193,2],[194,27],[195,2],[196,2],[197,28],[187,29],[190,30],[199,31],[200,2],[201,2],[202,2],[203,32],[204,33],[205,2],[185,2],[206,34],[208,35],[209,36],[210,37],[211,38],[207,39],[212,34],[213,2],[214,2],[188,2],[198,2],[215,2],[216,2],[110,40],[111,40],[113,41],[114,42],[115,43],[116,44],[117,45],[118,46],[119,47],[120,48],[121,49],[122,50],[123,50],[124,51],[125,52],[126,53],[127,54],[112,2],[159,2],[128,55],[129,56],[130,57],[160,58],[131,59],[132,60],[133,61],[134,62],[135,63],[136,64],[137,65],[138,66],[139,67],[140,68],[141,69],[142,70],[144,71],[143,72],[145,73],[146,74],[147,75],[148,76],[149,77],[150,78],[151,79],[152,80],[153,81],[154,82],[155,83],[156,84],[157,85],[158,86],[217,2],[218,2],[220,87],[219,88],[221,2],[177,2],[186,2],[222,28],[189,89],[225,90],[224,91],[223,2],[227,92],[226,2],[228,28],[229,93],[106,2],[88,94],[86,95],[87,2],[85,96],[175,2],[41,2],[8,2],[9,2],[11,2],[10,2],[2,2],[12,2],[13,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[3,2],[4,2],[23,2],[20,2],[21,2],[22,2],[24,2],[25,2],[26,2],[5,2],[27,2],[28,2],[29,2],[30,2],[6,2],[31,2],[32,2],[33,2],[34,2],[7,2],[39,2],[35,2],[36,2],[37,2],[38,2],[1,2],[40,2],[42,97],[109,98],[90,97],[107,99],[108,100],[89,101],[93,102],[92,103],[91,2]],"exportedModulesMap":[[165,1],[163,2],[76,2],[43,2],[44,2],[45,2],[46,2],[47,2],[48,2],[49,2],[50,2],[51,2],[52,2],[56,3],[57,3],[58,2],[59,3],[60,3],[61,3],[62,3],[63,3],[64,3],[65,3],[66,3],[67,3],[68,2],[69,2],[71,2],[77,4],[53,2],[73,2],[75,5],[74,5],[55,6],[54,7],[72,6],[70,2],[82,8],[84,9],[83,10],[81,11],[78,2],[80,12],[79,13],[105,14],[94,2],[103,15],[104,2],[102,15],[97,16],[96,15],[98,17],[101,16],[99,15],[95,2],[100,2],[161,18],[162,2],[168,19],[164,1],[166,20],[167,1],[170,21],[171,2],[172,2],[174,22],[173,2],[176,23],[178,24],[179,2],[180,2],[181,2],[169,18],[182,2],[183,2],[184,2],[191,25],[192,26],[193,2],[194,27],[195,2],[196,2],[197,28],[187,29],[190,30],[199,31],[200,2],[201,2],[202,2],[203,32],[204,33],[205,2],[185,2],[206,34],[208,35],[209,36],[210,37],[211,38],[207,39],[212,34],[213,2],[214,2],[188,2],[198,2],[215,2],[216,2],[110,40],[111,40],[113,41],[114,42],[115,43],[116,44],[117,45],[118,46],[119,47],[120,48],[121,49],[122,50],[123,50],[124,51],[125,52],[126,53],[127,54],[112,2],[159,2],[128,55],[129,56],[130,57],[160,58],[131,59],[132,60],[133,61],[134,62],[135,63],[136,64],[137,65],[138,66],[139,67],[140,68],[141,69],[142,70],[144,71],[143,72],[145,73],[146,74],[147,75],[148,76],[149,77],[150,78],[151,79],[152,80],[153,81],[154,82],[155,83],[156,84],[157,85],[158,86],[217,2],[218,2],[220,87],[219,88],[221,2],[177,2],[186,2],[222,28],[189,89],[225,90],[224,91],[223,2],[227,92],[226,2],[228,28],[229,93],[106,2],[88,94],[86,95],[87,2],[85,96],[175,2],[41,2],[8,2],[9,2],[11,2],[10,2],[2,2],[12,2],[13,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[3,2],[4,2],[23,2],[20,2],[21,2],[22,2],[24,2],[25,2],[26,2],[5,2],[27,2],[28,2],[29,2],[30,2],[6,2],[31,2],[32,2],[33,2],[34,2],[7,2],[39,2],[35,2],[36,2],[37,2],[38,2],[1,2],[40,2],[42,97],[109,98],[90,97],[107,99],[108,100],[89,101],[93,102],[92,103],[91,2]],"semanticDiagnosticsPerFile":[165,163,76,43,44,45,46,47,48,49,50,51,52,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,77,53,73,75,74,55,54,72,70,82,84,83,81,78,80,79,105,94,103,104,102,97,96,98,101,99,95,100,161,162,168,164,166,167,170,171,172,174,173,176,178,179,180,181,169,182,183,184,191,192,193,194,195,196,197,187,190,199,200,201,202,203,204,205,185,206,208,209,210,211,207,212,213,214,188,198,215,216,110,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,112,159,128,129,130,160,131,132,133,134,135,136,137,138,139,140,141,142,144,143,145,146,147,148,149,150,151,152,153,154,155,156,157,158,217,218,220,219,221,177,186,222,189,225,224,223,227,226,228,229,106,88,86,87,85,175,41,8,9,11,10,2,12,13,14,15,16,17,18,19,3,4,23,20,21,22,24,25,26,5,27,28,29,30,6,31,32,33,34,7,39,35,36,37,38,1,40,42,109,90,107,108,89,93,92,91]},"version":"4.5.4"}