@aidc-toolkit/gs1 0.9.11-beta → 0.9.12-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/index.cjs +11 -1
- package/dist/index.d.cts +7 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +11 -1
- package/package.json +9 -8
- package/src/idkey.ts +13 -2
- package/src/locale/en/locale-strings.ts +1 -0
- package/src/locale/fr/locale-strings.ts +1 -0
- package/test/idkey.test.ts +4 -1
- /package/{eslint.config.js → eslint.config.ts} +0 -0
package/dist/index.cjs
CHANGED
|
@@ -110,6 +110,7 @@ var localeStrings = {
|
|
|
110
110
|
gs1CompanyPrefix: "GS1 Company Prefix",
|
|
111
111
|
upcCompanyPrefix: "U.P.C. Company Prefix",
|
|
112
112
|
gs18Prefix: "GS1-8 Prefix",
|
|
113
|
+
invalidPrefixType: "Invalid prefix type",
|
|
113
114
|
gs1CompanyPrefixCantStartWith0: `GS1 Company Prefix can't start with "0"`,
|
|
114
115
|
gs1CompanyPrefixCantStartWith00000: `GS1 Company Prefix can't start with "00000"`,
|
|
115
116
|
gs1CompanyPrefixCantStartWith000000: `GS1 Company Prefix can't start with "000000"`,
|
|
@@ -148,6 +149,7 @@ var localeStrings2 = {
|
|
|
148
149
|
gs1CompanyPrefix: "Pr\xE9fixe de l'entreprise GS1",
|
|
149
150
|
upcCompanyPrefix: "Pr\xE9fixe de l'entreprise U.P.C.",
|
|
150
151
|
gs18Prefix: "Pr\xE9fixe GS1-8",
|
|
152
|
+
invalidPrefixType: "Type de pr\xE9fixe invalide",
|
|
151
153
|
gs1CompanyPrefixCantStartWith0: `Le pr\xE9fixe de l'entreprise GS1 ne peut pas commencer par "0"`,
|
|
152
154
|
gs1CompanyPrefixCantStartWith00000: `Le pr\xE9fixe de l'entreprise GS1 ne peut pas commencer par "00000"`,
|
|
153
155
|
gs1CompanyPrefixCantStartWith000000: `Le pr\xE9fixe de l'entreprise GS1 ne peut pas commencer par "000000"`,
|
|
@@ -1645,6 +1647,10 @@ var PrefixManager = class _PrefixManager {
|
|
|
1645
1647
|
* GS1-8 Prefix if prefix type is {@link PrefixType.GS18Prefix}.
|
|
1646
1648
|
*/
|
|
1647
1649
|
_gs18Prefix;
|
|
1650
|
+
/**
|
|
1651
|
+
* Default tweak factor.
|
|
1652
|
+
*/
|
|
1653
|
+
_defaultTweakFactor;
|
|
1648
1654
|
/**
|
|
1649
1655
|
* Tweak factor.
|
|
1650
1656
|
*/
|
|
@@ -1673,6 +1679,7 @@ var PrefixManager = class _PrefixManager {
|
|
|
1673
1679
|
this._gs18Prefix = gs1CompanyPrefix.substring(5);
|
|
1674
1680
|
this._prefix = this._gs18Prefix;
|
|
1675
1681
|
}
|
|
1682
|
+
this._defaultTweakFactor = BigInt(`1${this.gs1CompanyPrefix}`);
|
|
1676
1683
|
this.resetTweakFactor();
|
|
1677
1684
|
}
|
|
1678
1685
|
/**
|
|
@@ -1742,7 +1749,7 @@ var PrefixManager = class _PrefixManager {
|
|
|
1742
1749
|
* Reset the tweak factor to its default (numeric value of the GS1 Company Prefix preceded by '1').
|
|
1743
1750
|
*/
|
|
1744
1751
|
resetTweakFactor() {
|
|
1745
|
-
this.tweakFactor =
|
|
1752
|
+
this.tweakFactor = this._defaultTweakFactor;
|
|
1746
1753
|
}
|
|
1747
1754
|
/**
|
|
1748
1755
|
* Get a prefix manager.
|
|
@@ -1769,6 +1776,9 @@ var PrefixManager = class _PrefixManager {
|
|
|
1769
1776
|
case 2 /* GS18Prefix */:
|
|
1770
1777
|
gs1CompanyPrefix = "00000" + prefix;
|
|
1771
1778
|
break;
|
|
1779
|
+
// eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check -- Method may be called by unsafe means.
|
|
1780
|
+
default:
|
|
1781
|
+
throw new RangeError(i18nextGS1.t("Prefix.invalidPrefixType"));
|
|
1772
1782
|
}
|
|
1773
1783
|
let prefixManager = _PrefixManager.PREFIX_MANAGERS_MAP.get(gs1CompanyPrefix);
|
|
1774
1784
|
if (prefixManager === void 0) {
|
package/dist/index.d.cts
CHANGED
|
@@ -31,6 +31,7 @@ declare const localeStrings: {
|
|
|
31
31
|
readonly gs1CompanyPrefix: "GS1 Company Prefix";
|
|
32
32
|
readonly upcCompanyPrefix: "U.P.C. Company Prefix";
|
|
33
33
|
readonly gs18Prefix: "GS1-8 Prefix";
|
|
34
|
+
readonly invalidPrefixType: "Invalid prefix type";
|
|
34
35
|
readonly gs1CompanyPrefixCantStartWith0: "GS1 Company Prefix can't start with \"0\"";
|
|
35
36
|
readonly gs1CompanyPrefixCantStartWith00000: "GS1 Company Prefix can't start with \"00000\"";
|
|
36
37
|
readonly gs1CompanyPrefixCantStartWith000000: "GS1 Company Prefix can't start with \"000000\"";
|
|
@@ -78,6 +79,7 @@ declare const gs1Resources: {
|
|
|
78
79
|
readonly gs1CompanyPrefix: "GS1 Company Prefix";
|
|
79
80
|
readonly upcCompanyPrefix: "U.P.C. Company Prefix";
|
|
80
81
|
readonly gs18Prefix: "GS1-8 Prefix";
|
|
82
|
+
readonly invalidPrefixType: "Invalid prefix type";
|
|
81
83
|
readonly gs1CompanyPrefixCantStartWith0: "GS1 Company Prefix can't start with \"0\"";
|
|
82
84
|
readonly gs1CompanyPrefixCantStartWith00000: "GS1 Company Prefix can't start with \"00000\"";
|
|
83
85
|
readonly gs1CompanyPrefixCantStartWith000000: "GS1 Company Prefix can't start with \"000000\"";
|
|
@@ -116,6 +118,7 @@ declare const gs1Resources: {
|
|
|
116
118
|
readonly gs1CompanyPrefix: "Préfixe de l'entreprise GS1";
|
|
117
119
|
readonly upcCompanyPrefix: "Préfixe de l'entreprise U.P.C.";
|
|
118
120
|
readonly gs18Prefix: "Préfixe GS1-8";
|
|
121
|
+
readonly invalidPrefixType: "Type de préfixe invalide";
|
|
119
122
|
readonly gs1CompanyPrefixCantStartWith0: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"0\"";
|
|
120
123
|
readonly gs1CompanyPrefixCantStartWith00000: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"00000\"";
|
|
121
124
|
readonly gs1CompanyPrefixCantStartWith000000: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"000000\"";
|
|
@@ -1299,6 +1302,10 @@ declare class PrefixManager {
|
|
|
1299
1302
|
* GS1-8 Prefix if prefix type is {@link PrefixType.GS18Prefix}.
|
|
1300
1303
|
*/
|
|
1301
1304
|
private readonly _gs18Prefix;
|
|
1305
|
+
/**
|
|
1306
|
+
* Default tweak factor.
|
|
1307
|
+
*/
|
|
1308
|
+
private readonly _defaultTweakFactor;
|
|
1302
1309
|
/**
|
|
1303
1310
|
* Tweak factor.
|
|
1304
1311
|
*/
|
package/dist/index.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ declare const localeStrings: {
|
|
|
31
31
|
readonly gs1CompanyPrefix: "GS1 Company Prefix";
|
|
32
32
|
readonly upcCompanyPrefix: "U.P.C. Company Prefix";
|
|
33
33
|
readonly gs18Prefix: "GS1-8 Prefix";
|
|
34
|
+
readonly invalidPrefixType: "Invalid prefix type";
|
|
34
35
|
readonly gs1CompanyPrefixCantStartWith0: "GS1 Company Prefix can't start with \"0\"";
|
|
35
36
|
readonly gs1CompanyPrefixCantStartWith00000: "GS1 Company Prefix can't start with \"00000\"";
|
|
36
37
|
readonly gs1CompanyPrefixCantStartWith000000: "GS1 Company Prefix can't start with \"000000\"";
|
|
@@ -78,6 +79,7 @@ declare const gs1Resources: {
|
|
|
78
79
|
readonly gs1CompanyPrefix: "GS1 Company Prefix";
|
|
79
80
|
readonly upcCompanyPrefix: "U.P.C. Company Prefix";
|
|
80
81
|
readonly gs18Prefix: "GS1-8 Prefix";
|
|
82
|
+
readonly invalidPrefixType: "Invalid prefix type";
|
|
81
83
|
readonly gs1CompanyPrefixCantStartWith0: "GS1 Company Prefix can't start with \"0\"";
|
|
82
84
|
readonly gs1CompanyPrefixCantStartWith00000: "GS1 Company Prefix can't start with \"00000\"";
|
|
83
85
|
readonly gs1CompanyPrefixCantStartWith000000: "GS1 Company Prefix can't start with \"000000\"";
|
|
@@ -116,6 +118,7 @@ declare const gs1Resources: {
|
|
|
116
118
|
readonly gs1CompanyPrefix: "Préfixe de l'entreprise GS1";
|
|
117
119
|
readonly upcCompanyPrefix: "Préfixe de l'entreprise U.P.C.";
|
|
118
120
|
readonly gs18Prefix: "Préfixe GS1-8";
|
|
121
|
+
readonly invalidPrefixType: "Type de préfixe invalide";
|
|
119
122
|
readonly gs1CompanyPrefixCantStartWith0: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"0\"";
|
|
120
123
|
readonly gs1CompanyPrefixCantStartWith00000: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"00000\"";
|
|
121
124
|
readonly gs1CompanyPrefixCantStartWith000000: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"000000\"";
|
|
@@ -1299,6 +1302,10 @@ declare class PrefixManager {
|
|
|
1299
1302
|
* GS1-8 Prefix if prefix type is {@link PrefixType.GS18Prefix}.
|
|
1300
1303
|
*/
|
|
1301
1304
|
private readonly _gs18Prefix;
|
|
1305
|
+
/**
|
|
1306
|
+
* Default tweak factor.
|
|
1307
|
+
*/
|
|
1308
|
+
private readonly _defaultTweakFactor;
|
|
1302
1309
|
/**
|
|
1303
1310
|
* Tweak factor.
|
|
1304
1311
|
*/
|
package/dist/index.js
CHANGED
|
@@ -32,6 +32,7 @@ var localeStrings = {
|
|
|
32
32
|
gs1CompanyPrefix: "GS1 Company Prefix",
|
|
33
33
|
upcCompanyPrefix: "U.P.C. Company Prefix",
|
|
34
34
|
gs18Prefix: "GS1-8 Prefix",
|
|
35
|
+
invalidPrefixType: "Invalid prefix type",
|
|
35
36
|
gs1CompanyPrefixCantStartWith0: `GS1 Company Prefix can't start with "0"`,
|
|
36
37
|
gs1CompanyPrefixCantStartWith00000: `GS1 Company Prefix can't start with "00000"`,
|
|
37
38
|
gs1CompanyPrefixCantStartWith000000: `GS1 Company Prefix can't start with "000000"`,
|
|
@@ -70,6 +71,7 @@ var localeStrings2 = {
|
|
|
70
71
|
gs1CompanyPrefix: "Pr\xE9fixe de l'entreprise GS1",
|
|
71
72
|
upcCompanyPrefix: "Pr\xE9fixe de l'entreprise U.P.C.",
|
|
72
73
|
gs18Prefix: "Pr\xE9fixe GS1-8",
|
|
74
|
+
invalidPrefixType: "Type de pr\xE9fixe invalide",
|
|
73
75
|
gs1CompanyPrefixCantStartWith0: `Le pr\xE9fixe de l'entreprise GS1 ne peut pas commencer par "0"`,
|
|
74
76
|
gs1CompanyPrefixCantStartWith00000: `Le pr\xE9fixe de l'entreprise GS1 ne peut pas commencer par "00000"`,
|
|
75
77
|
gs1CompanyPrefixCantStartWith000000: `Le pr\xE9fixe de l'entreprise GS1 ne peut pas commencer par "000000"`,
|
|
@@ -1573,6 +1575,10 @@ var PrefixManager = class _PrefixManager {
|
|
|
1573
1575
|
* GS1-8 Prefix if prefix type is {@link PrefixType.GS18Prefix}.
|
|
1574
1576
|
*/
|
|
1575
1577
|
_gs18Prefix;
|
|
1578
|
+
/**
|
|
1579
|
+
* Default tweak factor.
|
|
1580
|
+
*/
|
|
1581
|
+
_defaultTweakFactor;
|
|
1576
1582
|
/**
|
|
1577
1583
|
* Tweak factor.
|
|
1578
1584
|
*/
|
|
@@ -1601,6 +1607,7 @@ var PrefixManager = class _PrefixManager {
|
|
|
1601
1607
|
this._gs18Prefix = gs1CompanyPrefix.substring(5);
|
|
1602
1608
|
this._prefix = this._gs18Prefix;
|
|
1603
1609
|
}
|
|
1610
|
+
this._defaultTweakFactor = BigInt(`1${this.gs1CompanyPrefix}`);
|
|
1604
1611
|
this.resetTweakFactor();
|
|
1605
1612
|
}
|
|
1606
1613
|
/**
|
|
@@ -1670,7 +1677,7 @@ var PrefixManager = class _PrefixManager {
|
|
|
1670
1677
|
* Reset the tweak factor to its default (numeric value of the GS1 Company Prefix preceded by '1').
|
|
1671
1678
|
*/
|
|
1672
1679
|
resetTweakFactor() {
|
|
1673
|
-
this.tweakFactor =
|
|
1680
|
+
this.tweakFactor = this._defaultTweakFactor;
|
|
1674
1681
|
}
|
|
1675
1682
|
/**
|
|
1676
1683
|
* Get a prefix manager.
|
|
@@ -1697,6 +1704,9 @@ var PrefixManager = class _PrefixManager {
|
|
|
1697
1704
|
case 2 /* GS18Prefix */:
|
|
1698
1705
|
gs1CompanyPrefix = "00000" + prefix;
|
|
1699
1706
|
break;
|
|
1707
|
+
// eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check -- Method may be called by unsafe means.
|
|
1708
|
+
default:
|
|
1709
|
+
throw new RangeError(i18nextGS1.t("Prefix.invalidPrefixType"));
|
|
1700
1710
|
}
|
|
1701
1711
|
let prefixManager = _PrefixManager.PREFIX_MANAGERS_MAP.get(gs1CompanyPrefix);
|
|
1702
1712
|
if (prefixManager === void 0) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aidc-toolkit/gs1",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.12-beta",
|
|
4
4
|
"description": "GS1 AIDC Toolkit",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -25,17 +25,18 @@
|
|
|
25
25
|
"test": "vitest run"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@aidc-toolkit/dev": "^0.9.
|
|
29
|
-
"eslint": "^9.
|
|
28
|
+
"@aidc-toolkit/dev": "^0.9.12-beta",
|
|
29
|
+
"eslint": "^9.20.1",
|
|
30
|
+
"jiti": "^2.4.2",
|
|
30
31
|
"ts-node": "^10.9.2",
|
|
31
|
-
"tsup": "^8.3.
|
|
32
|
+
"tsup": "^8.3.6",
|
|
32
33
|
"typescript": "^5.7.3",
|
|
33
|
-
"vitest": "^
|
|
34
|
+
"vitest": "^3.0.5"
|
|
34
35
|
},
|
|
35
36
|
"dependencies": {
|
|
36
|
-
"@aidc-toolkit/core": "^0.9.
|
|
37
|
-
"@aidc-toolkit/utility": "^0.9.
|
|
38
|
-
"i18next": "^24.2.
|
|
37
|
+
"@aidc-toolkit/core": "^0.9.12-beta",
|
|
38
|
+
"@aidc-toolkit/utility": "^0.9.12-beta",
|
|
39
|
+
"i18next": "^24.2.2",
|
|
39
40
|
"ts-mixer": "^6.0.4"
|
|
40
41
|
}
|
|
41
42
|
}
|
package/src/idkey.ts
CHANGED
|
@@ -1823,6 +1823,11 @@ export class PrefixManager {
|
|
|
1823
1823
|
*/
|
|
1824
1824
|
private readonly _gs18Prefix: string | undefined;
|
|
1825
1825
|
|
|
1826
|
+
/**
|
|
1827
|
+
* Default tweak factor.
|
|
1828
|
+
*/
|
|
1829
|
+
private readonly _defaultTweakFactor: bigint;
|
|
1830
|
+
|
|
1826
1831
|
/**
|
|
1827
1832
|
* Tweak factor.
|
|
1828
1833
|
*/
|
|
@@ -1856,6 +1861,9 @@ export class PrefixManager {
|
|
|
1856
1861
|
this._prefix = this._gs18Prefix;
|
|
1857
1862
|
}
|
|
1858
1863
|
|
|
1864
|
+
// Default tweak factor is the numeric value of the GS1 Company Prefix preceded by '1'.
|
|
1865
|
+
this._defaultTweakFactor = BigInt(`1${this.gs1CompanyPrefix}`);
|
|
1866
|
+
|
|
1859
1867
|
this.resetTweakFactor();
|
|
1860
1868
|
}
|
|
1861
1869
|
|
|
@@ -1939,8 +1947,7 @@ export class PrefixManager {
|
|
|
1939
1947
|
* Reset the tweak factor to its default (numeric value of the GS1 Company Prefix preceded by '1').
|
|
1940
1948
|
*/
|
|
1941
1949
|
resetTweakFactor(): void {
|
|
1942
|
-
|
|
1943
|
-
this.tweakFactor = BigInt("1" + this.gs1CompanyPrefix);
|
|
1950
|
+
this.tweakFactor = this._defaultTweakFactor;
|
|
1944
1951
|
}
|
|
1945
1952
|
|
|
1946
1953
|
/**
|
|
@@ -1972,6 +1979,10 @@ export class PrefixManager {
|
|
|
1972
1979
|
case PrefixType.GS18Prefix:
|
|
1973
1980
|
gs1CompanyPrefix = "00000" + prefix;
|
|
1974
1981
|
break;
|
|
1982
|
+
|
|
1983
|
+
// eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check -- Method may be called by unsafe means.
|
|
1984
|
+
default:
|
|
1985
|
+
throw new RangeError(i18nextGS1.t("Prefix.invalidPrefixType"));
|
|
1975
1986
|
}
|
|
1976
1987
|
|
|
1977
1988
|
let prefixManager = PrefixManager.PREFIX_MANAGERS_MAP.get(gs1CompanyPrefix);
|
|
@@ -26,6 +26,7 @@ export const localeStrings = {
|
|
|
26
26
|
gs1CompanyPrefix: "GS1 Company Prefix",
|
|
27
27
|
upcCompanyPrefix: "U.P.C. Company Prefix",
|
|
28
28
|
gs18Prefix: "GS1-8 Prefix",
|
|
29
|
+
invalidPrefixType: "Invalid prefix type",
|
|
29
30
|
gs1CompanyPrefixCantStartWith0: "GS1 Company Prefix can't start with \"0\"",
|
|
30
31
|
gs1CompanyPrefixCantStartWith00000: "GS1 Company Prefix can't start with \"00000\"",
|
|
31
32
|
gs1CompanyPrefixCantStartWith000000: "GS1 Company Prefix can't start with \"000000\"",
|
|
@@ -26,6 +26,7 @@ export const localeStrings = {
|
|
|
26
26
|
gs1CompanyPrefix: "Préfixe de l'entreprise GS1",
|
|
27
27
|
upcCompanyPrefix: "Préfixe de l'entreprise U.P.C.",
|
|
28
28
|
gs18Prefix: "Préfixe GS1-8",
|
|
29
|
+
invalidPrefixType: "Type de préfixe invalide",
|
|
29
30
|
gs1CompanyPrefixCantStartWith0: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"0\"",
|
|
30
31
|
gs1CompanyPrefixCantStartWith00000: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"00000\"",
|
|
31
32
|
gs1CompanyPrefixCantStartWith000000: "Le préfixe de l'entreprise GS1 ne peut pas commencer par \"000000\"",
|
package/test/idkey.test.ts
CHANGED
|
@@ -420,7 +420,10 @@ function testNumericIdentificationKeyCreator(creator: NumericIdentificationKeyCr
|
|
|
420
420
|
expect(hasValidCheckDigit(identificationKey)).toBe(true);
|
|
421
421
|
}
|
|
422
422
|
|
|
423
|
-
test("Straight",
|
|
423
|
+
test("Straight", {
|
|
424
|
+
// Test can take a long time.
|
|
425
|
+
timeout: 20 * 1000
|
|
426
|
+
}, () => {
|
|
424
427
|
expect(creator.referenceLength).toBe(referenceLength);
|
|
425
428
|
expect(creator.capacity).toBe(Number(CharacterSetCreator.powerOf10(referenceLength)));
|
|
426
429
|
|
|
File without changes
|