@aidc-toolkit/gs1 1.0.27-beta → 1.0.31-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.
Files changed (56) hide show
  1. package/dist/abstract-identifier-creator.d.ts +6 -40
  2. package/dist/abstract-identifier-creator.d.ts.map +1 -1
  3. package/dist/abstract-identifier-creator.js +3 -9
  4. package/dist/abstract-identifier-creator.js.map +1 -1
  5. package/dist/abstract-non-gtin-numeric-identifier-creator.d.ts +7 -13
  6. package/dist/abstract-non-gtin-numeric-identifier-creator.d.ts.map +1 -1
  7. package/dist/abstract-non-gtin-numeric-identifier-creator.js +8 -11
  8. package/dist/abstract-non-gtin-numeric-identifier-creator.js.map +1 -1
  9. package/dist/abstract-numeric-identifier-creator.d.ts +7 -16
  10. package/dist/abstract-numeric-identifier-creator.d.ts.map +1 -1
  11. package/dist/abstract-numeric-identifier-creator.js +3 -9
  12. package/dist/abstract-numeric-identifier-creator.js.map +1 -1
  13. package/dist/gtin-creator.d.ts +2 -2
  14. package/dist/gtin-creator.d.ts.map +1 -1
  15. package/dist/gtin-creator.js +1 -1
  16. package/dist/gtin-creator.js.map +1 -1
  17. package/dist/identifier-creators.d.ts +32 -4
  18. package/dist/identifier-creators.d.ts.map +1 -1
  19. package/dist/identifier-creators.js +18 -0
  20. package/dist/identifier-creators.js.map +1 -1
  21. package/dist/identifier-validators.d.ts +28 -3
  22. package/dist/identifier-validators.d.ts.map +1 -1
  23. package/dist/identifier-validators.js +15 -1
  24. package/dist/identifier-validators.js.map +1 -1
  25. package/dist/non-numeric-identifier-creator.d.ts +1 -1
  26. package/dist/non-numeric-identifier-creator.d.ts.map +1 -1
  27. package/dist/non-numeric-identifier-creator.js.map +1 -1
  28. package/dist/non-serializable-numeric-identifier-creator.d.ts +1 -1
  29. package/dist/non-serializable-numeric-identifier-creator.d.ts.map +1 -1
  30. package/dist/non-serializable-numeric-identifier-creator.js.map +1 -1
  31. package/dist/non-serializable-numeric-identifier-descriptor.d.ts +5 -0
  32. package/dist/non-serializable-numeric-identifier-descriptor.d.ts.map +1 -1
  33. package/dist/prefix-manager.d.ts +19 -4
  34. package/dist/prefix-manager.d.ts.map +1 -1
  35. package/dist/prefix-manager.js +27 -69
  36. package/dist/prefix-manager.js.map +1 -1
  37. package/dist/serializable-numeric-identifier-creator.d.ts +1 -1
  38. package/dist/serializable-numeric-identifier-creator.d.ts.map +1 -1
  39. package/dist/serializable-numeric-identifier-creator.js.map +1 -1
  40. package/package.json +4 -4
  41. package/src/abstract-identifier-creator.ts +18 -70
  42. package/src/abstract-non-gtin-numeric-identifier-creator.ts +22 -27
  43. package/src/abstract-numeric-identifier-creator.ts +21 -38
  44. package/src/gtin-creator.ts +2 -4
  45. package/src/identifier-creators.ts +54 -4
  46. package/src/identifier-validators.ts +50 -3
  47. package/src/non-numeric-identifier-creator.ts +1 -3
  48. package/src/non-serializable-numeric-identifier-creator.ts +1 -2
  49. package/src/non-serializable-numeric-identifier-descriptor.ts +5 -0
  50. package/src/prefix-manager.ts +37 -76
  51. package/src/serializable-numeric-identifier-creator.ts +1 -2
  52. package/test/mixin.test.ts +35 -0
  53. package/test/non-numeric-identifier-validator.ts +2 -2
  54. package/test/serializable-numeric-identifier-validator.ts +2 -2
  55. package/test/utility.ts +6 -6
  56. package/tsconfig.json +1 -0
@@ -1,40 +1,12 @@
1
+ import type { AbstractConstructor } from "@aidc-toolkit/core";
1
2
  import type { IdentifierCreator } from "./identifier-creator.js";
2
3
  import type { IdentifierType } from "./identifier-type.js";
3
4
  import type { IdentifierValidation, IdentifierValidator } from "./identifier-validator.js";
4
- import type { IdentifierTypeValidator } from "./identifier-validators.js";
5
+ import type { IdentifierTypeValidator, IdentifierValidatorConstructorsEntry } from "./identifier-validators.js";
5
6
  import type { PrefixProvider } from "./prefix-provider.js";
6
- /**
7
- * Identifier extension constructor type.
8
- *
9
- * @template TConstructorArguments
10
- * Constructor arguments types.
11
- *
12
- * @template TConstructorInstance
13
- * Constructor instance type.
14
- */
15
- export type IdentifierExtensionConstructor<TConstructorArguments extends unknown[], TConstructorInstance> = abstract new (...args: TConstructorArguments) => TConstructorInstance;
16
- /**
17
- * Identifier validator constructor type.
18
- *
19
- * @template TConstructorArguments
20
- * Constructor arguments types.
21
- *
22
- * @template TIdentifierType
23
- * Identifier type type.
24
- *
25
- * @template TIdentifierValidation
26
- * Identifier validation type.
27
- *
28
- * @template TIdentifierValidator
29
- * Identifier validator type.
30
- */
31
- export type IdentifierValidatorConstructor<TConstructorArguments extends unknown[], TIdentifierType extends IdentifierType, TIdentifierValidation extends IdentifierValidation, TIdentifierValidator extends IdentifierValidator<TIdentifierType, TIdentifierValidation> = IdentifierTypeValidator<TIdentifierType>> = IdentifierExtensionConstructor<TConstructorArguments, TIdentifierValidator>;
32
7
  /**
33
8
  * Identifier creator constructor type, which delegates to an identifier validator constructor.
34
9
  *
35
- * @template TConstructorArguments
36
- * Constructor arguments types.
37
- *
38
10
  * @template TIdentifierType
39
11
  * Identifier type type.
40
12
  *
@@ -44,32 +16,26 @@ export type IdentifierValidatorConstructor<TConstructorArguments extends unknown
44
16
  * @template TIdentifierValidator
45
17
  * Identifier validator type.
46
18
  */
47
- export type IdentifierCreatorConstructor<TConstructorArguments extends unknown[], TIdentifierType extends IdentifierType, TIdentifierValidation extends IdentifierValidation, TIdentifierValidator extends IdentifierValidator<TIdentifierType, TIdentifierValidation>> = IdentifierExtensionConstructor<[
19
+ export type IdentifierCreatorConstructor<TIdentifierType extends IdentifierType, TIdentifierValidation extends IdentifierValidation, TIdentifierValidator extends IdentifierValidator<TIdentifierType, TIdentifierValidation>> = AbstractConstructor<[
48
20
  prefixProvider: PrefixProvider,
49
21
  prefix: string,
50
22
  checkAllowance: number,
51
- ...args: TConstructorArguments
23
+ ...args: ConstructorParameters<IdentifierValidatorConstructorsEntry<TIdentifierType>>
52
24
  ], TIdentifierValidator & IdentifierCreator<TIdentifierType, TIdentifierValidation>>;
53
25
  /**
54
26
  * Mixin implementation of {@linkcode IdentifierCreator} with an appropriate identifier validator base.
55
27
  *
56
- * @template TConstructorArguments
57
- * Constructor arguments types.
58
- *
59
28
  * @template TIdentifierType
60
29
  * Identifier type type.
61
30
  *
62
31
  * @template TIdentifierValidation
63
32
  * Identifier validation type.
64
33
  *
65
- * @template TIdentifierValidatorConstructor
66
- * Identifier validator constructor type.
67
- *
68
- * @param IdentifierValidatorBase
34
+ * @param IdentifierValidatorConstructor
69
35
  * Identifier validator base.
70
36
  *
71
37
  * @returns
72
38
  * Identifier creator class.
73
39
  */
74
- export declare function MixinAbstractIdentifierCreator<TConstructorArguments extends unknown[], TIdentifierType extends IdentifierType, TIdentifierValidation extends IdentifierValidation, TIdentifierValidatorConstructor extends IdentifierValidatorConstructor<TConstructorArguments, TIdentifierType, TIdentifierValidation>>(IdentifierValidatorBase: TIdentifierValidatorConstructor): IdentifierCreatorConstructor<TConstructorArguments, TIdentifierType, TIdentifierValidation, IdentifierTypeValidator<TIdentifierType>>;
40
+ export declare function MixinAbstractIdentifierCreator<TIdentifierType extends IdentifierType, TIdentifierValidation extends IdentifierValidation>(IdentifierValidatorConstructor: AbstractConstructor<ConstructorParameters<IdentifierValidatorConstructorsEntry<TIdentifierType>>, IdentifierTypeValidator<TIdentifierType>>): IdentifierCreatorConstructor<TIdentifierType, TIdentifierValidation, IdentifierTypeValidator<TIdentifierType>>;
75
41
  //# sourceMappingURL=abstract-identifier-creator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-identifier-creator.d.ts","sourceRoot":"","sources":["../src/abstract-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;GAQG;AACH,MAAM,MAAM,8BAA8B,CACtC,qBAAqB,SAAS,OAAO,EAAE,EACvC,oBAAoB,IACpB,QAAQ,MAAM,GAAG,IAAI,EAAE,qBAAqB,KAAK,oBAAoB,CAAC;AAE1E;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,8BAA8B,CACtC,qBAAqB,SAAS,OAAO,EAAE,EACvC,eAAe,SAAS,cAAc,EACtC,qBAAqB,SAAS,oBAAoB,EAClD,oBAAoB,SAAS,mBAAmB,CAAC,eAAe,EAAE,qBAAqB,CAAC,GAAG,uBAAuB,CAAC,eAAe,CAAC,IACnI,8BAA8B,CAC9B,qBAAqB,EACrB,oBAAoB,CACvB,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,4BAA4B,CACpC,qBAAqB,SAAS,OAAO,EAAE,EACvC,eAAe,SAAS,cAAc,EACtC,qBAAqB,SAAS,oBAAoB,EAClD,oBAAoB,SAAS,mBAAmB,CAAC,eAAe,EAAE,qBAAqB,CAAC,IACxF,8BAA8B,CAC9B;IAAC,cAAc,EAAE,cAAc;IAAE,MAAM,EAAE,MAAM;IAAE,cAAc,EAAE,MAAM;IAAE,GAAG,IAAI,EAAE,qBAAqB;CAAC,EACxG,oBAAoB,GAAG,iBAAiB,CAAC,eAAe,EAAE,qBAAqB,CAAC,CACnF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,8BAA8B,CAC1C,qBAAqB,SAAS,OAAO,EAAE,EACvC,eAAe,SAAS,cAAc,EACtC,qBAAqB,SAAS,oBAAoB,EAClD,+BAA+B,SAAS,8BAA8B,CAClE,qBAAqB,EACrB,eAAe,EACf,qBAAqB,CACxB,EACH,uBAAuB,EAAE,+BAA+B,GAAG,4BAA4B,CACrF,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,CAAC,eAAe,CAAC,CAC3C,CAwEA"}
1
+ {"version":3,"file":"abstract-identifier-creator.d.ts","sourceRoot":"","sources":["../src/abstract-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,KAAK,EAAE,uBAAuB,EAAE,oCAAoC,EAAE,MAAM,4BAA4B,CAAC;AAChH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,4BAA4B,CACpC,eAAe,SAAS,cAAc,EACtC,qBAAqB,SAAS,oBAAoB,EAClD,oBAAoB,SAAS,mBAAmB,CAAC,eAAe,EAAE,qBAAqB,CAAC,IACxF,mBAAmB,CACnB;IAAC,cAAc,EAAE,cAAc;IAAE,MAAM,EAAE,MAAM;IAAE,cAAc,EAAE,MAAM;IAAE,GAAG,IAAI,EAAE,qBAAqB,CAAC,oCAAoC,CAAC,eAAe,CAAC,CAAC;CAAC,EAC/J,oBAAoB,GAAG,iBAAiB,CAAC,eAAe,EAAE,qBAAqB,CAAC,CACnF,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,8BAA8B,CAC1C,eAAe,SAAS,cAAc,EACtC,qBAAqB,SAAS,oBAAoB,EACpD,8BAA8B,EAAE,mBAAmB,CACjD,qBAAqB,CAAC,oCAAoC,CAAC,eAAe,CAAC,CAAC,EAC5E,uBAAuB,CAAC,eAAe,CAAC,CAC3C,GAAG,4BAA4B,CAC5B,eAAe,EACf,qBAAqB,EACrB,uBAAuB,CAAC,eAAe,CAAC,CAC3C,CAwEA"}
@@ -1,30 +1,24 @@
1
1
  /**
2
2
  * Mixin implementation of {@linkcode IdentifierCreator} with an appropriate identifier validator base.
3
3
  *
4
- * @template TConstructorArguments
5
- * Constructor arguments types.
6
- *
7
4
  * @template TIdentifierType
8
5
  * Identifier type type.
9
6
  *
10
7
  * @template TIdentifierValidation
11
8
  * Identifier validation type.
12
9
  *
13
- * @template TIdentifierValidatorConstructor
14
- * Identifier validator constructor type.
15
- *
16
- * @param IdentifierValidatorBase
10
+ * @param IdentifierValidatorConstructor
17
11
  * Identifier validator base.
18
12
  *
19
13
  * @returns
20
14
  * Identifier creator class.
21
15
  */
22
- export function MixinAbstractIdentifierCreator(IdentifierValidatorBase) {
16
+ export function MixinAbstractIdentifierCreator(IdentifierValidatorConstructor) {
23
17
  /**
24
18
  * Abstract numeric identifier creator. Implements common functionality for a numeric identifier creator, mixed in
25
19
  * with a matching numeric identifier validator.
26
20
  */
27
- class AbstractIdentifierCreator extends IdentifierValidatorBase {
21
+ class AbstractIdentifierCreator extends IdentifierValidatorConstructor {
28
22
  /**
29
23
  * Prefix provider.
30
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-identifier-creator.ts"],"names":[],"mappings":"AAsEA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,8BAA8B,CAS5C,uBAAwD;IAMtD;;;OAGG;IACH,MAAe,yBAA0B,SAAS,uBAKhD;QACE;;WAEG;QACM,eAAe,CAAiB;QAEzC;;WAEG;QACM,gBAAgB,CAAS;QAElC;;;;;;;;;;;;;;WAcG;QACH,YAAY,cAA8B,EAAE,MAAc,EAAE,cAAsB,EAAE,GAAG,IAA2B;YAC9G,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAEf,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YAEtC,yFAAyF;YACzF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;QACzE,CAAC;QAED;;WAEG;QACH,IAAI,cAAc;YACd,OAAO,IAAI,CAAC,eAAe,CAAC;QAChC,CAAC;QAED;;WAEG;QACH,IAAI,MAAM;YACN,OAAO,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;QAChD,CAAC;QAED;;WAEG;QACH,IAAI,eAAe;YACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;QACjC,CAAC;KACJ;IAED,kKAAkK;IAClK,OAAO,yBAGN,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"abstract-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-identifier-creator.ts"],"names":[],"mappings":"AA4BA;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,8BAA8B,CAG5C,8BAGD;IAKG;;;OAGG;IACH,MAAe,yBAA0B,SACrC,8BAIH;QACG;;WAEG;QACM,eAAe,CAAiB;QAEzC;;WAEG;QACM,gBAAgB,CAAS;QAElC;;;;;;;;;;;;;;WAcG;QACH,YAAY,cAA8B,EAAE,MAAc,EAAE,cAAsB,EAAE,GAAG,IAAkF;YACrK,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAEf,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;YAEtC,yFAAyF;YACzF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;QACzE,CAAC;QAED;;WAEG;QACH,IAAI,cAAc;YACd,OAAO,IAAI,CAAC,eAAe,CAAC;QAChC,CAAC;QAED;;WAEG;QACH,IAAI,MAAM;YACN,OAAO,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;QAChD,CAAC;QAED;;WAEG;QACH,IAAI,eAAe;YACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;QACjC,CAAC;KACJ;IAED,kKAAkK;IAClK,OAAO,yBAGN,CAAC;AACN,CAAC"}
@@ -1,9 +1,8 @@
1
- import type { IdentifierExtensionConstructor, IdentifierValidatorConstructor } from "./abstract-identifier-creator.js";
2
- import type { IdentifierTypeValidator } from "./identifier-validators.js";
1
+ import type { AbstractConstructor } from "@aidc-toolkit/core";
2
+ import type { IdentifierTypeValidator, IdentifierValidatorConstructorsEntry } from "./identifier-validators.js";
3
3
  import type { NonGTINNumericIdentifierCreator } from "./non-gtin-numeric-identifier-creator.js";
4
4
  import type { NonGTINNumericIdentifierType } from "./non-gtin-numeric-identifier-type.js";
5
5
  import type { NonGTINNumericIdentifierValidator } from "./non-gtin-numeric-identifier-validator.js";
6
- import type { NumericIdentifierValidation } from "./numeric-identifier-validator.js";
7
6
  import type { PrefixProvider } from "./prefix-provider.js";
8
7
  /**
9
8
  * Non-GTIN numeric identifier creator constructor type, which delegates to a non-GTIN numeric identifier validator
@@ -15,9 +14,9 @@ import type { PrefixProvider } from "./prefix-provider.js";
15
14
  * @template TNonGTINNumericIdentifierValidator
16
15
  * Non-GTIN numeric identifier validator type.
17
16
  */
18
- type NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType, TNonGTINNumericIdentifierValidator extends NonGTINNumericIdentifierValidator<TNonGTINNumericIdentifierType>> = IdentifierExtensionConstructor<[
17
+ type NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType, TNonGTINNumericIdentifierValidator extends NonGTINNumericIdentifierValidator<TNonGTINNumericIdentifierType>> = AbstractConstructor<[
19
18
  prefixProvider: PrefixProvider,
20
- identifierType: TNonGTINNumericIdentifierType
19
+ ...args: ConstructorParameters<IdentifierValidatorConstructorsEntry<TNonGTINNumericIdentifierType>>
21
20
  ], TNonGTINNumericIdentifierValidator & NonGTINNumericIdentifierCreator<TNonGTINNumericIdentifierType>>;
22
21
  /**
23
22
  * Mixin implementation of {@linkcode NonGTINNumericIdentifierCreator} with an appropriate non-GTIN numeric identifier
@@ -26,17 +25,12 @@ type NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType ex
26
25
  * @template TNonGTINNumericIdentifierType
27
26
  * Non-GTIN numeric identifier type type.
28
27
  *
29
- * @template TNonGTINNumericIdentifierValidatorConstructor
30
- * Non-GTIN numeric identifier validator constructor type.
31
- *
32
- * @param NonGTINNumericIdentifierValidatorBase
33
- * Non-GTIN numeric identifier validator base.
28
+ * @param NonGTINNumericIdentifierValidatorConstructor
29
+ * Non-GTIN numeric identifier validator constructor.
34
30
  *
35
31
  * @returns
36
32
  * Non-GTIN numeric identifier creator class.
37
33
  */
38
- export declare function MixinAbstractNonGTINNumericIdentifierCreator<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType, TNonGTINNumericIdentifierValidatorConstructor extends IdentifierValidatorConstructor<[
39
- TNonGTINNumericIdentifierType
40
- ], TNonGTINNumericIdentifierType, NumericIdentifierValidation>>(NonGTINNumericIdentifierValidatorBase: TNonGTINNumericIdentifierValidatorConstructor): NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType, IdentifierTypeValidator<TNonGTINNumericIdentifierType>>;
34
+ export declare function MixinAbstractNonGTINNumericIdentifierCreator<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType>(NonGTINNumericIdentifierValidatorConstructor: AbstractConstructor<ConstructorParameters<IdentifierValidatorConstructorsEntry<TNonGTINNumericIdentifierType>>, IdentifierTypeValidator<TNonGTINNumericIdentifierType>>): NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType, IdentifierTypeValidator<TNonGTINNumericIdentifierType>>;
41
35
  export {};
42
36
  //# sourceMappingURL=abstract-non-gtin-numeric-identifier-creator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-non-gtin-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/abstract-non-gtin-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAKvH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;GASG;AACH,KAAK,0CAA0C,CAC3C,6BAA6B,SAAS,4BAA4B,EAClE,kCAAkC,SAAS,iCAAiC,CAAC,6BAA6B,CAAC,IAC3G,8BAA8B,CAC9B;IAAC,cAAc,EAAE,cAAc;IAAE,cAAc,EAAE,6BAA6B;CAAC,EAC/E,kCAAkC,GAAG,+BAA+B,CAAC,6BAA6B,CAAC,CACtG,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,4CAA4C,CACxD,6BAA6B,SAAS,4BAA4B,EAClE,6CAA6C,SAAS,8BAA8B,CAChF;IAAC,6BAA6B;CAAC,EAC/B,6BAA6B,EAC7B,2BAA2B,CAC9B,EACH,qCAAqC,EAAE,6CAA6C,GAAG,0CAA0C,CAC/H,6BAA6B,EAC7B,uBAAuB,CAAC,6BAA6B,CAAC,CACzD,CA6BA"}
1
+ {"version":3,"file":"abstract-non-gtin-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/abstract-non-gtin-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAK9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,oCAAoC,EAAE,MAAM,4BAA4B,CAAC;AAChH,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;GASG;AACH,KAAK,0CAA0C,CAC3C,6BAA6B,SAAS,4BAA4B,EAClE,kCAAkC,SAAS,iCAAiC,CAAC,6BAA6B,CAAC,IAC3G,mBAAmB,CACnB;IAAC,cAAc,EAAE,cAAc;IAAE,GAAG,IAAI,EAAE,qBAAqB,CAAC,oCAAoC,CAAC,6BAA6B,CAAC,CAAC;CAAC,EACrI,kCAAkC,GAAG,+BAA+B,CAAC,6BAA6B,CAAC,CACtG,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,4CAA4C,CACxD,6BAA6B,SAAS,4BAA4B,EACpE,4CAA4C,EAAE,mBAAmB,CAC/D,qBAAqB,CAAC,oCAAoC,CAAC,6BAA6B,CAAC,CAAC,EAC1F,uBAAuB,CAAC,6BAA6B,CAAC,CACzD,GAAG,0CAA0C,CAC1C,6BAA6B,EAC7B,uBAAuB,CAAC,6BAA6B,CAAC,CACzD,CA8BA"}
@@ -6,32 +6,29 @@ import { MixinAbstractNumericIdentifierCreator } from "./abstract-numeric-identi
6
6
  * @template TNonGTINNumericIdentifierType
7
7
  * Non-GTIN numeric identifier type type.
8
8
  *
9
- * @template TNonGTINNumericIdentifierValidatorConstructor
10
- * Non-GTIN numeric identifier validator constructor type.
11
- *
12
- * @param NonGTINNumericIdentifierValidatorBase
13
- * Non-GTIN numeric identifier validator base.
9
+ * @param NonGTINNumericIdentifierValidatorConstructor
10
+ * Non-GTIN numeric identifier validator constructor.
14
11
  *
15
12
  * @returns
16
13
  * Non-GTIN numeric identifier creator class.
17
14
  */
18
- export function MixinAbstractNonGTINNumericIdentifierCreator(NonGTINNumericIdentifierValidatorBase) {
15
+ export function MixinAbstractNonGTINNumericIdentifierCreator(NonGTINNumericIdentifierValidatorConstructor) {
19
16
  /**
20
17
  * Abstract non-GTIN numeric identifier creator. Implements common functionality for a non-GTIN numeric identifier
21
18
  * creator, mixed in with a matching non-GTIN numeric identifier validator.
22
19
  */
23
- class AbstractNonGTINNumericIdentifierCreator extends MixinAbstractNumericIdentifierCreator(NonGTINNumericIdentifierValidatorBase) {
20
+ class AbstractNonGTINNumericIdentifierCreator extends MixinAbstractNumericIdentifierCreator(NonGTINNumericIdentifierValidatorConstructor) {
24
21
  /**
25
22
  * Constructor.
26
23
  *
27
24
  * @param prefixProvider
28
25
  * Prefix provider.
29
26
  *
30
- * @param identifierType
31
- * Identifier type.
27
+ * @param args
28
+ * Originating constructor arguments.
32
29
  */
33
- constructor(prefixProvider, identifierType) {
34
- super(prefixProvider, prefixProvider.gs1CompanyPrefix, identifierType);
30
+ constructor(prefixProvider, ...args) {
31
+ super(prefixProvider, prefixProvider.gs1CompanyPrefix, ...args);
35
32
  }
36
33
  }
37
34
  // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- Base class was upcast to type with statically known members for mixin, downcast result.
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-non-gtin-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-non-gtin-numeric-identifier-creator.ts"],"names":[],"mappings":"AACA,OAAO,EACH,qCAAqC,EAExC,MAAM,0CAA0C,CAAC;AA0BlD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,4CAA4C,CAO1D,qCAAoF;IAIlF;;;OAGG;IACH,MAAe,uCAAwC,SAAS,qCAAqC,CAAC,qCAAqC,CAIzI;QACE;;;;;;;;WAQG;QACH,YAAY,cAA8B,EAAE,cAA6C;YACrF,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAC3E,CAAC;KACJ;IAED,kKAAkK;IAClK,OAAO,uCAGN,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"abstract-non-gtin-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-non-gtin-numeric-identifier-creator.ts"],"names":[],"mappings":"AACA,OAAO,EACH,qCAAqC,EAExC,MAAM,0CAA0C,CAAC;AAyBlD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,4CAA4C,CAE1D,4CAGD;IAIG;;;OAGG;IACH,MAAe,uCAAwC,SACnD,qCAAqC,CAAC,4CAA4C,CAIrF;QACG;;;;;;;;WAQG;QACH,YAAY,cAA8B,EAAE,GAAG,IAAgG;YAC3I,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,CAAC;QACpE,CAAC;KACJ;IAED,kKAAkK;IAClK,OAAO,uCAGN,CAAC;AACN,CAAC"}
@@ -1,43 +1,34 @@
1
- import { type IdentifierExtensionConstructor, type IdentifierValidatorConstructor } from "./abstract-identifier-creator.js";
2
- import type { IdentifierTypeValidator } from "./identifier-validators.js";
1
+ import type { AbstractConstructor } from "@aidc-toolkit/core";
2
+ import type { IdentifierTypeValidator, IdentifierValidatorConstructorsEntry } from "./identifier-validators.js";
3
3
  import type { NumericIdentifierCreator } from "./numeric-identifier-creator.js";
4
4
  import type { NumericIdentifierType } from "./numeric-identifier-type.js";
5
- import type { NumericIdentifierValidation, NumericIdentifierValidator } from "./numeric-identifier-validator.js";
5
+ import type { NumericIdentifierValidator } from "./numeric-identifier-validator.js";
6
6
  import type { PrefixProvider } from "./prefix-provider.js";
7
7
  /**
8
8
  * Numeric identifier creator constructor type, which delegates to a numeric identifier validator constructor.
9
9
  *
10
- * @template TConstructorArguments
11
- * Constructor arguments types.
12
- *
13
10
  * @template TNumericIdentifierType
14
11
  * Numeric identifier type type.
15
12
  *
16
13
  * @template TNumericIdentifierValidator
17
14
  * Numeric identifier validator type.
18
15
  */
19
- export type NumericIdentifierCreatorConstructor<TConstructorArguments extends unknown[], TNumericIdentifierType extends NumericIdentifierType, TNumericIdentifierValidator extends NumericIdentifierValidator<TNumericIdentifierType>> = IdentifierExtensionConstructor<[
16
+ export type NumericIdentifierCreatorConstructor<TNumericIdentifierType extends NumericIdentifierType, TNumericIdentifierValidator extends NumericIdentifierValidator<TNumericIdentifierType>> = AbstractConstructor<[
20
17
  prefixProvider: PrefixProvider,
21
18
  prefix: string,
22
- ...args: TConstructorArguments
19
+ ...args: ConstructorParameters<IdentifierValidatorConstructorsEntry<TNumericIdentifierType>>
23
20
  ], TNumericIdentifierValidator & NumericIdentifierCreator<TNumericIdentifierType>>;
24
21
  /**
25
22
  * Mixin implementation of {@linkcode NumericIdentifierCreator} with an appropriate numeric identifier validator base.
26
23
  *
27
- * @template TConstructorArguments
28
- * Constructor arguments types.
29
- *
30
24
  * @template TNumericIdentifierType
31
25
  * Numeric identifier type type.
32
26
  *
33
- * @template TNumericIdentifierValidatorConstructor
34
- * Numeric identifier validator constructor type.
35
- *
36
- * @param NumericIdentifierValidatorBase
27
+ * @param NumericIdentifierValidatorConstructor
37
28
  * Numeric identifier validator base.
38
29
  *
39
30
  * @returns
40
31
  * Numeric identifier creator class.
41
32
  */
42
- export declare function MixinAbstractNumericIdentifierCreator<TConstructorArguments extends unknown[], TNumericIdentifierType extends NumericIdentifierType, TNumericIdentifierValidatorConstructor extends IdentifierValidatorConstructor<TConstructorArguments, TNumericIdentifierType, NumericIdentifierValidation>>(NumericIdentifierValidatorBase: TNumericIdentifierValidatorConstructor): NumericIdentifierCreatorConstructor<TConstructorArguments, TNumericIdentifierType, IdentifierTypeValidator<TNumericIdentifierType>>;
33
+ export declare function MixinAbstractNumericIdentifierCreator<TNumericIdentifierType extends NumericIdentifierType>(NumericIdentifierValidatorConstructor: AbstractConstructor<ConstructorParameters<IdentifierValidatorConstructorsEntry<TNumericIdentifierType>>, IdentifierTypeValidator<TNumericIdentifierType>>): NumericIdentifierCreatorConstructor<TNumericIdentifierType, IdentifierTypeValidator<TNumericIdentifierType>>;
43
34
  //# sourceMappingURL=abstract-numeric-identifier-creator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/abstract-numeric-identifier-creator.ts"],"names":[],"mappings":"AAOA,OAAO,EAEH,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EAEtC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACjH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mCAAmC,CAC3C,qBAAqB,SAAS,OAAO,EAAE,EACvC,sBAAsB,SAAS,qBAAqB,EACpD,2BAA2B,SAAS,0BAA0B,CAAC,sBAAsB,CAAC,IACtF,8BAA8B,CAC9B;IAAC,cAAc,EAAE,cAAc;IAAE,MAAM,EAAE,MAAM;IAAE,GAAG,IAAI,EAAE,qBAAqB;CAAC,EAChF,2BAA2B,GAAG,wBAAwB,CAAC,sBAAsB,CAAC,CACjF,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qCAAqC,CACjD,qBAAqB,SAAS,OAAO,EAAE,EACvC,sBAAsB,SAAS,qBAAqB,EACpD,sCAAsC,SAAS,8BAA8B,CACzE,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,CAC9B,EACH,8BAA8B,EAAE,sCAAsC,GAAG,mCAAmC,CAC1G,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,CAAC,sBAAsB,CAAC,CAClD,CAoKA"}
1
+ {"version":3,"file":"abstract-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/abstract-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAU9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,oCAAoC,EAAE,MAAM,4BAA4B,CAAC;AAEhH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAA+B,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACjH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;GAQG;AACH,MAAM,MAAM,mCAAmC,CAC3C,sBAAsB,SAAS,qBAAqB,EACpD,2BAA2B,SAAS,0BAA0B,CAAC,sBAAsB,CAAC,IACtF,mBAAmB,CACnB;IAAC,cAAc,EAAE,cAAc;IAAE,MAAM,EAAE,MAAM;IAAE,GAAG,IAAI,EAAE,qBAAqB,CAAC,oCAAoC,CAAC,sBAAsB,CAAC,CAAC;CAAC,EAC9I,2BAA2B,GAAG,wBAAwB,CAAC,sBAAsB,CAAC,CACjF,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,qCAAqC,CACjD,sBAAsB,SAAS,qBAAqB,EACtD,qCAAqC,EAAE,mBAAmB,CACxD,qBAAqB,CAAC,oCAAoC,CAAC,sBAAsB,CAAC,CAAC,EACnF,uBAAuB,CAAC,sBAAsB,CAAC,CAClD,GAAG,mCAAmC,CACnC,sBAAsB,EACtB,uBAAuB,CAAC,sBAAsB,CAAC,CAClD,CAqKA"}
@@ -5,27 +5,21 @@ import { LeaderTypes } from "./leader-type.js";
5
5
  /**
6
6
  * Mixin implementation of {@linkcode NumericIdentifierCreator} with an appropriate numeric identifier validator base.
7
7
  *
8
- * @template TConstructorArguments
9
- * Constructor arguments types.
10
- *
11
8
  * @template TNumericIdentifierType
12
9
  * Numeric identifier type type.
13
10
  *
14
- * @template TNumericIdentifierValidatorConstructor
15
- * Numeric identifier validator constructor type.
16
- *
17
- * @param NumericIdentifierValidatorBase
11
+ * @param NumericIdentifierValidatorConstructor
18
12
  * Numeric identifier validator base.
19
13
  *
20
14
  * @returns
21
15
  * Numeric identifier creator class.
22
16
  */
23
- export function MixinAbstractNumericIdentifierCreator(NumericIdentifierValidatorBase) {
17
+ export function MixinAbstractNumericIdentifierCreator(NumericIdentifierValidatorConstructor) {
24
18
  /**
25
19
  * Abstract numeric identifier creator. Implements common functionality for a numeric identifier creator, mixed in
26
20
  * with a matching numeric identifier validator.
27
21
  */
28
- class AbstractNumericIdentifierCreator extends MixinAbstractIdentifierCreator(NumericIdentifierValidatorBase) {
22
+ class AbstractNumericIdentifierCreator extends MixinAbstractIdentifierCreator(NumericIdentifierValidatorConstructor) {
29
23
  /**
30
24
  * Capacity.
31
25
  */
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-numeric-identifier-creator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-numeric-identifier-creator.ts"],"names":[],"mappings":"AACA,OAAO,EACH,mBAAmB,EACnB,UAAU,EACV,eAAe,EAGlB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAqC,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACrH,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAuB/C;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qCAAqC,CAEnD,qCAGD;IAIG;;;OAGG;IACH,MAAe,gCAAiC,SAC5C,8BAA8B,CAAC,qCAAqC,CAKvE;QACG;;WAEG;QACM,SAAS,CAAS;QAE3B;;WAEG;QACH,MAAM,GAAG,EAAE,CAAC;QAEZ;;;;;;;;;;;WAWG;QACH,YAAY,cAA8B,EAAE,MAAc,EAAE,GAAG,IAAyF;YACpJ,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;YAE1C,sCAAsC;YACtC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACjF,CAAC;QAED;;WAEG;QACH,IAAI,QAAQ;YACR,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC;QAED;;WAEG;QACH,IAAI,KAAK;YACL,OAAO,IAAI,CAAC,MAAM,CAAC;QACvB,CAAC;QAED;;WAEG;QACH,IAAI,KAAK,CAAC,KAAa;YACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACxB,CAAC;QAED;;;;;;;;WAQG;QACH,gBAAgB,CAAC,SAAiB;YAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,KAAK,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YAEtK,OAAO,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC7D,CAAC;QAED;;WAEG;QACH,MAAM,CAA8D,aAAgC,EAAE,MAAM,GAAG,KAAK;YAChH,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;QACxK,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,MAAM,CAAC,CAAE,gBAAgB,CAAC,iBAAyB,EAAE,wBAAgC,EAAE,eAAuB,EAAE,MAAc,EAAE,oBAA4B;YACxJ,IAAI,wBAAwB,KAAK,CAAC,EAAE,CAAC;gBACjC,+CAA+C;gBAC/C,MAAM,iBAAiB,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAC7F,CAAC;iBAAM,CAAC;gBACJ,MAAM,4BAA4B,GAAG,wBAAwB,GAAG,CAAC,CAAC;gBAElE,IAAI,wBAAwB,GAAG,oBAAoB,CAAC;gBAEpD,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;oBACxB,4CAA4C;oBAC5C,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;wBAC3C,KAAM,CAAC,CAAC,gCAAgC,CAAC,gBAAgB,CAAC,CAAC,GAAG,iBAAiB,EAAE,4BAA4B,EAAE,CAAC,EAAE,MAAM,EAAE,wBAAwB,CAAC,CAAC;wBAEpJ,wBAAwB,IAAI,eAAe,CAAC;oBAChD,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,MAAM,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC;oBAE9B,gEAAgE;oBAChE,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;wBAC3C,KAAM,CAAC,CAAC,gCAAgC,CAAC,gBAAgB,CAAC,iBAAiB,GAAG,CAAC,EAAE,4BAA4B,EAAE,CAAC,EAAE,UAAU,EAAE,wBAAwB,CAAC,CAAC;wBAExJ,wBAAwB,IAAI,MAAM,CAAC;oBACvC,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED;;WAEG;QACH,SAAS;YACL,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,KAAK,WAAW,CAAC,cAAc,CAAC;YACzE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YAE7C,uGAAuG;YACvG,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,eAAe,GAAG,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAEpF,iEAAiE;YACjE,OAAO;gBACH,CAAC,MAAM,CAAC,QAAQ,CAAC;oBACb,OAAO,gCAAgC,CAAC,gBAAgB,CAAC,MAAM,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;gBACzL,CAAC;aACJ,CAAC;QACN,CAAC;KACJ;IAED,kKAAkK;IAClK,OAAO,gCAMN,CAAC;AACN,CAAC"}
@@ -2,9 +2,9 @@ import { type TransformerInput, type TransformerOutput } from "@aidc-toolkit/uti
2
2
  import { type GTINBaseLength } from "./gtin-length.js";
3
3
  import { GTINValidator } from "./gtin-validator.js";
4
4
  import type { PrefixProvider } from "./prefix-provider.js";
5
- declare const GTINCreator_base: import("./abstract-numeric-identifier-creator.js").NumericIdentifierCreatorConstructor<[GTINBaseLength], "GTIN", GTINValidator>;
5
+ declare const GTINCreator_base: import("./abstract-numeric-identifier-creator.js").NumericIdentifierCreatorConstructor<"GTIN", GTINValidator>;
6
6
  /**
7
- * GTIN creator. Applicable to GTIN-13, GTIN-12, and GTIN-8 types; no applicable to GTIN-14 type.
7
+ * GTIN creator. Applicable to GTIN-13, GTIN-12, and GTIN-8 types; not applicable to GTIN-14 type.
8
8
  */
9
9
  export declare class GTINCreator extends GTINCreator_base {
10
10
  #private;
@@ -1 +1 @@
1
- {"version":3,"file":"gtin-creator.d.ts","sourceRoot":"","sources":["../src/gtin-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,KAAK,cAAc,EAAe,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;;AAE3D;;GAEG;AACH,qBAAa,WAAY,SAAQ,gBAIjB;;IAUZ;;;;;;;;OAQG;gBACS,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc;IAI1E;;OAEG;IACH,IAAa,MAAM,IAAI,MAAM,CAE5B;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,UAAQ,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAUjM;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;CAmGxG"}
1
+ {"version":3,"file":"gtin-creator.d.ts","sourceRoot":"","sources":["../src/gtin-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,KAAK,cAAc,EAAe,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;;AAE3D;;GAEG;AACH,qBAAa,WAAY,SAAQ,gBAEjB;;IAUZ;;;;;;;;OAQG;gBACS,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc;IAI1E;;OAEG;IACH,IAAa,MAAM,IAAI,MAAM,CAE5B;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,UAAQ,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAUjM;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;CAmGxG"}
@@ -5,7 +5,7 @@ import { GTINLengths } from "./gtin-length.js";
5
5
  import { GTINValidator } from "./gtin-validator.js";
6
6
  import { i18nextGS1 } from "./locale/i18n.js";
7
7
  /**
8
- * GTIN creator. Applicable to GTIN-13, GTIN-12, and GTIN-8 types; no applicable to GTIN-14 type.
8
+ * GTIN creator. Applicable to GTIN-13, GTIN-12, and GTIN-8 types; not applicable to GTIN-14 type.
9
9
  */
10
10
  export class GTINCreator extends MixinAbstractNumericIdentifierCreator(GTINValidator) {
11
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"gtin-creator.js","sourceRoot":"","sources":["../src/gtin-creator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gtin-creator.js","sourceRoot":"","sources":["../src/gtin-creator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,15 @@
1
- import type { GTINCreator } from "./gtin-creator.js";
1
+ import { GTINCreator } from "./gtin-creator.js";
2
+ import type { GTINBaseLength } from "./gtin-length.js";
3
+ import type { GTINType } from "./gtin-type.js";
2
4
  import type { IdentifierCreator } from "./identifier-creator.js";
3
5
  import { type IdentifierTypeExtension } from "./identifier-extension.js";
4
6
  import type { IdentifierType } from "./identifier-type.js";
5
7
  import type { NonGTINNumericIdentifierCreator } from "./non-gtin-numeric-identifier-creator.js";
6
- import type { NonNumericIdentifierCreator } from "./non-numeric-identifier-creator.js";
7
- import type { NonSerializableNumericIdentifierCreator } from "./non-serializable-numeric-identifier-creator.js";
8
+ import { NonNumericIdentifierCreator } from "./non-numeric-identifier-creator.js";
9
+ import { NonSerializableNumericIdentifierCreator } from "./non-serializable-numeric-identifier-creator.js";
8
10
  import type { NumericIdentifierCreator } from "./numeric-identifier-creator.js";
9
- import type { SerializableNumericIdentifierCreator } from "./serializable-numeric-identifier-creator.js";
11
+ import type { PrefixProvider } from "./prefix-provider.js";
12
+ import { SerializableNumericIdentifierCreator } from "./serializable-numeric-identifier-creator.js";
10
13
  /**
11
14
  * Identifier creator type based on identifier type type.
12
15
  *
@@ -27,6 +30,31 @@ export type IdentifierCreatorsEntry<TIdentifierType extends IdentifierType> = Id
27
30
  export type IdentifierCreatorsRecord = {
28
31
  [TIdentifierType in IdentifierType]: IdentifierCreatorsEntry<TIdentifierType>;
29
32
  };
33
+ /**
34
+ * GTIN creator constructor type.
35
+ */
36
+ export type GTINCreatorConstructor = new (prefixProvider: PrefixProvider, gtinBaseLength: GTINBaseLength) => GTINCreator;
37
+ /**
38
+ * Non-GTIN creator constructor type.
39
+ *
40
+ * @template TIdentifierType
41
+ * Identifier type type.
42
+ */
43
+ export type NonGTINCreatorConstructor<TIdentifierType extends Exclude<IdentifierType, GTINType>> = new (prefixProvider: PrefixProvider, identifierType: TIdentifierType) => IdentifierCreatorsRecord[TIdentifierType];
44
+ /**
45
+ * Identifier creator constructors entry type based on identifier type type.
46
+ *
47
+ * @template TIdentifierType
48
+ * Identifier type type.
49
+ */
50
+ export type IdentifierCreatorConstructorsEntry<TIdentifierType extends IdentifierType> = TIdentifierType extends GTINType ? GTINCreatorConstructor : NonGTINCreatorConstructor<Exclude<TIdentifierType, GTINType>>;
51
+ /**
52
+ * Identifier creator constructors record type.
53
+ */
54
+ export type IdentifierCreatorConstructorsRecord = {
55
+ readonly [TIdentifierType in IdentifierType]: IdentifierCreatorConstructorsEntry<TIdentifierType>;
56
+ };
57
+ export declare const IdentifierCreatorConstructors: IdentifierCreatorConstructorsRecord;
30
58
  /**
31
59
  * Determine if identifier creator is a numeric identifier creator.
32
60
  *
@@ -1 +1 @@
1
- {"version":3,"file":"identifier-creators.d.ts","sourceRoot":"","sources":["../src/identifier-creators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACH,KAAK,uBAAuB,EAO/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,KAAK,EAAE,uCAAuC,EAAE,MAAM,kDAAkD,CAAC;AAChH,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AAEzG;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,CAAC,eAAe,SAAS,cAAc,IAAI,uBAAuB,CAC/F,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,WAAW,EACX,+BAA+B,EAC/B,uCAAuC,EACvC,oCAAoC,EACpC,2BAA2B,CAC9B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,CAAC,eAAe,SAAS,cAAc,IAAI,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAErH;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;KAClC,eAAe,IAAI,cAAc,GAAG,uBAAuB,CAAC,eAAe,CAAC;CAChF,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,wBAAwB,CAE9H;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,WAAW,CAEpG;AAED;;;;;;;;GAQG;AACH,wBAAgB,iCAAiC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,+BAA+B,CAE5I;AAED;;;;;;;;GAQG;AACH,wBAAgB,yCAAyC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,uCAAuC,CAE5J;AAED;;;;;;;;GAQG;AACH,wBAAgB,sCAAsC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,oCAAoC,CAEtJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,2BAA2B,CAEpI"}
1
+ {"version":3,"file":"identifier-creators.d.ts","sourceRoot":"","sources":["../src/identifier-creators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACH,KAAK,uBAAuB,EAO/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,uCAAuC,EAAE,MAAM,kDAAkD,CAAC;AAC3G,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AAEpG;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,CAAC,eAAe,SAAS,cAAc,IAAI,uBAAuB,CAC/F,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,WAAW,EACX,+BAA+B,EAC/B,uCAAuC,EACvC,oCAAoC,EACpC,2BAA2B,CAC9B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,CAAC,eAAe,SAAS,cAAc,IAAI,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAErH;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;KAClC,eAAe,IAAI,cAAc,GAAG,uBAAuB,CAAC,eAAe,CAAC;CAChF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAC9B,KAAK,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,KAAK,WAAW,CAAC;AAExF;;;;;GAKG;AACH,MAAM,MAAM,yBAAyB,CAAC,eAAe,SAAS,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,IAC3F,KAAK,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,KAAK,wBAAwB,CAAC,eAAe,CAAC,CAAC;AAEvH;;;;;GAKG;AACH,MAAM,MAAM,kCAAkC,CAAC,eAAe,SAAS,cAAc,IAAI,eAAe,SAAS,QAAQ,GACrH,sBAAsB,GACtB,yBAAyB,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAC9C,QAAQ,EAAE,eAAe,IAAI,cAAc,GAAG,kCAAkC,CAAC,eAAe,CAAC;CACpG,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,mCAa3C,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,wBAAwB,CAE9H;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,WAAW,CAEpG;AAED;;;;;;;;GAQG;AACH,wBAAgB,iCAAiC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,+BAA+B,CAE5I;AAED;;;;;;;;GAQG;AACH,wBAAgB,yCAAyC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,uCAAuC,CAE5J;AAED;;;;;;;;GAQG;AACH,wBAAgB,sCAAsC,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,oCAAoC,CAEtJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,iBAAiB,IAAI,2BAA2B,CAEpI"}
@@ -1,4 +1,22 @@
1
+ import { GTINCreator } from "./gtin-creator.js";
1
2
  import { isGTINExtension, isNonGTINNumericIdentifierExtension, isNonNumericIdentifierExtension, isNonSerializableNumericIdentifierExtension, isNumericIdentifierExtension, isSerializableNumericIdentifierExtension } from "./identifier-extension.js";
3
+ import { NonNumericIdentifierCreator } from "./non-numeric-identifier-creator.js";
4
+ import { NonSerializableNumericIdentifierCreator } from "./non-serializable-numeric-identifier-creator.js";
5
+ import { SerializableNumericIdentifierCreator } from "./serializable-numeric-identifier-creator.js";
6
+ export const IdentifierCreatorConstructors = {
7
+ GTIN: GTINCreator,
8
+ GLN: NonSerializableNumericIdentifierCreator,
9
+ SSCC: NonSerializableNumericIdentifierCreator,
10
+ GRAI: SerializableNumericIdentifierCreator,
11
+ GIAI: NonNumericIdentifierCreator,
12
+ GSRN: NonSerializableNumericIdentifierCreator,
13
+ GDTI: SerializableNumericIdentifierCreator,
14
+ GINC: NonNumericIdentifierCreator,
15
+ GSIN: NonSerializableNumericIdentifierCreator,
16
+ GCN: SerializableNumericIdentifierCreator,
17
+ CPID: NonNumericIdentifierCreator,
18
+ GMN: NonNumericIdentifierCreator
19
+ };
2
20
  /**
3
21
  * Determine if identifier creator is a numeric identifier creator.
4
22
  *
@@ -1 +1 @@
1
- {"version":3,"file":"identifier-creators.js","sourceRoot":"","sources":["../src/identifier-creators.ts"],"names":[],"mappings":"AAEA,OAAO,EAEH,eAAe,EACf,mCAAmC,EACnC,+BAA+B,EAC/B,2CAA2C,EAC3C,4BAA4B,EAC5B,wCAAwC,EAC3C,MAAM,2BAA2B,CAAC;AAwCnC;;;;;;;;GAQG;AACH,MAAM,UAAU,0BAA0B,CAAC,iBAAoC;IAC3E,OAAO,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,iBAAoC;IAC9D,OAAO,eAAe,CAAC,iBAAiB,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iCAAiC,CAAC,iBAAoC;IAClF,OAAO,mCAAmC,CAAC,iBAAiB,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yCAAyC,CAAC,iBAAoC;IAC1F,OAAO,2CAA2C,CAAC,iBAAiB,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sCAAsC,CAAC,iBAAoC;IACvF,OAAO,wCAAwC,CAAC,iBAAiB,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,iBAAoC;IAC9E,OAAO,+BAA+B,CAAC,iBAAiB,CAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"identifier-creators.js","sourceRoot":"","sources":["../src/identifier-creators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIhD,OAAO,EAEH,eAAe,EACf,mCAAmC,EACnC,+BAA+B,EAC/B,2CAA2C,EAC3C,4BAA4B,EAC5B,wCAAwC,EAC3C,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,uCAAuC,EAAE,MAAM,kDAAkD,CAAC;AAG3G,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AAkEpG,MAAM,CAAC,MAAM,6BAA6B,GAAwC;IAC9E,IAAI,EAAE,WAAW;IACjB,GAAG,EAAE,uCAAuC;IAC5C,IAAI,EAAE,uCAAuC;IAC7C,IAAI,EAAE,oCAAoC;IAC1C,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,uCAAuC;IAC7C,IAAI,EAAE,oCAAoC;IAC1C,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,uCAAuC;IAC7C,GAAG,EAAE,oCAAoC;IACzC,IAAI,EAAE,2BAA2B;IACjC,GAAG,EAAE,2BAA2B;CACnC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,UAAU,0BAA0B,CAAC,iBAAoC;IAC3E,OAAO,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,iBAAoC;IAC9D,OAAO,eAAe,CAAC,iBAAiB,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iCAAiC,CAAC,iBAAoC;IAClF,OAAO,mCAAmC,CAAC,iBAAiB,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yCAAyC,CAAC,iBAAoC;IAC1F,OAAO,2CAA2C,CAAC,iBAAiB,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sCAAsC,CAAC,iBAAoC;IACvF,OAAO,wCAAwC,CAAC,iBAAiB,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,iBAAoC;IAC9E,OAAO,+BAA+B,CAAC,iBAAiB,CAAC,CAAC;AAC9D,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { GTINBaseLength } from "./gtin-length.js";
2
2
  import type { GTINType } from "./gtin-type.js";
3
- import { type GTINValidator } from "./gtin-validator.js";
3
+ import { GTINValidator } from "./gtin-validator.js";
4
4
  import { type IdentifierTypeExtension } from "./identifier-extension.js";
5
5
  import { type IdentifierType } from "./identifier-type.js";
6
6
  import type { IdentifierValidator } from "./identifier-validator.js";
@@ -27,12 +27,37 @@ export type IdentifierValidatorsEntry<TIdentifierType extends IdentifierType> =
27
27
  * Identifier validators record type.
28
28
  */
29
29
  export type IdentifierValidatorsRecord = {
30
- readonly [TIdentifierType in IdentifierType]: IdentifierValidatorsEntry<TIdentifierType>;
30
+ [TIdentifierType in IdentifierType]: IdentifierValidatorsEntry<TIdentifierType>;
31
31
  };
32
32
  /**
33
33
  * Identifier validators for all identifier types.
34
34
  */
35
- export declare const IdentifierValidators: IdentifierValidatorsRecord;
35
+ export declare const IdentifierValidators: Readonly<IdentifierValidatorsRecord>;
36
+ /**
37
+ * GTIN validator constructor type.
38
+ */
39
+ export type GTINValidatorConstructor = new (gtinBaseLength: GTINBaseLength) => GTINValidator;
40
+ /**
41
+ * Non-GTIN validator constructor type.
42
+ *
43
+ * @template TIdentifierType
44
+ * Identifier type type.
45
+ */
46
+ export type NonGTINValidatorConstructor<TIdentifierType extends Exclude<IdentifierType, GTINType>> = new (identifierType: TIdentifierType) => IdentifierValidatorsRecord[TIdentifierType];
47
+ /**
48
+ * Identifier validator constructors entry type based on identifier type type.
49
+ *
50
+ * @template TIdentifierType
51
+ * Identifier type type.
52
+ */
53
+ export type IdentifierValidatorConstructorsEntry<TIdentifierType extends IdentifierType> = TIdentifierType extends GTINType ? GTINValidatorConstructor : NonGTINValidatorConstructor<Exclude<TIdentifierType, GTINType>>;
54
+ /**
55
+ * Identifier validator constructors record type.
56
+ */
57
+ export type IdentifierValidatorConstructorsRecord = {
58
+ readonly [TIdentifierType in IdentifierType]: IdentifierValidatorConstructorsEntry<TIdentifierType>;
59
+ };
60
+ export declare const IdentifierValidatorConstructors: IdentifierValidatorConstructorsRecord;
36
61
  /**
37
62
  * Determine if identifier validators or validator is GTIN validators.
38
63
  *
@@ -1 +1 @@
1
- {"version":3,"file":"identifier-validators.d.ts","sourceRoot":"","sources":["../src/identifier-validators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EACH,KAAK,uBAAuB,EAO/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,cAAc,EAAmB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAC/G,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,sCAAsC,EAAE,MAAM,gDAAgD,CAAC;AAyDxG;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,CAAC,eAAe,SAAS,cAAc,IAAI,uBAAuB,CACjG,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,aAAa,EACb,iCAAiC,EACjC,yCAAyC,EACzC,sCAAsC,EACtC,6BAA6B,CAChC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,yBAAyB,CAAC,eAAe,SAAS,cAAc,IAAI,eAAe,SAAS,QAAQ,GAC5G,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC,GAC/C,uBAAuB,CAAC,eAAe,CAAC,CAAC;AAE7C;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACrC,QAAQ,EAAE,eAAe,IAAI,cAAc,GAAG,yBAAyB,CAAC,eAAe,CAAC;CAC3F,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,0BAalC,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,+BAA+B,EAAE,yBAAyB,CAAC,cAAc,CAAC,GAAG,+BAA+B,IAAI,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC,CAE/L;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,mBAAmB,IAAI,0BAA0B,CAExI;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,mBAAmB,IAAI,aAAa,CAE9G;AAED;;;;;;;;GAQG;AACH,wBAAgB,mCAAmC,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,mBAAmB,IAAI,iCAAiC,CAEtJ;AAED;;;;;;;;GAQG;AACH,wBAAgB,2CAA2C,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,mBAAmB,IAAI,yCAAyC,CAEtK;AAED;;;;;;;;GAQG;AACH,wBAAgB,wCAAwC,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,mBAAmB,IAAI,sCAAsC,CAEhK;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,mBAAmB,IAAI,6BAA6B,CAE9I"}
1
+ {"version":3,"file":"identifier-validators.d.ts","sourceRoot":"","sources":["../src/identifier-validators.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { GTIN_VALIDATORS } from "./gtin-validator.js";
1
+ import { GTIN_VALIDATORS, GTINValidator } from "./gtin-validator.js";
2
2
  import { isGTINDescriptors } from "./identifier-descriptors.js";
3
3
  import { isGTINExtension, isNonGTINNumericIdentifierExtension, isNonNumericIdentifierExtension, isNonSerializableNumericIdentifierExtension, isNumericIdentifierExtension, isSerializableNumericIdentifierExtension } from "./identifier-extension.js";
4
4
  import { IdentifierTypes } from "./identifier-type.js";
@@ -66,6 +66,20 @@ export const IdentifierValidators = {
66
66
  [IdentifierTypes.CPID]: CPID_VALIDATOR,
67
67
  [IdentifierTypes.GMN]: GMN_VALIDATOR
68
68
  };
69
+ export const IdentifierValidatorConstructors = {
70
+ GTIN: GTINValidator,
71
+ GLN: NonSerializableNumericIdentifierValidator,
72
+ SSCC: NonSerializableNumericIdentifierValidator,
73
+ GRAI: SerializableNumericIdentifierValidator,
74
+ GIAI: NonNumericIdentifierValidator,
75
+ GSRN: NonSerializableNumericIdentifierValidator,
76
+ GDTI: SerializableNumericIdentifierValidator,
77
+ GINC: NonNumericIdentifierValidator,
78
+ GSIN: NonSerializableNumericIdentifierValidator,
79
+ GCN: SerializableNumericIdentifierValidator,
80
+ CPID: NonNumericIdentifierValidator,
81
+ GMN: NonNumericIdentifierValidator
82
+ };
69
83
  /**
70
84
  * Determine if identifier validators or validator is GTIN validators.
71
85
  *
@@ -1 +1 @@
1
- {"version":3,"file":"identifier-validators.js","sourceRoot":"","sources":["../src/identifier-validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identifier-validators.js","sourceRoot":"","sources":["../src/identifier-validators.ts"],"names":[],"mappings":"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"}