@aidc-toolkit/utility 0.9.19-beta → 0.9.21-beta

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,23 +1,7 @@
1
+ import { type Exclusion } from "./exclusion.js";
1
2
  import type { IndexedCallback } from "./iterable-utility.js";
2
3
  import type { StringValidation, StringValidator } from "./string.js";
3
4
  import { type TransformerInput, type TransformerOutput } from "./transformer.js";
4
- /**
5
- * Exclusion options for validating and creating strings based on character sets.
6
- */
7
- export declare enum Exclusion {
8
- /**
9
- * No strings excluded.
10
- */
11
- None = 0,
12
- /**
13
- * Strings that start with zero ('0') excluded.
14
- */
15
- FirstZero = 1,
16
- /**
17
- * Strings that are all-numeric (e.g., "123456") excluded.
18
- */
19
- AllNumeric = 2
20
- }
21
5
  /**
22
6
  * Character set validation parameters.
23
7
  */
@@ -72,7 +56,7 @@ export declare class CharacterSetValidator implements StringValidator<CharacterS
72
56
  * set.
73
57
  *
74
58
  * @param exclusionSupport
75
- * Exclusions supported by the character set. All character sets implicitly support {@link Exclusion.None}.
59
+ * Exclusions supported by the character set. All character sets implicitly support {@link Exclusions.None}.
76
60
  */
77
61
  constructor(characterSet: readonly string[], ...exclusionSupport: readonly Exclusion[]);
78
62
  /**
@@ -188,7 +172,7 @@ export declare class CharacterSetCreator extends CharacterSetValidator {
188
172
  */
189
173
  private readonly _characterSetSizeMinusOneN;
190
174
  /**
191
- * Domains for every length for every supported {@link Exclusion}.
175
+ * Domains for every length for every supported {@link Exclusions}.
192
176
  */
193
177
  private readonly _exclusionDomains;
194
178
  /**
@@ -203,7 +187,7 @@ export declare class CharacterSetCreator extends CharacterSetValidator {
203
187
  * set.
204
188
  *
205
189
  * @param exclusionSupport
206
- * Exclusions supported by the character set. All character sets implicitly support {@link Exclusion.None}.
190
+ * Exclusions supported by the character set. All character sets implicitly support {@link Exclusions.None}.
207
191
  */
208
192
  constructor(characterSet: readonly string[], ...exclusionSupport: readonly Exclusion[]);
209
193
  /**
@@ -253,7 +237,7 @@ export declare class CharacterSetCreator extends CharacterSetValidator {
253
237
  * Numeric value(s) of the string(s).
254
238
  *
255
239
  * @param exclusion
256
- * String(s) to be excluded from the range of outputs. See {@link Exclusion} for possible values and their meaning.
240
+ * String(s) to be excluded from the range of outputs. See {@link Exclusions} for possible values and their meaning.
257
241
  *
258
242
  * @param tweak
259
243
  * If provided, the numerical value of the string(s) is/are "tweaked" using an {@link EncryptionTransformer |
@@ -273,7 +257,7 @@ export declare class CharacterSetCreator extends CharacterSetValidator {
273
257
  * String.
274
258
  *
275
259
  * @param exclusion
276
- * Strings excluded from the range of inputs. See {@link Exclusion} for possible values and their meaning.
260
+ * Strings excluded from the range of inputs. See {@link Exclusions} for possible values and their meaning.
277
261
  *
278
262
  * @param tweak
279
263
  * If provided, the numerical value of the string was "tweaked" using an {@link EncryptionTransformer | encryption
@@ -285,21 +269,21 @@ export declare class CharacterSetCreator extends CharacterSetValidator {
285
269
  valueFor(s: string, exclusion?: Exclusion, tweak?: number | bigint): bigint;
286
270
  }
287
271
  /**
288
- * Numeric creator. Character set is 0-9. Supports {@link Exclusion.FirstZero}.
272
+ * Numeric creator. Character set is 0-9. Supports {@link Exclusions.FirstZero}.
289
273
  */
290
274
  export declare const NUMERIC_CREATOR: CharacterSetCreator;
291
275
  /**
292
- * Numeric validator. Character set is 0-9. Supports {@link Exclusion.FirstZero}.
276
+ * Numeric validator. Character set is 0-9. Supports {@link Exclusions.FirstZero}.
293
277
  */
294
278
  export declare const NUMERIC_VALIDATOR: CharacterSetValidator;
295
279
  /**
296
- * Hexadecimal creator. Character set is 0-9, A-F. Supports {@link Exclusion.FirstZero} and {@link
297
- * Exclusion.AllNumeric}.
280
+ * Hexadecimal creator. Character set is 0-9, A-F. Supports {@link Exclusions.FirstZero} and {@link
281
+ * Exclusions.AllNumeric}.
298
282
  */
299
283
  export declare const HEXADECIMAL_CREATOR: CharacterSetCreator;
300
284
  /**
301
- * Hexadecimal validator. Character set is 0-9, A-F. Supports {@link Exclusion.FirstZero} and {@link
302
- * Exclusion.AllNumeric}.
285
+ * Hexadecimal validator. Character set is 0-9, A-F. Supports {@link Exclusions.FirstZero} and {@link
286
+ * Exclusions.AllNumeric}.
303
287
  */
304
288
  export declare const HEXADECIMAL_VALIDATOR: CharacterSetValidator;
305
289
  /**
@@ -311,13 +295,13 @@ export declare const ALPHABETIC_CREATOR: CharacterSetCreator;
311
295
  */
312
296
  export declare const ALPHABETIC_VALIDATOR: CharacterSetValidator;
313
297
  /**
314
- * Alphanumeric creator. Character set is 0-9, A-Z. Supports {@link Exclusion.FirstZero} and {@link
315
- * Exclusion.AllNumeric}.
298
+ * Alphanumeric creator. Character set is 0-9, A-Z. Supports {@link Exclusions.FirstZero} and {@link
299
+ * Exclusions.AllNumeric}.
316
300
  */
317
301
  export declare const ALPHANUMERIC_CREATOR: CharacterSetCreator;
318
302
  /**
319
- * Alphanumeric validator. Character set is 0-9, A-Z. Supports {@link Exclusion.FirstZero} and {@link
320
- * Exclusion.AllNumeric}.
303
+ * Alphanumeric validator. Character set is 0-9, A-Z. Supports {@link Exclusions.FirstZero} and {@link
304
+ * Exclusions.AllNumeric}.
321
305
  */
322
306
  export declare const ALPHANUMERIC_VALIDATOR: CharacterSetValidator;
323
307
  //# sourceMappingURL=character-set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"character-set.d.ts","sourceRoot":"","sources":["../src/character-set.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"character-set.d.ts","sourceRoot":"","sources":["../src/character-set.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,7 @@
1
+ import { Exclusions } from "./exclusion.js";
1
2
  import { i18nextUtility } from "./locale/i18n.js";
2
3
  import { RegExpValidator } from "./reg-exp.js";
3
4
  import { Transformer } from "./transformer.js";
4
- /**
5
- * Exclusion options for validating and creating strings based on character sets.
6
- */
7
- export var Exclusion;
8
- (function (Exclusion) {
9
- /**
10
- * No strings excluded.
11
- */
12
- Exclusion[Exclusion["None"] = 0] = "None";
13
- /**
14
- * Strings that start with zero ('0') excluded.
15
- */
16
- Exclusion[Exclusion["FirstZero"] = 1] = "FirstZero";
17
- /**
18
- * Strings that are all-numeric (e.g., "123456") excluded.
19
- */
20
- Exclusion[Exclusion["AllNumeric"] = 2] = "AllNumeric";
21
- })(Exclusion || (Exclusion = {}));
22
5
  /**
23
6
  * Character set validator. Validates a string against a specified character set.
24
7
  */
@@ -58,7 +41,7 @@ export class CharacterSetValidator {
58
41
  * set.
59
42
  *
60
43
  * @param exclusionSupport
61
- * Exclusions supported by the character set. All character sets implicitly support {@link Exclusion.None}.
44
+ * Exclusions supported by the character set. All character sets implicitly support {@link Exclusions.None}.
62
45
  */
63
46
  constructor(characterSet, ...exclusionSupport) {
64
47
  this._characterSet = characterSet;
@@ -143,7 +126,7 @@ export class CharacterSetValidator {
143
126
  * Exclusion.
144
127
  */
145
128
  validateExclusion(exclusion) {
146
- if (exclusion !== Exclusion.None && !this._exclusionSupport.includes(exclusion)) {
129
+ if (exclusion !== Exclusions.None && !this._exclusionSupport.includes(exclusion)) {
147
130
  throw new RangeError(i18nextUtility.t("CharacterSetValidator.exclusionNotSupported", {
148
131
  exclusion
149
132
  }));
@@ -200,9 +183,9 @@ export class CharacterSetValidator {
200
183
  if (validation?.exclusion !== undefined) {
201
184
  this.validateExclusion(validation.exclusion);
202
185
  switch (validation.exclusion) {
203
- case Exclusion.None:
186
+ case Exclusions.None:
204
187
  break;
205
- case Exclusion.FirstZero:
188
+ case Exclusions.FirstZero:
206
189
  if (s.startsWith("0")) {
207
190
  throw new RangeError(i18nextUtility.t(validation.component === undefined ? "CharacterSetValidator.invalidCharacterAtPosition" : "CharacterSetValidator.invalidCharacterAtPositionOfComponent", {
208
191
  component: CharacterSetValidator.componentToString(validation.component),
@@ -211,7 +194,7 @@ export class CharacterSetValidator {
211
194
  }));
212
195
  }
213
196
  break;
214
- case Exclusion.AllNumeric:
197
+ case Exclusions.AllNumeric:
215
198
  CharacterSetValidator.NOT_ALL_NUMERIC_VALIDATOR.validate(s);
216
199
  break;
217
200
  }
@@ -268,7 +251,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
268
251
  */
269
252
  _characterSetSizeMinusOneN;
270
253
  /**
271
- * Domains for every length for every supported {@link Exclusion}.
254
+ * Domains for every length for every supported {@link Exclusions}.
272
255
  */
273
256
  _exclusionDomains;
274
257
  /**
@@ -283,7 +266,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
283
266
  * set.
284
267
  *
285
268
  * @param exclusionSupport
286
- * Exclusions supported by the character set. All character sets implicitly support {@link Exclusion.None}.
269
+ * Exclusions supported by the character set. All character sets implicitly support {@link Exclusions.None}.
287
270
  */
288
271
  constructor(characterSet, ...exclusionSupport) {
289
272
  super(characterSet, ...exclusionSupport);
@@ -291,8 +274,8 @@ export class CharacterSetCreator extends CharacterSetValidator {
291
274
  this._characterSetSizeMinusOneN = BigInt(this.characterSetSize - 1);
292
275
  const exclusionDomains = [];
293
276
  const exclusionNoneDomains = CharacterSetCreator.createPowersOf(this.characterSetSize);
294
- exclusionDomains[Exclusion.None] = exclusionNoneDomains;
295
- if (exclusionSupport.includes(Exclusion.FirstZero)) {
277
+ exclusionDomains[Exclusions.None] = exclusionNoneDomains;
278
+ if (exclusionSupport.includes(Exclusions.FirstZero)) {
296
279
  if (characterSet[0] !== "0") {
297
280
  throw new RangeError(i18nextUtility.t("CharacterSetValidator.firstZeroFirstCharacter"));
298
281
  }
@@ -303,9 +286,9 @@ export class CharacterSetCreator extends CharacterSetValidator {
303
286
  // Domain excludes zero as the first character and so works with previous exclusion none domain.
304
287
  exclusionFirstZeroDomains[index] = this._characterSetSizeMinusOneN * exclusionNoneDomains[index - 1];
305
288
  }
306
- exclusionDomains[Exclusion.FirstZero] = exclusionFirstZeroDomains;
289
+ exclusionDomains[Exclusions.FirstZero] = exclusionFirstZeroDomains;
307
290
  }
308
- if (exclusionSupport.includes(Exclusion.AllNumeric)) {
291
+ if (exclusionSupport.includes(Exclusions.AllNumeric)) {
309
292
  const exclusionAllNumericDomains = new Array(CharacterSetCreator.MAXIMUM_STRING_LENGTH + 1);
310
293
  /**
311
294
  * Validate that number indexes are defined and sequential.
@@ -337,7 +320,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
337
320
  allZerosValue = allZerosValue * this._characterSetSizeN + zeroIndex;
338
321
  }
339
322
  this._allZerosValues = allZerosValues;
340
- exclusionDomains[Exclusion.AllNumeric] = exclusionAllNumericDomains;
323
+ exclusionDomains[Exclusions.AllNumeric] = exclusionAllNumericDomains;
341
324
  }
342
325
  else {
343
326
  // Empty array obviates need for non-null assertion while still forcing error if indexed due to a bug.
@@ -355,7 +338,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
355
338
  * `characterSetSize**power`.
356
339
  */
357
340
  powerOfSize(power) {
358
- return this._exclusionDomains[Exclusion.None][power];
341
+ return this._exclusionDomains[Exclusions.None][power];
359
342
  }
360
343
  /**
361
344
  * Determine the shift required to skip all all-numeric strings up to the value.
@@ -434,7 +417,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
434
417
  * Numeric value(s) of the string(s).
435
418
  *
436
419
  * @param exclusion
437
- * String(s) to be excluded from the range of outputs. See {@link Exclusion} for possible values and their meaning.
420
+ * String(s) to be excluded from the range of outputs. See {@link Exclusions} for possible values and their meaning.
438
421
  *
439
422
  * @param tweak
440
423
  * If provided, the numerical value of the string(s) is/are "tweaked" using an {@link EncryptionTransformer |
@@ -446,18 +429,18 @@ export class CharacterSetCreator extends CharacterSetValidator {
446
429
  * @returns
447
430
  * String(s) created from the value(s).
448
431
  */
449
- create(length, valueOrValues, exclusion = Exclusion.None, tweak, creatorCallback) {
432
+ create(length, valueOrValues, exclusion = Exclusions.None, tweak, creatorCallback) {
450
433
  this.validateLength(length);
451
434
  this.validateExclusion(exclusion);
452
435
  // Zero value in ternary else obviates need for non-null assertion.
453
- const allZerosValue = exclusion === Exclusion.AllNumeric ? this._allZerosValues[length] : 0n;
436
+ const allZerosValue = exclusion === Exclusions.AllNumeric ? this._allZerosValues[length] : 0n;
454
437
  const transformer = Transformer.get(this._exclusionDomains[exclusion][length], tweak);
455
438
  return transformer.forward(valueOrValues, (transformedValue, index) => {
456
439
  let s = "";
457
440
  // Empty string is valid.
458
441
  if (length !== 0) {
459
442
  let convertValue = transformedValue;
460
- if (exclusion === Exclusion.AllNumeric && convertValue >= allZerosValue) {
443
+ if (exclusion === Exclusions.AllNumeric && convertValue >= allZerosValue) {
461
444
  // Value to convert is shifted by the number of all-numeric strings that occur at or prior to it.
462
445
  convertValue = convertValue + this.allNumericShift(true, length, convertValue - allZerosValue);
463
446
  }
@@ -469,7 +452,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
469
452
  convertValue = nextConvertValue;
470
453
  }
471
454
  // Zero is first in the character set for those that support excluding first zero.
472
- s = this.character(exclusion === Exclusion.FirstZero ? Number(convertValue % this._characterSetSizeMinusOneN) + 1 : Number(convertValue % this._characterSetSizeN)) + s;
455
+ s = this.character(exclusion === Exclusions.FirstZero ? Number(convertValue % this._characterSetSizeMinusOneN) + 1 : Number(convertValue % this._characterSetSizeN)) + s;
473
456
  }
474
457
  return creatorCallback === undefined ? s : creatorCallback(s, index);
475
458
  });
@@ -481,7 +464,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
481
464
  * String.
482
465
  *
483
466
  * @param exclusion
484
- * Strings excluded from the range of inputs. See {@link Exclusion} for possible values and their meaning.
467
+ * Strings excluded from the range of inputs. See {@link Exclusions} for possible values and their meaning.
485
468
  *
486
469
  * @param tweak
487
470
  * If provided, the numerical value of the string was "tweaked" using an {@link EncryptionTransformer | encryption
@@ -490,7 +473,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
490
473
  * @returns
491
474
  * Numeric value of the string.
492
475
  */
493
- valueFor(s, exclusion = Exclusion.None, tweak) {
476
+ valueFor(s, exclusion = Exclusions.None, tweak) {
494
477
  const length = s.length;
495
478
  this.validateLength(length);
496
479
  this.validateExclusion(exclusion);
@@ -504,7 +487,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
504
487
  }));
505
488
  }
506
489
  let value;
507
- if (index === 0 && exclusion === Exclusion.FirstZero) {
490
+ if (index === 0 && exclusion === Exclusions.FirstZero) {
508
491
  if (characterIndex === 0) {
509
492
  throw new RangeError(i18nextUtility.t("CharacterSetValidator.invalidCharacterAtPosition", {
510
493
  c: "0",
@@ -519,7 +502,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
519
502
  }
520
503
  return value;
521
504
  }, 0n);
522
- if (exclusion === Exclusion.AllNumeric) {
505
+ if (exclusion === Exclusions.AllNumeric) {
523
506
  const allZerosValue = this._allZerosValues[length];
524
507
  if (value >= allZerosValue) {
525
508
  // Call will ensure that string is not all-numeric.
@@ -530,26 +513,26 @@ export class CharacterSetCreator extends CharacterSetValidator {
530
513
  }
531
514
  }
532
515
  /**
533
- * Numeric creator. Character set is 0-9. Supports {@link Exclusion.FirstZero}.
516
+ * Numeric creator. Character set is 0-9. Supports {@link Exclusions.FirstZero}.
534
517
  */
535
518
  export const NUMERIC_CREATOR = new CharacterSetCreator([
536
519
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
537
- ], Exclusion.FirstZero);
520
+ ], Exclusions.FirstZero);
538
521
  /**
539
- * Numeric validator. Character set is 0-9. Supports {@link Exclusion.FirstZero}.
522
+ * Numeric validator. Character set is 0-9. Supports {@link Exclusions.FirstZero}.
540
523
  */
541
524
  export const NUMERIC_VALIDATOR = NUMERIC_CREATOR;
542
525
  /**
543
- * Hexadecimal creator. Character set is 0-9, A-F. Supports {@link Exclusion.FirstZero} and {@link
544
- * Exclusion.AllNumeric}.
526
+ * Hexadecimal creator. Character set is 0-9, A-F. Supports {@link Exclusions.FirstZero} and {@link
527
+ * Exclusions.AllNumeric}.
545
528
  */
546
529
  export const HEXADECIMAL_CREATOR = new CharacterSetCreator([
547
530
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
548
531
  "A", "B", "C", "D", "E", "F"
549
- ], Exclusion.FirstZero, Exclusion.AllNumeric);
532
+ ], Exclusions.FirstZero, Exclusions.AllNumeric);
550
533
  /**
551
- * Hexadecimal validator. Character set is 0-9, A-F. Supports {@link Exclusion.FirstZero} and {@link
552
- * Exclusion.AllNumeric}.
534
+ * Hexadecimal validator. Character set is 0-9, A-F. Supports {@link Exclusions.FirstZero} and {@link
535
+ * Exclusions.AllNumeric}.
553
536
  */
554
537
  export const HEXADECIMAL_VALIDATOR = HEXADECIMAL_CREATOR;
555
538
  /**
@@ -564,17 +547,17 @@ export const ALPHABETIC_CREATOR = new CharacterSetCreator([
564
547
  */
565
548
  export const ALPHABETIC_VALIDATOR = ALPHABETIC_CREATOR;
566
549
  /**
567
- * Alphanumeric creator. Character set is 0-9, A-Z. Supports {@link Exclusion.FirstZero} and {@link
568
- * Exclusion.AllNumeric}.
550
+ * Alphanumeric creator. Character set is 0-9, A-Z. Supports {@link Exclusions.FirstZero} and {@link
551
+ * Exclusions.AllNumeric}.
569
552
  */
570
553
  export const ALPHANUMERIC_CREATOR = new CharacterSetCreator([
571
554
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
572
555
  "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M",
573
556
  "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
574
- ], Exclusion.FirstZero, Exclusion.AllNumeric);
557
+ ], Exclusions.FirstZero, Exclusions.AllNumeric);
575
558
  /**
576
- * Alphanumeric validator. Character set is 0-9, A-Z. Supports {@link Exclusion.FirstZero} and {@link
577
- * Exclusion.AllNumeric}.
559
+ * Alphanumeric validator. Character set is 0-9, A-Z. Supports {@link Exclusions.FirstZero} and {@link
560
+ * Exclusions.AllNumeric}.
578
561
  */
579
562
  export const ALPHANUMERIC_VALIDATOR = ALPHANUMERIC_CREATOR;
580
563
  //# sourceMappingURL=character-set.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"character-set.js","sourceRoot":"","sources":["../src/character-set.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAiD,MAAM,kBAAkB,CAAC;AAE9F;;GAEG;AACH,MAAM,CAAN,IAAY,SAeX;AAfD,WAAY,SAAS;IACjB;;OAEG;IACH,yCAAI,CAAA;IAEJ;;OAEG;IACH,mDAAS,CAAA;IAET;;OAEG;IACH,qDAAU,CAAA;AACd,CAAC,EAfW,SAAS,KAAT,SAAS,QAepB;AAmCD;;GAEG;AACH,MAAM,OAAO,qBAAqB;IACtB,MAAM,CAAU,yBAAyB,GAAG,IAAI,KAAM,SAAQ,eAAe;QACjF;;;;;;;;WAQG;QACgB,kBAAkB,CAAC,EAAU;YAC5C,OAAO,cAAc,CAAC,CAAC,CAAC,iDAAiD,CAAC,CAAC;QAC/E,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IAER;;OAEG;IACc,aAAa,CAAoB;IAElD;;;OAGG;IACc,gBAAgB,CAA8B;IAE/D;;OAEG;IACc,iBAAiB,CAAuB;IAEzD;;;;;;;;;OASG;IACH,YAAY,YAA+B,EAAE,GAAG,gBAAsC;QAClF,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAElC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAElD,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YAC9B,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QAExC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,KAAa;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc,CAAC,CAAS;QACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,CAAS;QACtB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;;;;OASG;IACK,MAAM,CAAC,iBAAiB,CAAC,SAA8C;QAC3E,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,CAAC;IAED;;;;;OAKG;IACO,iBAAiB,CAAC,SAAoB;QAC5C,IAAI,SAAS,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9E,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,6CAA6C,EAAE;gBACjF,SAAS;aACZ,CAAC,CAAC,CAAC;QACR,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,CAAS,EAAE,UAAmC;QACnD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QAExB,MAAM,aAAa,GAAG,UAAU,EAAE,aAAa,CAAC;QAChD,MAAM,aAAa,GAAG,UAAU,EAAE,aAAa,CAAC;QAEhD,IAAI,aAAa,KAAK,SAAS,IAAI,MAAM,GAAG,aAAa,EAAE,CAAC;YACxD,IAAI,YAAoB,CAAC;YAEzB,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;gBACjE,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,sDAAsD,EAAE;oBACxK,SAAS,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC;oBACzE,MAAM;oBACN,WAAW,EAAE,aAAa;iBAC7B,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,mEAAmE,EAAE;oBAClM,SAAS,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC;oBACzE,MAAM;oBACN,aAAa;iBAChB,CAAC,CAAC;YACP,CAAC;YAED,MAAM,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,aAAa,KAAK,SAAS,IAAI,MAAM,GAAG,aAAa,EAAE,CAAC;YACxD,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,qDAAqD,CAAC,CAAC,CAAC,gEAAgE,EAAE;gBAClM,SAAS,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC;gBACzE,MAAM;gBACN,aAAa;aAChB,CAAC,CAAC,CAAC;QACR,CAAC;QAED,0EAA0E;QAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;QAEjG,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,kDAAkD,CAAC,CAAC,CAAC,6DAA6D,EAAE;gBAC5L,SAAS,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC;gBACzE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAClB,QAAQ,EAAE,KAAK,GAAG,CAAC,UAAU,EAAE,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC;aAC1D,CAAC,CAAC,CAAC;QACR,CAAC;QAED,IAAI,UAAU,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAE7C,QAAQ,UAAU,CAAC,SAAS,EAAE,CAAC;gBAC3B,KAAK,SAAS,CAAC,IAAI;oBACf,MAAM;gBAEV,KAAK,SAAS,CAAC,SAAS;oBACpB,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;wBACpB,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,kDAAkD,CAAC,CAAC,CAAC,6DAA6D,EAAE;4BAC3L,SAAS,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC;4BACxE,CAAC,EAAE,GAAG;4BACN,QAAQ,EAAE,CAAC,UAAU,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC;yBACjD,CAAC,CAAC,CAAC;oBACR,CAAC;oBACD,MAAM;gBAEV,KAAK,SAAS,CAAC,UAAU;oBACrB,qBAAqB,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC5D,MAAM;YACd,CAAC;QACL,CAAC;IACL,CAAC;;AAGL;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,qBAAqB;IAC1D;;OAEG;IACH,MAAM,CAAU,qBAAqB,GAAG,EAAE,CAAC;IAE3C;;OAEG;IACK,MAAM,CAAU,WAAW,GAAsB,mBAAmB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAEhG;;;;;;;;OAQG;IACK,MAAM,CAAC,cAAc,CAAC,IAAY;QACtC,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;QAEnE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAE3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,KAAK,IAAI,IAAI,CAAC,qBAAqB,EAAE,KAAK,EAAE,EAAE,OAAO,IAAI,KAAK,EAAE,CAAC;YAC/F,QAAQ,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;QAC9B,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACc,kBAAkB,CAAS;IAE5C;;OAEG;IACc,0BAA0B,CAAS;IAEpD;;OAEG;IACc,iBAAiB,CAAmC;IAErE;;OAEG;IACc,eAAe,CAAoB;IAEpD;;;;;;;;;OASG;IACH,YAAY,YAA+B,EAAE,GAAG,gBAAsC;QAClF,KAAK,CAAC,YAAY,EAAE,GAAG,gBAAgB,CAAC,CAAC;QAEzC,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxD,IAAI,CAAC,0BAA0B,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAEpE,MAAM,gBAAgB,GAA6B,EAAE,CAAC;QAEtD,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAEvF,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC;QAExD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACjD,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC1B,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC,CAAC;YAC5F,CAAC;YAED,MAAM,yBAAyB,GAAG,IAAI,KAAK,CAAS,mBAAmB,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;YAEnG,gEAAgE;YAChE,yBAAyB,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YAElC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,mBAAmB,CAAC,qBAAqB,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC9E,gGAAgG;gBAChG,yBAAyB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,0BAA0B,GAAG,oBAAoB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACzG,CAAC;YAED,gBAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,yBAAyB,CAAC;QACtE,CAAC;QAED,IAAI,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YAClD,MAAM,0BAA0B,GAAG,IAAI,KAAK,CAAS,mBAAmB,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;YAEpG;;;;;eAKG;YACH,SAAS,qBAAqB,CAAC,aAAgD;gBAC3E,IAAI,mBAAmB,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAE3C,qEAAqE;gBACrE,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;oBACtC,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,mBAAmB,EAAE,CAAC;wBACnE,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,sDAAsD,CAAC,CAAC,CAAC;oBACnG,CAAC;oBAED,mBAAmB,GAAG,WAAW,GAAG,CAAC,CAAC;gBAC1C,CAAC;YACL,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAE1D,qBAAqB,CAAC,aAAa,CAAC,CAAC;YAErC,kEAAkE;YAClE,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,cAAc,GAAG,IAAI,KAAK,CAAS,mBAAmB,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;YACxF,IAAI,aAAa,GAAG,EAAE,CAAC;YAEvB,+GAA+G;YAC/G,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,mBAAmB,CAAC,qBAAqB,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC9E,yFAAyF;gBACzF,0BAA0B,CAAC,KAAK,CAAC,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,mBAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAEvG,cAAc,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;gBAEtC,aAAa,GAAG,aAAa,GAAG,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACxE,CAAC;YAED,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YAEtC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,0BAA0B,CAAC;QACxE,CAAC;aAAM,CAAC;YACJ,sGAAsG;YACtG,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAC9C,CAAC;IAED;;;;;;;;OAQG;IACK,WAAW,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACK,eAAe,CAAC,YAAqB,EAAE,MAAc,EAAE,KAAa;QACxE,IAAI,KAAa,CAAC;QAElB,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;gBAC/B,uDAAuD;gBACvD,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,iDAAiD,CAAC,CAAC,CAAC;YAC9F,CAAC;YAED,kFAAkF;YAClF,KAAK,GAAG,GAAG,CAAC;QAChB,CAAC;aAAM,CAAC;YACJ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,SAAS,GAAG,mBAAmB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAExD,iGAAiG;YACjG,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;YAEjE,uDAAuD;YACvD,MAAM,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC;YAEzB,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;gBACd,iCAAiC;gBACjC,KAAK,GAAG,mBAAmB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACJ,6JAA6J;gBAC7J,KAAK,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;YAClG,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACK,cAAc,CAAC,MAAc;QACjC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACb,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,wDAAwD,EAAE;gBAC5F,MAAM;gBACN,aAAa,EAAE,CAAC;aACnB,CAAC,CAAC,CAAC;QACR,CAAC;QAED,IAAI,MAAM,GAAG,mBAAmB,CAAC,qBAAqB,EAAE,CAAC;YACrD,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,qDAAqD,EAAE;gBACzF,MAAM;gBACN,aAAa,EAAE,mBAAmB,CAAC,qBAAqB;aAC3D,CAAC,CAAC,CAAC;QACR,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,MAAM,CAA8D,MAAc,EAAE,aAAgC,EAAE,YAAuB,SAAS,CAAC,IAAI,EAAE,KAAuB,EAAE,eAAiD;QACnO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,mEAAmE;QACnE,MAAM,aAAa,GAAG,SAAS,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7F,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAEtF,OAAO,WAAW,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE;YAClE,IAAI,CAAC,GAAG,EAAE,CAAC;YAEX,yBAAyB;YACzB,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;gBACf,IAAI,YAAY,GAAG,gBAAgB,CAAC;gBAEpC,IAAI,SAAS,KAAK,SAAS,CAAC,UAAU,IAAI,YAAY,IAAI,aAAa,EAAE,CAAC;oBACtE,iGAAiG;oBACjG,YAAY,GAAG,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAAC,CAAC;gBACnG,CAAC;gBAED,iEAAiE;gBACjE,KAAK,IAAI,QAAQ,GAAG,MAAM,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC;oBACvD,MAAM,gBAAgB,GAAG,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC;oBAEhE,mDAAmD;oBACnD,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,GAAG,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC;oBAE1F,YAAY,GAAG,gBAAgB,CAAC;gBACpC,CAAC;gBAED,kFAAkF;gBAClF,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC;YAC5K,CAAC;YAED,OAAO,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,CAAS,EAAE,YAAuB,SAAS,CAAC,IAAI,EAAE,KAAuB;QAC9E,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QAExB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAExD,sDAAsD;QACtD,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE;YAC/E,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBAC/B,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,kDAAkD,EAAE;oBACtF,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAClB,QAAQ,EAAE,KAAK,GAAG,CAAC;iBACtB,CAAC,CAAC,CAAC;YACR,CAAC;YAED,IAAI,KAAa,CAAC;YAElB,IAAI,KAAK,KAAK,CAAC,IAAI,SAAS,KAAK,SAAS,CAAC,SAAS,EAAE,CAAC;gBACnD,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;oBACvB,MAAM,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,kDAAkD,EAAE;wBACtF,CAAC,EAAE,GAAG;wBACN,QAAQ,EAAE,CAAC;qBACd,CAAC,CAAC,CAAC;gBACR,CAAC;gBAED,iDAAiD;gBACjD,KAAK,GAAG,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACJ,KAAK,GAAG,WAAW,GAAG,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;YACrE,CAAC;YAED,OAAO,KAAK,CAAC;QACjB,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,IAAI,SAAS,KAAK,SAAS,CAAC,UAAU,EAAE,CAAC;YACrC,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAEnD,IAAI,KAAK,IAAI,aAAa,EAAE,CAAC;gBACzB,mDAAmD;gBACnD,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,aAAa,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5F,CAAC;;AAGL;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,mBAAmB,CAAC;IACnD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CACnD,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAwC,CAAC;AAE1E;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,CAAC;IACvD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;IAChD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CAC/B,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAA4C,CAAC;AAElF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,mBAAmB,CAAC;IACtD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;IAC/D,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CAClE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,kBAA2C,CAAC;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;IACxD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;IAChD,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;IAC/D,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CAClE,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;AAE9C;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAA6C,CAAC"}
1
+ {"version":3,"file":"character-set.js","sourceRoot":"","sources":["../src/character-set.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Exclusion options for validating and creating strings based on character sets.
3
+ */
4
+ export declare const Exclusions: {
5
+ /**
6
+ * No strings excluded.
7
+ */
8
+ readonly None: 0;
9
+ /**
10
+ * Strings that start with zero ('0') excluded.
11
+ */
12
+ readonly FirstZero: 1;
13
+ /**
14
+ * Strings that are all-numeric (e.g., "123456") excluded.
15
+ */
16
+ readonly AllNumeric: 2;
17
+ };
18
+ /**
19
+ * Exclusion.
20
+ */
21
+ export type Exclusion = typeof Exclusions[keyof typeof Exclusions];
22
+ //# sourceMappingURL=exclusion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exclusion.d.ts","sourceRoot":"","sources":["../src/exclusion.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,UAAU;IACnB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEG,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Exclusion options for validating and creating strings based on character sets.
3
+ */
4
+ export const Exclusions = {
5
+ /**
6
+ * No strings excluded.
7
+ */
8
+ None: 0,
9
+ /**
10
+ * Strings that start with zero ('0') excluded.
11
+ */
12
+ FirstZero: 1,
13
+ /**
14
+ * Strings that are all-numeric (e.g., "123456") excluded.
15
+ */
16
+ AllNumeric: 2
17
+ };
18
+ //# sourceMappingURL=exclusion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exclusion.js","sourceRoot":"","sources":["../src/exclusion.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB;;OAEG;IACH,IAAI,EAAE,CAAC;IAEP;;OAEG;IACH,SAAS,EAAE,CAAC;IAEZ;;OAEG;IACH,UAAU,EAAE,CAAC;CACP,CAAC"}
package/dist/index.d.ts CHANGED
@@ -21,5 +21,6 @@ export * from "./transformer.js";
21
21
  export type * from "./string.js";
22
22
  export * from "./reg-exp.js";
23
23
  export * from "./record.js";
24
+ export * from "./exclusion.js";
24
25
  export * from "./character-set.js";
25
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,mBAAmB,aAAa,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,mBAAmB,aAAa,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -20,5 +20,6 @@ export * from "./iterable-utility.js";
20
20
  export * from "./transformer.js";
21
21
  export * from "./reg-exp.js";
22
22
  export * from "./record.js";
23
+ export * from "./exclusion.js";
23
24
  export * from "./character-set.js";
24
25
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aidc-toolkit/utility",
3
- "version": "0.9.19-beta",
3
+ "version": "0.9.21-beta",
4
4
  "description": "Foundational utilities for AIDC Toolkit",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -28,10 +28,9 @@
28
28
  },
29
29
  "devDependencies": {
30
30
  "@aidc-toolkit/dev": "beta",
31
- "vitest": "^4.0.13"
31
+ "vitest": "^4.0.14"
32
32
  },
33
33
  "dependencies": {
34
- "@aidc-toolkit/core": "beta",
35
- "i18next": "^25.6.3"
34
+ "@aidc-toolkit/core": "beta"
36
35
  }
37
36
  }
@@ -1,29 +1,10 @@
1
+ import { type Exclusion, Exclusions } from "./exclusion.js";
1
2
  import type { IndexedCallback } from "./iterable-utility.js";
2
3
  import { i18nextUtility } from "./locale/i18n.js";
3
4
  import { RegExpValidator } from "./reg-exp.js";
4
5
  import type { StringValidation, StringValidator } from "./string.js";
5
6
  import { Transformer, type TransformerInput, type TransformerOutput } from "./transformer.js";
6
7
 
7
- /**
8
- * Exclusion options for validating and creating strings based on character sets.
9
- */
10
- export enum Exclusion {
11
- /**
12
- * No strings excluded.
13
- */
14
- None,
15
-
16
- /**
17
- * Strings that start with zero ('0') excluded.
18
- */
19
- FirstZero,
20
-
21
- /**
22
- * Strings that are all-numeric (e.g., "123456") excluded.
23
- */
24
- AllNumeric
25
- }
26
-
27
8
  /**
28
9
  * Character set validation parameters.
29
10
  */
@@ -100,7 +81,7 @@ export class CharacterSetValidator implements StringValidator<CharacterSetValida
100
81
  * set.
101
82
  *
102
83
  * @param exclusionSupport
103
- * Exclusions supported by the character set. All character sets implicitly support {@link Exclusion.None}.
84
+ * Exclusions supported by the character set. All character sets implicitly support {@link Exclusions.None}.
104
85
  */
105
86
  constructor(characterSet: readonly string[], ...exclusionSupport: readonly Exclusion[]) {
106
87
  this._characterSet = characterSet;
@@ -197,7 +178,7 @@ export class CharacterSetValidator implements StringValidator<CharacterSetValida
197
178
  * Exclusion.
198
179
  */
199
180
  protected validateExclusion(exclusion: Exclusion): void {
200
- if (exclusion !== Exclusion.None && !this._exclusionSupport.includes(exclusion)) {
181
+ if (exclusion !== Exclusions.None && !this._exclusionSupport.includes(exclusion)) {
201
182
  throw new RangeError(i18nextUtility.t("CharacterSetValidator.exclusionNotSupported", {
202
183
  exclusion
203
184
  }));
@@ -263,10 +244,10 @@ export class CharacterSetValidator implements StringValidator<CharacterSetValida
263
244
  this.validateExclusion(validation.exclusion);
264
245
 
265
246
  switch (validation.exclusion) {
266
- case Exclusion.None:
247
+ case Exclusions.None:
267
248
  break;
268
249
 
269
- case Exclusion.FirstZero:
250
+ case Exclusions.FirstZero:
270
251
  if (s.startsWith("0")) {
271
252
  throw new RangeError(i18nextUtility.t(validation.component === undefined ? "CharacterSetValidator.invalidCharacterAtPosition" : "CharacterSetValidator.invalidCharacterAtPositionOfComponent", {
272
253
  component: CharacterSetValidator.componentToString(validation.component),
@@ -276,7 +257,7 @@ export class CharacterSetValidator implements StringValidator<CharacterSetValida
276
257
  }
277
258
  break;
278
259
 
279
- case Exclusion.AllNumeric:
260
+ case Exclusions.AllNumeric:
280
261
  CharacterSetValidator.NOT_ALL_NUMERIC_VALIDATOR.validate(s);
281
262
  break;
282
263
  }
@@ -343,7 +324,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
343
324
  private readonly _characterSetSizeMinusOneN: bigint;
344
325
 
345
326
  /**
346
- * Domains for every length for every supported {@link Exclusion}.
327
+ * Domains for every length for every supported {@link Exclusions}.
347
328
  */
348
329
  private readonly _exclusionDomains: ReadonlyArray<readonly bigint[]>;
349
330
 
@@ -360,7 +341,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
360
341
  * set.
361
342
  *
362
343
  * @param exclusionSupport
363
- * Exclusions supported by the character set. All character sets implicitly support {@link Exclusion.None}.
344
+ * Exclusions supported by the character set. All character sets implicitly support {@link Exclusions.None}.
364
345
  */
365
346
  constructor(characterSet: readonly string[], ...exclusionSupport: readonly Exclusion[]) {
366
347
  super(characterSet, ...exclusionSupport);
@@ -372,9 +353,9 @@ export class CharacterSetCreator extends CharacterSetValidator {
372
353
 
373
354
  const exclusionNoneDomains = CharacterSetCreator.createPowersOf(this.characterSetSize);
374
355
 
375
- exclusionDomains[Exclusion.None] = exclusionNoneDomains;
356
+ exclusionDomains[Exclusions.None] = exclusionNoneDomains;
376
357
 
377
- if (exclusionSupport.includes(Exclusion.FirstZero)) {
358
+ if (exclusionSupport.includes(Exclusions.FirstZero)) {
378
359
  if (characterSet[0] !== "0") {
379
360
  throw new RangeError(i18nextUtility.t("CharacterSetValidator.firstZeroFirstCharacter"));
380
361
  }
@@ -389,10 +370,10 @@ export class CharacterSetCreator extends CharacterSetValidator {
389
370
  exclusionFirstZeroDomains[index] = this._characterSetSizeMinusOneN * exclusionNoneDomains[index - 1];
390
371
  }
391
372
 
392
- exclusionDomains[Exclusion.FirstZero] = exclusionFirstZeroDomains;
373
+ exclusionDomains[Exclusions.FirstZero] = exclusionFirstZeroDomains;
393
374
  }
394
375
 
395
- if (exclusionSupport.includes(Exclusion.AllNumeric)) {
376
+ if (exclusionSupport.includes(Exclusions.AllNumeric)) {
396
377
  const exclusionAllNumericDomains = new Array<bigint>(CharacterSetCreator.MAXIMUM_STRING_LENGTH + 1);
397
378
 
398
379
  /**
@@ -436,7 +417,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
436
417
 
437
418
  this._allZerosValues = allZerosValues;
438
419
 
439
- exclusionDomains[Exclusion.AllNumeric] = exclusionAllNumericDomains;
420
+ exclusionDomains[Exclusions.AllNumeric] = exclusionAllNumericDomains;
440
421
  } else {
441
422
  // Empty array obviates need for non-null assertion while still forcing error if indexed due to a bug.
442
423
  this._allZerosValues = [];
@@ -455,7 +436,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
455
436
  * `characterSetSize**power`.
456
437
  */
457
438
  private powerOfSize(power: number): bigint {
458
- return this._exclusionDomains[Exclusion.None][power];
439
+ return this._exclusionDomains[Exclusions.None][power];
459
440
  }
460
441
 
461
442
  /**
@@ -542,7 +523,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
542
523
  * Numeric value(s) of the string(s).
543
524
  *
544
525
  * @param exclusion
545
- * String(s) to be excluded from the range of outputs. See {@link Exclusion} for possible values and their meaning.
526
+ * String(s) to be excluded from the range of outputs. See {@link Exclusions} for possible values and their meaning.
546
527
  *
547
528
  * @param tweak
548
529
  * If provided, the numerical value of the string(s) is/are "tweaked" using an {@link EncryptionTransformer |
@@ -554,12 +535,12 @@ export class CharacterSetCreator extends CharacterSetValidator {
554
535
  * @returns
555
536
  * String(s) created from the value(s).
556
537
  */
557
- create<TTransformerInput extends TransformerInput<number | bigint>>(length: number, valueOrValues: TTransformerInput, exclusion: Exclusion = Exclusion.None, tweak?: number | bigint, creatorCallback?: IndexedCallback<string, string>): TransformerOutput<TTransformerInput, string> {
538
+ create<TTransformerInput extends TransformerInput<number | bigint>>(length: number, valueOrValues: TTransformerInput, exclusion: Exclusion = Exclusions.None, tweak?: number | bigint, creatorCallback?: IndexedCallback<string, string>): TransformerOutput<TTransformerInput, string> {
558
539
  this.validateLength(length);
559
540
  this.validateExclusion(exclusion);
560
541
 
561
542
  // Zero value in ternary else obviates need for non-null assertion.
562
- const allZerosValue = exclusion === Exclusion.AllNumeric ? this._allZerosValues[length] : 0n;
543
+ const allZerosValue = exclusion === Exclusions.AllNumeric ? this._allZerosValues[length] : 0n;
563
544
 
564
545
  const transformer = Transformer.get(this._exclusionDomains[exclusion][length], tweak);
565
546
 
@@ -570,7 +551,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
570
551
  if (length !== 0) {
571
552
  let convertValue = transformedValue;
572
553
 
573
- if (exclusion === Exclusion.AllNumeric && convertValue >= allZerosValue) {
554
+ if (exclusion === Exclusions.AllNumeric && convertValue >= allZerosValue) {
574
555
  // Value to convert is shifted by the number of all-numeric strings that occur at or prior to it.
575
556
  convertValue = convertValue + this.allNumericShift(true, length, convertValue - allZerosValue);
576
557
  }
@@ -586,7 +567,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
586
567
  }
587
568
 
588
569
  // Zero is first in the character set for those that support excluding first zero.
589
- s = this.character(exclusion === Exclusion.FirstZero ? Number(convertValue % this._characterSetSizeMinusOneN) + 1 : Number(convertValue % this._characterSetSizeN)) + s;
570
+ s = this.character(exclusion === Exclusions.FirstZero ? Number(convertValue % this._characterSetSizeMinusOneN) + 1 : Number(convertValue % this._characterSetSizeN)) + s;
590
571
  }
591
572
 
592
573
  return creatorCallback === undefined ? s : creatorCallback(s, index);
@@ -600,7 +581,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
600
581
  * String.
601
582
  *
602
583
  * @param exclusion
603
- * Strings excluded from the range of inputs. See {@link Exclusion} for possible values and their meaning.
584
+ * Strings excluded from the range of inputs. See {@link Exclusions} for possible values and their meaning.
604
585
  *
605
586
  * @param tweak
606
587
  * If provided, the numerical value of the string was "tweaked" using an {@link EncryptionTransformer | encryption
@@ -609,7 +590,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
609
590
  * @returns
610
591
  * Numeric value of the string.
611
592
  */
612
- valueFor(s: string, exclusion: Exclusion = Exclusion.None, tweak?: number | bigint): bigint {
593
+ valueFor(s: string, exclusion: Exclusion = Exclusions.None, tweak?: number | bigint): bigint {
613
594
  const length = s.length;
614
595
 
615
596
  this.validateLength(length);
@@ -628,7 +609,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
628
609
 
629
610
  let value: bigint;
630
611
 
631
- if (index === 0 && exclusion === Exclusion.FirstZero) {
612
+ if (index === 0 && exclusion === Exclusions.FirstZero) {
632
613
  if (characterIndex === 0) {
633
614
  throw new RangeError(i18nextUtility.t("CharacterSetValidator.invalidCharacterAtPosition", {
634
615
  c: "0",
@@ -645,7 +626,7 @@ export class CharacterSetCreator extends CharacterSetValidator {
645
626
  return value;
646
627
  }, 0n);
647
628
 
648
- if (exclusion === Exclusion.AllNumeric) {
629
+ if (exclusion === Exclusions.AllNumeric) {
649
630
  const allZerosValue = this._allZerosValues[length];
650
631
 
651
632
  if (value >= allZerosValue) {
@@ -659,29 +640,29 @@ export class CharacterSetCreator extends CharacterSetValidator {
659
640
  }
660
641
 
661
642
  /**
662
- * Numeric creator. Character set is 0-9. Supports {@link Exclusion.FirstZero}.
643
+ * Numeric creator. Character set is 0-9. Supports {@link Exclusions.FirstZero}.
663
644
  */
664
645
  export const NUMERIC_CREATOR = new CharacterSetCreator([
665
646
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
666
- ], Exclusion.FirstZero);
647
+ ], Exclusions.FirstZero);
667
648
 
668
649
  /**
669
- * Numeric validator. Character set is 0-9. Supports {@link Exclusion.FirstZero}.
650
+ * Numeric validator. Character set is 0-9. Supports {@link Exclusions.FirstZero}.
670
651
  */
671
652
  export const NUMERIC_VALIDATOR = NUMERIC_CREATOR as CharacterSetValidator;
672
653
 
673
654
  /**
674
- * Hexadecimal creator. Character set is 0-9, A-F. Supports {@link Exclusion.FirstZero} and {@link
675
- * Exclusion.AllNumeric}.
655
+ * Hexadecimal creator. Character set is 0-9, A-F. Supports {@link Exclusions.FirstZero} and {@link
656
+ * Exclusions.AllNumeric}.
676
657
  */
677
658
  export const HEXADECIMAL_CREATOR = new CharacterSetCreator([
678
659
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
679
660
  "A", "B", "C", "D", "E", "F"
680
- ], Exclusion.FirstZero, Exclusion.AllNumeric);
661
+ ], Exclusions.FirstZero, Exclusions.AllNumeric);
681
662
 
682
663
  /**
683
- * Hexadecimal validator. Character set is 0-9, A-F. Supports {@link Exclusion.FirstZero} and {@link
684
- * Exclusion.AllNumeric}.
664
+ * Hexadecimal validator. Character set is 0-9, A-F. Supports {@link Exclusions.FirstZero} and {@link
665
+ * Exclusions.AllNumeric}.
685
666
  */
686
667
  export const HEXADECIMAL_VALIDATOR = HEXADECIMAL_CREATOR as CharacterSetValidator;
687
668
 
@@ -699,17 +680,17 @@ export const ALPHABETIC_CREATOR = new CharacterSetCreator([
699
680
  export const ALPHABETIC_VALIDATOR = ALPHABETIC_CREATOR as CharacterSetValidator;
700
681
 
701
682
  /**
702
- * Alphanumeric creator. Character set is 0-9, A-Z. Supports {@link Exclusion.FirstZero} and {@link
703
- * Exclusion.AllNumeric}.
683
+ * Alphanumeric creator. Character set is 0-9, A-Z. Supports {@link Exclusions.FirstZero} and {@link
684
+ * Exclusions.AllNumeric}.
704
685
  */
705
686
  export const ALPHANUMERIC_CREATOR = new CharacterSetCreator([
706
687
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
707
688
  "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M",
708
689
  "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
709
- ], Exclusion.FirstZero, Exclusion.AllNumeric);
690
+ ], Exclusions.FirstZero, Exclusions.AllNumeric);
710
691
 
711
692
  /**
712
- * Alphanumeric validator. Character set is 0-9, A-Z. Supports {@link Exclusion.FirstZero} and {@link
713
- * Exclusion.AllNumeric}.
693
+ * Alphanumeric validator. Character set is 0-9, A-Z. Supports {@link Exclusions.FirstZero} and {@link
694
+ * Exclusions.AllNumeric}.
714
695
  */
715
696
  export const ALPHANUMERIC_VALIDATOR = ALPHANUMERIC_CREATOR as CharacterSetValidator;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Exclusion options for validating and creating strings based on character sets.
3
+ */
4
+ export const Exclusions = {
5
+ /**
6
+ * No strings excluded.
7
+ */
8
+ None: 0,
9
+
10
+ /**
11
+ * Strings that start with zero ('0') excluded.
12
+ */
13
+ FirstZero: 1,
14
+
15
+ /**
16
+ * Strings that are all-numeric (e.g., "123456") excluded.
17
+ */
18
+ AllNumeric: 2
19
+ } as const;
20
+
21
+ /**
22
+ * Exclusion.
23
+ */
24
+ export type Exclusion = typeof Exclusions[keyof typeof Exclusions];
package/src/index.ts CHANGED
@@ -21,4 +21,5 @@ export * from "./transformer.js";
21
21
  export type * from "./string.js";
22
22
  export * from "./reg-exp.js";
23
23
  export * from "./record.js";
24
+ export * from "./exclusion.js";
24
25
  export * from "./character-set.js";
@@ -1,18 +1,20 @@
1
- import { I18nEnvironment } from "@aidc-toolkit/core";
2
1
  import { describe, expect, test } from "vitest";
3
2
  import {
4
- ALPHABETIC_CREATOR, ALPHABETIC_VALIDATOR,
5
- ALPHANUMERIC_CREATOR, ALPHANUMERIC_VALIDATOR,
6
- CharacterSetCreator, type CharacterSetValidator,
7
- Exclusion,
8
- HEXADECIMAL_CREATOR, HEXADECIMAL_VALIDATOR,
9
- i18nUtilityInit,
10
- NUMERIC_CREATOR, NUMERIC_VALIDATOR,
3
+ ALPHABETIC_CREATOR,
4
+ ALPHABETIC_VALIDATOR,
5
+ ALPHANUMERIC_CREATOR,
6
+ ALPHANUMERIC_VALIDATOR,
7
+ CharacterSetCreator,
8
+ type CharacterSetValidator,
9
+ type Exclusion,
10
+ Exclusions,
11
+ HEXADECIMAL_CREATOR,
12
+ HEXADECIMAL_VALIDATOR,
13
+ NUMERIC_CREATOR,
14
+ NUMERIC_VALIDATOR,
11
15
  Sequence
12
16
  } from "../src";
13
17
 
14
- await i18nUtilityInit(I18nEnvironment.CLI);
15
-
16
18
  // Type is used to ensure that testCharacterSet() is not called with creator twice.
17
19
  type ValidatorNotCreator<T extends CharacterSetValidator> = T extends CharacterSetCreator ? never : T;
18
20
 
@@ -49,21 +51,21 @@ function testCharacterSet<T extends CharacterSetValidator>(name: string, charact
49
51
  expect(characterIndex).toBe(index);
50
52
  });
51
53
 
52
- expect(characterSetCreator.exclusionSupport.includes(Exclusion.FirstZero)).toBe(excludeFirstZero);
53
- expect(characterSetCreator.exclusionSupport.includes(Exclusion.AllNumeric)).toBe(excludeAllNumeric);
54
+ expect(characterSetCreator.exclusionSupport.includes(Exclusions.FirstZero)).toBe(excludeFirstZero);
55
+ expect(characterSetCreator.exclusionSupport.includes(Exclusions.AllNumeric)).toBe(excludeAllNumeric);
54
56
  });
55
57
 
56
58
  function testCreate(exclusion: Exclusion): void {
57
59
  let domain: number;
58
60
 
59
61
  switch (exclusion) {
60
- case Exclusion.FirstZero:
61
- expect(() => characterSetCreator.create(0, 0, Exclusion.FirstZero)).toThrow("Domain 0 must be greater than 0");
62
+ case Exclusions.FirstZero:
63
+ expect(() => characterSetCreator.create(0, 0, Exclusions.FirstZero)).toThrow("Domain 0 must be greater than 0");
62
64
  domain = (characterSetSize - 1) * characterSetSize ** (length - 1);
63
65
  break;
64
66
 
65
- case Exclusion.AllNumeric:
66
- expect(() => characterSetCreator.create(0, 0, Exclusion.AllNumeric)).toThrow("Domain 0 must be greater than 0");
67
+ case Exclusions.AllNumeric:
68
+ expect(() => characterSetCreator.create(0, 0, Exclusions.AllNumeric)).toThrow("Domain 0 must be greater than 0");
67
69
  domain = characterSetSize ** length - 10 ** length;
68
70
  break;
69
71
 
@@ -154,7 +156,7 @@ function testCharacterSet<T extends CharacterSetValidator>(name: string, charact
154
156
  // Test can take a moderate amount of time.
155
157
  timeout: 10 * 1000
156
158
  }, () => {
157
- testCreate(Exclusion.None);
159
+ testCreate(Exclusions.None);
158
160
  });
159
161
 
160
162
  if (excludeFirstZero) {
@@ -162,10 +164,10 @@ function testCharacterSet<T extends CharacterSetValidator>(name: string, charact
162
164
  // Test can take a moderate amount of time.
163
165
  timeout: 10 * 1000
164
166
  }, () => {
165
- testCreate(Exclusion.FirstZero);
167
+ testCreate(Exclusions.FirstZero);
166
168
 
167
- expect(() => characterSetCreator.valueFor("0000", Exclusion.FirstZero)).toThrow("Invalid character '0' at position 1");
168
- expect(() => characterSetCreator.valueFor("1000", Exclusion.FirstZero)).not.toThrow(RangeError);
169
+ expect(() => characterSetCreator.valueFor("0000", Exclusions.FirstZero)).toThrow("Invalid character '0' at position 1");
170
+ expect(() => characterSetCreator.valueFor("1000", Exclusions.FirstZero)).not.toThrow(RangeError);
169
171
  });
170
172
  }
171
173
 
@@ -174,15 +176,15 @@ function testCharacterSet<T extends CharacterSetValidator>(name: string, charact
174
176
  // Test can take a moderate amount of time.
175
177
  timeout: 10 * 1000
176
178
  }, () => {
177
- testCreate(Exclusion.AllNumeric);
179
+ testCreate(Exclusions.AllNumeric);
178
180
 
179
181
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- Nine is known to be present in the character set.
180
182
  const afterNine = characterSetCreator.character(characterSetCreator.characterIndex("9")! + 1);
181
183
 
182
- expect(() => characterSetCreator.valueFor("0000", Exclusion.AllNumeric)).toThrow("String must not be all numeric");
183
- expect(() => characterSetCreator.valueFor(`000${afterNine}`, Exclusion.AllNumeric)).not.toThrow(RangeError);
184
- expect(() => characterSetCreator.valueFor("9999", Exclusion.AllNumeric)).toThrow("String must not be all numeric");
185
- expect(() => characterSetCreator.valueFor(`999${afterNine}`, Exclusion.AllNumeric)).not.toThrow(RangeError);
184
+ expect(() => characterSetCreator.valueFor("0000", Exclusions.AllNumeric)).toThrow("String must not be all numeric");
185
+ expect(() => characterSetCreator.valueFor(`000${afterNine}`, Exclusions.AllNumeric)).not.toThrow(RangeError);
186
+ expect(() => characterSetCreator.valueFor("9999", Exclusions.AllNumeric)).toThrow("String must not be all numeric");
187
+ expect(() => characterSetCreator.valueFor(`999${afterNine}`, Exclusions.AllNumeric)).not.toThrow(RangeError);
186
188
  });
187
189
  }
188
190
  });
@@ -192,22 +194,22 @@ describe("Exclusion", () => {
192
194
  test("First zero", () => {
193
195
  expect(() => new CharacterSetCreator([
194
196
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
195
- ], Exclusion.FirstZero)).not.toThrow(RangeError);
197
+ ], Exclusions.FirstZero)).not.toThrow(RangeError);
196
198
  expect(() => new CharacterSetCreator([
197
199
  "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"
198
- ], Exclusion.FirstZero)).toThrow("Character set must support zero as first character");
200
+ ], Exclusions.FirstZero)).toThrow("Character set must support zero as first character");
199
201
  });
200
202
 
201
203
  test("All numeric", () => {
202
204
  expect(() => new CharacterSetCreator([
203
205
  "!", "#", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D"
204
- ], Exclusion.AllNumeric)).not.toThrow(RangeError);
206
+ ], Exclusions.AllNumeric)).not.toThrow(RangeError);
205
207
  expect(() => new CharacterSetCreator([
206
208
  "!", "#", "/", "0", "1", "2", "3", "A", "B", "C", "D"
207
- ], Exclusion.AllNumeric)).toThrow("Character set must support all numeric characters in sequence");
209
+ ], Exclusions.AllNumeric)).toThrow("Character set must support all numeric characters in sequence");
208
210
  expect(() => new CharacterSetCreator([
209
211
  "!", "#", "/", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "A", "B", "C", "D"
210
- ], Exclusion.AllNumeric)).toThrow("Character set must support all numeric characters in sequence");
212
+ ], Exclusions.AllNumeric)).toThrow("Character set must support all numeric characters in sequence");
211
213
  });
212
214
  });
213
215
 
@@ -220,6 +222,6 @@ const middleNumericCreator = new CharacterSetCreator([
220
222
  "(", ")",
221
223
  "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
222
224
  "<", ">"
223
- ], Exclusion.AllNumeric);
225
+ ], Exclusions.AllNumeric);
224
226
 
225
227
  testCharacterSet("Middle numeric", middleNumericCreator, middleNumericCreator as CharacterSetValidator, 14, 4, false, true);
@@ -1,41 +1,40 @@
1
- import { I18nEnvironment } from "@aidc-toolkit/core";
2
1
  import { describe, expect, test } from "vitest";
3
- import { i18nUtilityInit, RecordValidator } from "../src";
4
-
5
- await i18nUtilityInit(I18nEnvironment.CLI);
2
+ import { RecordValidator } from "../src";
6
3
 
7
4
  describe("Record validator", () => {
8
- enum StringEnum {
9
- ValueA = "A",
10
- ValueB = "B",
11
- ValueC = "C",
12
- ValueD = "D"
13
- }
5
+ const StringIndexes = {
6
+ ValueA: "A",
7
+ ValueB: "B",
8
+ ValueC: "C",
9
+ ValueD: "D"
10
+ } as const;
11
+
12
+ type StringIndex = typeof StringIndexes[keyof typeof StringIndexes];
14
13
 
15
- const stringEnumRecord: Record<StringEnum, string> = {
16
- [StringEnum.ValueA]: "This is for Value A",
17
- [StringEnum.ValueB]: "This is for Value B",
18
- [StringEnum.ValueC]: "This is for Value C",
19
- [StringEnum.ValueD]: "This is for Value D"
14
+ const stringRecord: Record<StringIndex, string> = {
15
+ [StringIndexes.ValueA]: "This is for Value A",
16
+ [StringIndexes.ValueB]: "This is for Value B",
17
+ [StringIndexes.ValueC]: "This is for Value C",
18
+ [StringIndexes.ValueD]: "This is for Value D"
20
19
  };
21
20
 
22
21
  test("Validation", () => {
23
- const stringEnumRecordValidator = new RecordValidator("String enumeration", stringEnumRecord);
22
+ const stringRecordValidator = new RecordValidator("String index", stringRecord);
24
23
 
25
24
  expect(() => {
26
- stringEnumRecordValidator.validate("A");
25
+ stringRecordValidator.validate("A");
27
26
  }).not.toThrow(RangeError);
28
27
  expect(() => {
29
- stringEnumRecordValidator.validate("B");
28
+ stringRecordValidator.validate("B");
30
29
  }).not.toThrow(RangeError);
31
30
  expect(() => {
32
- stringEnumRecordValidator.validate("C");
31
+ stringRecordValidator.validate("C");
33
32
  }).not.toThrow(RangeError);
34
33
  expect(() => {
35
- stringEnumRecordValidator.validate("D");
34
+ stringRecordValidator.validate("D");
36
35
  }).not.toThrow(RangeError);
37
36
  expect(() => {
38
- stringEnumRecordValidator.validate("E");
39
- }).toThrow("String enumeration \"E\" not found");
37
+ stringRecordValidator.validate("E");
38
+ }).toThrow("String index \"E\" not found");
40
39
  });
41
40
  });
@@ -1,8 +1,5 @@
1
- import { I18nEnvironment } from "@aidc-toolkit/core";
2
1
  import { describe, expect, test } from "vitest";
3
- import { i18nUtilityInit, RegExpValidator } from "../src";
4
-
5
- await i18nUtilityInit(I18nEnvironment.CLI);
2
+ import { RegExpValidator } from "../src";
6
3
 
7
4
  describe("Regular expression validator", () => {
8
5
  test("Validation", () => {
@@ -1,8 +1,5 @@
1
- import { I18nEnvironment } from "@aidc-toolkit/core";
2
1
  import { describe, expect, test } from "vitest";
3
- import { i18nUtilityInit, Sequence } from "../src";
4
-
5
- await i18nUtilityInit(I18nEnvironment.CLI);
2
+ import { Sequence } from "../src";
6
3
 
7
4
  describe("Sequence", () => {
8
5
  const sequence1 = new Sequence(10, 20);
package/test/setup.ts ADDED
@@ -0,0 +1,4 @@
1
+ import { I18nEnvironments } from "@aidc-toolkit/core";
2
+ import { i18nUtilityInit } from "../src";
3
+
4
+ await i18nUtilityInit(I18nEnvironments.CLI);
@@ -1,8 +1,5 @@
1
- import { I18nEnvironment } from "@aidc-toolkit/core";
2
1
  import { describe, expect, test } from "vitest";
3
- import { EncryptionTransformer, i18nUtilityInit, IdentityTransformer, Sequence, Transformer } from "../src";
4
-
5
- await i18nUtilityInit(I18nEnvironment.CLI);
2
+ import { EncryptionTransformer, IdentityTransformer, Sequence, Transformer } from "../src";
6
3
 
7
4
  function testTransformer(domain: number, tweak?: number, callback?: (value: bigint, forwardValue: bigint) => void): void {
8
5
  const transformer = Transformer.get(domain, tweak);
package/utility.iml CHANGED
@@ -2,7 +2,10 @@
2
2
  <module type="WEB_MODULE" version="4">
3
3
  <component name="NewModuleRootManager" inherit-compiler-output="true">
4
4
  <exclude-output />
5
- <content url="file://$MODULE_DIR$" />
5
+ <content url="file://$MODULE_DIR$">
6
+ <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
7
+ <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
8
+ </content>
6
9
  <orderEntry type="inheritedJdk" />
7
10
  <orderEntry type="sourceFolder" forTests="false" />
8
11
  </component>
@@ -0,0 +1,7 @@
1
+ import { defineConfig } from "vitest/config";
2
+
3
+ export default defineConfig({
4
+ test: {
5
+ setupFiles: ["test/setup.ts"]
6
+ }
7
+ });