@miloun/cosmo 0.1.0
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/LICENSE +21 -0
- package/README.md +73 -0
- package/changelog.md +31 -0
- package/dist/cosmo.d.ts +381 -0
- package/dist/cosmo.d.ts.map +1 -0
- package/dist/cosmo.js +747 -0
- package/dist/cosmo.js.map +1 -0
- package/dist/errors.d.ts +24 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +33 -0
- package/dist/errors.js.map +1 -0
- package/dist/helper.d.ts +7 -0
- package/dist/helper.d.ts.map +1 -0
- package/dist/helper.js +9 -0
- package/dist/helper.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/message.d.ts +6 -0
- package/dist/message.d.ts.map +1 -0
- package/dist/message.js +193 -0
- package/dist/message.js.map +1 -0
- package/package.json +69 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cosmo.js","sourceRoot":"","sources":["../src/cosmo.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error for everything Cosmo throws. Catch this to handle any
|
|
3
|
+
* library error; catch a subclass to distinguish the cause.
|
|
4
|
+
*/
|
|
5
|
+
export declare class CosmoError extends Error {
|
|
6
|
+
constructor(message: string, options?: ErrorOptions);
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* A caller passed an invalid argument — a typo'd option key, an unknown currency
|
|
10
|
+
* code, an unsupported width/unit, a bad enum value, … This signals a bug to fix
|
|
11
|
+
* in the calling code, not a condition to catch and recover from.
|
|
12
|
+
*/
|
|
13
|
+
export declare class InvalidArgumentError extends CosmoError {
|
|
14
|
+
constructor(message: string, options?: ErrorOptions);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The runtime lacks an `Intl` capability the operation needs (e.g.
|
|
18
|
+
* `Intl.DurationFormat` on Node < 22). This is environmental — reasonable to
|
|
19
|
+
* catch and degrade gracefully.
|
|
20
|
+
*/
|
|
21
|
+
export declare class UnsupportedError extends CosmoError {
|
|
22
|
+
constructor(message: string, options?: ErrorOptions);
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,UAAW,SAAQ,KAAK;gBACvB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAIpD;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAIpD;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAIpD"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error for everything Cosmo throws. Catch this to handle any
|
|
3
|
+
* library error; catch a subclass to distinguish the cause.
|
|
4
|
+
*/
|
|
5
|
+
export class CosmoError extends Error {
|
|
6
|
+
constructor(message, options) {
|
|
7
|
+
super(message, options);
|
|
8
|
+
this.name = "CosmoError";
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A caller passed an invalid argument — a typo'd option key, an unknown currency
|
|
13
|
+
* code, an unsupported width/unit, a bad enum value, … This signals a bug to fix
|
|
14
|
+
* in the calling code, not a condition to catch and recover from.
|
|
15
|
+
*/
|
|
16
|
+
export class InvalidArgumentError extends CosmoError {
|
|
17
|
+
constructor(message, options) {
|
|
18
|
+
super(message, options);
|
|
19
|
+
this.name = "InvalidArgumentError";
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The runtime lacks an `Intl` capability the operation needs (e.g.
|
|
24
|
+
* `Intl.DurationFormat` on Node < 22). This is environmental — reasonable to
|
|
25
|
+
* catch and degrade gracefully.
|
|
26
|
+
*/
|
|
27
|
+
export class UnsupportedError extends CosmoError {
|
|
28
|
+
constructor(message, options) {
|
|
29
|
+
super(message, options);
|
|
30
|
+
this.name = "UnsupportedError";
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;IACnC,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC3B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,oBAAqB,SAAQ,UAAU;IAClD,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,gBAAiB,SAAQ,UAAU;IAC9C,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF"}
|
package/dist/helper.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Cosmo, type Modifiers } from "./cosmo.js";
|
|
2
|
+
/**
|
|
3
|
+
* Convenience factory for constructing a {@link Cosmo} instance.
|
|
4
|
+
* @example cosmo("en").percentage(0.2) // "20%"
|
|
5
|
+
*/
|
|
6
|
+
export declare function cosmo(locale?: string | null, modifiers?: Modifiers): Cosmo;
|
|
7
|
+
//# sourceMappingURL=helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,wBAAgB,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,GAAE,SAAc,GAAG,KAAK,CAE9E"}
|
package/dist/helper.js
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Cosmo } from "./cosmo.js";
|
|
2
|
+
/**
|
|
3
|
+
* Convenience factory for constructing a {@link Cosmo} instance.
|
|
4
|
+
* @example cosmo("en").percentage(0.2) // "20%"
|
|
5
|
+
*/
|
|
6
|
+
export function cosmo(locale, modifiers = {}) {
|
|
7
|
+
return new Cosmo(locale, modifiers);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,MAAM,UAAU,KAAK,CAAC,MAAsB,EAAE,YAAuB,EAAE;IACrE,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACtC,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { Cosmo } from "./cosmo.js";
|
|
2
|
+
export type { Modifiers, Subtags, FormatWidth, Moment, PluralCategory, WeekInfo, TimeZoneNameStyle, ListType, DisplayType, SupportedKey, NumberOptions, CollationOptions, DurationParts, } from "./cosmo.js";
|
|
3
|
+
export { cosmo } from "./helper.js";
|
|
4
|
+
export { formatMessage } from "./message.js";
|
|
5
|
+
export type { MessageArgs } from "./message.js";
|
|
6
|
+
export { CosmoError, InvalidArgumentError, UnsupportedError } from "./errors.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EACV,SAAS,EACT,OAAO,EACP,WAAW,EACX,MAAM,EACN,cAAc,EACd,QAAQ,EACR,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAgBnC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type MessageArgs = Record<string, unknown> | readonly unknown[];
|
|
2
|
+
/**
|
|
3
|
+
* Formats an ICU message pattern with the given arguments for a locale.
|
|
4
|
+
*/
|
|
5
|
+
export declare function formatMessage(locale: string, pattern: string, args?: MessageArgs): string;
|
|
6
|
+
//# sourceMappingURL=message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../src/message.ts"],"names":[],"mappings":"AAmBA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,OAAO,EAAE,CAAC;AA0MvE;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,WAAgB,GAAG,MAAM,CAG7F"}
|
package/dist/message.js
ADDED
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A small, dependency-free implementation of the most commonly used subset of
|
|
3
|
+
* ICU MessageFormat, backed by the standard `Intl` APIs.
|
|
4
|
+
*
|
|
5
|
+
* Supported:
|
|
6
|
+
* - Simple arguments: `{name}` / `{0}`
|
|
7
|
+
* - Number arguments: `{0, number}`, `{0, number, integer}`,
|
|
8
|
+
* `{0, number, percent}`
|
|
9
|
+
* - Plural / select-ordinal: `{0, plural, offset:1 one {# item} other {# items}}`
|
|
10
|
+
* (`#` is replaced by the value, minus any offset)
|
|
11
|
+
* - Select: `{g, select, female {…} male {…} other {…}}`
|
|
12
|
+
* - Nesting of the above.
|
|
13
|
+
*
|
|
14
|
+
* Not supported (would require ICU internals not exposed to JavaScript): date /
|
|
15
|
+
* time / spellout / duration argument types, and number skeletons. This is a
|
|
16
|
+
* deliberate trade-off of the zero-dependency build.
|
|
17
|
+
*/
|
|
18
|
+
import { CosmoError } from "./errors.js";
|
|
19
|
+
function getArg(args, name) {
|
|
20
|
+
if (Array.isArray(args))
|
|
21
|
+
return args[Number(name)];
|
|
22
|
+
return args[name];
|
|
23
|
+
}
|
|
24
|
+
/** Parses a message pattern starting at `i`, stopping at an unescaped `}` (when nested). */
|
|
25
|
+
function parse(src, i, nested) {
|
|
26
|
+
const nodes = [];
|
|
27
|
+
let text = "";
|
|
28
|
+
const flushText = () => {
|
|
29
|
+
if (text)
|
|
30
|
+
nodes.push({ kind: "text", value: text });
|
|
31
|
+
text = "";
|
|
32
|
+
};
|
|
33
|
+
while (i < src.length) {
|
|
34
|
+
const ch = src[i];
|
|
35
|
+
if (ch === "'") {
|
|
36
|
+
// ICU apostrophe escaping: '' is a literal ', 'xyz' quotes special chars.
|
|
37
|
+
if (src[i + 1] === "'") {
|
|
38
|
+
text += "'";
|
|
39
|
+
i += 2;
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
const close = src.indexOf("'", i + 1);
|
|
43
|
+
if (close === -1) {
|
|
44
|
+
text += src.slice(i + 1);
|
|
45
|
+
i = src.length;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
text += src.slice(i + 1, close);
|
|
49
|
+
i = close + 1;
|
|
50
|
+
}
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
if (ch === "}" && nested) {
|
|
54
|
+
flushText();
|
|
55
|
+
return { nodes, end: i };
|
|
56
|
+
}
|
|
57
|
+
if (ch === "{") {
|
|
58
|
+
flushText();
|
|
59
|
+
const parsed = parseArgument(src, i + 1);
|
|
60
|
+
nodes.push(parsed.node);
|
|
61
|
+
i = parsed.end + 1; // skip closing }
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
text += ch;
|
|
65
|
+
i++;
|
|
66
|
+
}
|
|
67
|
+
flushText();
|
|
68
|
+
return { nodes, end: i };
|
|
69
|
+
}
|
|
70
|
+
function parseArgument(src, i) {
|
|
71
|
+
// name
|
|
72
|
+
let name = "";
|
|
73
|
+
while (i < src.length && src[i] !== "," && src[i] !== "}")
|
|
74
|
+
name += src[i++];
|
|
75
|
+
name = name.trim();
|
|
76
|
+
if (src[i] === "}")
|
|
77
|
+
return { node: { kind: "arg", name }, end: i };
|
|
78
|
+
i++; // skip ','
|
|
79
|
+
// type
|
|
80
|
+
let type = "";
|
|
81
|
+
while (i < src.length && src[i] !== "," && src[i] !== "}")
|
|
82
|
+
type += src[i++];
|
|
83
|
+
type = type.trim();
|
|
84
|
+
if (type === "number") {
|
|
85
|
+
let style = "";
|
|
86
|
+
if (src[i] === ",") {
|
|
87
|
+
i++;
|
|
88
|
+
while (i < src.length && src[i] !== "}")
|
|
89
|
+
style += src[i++];
|
|
90
|
+
}
|
|
91
|
+
return { node: { kind: "arg", name, format: { type: "number", style: style.trim() } }, end: i };
|
|
92
|
+
}
|
|
93
|
+
if (type === "plural" || type === "selectordinal" || type === "select") {
|
|
94
|
+
i++; // skip ','
|
|
95
|
+
return parseChoices(src, i, name, type);
|
|
96
|
+
}
|
|
97
|
+
throw new CosmoError(`Unsupported ICU message argument type "${type}".`);
|
|
98
|
+
}
|
|
99
|
+
function parseChoices(src, i, name, type) {
|
|
100
|
+
const options = new Map();
|
|
101
|
+
let offset = 0;
|
|
102
|
+
while (i < src.length && src[i] !== "}") {
|
|
103
|
+
// skip whitespace
|
|
104
|
+
while (i < src.length && /\s/.test(src[i]))
|
|
105
|
+
i++;
|
|
106
|
+
if (src[i] === "}")
|
|
107
|
+
break;
|
|
108
|
+
// read selector
|
|
109
|
+
let selector = "";
|
|
110
|
+
while (i < src.length && !/\s/.test(src[i]) && src[i] !== "{")
|
|
111
|
+
selector += src[i++];
|
|
112
|
+
if ((type === "plural" || type === "selectordinal") && selector.startsWith("offset:")) {
|
|
113
|
+
offset = Number(selector.slice("offset:".length));
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
while (i < src.length && /\s/.test(src[i]))
|
|
117
|
+
i++;
|
|
118
|
+
if (src[i] !== "{") {
|
|
119
|
+
throw new CosmoError(`Malformed ICU message: expected "{" after selector "${selector}".`);
|
|
120
|
+
}
|
|
121
|
+
const sub = parse(src, i + 1, true);
|
|
122
|
+
options.set(selector.replace(/^=/, ""), sub.nodes);
|
|
123
|
+
i = sub.end + 1; // skip closing }
|
|
124
|
+
}
|
|
125
|
+
const format = type === "select" ? { type, options } : { type, offset, options };
|
|
126
|
+
return { node: { kind: "arg", name, format }, end: i };
|
|
127
|
+
}
|
|
128
|
+
function formatNumberArg(locale, style, value) {
|
|
129
|
+
let options;
|
|
130
|
+
switch (style) {
|
|
131
|
+
case "":
|
|
132
|
+
options = {};
|
|
133
|
+
break;
|
|
134
|
+
case "integer":
|
|
135
|
+
options = { maximumFractionDigits: 0, useGrouping: true };
|
|
136
|
+
break;
|
|
137
|
+
case "percent":
|
|
138
|
+
options = { style: "percent" };
|
|
139
|
+
break;
|
|
140
|
+
case "currency":
|
|
141
|
+
options = { style: "currency", currency: "USD" };
|
|
142
|
+
break;
|
|
143
|
+
default:
|
|
144
|
+
options = {};
|
|
145
|
+
}
|
|
146
|
+
return new Intl.NumberFormat(locale, options).format(value);
|
|
147
|
+
}
|
|
148
|
+
function render(locale, nodes, args, hashValue) {
|
|
149
|
+
let out = "";
|
|
150
|
+
for (const node of nodes) {
|
|
151
|
+
if (node.kind === "text") {
|
|
152
|
+
out += hashValue === undefined ? node.value : node.value.replace(/#/g, formatHash(locale, hashValue));
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
out += renderArg(locale, node, args);
|
|
156
|
+
}
|
|
157
|
+
return out;
|
|
158
|
+
}
|
|
159
|
+
function formatHash(locale, value) {
|
|
160
|
+
return new Intl.NumberFormat(locale).format(value);
|
|
161
|
+
}
|
|
162
|
+
function renderArg(locale, node, args) {
|
|
163
|
+
const value = getArg(args, node.name);
|
|
164
|
+
const format = node.format;
|
|
165
|
+
if (!format)
|
|
166
|
+
return value == null ? "" : String(value);
|
|
167
|
+
if (format.type === "number") {
|
|
168
|
+
return formatNumberArg(locale, format.style, Number(value));
|
|
169
|
+
}
|
|
170
|
+
if (format.type === "select") {
|
|
171
|
+
const branch = format.options.get(String(value)) ?? format.options.get("other");
|
|
172
|
+
return branch ? render(locale, branch, args) : "";
|
|
173
|
+
}
|
|
174
|
+
// plural / selectordinal
|
|
175
|
+
const num = Number(value);
|
|
176
|
+
const adjusted = num - format.offset;
|
|
177
|
+
const exact = format.options.get(String(num)) ?? format.options.get(`=${num}`);
|
|
178
|
+
if (exact)
|
|
179
|
+
return render(locale, exact, args, adjusted);
|
|
180
|
+
const category = new Intl.PluralRules(locale, {
|
|
181
|
+
type: format.type === "selectordinal" ? "ordinal" : "cardinal",
|
|
182
|
+
}).select(adjusted);
|
|
183
|
+
const branch = format.options.get(category) ?? format.options.get("other");
|
|
184
|
+
return branch ? render(locale, branch, args, adjusted) : "";
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Formats an ICU message pattern with the given arguments for a locale.
|
|
188
|
+
*/
|
|
189
|
+
export function formatMessage(locale, pattern, args = {}) {
|
|
190
|
+
const { nodes } = parse(pattern, 0, false);
|
|
191
|
+
return render(locale, nodes, args);
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../src/message.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAoBzC,SAAS,MAAM,CAAC,IAAiB,EAAE,IAAY;IAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,OAAQ,IAAgC,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED,4FAA4F;AAC5F,SAAS,KAAK,CAAC,GAAW,EAAE,CAAS,EAAE,MAAe;IACpD,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,MAAM,SAAS,GAAG,GAAG,EAAE;QACrB,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,IAAI,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,0EAA0E;YAC1E,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACvB,IAAI,IAAI,GAAG,CAAC;gBACZ,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACtC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjB,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzB,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;YAChB,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC3B,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,iBAAiB;YACrC,SAAS;QACX,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;QACX,CAAC,EAAE,CAAC;IACN,CAAC;IACD,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,aAAa,CAAC,GAAW,EAAE,CAAS;IAC3C,OAAO;IACP,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;QAAE,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAE,CAAC;IAC7E,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAEnB,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IAEnE,CAAC,EAAE,CAAC,CAAC,WAAW;IAChB,OAAO;IACP,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;QAAE,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAE,CAAC;IAC7E,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAEnB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACnB,CAAC,EAAE,CAAC;YACJ,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,KAAK,IAAI,GAAG,CAAC,CAAC,EAAE,CAAE,CAAC;QAC9D,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IAClG,CAAC;IAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvE,CAAC,EAAE,CAAC,CAAC,WAAW;QAChB,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAA6C,CAAC,CAAC;IACnF,CAAC;IAED,MAAM,IAAI,UAAU,CAAC,0CAA0C,IAAI,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,YAAY,CACnB,GAAW,EACX,CAAS,EACT,IAAY,EACZ,IAA2C;IAE3C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACxC,kBAAkB;QAClB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;YAAE,CAAC,EAAE,CAAC;QACjD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,MAAM;QAE1B,gBAAgB;QAChB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,QAAQ,IAAI,GAAG,CAAC,CAAC,EAAE,CAAE,CAAC;QAEtF,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,eAAe,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACtF,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAClD,SAAS;QACX,CAAC;QAED,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;YAAE,CAAC,EAAE,CAAC;QACjD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACnB,MAAM,IAAI,UAAU,CAAC,uDAAuD,QAAQ,IAAI,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,iBAAiB;IACpC,CAAC;IAED,MAAM,MAAM,GACV,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACpE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,eAAe,CAAC,MAAc,EAAE,KAAa,EAAE,KAAa;IACnE,IAAI,OAAiC,CAAC;IACtC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,EAAE;YACL,OAAO,GAAG,EAAE,CAAC;YACb,MAAM;QACR,KAAK,SAAS;YACZ,OAAO,GAAG,EAAE,qBAAqB,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAC1D,MAAM;QACR,KAAK,SAAS;YACZ,OAAO,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC/B,MAAM;QACR,KAAK,UAAU;YACb,OAAO,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YACjD,MAAM;QACR;YACE,OAAO,GAAG,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,MAAM,CAAC,MAAc,EAAE,KAAa,EAAE,IAAiB,EAAE,SAAkB;IAClF,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,GAAG,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;YACtG,SAAS;QACX,CAAC;QACD,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,KAAa;IAC/C,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,SAAS,CAAC,MAAc,EAAE,IAAa,EAAE,IAAiB;IACjE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAE3B,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEvD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChF,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,CAAC;IAED,yBAAyB;IACzB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,QAAQ,GAAG,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAC/E,IAAI,KAAK;QAAE,OAAO,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;QAC5C,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;KAC/D,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,OAAe,EAAE,OAAoB,EAAE;IACnF,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@miloun/cosmo",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Ergonomic internationalization (i18n) and localization (l10n) for JavaScript & Node — format numbers, currency, dates, times, units, lists, relative time and plurals for any locale on the standard Intl/ICU (ECMA-402) API. Zero dependencies, no bundled locale data.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": {
|
|
8
|
+
"name": "Miloun",
|
|
9
|
+
"email": "cosmo-js@miloun.com"
|
|
10
|
+
},
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/cosmo-intl/cosmo-js.git"
|
|
14
|
+
},
|
|
15
|
+
"homepage": "https://github.com/cosmo-intl/cosmo-js#readme",
|
|
16
|
+
"bugs": "https://github.com/cosmo-intl/cosmo-js/issues",
|
|
17
|
+
"keywords": [
|
|
18
|
+
"i18n",
|
|
19
|
+
"l10n",
|
|
20
|
+
"internationalization",
|
|
21
|
+
"internationalisation",
|
|
22
|
+
"localization",
|
|
23
|
+
"localisation",
|
|
24
|
+
"intl",
|
|
25
|
+
"ecma-402",
|
|
26
|
+
"icu",
|
|
27
|
+
"cldr",
|
|
28
|
+
"unicode",
|
|
29
|
+
"locale",
|
|
30
|
+
"translation",
|
|
31
|
+
"currency",
|
|
32
|
+
"money",
|
|
33
|
+
"number-format",
|
|
34
|
+
"date",
|
|
35
|
+
"datetime",
|
|
36
|
+
"timezone",
|
|
37
|
+
"relative-time",
|
|
38
|
+
"pluralization",
|
|
39
|
+
"formatter"
|
|
40
|
+
],
|
|
41
|
+
"engines": {
|
|
42
|
+
"node": ">=20"
|
|
43
|
+
},
|
|
44
|
+
"exports": {
|
|
45
|
+
".": {
|
|
46
|
+
"types": "./dist/index.d.ts",
|
|
47
|
+
"import": "./dist/index.js"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"main": "./dist/index.js",
|
|
51
|
+
"types": "./dist/index.d.ts",
|
|
52
|
+
"files": [
|
|
53
|
+
"dist",
|
|
54
|
+
"README.md",
|
|
55
|
+
"LICENSE",
|
|
56
|
+
"changelog.md"
|
|
57
|
+
],
|
|
58
|
+
"scripts": {
|
|
59
|
+
"build": "tsc -p tsconfig.json",
|
|
60
|
+
"clean": "rm -rf dist",
|
|
61
|
+
"prepublishOnly": "npm run clean && npm run build",
|
|
62
|
+
"pretest": "npm run build",
|
|
63
|
+
"test": "node --test test/*.test.ts",
|
|
64
|
+
"example": "npm run build && node example.ts"
|
|
65
|
+
},
|
|
66
|
+
"devDependencies": {
|
|
67
|
+
"typescript": "^5.6.0"
|
|
68
|
+
}
|
|
69
|
+
}
|