@intlayer/types 9.1.0 → 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.
@@ -1,4 +1,4 @@
1
- import { DeclaredLocales, LocalesValues, Schema, SchemaKeys } from "./module_augmentation.js";
1
+ import { DeclaredLocales, DeclaredVariants, LocalesValues, Schema, SchemaKeys } from "./module_augmentation.js";
2
2
  import { FilePathPattern } from "./filePathPattern.js";
3
3
  import { NodeType } from "./nodeType.js";
4
4
  //#region src/dictionary.d.ts
@@ -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,14 +174,20 @@ 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
149
182
  */
150
183
  type DictionarySelector = {
151
- locale?: LocalesValues;
184
+ /**
185
+ * Restricted to the declared locales (no `string` escape hatch), so a typo is
186
+ * a compile error and the declared locales are offered as suggestions.
187
+ */
188
+ locale?: DeclaredLocales;
152
189
  item?: number;
153
- variant?: DictionaryVariantValue;
190
+ variant?: DictionaryVariantChain;
154
191
  };
155
192
  type QualifiedEntryContent<Entry> = Entry extends {
156
193
  content: infer Content;
@@ -161,8 +198,14 @@ type SplitCompositeId<Id extends string> = Id extends `${infer Head}/${infer Tai
161
198
  * Zips the declared qualifier dimensions with the segments decoded from a
162
199
  * composite id into a coordinate record (e.g. `['variant', 'item']` +
163
200
  * `['promo', '2']` → `{ variant: 'promo'; item: '2' }`).
201
+ *
202
+ * Both tuples are consumed head-first in lockstep. A mapped type over
203
+ * `keyof QualifierTypes` cannot be used here: remapping the keys of a tuple
204
+ * collapses the index into the union of all positions, so every dimension would
205
+ * receive the union of all segments (`{ variant: 'promo' | '2'; item: 'promo' |
206
+ * '2' }`) and no entry would ever compare equal to a selector coordinate.
164
207
  */
165
- type ZipQualifierCoordinates<QualifierTypes extends readonly DictionaryQualifierType[], Segments extends readonly string[]> = { [Index in keyof QualifierTypes as QualifierTypes[Index] extends DictionaryQualifierType ? QualifierTypes[Index] : never]: Index extends keyof Segments ? Segments[Index] : never; };
208
+ type ZipQualifierCoordinates<QualifierTypes extends readonly DictionaryQualifierType[], Segments extends readonly string[]> = QualifierTypes extends readonly [infer Dimension extends DictionaryQualifierType, ...infer RestDimensions extends readonly DictionaryQualifierType[]] ? Segments extends readonly [infer Segment extends string, ...infer RestSegments extends readonly string[]] ? { [Key in Dimension]: Segment; } & ZipQualifierCoordinates<RestDimensions, RestSegments> : unknown : unknown;
166
209
  /**
167
210
  * Rebuilds the per-entry shape (`{ variant; item; content }`) from the
168
211
  * `content` map keyed by composite id, so the coordinate-comparison helpers can
@@ -188,25 +231,41 @@ type CoordinateEquals<Left, Right> = [StringifyCoordinate<Left>] extends [String
188
231
  * precisely; an object variant broadens to `string` (it matches any declared
189
232
  * variant entry, since the object identity is not reconstructable at the type
190
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.
191
238
  */
192
- type SelectorVariant<Selector> = Selector extends {
193
- variant: infer Variant;
194
- } ? Variant extends string ? Variant : string : "default";
195
- type SelectorItem<Selector> = Selector extends {
196
- item: infer Item;
197
- } ? Item : undefined;
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";
240
+ /** The item a selector pins, or `undefined` when it leaves the axis open. */
241
+ type SelectorItem<Selector> = "item" extends keyof Selector ? Selector["item" & keyof Selector] : undefined;
242
+ /**
243
+ * The variant ids a group declares — the first segment of every composite id
244
+ * (`variant` is always the outermost dimension in canonical order).
245
+ */
246
+ type DeclaredVariantIds<ContentMap> = SplitCompositeId<keyof ContentMap & string>[0];
247
+ /**
248
+ * The variant id a selector actually resolves to, mirroring the runtime
249
+ * sparse-override fallback: the requested id when the group declares it,
250
+ * otherwise the `'default'` entry when the group declares one.
251
+ *
252
+ * A broad (non-literal) variant — what an object variant widens to — is left
253
+ * untouched, since it is meant to match any declared entry.
254
+ */
255
+ type EffectiveSelectorVariant<Selector, DeclaredIds extends string> = SelectorVariant<Selector> extends (infer Requested extends string) ? string extends Requested ? Requested : Requested extends DeclaredIds ? Requested : "default" extends DeclaredIds ? "default" : Requested : never;
198
256
  /**
199
257
  * Whether a single group entry matches the selector across every declared
200
258
  * dimension. The `item` dimension matches any value when the selector leaves it
201
- * open (collection axis).
259
+ * open (collection axis); the `variant` dimension is compared against the
260
+ * already-resolved effective id, so the `default` fallback applies here too.
202
261
  */
203
- type EntryMatchesSelector<Entry, QualifierTypes extends readonly DictionaryQualifierType[], Selector> = ("variant" extends QualifierTypes[number] ? Entry extends {
262
+ type EntryMatchesSelector<Entry, QualifierTypes extends readonly DictionaryQualifierType[], Selector, EffectiveVariant> = ("variant" extends QualifierTypes[number] ? Entry extends {
204
263
  variant: infer Variant;
205
- } ? CoordinateEquals<Variant, SelectorVariant<Selector>> : false : true) extends true ? "item" extends QualifierTypes[number] ? [SelectorItem<Selector>] extends [undefined] ? true : Entry extends {
264
+ } ? CoordinateEquals<Variant, EffectiveVariant> : false : true) extends true ? "item" extends QualifierTypes[number] ? [SelectorItem<Selector>] extends [undefined] ? true : Entry extends {
206
265
  item: infer Item;
207
266
  } ? CoordinateEquals<Item, SelectorItem<Selector>> : false : true : false;
208
267
  /** Entries that match the selector. */
209
- type MatchingEntries<Entries, QualifierTypes extends readonly DictionaryQualifierType[], Selector> = { [Key in keyof Entries as EntryMatchesSelector<Entries[Key], QualifierTypes, Selector> extends true ? Key : never]: Entries[Key]; };
268
+ type MatchingEntries<Entries, QualifierTypes extends readonly DictionaryQualifierType[], Selector, EffectiveVariant> = { [Key in keyof Entries as EntryMatchesSelector<Entries[Key], QualifierTypes, Selector, EffectiveVariant> extends true ? Key : never]: Entries[Key]; };
210
269
  /** Whether the collection (`item`) axis is left open (→ array result). */
211
270
  type IsItemAxisOpen<QualifierTypes extends readonly DictionaryQualifierType[], Selector> = "item" extends QualifierTypes[number] ? [SelectorItem<Selector>] extends [undefined] ? true : false : false;
212
271
  /**
@@ -219,12 +278,14 @@ type IsItemAxisOpen<QualifierTypes extends readonly DictionaryQualifierType[], S
219
278
  * entry:
220
279
  * - `item` left open → array of the matching entries' content
221
280
  * - all dimensions pinned → that single entry's content (or `null` if none match)
281
+ * - a variant the group does not declare → the `default` entry's content, when
282
+ * the group declares one (sparse-override fallback)
222
283
  * - plain dictionary → its `content` (selector ignored)
223
284
  */
224
285
  type ResolveQualifiedDictionaryContent<T, Selector = undefined> = T extends {
225
286
  qualifierTypes: infer QualifierTypes extends readonly DictionaryQualifierType[];
226
287
  content: infer ContentMap extends Record<string, any>;
227
- } ? ReconstructedEntries<ContentMap, QualifierTypes> extends (infer Entries) ? IsItemAxisOpen<QualifierTypes, Selector> extends true ? QualifiedEntryContent<MatchingEntries<Entries, QualifierTypes, Selector>[keyof MatchingEntries<Entries, QualifierTypes, Selector>]>[] : [keyof MatchingEntries<Entries, QualifierTypes, Selector>] extends [never] ? null : QualifiedEntryContent<MatchingEntries<Entries, QualifierTypes, Selector>[keyof MatchingEntries<Entries, QualifierTypes, Selector>]> : never : T extends {
288
+ } ? MatchingEntries<ReconstructedEntries<ContentMap, QualifierTypes>, QualifierTypes, Selector, EffectiveSelectorVariant<Selector, DeclaredVariantIds<ContentMap>>> extends (infer Matched) ? IsItemAxisOpen<QualifierTypes, Selector> extends true ? QualifiedEntryContent<Matched[keyof Matched]>[] : [keyof Matched] extends [never] ? null : QualifiedEntryContent<Matched[keyof Matched]> : never : T extends {
228
289
  content: infer Content;
229
290
  } ? Content : never;
230
291
  /** Distributes over the union of a group's entries. */
@@ -238,17 +299,87 @@ type EntryVariant<Entry> = Entry extends {
238
299
  type EntryItem<Entry> = Entry extends {
239
300
  item: infer Item;
240
301
  } ? Item : never;
302
+ /**
303
+ * Every variant id a qualified group declares — the variant segment of each
304
+ * composite id, in its stored (serialized) form. Distributes over a union of
305
+ * groups so it can be applied to the whole dictionary registry at once.
306
+ */
307
+ type VariantIdsOfGroup<T> = T extends {
308
+ qualifierTypes: infer QualifierTypes extends readonly DictionaryQualifierType[];
309
+ content: infer ContentMap;
310
+ } ? "variant" extends QualifierTypes[number] ? DeclaredVariantIds<ContentMap> : never : never;
311
+ /**
312
+ * Splits the serialized ids of a group into their two declaration forms. An
313
+ * object variant serializes to `field=value` pairs joined by `&`, so the
314
+ * presence of `=` discriminates it from a named (string) variant.
315
+ */
316
+ type NamedVariantIds<Ids> = Ids extends `${string}=${string}` ? never : Ids;
317
+ type ObjectVariantIds<Ids> = Ids extends `${string}=${string}` ? Ids : never;
318
+ /** Rebuilds one `field=value` pair into `{ field: value }`. */
319
+ type ParseVariantPair<Pair extends string> = Pair extends `${infer Field}=${infer Value}` ? { [Key in Field]: Value; } : never;
320
+ /**
321
+ * Rebuilds a serialized object-variant id into the object literal that declared
322
+ * it (`'category=audio&id=abc'` → `{ category: 'audio'; id: 'abc' }`), so the
323
+ * selector is typed by the declaration rather than by its storage encoding.
324
+ *
325
+ * Values come back as string literals: the serialization stringifies numbers,
326
+ * and percent-encoded characters (see `serializeVariant`) are not decoded, so a
327
+ * variant whose field values contain path-hostile characters is matched on its
328
+ * encoded form.
329
+ */
330
+ type ParseObjectVariantId<Id extends string> = Id extends `${infer Pair}&${infer Rest}` ? ParseVariantPair<Pair> & ParseObjectVariantId<Rest> : ParseVariantPair<Id>;
331
+ /**
332
+ * The **named** variant ids declared by a group (or by a union of groups).
333
+ * Excludes object variants: their serialized form is an internal storage
334
+ * encoding, never a value the selector should accept as a string.
335
+ */
336
+ type DictionaryVariantIdsOf<T> = NamedVariantIds<VariantIdsOfGroup<T>>;
337
+ /**
338
+ * The object variants a group declares, rebuilt into their declared shape.
339
+ *
340
+ * Left as the intersection `ParseObjectVariantId` accumulates: wrapping it in a
341
+ * flattening mapped type makes TypeScript print the wrapper's name instead of
342
+ * resolving it, which hides the accepted values from the error message.
343
+ */
344
+ type DictionaryObjectVariantsOf<T> = ParseObjectVariantId<ObjectVariantIds<VariantIdsOfGroup<T>> & string>;
345
+ /**
346
+ * Whether a group declares a `default` entry — the target every undeclared
347
+ * variant falls back to. A group without one (an object-variant catalogue, say)
348
+ * resolves an undeclared variant to `null`, so it cannot accept the project
349
+ * vocabulary.
350
+ */
351
+ type HasDefaultVariant<T> = "default" extends VariantIdsOfGroup<T> ? true : false;
241
352
  /**
242
353
  * The selector accepted for a specific qualified dictionary group `T`: each
243
354
  * dimension is constrained to the coordinates that actually exist, so an unknown
244
- * `item` is a compile-time error. Named (string) variants are suggested for
245
- * autocomplete; object variants are accepted via the loose `Record` form. Plain
246
- * dictionaries (no `entries`) fall back to the loose {@link DictionarySelector}.
355
+ * `item` is a compile-time error. Plain dictionaries (no `entries`) fall back to
356
+ * the loose {@link DictionarySelector}.
357
+ *
358
+ * The two variant forms are scoped differently, because they mean different
359
+ * things:
360
+ *
361
+ * - **Named** variants always accept the names this key declares. A key that
362
+ * also declares a `default` entry additionally accepts any name declared
363
+ * **anywhere in the project** (`KnownVariants`), because an undeclared name
364
+ * resolves to that `default` entry at runtime. That is what makes the
365
+ * sparse-override pattern typecheck — one session-wide variant passed to every
366
+ * key, most of which override nothing — while still rejecting a name no
367
+ * dictionary declares (a typo). A key **without** a `default` entry resolves
368
+ * an undeclared name to `null`, so it accepts only its own names.
369
+ * - **Object** variants address one specific record, so they are restricted to
370
+ * the objects **this key** declares, rebuilt from their stored form. They are
371
+ * never accepted in their serialized string form (`'id=abc&userId=123'`) —
372
+ * that is a storage encoding, not part of the API.
247
373
  */
248
- type DictionarySelectorForGroup<T> = [GroupEntryUnion<T>] extends [never] ? DictionarySelector : {
249
- locale?: LocalesValues;
374
+ type SelectableVariantsOf<T, KnownVariants> = NamedVariantIds<EntryVariant<GroupEntryUnion<T>>> | (HasDefaultVariant<T> extends true ? KnownVariants : never) | DictionaryObjectVariantsOf<T>;
375
+ type DictionarySelectorForGroup<T, KnownVariants = DeclaredVariants> = [GroupEntryUnion<T>] extends [never] ? DictionarySelector : {
376
+ locale?: DeclaredLocales;
250
377
  } & ([EntryVariant<GroupEntryUnion<T>>] extends [never] ? unknown : {
251
- variant?: EntryVariant<GroupEntryUnion<T>> | (string & {}) | Record<string, string | number>;
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>[];
252
383
  }) & ([EntryItem<GroupEntryUnion<T>>] extends [never] ? unknown : {
253
384
  item?: EntryItem<GroupEntryUnion<T>> | number | (string & {});
254
385
  });
@@ -613,5 +744,5 @@ type DictionaryWithoutSchema<ContentType, FetchableNode> = {
613
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);
614
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;
615
746
  //#endregion
616
- export { ContentAutoTransformation, ContentNode, Dictionary, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryLocation, DictionaryQualifierType, DictionarySelector, DictionarySelectorForGroup, 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 };
617
748
  //# sourceMappingURL=dictionary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dictionary.d.ts","names":[],"sources":["../../src/dictionary.ts"],"mappings":";;;;KASK;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA8BlC;EACV;EACA,KAAK;EACL,gBAAgB;;;;;EAKhB,SAAS;;EAET,aAAa;EACb,WAAW;;;;;;;;;;;;KAaD;EACV,SAAS;EACT;EACA,UAAU;;KAGP,sBAAsB,SAAS;EAAgB,eAAe;IAC/D;;KAIC,iBAAiB,qBACpB,oBAAoB,cAAc,UAC7B,SAAS,iBAAiB,UAC1B;;;;;;KAOF,wBACH,gCAAgC,2BAChC,yCAEC,eAAe,kBAAkB,eAAe,eAAe,0BAC5D,eAAe,iBACP,oBAAoB,WAAW,SAAS;;;;;;KAQjD,qBACH,YACA,gCAAgC,gCAE/B,aAAa,sBAAsB,wBAClC,gBACA,iBAAiB,qBACH;EACV,SAAS,WAAW;KAAU;EAAsB,eAAe;;EAC/D,SAAS;gBAEZ;EAAsB,YAAY;;EAAW,MAAM;;;KAKvD,oBAAoB,SAAS,mCAC3B;;KAIF,iBAAiB,MAAM,UAAU,oBAAoB,gBACxD,oBAAoB;;;;;;;KAWjB,gBAAgB,YAAY;EAAmB,eAAe;IAC/D,yBACE;KAGD,aAAa,YAAY;EAAmB,YAAY;IACzD;;;;;;KAQC,qBACH,OACA,gCAAgC,2BAChC,+BAEkB,yBACd;EAAgB,eAAe;IAC7B,iBAAiB,SAAS,gBAAgB,yDAI/B,0BACZ,aAAa,wCAEZ;EAAgB,YAAY;IAC1B,iBAAiB,MAAM,aAAa;;KAMzC,gBACH,SACA,gCAAgC,2BAChC,eAEC,aAAa,WAAW,qBACvB,QAAQ,MACR,gBACA,yBAEE,cACQ,QAAQ;;KAIjB,eACH,gCAAgC,2BAChC,2BACiB,0BACd,aAAa;;;;;;;;;;;;;KAiBN,kCACV,GACA,wBACE;EACF,sBAAsB,gCACX;EACX,eAAe,mBAAmB;IAEhC,qBAAqB,YAAY,+BAA8B,WAC7D,eAAe,gBAAgB,yBAC7B,sBACE,gBACE,SACA,gBACA,gBACM,gBAAgB,SAAS,gBAAgB,uBAE5C,gBAAgB,SAAS,gBAAgB,oCAI9C,sBACE,gBACE,SACA,gBACA,gBACM,gBAAgB,SAAS,gBAAgB,sBAGzD;EAAY,eAAe;IACzB;;KAID,gBAAgB,KAAK;EACxB,sBAAsB,gCACX;EACX,eAAe;IAEb,qBAAqB,YAAY,sBAAsB,qBACrD,YACA;KAID,aAAa,SAAS;EAAgB,eAAe;IACtD;KAEC,UAAU,SAAS;EAAgB,YAAY;IAAS;;;;;;;;KASjD,2BAA2B,MAAM,gBAAgB,sBACzD;EACE,SAAS;MAAoB,aAAa,gBAAgB;EAKtD,UACI,aAAa,gBAAgB,sBAE7B;OAEN,UAAU,gBAAgB;EAEtB,OAAO,UAAU,gBAAgB;;KACjC;KAOA,uBACP,kBAAkB,2BAA2B,yBAAyB;KAE/D;;;;;;;;;;;;;;;KAqBA;KAEA;;;;;EAON;;;;;EAKA;;;;;EAKA;;;;;KAKD;;;;;;EAMH;;;;;;EAOA,KAAK;;;;;;;EAQL;;;;;;EAOA,UAAU;;;;;;EAOV,WAAW;;;;;;;;EASX,SAAS;;;;;;;;;;;;;;EAeT,KAAK;;;;;;;;;;;;;EAcL;;;;;;;;;;;;;;;;;;;EAoBA;;;;;;EAOA;;;;;;EAOA;;;;;;EAOA;;;;;;;;;;;;EAaA;;;;;;;;;;;;;;;;;;;EAoBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CA,UAAU,yBAAyB;;;;;;;;;;;;;;;;;;EAmBnC,SAAS;;;;;;;;;;;;EAaT,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0D5B,OAAO;;;;;;;EAQP;;;;;EAMA;;;;;;;;;;;;;;;EAgBA,aAAa;;;;;;;;;EAUb,WAAW;;;;;;KAOR,qBACH,aACA,eACA,UAAU,aAAa,cACrB;EAEE,QAAQ;EACR,SAAS,gCACL,oBAAoB,OAAO,IAAI,iBAAiB,OAAO,KAEnD,oBAAoB,cAAc,OAAO,IAAI,kBAC5C,cAAc,OAAO;;;;;KAO/B,wBAAwB,aAAa;EACxC;EACA,SAAS,sCAEL,oBAAoB,aAAa,iBAAiB;;;;;KAM5C,WACV,yBACA,kBAAkB,oCAClB,yBACE,kBACD,kBAAkB,aACf,qBAAqB,aAAa,eAAe,+BAC/B,YAEZ,wBAAwB,aAAa,iBACrC,qBAAqB,aAAa;KAGlC,WAAW,GAAG,KAAK,mBAAmB,WAAW,SACzD,gBAAgB,IACd,WAAW,EAAE,IAAI,gBAEnB,gBAAgB,IACd,EAAE,KACF"}
1
+ {"version":3,"file":"dictionary.d.ts","names":[],"sources":["../../src/dictionary.ts"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { locales_d_exports } from "./locales.js";
2
2
  import { ALL_LOCALES, Locale } from "./allLocales.js";
3
- import { DeclaredLocales, DictionaryKeys, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, DictionarySelectorForKey, ExtractSelectorLocale, GetLocaleLang, LocalesValues, LocalizedUrl, PathWithoutLocale, RequiredLocales, ResolvedDefaultLocale, ResolvedEditor, ResolvedRoutingMode, Schema, SchemaKeys, StrictModeLocaleMap } from "./module_augmentation.js";
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, 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, Dictionary, DictionaryConfig, DictionaryFormat, DictionaryId, DictionaryKey, DictionaryKeys, DictionaryLocation, DictionaryQualifierType, DictionaryRegistry, DictionaryRegistryContent, DictionaryRegistryElement, DictionaryRegistryResult, DictionarySelector, DictionarySelectorForGroup, DictionarySelectorForKey, 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, 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
@@ -28,12 +28,41 @@ type DictionaryRegistryResult<T extends PropertyKey, Arg = undefined> = [T] exte
28
28
  type ExtractSelectorLocale<Arg> = Arg extends {
29
29
  locale: infer L extends LocalesValues;
30
30
  } ? L : Arg extends LocalesValues ? Arg : DeclaredLocales;
31
+ /**
32
+ * Every named variant declared anywhere in the project — the vocabulary of
33
+ * variant names collected across the whole dictionary registry. `never` when the
34
+ * project declares no variant at all.
35
+ *
36
+ * This is the domain a `variant` selector is checked against, rather than the
37
+ * names of the single key being read: a key that declares no entry for the
38
+ * selected variant falls back to its `default` entry at runtime, so one
39
+ * session-wide variant can legitimately be passed to every key. Checking against
40
+ * the project vocabulary keeps that legal while still catching a name that no
41
+ * dictionary declares.
42
+ *
43
+ * Kept as a plain alias (the `never` fallback lives at the use site) so
44
+ * TypeScript prints this name in error messages instead of expanding the
45
+ * registry inline.
46
+ */
47
+ type DeclaredVariants = DictionaryVariantIdsOf<__DictionaryRegistry[keyof __DictionaryRegistry]>;
31
48
  /**
32
49
  * The selector accepted for a dictionary **key** `T`: its `variant` / `item` /
33
50
  * `id` are constrained to the coordinates that exist for that key, so an unknown
34
51
  * value is a compile-time error. Plain keys fall back to {@link DictionarySelector}.
35
52
  */
36
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>;
37
66
  type NarrowStringKeys<T> = string extends keyof T ? never : Extract<keyof T, string>;
38
67
  type DeclaredLocales = [NarrowStringKeys<__DeclaredLocalesRegistry>] extends [never] ? Locale : NarrowStringKeys<__DeclaredLocalesRegistry>;
39
68
  type RequiredLocales = [NarrowStringKeys<__RequiredLocalesRegistry>] extends [never] ? never : NarrowStringKeys<__RequiredLocalesRegistry>;
@@ -98,5 +127,5 @@ type GetLocaleLang<L extends string> = L extends `${infer Lang}-${string}` ? Lan
98
127
  */
99
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;
100
129
  //#endregion
101
- export { DeclaredLocales, 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 };
102
131
  //# sourceMappingURL=module_augmentation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module_augmentation.d.ts","names":[],"sources":["../../src/module_augmentation.ts"],"mappings":";;;;;KAkBY,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;;;;;;KAOM,yBAAyB,UAAU,gBAAgB,kBACvD,wBAEJ,2BAA2B,qBAAqB,MAChD;KAMC,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"}
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intlayer/types",
3
- "version": "9.1.0",
3
+ "version": "9.1.2",
4
4
  "private": false,
5
5
  "description": "Retrieve Intlayer configurations and manage environment variables for both server-side and client-side environments.",
6
6
  "keywords": [