@aidc-toolkit/gs1 1.0.43 → 1.0.44-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.
- package/dist/abstract-identifier-creator.d.ts +41 -0
- package/dist/abstract-identifier-creator.d.ts.map +1 -0
- package/dist/abstract-identifier-creator.js +73 -0
- package/dist/abstract-identifier-creator.js.map +1 -0
- package/dist/abstract-non-gtin-numeric-identifier-creator.d.ts +36 -0
- package/dist/abstract-non-gtin-numeric-identifier-creator.d.ts.map +1 -0
- package/dist/abstract-non-gtin-numeric-identifier-creator.js +37 -0
- package/dist/abstract-non-gtin-numeric-identifier-creator.js.map +1 -0
- package/dist/abstract-numeric-identifier-creator.d.ts +34 -0
- package/dist/abstract-numeric-identifier-creator.d.ts.map +1 -0
- package/dist/abstract-numeric-identifier-creator.js +154 -0
- package/dist/abstract-numeric-identifier-creator.js.map +1 -0
- package/dist/character-set.d.ts +27 -0
- package/dist/character-set.d.ts.map +1 -0
- package/dist/character-set.js +83 -0
- package/dist/character-set.js.map +1 -0
- package/dist/check.d.ts +81 -0
- package/dist/check.d.ts.map +1 -0
- package/dist/check.js +218 -0
- package/dist/check.js.map +1 -0
- package/dist/content-character-set-creators.d.ts +4 -0
- package/dist/content-character-set-creators.d.ts.map +1 -0
- package/dist/content-character-set-creators.js +9 -0
- package/dist/content-character-set-creators.js.map +1 -0
- package/dist/content-character-set.d.ts +26 -0
- package/dist/content-character-set.d.ts.map +1 -0
- package/dist/content-character-set.js +18 -0
- package/dist/content-character-set.js.map +1 -0
- package/dist/gcp-length-cache.d.ts +89 -0
- package/dist/gcp-length-cache.d.ts.map +1 -0
- package/dist/gcp-length-cache.js +240 -0
- package/dist/gcp-length-cache.js.map +1 -0
- package/dist/gcp-length-data.d.ts +108 -0
- package/dist/gcp-length-data.d.ts.map +1 -0
- package/dist/gcp-length-data.js +53 -0
- package/dist/gcp-length-data.js.map +1 -0
- package/dist/gcp-length.d.ts +97 -0
- package/dist/gcp-length.d.ts.map +1 -0
- package/dist/gcp-length.js +368 -0
- package/dist/gcp-length.js.map +1 -0
- package/dist/gtin-creator.d.ts +47 -0
- package/dist/gtin-creator.d.ts.map +1 -0
- package/dist/gtin-creator.js +64 -0
- package/dist/gtin-creator.js.map +1 -0
- package/dist/gtin-descriptor.d.ts +22 -0
- package/dist/gtin-descriptor.d.ts.map +1 -0
- package/dist/gtin-descriptor.js +2 -0
- package/dist/gtin-descriptor.js.map +1 -0
- package/dist/gtin-length.d.ts +64 -0
- package/dist/gtin-length.d.ts.map +1 -0
- package/dist/gtin-length.js +36 -0
- package/dist/gtin-length.js.map +1 -0
- package/dist/gtin-type.d.ts +26 -0
- package/dist/gtin-type.d.ts.map +1 -0
- package/dist/gtin-type.js +7 -0
- package/dist/gtin-type.js.map +1 -0
- package/dist/gtin-validator.d.ts +132 -0
- package/dist/gtin-validator.d.ts.map +1 -0
- package/dist/gtin-validator.js +349 -0
- package/dist/gtin-validator.js.map +1 -0
- package/dist/identifier-creator.d.ts +31 -0
- package/dist/identifier-creator.d.ts.map +1 -0
- package/dist/identifier-creator.js +2 -0
- package/dist/identifier-creator.js.map +1 -0
- package/dist/identifier-creators.d.ts +118 -0
- package/dist/identifier-creators.d.ts.map +1 -0
- package/dist/identifier-creators.js +92 -0
- package/dist/identifier-creators.js.map +1 -0
- package/dist/identifier-descriptor.d.ts +27 -0
- package/dist/identifier-descriptor.d.ts.map +1 -0
- package/dist/identifier-descriptor.js +2 -0
- package/dist/identifier-descriptor.js.map +1 -0
- package/dist/identifier-descriptors.d.ts +106 -0
- package/dist/identifier-descriptors.d.ts.map +1 -0
- package/dist/identifier-descriptors.js +262 -0
- package/dist/identifier-descriptors.js.map +1 -0
- package/dist/identifier-extension.d.ts +82 -0
- package/dist/identifier-extension.d.ts.map +1 -0
- package/dist/identifier-extension.js +79 -0
- package/dist/identifier-extension.js.map +1 -0
- package/dist/identifier-type.d.ts +62 -0
- package/dist/identifier-type.d.ts.map +1 -0
- package/dist/identifier-type.js +54 -0
- package/dist/identifier-type.js.map +1 -0
- package/dist/identifier-validator.d.ts +85 -0
- package/dist/identifier-validator.d.ts.map +1 -0
- package/dist/identifier-validator.js +107 -0
- package/dist/identifier-validator.js.map +1 -0
- package/dist/identifier-validators.d.ts +131 -0
- package/dist/identifier-validators.d.ts.map +1 -0
- package/dist/identifier-validators.js +167 -0
- package/dist/identifier-validators.js.map +1 -0
- package/dist/index.d.ts +63 -2205
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +36 -3
- package/dist/index.js.map +1 -0
- package/dist/leader-type.d.ts +26 -0
- package/dist/leader-type.d.ts.map +1 -0
- package/dist/leader-type.js +18 -0
- package/dist/leader-type.js.map +1 -0
- package/dist/locale/en/locale-resources.d.ts +48 -0
- package/dist/locale/en/locale-resources.d.ts.map +1 -0
- package/dist/locale/en/locale-resources.js +47 -0
- package/dist/locale/en/locale-resources.js.map +1 -0
- package/dist/locale/fr/locale-resources.d.ts +48 -0
- package/dist/locale/fr/locale-resources.d.ts.map +1 -0
- package/dist/locale/fr/locale-resources.js +47 -0
- package/dist/locale/fr/locale-resources.js.map +1 -0
- package/dist/locale/i18n.d.ts +27 -0
- package/dist/locale/i18n.d.ts.map +1 -0
- package/dist/locale/i18n.js +35 -0
- package/dist/locale/i18n.js.map +1 -0
- package/dist/non-gtin-numeric-identifier-creator.d.ts +12 -0
- package/dist/non-gtin-numeric-identifier-creator.d.ts.map +1 -0
- package/dist/non-gtin-numeric-identifier-creator.js +2 -0
- package/dist/non-gtin-numeric-identifier-creator.js.map +1 -0
- package/dist/non-gtin-numeric-identifier-descriptor.d.ts +22 -0
- package/dist/non-gtin-numeric-identifier-descriptor.d.ts.map +1 -0
- package/dist/non-gtin-numeric-identifier-descriptor.js +2 -0
- package/dist/non-gtin-numeric-identifier-descriptor.js.map +1 -0
- package/dist/non-gtin-numeric-identifier-type.d.ts +26 -0
- package/dist/non-gtin-numeric-identifier-type.d.ts.map +1 -0
- package/dist/non-gtin-numeric-identifier-type.js +8 -0
- package/dist/non-gtin-numeric-identifier-type.js.map +1 -0
- package/dist/non-gtin-numeric-identifier-validator.d.ts +12 -0
- package/dist/non-gtin-numeric-identifier-validator.d.ts.map +1 -0
- package/dist/non-gtin-numeric-identifier-validator.js +10 -0
- package/dist/non-gtin-numeric-identifier-validator.js.map +1 -0
- package/dist/non-numeric-identifier-creator.d.ts +40 -0
- package/dist/non-numeric-identifier-creator.d.ts.map +1 -0
- package/dist/non-numeric-identifier-creator.js +82 -0
- package/dist/non-numeric-identifier-creator.js.map +1 -0
- package/dist/non-numeric-identifier-descriptor.d.ts +26 -0
- package/dist/non-numeric-identifier-descriptor.d.ts.map +1 -0
- package/dist/non-numeric-identifier-descriptor.js +2 -0
- package/dist/non-numeric-identifier-descriptor.js.map +1 -0
- package/dist/non-numeric-identifier-type.d.ts +26 -0
- package/dist/non-numeric-identifier-type.d.ts.map +1 -0
- package/dist/non-numeric-identifier-type.js +8 -0
- package/dist/non-numeric-identifier-type.js.map +1 -0
- package/dist/non-numeric-identifier-validator.d.ts +41 -0
- package/dist/non-numeric-identifier-validator.d.ts.map +1 -0
- package/dist/non-numeric-identifier-validator.js +69 -0
- package/dist/non-numeric-identifier-validator.js.map +1 -0
- package/dist/non-serializable-numeric-identifier-creator.d.ts +10 -0
- package/dist/non-serializable-numeric-identifier-creator.d.ts.map +1 -0
- package/dist/non-serializable-numeric-identifier-creator.js +8 -0
- package/dist/non-serializable-numeric-identifier-creator.js.map +1 -0
- package/dist/non-serializable-numeric-identifier-descriptor.d.ts +12 -0
- package/dist/non-serializable-numeric-identifier-descriptor.d.ts.map +1 -0
- package/dist/non-serializable-numeric-identifier-descriptor.js +2 -0
- package/dist/non-serializable-numeric-identifier-descriptor.js.map +1 -0
- package/dist/non-serializable-numeric-identifier-type.d.ts +26 -0
- package/dist/non-serializable-numeric-identifier-type.d.ts.map +1 -0
- package/dist/non-serializable-numeric-identifier-type.js +7 -0
- package/dist/non-serializable-numeric-identifier-type.js.map +1 -0
- package/dist/non-serializable-numeric-identifier-validator.d.ts +16 -0
- package/dist/non-serializable-numeric-identifier-validator.d.ts.map +1 -0
- package/dist/non-serializable-numeric-identifier-validator.js +17 -0
- package/dist/non-serializable-numeric-identifier-validator.js.map +1 -0
- package/dist/numeric-identifier-creator.d.ts +53 -0
- package/dist/numeric-identifier-creator.d.ts.map +1 -0
- package/dist/numeric-identifier-creator.js +2 -0
- package/dist/numeric-identifier-creator.js.map +1 -0
- package/dist/numeric-identifier-descriptor.d.ts +22 -0
- package/dist/numeric-identifier-descriptor.d.ts.map +1 -0
- package/dist/numeric-identifier-descriptor.js +2 -0
- package/dist/numeric-identifier-descriptor.js.map +1 -0
- package/dist/numeric-identifier-type.d.ts +26 -0
- package/dist/numeric-identifier-type.d.ts.map +1 -0
- package/dist/numeric-identifier-type.js +7 -0
- package/dist/numeric-identifier-type.js.map +1 -0
- package/dist/numeric-identifier-validator.d.ts +38 -0
- package/dist/numeric-identifier-validator.d.ts.map +1 -0
- package/dist/numeric-identifier-validator.js +61 -0
- package/dist/numeric-identifier-validator.js.map +1 -0
- package/dist/prefix-manager.d.ts +151 -0
- package/dist/prefix-manager.d.ts.map +1 -0
- package/dist/prefix-manager.js +297 -0
- package/dist/prefix-manager.js.map +1 -0
- package/dist/prefix-provider.d.ts +27 -0
- package/dist/prefix-provider.d.ts.map +1 -0
- package/dist/prefix-provider.js +2 -0
- package/dist/prefix-provider.js.map +1 -0
- package/dist/prefix-type.d.ts +26 -0
- package/dist/prefix-type.d.ts.map +1 -0
- package/dist/prefix-type.js +18 -0
- package/dist/prefix-type.js.map +1 -0
- package/dist/prefix-validator.d.ts +71 -0
- package/dist/prefix-validator.d.ts.map +1 -0
- package/dist/prefix-validator.js +204 -0
- package/dist/prefix-validator.js.map +1 -0
- package/dist/serializable-numeric-identifier-creator.d.ts +48 -0
- package/dist/serializable-numeric-identifier-creator.d.ts.map +1 -0
- package/dist/serializable-numeric-identifier-creator.js +93 -0
- package/dist/serializable-numeric-identifier-creator.js.map +1 -0
- package/dist/serializable-numeric-identifier-descriptor.d.ts +26 -0
- package/dist/serializable-numeric-identifier-descriptor.d.ts.map +1 -0
- package/dist/serializable-numeric-identifier-descriptor.js +2 -0
- package/dist/serializable-numeric-identifier-descriptor.js.map +1 -0
- package/dist/serializable-numeric-identifier-type.d.ts +26 -0
- package/dist/serializable-numeric-identifier-type.d.ts.map +1 -0
- package/dist/serializable-numeric-identifier-type.js +8 -0
- package/dist/serializable-numeric-identifier-type.js.map +1 -0
- package/dist/serializable-numeric-identifier-validator.d.ts +67 -0
- package/dist/serializable-numeric-identifier-validator.d.ts.map +1 -0
- package/dist/serializable-numeric-identifier-validator.js +97 -0
- package/dist/serializable-numeric-identifier-validator.js.map +1 -0
- package/dist/variable-measure.d.ts +68 -0
- package/dist/variable-measure.d.ts.map +1 -0
- package/dist/variable-measure.js +210 -0
- package/dist/variable-measure.js.map +1 -0
- package/dist/verified-by-gs1.d.ts +22 -0
- package/dist/verified-by-gs1.d.ts.map +1 -0
- package/dist/verified-by-gs1.js +46 -0
- package/dist/verified-by-gs1.js.map +1 -0
- package/package.json +4 -4
- package/src/gcp-length-cache.ts +7 -2
- package/tsconfig-src.tsbuildinfo +1 -1
- package/dist/index.cjs +0 -19
- package/dist/index.d.cts +0 -2205
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-creator.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { LeaderType, LeaderTypes } from "./leader-type.js";
|
|
2
|
+
import type { NonGTINNumericIdentifierType } from "./non-gtin-numeric-identifier-type.js";
|
|
3
|
+
import type { NumericIdentifierDescriptor } from "./numeric-identifier-descriptor.js";
|
|
4
|
+
import type { PrefixTypes } from "./prefix-type.js";
|
|
5
|
+
/**
|
|
6
|
+
* Non-GTIN numeric identifier descriptor.
|
|
7
|
+
*/
|
|
8
|
+
export interface NonGTINNumericIdentifierDescriptor extends NumericIdentifierDescriptor {
|
|
9
|
+
/**
|
|
10
|
+
* @inheritDoc
|
|
11
|
+
*/
|
|
12
|
+
readonly identifierType: NonGTINNumericIdentifierType;
|
|
13
|
+
/**
|
|
14
|
+
* @inheritDoc
|
|
15
|
+
*/
|
|
16
|
+
readonly prefixType: typeof PrefixTypes.GS1CompanyPrefix;
|
|
17
|
+
/**
|
|
18
|
+
* @inheritDoc
|
|
19
|
+
*/
|
|
20
|
+
readonly leaderType: Exclude<LeaderType, typeof LeaderTypes.IndicatorDigit>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=non-gtin-numeric-identifier-descriptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-descriptor.d.ts","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,kCAAmC,SAAQ,2BAA2B;IACnF;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,4BAA4B,CAAC;IAEtD;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,WAAW,CAAC,gBAAgB,CAAC;IAEzD;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,WAAW,CAAC,cAAc,CAAC,CAAC;CAC/E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-descriptor.js","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-descriptor.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Non-GTIN numeric identifier types.
|
|
3
|
+
*/
|
|
4
|
+
export declare const NonGTINNumericIdentifierTypes: Omit<Pick<{
|
|
5
|
+
readonly GTIN: "GTIN";
|
|
6
|
+
readonly GLN: "GLN";
|
|
7
|
+
readonly SSCC: "SSCC";
|
|
8
|
+
readonly GRAI: "GRAI";
|
|
9
|
+
readonly GIAI: "GIAI";
|
|
10
|
+
readonly GSRN: "GSRN";
|
|
11
|
+
readonly GDTI: "GDTI";
|
|
12
|
+
readonly GINC: "GINC";
|
|
13
|
+
readonly GSIN: "GSIN";
|
|
14
|
+
readonly GCN: "GCN";
|
|
15
|
+
readonly CPID: "CPID";
|
|
16
|
+
readonly GMN: "GMN";
|
|
17
|
+
}, "GTIN" | "GLN" | "SSCC" | "GRAI" | "GSRN" | "GDTI" | "GSIN" | "GCN">, "GTIN">;
|
|
18
|
+
/**
|
|
19
|
+
* Non-GTIN numeric identifier type key.
|
|
20
|
+
*/
|
|
21
|
+
export type NonGTINNumericIdentifierTypeKey = keyof typeof NonGTINNumericIdentifierTypes;
|
|
22
|
+
/**
|
|
23
|
+
* Non-GTIN numeric identifier type.
|
|
24
|
+
*/
|
|
25
|
+
export type NonGTINNumericIdentifierType = typeof NonGTINNumericIdentifierTypes[NonGTINNumericIdentifierTypeKey];
|
|
26
|
+
//# sourceMappingURL=non-gtin-numeric-identifier-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-type.d.ts","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-type.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;gFAA6C,CAAC;AAExF;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG,MAAM,OAAO,6BAA6B,CAAC;AAEzF;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,OAAO,6BAA6B,CAAC,+BAA+B,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { exclude } from "@aidc-toolkit/core";
|
|
2
|
+
import { GTINTypes } from "./gtin-type.js";
|
|
3
|
+
import { NumericIdentifierTypes } from "./numeric-identifier-type.js";
|
|
4
|
+
/**
|
|
5
|
+
* Non-GTIN numeric identifier types.
|
|
6
|
+
*/
|
|
7
|
+
export const NonGTINNumericIdentifierTypes = exclude(NumericIdentifierTypes, GTINTypes);
|
|
8
|
+
//# sourceMappingURL=non-gtin-numeric-identifier-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-type.js","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,OAAO,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { NonGTINNumericIdentifierDescriptor } from "./non-gtin-numeric-identifier-descriptor.js";
|
|
2
|
+
import type { NonGTINNumericIdentifierType } from "./non-gtin-numeric-identifier-type.js";
|
|
3
|
+
import { NumericIdentifierValidator } from "./numeric-identifier-validator.js";
|
|
4
|
+
/**
|
|
5
|
+
* Non-GTIN numeric identifier validator.
|
|
6
|
+
*
|
|
7
|
+
* @template TNonGTINNumericIdentifierType
|
|
8
|
+
* Non-GTIN numeric identifier type type.
|
|
9
|
+
*/
|
|
10
|
+
export declare abstract class NonGTINNumericIdentifierValidator<TNonGTINNumericIdentifierType extends NonGTINNumericIdentifierType = NonGTINNumericIdentifierType> extends NumericIdentifierValidator<TNonGTINNumericIdentifierType> implements NonGTINNumericIdentifierDescriptor {
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=non-gtin-numeric-identifier-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-validator.d.ts","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,6CAA6C,CAAC;AACtG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE/E;;;;;GAKG;AACH,8BAAsB,iCAAiC,CAAC,6BAA6B,SAAS,4BAA4B,GAAG,4BAA4B,CAAE,SAAQ,0BAA0B,CAAC,6BAA6B,CAAE,YAAW,kCAAkC;CACzQ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { NumericIdentifierValidator } from "./numeric-identifier-validator.js";
|
|
2
|
+
/**
|
|
3
|
+
* Non-GTIN numeric identifier validator.
|
|
4
|
+
*
|
|
5
|
+
* @template TNonGTINNumericIdentifierType
|
|
6
|
+
* Non-GTIN numeric identifier type type.
|
|
7
|
+
*/
|
|
8
|
+
export class NonGTINNumericIdentifierValidator extends NumericIdentifierValidator {
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=non-gtin-numeric-identifier-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-gtin-numeric-identifier-validator.js","sourceRoot":"","sources":["../src/non-gtin-numeric-identifier-validator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE/E;;;;;GAKG;AACH,MAAM,OAAgB,iCAAqI,SAAQ,0BAAyD;CAC3N"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type CharacterSetValidation, type TransformerInput, type TransformerOutput } from "@aidc-toolkit/utility";
|
|
2
|
+
import type { NonNumericIdentifierType } from "./non-numeric-identifier-type.js";
|
|
3
|
+
import { type NonNumericIdentifierValidation, NonNumericIdentifierValidator } from "./non-numeric-identifier-validator.js";
|
|
4
|
+
import type { PrefixProvider } from "./prefix-provider.js";
|
|
5
|
+
declare const NonNumericIdentifierCreator_base: import("./abstract-identifier-creator.js").IdentifierCreatorConstructor<NonNumericIdentifierType, NonNumericIdentifierValidation, NonNumericIdentifierValidator>;
|
|
6
|
+
/**
|
|
7
|
+
* Non-numeric identifier creator.
|
|
8
|
+
*/
|
|
9
|
+
export declare class NonNumericIdentifierCreator extends NonNumericIdentifierCreator_base {
|
|
10
|
+
#private;
|
|
11
|
+
/**
|
|
12
|
+
* Constructor.
|
|
13
|
+
*
|
|
14
|
+
* @param prefixProvider
|
|
15
|
+
* Prefix provider.
|
|
16
|
+
*
|
|
17
|
+
* @param identifierType
|
|
18
|
+
* Identifier type.
|
|
19
|
+
*/
|
|
20
|
+
constructor(prefixProvider: PrefixProvider, identifierType: NonNumericIdentifierType);
|
|
21
|
+
/**
|
|
22
|
+
* Get the reference validation parameters.
|
|
23
|
+
*/
|
|
24
|
+
protected get referenceValidation(): CharacterSetValidation;
|
|
25
|
+
/**
|
|
26
|
+
* Create identifier(s) with reference(s).
|
|
27
|
+
*
|
|
28
|
+
* @template TTransformerInput
|
|
29
|
+
* Transformer input type.
|
|
30
|
+
*
|
|
31
|
+
* @param referenceOrReferences
|
|
32
|
+
* Reference(s).
|
|
33
|
+
*
|
|
34
|
+
* @returns
|
|
35
|
+
* Identifier(s).
|
|
36
|
+
*/
|
|
37
|
+
create<TTransformerInput extends TransformerInput<string>>(referenceOrReferences: TTransformerInput): TransformerOutput<TTransformerInput, string>;
|
|
38
|
+
}
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=non-numeric-identifier-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/non-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,sBAAsB,EAE3B,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACzB,MAAM,uBAAuB,CAAC;AAK/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,EACH,KAAK,8BAA8B,EACnC,6BAA6B,EAChC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;;AAE3D;;GAEG;AACH,qBAAa,2BAA4B,SAAQ,gCAGjB;;IAM5B;;;;;;;;OAQG;gBACS,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,wBAAwB;IAWpF;;OAEG;IACH,SAAS,KAAK,mBAAmB,IAAI,sBAAsB,CAE1D;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,iBAAiB,SAAS,gBAAgB,CAAC,MAAM,CAAC,EAAE,qBAAqB,EAAE,iBAAiB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,CAAC;CAmCrJ"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { mapIterable } from "@aidc-toolkit/utility";
|
|
2
|
+
import { MixinAbstractIdentifierCreator } from "./abstract-identifier-creator.js";
|
|
3
|
+
import { checkCharacterPair } from "./check.js";
|
|
4
|
+
import { IdentifierDescriptors } from "./identifier-descriptors.js";
|
|
5
|
+
import { i18nextGS1 } from "./locale/i18n.js";
|
|
6
|
+
import { NonNumericIdentifierValidator } from "./non-numeric-identifier-validator.js";
|
|
7
|
+
/**
|
|
8
|
+
* Non-numeric identifier creator.
|
|
9
|
+
*/
|
|
10
|
+
export class NonNumericIdentifierCreator extends MixinAbstractIdentifierCreator(NonNumericIdentifierValidator) {
|
|
11
|
+
/**
|
|
12
|
+
* Reference validation parameters.
|
|
13
|
+
*/
|
|
14
|
+
#referenceValidation;
|
|
15
|
+
/**
|
|
16
|
+
* Constructor.
|
|
17
|
+
*
|
|
18
|
+
* @param prefixProvider
|
|
19
|
+
* Prefix provider.
|
|
20
|
+
*
|
|
21
|
+
* @param identifierType
|
|
22
|
+
* Identifier type.
|
|
23
|
+
*/
|
|
24
|
+
constructor(prefixProvider, identifierType) {
|
|
25
|
+
super(prefixProvider, prefixProvider.gs1CompanyPrefix, 2 * Number(IdentifierDescriptors[identifierType].requiresCheckCharacterPair), identifierType);
|
|
26
|
+
this.#referenceValidation = {
|
|
27
|
+
minimumLength: 1,
|
|
28
|
+
// Maximum reference length has to account for prefix and check character pair.
|
|
29
|
+
maximumLength: this.referenceLength,
|
|
30
|
+
component: () => i18nextGS1.t("Identifier.reference")
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get the reference validation parameters.
|
|
35
|
+
*/
|
|
36
|
+
get referenceValidation() {
|
|
37
|
+
return this.#referenceValidation;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Create identifier(s) with reference(s).
|
|
41
|
+
*
|
|
42
|
+
* @template TTransformerInput
|
|
43
|
+
* Transformer input type.
|
|
44
|
+
*
|
|
45
|
+
* @param referenceOrReferences
|
|
46
|
+
* Reference(s).
|
|
47
|
+
*
|
|
48
|
+
* @returns
|
|
49
|
+
* Identifier(s).
|
|
50
|
+
*/
|
|
51
|
+
create(referenceOrReferences) {
|
|
52
|
+
// TODO Refactor type when https://github.com/microsoft/TypeScript/pull/56941 released.
|
|
53
|
+
let result;
|
|
54
|
+
const referenceCreator = this.referenceCreator;
|
|
55
|
+
const referenceValidation = this.referenceValidation;
|
|
56
|
+
const prefix = this.prefix;
|
|
57
|
+
const requiresCheckCharacterPair = this.requiresCheckCharacterPair;
|
|
58
|
+
/**
|
|
59
|
+
* Validate a reference and create an identifier.
|
|
60
|
+
*
|
|
61
|
+
* @param reference
|
|
62
|
+
* Reference.
|
|
63
|
+
*
|
|
64
|
+
* @returns
|
|
65
|
+
* Identifier.
|
|
66
|
+
*/
|
|
67
|
+
function validateAndCreate(reference) {
|
|
68
|
+
referenceCreator.validate(reference, referenceValidation);
|
|
69
|
+
const partialIdentifier = prefix + reference;
|
|
70
|
+
return requiresCheckCharacterPair ? partialIdentifier + checkCharacterPair(partialIdentifier) : partialIdentifier;
|
|
71
|
+
}
|
|
72
|
+
if (typeof referenceOrReferences !== "object") {
|
|
73
|
+
result = validateAndCreate(referenceOrReferences);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
result = mapIterable(referenceOrReferences, validateAndCreate);
|
|
77
|
+
}
|
|
78
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- Type determination is handled above.
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=non-numeric-identifier-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/non-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,WAAW,EAGd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAEH,6BAA6B,EAChC,MAAM,uCAAuC,CAAC;AAG/C;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,8BAA8B,CAG7E,6BAA6B,CAAC;IAC5B;;OAEG;IACM,oBAAoB,CAAyB;IAEtD;;;;;;;;OAQG;IACH,YAAY,cAA8B,EAAE,cAAwC;QAChF,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC,gBAAgB,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC,0BAA0B,CAAC,EAAE,cAAc,CAAC,CAAC;QAErJ,IAAI,CAAC,oBAAoB,GAAG;YACxB,aAAa,EAAE,CAAC;YAChB,+EAA+E;YAC/E,aAAa,EAAE,IAAI,CAAC,eAAe;YACnC,SAAS,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC;SACxD,CAAC;IACN,CAAC;IAED;;OAEG;IACH,IAAc,mBAAmB;QAC7B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAqD,qBAAwC;QAC/F,uFAAuF;QACvF,IAAI,MAAiC,CAAC;QAEtC,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC/C,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,CAAC;QAEnE;;;;;;;;WAQG;QACH,SAAS,iBAAiB,CAAC,SAAiB;YACxC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;YAE1D,MAAM,iBAAiB,GAAG,MAAM,GAAG,SAAS,CAAC;YAE7C,OAAO,0BAA0B,CAAC,CAAC,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACtH,CAAC;QAED,IAAI,OAAO,qBAAqB,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,GAAG,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,WAAW,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;QACnE,CAAC;QAED,+GAA+G;QAC/G,OAAO,MAAsD,CAAC;IAClE,CAAC;CACJ"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ContentCharacterSet, ContentCharacterSets } from "./content-character-set.js";
|
|
2
|
+
import type { IdentifierDescriptor } from "./identifier-descriptor.js";
|
|
3
|
+
import type { NonNumericIdentifierType } from "./non-numeric-identifier-type.js";
|
|
4
|
+
import type { PrefixTypes } from "./prefix-type.js";
|
|
5
|
+
/**
|
|
6
|
+
* Non-numeric identifier descriptor.
|
|
7
|
+
*/
|
|
8
|
+
export interface NonNumericIdentifierDescriptor extends IdentifierDescriptor {
|
|
9
|
+
/**
|
|
10
|
+
* @inheritDoc
|
|
11
|
+
*/
|
|
12
|
+
readonly identifierType: NonNumericIdentifierType;
|
|
13
|
+
/**
|
|
14
|
+
* @inheritDoc
|
|
15
|
+
*/
|
|
16
|
+
readonly prefixType: typeof PrefixTypes.GS1CompanyPrefix;
|
|
17
|
+
/**
|
|
18
|
+
* @inheritDoc
|
|
19
|
+
*/
|
|
20
|
+
readonly referenceCharacterSet: Exclude<ContentCharacterSet, typeof ContentCharacterSets.Numeric>;
|
|
21
|
+
/**
|
|
22
|
+
* True if identifier requires a check character pair.
|
|
23
|
+
*/
|
|
24
|
+
readonly requiresCheckCharacterPair: boolean;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=non-numeric-identifier-descriptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-descriptor.d.ts","sourceRoot":"","sources":["../src/non-numeric-identifier-descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,8BAA+B,SAAQ,oBAAoB;IACxE;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,wBAAwB,CAAC;IAElD;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,WAAW,CAAC,gBAAgB,CAAC;IAEzD;;OAEG;IACH,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,mBAAmB,EAAE,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAElG;;OAEG;IACH,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAChD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-descriptor.js","sourceRoot":"","sources":["../src/non-numeric-identifier-descriptor.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Non-numeric identifier types.
|
|
3
|
+
*/
|
|
4
|
+
export declare const NonNumericIdentifierTypes: Omit<{
|
|
5
|
+
readonly GTIN: "GTIN";
|
|
6
|
+
readonly GLN: "GLN";
|
|
7
|
+
readonly SSCC: "SSCC";
|
|
8
|
+
readonly GRAI: "GRAI";
|
|
9
|
+
readonly GIAI: "GIAI";
|
|
10
|
+
readonly GSRN: "GSRN";
|
|
11
|
+
readonly GDTI: "GDTI";
|
|
12
|
+
readonly GINC: "GINC";
|
|
13
|
+
readonly GSIN: "GSIN";
|
|
14
|
+
readonly GCN: "GCN";
|
|
15
|
+
readonly CPID: "CPID";
|
|
16
|
+
readonly GMN: "GMN";
|
|
17
|
+
}, "GTIN" | "GLN" | "SSCC" | "GRAI" | "GSRN" | "GDTI" | "GSIN" | "GCN">;
|
|
18
|
+
/**
|
|
19
|
+
* Non-numeric identifier type key.
|
|
20
|
+
*/
|
|
21
|
+
export type NonNumericIdentifierTypeKey = keyof typeof NonNumericIdentifierTypes;
|
|
22
|
+
/**
|
|
23
|
+
* Non-numeric identifier type.
|
|
24
|
+
*/
|
|
25
|
+
export type NonNumericIdentifierType = typeof NonNumericIdentifierTypes[NonNumericIdentifierTypeKey];
|
|
26
|
+
//# sourceMappingURL=non-numeric-identifier-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-type.d.ts","sourceRoot":"","sources":["../src/non-numeric-identifier-type.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;uEAAmD,CAAC;AAE1F;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,MAAM,OAAO,yBAAyB,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,OAAO,yBAAyB,CAAC,2BAA2B,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { exclude } from "@aidc-toolkit/core";
|
|
2
|
+
import { IdentifierTypes } from "./identifier-type.js";
|
|
3
|
+
import { NumericIdentifierTypes } from "./numeric-identifier-type.js";
|
|
4
|
+
/**
|
|
5
|
+
* Non-numeric identifier types.
|
|
6
|
+
*/
|
|
7
|
+
export const NonNumericIdentifierTypes = exclude(IdentifierTypes, NumericIdentifierTypes);
|
|
8
|
+
//# sourceMappingURL=non-numeric-identifier-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-type.js","sourceRoot":"","sources":["../src/non-numeric-identifier-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,OAAO,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Exclusions } from "@aidc-toolkit/utility";
|
|
2
|
+
import { type IdentifierValidation, IdentifierValidator } from "./identifier-validator.js";
|
|
3
|
+
import type { NonNumericIdentifierDescriptor } from "./non-numeric-identifier-descriptor.js";
|
|
4
|
+
import type { NonNumericIdentifierType } from "./non-numeric-identifier-type.js";
|
|
5
|
+
/**
|
|
6
|
+
* Non-numeric identifier validation parameters.
|
|
7
|
+
*/
|
|
8
|
+
export interface NonNumericIdentifierValidation extends IdentifierValidation {
|
|
9
|
+
/**
|
|
10
|
+
* Exclusion support for reference. Prevents non-numeric identifier from being mistaken for numeric identifier.
|
|
11
|
+
*/
|
|
12
|
+
exclusion?: typeof Exclusions.None | typeof Exclusions.AllNumeric | undefined;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Non-numeric identifier validator.
|
|
16
|
+
*/
|
|
17
|
+
export declare class NonNumericIdentifierValidator extends IdentifierValidator<NonNumericIdentifierType, NonNumericIdentifierValidation> implements NonNumericIdentifierDescriptor {
|
|
18
|
+
#private;
|
|
19
|
+
/**
|
|
20
|
+
* Constructor.
|
|
21
|
+
*
|
|
22
|
+
* @param identifierType
|
|
23
|
+
* Identifier type.
|
|
24
|
+
*/
|
|
25
|
+
constructor(identifierType: NonNumericIdentifierType);
|
|
26
|
+
/**
|
|
27
|
+
* Determine if the identifier requires a check character pair.
|
|
28
|
+
*/
|
|
29
|
+
get requiresCheckCharacterPair(): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Validate a non-numeric identifier and throw an error if validation fails.
|
|
32
|
+
*
|
|
33
|
+
* @param identifier
|
|
34
|
+
* Identifier.
|
|
35
|
+
*
|
|
36
|
+
* @param validation
|
|
37
|
+
* Validation parameters.
|
|
38
|
+
*/
|
|
39
|
+
validate(identifier: string, validation?: NonNumericIdentifierValidation): void;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=non-numeric-identifier-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-validator.d.ts","sourceRoot":"","sources":["../src/non-numeric-identifier-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,uBAAuB,CAAC;AAGpE,OAAO,EAAE,KAAK,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAE3F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAC7F,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,8BAA+B,SAAQ,oBAAoB;IACxE;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,UAAU,CAAC,IAAI,GAAG,OAAO,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC;CACjF;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,mBAAmB,CAAC,wBAAwB,EAAE,8BAA8B,CAAE,YAAW,8BAA8B;;IAkBtK;;;;;OAKG;gBACS,cAAc,EAAE,wBAAwB;IAQpD;;OAEG;IACH,IAAI,0BAA0B,IAAI,OAAO,CAExC;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,8BAA8B,GAAG,IAAI;CAmBlF"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Exclusions, RegExpValidator } from "@aidc-toolkit/utility";
|
|
2
|
+
import { hasValidCheckCharacterPair } from "./check.js";
|
|
3
|
+
import { IdentifierDescriptors } from "./identifier-descriptors.js";
|
|
4
|
+
import { IdentifierValidator } from "./identifier-validator.js";
|
|
5
|
+
import { i18nextGS1 } from "./locale/i18n.js";
|
|
6
|
+
/**
|
|
7
|
+
* Non-numeric identifier validator.
|
|
8
|
+
*/
|
|
9
|
+
export class NonNumericIdentifierValidator extends IdentifierValidator {
|
|
10
|
+
/**
|
|
11
|
+
* Validator to ensure that an identifier (minus check character pair) is not all numeric.
|
|
12
|
+
*/
|
|
13
|
+
static #NOT_ALL_NUMERIC_VALIDATOR = new class extends RegExpValidator {
|
|
14
|
+
/**
|
|
15
|
+
* @inheritDoc
|
|
16
|
+
*/
|
|
17
|
+
createErrorMessage(_s) {
|
|
18
|
+
return i18nextGS1.t("Identifier.referenceCantBeAllNumeric");
|
|
19
|
+
}
|
|
20
|
+
}(/\D/u);
|
|
21
|
+
/**
|
|
22
|
+
* True if the identifier requires a check character pair.
|
|
23
|
+
*/
|
|
24
|
+
#requiresCheckCharacterPair;
|
|
25
|
+
/**
|
|
26
|
+
* Constructor.
|
|
27
|
+
*
|
|
28
|
+
* @param identifierType
|
|
29
|
+
* Identifier type.
|
|
30
|
+
*/
|
|
31
|
+
constructor(identifierType) {
|
|
32
|
+
const identifierDescriptor = IdentifierDescriptors[identifierType];
|
|
33
|
+
super(identifierDescriptor);
|
|
34
|
+
this.#requiresCheckCharacterPair = identifierDescriptor.requiresCheckCharacterPair;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Determine if the identifier requires a check character pair.
|
|
38
|
+
*/
|
|
39
|
+
get requiresCheckCharacterPair() {
|
|
40
|
+
return this.#requiresCheckCharacterPair;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Validate a non-numeric identifier and throw an error if validation fails.
|
|
44
|
+
*
|
|
45
|
+
* @param identifier
|
|
46
|
+
* Identifier.
|
|
47
|
+
*
|
|
48
|
+
* @param validation
|
|
49
|
+
* Validation parameters.
|
|
50
|
+
*/
|
|
51
|
+
validate(identifier, validation) {
|
|
52
|
+
const partialIdentifier = this.requiresCheckCharacterPair ? identifier.substring(0, identifier.length - 2) : identifier;
|
|
53
|
+
super.validatePrefix(partialIdentifier);
|
|
54
|
+
if (!this.requiresCheckCharacterPair) {
|
|
55
|
+
this.referenceCreator.validate(identifier, {
|
|
56
|
+
maximumLength: this.length
|
|
57
|
+
});
|
|
58
|
+
// Validating the check character pair will also validate the characters.
|
|
59
|
+
}
|
|
60
|
+
else if (!hasValidCheckCharacterPair(this.padIdentifier(identifier))) {
|
|
61
|
+
throw new RangeError(i18nextGS1.t("Identifier.invalidCheckCharacterPair"));
|
|
62
|
+
}
|
|
63
|
+
// Check for all-numeric identifier (minus check character pair) if excluded.
|
|
64
|
+
if (validation?.exclusion === Exclusions.AllNumeric) {
|
|
65
|
+
NonNumericIdentifierValidator.#NOT_ALL_NUMERIC_VALIDATOR.validate(partialIdentifier);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=non-numeric-identifier-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-numeric-identifier-validator.js","sourceRoot":"","sources":["../src/non-numeric-identifier-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAA6B,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAc9C;;GAEG;AACH,MAAM,OAAO,6BAA8B,SAAQ,mBAA6E;IAC5H;;OAEG;IACH,MAAM,CAAU,0BAA0B,GAAG,IAAI,KAAM,SAAQ,eAAe;QAC1E;;WAEG;QACgB,kBAAkB,CAAC,EAAU;YAC5C,OAAO,UAAU,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC;QAChE,CAAC;KACJ,CAAC,KAAK,CAAC,CAAC;IAET;;OAEG;IACM,2BAA2B,CAAU;IAE9C;;;;;OAKG;IACH,YAAY,cAAwC;QAChD,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAEnE,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAE5B,IAAI,CAAC,2BAA2B,GAAG,oBAAoB,CAAC,0BAA0B,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,IAAI,0BAA0B;QAC1B,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC5C,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,UAAkB,EAAE,UAA2C;QACpE,MAAM,iBAAiB,GAAG,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QAExH,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAExC,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACnC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE;gBACvC,aAAa,EAAE,IAAI,CAAC,MAAM;aAC7B,CAAC,CAAC;YACH,yEAAyE;QAC7E,CAAC;aAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YACrE,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC/E,CAAC;QAED,6EAA6E;QAC7E,IAAI,UAAU,EAAE,SAAS,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC;YAClD,6BAA6B,CAAC,0BAA0B,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QACzF,CAAC;IACL,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { NonSerializableNumericIdentifierType } from "./non-serializable-numeric-identifier-type.js";
|
|
2
|
+
import { NonSerializableNumericIdentifierValidator } from "./non-serializable-numeric-identifier-validator.js";
|
|
3
|
+
declare const NonSerializableNumericIdentifierCreator_base: abstract new (...args: [prefixProvider: import("./prefix-provider.js").PrefixProvider, identifierType: "GLN"] | [prefixProvider: import("./prefix-provider.js").PrefixProvider, identifierType: "SSCC"] | [prefixProvider: import("./prefix-provider.js").PrefixProvider, identifierType: "GSRN"] | [prefixProvider: import("./prefix-provider.js").PrefixProvider, identifierType: "GSIN"]) => NonSerializableNumericIdentifierValidator & import("./non-gtin-numeric-identifier-creator.js").NonGTINNumericIdentifierCreator<NonSerializableNumericIdentifierType>;
|
|
4
|
+
/**
|
|
5
|
+
* Non-serializable numeric identifier creator.
|
|
6
|
+
*/
|
|
7
|
+
export declare class NonSerializableNumericIdentifierCreator extends NonSerializableNumericIdentifierCreator_base {
|
|
8
|
+
}
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-creator.d.ts","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,+CAA+C,CAAC;AAC1G,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;;AAE/G;;GAEG;AACH,qBAAa,uCAAwC,SAAQ,4CAEjB;CAC3C"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { MixinAbstractNonGTINNumericIdentifierCreator } from "./abstract-non-gtin-numeric-identifier-creator.js";
|
|
2
|
+
import { NonSerializableNumericIdentifierValidator } from "./non-serializable-numeric-identifier-validator.js";
|
|
3
|
+
/**
|
|
4
|
+
* Non-serializable numeric identifier creator.
|
|
5
|
+
*/
|
|
6
|
+
export class NonSerializableNumericIdentifierCreator extends MixinAbstractNonGTINNumericIdentifierCreator(NonSerializableNumericIdentifierValidator) {
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-creator.js","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4CAA4C,EAAE,MAAM,mDAAmD,CAAC;AAEjH,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAE/G;;GAEG;AACH,MAAM,OAAO,uCAAwC,SAAQ,4CAA4C,CAEvG,yCAAyC,CAAC;CAC3C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { LeaderTypes } from "./leader-type.js";
|
|
2
|
+
import type { NonGTINNumericIdentifierDescriptor } from "./non-gtin-numeric-identifier-descriptor.js";
|
|
3
|
+
/**
|
|
4
|
+
* Non-serializable numeric identifier descriptor.
|
|
5
|
+
*/
|
|
6
|
+
export interface NonSerializableNumericIdentifierDescriptor extends NonGTINNumericIdentifierDescriptor {
|
|
7
|
+
/**
|
|
8
|
+
* @inheritDoc
|
|
9
|
+
*/
|
|
10
|
+
readonly leaderType: typeof LeaderTypes.None | typeof LeaderTypes.ExtensionDigit;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-descriptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-descriptor.d.ts","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,6CAA6C,CAAC;AAEtG;;GAEG;AACH,MAAM,WAAW,0CAA2C,SAAQ,kCAAkC;IAClG;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,WAAW,CAAC,IAAI,GAAG,OAAO,WAAW,CAAC,cAAc,CAAC;CACpF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-descriptor.js","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-descriptor.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Non-serializable numeric identifier types.
|
|
3
|
+
*/
|
|
4
|
+
export declare const NonSerializableNumericIdentifierTypes: Pick<Omit<Pick<{
|
|
5
|
+
readonly GTIN: "GTIN";
|
|
6
|
+
readonly GLN: "GLN";
|
|
7
|
+
readonly SSCC: "SSCC";
|
|
8
|
+
readonly GRAI: "GRAI";
|
|
9
|
+
readonly GIAI: "GIAI";
|
|
10
|
+
readonly GSRN: "GSRN";
|
|
11
|
+
readonly GDTI: "GDTI";
|
|
12
|
+
readonly GINC: "GINC";
|
|
13
|
+
readonly GSIN: "GSIN";
|
|
14
|
+
readonly GCN: "GCN";
|
|
15
|
+
readonly CPID: "CPID";
|
|
16
|
+
readonly GMN: "GMN";
|
|
17
|
+
}, "GTIN" | "GLN" | "SSCC" | "GRAI" | "GSRN" | "GDTI" | "GSIN" | "GCN">, "GTIN">, "GLN" | "SSCC" | "GSRN" | "GSIN">;
|
|
18
|
+
/**
|
|
19
|
+
* Non-serializable numeric identifier type key.
|
|
20
|
+
*/
|
|
21
|
+
export type NonSerializableNumericIdentifierTypeKey = keyof typeof NonSerializableNumericIdentifierTypes;
|
|
22
|
+
/**
|
|
23
|
+
* Non-serializable numeric identifier type.
|
|
24
|
+
*/
|
|
25
|
+
export type NonSerializableNumericIdentifierType = typeof NonSerializableNumericIdentifierTypes[NonSerializableNumericIdentifierTypeKey];
|
|
26
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-type.d.ts","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-type.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;mHAKjD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG,MAAM,OAAO,qCAAqC,CAAC;AAEzG;;GAEG;AACH,MAAM,MAAM,oCAAoC,GAAG,OAAO,qCAAqC,CAAC,uCAAuC,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { pick } from "@aidc-toolkit/core";
|
|
2
|
+
import { NonGTINNumericIdentifierTypes } from "./non-gtin-numeric-identifier-type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Non-serializable numeric identifier types.
|
|
5
|
+
*/
|
|
6
|
+
export const NonSerializableNumericIdentifierTypes = pick(NonGTINNumericIdentifierTypes, NonGTINNumericIdentifierTypes.GLN, NonGTINNumericIdentifierTypes.SSCC, NonGTINNumericIdentifierTypes.GSRN, NonGTINNumericIdentifierTypes.GSIN);
|
|
7
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-type.js","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AAEtF;;GAEG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAG,IAAI,CAAC,6BAA6B,EACnF,6BAA6B,CAAC,GAAG,EACjC,6BAA6B,CAAC,IAAI,EAClC,6BAA6B,CAAC,IAAI,EAClC,6BAA6B,CAAC,IAAI,CACrC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { NonGTINNumericIdentifierValidator } from "./non-gtin-numeric-identifier-validator.js";
|
|
2
|
+
import type { NonSerializableNumericIdentifierDescriptor } from "./non-serializable-numeric-identifier-descriptor.js";
|
|
3
|
+
import type { NonSerializableNumericIdentifierType } from "./non-serializable-numeric-identifier-type.js";
|
|
4
|
+
/**
|
|
5
|
+
* Non-serializable numeric identifier validator.
|
|
6
|
+
*/
|
|
7
|
+
export declare class NonSerializableNumericIdentifierValidator extends NonGTINNumericIdentifierValidator<NonSerializableNumericIdentifierType> implements NonSerializableNumericIdentifierDescriptor {
|
|
8
|
+
/**
|
|
9
|
+
* Constructor.
|
|
10
|
+
*
|
|
11
|
+
* @param identifierType
|
|
12
|
+
* Identifier type.
|
|
13
|
+
*/
|
|
14
|
+
constructor(identifierType: NonSerializableNumericIdentifierType);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-validator.d.ts","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAC/F,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,qDAAqD,CAAC;AACtH,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,+CAA+C,CAAC;AAE1G;;GAEG;AACH,qBAAa,yCAA0C,SAAQ,iCAAiC,CAAC,oCAAoC,CAAE,YAAW,0CAA0C;IACxL;;;;;OAKG;gBACS,cAAc,EAAE,oCAAoC;CAGnE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IdentifierDescriptors } from "./identifier-descriptors.js";
|
|
2
|
+
import { NonGTINNumericIdentifierValidator } from "./non-gtin-numeric-identifier-validator.js";
|
|
3
|
+
/**
|
|
4
|
+
* Non-serializable numeric identifier validator.
|
|
5
|
+
*/
|
|
6
|
+
export class NonSerializableNumericIdentifierValidator extends NonGTINNumericIdentifierValidator {
|
|
7
|
+
/**
|
|
8
|
+
* Constructor.
|
|
9
|
+
*
|
|
10
|
+
* @param identifierType
|
|
11
|
+
* Identifier type.
|
|
12
|
+
*/
|
|
13
|
+
constructor(identifierType) {
|
|
14
|
+
super(IdentifierDescriptors[identifierType]);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=non-serializable-numeric-identifier-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"non-serializable-numeric-identifier-validator.js","sourceRoot":"","sources":["../src/non-serializable-numeric-identifier-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,iCAAiC,EAAE,MAAM,4CAA4C,CAAC;AAI/F;;GAEG;AACH,MAAM,OAAO,yCAA0C,SAAQ,iCAAuE;IAClI;;;;;OAKG;IACH,YAAY,cAAoD;QAC5D,KAAK,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC,CAAC;IACjD,CAAC;CACJ"}
|