@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,6 +1,6 @@
1
1
  import { GTINCreator } from "./gtin-creator.js";
2
- import { NonGTINNumericIdentifierCreator } from "./non-gtin-numeric-identifier-creator.js";
3
2
  import { NonNumericIdentifierCreator } from "./non-numeric-identifier-creator.js";
3
+ import { NonSerializableNumericIdentifierCreator } from "./non-serializable-numeric-identifier-creator.js";
4
4
  import type { PrefixProvider } from "./prefix-provider.js";
5
5
  import { type PrefixType } from "./prefix-type.js";
6
6
  import { SerializableNumericIdentifierCreator } from "./serializable-numeric-identifier-creator.js";
@@ -25,47 +25,7 @@ import { SerializableNumericIdentifierCreator } from "./serializable-numeric-ide
25
25
  * should be taken to restore it when resuming the application. A tweak factor of 0 creates a straight sequence.
26
26
  */
27
27
  export declare class PrefixManager implements PrefixProvider {
28
- /**
29
- * Cached prefix managers, keyed by GS1 Company Prefix.
30
- */
31
- private static readonly PREFIX_MANAGERS_MAP;
32
- /**
33
- * Creator tweak factors. Different numeric identifier types have different tweak factors so that sparse creation
34
- * generates different sequences for each.
35
- */
36
- private static readonly CREATOR_TWEAK_FACTORS;
37
- /**
38
- * Normalized prefix type.
39
- */
40
- private readonly _prefixType;
41
- /**
42
- * Normalized prefix.
43
- */
44
- private readonly _prefix;
45
- /**
46
- * Prefix as GS1 Company Prefix.
47
- */
48
- private readonly _gs1CompanyPrefix;
49
- /**
50
- * U.P.C. Company Prefix if prefix type is {@linkcode PrefixTypes.UPCCompanyPrefix}.
51
- */
52
- private readonly _upcCompanyPrefix;
53
- /**
54
- * GS1-8 Prefix if prefix type is {@linkcode PrefixTypes.GS18Prefix}.
55
- */
56
- private readonly _gs18Prefix;
57
- /**
58
- * Default tweak factor.
59
- */
60
- private readonly _defaultTweakFactor;
61
- /**
62
- * Tweak factor.
63
- */
64
- private _tweakFactor;
65
- /**
66
- * Cached identifier creators.
67
- */
68
- private readonly _identifierCreators;
28
+ #private;
69
29
  /**
70
30
  * Constructor.
71
31
  *
@@ -96,13 +56,6 @@ export declare class PrefixManager implements PrefixProvider {
96
56
  * Get the GS1-8 Prefix if prefix type is {@linkcode PrefixTypes.GS18Prefix} or undefined if not.
97
57
  */
98
58
  get gs18Prefix(): string | undefined;
99
- /**
100
- * Set the tweak for an identifier creator if it's a numeric identifier creator.
101
- *
102
- * @param identifierCreator
103
- * Identifier creator.
104
- */
105
- private setCreatorTweak;
106
59
  /**
107
60
  * Get the tweak factor.
108
61
  */
@@ -131,55 +84,6 @@ export declare class PrefixManager implements PrefixProvider {
131
84
  * Prefix manager with normalized prefix type and prefix.
132
85
  */
133
86
  static get(prefixType: PrefixType, prefix: string): PrefixManager;
134
- /**
135
- * Get an identifier creator.
136
- *
137
- * @template TIdentifierType
138
- * Identifier type type.
139
- *
140
- * @param identifierType
141
- * Identifier type used to construct identifier creator.
142
- *
143
- * @param constructorParameter
144
- * Second constructor parameter passed to constructor callback alongside this.
145
- *
146
- * @param ConstructorCallback
147
- * Constructor callback.
148
- *
149
- * @returns
150
- * Identifier creator.
151
- */
152
- private getIdentifierCreator;
153
- /**
154
- * Get non-GTIN numeric identifier creator.
155
- *
156
- * @param identifierType
157
- * Identifier type used to construct identifier creator.
158
- *
159
- * @returns
160
- * Identifier creator.
161
- */
162
- private getNonGTINNumericIdentifierCreator;
163
- /**
164
- * Get serialized numeric identifier creator.
165
- *
166
- * @param identifierType
167
- * Identifier type used to construct identifier creator.
168
- *
169
- * @returns
170
- * Identifier creator.
171
- */
172
- private getSerializableNumericIdentifierCreator;
173
- /**
174
- * Get non-numeric identifier creator.
175
- *
176
- * @param identifierType
177
- * Identifier type used to construct identifier creator.
178
- *
179
- * @returns
180
- * Identifier creator.
181
- */
182
- private getNonNumericIdentifierCreator;
183
87
  /**
184
88
  * Get GTIN creator.
185
89
  */
@@ -187,11 +91,11 @@ export declare class PrefixManager implements PrefixProvider {
187
91
  /**
188
92
  * Get GLN creator.
189
93
  */
190
- get glnCreator(): NonGTINNumericIdentifierCreator;
94
+ get glnCreator(): NonSerializableNumericIdentifierCreator;
191
95
  /**
192
96
  * Get SSCC creator.
193
97
  */
194
- get ssccCreator(): NonGTINNumericIdentifierCreator;
98
+ get ssccCreator(): NonSerializableNumericIdentifierCreator;
195
99
  /**
196
100
  * Get GRAI creator.
197
101
  */
@@ -203,7 +107,7 @@ export declare class PrefixManager implements PrefixProvider {
203
107
  /**
204
108
  * Get GSRN creator.
205
109
  */
206
- get gsrnCreator(): NonGTINNumericIdentifierCreator;
110
+ get gsrnCreator(): NonSerializableNumericIdentifierCreator;
207
111
  /**
208
112
  * Get GDTI creator.
209
113
  */
@@ -215,7 +119,7 @@ export declare class PrefixManager implements PrefixProvider {
215
119
  /**
216
120
  * Get GSIN creator.
217
121
  */
218
- get gsinCreator(): NonGTINNumericIdentifierCreator;
122
+ get gsinCreator(): NonSerializableNumericIdentifierCreator;
219
123
  /**
220
124
  * Get GCN creator.
221
125
  */
@@ -1 +1 @@
1
- {"version":3,"file":"prefix-manager.d.ts","sourceRoot":"","sources":["../src/prefix-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prefix-manager.d.ts","sourceRoot":"","sources":["../src/prefix-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAElF,OAAO,EAAE,uCAAuC,EAAE,MAAM,kDAAkD,CAAC;AAG3G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,KAAK,UAAU,EAAe,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AAGpG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,aAAc,YAAW,cAAc;;IA6DhD;;;;;;;;OAQG;gBACS,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;IAelD;;OAEG;IACH,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAEzC;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAeD;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;;;;OAKG;IACH,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAUrC;IAED;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAIxB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa;IA8FjE;;OAEG;IACH,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,uCAAuC,CAExD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,uCAAuC,CAEzD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,oCAAoC,CAEtD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,2BAA2B,CAE7C;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,uCAAuC,CAEzD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,oCAAoC,CAEtD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,2BAA2B,CAE7C;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,uCAAuC,CAEzD;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,oCAAoC,CAErD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,2BAA2B,CAE7C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,2BAA2B,CAE5C;CACJ"}
@@ -1,10 +1,11 @@
1
- import { isNumericIdentifierCreator } from "./creators.js";
1
+ var _a;
2
2
  import { GTINCreator } from "./gtin-creator.js";
3
- import { GTIN_BASE_TYPES } from "./gtin-type.js";
3
+ import { GTIN_BASE_TYPES } from "./gtin-length.js";
4
+ import { isNumericIdentifierCreator } from "./identifier-creators.js";
4
5
  import { IdentifierTypes } from "./identifier-type.js";
5
6
  import { i18nextGS1 } from "./locale/i18n.js";
6
- import { NonGTINNumericIdentifierCreator } from "./non-gtin-numeric-identifier-creator.js";
7
7
  import { NonNumericIdentifierCreator } from "./non-numeric-identifier-creator.js";
8
+ import { NonSerializableNumericIdentifierCreator } from "./non-serializable-numeric-identifier-creator.js";
8
9
  import { PrefixTypes } from "./prefix-type.js";
9
10
  import { PrefixValidator } from "./prefix-validator.js";
10
11
  import { SerializableNumericIdentifierCreator } from "./serializable-numeric-identifier-creator.js";
@@ -32,12 +33,12 @@ export class PrefixManager {
32
33
  /**
33
34
  * Cached prefix managers, keyed by GS1 Company Prefix.
34
35
  */
35
- static PREFIX_MANAGERS_MAP = new Map();
36
+ static #PREFIX_MANAGERS_MAP = new Map();
36
37
  /**
37
38
  * Creator tweak factors. Different numeric identifier types have different tweak factors so that sparse creation
38
39
  * generates different sequences for each.
39
40
  */
40
- static CREATOR_TWEAK_FACTORS = {
41
+ static #CREATOR_TWEAK_FACTORS = {
41
42
  GTIN: 1987n,
42
43
  GLN: 4241n,
43
44
  SSCC: 8087n,
@@ -50,35 +51,35 @@ export class PrefixManager {
50
51
  /**
51
52
  * Normalized prefix type.
52
53
  */
53
- _prefixType;
54
+ #prefixType;
54
55
  /**
55
56
  * Normalized prefix.
56
57
  */
57
- _prefix;
58
+ #prefix;
58
59
  /**
59
60
  * Prefix as GS1 Company Prefix.
60
61
  */
61
- _gs1CompanyPrefix;
62
+ #gs1CompanyPrefix;
62
63
  /**
63
64
  * U.P.C. Company Prefix if prefix type is {@linkcode PrefixTypes.UPCCompanyPrefix}.
64
65
  */
65
- _upcCompanyPrefix;
66
+ #upcCompanyPrefix;
66
67
  /**
67
68
  * GS1-8 Prefix if prefix type is {@linkcode PrefixTypes.GS18Prefix}.
68
69
  */
69
- _gs18Prefix;
70
+ #gs18Prefix;
70
71
  /**
71
72
  * Default tweak factor.
72
73
  */
73
- _defaultTweakFactor;
74
+ #defaultTweakFactor;
74
75
  /**
75
76
  * Tweak factor.
76
77
  */
77
- _tweakFactor = 0n;
78
+ #tweakFactor = 0n;
78
79
  /**
79
80
  * Cached identifier creators.
80
81
  */
81
- _identifierCreators = {};
82
+ #identifierCreators = {};
82
83
  /**
83
84
  * Constructor.
84
85
  *
@@ -90,44 +91,44 @@ export class PrefixManager {
90
91
  */
91
92
  constructor(prefixType, prefix) {
92
93
  const normalizedPrefixProvider = PrefixValidator.normalize(prefixType, prefix);
93
- this._prefixType = normalizedPrefixProvider.prefixType;
94
- this._prefix = normalizedPrefixProvider.prefix;
95
- this._gs1CompanyPrefix = normalizedPrefixProvider.gs1CompanyPrefix;
96
- this._upcCompanyPrefix = normalizedPrefixProvider.upcCompanyPrefix;
97
- this._gs18Prefix = normalizedPrefixProvider.gs18Prefix;
94
+ this.#prefixType = normalizedPrefixProvider.prefixType;
95
+ this.#prefix = normalizedPrefixProvider.prefix;
96
+ this.#gs1CompanyPrefix = normalizedPrefixProvider.gs1CompanyPrefix;
97
+ this.#upcCompanyPrefix = normalizedPrefixProvider.upcCompanyPrefix;
98
+ this.#gs18Prefix = normalizedPrefixProvider.gs18Prefix;
98
99
  // Default tweak factor is the numeric value of the GS1 Company Prefix preceded by '1'.
99
- this._defaultTweakFactor = BigInt(`1${this.gs1CompanyPrefix}`);
100
+ this.#defaultTweakFactor = BigInt(`1${this.gs1CompanyPrefix}`);
100
101
  this.resetTweakFactor();
101
102
  }
102
103
  /**
103
104
  * Get the prefix type.
104
105
  */
105
106
  get prefixType() {
106
- return this._prefixType;
107
+ return this.#prefixType;
107
108
  }
108
109
  /**
109
110
  * Get the prefix.
110
111
  */
111
112
  get prefix() {
112
- return this._prefix;
113
+ return this.#prefix;
113
114
  }
114
115
  /**
115
116
  * Get the GS1 Company Prefix.
116
117
  */
117
118
  get gs1CompanyPrefix() {
118
- return this._gs1CompanyPrefix;
119
+ return this.#gs1CompanyPrefix;
119
120
  }
120
121
  /**
121
122
  * Get the U.P.C. Company Prefix if prefix type is {@linkcode PrefixTypes.UPCCompanyPrefix} or undefined if not.
122
123
  */
123
124
  get upcCompanyPrefix() {
124
- return this._upcCompanyPrefix;
125
+ return this.#upcCompanyPrefix;
125
126
  }
126
127
  /**
127
128
  * Get the GS1-8 Prefix if prefix type is {@linkcode PrefixTypes.GS18Prefix} or undefined if not.
128
129
  */
129
130
  get gs18Prefix() {
130
- return this._gs18Prefix;
131
+ return this.#gs18Prefix;
131
132
  }
132
133
  /**
133
134
  * Set the tweak for an identifier creator if it's a numeric identifier creator.
@@ -135,17 +136,17 @@ export class PrefixManager {
135
136
  * @param identifierCreator
136
137
  * Identifier creator.
137
138
  */
138
- setCreatorTweak(identifierCreator) {
139
+ #setCreatorTweak(identifierCreator) {
139
140
  if (isNumericIdentifierCreator(identifierCreator)) {
140
141
  // eslint-disable-next-line no-param-reassign -- Method purpose is to set the tweak.
141
- identifierCreator.tweak = this.tweakFactor * PrefixManager.CREATOR_TWEAK_FACTORS[identifierCreator.identifierType];
142
+ identifierCreator.tweak = this.tweakFactor * _a.#CREATOR_TWEAK_FACTORS[identifierCreator.identifierType];
142
143
  }
143
144
  }
144
145
  /**
145
146
  * Get the tweak factor.
146
147
  */
147
148
  get tweakFactor() {
148
- return this._tweakFactor;
149
+ return this.#tweakFactor;
149
150
  }
150
151
  /**
151
152
  * Set the tweak factor.
@@ -155,10 +156,10 @@ export class PrefixManager {
155
156
  */
156
157
  set tweakFactor(value) {
157
158
  const tweakFactor = BigInt(value);
158
- if (this._tweakFactor !== tweakFactor) {
159
- this._tweakFactor = tweakFactor;
160
- for (const creator of Object.values(this._identifierCreators)) {
161
- this.setCreatorTweak(creator);
159
+ if (this.#tweakFactor !== tweakFactor) {
160
+ this.#tweakFactor = tweakFactor;
161
+ for (const creator of Object.values(this.#identifierCreators)) {
162
+ this.#setCreatorTweak(creator);
162
163
  }
163
164
  }
164
165
  }
@@ -166,7 +167,7 @@ export class PrefixManager {
166
167
  * Reset the tweak factor to its default (numeric value of the GS1 Company Prefix preceded by '1').
167
168
  */
168
169
  resetTweakFactor() {
169
- this.tweakFactor = this._defaultTweakFactor;
170
+ this.tweakFactor = this.#defaultTweakFactor;
170
171
  }
171
172
  /**
172
173
  * Get a prefix manager.
@@ -183,10 +184,10 @@ export class PrefixManager {
183
184
  static get(prefixType, prefix) {
184
185
  // Normalization will occur in constructor as well, but it's necessary here for the map.
185
186
  const normalizedPrefixProvider = PrefixValidator.normalize(prefixType, prefix);
186
- let prefixManager = PrefixManager.PREFIX_MANAGERS_MAP.get(normalizedPrefixProvider.gs1CompanyPrefix);
187
+ let prefixManager = _a.#PREFIX_MANAGERS_MAP.get(normalizedPrefixProvider.gs1CompanyPrefix);
187
188
  if (prefixManager === undefined) {
188
- prefixManager = new PrefixManager(normalizedPrefixProvider.prefixType, normalizedPrefixProvider.prefix);
189
- PrefixManager.PREFIX_MANAGERS_MAP.set(normalizedPrefixProvider.gs1CompanyPrefix, prefixManager);
189
+ prefixManager = new _a(normalizedPrefixProvider.prefixType, normalizedPrefixProvider.prefix);
190
+ _a.#PREFIX_MANAGERS_MAP.set(normalizedPrefixProvider.gs1CompanyPrefix, prefixManager);
190
191
  }
191
192
  return prefixManager;
192
193
  }
@@ -196,11 +197,14 @@ export class PrefixManager {
196
197
  * @template TIdentifierType
197
198
  * Identifier type type.
198
199
  *
200
+ * @template TConstructorArgument
201
+ * Second constructor argument type.
202
+ *
199
203
  * @param identifierType
200
204
  * Identifier type used to construct identifier creator.
201
205
  *
202
- * @param constructorParameter
203
- * Second constructor parameter passed to constructor callback alongside this.
206
+ * @param constructorArgument
207
+ * Second constructor argument passed to constructor callback alongside this.
204
208
  *
205
209
  * @param ConstructorCallback
206
210
  * Constructor callback.
@@ -208,17 +212,17 @@ export class PrefixManager {
208
212
  * @returns
209
213
  * Identifier creator.
210
214
  */
211
- getIdentifierCreator(identifierType, constructorParameter, ConstructorCallback) {
212
- let creator = this._identifierCreators[identifierType];
215
+ #getIdentifierCreator(identifierType, constructorArgument, ConstructorCallback) {
216
+ let creator = this.#identifierCreators[identifierType];
213
217
  if (creator === undefined) {
214
218
  if (this.prefixType === PrefixTypes.GS18Prefix && identifierType !== IdentifierTypes.GTIN) {
215
219
  throw new RangeError(i18nextGS1.t("Prefix.identifierTypeNotSupportedByGS18Prefix", {
216
220
  identifierType
217
221
  }));
218
222
  }
219
- creator = new ConstructorCallback(this, constructorParameter);
220
- this.setCreatorTweak(creator);
221
- this._identifierCreators[identifierType] = creator;
223
+ creator = new ConstructorCallback(this, constructorArgument);
224
+ this.#setCreatorTweak(creator);
225
+ this.#identifierCreators[identifierType] = creator;
222
226
  }
223
227
  return creator;
224
228
  }
@@ -231,8 +235,8 @@ export class PrefixManager {
231
235
  * @returns
232
236
  * Identifier creator.
233
237
  */
234
- getNonGTINNumericIdentifierCreator(identifierType) {
235
- return this.getIdentifierCreator(identifierType, identifierType, NonGTINNumericIdentifierCreator);
238
+ #getNonGTINNumericIdentifierCreator(identifierType) {
239
+ return this.#getIdentifierCreator(identifierType, identifierType, NonSerializableNumericIdentifierCreator);
236
240
  }
237
241
  /**
238
242
  * Get serialized numeric identifier creator.
@@ -243,8 +247,8 @@ export class PrefixManager {
243
247
  * @returns
244
248
  * Identifier creator.
245
249
  */
246
- getSerializableNumericIdentifierCreator(identifierType) {
247
- return this.getIdentifierCreator(identifierType, identifierType, SerializableNumericIdentifierCreator);
250
+ #getSerializableNumericIdentifierCreator(identifierType) {
251
+ return this.#getIdentifierCreator(identifierType, identifierType, SerializableNumericIdentifierCreator);
248
252
  }
249
253
  /**
250
254
  * Get non-numeric identifier creator.
@@ -255,80 +259,81 @@ export class PrefixManager {
255
259
  * @returns
256
260
  * Identifier creator.
257
261
  */
258
- getNonNumericIdentifierCreator(identifierType) {
259
- return this.getIdentifierCreator(identifierType, identifierType, NonNumericIdentifierCreator);
262
+ #getNonNumericIdentifierCreator(identifierType) {
263
+ return this.#getIdentifierCreator(identifierType, identifierType, NonNumericIdentifierCreator);
260
264
  }
261
265
  /**
262
266
  * Get GTIN creator.
263
267
  */
264
268
  get gtinCreator() {
265
- return this.getIdentifierCreator(IdentifierTypes.GTIN, GTIN_BASE_TYPES[this.prefixType], GTINCreator);
269
+ return this.#getIdentifierCreator(IdentifierTypes.GTIN, GTIN_BASE_TYPES[this.prefixType], GTINCreator);
266
270
  }
267
271
  /**
268
272
  * Get GLN creator.
269
273
  */
270
274
  get glnCreator() {
271
- return this.getNonGTINNumericIdentifierCreator(IdentifierTypes.GLN);
275
+ return this.#getNonGTINNumericIdentifierCreator(IdentifierTypes.GLN);
272
276
  }
273
277
  /**
274
278
  * Get SSCC creator.
275
279
  */
276
280
  get ssccCreator() {
277
- return this.getNonGTINNumericIdentifierCreator(IdentifierTypes.SSCC);
281
+ return this.#getNonGTINNumericIdentifierCreator(IdentifierTypes.SSCC);
278
282
  }
279
283
  /**
280
284
  * Get GRAI creator.
281
285
  */
282
286
  get graiCreator() {
283
- return this.getSerializableNumericIdentifierCreator(IdentifierTypes.GRAI);
287
+ return this.#getSerializableNumericIdentifierCreator(IdentifierTypes.GRAI);
284
288
  }
285
289
  /**
286
290
  * Get GIAI creator.
287
291
  */
288
292
  get giaiCreator() {
289
- return this.getNonNumericIdentifierCreator(IdentifierTypes.GIAI);
293
+ return this.#getNonNumericIdentifierCreator(IdentifierTypes.GIAI);
290
294
  }
291
295
  /**
292
296
  * Get GSRN creator.
293
297
  */
294
298
  get gsrnCreator() {
295
- return this.getNonGTINNumericIdentifierCreator(IdentifierTypes.GSRN);
299
+ return this.#getNonGTINNumericIdentifierCreator(IdentifierTypes.GSRN);
296
300
  }
297
301
  /**
298
302
  * Get GDTI creator.
299
303
  */
300
304
  get gdtiCreator() {
301
- return this.getSerializableNumericIdentifierCreator(IdentifierTypes.GDTI);
305
+ return this.#getSerializableNumericIdentifierCreator(IdentifierTypes.GDTI);
302
306
  }
303
307
  /**
304
308
  * Get GINC creator.
305
309
  */
306
310
  get gincCreator() {
307
- return this.getNonNumericIdentifierCreator(IdentifierTypes.GINC);
311
+ return this.#getNonNumericIdentifierCreator(IdentifierTypes.GINC);
308
312
  }
309
313
  /**
310
314
  * Get GSIN creator.
311
315
  */
312
316
  get gsinCreator() {
313
- return this.getNonGTINNumericIdentifierCreator(IdentifierTypes.GSIN);
317
+ return this.#getNonGTINNumericIdentifierCreator(IdentifierTypes.GSIN);
314
318
  }
315
319
  /**
316
320
  * Get GCN creator.
317
321
  */
318
322
  get gcnCreator() {
319
- return this.getSerializableNumericIdentifierCreator(IdentifierTypes.GCN);
323
+ return this.#getSerializableNumericIdentifierCreator(IdentifierTypes.GCN);
320
324
  }
321
325
  /**
322
326
  * Get CPID creator.
323
327
  */
324
328
  get cpidCreator() {
325
- return this.getNonNumericIdentifierCreator(IdentifierTypes.CPID);
329
+ return this.#getNonNumericIdentifierCreator(IdentifierTypes.CPID);
326
330
  }
327
331
  /**
328
332
  * Get GMN creator.
329
333
  */
330
334
  get gmnCreator() {
331
- return this.getNonNumericIdentifierCreator(IdentifierTypes.GMN);
335
+ return this.#getNonNumericIdentifierCreator(IdentifierTypes.GMN);
332
336
  }
333
337
  }
338
+ _a = PrefixManager;
334
339
  //# sourceMappingURL=prefix-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prefix-manager.js","sourceRoot":"","sources":["../src/prefix-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAuB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAE3F,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAIlF,OAAO,EAAmB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AAGpG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,aAAa;IACtB;;OAEG;IACK,MAAM,CAAU,mBAAmB,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE/E;;;OAGG;IACK,MAAM,CAAU,qBAAqB,GAAoD;QAC7F,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,KAAK;QACV,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,KAAK;KACb,CAAC;IAEF;;OAEG;IACc,WAAW,CAAa;IAEzC;;OAEG;IACc,OAAO,CAAS;IAEjC;;OAEG;IACc,iBAAiB,CAAS;IAE3C;;OAEG;IACc,iBAAiB,CAAqB;IAEvD;;OAEG;IACc,WAAW,CAAqB;IAEjD;;OAEG;IACc,mBAAmB,CAAS;IAE7C;;OAEG;IACK,YAAY,GAAG,EAAE,CAAC;IAE1B;;OAEG;IACc,mBAAmB,GAAsC,EAAE,CAAC;IAE7E;;;;;;;;OAQG;IACH,YAAY,UAAsB,EAAE,MAAc;QAC9C,MAAM,wBAAwB,GAAG,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAE/E,IAAI,CAAC,WAAW,GAAG,wBAAwB,CAAC,UAAU,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,gBAAgB,CAAC;QACnE,IAAI,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,gBAAgB,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,wBAAwB,CAAC,UAAU,CAAC;QAEvD,uFAAuF;QACvF,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAE/D,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,iBAAoC;QACxD,IAAI,0BAA0B,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAChD,oFAAoF;YACpF,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACvH,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,IAAI,WAAW,CAAC,KAAsB;QAClC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAElC,IAAI,IAAI,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YACpC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;YAEhC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC5D,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,GAAG,CAAC,UAAsB,EAAE,MAAc;QAC7C,wFAAwF;QACxF,MAAM,wBAAwB,GAAG,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAE/E,IAAI,aAAa,GAAG,aAAa,CAAC,mBAAmB,CAAC,GAAG,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;QAErG,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9B,aAAa,GAAG,IAAI,aAAa,CAAC,wBAAwB,CAAC,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACxG,aAAa,CAAC,mBAAmB,CAAC,GAAG,CAAC,wBAAwB,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;QACpG,CAAC;QAED,OAAO,aAAa,CAAC;IACzB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,oBAAoB,CAAgE,cAA+B,EAAE,oBAA2C,EAAE,mBAAmJ;QACzT,IAAI,OAAO,GAA0D,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAE9G,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,UAAU,KAAK,WAAW,CAAC,UAAU,IAAI,cAAc,KAAK,eAAe,CAAC,IAAI,EAAE,CAAC;gBACxF,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,+CAA+C,EAAE;oBAC/E,cAAc;iBACjB,CAAC,CAAC,CAAC;YACR,CAAC;YAED,OAAO,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;YAE9D,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAE9B,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC;QACvD,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;;;;;;;OAQG;IACK,kCAAkC,CAAC,cAAwF;QAC/H,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,+BAA+B,CAAC,CAAC;IACtG,CAAC;IAED;;;;;;;;OAQG;IACK,uCAAuC,CAAC,cAAiD;QAC7F,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,oCAAoC,CAAC,CAAC;IAC3G,CAAC;IAED;;;;;;;;OAQG;IACK,8BAA8B,CAAC,cAAwC;QAC3E,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,EAAE,cAAc,EAAE,2BAA2B,CAAC,CAAC;IAClG,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC;IAC1G,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,uCAAuC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,8BAA8B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,uCAAuC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,8BAA8B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,kCAAkC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,uCAAuC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,8BAA8B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,8BAA8B,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACpE,CAAC"}
1
+ {"version":3,"file":"prefix-manager.js","sourceRoot":"","sources":["../src/prefix-manager.ts"],"names":[],"mappings":"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"}
@@ -1,43 +1,15 @@
1
1
  import { type TransformerInput, type TransformerOutput } from "@aidc-toolkit/utility";
2
- import { AbstractNumericIdentifierCreator } from "./abstract-numeric-identifier-creator.js";
3
- import type { PrefixProvider } from "./prefix-provider.js";
4
2
  import type { SerializableNumericIdentifierType } from "./serializable-numeric-identifier-type.js";
5
3
  import { SerializableNumericIdentifierValidator } from "./serializable-numeric-identifier-validator.js";
6
- declare const SerializableNumericIdentifierCreator_base: import("ts-mixer/dist/types/types.js").Class<any[], SerializableNumericIdentifierValidator & AbstractNumericIdentifierCreator<import("./numeric-identifier-descriptor.js").NumericIdentifierDescriptor>, typeof SerializableNumericIdentifierValidator & (abstract new () => AbstractNumericIdentifierCreator<import("./numeric-identifier-descriptor.js").NumericIdentifierDescriptor>)>;
4
+ declare const SerializableNumericIdentifierCreator_base: abstract new (prefixProvider: import("./prefix-provider.js").PrefixProvider, identifierType: SerializableNumericIdentifierType) => SerializableNumericIdentifierValidator & import("./non-gtin-numeric-identifier-creator.js").NonGTINNumericIdentifierCreator<SerializableNumericIdentifierType>;
7
5
  /**
8
6
  * Serializable numeric identifier creator.
9
7
  */
10
8
  export declare class SerializableNumericIdentifierCreator extends SerializableNumericIdentifierCreator_base {
11
- /**
12
- * Constructor. Typically called internally by a prefix manager but may be called by other code with another prefix
13
- * provider type.
14
- *
15
- * @param prefixProvider
16
- * Prefix provider.
17
- *
18
- * @param identifierType
19
- * Identifier type.
20
- */
21
- constructor(prefixProvider: PrefixProvider, identifierType: SerializableNumericIdentifierType);
22
- /**
23
- * Concatenate a validated base identifier with serial component(s).
24
- *
25
- * @template TTransformerInput
26
- * Transformer input type.
27
- *
28
- * @param baseIdentifier
29
- * Base identifier.
30
- *
31
- * @param serialComponentOrComponents
32
- * Serial component(s).
33
- *
34
- * @returns
35
- * Serialized identifier(s).
36
- */
37
- private concatenateValidated;
9
+ #private;
38
10
  /**
39
11
  * Create serialized identifier(s) with a reference based on a numeric value concatenated with serial component(s).
40
- * The value is converted to a reference of the appropriate length using a numeric creator.
12
+ * The value is converted to a reference of the appropriate length using {@linkcode NUMERIC_CREATOR}.
41
13
  *
42
14
  * @template TTransformerInput
43
15
  * Transformer input type.
@@ -1 +1 @@
1
- {"version":3,"file":"serializable-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/serializable-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAEnG,OAAO,EAAE,gCAAgC,EAAE,MAAM,0CAA0C,CAAC;AAC5F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AACnG,OAAO,EAAE,sCAAsC,EAAE,MAAM,gDAAgD,CAAC;;AAExG;;GAEG;AACH,qBAAa,oCAAqC,SAAQ,yCAA+E;IACrI;;;;;;;;;OASG;gBACS,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,iCAAiC;IAM7F;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,oBAAoB;IAgC5B;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAInM;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;CAKxL"}
1
+ {"version":3,"file":"serializable-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/serializable-numeric-identifier-creator.ts"],"names":[],"mappings":"AACA,OAAO,EAAgC,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAEpH,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,2CAA2C,CAAC;AACnG,OAAO,EAAE,sCAAsC,EAAE,MAAM,gDAAgD,CAAC;;AAExG;;GAEG;AACH,qBAAa,oCAAqC,SAAQ,yCAGjB;;IAgDrC;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAInM;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;CAKxL"}
@@ -1,25 +1,11 @@
1
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars -- Used in JSDoc.
1
2
  import { mapIterable } from "@aidc-toolkit/utility";
2
- import { Mixin } from "ts-mixer";
3
- import { AbstractNumericIdentifierCreator } from "./abstract-numeric-identifier-creator.js";
3
+ import { MixinAbstractNonGTINNumericIdentifierCreator } from "./abstract-non-gtin-numeric-identifier-creator.js";
4
4
  import { SerializableNumericIdentifierValidator } from "./serializable-numeric-identifier-validator.js";
5
5
  /**
6
6
  * Serializable numeric identifier creator.
7
7
  */
8
- export class SerializableNumericIdentifierCreator extends Mixin(SerializableNumericIdentifierValidator, AbstractNumericIdentifierCreator) {
9
- /**
10
- * Constructor. Typically called internally by a prefix manager but may be called by other code with another prefix
11
- * provider type.
12
- *
13
- * @param prefixProvider
14
- * Prefix provider.
15
- *
16
- * @param identifierType
17
- * Identifier type.
18
- */
19
- constructor(prefixProvider, identifierType) {
20
- super(identifierType);
21
- this.init(prefixProvider, prefixProvider.gs1CompanyPrefix);
22
- }
8
+ export class SerializableNumericIdentifierCreator extends MixinAbstractNonGTINNumericIdentifierCreator(SerializableNumericIdentifierValidator) {
23
9
  /**
24
10
  * Concatenate a validated base identifier with serial component(s).
25
11
  *
@@ -35,7 +21,7 @@ export class SerializableNumericIdentifierCreator extends Mixin(SerializableNume
35
21
  * @returns
36
22
  * Serialized identifier(s).
37
23
  */
38
- concatenateValidated(baseIdentifier, serialComponentOrComponents) {
24
+ #concatenateValidated(baseIdentifier, serialComponentOrComponents) {
39
25
  // TODO Refactor type when https://github.com/microsoft/TypeScript/pull/56941 released.
40
26
  let result;
41
27
  const serialComponentCreator = this.serialComponentCreator;
@@ -64,7 +50,7 @@ export class SerializableNumericIdentifierCreator extends Mixin(SerializableNume
64
50
  }
65
51
  /**
66
52
  * Create serialized identifier(s) with a reference based on a numeric value concatenated with serial component(s).
67
- * The value is converted to a reference of the appropriate length using a numeric creator.
53
+ * The value is converted to a reference of the appropriate length using {@linkcode NUMERIC_CREATOR}.
68
54
  *
69
55
  * @template TTransformerInput
70
56
  * Transformer input type.
@@ -82,7 +68,7 @@ export class SerializableNumericIdentifierCreator extends Mixin(SerializableNume
82
68
  * Serialized identifiers.
83
69
  */
84
70
  createSerialized(value, serialComponentOrComponents, sparse) {
85
- return this.concatenateValidated(this.create(value, sparse), serialComponentOrComponents);
71
+ return this.#concatenateValidated(this.create(value, sparse), serialComponentOrComponents);
86
72
  }
87
73
  /**
88
74
  * Concatenate a base identifier with serial component(s).
@@ -101,7 +87,7 @@ export class SerializableNumericIdentifierCreator extends Mixin(SerializableNume
101
87
  */
102
88
  concatenate(baseIdentifier, serialComponentOrComponents) {
103
89
  this.validate(baseIdentifier);
104
- return this.concatenateValidated(baseIdentifier, serialComponentOrComponents);
90
+ return this.#concatenateValidated(baseIdentifier, serialComponentOrComponents);
105
91
  }
106
92
  }
107
93
  //# sourceMappingURL=serializable-numeric-identifier-creator.js.map