@aidc-toolkit/gs1 1.0.26-beta → 1.0.27-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 (199) hide show
  1. package/dist/abstract-identifier-creator.d.ts +66 -66
  2. package/dist/abstract-identifier-creator.d.ts.map +1 -1
  3. package/dist/abstract-identifier-creator.js +68 -45
  4. package/dist/abstract-identifier-creator.js.map +1 -1
  5. package/dist/abstract-non-gtin-numeric-identifier-creator.d.ts +42 -0
  6. package/dist/abstract-non-gtin-numeric-identifier-creator.d.ts.map +1 -0
  7. package/dist/abstract-non-gtin-numeric-identifier-creator.js +40 -0
  8. package/dist/abstract-non-gtin-numeric-identifier-creator.js.map +1 -0
  9. package/dist/abstract-numeric-identifier-creator.d.ts +37 -86
  10. package/dist/abstract-numeric-identifier-creator.d.ts.map +1 -1
  11. package/dist/abstract-numeric-identifier-creator.js +144 -121
  12. package/dist/abstract-numeric-identifier-creator.js.map +1 -1
  13. package/dist/content-character-set-creators.d.ts +4 -0
  14. package/dist/content-character-set-creators.d.ts.map +1 -0
  15. package/dist/content-character-set-creators.js +9 -0
  16. package/dist/content-character-set-creators.js.map +1 -0
  17. package/dist/gtin-creator.d.ts +7 -12
  18. package/dist/gtin-creator.d.ts.map +1 -1
  19. package/dist/gtin-creator.js +11 -14
  20. package/dist/gtin-creator.js.map +1 -1
  21. package/dist/gtin-descriptor.d.ts +8 -3
  22. package/dist/gtin-descriptor.d.ts.map +1 -1
  23. package/dist/gtin-length.d.ts +64 -0
  24. package/dist/gtin-length.d.ts.map +1 -0
  25. package/dist/gtin-length.js +36 -0
  26. package/dist/gtin-length.js.map +1 -0
  27. package/dist/gtin-type.d.ts +15 -28
  28. package/dist/gtin-type.d.ts.map +1 -1
  29. package/dist/gtin-type.js +4 -28
  30. package/dist/gtin-type.js.map +1 -1
  31. package/dist/gtin-validator.d.ts +9 -23
  32. package/dist/gtin-validator.d.ts.map +1 -1
  33. package/dist/gtin-validator.js +32 -39
  34. package/dist/gtin-validator.js.map +1 -1
  35. package/dist/identifier-creator.d.ts +4 -4
  36. package/dist/identifier-creator.d.ts.map +1 -1
  37. package/dist/{creators.d.ts → identifier-creators.d.ts} +16 -7
  38. package/dist/identifier-creators.d.ts.map +1 -0
  39. package/dist/{creators.js → identifier-creators.js} +19 -7
  40. package/dist/identifier-creators.js.map +1 -0
  41. package/dist/{descriptors.d.ts → identifier-descriptors.d.ts} +20 -10
  42. package/dist/identifier-descriptors.d.ts.map +1 -0
  43. package/dist/{descriptors.js → identifier-descriptors.js} +27 -31
  44. package/dist/identifier-descriptors.js.map +1 -0
  45. package/dist/identifier-extension.d.ts +82 -0
  46. package/dist/identifier-extension.d.ts.map +1 -0
  47. package/dist/identifier-extension.js +79 -0
  48. package/dist/identifier-extension.js.map +1 -0
  49. package/dist/identifier-validator.d.ts +44 -9
  50. package/dist/identifier-validator.d.ts.map +1 -1
  51. package/dist/identifier-validator.js +109 -1
  52. package/dist/identifier-validator.js.map +1 -1
  53. package/dist/{validators.d.ts → identifier-validators.d.ts} +21 -11
  54. package/dist/identifier-validators.d.ts.map +1 -0
  55. package/dist/{validators.js → identifier-validators.js} +25 -12
  56. package/dist/identifier-validators.js.map +1 -0
  57. package/dist/index.d.ts +15 -9
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +13 -4
  60. package/dist/index.js.map +1 -1
  61. package/dist/leader-type.d.ts +26 -0
  62. package/dist/leader-type.d.ts.map +1 -0
  63. package/dist/leader-type.js +18 -0
  64. package/dist/leader-type.js.map +1 -0
  65. package/dist/non-gtin-numeric-identifier-creator.d.ts +7 -19
  66. package/dist/non-gtin-numeric-identifier-creator.d.ts.map +1 -1
  67. package/dist/non-gtin-numeric-identifier-creator.js +1 -22
  68. package/dist/non-gtin-numeric-identifier-creator.js.map +1 -1
  69. package/dist/non-gtin-numeric-identifier-descriptor.d.ts +1 -1
  70. package/dist/non-gtin-numeric-identifier-descriptor.d.ts.map +1 -1
  71. package/dist/non-gtin-numeric-identifier-type.d.ts +22 -3
  72. package/dist/non-gtin-numeric-identifier-type.d.ts.map +1 -1
  73. package/dist/non-gtin-numeric-identifier-type.js +7 -1
  74. package/dist/non-gtin-numeric-identifier-type.js.map +1 -1
  75. package/dist/non-gtin-numeric-identifier-validator.d.ts +5 -10
  76. package/dist/non-gtin-numeric-identifier-validator.d.ts.map +1 -1
  77. package/dist/non-gtin-numeric-identifier-validator.js +5 -12
  78. package/dist/non-gtin-numeric-identifier-validator.js.map +1 -1
  79. package/dist/non-numeric-identifier-creator.d.ts +4 -9
  80. package/dist/non-numeric-identifier-creator.d.ts.map +1 -1
  81. package/dist/non-numeric-identifier-creator.js +8 -10
  82. package/dist/non-numeric-identifier-creator.js.map +1 -1
  83. package/dist/non-numeric-identifier-type.d.ts +22 -3
  84. package/dist/non-numeric-identifier-type.d.ts.map +1 -1
  85. package/dist/non-numeric-identifier-type.js +7 -1
  86. package/dist/non-numeric-identifier-type.js.map +1 -1
  87. package/dist/non-numeric-identifier-validator.d.ts +3 -11
  88. package/dist/non-numeric-identifier-validator.d.ts.map +1 -1
  89. package/dist/non-numeric-identifier-validator.js +8 -8
  90. package/dist/non-numeric-identifier-validator.js.map +1 -1
  91. package/dist/non-serializable-numeric-identifier-creator.d.ts +10 -0
  92. package/dist/non-serializable-numeric-identifier-creator.d.ts.map +1 -0
  93. package/dist/non-serializable-numeric-identifier-creator.js +8 -0
  94. package/dist/non-serializable-numeric-identifier-creator.js.map +1 -0
  95. package/dist/non-serializable-numeric-identifier-descriptor.d.ts +7 -0
  96. package/dist/non-serializable-numeric-identifier-descriptor.d.ts.map +1 -0
  97. package/dist/non-serializable-numeric-identifier-descriptor.js +2 -0
  98. package/dist/non-serializable-numeric-identifier-descriptor.js.map +1 -0
  99. package/dist/non-serializable-numeric-identifier-type.d.ts +26 -0
  100. package/dist/non-serializable-numeric-identifier-type.d.ts.map +1 -0
  101. package/dist/non-serializable-numeric-identifier-type.js +7 -0
  102. package/dist/non-serializable-numeric-identifier-type.js.map +1 -0
  103. package/dist/non-serializable-numeric-identifier-validator.d.ts +16 -0
  104. package/dist/non-serializable-numeric-identifier-validator.d.ts.map +1 -0
  105. package/dist/non-serializable-numeric-identifier-validator.js +17 -0
  106. package/dist/non-serializable-numeric-identifier-validator.js.map +1 -0
  107. package/dist/numeric-identifier-creator.d.ts +6 -6
  108. package/dist/numeric-identifier-creator.d.ts.map +1 -1
  109. package/dist/numeric-identifier-descriptor.d.ts +2 -1
  110. package/dist/numeric-identifier-descriptor.d.ts.map +1 -1
  111. package/dist/numeric-identifier-type.d.ts +19 -24
  112. package/dist/numeric-identifier-type.d.ts.map +1 -1
  113. package/dist/numeric-identifier-type.js +4 -15
  114. package/dist/numeric-identifier-type.js.map +1 -1
  115. package/dist/numeric-identifier-validator.d.ts +20 -6
  116. package/dist/numeric-identifier-validator.d.ts.map +1 -1
  117. package/dist/numeric-identifier-validator.js +60 -1
  118. package/dist/numeric-identifier-validator.js.map +1 -1
  119. package/dist/prefix-manager.d.ts +6 -102
  120. package/dist/prefix-manager.d.ts.map +1 -1
  121. package/dist/prefix-manager.js +65 -60
  122. package/dist/prefix-manager.js.map +1 -1
  123. package/dist/serializable-numeric-identifier-creator.d.ts +3 -31
  124. package/dist/serializable-numeric-identifier-creator.d.ts.map +1 -1
  125. package/dist/serializable-numeric-identifier-creator.js +7 -21
  126. package/dist/serializable-numeric-identifier-creator.js.map +1 -1
  127. package/dist/serializable-numeric-identifier-descriptor.d.ts +1 -1
  128. package/dist/serializable-numeric-identifier-descriptor.d.ts.map +1 -1
  129. package/dist/serializable-numeric-identifier-type.d.ts +22 -2
  130. package/dist/serializable-numeric-identifier-type.d.ts.map +1 -1
  131. package/dist/serializable-numeric-identifier-type.js +7 -1
  132. package/dist/serializable-numeric-identifier-type.js.map +1 -1
  133. package/dist/serializable-numeric-identifier-validator.d.ts +3 -18
  134. package/dist/serializable-numeric-identifier-validator.d.ts.map +1 -1
  135. package/dist/serializable-numeric-identifier-validator.js +17 -16
  136. package/dist/serializable-numeric-identifier-validator.js.map +1 -1
  137. package/package.json +4 -5
  138. package/src/abstract-identifier-creator.ts +155 -74
  139. package/src/abstract-non-gtin-numeric-identifier-creator.ts +86 -0
  140. package/src/abstract-numeric-identifier-creator.ts +202 -133
  141. package/src/content-character-set-creators.ts +9 -0
  142. package/src/gtin-creator.ts +16 -15
  143. package/src/gtin-descriptor.ts +9 -3
  144. package/src/gtin-length.ts +61 -0
  145. package/src/gtin-type.ts +6 -37
  146. package/src/gtin-validator.ts +34 -41
  147. package/src/identifier-creator.ts +4 -4
  148. package/src/{creators.ts → identifier-creators.ts} +40 -26
  149. package/src/{descriptors.ts → identifier-descriptors.ts} +56 -54
  150. package/src/identifier-extension.ts +155 -0
  151. package/src/identifier-validator.ts +93 -10
  152. package/src/{validators.ts → identifier-validators.ts} +51 -36
  153. package/src/index.ts +15 -9
  154. package/src/leader-type.ts +29 -0
  155. package/src/non-gtin-numeric-identifier-creator.ts +7 -22
  156. package/src/non-gtin-numeric-identifier-descriptor.ts +1 -1
  157. package/src/non-gtin-numeric-identifier-type.ts +14 -3
  158. package/src/non-gtin-numeric-identifier-validator.ts +5 -13
  159. package/src/non-numeric-identifier-creator.ts +17 -12
  160. package/src/non-numeric-identifier-type.ts +14 -3
  161. package/src/non-numeric-identifier-validator.ts +8 -9
  162. package/src/non-serializable-numeric-identifier-creator.ts +12 -0
  163. package/src/non-serializable-numeric-identifier-descriptor.ts +7 -0
  164. package/src/non-serializable-numeric-identifier-type.ts +22 -0
  165. package/src/non-serializable-numeric-identifier-validator.ts +19 -0
  166. package/src/numeric-identifier-creator.ts +7 -6
  167. package/src/numeric-identifier-descriptor.ts +2 -1
  168. package/src/numeric-identifier-type.ts +17 -35
  169. package/src/numeric-identifier-validator.ts +61 -6
  170. package/src/prefix-manager.ts +67 -64
  171. package/src/serializable-numeric-identifier-creator.ts +11 -25
  172. package/src/serializable-numeric-identifier-descriptor.ts +1 -1
  173. package/src/serializable-numeric-identifier-type.ts +14 -5
  174. package/src/serializable-numeric-identifier-validator.ts +17 -16
  175. package/test/gtin-creator.ts +9 -2
  176. package/test/gtin-validator.test.ts +8 -10
  177. package/test/identifier-creator.ts +7 -7
  178. package/test/non-gtin-numeric-identifier-validator.ts +7 -2
  179. package/test/non-serializable-numeric-identifier-creator.ts +64 -0
  180. package/test/non-serializable-numeric-identifier-validator.ts +6 -0
  181. package/test/numeric-identifier-creator.ts +7 -2
  182. package/test/validator.test.ts +11 -10
  183. package/test/variable-measure-rcn.test.ts +23 -23
  184. package/dist/abstract-identifier-validator.d.ts +0 -95
  185. package/dist/abstract-identifier-validator.d.ts.map +0 -1
  186. package/dist/abstract-identifier-validator.js +0 -123
  187. package/dist/abstract-identifier-validator.js.map +0 -1
  188. package/dist/abstract-numeric-identifier-validator.d.ts +0 -35
  189. package/dist/abstract-numeric-identifier-validator.d.ts.map +0 -1
  190. package/dist/abstract-numeric-identifier-validator.js +0 -61
  191. package/dist/abstract-numeric-identifier-validator.js.map +0 -1
  192. package/dist/creators.d.ts.map +0 -1
  193. package/dist/creators.js.map +0 -1
  194. package/dist/descriptors.d.ts.map +0 -1
  195. package/dist/descriptors.js.map +0 -1
  196. package/dist/validators.d.ts.map +0 -1
  197. package/dist/validators.js.map +0 -1
  198. package/src/abstract-identifier-validator.ts +0 -140
  199. package/src/abstract-numeric-identifier-validator.ts +0 -69
@@ -1,75 +1,75 @@
1
- import type { CharacterSetCreator } from "@aidc-toolkit/utility";
2
1
  import type { IdentifierCreator } from "./identifier-creator.js";
3
- import type { IdentifierDescriptor } from "./identifier-descriptor.js";
4
- import type { IdentifierValidation } from "./identifier-validator.js";
2
+ import type { IdentifierType } from "./identifier-type.js";
3
+ import type { IdentifierValidation, IdentifierValidator } from "./identifier-validator.js";
4
+ import type { IdentifierTypeValidator } from "./identifier-validators.js";
5
5
  import type { PrefixProvider } from "./prefix-provider.js";
6
6
  /**
7
- * Abstract identifier creator. Implements common functionality for an identifier creator, bound to a {@link
8
- * PrefixProvider | prefix provider}.
7
+ * Identifier extension constructor type.
9
8
  *
10
- * @template TIdentifierDescriptor
11
- * Identifier descriptor type.
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
+ /**
33
+ * Identifier creator constructor type, which delegates to an identifier validator constructor.
34
+ *
35
+ * @template TConstructorArguments
36
+ * Constructor arguments types.
37
+ *
38
+ * @template TIdentifierType
39
+ * Identifier type type.
40
+ *
41
+ * @template TIdentifierValidation
42
+ * Identifier validation type.
43
+ *
44
+ * @template TIdentifierValidator
45
+ * Identifier validator type.
46
+ */
47
+ export type IdentifierCreatorConstructor<TConstructorArguments extends unknown[], TIdentifierType extends IdentifierType, TIdentifierValidation extends IdentifierValidation, TIdentifierValidator extends IdentifierValidator<TIdentifierType, TIdentifierValidation>> = IdentifierExtensionConstructor<[
48
+ prefixProvider: PrefixProvider,
49
+ prefix: string,
50
+ checkAllowance: number,
51
+ ...args: TConstructorArguments
52
+ ], TIdentifierValidator & IdentifierCreator<TIdentifierType, TIdentifierValidation>>;
53
+ /**
54
+ * Mixin implementation of {@linkcode IdentifierCreator} with an appropriate identifier validator base.
55
+ *
56
+ * @template TConstructorArguments
57
+ * Constructor arguments types.
58
+ *
59
+ * @template TIdentifierType
60
+ * Identifier type type.
12
61
  *
13
62
  * @template TIdentifierValidation
14
63
  * Identifier validation type.
64
+ *
65
+ * @template TIdentifierValidatorConstructor
66
+ * Identifier validator constructor type.
67
+ *
68
+ * @param IdentifierValidatorBase
69
+ * Identifier validator base.
70
+ *
71
+ * @returns
72
+ * Identifier creator class.
15
73
  */
16
- export declare abstract class AbstractIdentifierCreator<TIdentifierDescriptor extends IdentifierDescriptor, TIdentifierValidation extends IdentifierValidation> implements IdentifierCreator<TIdentifierDescriptor, TIdentifierValidation> {
17
- /**
18
- * Prefix provider.
19
- */
20
- private _prefixProvider;
21
- /**
22
- * Reference length.
23
- */
24
- private _referenceLength;
25
- /**
26
- * Initialize the prefix provider. This method is in lieu of a constructor due to the mixin architecture.
27
- *
28
- * @param prefixProvider
29
- * Prefix provider.
30
- *
31
- * @param prefix
32
- * Prefix within prefix provider to use to calculate reference length.
33
- *
34
- * @param checkAllowance
35
- * Number of characters to allow for check digit or check character pair.
36
- */
37
- protected init(prefixProvider: PrefixProvider, prefix: string, checkAllowance: number): void;
38
- /**
39
- * @inheritDoc
40
- */
41
- abstract get identifierType(): TIdentifierDescriptor["identifierType"];
42
- /**
43
- * @inheritDoc
44
- */
45
- abstract get prefixType(): TIdentifierDescriptor["prefixType"];
46
- /**
47
- * @inheritDoc
48
- */
49
- abstract get length(): number;
50
- /**
51
- * @inheritDoc
52
- */
53
- abstract get referenceCharacterSet(): TIdentifierDescriptor["referenceCharacterSet"];
54
- /**
55
- * @inheritDoc
56
- */
57
- abstract get referenceCreator(): CharacterSetCreator;
58
- /**
59
- * @inheritDoc
60
- */
61
- get prefixProvider(): PrefixProvider;
62
- /**
63
- * @inheritDoc
64
- */
65
- get prefix(): string;
66
- /**
67
- * @inheritDoc
68
- */
69
- get referenceLength(): number;
70
- /**
71
- * @inheritDoc
72
- */
73
- abstract validate(identifier: string, validation?: TIdentifierValidation): void;
74
- }
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>>;
75
75
  //# 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,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;;;;GASG;AACH,8BAAsB,yBAAyB,CAAC,qBAAqB,SAAS,oBAAoB,EAAE,qBAAqB,SAAS,oBAAoB,CAAE,YAAW,iBAAiB,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9N;;OAEG;IACH,OAAO,CAAC,eAAe,CAAkB;IAEzC;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAAU;IAElC;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI;IAO5F;;OAEG;IACH,QAAQ,KAAK,cAAc,IAAI,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAEvE;;OAEG;IACH,QAAQ,KAAK,UAAU,IAAI,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAE/D;;OAEG;IACH,QAAQ,KAAK,MAAM,IAAI,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,KAAK,qBAAqB,IAAI,qBAAqB,CAAC,uBAAuB,CAAC,CAAC;IAErF;;OAEG;IACH,QAAQ,KAAK,gBAAgB,IAAI,mBAAmB,CAAC;IAErD;;OAEG;IACH,IAAI,cAAc,IAAI,cAAc,CAEnC;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,qBAAqB,GAAG,IAAI;CAClF"}
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,56 +1,79 @@
1
1
  /**
2
- * Abstract identifier creator. Implements common functionality for an identifier creator, bound to a {@link
3
- * PrefixProvider | prefix provider}.
2
+ * Mixin implementation of {@linkcode IdentifierCreator} with an appropriate identifier validator base.
4
3
  *
5
- * @template TIdentifierDescriptor
6
- * Identifier descriptor type.
4
+ * @template TConstructorArguments
5
+ * Constructor arguments types.
6
+ *
7
+ * @template TIdentifierType
8
+ * Identifier type type.
7
9
  *
8
10
  * @template TIdentifierValidation
9
11
  * Identifier validation type.
12
+ *
13
+ * @template TIdentifierValidatorConstructor
14
+ * Identifier validator constructor type.
15
+ *
16
+ * @param IdentifierValidatorBase
17
+ * Identifier validator base.
18
+ *
19
+ * @returns
20
+ * Identifier creator class.
10
21
  */
11
- export class AbstractIdentifierCreator {
12
- /**
13
- * Prefix provider.
14
- */
15
- _prefixProvider;
16
- /**
17
- * Reference length.
18
- */
19
- _referenceLength;
20
- /**
21
- * Initialize the prefix provider. This method is in lieu of a constructor due to the mixin architecture.
22
- *
23
- * @param prefixProvider
24
- * Prefix provider.
25
- *
26
- * @param prefix
27
- * Prefix within prefix provider to use to calculate reference length.
28
- *
29
- * @param checkAllowance
30
- * Number of characters to allow for check digit or check character pair.
31
- */
32
- init(prefixProvider, prefix, checkAllowance) {
33
- this._prefixProvider = prefixProvider;
34
- // Reference length allows for prefix and optionally check digit or check character pair.
35
- this._referenceLength = this.length - prefix.length - checkAllowance;
36
- }
37
- /**
38
- * @inheritDoc
39
- */
40
- get prefixProvider() {
41
- return this._prefixProvider;
42
- }
43
- /**
44
- * @inheritDoc
45
- */
46
- get prefix() {
47
- return this.prefixProvider.gs1CompanyPrefix;
48
- }
22
+ export function MixinAbstractIdentifierCreator(IdentifierValidatorBase) {
49
23
  /**
50
- * @inheritDoc
24
+ * Abstract numeric identifier creator. Implements common functionality for a numeric identifier creator, mixed in
25
+ * with a matching numeric identifier validator.
51
26
  */
52
- get referenceLength() {
53
- return this._referenceLength;
27
+ class AbstractIdentifierCreator extends IdentifierValidatorBase {
28
+ /**
29
+ * Prefix provider.
30
+ */
31
+ #prefixProvider;
32
+ /**
33
+ * Reference length.
34
+ */
35
+ #referenceLength;
36
+ /**
37
+ * Constructor.
38
+ *
39
+ * @param prefixProvider
40
+ * Prefix provider.
41
+ *
42
+ * @param prefix
43
+ * Prefix within prefix provider to use to calculate reference length.
44
+ *
45
+ * @param checkAllowance
46
+ * Number of characters to allow for check digit or check character pair.
47
+ *
48
+ * @param args
49
+ * Originating constructor arguments.
50
+ */
51
+ constructor(prefixProvider, prefix, checkAllowance, ...args) {
52
+ super(...args);
53
+ this.#prefixProvider = prefixProvider;
54
+ // Reference length allows for prefix and optionally check digit or check character pair.
55
+ this.#referenceLength = this.length - prefix.length - checkAllowance;
56
+ }
57
+ /**
58
+ * @inheritDoc
59
+ */
60
+ get prefixProvider() {
61
+ return this.#prefixProvider;
62
+ }
63
+ /**
64
+ * @inheritDoc
65
+ */
66
+ get prefix() {
67
+ return this.prefixProvider.gs1CompanyPrefix;
68
+ }
69
+ /**
70
+ * @inheritDoc
71
+ */
72
+ get referenceLength() {
73
+ return this.#referenceLength;
74
+ }
54
75
  }
76
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- Base class was upcast to type with statically known members for mixin, downcast result.
77
+ return AbstractIdentifierCreator;
55
78
  }
56
79
  //# sourceMappingURL=abstract-identifier-creator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-identifier-creator.js","sourceRoot":"","sources":["../src/abstract-identifier-creator.ts"],"names":[],"mappings":"AAMA;;;;;;;;;GASG;AACH,MAAM,OAAgB,yBAAyB;IAC3C;;OAEG;IACK,eAAe,CAAkB;IAEzC;;OAEG;IACK,gBAAgB,CAAU;IAElC;;;;;;;;;;;OAWG;IACO,IAAI,CAAC,cAA8B,EAAE,MAAc,EAAE,cAAsB;QACjF,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QAEtC,yFAAyF;QACzF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;IACzE,CAAC;IA2BD;;OAEG;IACH,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;CAMJ"}
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"}
@@ -0,0 +1,42 @@
1
+ import type { IdentifierExtensionConstructor, IdentifierValidatorConstructor } from "./abstract-identifier-creator.js";
2
+ import type { IdentifierTypeValidator } from "./identifier-validators.js";
3
+ import type { NonGTINNumericIdentifierCreator } from "./non-gtin-numeric-identifier-creator.js";
4
+ import type { NonGTINNumericIdentifierType } from "./non-gtin-numeric-identifier-type.js";
5
+ import type { NonGTINNumericIdentifierValidator } from "./non-gtin-numeric-identifier-validator.js";
6
+ import type { NumericIdentifierValidation } from "./numeric-identifier-validator.js";
7
+ import type { PrefixProvider } from "./prefix-provider.js";
8
+ /**
9
+ * Non-GTIN numeric identifier creator constructor type, which delegates to a non-GTIN numeric identifier validator
10
+ * constructor.
11
+ *
12
+ * @template TNonGTINNumericIdentifierType
13
+ * Non-GTIN numeric identifier type type.
14
+ *
15
+ * @template TNonGTINNumericIdentifierValidator
16
+ * Non-GTIN numeric identifier validator type.
17
+ */
18
+ type NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType, TNonGTINNumericIdentifierValidator extends NonGTINNumericIdentifierValidator<TNonGTINNumericIdentifierType>> = IdentifierExtensionConstructor<[
19
+ prefixProvider: PrefixProvider,
20
+ identifierType: TNonGTINNumericIdentifierType
21
+ ], TNonGTINNumericIdentifierValidator & NonGTINNumericIdentifierCreator<TNonGTINNumericIdentifierType>>;
22
+ /**
23
+ * Mixin implementation of {@linkcode NonGTINNumericIdentifierCreator} with an appropriate non-GTIN numeric identifier
24
+ * validator base.
25
+ *
26
+ * @template TNonGTINNumericIdentifierType
27
+ * Non-GTIN numeric identifier type type.
28
+ *
29
+ * @template TNonGTINNumericIdentifierValidatorConstructor
30
+ * Non-GTIN numeric identifier validator constructor type.
31
+ *
32
+ * @param NonGTINNumericIdentifierValidatorBase
33
+ * Non-GTIN numeric identifier validator base.
34
+ *
35
+ * @returns
36
+ * Non-GTIN numeric identifier creator class.
37
+ */
38
+ export declare function MixinAbstractNonGTINNumericIdentifierCreator<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType, TNonGTINNumericIdentifierValidatorConstructor extends IdentifierValidatorConstructor<[
39
+ TNonGTINNumericIdentifierType
40
+ ], TNonGTINNumericIdentifierType, NumericIdentifierValidation>>(NonGTINNumericIdentifierValidatorBase: TNonGTINNumericIdentifierValidatorConstructor): NonGTINNumericIdentifierCreatorConstructor<TNonGTINNumericIdentifierType, IdentifierTypeValidator<TNonGTINNumericIdentifierType>>;
41
+ export {};
42
+ //# sourceMappingURL=abstract-non-gtin-numeric-identifier-creator.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,40 @@
1
+ import { MixinAbstractNumericIdentifierCreator } from "./abstract-numeric-identifier-creator.js";
2
+ /**
3
+ * Mixin implementation of {@linkcode NonGTINNumericIdentifierCreator} with an appropriate non-GTIN numeric identifier
4
+ * validator base.
5
+ *
6
+ * @template TNonGTINNumericIdentifierType
7
+ * Non-GTIN numeric identifier type type.
8
+ *
9
+ * @template TNonGTINNumericIdentifierValidatorConstructor
10
+ * Non-GTIN numeric identifier validator constructor type.
11
+ *
12
+ * @param NonGTINNumericIdentifierValidatorBase
13
+ * Non-GTIN numeric identifier validator base.
14
+ *
15
+ * @returns
16
+ * Non-GTIN numeric identifier creator class.
17
+ */
18
+ export function MixinAbstractNonGTINNumericIdentifierCreator(NonGTINNumericIdentifierValidatorBase) {
19
+ /**
20
+ * Abstract non-GTIN numeric identifier creator. Implements common functionality for a non-GTIN numeric identifier
21
+ * creator, mixed in with a matching non-GTIN numeric identifier validator.
22
+ */
23
+ class AbstractNonGTINNumericIdentifierCreator extends MixinAbstractNumericIdentifierCreator(NonGTINNumericIdentifierValidatorBase) {
24
+ /**
25
+ * Constructor.
26
+ *
27
+ * @param prefixProvider
28
+ * Prefix provider.
29
+ *
30
+ * @param identifierType
31
+ * Identifier type.
32
+ */
33
+ constructor(prefixProvider, identifierType) {
34
+ super(prefixProvider, prefixProvider.gs1CompanyPrefix, identifierType);
35
+ }
36
+ }
37
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- Base class was upcast to type with statically known members for mixin, downcast result.
38
+ return AbstractNonGTINNumericIdentifierCreator;
39
+ }
40
+ //# sourceMappingURL=abstract-non-gtin-numeric-identifier-creator.js.map
@@ -0,0 +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,92 +1,43 @@
1
- import { type TransformerInput, type TransformerOutput } from "@aidc-toolkit/utility";
2
- import { AbstractIdentifierCreator } from "./abstract-identifier-creator.js";
1
+ import { type IdentifierExtensionConstructor, type IdentifierValidatorConstructor } from "./abstract-identifier-creator.js";
2
+ import type { IdentifierTypeValidator } from "./identifier-validators.js";
3
3
  import type { NumericIdentifierCreator } from "./numeric-identifier-creator.js";
4
- import type { NumericIdentifierDescriptor } from "./numeric-identifier-descriptor.js";
5
- import { type LeaderType } from "./numeric-identifier-type.js";
6
- import type { NumericIdentifierValidation } from "./numeric-identifier-validator.js";
4
+ import type { NumericIdentifierType } from "./numeric-identifier-type.js";
5
+ import type { NumericIdentifierValidation, NumericIdentifierValidator } from "./numeric-identifier-validator.js";
7
6
  import type { PrefixProvider } from "./prefix-provider.js";
8
7
  /**
9
- * Abstract numeric identifier creator. Implements common functionality for a numeric identifier creator.
8
+ * Numeric identifier creator constructor type, which delegates to a numeric identifier validator constructor.
10
9
  *
11
- * @template TNumericIdentifierDescriptor
12
- * Numeric identifier descriptor type.
10
+ * @template TConstructorArguments
11
+ * Constructor arguments types.
12
+ *
13
+ * @template TNumericIdentifierType
14
+ * Numeric identifier type type.
15
+ *
16
+ * @template TNumericIdentifierValidator
17
+ * Numeric identifier validator type.
18
+ */
19
+ export type NumericIdentifierCreatorConstructor<TConstructorArguments extends unknown[], TNumericIdentifierType extends NumericIdentifierType, TNumericIdentifierValidator extends NumericIdentifierValidator<TNumericIdentifierType>> = IdentifierExtensionConstructor<[
20
+ prefixProvider: PrefixProvider,
21
+ prefix: string,
22
+ ...args: TConstructorArguments
23
+ ], TNumericIdentifierValidator & NumericIdentifierCreator<TNumericIdentifierType>>;
24
+ /**
25
+ * Mixin implementation of {@linkcode NumericIdentifierCreator} with an appropriate numeric identifier validator base.
26
+ *
27
+ * @template TConstructorArguments
28
+ * Constructor arguments types.
29
+ *
30
+ * @template TNumericIdentifierType
31
+ * Numeric identifier type type.
32
+ *
33
+ * @template TNumericIdentifierValidatorConstructor
34
+ * Numeric identifier validator constructor type.
35
+ *
36
+ * @param NumericIdentifierValidatorBase
37
+ * Numeric identifier validator base.
38
+ *
39
+ * @returns
40
+ * Numeric identifier creator class.
13
41
  */
14
- export declare abstract class AbstractNumericIdentifierCreator<TNumericIdentifierDescriptor extends NumericIdentifierDescriptor> extends AbstractIdentifierCreator<TNumericIdentifierDescriptor, NumericIdentifierValidation> implements NumericIdentifierCreator<TNumericIdentifierDescriptor> {
15
- /**
16
- * Capacity.
17
- */
18
- private _capacity;
19
- /**
20
- * Tweak for sparse creation.
21
- */
22
- private _tweak;
23
- /**
24
- * Initialize the prefix provider. This method is in lieu of a constructor due to the mixin architecture.
25
- *
26
- * @param prefixProvider
27
- * Prefix provider.
28
- *
29
- * @param prefix
30
- * Prefix within prefix manager to use to calculate reference length.
31
- */
32
- protected init(prefixProvider: PrefixProvider, prefix: string): void;
33
- /**
34
- * Get the leader type.
35
- */
36
- abstract get leaderType(): LeaderType;
37
- /**
38
- * @inheritDoc
39
- */
40
- get capacity(): number;
41
- /**
42
- * @inheritDoc
43
- */
44
- get tweak(): bigint;
45
- /**
46
- * @inheritDoc
47
- */
48
- set tweak(value: bigint);
49
- /**
50
- * Build an identifier from a reference by merging it with the prefix and adding the check digit.
51
- *
52
- * @param reference
53
- * Identifier reference.
54
- *
55
- * @returns
56
- * Identifier.
57
- */
58
- private buildIdentifier;
59
- /**
60
- * @inheritDoc
61
- */
62
- create<TTransformerInput extends TransformerInput<number | bigint>>(valueOrValues: TTransformerInput, sparse?: boolean): TransformerOutput<TTransformerInput, string>;
63
- /**
64
- * Create all identifiers from a partial identifier. Call is recursive until remaining reference
65
- * length is 0.
66
- *
67
- * @param partialIdentifier
68
- * Partial identifier. Initial value is `this.prefix`.
69
- *
70
- * @param remainingReferenceLength
71
- * Remaining reference length. Initial value is `this.referenceLength`.
72
- *
73
- * @param extensionWeight
74
- * If this value is not zero, the identifier has an extension digit, this call is setting it, and this value is
75
- * applied to the calculation of the check digit.
76
- *
77
- * @param weight
78
- * If the extension weight is zero, this value is applied to the calculation of the check digit.
79
- *
80
- * @param partialCheckDigitSum
81
- * Partial check digit sum for the partial identifier.
82
- *
83
- * @yields
84
- * Identifier.
85
- */
86
- private static createAllPartial;
87
- /**
88
- * @inheritDoc
89
- */
90
- createAll(): Iterable<string>;
91
- }
42
+ export declare function MixinAbstractNumericIdentifierCreator<TConstructorArguments extends unknown[], TNumericIdentifierType extends NumericIdentifierType, TNumericIdentifierValidatorConstructor extends IdentifierValidatorConstructor<TConstructorArguments, TNumericIdentifierType, NumericIdentifierValidation>>(NumericIdentifierValidatorBase: TNumericIdentifierValidatorConstructor): NumericIdentifierCreatorConstructor<TConstructorArguments, TNumericIdentifierType, IdentifierTypeValidator<TNumericIdentifierType>>;
92
43
  //# 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":"AAAA,OAAO,EAIH,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAE7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,KAAK,UAAU,EAAe,MAAM,8BAA8B,CAAC;AAC5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;GAKG;AACH,8BAAsB,gCAAgC,CAAC,4BAA4B,SAAS,2BAA2B,CAAE,SAAQ,yBAAyB,CAAC,4BAA4B,EAAE,2BAA2B,CAAE,YAAW,wBAAwB,CAAC,4BAA4B,CAAC;IACnR;;OAEG;IACH,OAAO,CAAC,SAAS,CAAU;IAE3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAM;IAEpB;;;;;;;;OAQG;cACgB,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAO7E;;OAEG;IACH,QAAQ,KAAK,UAAU,IAAI,UAAU,CAAC;IAEtC;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,MAAM,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,UAAQ,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAInK;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,MAAM,CAAG,gBAAgB;IA6BjC;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,MAAM,CAAC;CAgBhC"}
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"}