@intlayer/types 9.1.1 → 9.1.2
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.
|
@@ -96,6 +96,37 @@ type DictionaryQualifierType = "variant" | "item";
|
|
|
96
96
|
* values — an array registers the same content under every listed variant id.
|
|
97
97
|
*/
|
|
98
98
|
type DictionaryVariantValue = string | Record<string, string | number>;
|
|
99
|
+
/**
|
|
100
|
+
* A variant coordinate as pinned by a **selector** (or by a provider default):
|
|
101
|
+
* one value, or an **ordered preference chain**.
|
|
102
|
+
*
|
|
103
|
+
* A chain is tried left to right against the entries the key declares, and the
|
|
104
|
+
* first declared one wins; when none is declared the implicit `default` entry
|
|
105
|
+
* is used, exactly as for a single value. So `['black-friday', 'promo']` reads
|
|
106
|
+
* as "black-friday if this key has one, else promo, else default".
|
|
107
|
+
*
|
|
108
|
+
* Note this is the mirror image of the array accepted by the `variant` field of
|
|
109
|
+
* a {@link Dictionary}: there an array **declares** one entry per element
|
|
110
|
+
* (fan-out), here it **consumes** them in priority order.
|
|
111
|
+
*/
|
|
112
|
+
type DictionaryVariantChain = DictionaryVariantValue | readonly DictionaryVariantValue[];
|
|
113
|
+
/**
|
|
114
|
+
* Variant default carried by a framework provider (`<IntlayerProvider variant>`)
|
|
115
|
+
* and applied to every dictionary read below it, the way `locale` already is.
|
|
116
|
+
*
|
|
117
|
+
* Three forms:
|
|
118
|
+
* - `'school1'` — one named variant for every key
|
|
119
|
+
* - `['school1', 'default']` — an ordered {@link DictionaryVariantChain}
|
|
120
|
+
* - `{ key1: 'school1', default: 'base' }` — per dictionary key, with the
|
|
121
|
+
* reserved `default` entry covering every key not listed
|
|
122
|
+
*
|
|
123
|
+
* On a provider a plain object is **always** read as the per-key map, never as
|
|
124
|
+
* a structured variant value — the two are structurally identical. To pin a
|
|
125
|
+
* structured variant globally, nest it under an entry:
|
|
126
|
+
* `variant={{ default: { id: 'prod_abc' } }}`.
|
|
127
|
+
*/
|
|
128
|
+
type ProviderVariantMap<Key extends string = DictionaryKey> = Partial<Record<Key | "default", DictionaryVariantChain>>;
|
|
129
|
+
type ProviderVariant<Key extends string = DictionaryKey> = string | readonly DictionaryVariantValue[] | ProviderVariantMap<Key>;
|
|
99
130
|
/**
|
|
100
131
|
* Output of the merge step for a key whose dictionaries declare one or more
|
|
101
132
|
* qualifier dimensions (`variant`, `item`).
|
|
@@ -143,6 +174,8 @@ type QualifiedDictionaryGroup = {
|
|
|
143
174
|
*
|
|
144
175
|
* - `{ item: 2 }` selects a collection item (1-based index)
|
|
145
176
|
* - `{ variant: 'black-friday' }` selects a named variant
|
|
177
|
+
* - `{ variant: ['black-friday', 'promo'] }` selects the first of an ordered
|
|
178
|
+
* preference chain that the key actually declares
|
|
146
179
|
* - `{ variant: { id: 'prod_abc', userId: '123' } }` selects a structured
|
|
147
180
|
* variant; the object must equal the variant declared on the dictionary
|
|
148
181
|
* - `locale` composes with any of the above and overrides the context locale
|
|
@@ -154,7 +187,7 @@ type DictionarySelector = {
|
|
|
154
187
|
*/
|
|
155
188
|
locale?: DeclaredLocales;
|
|
156
189
|
item?: number;
|
|
157
|
-
variant?:
|
|
190
|
+
variant?: DictionaryVariantChain;
|
|
158
191
|
};
|
|
159
192
|
type QualifiedEntryContent<Entry> = Entry extends {
|
|
160
193
|
content: infer Content;
|
|
@@ -198,8 +231,12 @@ type CoordinateEquals<Left, Right> = [StringifyCoordinate<Left>] extends [String
|
|
|
198
231
|
* precisely; an object variant broadens to `string` (it matches any declared
|
|
199
232
|
* variant entry, since the object identity is not reconstructable at the type
|
|
200
233
|
* level). An absent selector defaults to the `'default'` variant.
|
|
234
|
+
*
|
|
235
|
+
* A {@link DictionaryVariantChain} broadens to the **union** of its entries:
|
|
236
|
+
* which one wins depends on what the key declares, which is a runtime fact, so
|
|
237
|
+
* the content type is the union of every outcome the chain can produce.
|
|
201
238
|
*/
|
|
202
|
-
type SelectorVariant<Selector> = "variant" extends keyof Selector ? Selector["variant" & keyof Selector] extends (infer Variant) ? Variant extends string ? Variant : string : never : "default";
|
|
239
|
+
type SelectorVariant<Selector> = "variant" extends keyof Selector ? Selector["variant" & keyof Selector] extends (infer Variant) ? Variant extends readonly (infer ChainEntry)[] ? ChainEntry extends string ? ChainEntry : string : Variant extends string ? Variant : string : never : "default";
|
|
203
240
|
/** The item a selector pins, or `undefined` when it leaves the axis open. */
|
|
204
241
|
type SelectorItem<Selector> = "item" extends keyof Selector ? Selector["item" & keyof Selector] : undefined;
|
|
205
242
|
/**
|
|
@@ -334,10 +371,15 @@ type HasDefaultVariant<T> = "default" extends VariantIdsOfGroup<T> ? true : fals
|
|
|
334
371
|
* never accepted in their serialized string form (`'id=abc&userId=123'`) —
|
|
335
372
|
* that is a storage encoding, not part of the API.
|
|
336
373
|
*/
|
|
374
|
+
type SelectableVariantsOf<T, KnownVariants> = NamedVariantIds<EntryVariant<GroupEntryUnion<T>>> | (HasDefaultVariant<T> extends true ? KnownVariants : never) | DictionaryObjectVariantsOf<T>;
|
|
337
375
|
type DictionarySelectorForGroup<T, KnownVariants = DeclaredVariants> = [GroupEntryUnion<T>] extends [never] ? DictionarySelector : {
|
|
338
376
|
locale?: DeclaredLocales;
|
|
339
377
|
} & ([EntryVariant<GroupEntryUnion<T>>] extends [never] ? unknown : {
|
|
340
|
-
|
|
378
|
+
/**
|
|
379
|
+
* One variant, or an ordered preference chain of them — every value
|
|
380
|
+
* accepted alone is also accepted as a chain entry.
|
|
381
|
+
*/
|
|
382
|
+
variant?: SelectableVariantsOf<T, KnownVariants> | readonly SelectableVariantsOf<T, KnownVariants>[];
|
|
341
383
|
}) & ([EntryItem<GroupEntryUnion<T>>] extends [never] ? unknown : {
|
|
342
384
|
item?: EntryItem<GroupEntryUnion<T>> | number | (string & {});
|
|
343
385
|
});
|
|
@@ -702,5 +744,5 @@ type DictionaryWithoutSchema<ContentType, FetchableNode> = {
|
|
|
702
744
|
type Dictionary<ContentType = undefined, SchemaKey extends SchemaKeys | undefined = undefined, FetchableNode = false> = DictionaryBase & (SchemaKey extends SchemaKeys ? DictionaryWithSchema<ContentType, FetchableNode, SchemaKey> : undefined extends SchemaKey ? DictionaryWithoutSchema<ContentType, FetchableNode> | DictionaryWithSchema<ContentType, FetchableNode> : never);
|
|
703
745
|
type GetSubPath<T, P> = P extends `${infer K}.${infer Rest}` ? K extends keyof T ? GetSubPath<T[K], Rest> : never : P extends keyof T ? T[P] : T;
|
|
704
746
|
//#endregion
|
|
705
|
-
export { ContentAutoTransformation, ContentNode, Dictionary, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryLocation, DictionaryQualifierType, DictionarySelector, DictionarySelectorForGroup, DictionaryVariantIdsOf, DictionaryVariantValue, Fill, GetSubPath, ImportMode, LocalDictionaryId, QualifiedDictionaryGroup, ResolveQualifiedDictionaryContent, TypedNode };
|
|
747
|
+
export { ContentAutoTransformation, ContentNode, Dictionary, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryLocation, DictionaryQualifierType, DictionarySelector, DictionarySelectorForGroup, DictionaryVariantChain, DictionaryVariantIdsOf, DictionaryVariantValue, Fill, GetSubPath, ImportMode, LocalDictionaryId, ProviderVariant, ProviderVariantMap, QualifiedDictionaryGroup, ResolveQualifiedDictionaryContent, TypedNode };
|
|
706
748
|
//# sourceMappingURL=dictionary.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dictionary.d.ts","names":[],"sources":["../../src/dictionary.ts"],"mappings":";;;;KAUK;KAEA;EACH,UAAU;;UAGK,UAAU,+BAA+B;KAErD,qBAAqB,aACxB,eACG,YAAY,YAAY,QAAQ,YAAY;KAErC,YACV,eACA,uBACA,WAAW,sBAAsB,WAAW,KAE1C,WACA,UAAU,cACR,eAAe,YAAY,cAC5B,6BAA6B,qBAAqB;KAGlD,QAAQ,KAAK;KAEb,yBAAyB,GAAG,iBAAiB,iBAAiB,OAG/D,YAAY,GAAG,iBAAiB,oBAAoB,GAAG;KAGtD,0BAA0B,GAAG,oBAC/B,WAAW,IAAI,oBAAoB,EAAE,IAAI;KAIvC,oBACH,UACA,wBACE,0BACA,QAAQ,yBACN,yBAAyB,UAAU,iBAE/B,YAAY,UAAU,iBACtB,0BAA0B,UAAU,iBAC1C,YAAY,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0Dd,iBAER,kBACA,QAAQ,OAAO,2BAA2B;KAElC;KACA;;;;;;;;;;;;;KAcA;;;;;;;;;;;KAYA,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"dictionary.d.ts","names":[],"sources":["../../src/dictionary.ts"],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ import { ALL_LOCALES, Locale } from "./allLocales.js";
|
|
|
3
3
|
import { DeclaredLocales, DeclaredVariants, DictionaryKeys, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, DictionarySelectorForKey, ExtractSelectorLocale, GetLocaleLang, LocalesValues, LocalizedUrl, PathWithoutLocale, RequiredLocales, ResolvedDefaultLocale, ResolvedEditor, ResolvedRoutingMode, Schema, SchemaKeys, StrictModeLocaleMap } from "./module_augmentation.js";
|
|
4
4
|
import { FilePathPattern, FilePathPatternContext, FilePathPatternFunction } from "./filePathPattern.js";
|
|
5
5
|
import { ARRAY, BOOLEAN, CONDITION, ENUMERATION, FILE, GENDER, HTML, INSERTION, MARKDOWN, NESTED, NULL, NUMBER, NodeType, OBJECT, PLUGIN_NODE_TYPES, PLURAL, PREACT_NODE, REACT_NODE, SELECT, SOLID_NODE, TEXT, TRANSLATION, TypedNodeModel, UNKNOWN, formatNodeType } from "./nodeType.js";
|
|
6
|
-
import { ContentAutoTransformation, ContentNode, Dictionary, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryLocation, DictionaryQualifierType, DictionarySelector, DictionarySelectorForGroup, DictionaryVariantIdsOf, DictionaryVariantValue, Fill, GetSubPath, ImportMode, LocalDictionaryId, QualifiedDictionaryGroup, ResolveQualifiedDictionaryContent, TypedNode } from "./dictionary.js";
|
|
6
|
+
import { ContentAutoTransformation, ContentNode, Dictionary, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryLocation, DictionaryQualifierType, DictionarySelector, DictionarySelectorForGroup, DictionaryVariantChain, DictionaryVariantIdsOf, DictionaryVariantValue, Fill, GetSubPath, ImportMode, LocalDictionaryId, ProviderVariant, ProviderVariantMap, QualifiedDictionaryGroup, ResolveQualifiedDictionaryContent, TypedNode } from "./dictionary.js";
|
|
7
7
|
import { MergedDictionaryOutput, MergedDictionaryResult, Plugin, UnmergedDictionaryOutput, UnmergedDictionaryResult } from "./plugin.js";
|
|
8
8
|
import { AiConfig, AiProviderConfigMap, AiProviders, AnalyticsConfig, BuildConfig, CommonAiConfig, CompilerConfig, ConfigSchema, ContentConfig, CookiesAttributes, CustomIntlayerConfig, CustomRoutingConfig, DictionaryConfig, EditorConfig, InternationalizationConfig, IntlayerConfig, LogConfig, LogFunctions, ProcessedCookieAttributes, ProcessedStorageAttributes, RewriteObject, RewriteRule, RewriteRules, RoutingConfig, RoutingStorageInput, StorageAttributes, StrictMode, SystemConfig, URLType } from "./config.js";
|
|
9
9
|
import { ArrayNode, ConditionNode, EnumerationNode, FileNode, GenderNode, HTMLNode, InsertionNode, KeyPath, MarkdownNode, NestedNode, ObjectNode, PluralNode, ReactNode, SelectNode, TranslationNode } from "./keyPath.js";
|
|
10
|
-
export { ALL_LOCALES, ARRAY, AiConfig, AiProviderConfigMap, AiProviders, AnalyticsConfig, ArrayNode, BOOLEAN, BuildConfig, CONDITION, CommonAiConfig, CompilerConfig, ConditionNode, ConfigSchema, ContentAutoTransformation, ContentConfig, ContentNode, CookiesAttributes, CustomIntlayerConfig, CustomRoutingConfig, DeclaredLocales, DeclaredVariants, Dictionary, DictionaryConfig, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryKeys, DictionaryLocation, DictionaryQualifierType, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, DictionarySelector, DictionarySelectorForGroup, DictionarySelectorForKey, DictionaryVariantIdsOf, DictionaryVariantValue, ENUMERATION, EditorConfig, EnumerationNode, ExtractSelectorLocale, FILE, FileNode, FilePathPattern, FilePathPatternContext, FilePathPatternFunction, Fill, GENDER, GenderNode, GetLocaleLang, GetSubPath, HTML, HTMLNode, INSERTION, ImportMode, InsertionNode, InternationalizationConfig, IntlayerConfig, KeyPath, LocalDictionaryId, Locale, locales_d_exports as Locales, LocalesValues, LocalizedUrl, LogConfig, LogFunctions, MARKDOWN, MarkdownNode, MergedDictionaryOutput, MergedDictionaryResult, NESTED, NULL, NUMBER, NestedNode, NodeType, OBJECT, ObjectNode, PLUGIN_NODE_TYPES, PLURAL, PREACT_NODE, PathWithoutLocale, Plugin, PluralNode, ProcessedCookieAttributes, ProcessedStorageAttributes, QualifiedDictionaryGroup, REACT_NODE, ReactNode, RequiredLocales, ResolveQualifiedDictionaryContent, ResolvedDefaultLocale, ResolvedEditor, ResolvedRoutingMode, RewriteObject, RewriteRule, RewriteRules, RoutingConfig, RoutingStorageInput, SELECT, SOLID_NODE, Schema, SchemaKeys, SelectNode, StorageAttributes, StrictMode, StrictModeLocaleMap, SystemConfig, TEXT, TRANSLATION, TranslationNode, TypedNode, TypedNodeModel, UNKNOWN, URLType, UnmergedDictionaryOutput, UnmergedDictionaryResult, formatNodeType };
|
|
10
|
+
export { ALL_LOCALES, ARRAY, AiConfig, AiProviderConfigMap, AiProviders, AnalyticsConfig, ArrayNode, BOOLEAN, BuildConfig, CONDITION, CommonAiConfig, CompilerConfig, ConditionNode, ConfigSchema, ContentAutoTransformation, ContentConfig, ContentNode, CookiesAttributes, CustomIntlayerConfig, CustomRoutingConfig, DeclaredLocales, DeclaredVariants, Dictionary, DictionaryConfig, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryKeys, DictionaryLocation, DictionaryQualifierType, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, DictionarySelector, DictionarySelectorForGroup, DictionarySelectorForKey, DictionaryVariantChain, DictionaryVariantIdsOf, DictionaryVariantValue, ENUMERATION, EditorConfig, EnumerationNode, ExtractSelectorLocale, FILE, FileNode, FilePathPattern, FilePathPatternContext, FilePathPatternFunction, Fill, GENDER, GenderNode, GetLocaleLang, GetSubPath, HTML, HTMLNode, INSERTION, ImportMode, InsertionNode, InternationalizationConfig, IntlayerConfig, KeyPath, LocalDictionaryId, Locale, locales_d_exports as Locales, LocalesValues, LocalizedUrl, LogConfig, LogFunctions, MARKDOWN, MarkdownNode, MergedDictionaryOutput, MergedDictionaryResult, NESTED, NULL, NUMBER, NestedNode, NodeType, OBJECT, ObjectNode, PLUGIN_NODE_TYPES, PLURAL, PREACT_NODE, PathWithoutLocale, Plugin, PluralNode, ProcessedCookieAttributes, ProcessedStorageAttributes, ProviderVariantMap, QualifiedDictionaryGroup, REACT_NODE, ReactNode, RequiredLocales, ResolveQualifiedDictionaryContent, ResolvedDefaultLocale, ResolvedEditor, ResolvedRoutingMode, RewriteObject, RewriteRule, RewriteRules, RoutingConfig, RoutingStorageInput, SELECT, SOLID_NODE, Schema, SchemaKeys, SelectNode, StorageAttributes, StrictMode, StrictModeLocaleMap, SystemConfig, TEXT, TRANSLATION, TranslationNode, TypedNode, TypedNodeModel, UNKNOWN, URLType, UnmergedDictionaryOutput, UnmergedDictionaryResult, formatNodeType };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Locale } from "./allLocales.js";
|
|
2
|
-
import { Dictionary, DictionarySelector, DictionarySelectorForGroup, DictionaryVariantIdsOf, ResolveQualifiedDictionaryContent } from "./dictionary.js";
|
|
2
|
+
import { Dictionary, DictionarySelector, DictionarySelectorForGroup, DictionaryVariantIdsOf, ProviderVariant as ProviderVariant$1, ResolveQualifiedDictionaryContent } from "./dictionary.js";
|
|
3
3
|
import { StrictMode } from "./config.js";
|
|
4
4
|
import { __DeclaredLocalesRegistry, __DictionaryRegistry, __EditorRegistry, __RequiredLocalesRegistry, __RoutingRegistry, __SchemaRegistry, __StrictModeRegistry } from "intlayer";
|
|
5
5
|
//#region src/module_augmentation.d.ts
|
|
@@ -51,6 +51,18 @@ type DeclaredVariants = DictionaryVariantIdsOf<__DictionaryRegistry[keyof __Dict
|
|
|
51
51
|
* value is a compile-time error. Plain keys fall back to {@link DictionarySelector}.
|
|
52
52
|
*/
|
|
53
53
|
type DictionarySelectorForKey<T extends PropertyKey> = [T] extends [keyof __DictionaryRegistry] ? DictionarySelectorForGroup<__DictionaryRegistry[T]> : DictionarySelector;
|
|
54
|
+
/**
|
|
55
|
+
* The `variant` prop of a framework provider (`<IntlayerProvider variant>`),
|
|
56
|
+
* narrowed to this project's declared dictionary keys — so the per-key map form
|
|
57
|
+
* rejects a key no dictionary declares.
|
|
58
|
+
*
|
|
59
|
+
* That narrowing is also what keeps the per-key map safely distinguishable from
|
|
60
|
+
* a structured variant value: on a provider a plain object is always read as
|
|
61
|
+
* the map, and `variant={{ id: 'prod_abc' }}` is a compile error unless `id`
|
|
62
|
+
* happens to be a dictionary key. Pin a structured variant globally by nesting
|
|
63
|
+
* it under an entry instead: `variant={{ default: { id: 'prod_abc' } }}`.
|
|
64
|
+
*/
|
|
65
|
+
type ProviderVariant = ProviderVariant$1<DictionaryKeys & string>;
|
|
54
66
|
type NarrowStringKeys<T> = string extends keyof T ? never : Extract<keyof T, string>;
|
|
55
67
|
type DeclaredLocales = [NarrowStringKeys<__DeclaredLocalesRegistry>] extends [never] ? Locale : NarrowStringKeys<__DeclaredLocalesRegistry>;
|
|
56
68
|
type RequiredLocales = [NarrowStringKeys<__RequiredLocalesRegistry>] extends [never] ? never : NarrowStringKeys<__RequiredLocalesRegistry>;
|
|
@@ -115,5 +127,5 @@ type GetLocaleLang<L extends string> = L extends `${infer Lang}-${string}` ? Lan
|
|
|
115
127
|
*/
|
|
116
128
|
type PathWithoutLocale<Path extends string, Locales extends string> = Path extends `${infer Protocol}://${infer Domain}/${infer Seg}/${infer Rest}` ? Seg extends Locales ? `${Protocol}://${Domain}/${Rest}` : Path : Path extends `${infer Protocol}://${infer Domain}/${infer Seg}` ? Seg extends Locales ? `${Protocol}://${Domain}/` : Path : Path extends `/${infer Seg}/${infer Rest}` ? Seg extends Locales ? `/${Rest}` : Path : Path extends `/${infer Seg}` ? Seg extends Locales ? "/" : Path : Path;
|
|
117
129
|
//#endregion
|
|
118
|
-
export { DeclaredLocales, DeclaredVariants, DictionaryKeys, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, type DictionarySelector, type DictionarySelectorForGroup, DictionarySelectorForKey, ExtractSelectorLocale, GetLocaleLang, LocalesValues, LocalizedUrl, PathWithoutLocale, RequiredLocales, ResolvedDefaultLocale, ResolvedEditor, ResolvedRoutingMode, Schema, SchemaKeys, StrictModeLocaleMap };
|
|
130
|
+
export { DeclaredLocales, DeclaredVariants, DictionaryKeys, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, type DictionarySelector, type DictionarySelectorForGroup, DictionarySelectorForKey, ExtractSelectorLocale, GetLocaleLang, LocalesValues, LocalizedUrl, PathWithoutLocale, ProviderVariant, RequiredLocales, ResolvedDefaultLocale, ResolvedEditor, ResolvedRoutingMode, Schema, SchemaKeys, StrictModeLocaleMap };
|
|
119
131
|
//# sourceMappingURL=module_augmentation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module_augmentation.d.ts","names":[],"sources":["../../src/module_augmentation.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"module_augmentation.d.ts","names":[],"sources":["../../src/module_augmentation.ts"],"mappings":";;;;;KAoBY,mBAAmB,gDAErB;KAEE,OAAO,UAAU,gCAAgC,WAEzD,gBAAgB,mBACd,iBAAiB;KAGX,uBAAuB,oDAEzB;KAGE,qBACV,2BAA2B,sCACvB,eAAe,cACf;KAEM,0BAA0B,UAAU,oCAErC,KACP,aACA,gBAAgB,uBACd,qBAAqB,WAAW,aAC9B,qBAAqB,KACrB,aACF;KAEM,0BAA0B,UAAU,gBAAgB,kBACxD,wBAEJ,qBAAqB;EAAa,eAAe;IAC/C,IACA,wBACF;;;;;;;;;;KAWQ,yBAAyB,UAAU,aAAa,oBAC1D,kBACe,wBACb,kCAAkC,qBAAqB,IAAI,OAC3D;;;;;KAMQ,sBAAsB,OAAO;EACvC,cAAc,UAAU;IAEtB,IACA,YAAY,gBACV,MACA;;;;;;;;;;;;;;;;;KAkBM,mBAAmB,uBAC7B,2BAA2B;;;;;;KAQjB,yBAAyB,UAAU,gBAAgB,kBACvD,wBAEJ,2BAA2B,qBAAqB,MAChD;;;;;;;;;;;;KAaQ,kBAAkB,kBAAoB;KAM7C,iBAAiB,0BAA0B,YAE5C,cAAc;KAEN,mBACV,iBAAiB,8CAEf,SACA,iBAAiB;KAET,mBACV,iBAAiB,sDAGf,iBAAiB;;KAGT,gBAAgB;KAGvB,qBAAqB;EAA+B,YAAY;IACjE;KAIQ,oBACV,mBACA,aAAa,aAAa,sBACxB,gCACA,QAAQ,OAAO,QAAQ,YACvB,wBACE,SAAS,OAAO,iBAAiB,YAC/B,QAAQ,OAAO,iBAAiB,YAClC,2BACE,SAAS,OAAO,iBAAiB,YAC/B,QAAQ,OAAO,QAAQ,YACzB,QAAQ,OAAO,QAAQ;KAGnB,eAAe,MAAM,UAAU;EACzC;IAEE,SACA;KAIC;;KAOO,sBAAsB;EAChC,YAAY,UAAU;IAEpB;;KAIQ,wBAAwB;EAClC,qBAAqB,UAAU;IAE7B,IACA;;KAKC,oBACH,kBACA,qBACA,0BACE,+BACG,OACH,mCACE,UAAU,kBAEL;;KAIN,iBACH,qBACA,yBACE,oBACA,OACA,uBAAuB,aACjB,SAAS,SACb;;;;;;;;;;;;;;;;KAiBM,aACV,qBACA,UAAU,eACV,sBAAsB,qBACtB,gBAAgB,gBAAgB,uBAChC,yBAAyB,8CACL,iBAElB,2BACE,kBAAkB,MAAM,WACxB,wCAEE,iBACE,kBAAkB,MAAM,UACxB,oBAAoB,GAAG,MAAM;;;;;;;;KAU3B,cAAc,oBACxB,mBAAmB,mBAAmB,OAAO;;;;;;;;;;;;;;KAenC,kBAAkB,qBAAqB,0BAEjD,sBAAsB,oBAAoB,gBAAgB,aAAa,SACnE,YAAY,aACP,cAAc,UAAU,SAC3B,OAEF,sBAAsB,oBAAoB,gBAAgB,QACxD,YAAY,aACP,cAAc,YACjB,OAEF,uBAAuB,aAAa,SAClC,YAAY,cACN,SACJ,OAEF,uBAAuB,QACrB,YAAY,gBAEV,OACF"}
|
package/package.json
CHANGED