@owlmeans/i18n 0.1.16 → 0.1.17
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/agent-meta/manifest.json +2 -2
- package/agent-meta/skills/i18n/SKILL.md +1 -1
- package/build/consts.d.ts +1 -1
- package/build/consts.d.ts.map +1 -1
- package/build/helper.d.ts.map +1 -1
- package/build/utils/storage.d.ts.map +1 -1
- package/package.json +2 -2
- package/tests/context.d.ts +0 -3
- package/tests/context.d.ts.map +0 -1
- package/tests/context.js +0 -6
- package/tests/context.js.map +0 -1
- package/tests/registration.spec.d.ts +0 -2
- package/tests/registration.spec.d.ts.map +0 -1
- package/tests/registration.spec.js +0 -69
- package/tests/registration.spec.js.map +0 -1
package/agent-meta/manifest.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 2,
|
|
3
3
|
"package": "@owlmeans/i18n",
|
|
4
|
-
"version": "0.1.
|
|
5
|
-
"generatedAt": "2026-08-
|
|
4
|
+
"version": "0.1.17",
|
|
5
|
+
"generatedAt": "2026-08-15T13:01:19.925Z",
|
|
6
6
|
"canonicalRepo": "https://github.com/owlmeans/common",
|
|
7
7
|
"entries": [
|
|
8
8
|
{
|
package/build/consts.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const DEFAULT_NAMESPACE = "translation";
|
|
2
2
|
export declare const LIB_NAMESPACE = "lib";
|
|
3
3
|
export declare const DEFAULT_LNG = "en";
|
|
4
|
-
export declare const SUPPORTED_LNGS: readonly [
|
|
4
|
+
export declare const SUPPORTED_LNGS: readonly ['en', 'pl', 'ru', 'be', 'uk', 'es', 'de'];
|
|
5
5
|
export type SupportedLng = (typeof SUPPORTED_LNGS)[number];
|
|
6
6
|
export declare const MAX_PRIORITY: number;
|
|
7
7
|
export declare enum I18nTier {
|
package/build/consts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iBAAiB,gBAAgB,CAAA;AAE9C,eAAO,MAAM,aAAa,QAAQ,CAAA;AAElC,eAAO,MAAM,WAAW,OAAO,CAAA;AAE/B,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iBAAiB,gBAAgB,CAAA;AAE9C,eAAO,MAAM,aAAa,QAAQ,CAAA;AAElC,eAAO,MAAM,WAAW,OAAO,CAAA;AAE/B,eAAO,MAAM,cAAc,YAAI,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAA;AAEjF,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA;AAE1D,eAAO,MAAM,YAAY,QAA0B,CAAA;AAEnD,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,GAAG,QAAQ;CACZ;AAED,+BAA+B;AAC/B,eAAO,MAAM,SAAS,iBAAW,CAAA"}
|
package/build/helper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,YAAY,EAA8C,MAAM,YAAY,CAAA;AA6BxH,eAAO,MAAM,UAAU,EAAE,4BAGxB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,4BAGxB,CAAA;AAED,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,YAAY,EAA8C,MAAM,YAAY,CAAA;AA6BxH,eAAO,MAAM,UAAU,EAAE,4BAGxB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,4BAGxB,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAS,MAAM,YAAY,MAAM,OAAO,MAAM,KAAG,IAAI,GAAG,YAAY,EAoBhG,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/utils/storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,eAAO,MAAM,oBAAoB,EAAE,WAElC,CAAA;AAED,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/utils/storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,eAAO,MAAM,oBAAoB,EAAE,WAElC,CAAA;AAED,eAAO,MAAM,eAAe,QAAS,MAAM,YAAY,MAAM,OAAO,MAAM;;;CAgBzE,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@owlmeans/i18n",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@owlmeans/dep-config": "workspace:*",
|
|
33
33
|
"nodemon": "^3.1.14",
|
|
34
|
-
"typescript": "^
|
|
34
|
+
"typescript": "^7.0.2"
|
|
35
35
|
},
|
|
36
36
|
"publishConfig": {
|
|
37
37
|
"access": "public"
|
package/tests/context.d.ts
DELETED
package/tests/context.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["context.ts"],"names":[],"mappings":"AAEA,mDAAmD;AACnD,eAAO,MAAM,YAAY,YAExB,CAAA"}
|
package/tests/context.js
DELETED
package/tests/context.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAE3D,mDAAmD;AACnD,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,oBAAoB,CAAC,IAAI,GAAG,EAAE,CAAA;AAChC,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registration.spec.d.ts","sourceRoot":"","sources":["registration.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { describe, expect, test, beforeEach } from 'bun:test';
|
|
2
|
-
import { addI18nLib, addI18nApp, initI18nResource, DEFAULT_LNG, LIB_NAMESPACE, SUPPORTED_LNGS, I18nTier } from '@owlmeans/i18n';
|
|
3
|
-
import { resetStorage } from './context.js';
|
|
4
|
-
beforeEach(resetStorage);
|
|
5
|
-
describe('@owlmeans/i18n — registration', () => {
|
|
6
|
-
test('addI18nLib registers under lib namespace', () => {
|
|
7
|
-
addI18nLib('en', 'errors', { minLength: 'Too short' });
|
|
8
|
-
const result = initI18nResource('en', 'errors', LIB_NAMESPACE);
|
|
9
|
-
expect(result).not.toBeNull();
|
|
10
|
-
expect(result.length).toBe(1);
|
|
11
|
-
expect(result[0].tier).toBe(I18nTier.Library);
|
|
12
|
-
expect(result[0].ns).toBe(LIB_NAMESPACE);
|
|
13
|
-
expect(result[0].data).toMatchObject({ minLength: 'Too short' });
|
|
14
|
-
});
|
|
15
|
-
test('addI18nApp registers under resource-name namespace', () => {
|
|
16
|
-
addI18nApp('en', 'my-app', { title: 'My App' });
|
|
17
|
-
const result = initI18nResource('en', 'my-app', 'my-app');
|
|
18
|
-
expect(result).not.toBeNull();
|
|
19
|
-
expect(result[0].tier).toBe(I18nTier.App);
|
|
20
|
-
expect(result[0].ns).toBe('my-app');
|
|
21
|
-
});
|
|
22
|
-
test('addI18nApp accepts explicit ns override', () => {
|
|
23
|
-
addI18nApp('en', 'my-app', { title: 'My App' }, { ns: 'custom-ns' });
|
|
24
|
-
const result = initI18nResource('en', 'my-app', 'custom-ns');
|
|
25
|
-
expect(result).not.toBeNull();
|
|
26
|
-
expect(result[0].ns).toBe('custom-ns');
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
describe('@owlmeans/i18n — tier ordering (Library < App)', () => {
|
|
30
|
-
test('App tier entry sorts after Library tier', () => {
|
|
31
|
-
addI18nLib('en', 'labels', { submit: 'Submit (lib)' });
|
|
32
|
-
addI18nApp('en', 'labels', { submit: 'Submit (app)' }, { ns: LIB_NAMESPACE });
|
|
33
|
-
const result = initI18nResource('en', 'labels', LIB_NAMESPACE);
|
|
34
|
-
expect(result).not.toBeNull();
|
|
35
|
-
expect(result.length).toBe(2);
|
|
36
|
-
expect(result[0].tier).toBe(I18nTier.Library);
|
|
37
|
-
expect(result[1].tier).toBe(I18nTier.App);
|
|
38
|
-
});
|
|
39
|
-
test('in-tier priority tiebreak: lower priority number sorts first', () => {
|
|
40
|
-
addI18nLib('en', 'buttons', { ok: 'OK (low)' }, { priority: 10 });
|
|
41
|
-
addI18nLib('en', 'buttons', { ok: 'OK (high)' }, { priority: 1 });
|
|
42
|
-
const result = initI18nResource('en', 'buttons', LIB_NAMESPACE);
|
|
43
|
-
expect(result[0].priority).toBe(1);
|
|
44
|
-
expect(result[1].priority).toBe(10);
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
describe('@owlmeans/i18n — multi-language', () => {
|
|
48
|
-
test('each language is stored independently', () => {
|
|
49
|
-
addI18nLib('en', 'errors', { minLength: 'Too short' });
|
|
50
|
-
addI18nLib('pl', 'errors', { minLength: 'Zbyt krótkie' });
|
|
51
|
-
const en = initI18nResource('en', 'errors', LIB_NAMESPACE);
|
|
52
|
-
const pl = initI18nResource('pl', 'errors', LIB_NAMESPACE);
|
|
53
|
-
expect(en[0].data.minLength).toBe('Too short');
|
|
54
|
-
expect(pl[0].data.minLength).toBe('Zbyt krótkie');
|
|
55
|
-
});
|
|
56
|
-
test('initI18nResource returns null on second call for the same language (already initialized)', () => {
|
|
57
|
-
addI18nLib('en', 'errors', { minLength: 'Too short' });
|
|
58
|
-
initI18nResource('en', 'errors', LIB_NAMESPACE);
|
|
59
|
-
const second = initI18nResource('en', 'errors', LIB_NAMESPACE);
|
|
60
|
-
expect(second).toBeNull();
|
|
61
|
-
});
|
|
62
|
-
test('SUPPORTED_LNGS contains the seven canonical languages', () => {
|
|
63
|
-
expect(SUPPORTED_LNGS).toEqual(['en', 'pl', 'ru', 'be', 'uk', 'es', 'de']);
|
|
64
|
-
});
|
|
65
|
-
test('DEFAULT_LNG is English', () => {
|
|
66
|
-
expect(DEFAULT_LNG).toBe('en');
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
//# sourceMappingURL=registration.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registration.spec.js","sourceRoot":"","sources":["registration.spec.ts"],"names":[],"mappings":"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"}
|