@axiom-core/json-exporter 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/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +160 -0
- package/dist/index.js.map +1 -0
- package/package.json +46 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ResolvedSemanticTokens } from '@axiom-core/core-engine';
|
|
2
|
+
export type ExportFormat = 'default' | 'figma';
|
|
3
|
+
export type ExportOptions = {
|
|
4
|
+
flatten?: boolean;
|
|
5
|
+
includeMetadata?: boolean;
|
|
6
|
+
format?: ExportFormat;
|
|
7
|
+
axes?: string[];
|
|
8
|
+
themeInfo?: Record<string, unknown>;
|
|
9
|
+
};
|
|
10
|
+
export type ExportedTheme = Record<string, unknown> & {
|
|
11
|
+
$schema?: string;
|
|
12
|
+
generatedAt?: string;
|
|
13
|
+
axes?: string[];
|
|
14
|
+
themeInfo?: Record<string, unknown>;
|
|
15
|
+
};
|
|
16
|
+
export declare function exportResolvedTokens(resolved: ResolvedSemanticTokens, options?: ExportOptions): ExportedTheme;
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAKtE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/C,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,CAAC;AA2GF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,sBAAsB,EAAE,OAAO,GAAE,aAAkB,GAAG,aAAa,CAkEjH"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { AxiomResolutionError } from '@axiom-core/internal-utils';
|
|
2
|
+
const HEX_RE = /^#[0-9A-Fa-f]{3,8}$/;
|
|
3
|
+
// Error message templates
|
|
4
|
+
const ERR_TOKEN_REF = 'TokenReference found in resolved tokens';
|
|
5
|
+
const ERR_UNDEFINED = 'Undefined value found in resolved tokens';
|
|
6
|
+
const ERR_UNSUPPORTED = 'Unsupported value type in resolved tokens';
|
|
7
|
+
function isPlainObject(value) {
|
|
8
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value) && (Object.getPrototypeOf(value) === Object.prototype || Object.getPrototypeOf(value) === null);
|
|
9
|
+
}
|
|
10
|
+
function isPrimitiveValue(v) {
|
|
11
|
+
return typeof v === 'string' || typeof v === 'number';
|
|
12
|
+
}
|
|
13
|
+
function isTokenReference(obj) {
|
|
14
|
+
return isPlainObject(obj) && typeof obj.ref === 'string';
|
|
15
|
+
}
|
|
16
|
+
// Validate that input contains no TokenReference-like objects and leaves are primitives.
|
|
17
|
+
function assertResolved(resolved) {
|
|
18
|
+
const stack = [resolved];
|
|
19
|
+
while (stack.length) {
|
|
20
|
+
const cur = stack.pop();
|
|
21
|
+
if (isTokenReference(cur))
|
|
22
|
+
throw new AxiomResolutionError('json-exporter', `exportResolvedTokens expected resolved tokens but found TokenReference ${JSON.stringify(cur)}`, { node: cur });
|
|
23
|
+
if (isPlainObject(cur)) {
|
|
24
|
+
for (const v of Object.values(cur))
|
|
25
|
+
stack.push(v);
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
if (isPrimitiveValue(cur))
|
|
29
|
+
continue;
|
|
30
|
+
if (cur === undefined)
|
|
31
|
+
throw new AxiomResolutionError('json-exporter', 'exportResolvedTokens found undefined value in resolved tokens');
|
|
32
|
+
throw new AxiomResolutionError('json-exporter', `exportResolvedTokens found unsupported value type: ${typeof cur}`, { value: cur });
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
// Iterative flatten: write primitives into `out` using dot-joined paths.
|
|
36
|
+
function flattenInto(resolvedRoot, out, format) {
|
|
37
|
+
const isPlainRoot = isPlainObject(resolvedRoot);
|
|
38
|
+
if (!isPlainRoot)
|
|
39
|
+
throw new AxiomResolutionError('json-exporter', 'flattenInto expects a plain object root');
|
|
40
|
+
const isFigma = format === 'figma';
|
|
41
|
+
const formatValueLocal = (value) => {
|
|
42
|
+
if (isFigma) {
|
|
43
|
+
const type = typeof value === 'number' ? 'number' : (HEX_RE.test(String(value)) ? 'color' : 'string');
|
|
44
|
+
return { value, type };
|
|
45
|
+
}
|
|
46
|
+
return value;
|
|
47
|
+
};
|
|
48
|
+
// Stack frames: { node, keys, idx }
|
|
49
|
+
const stack = [];
|
|
50
|
+
const path = [];
|
|
51
|
+
stack.push({ node: resolvedRoot, keys: Object.keys(resolvedRoot), idx: 0 });
|
|
52
|
+
while (stack.length) {
|
|
53
|
+
const frame = stack[stack.length - 1];
|
|
54
|
+
if (frame.idx >= frame.keys.length) {
|
|
55
|
+
stack.pop();
|
|
56
|
+
if (path.length)
|
|
57
|
+
path.pop();
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
const key = frame.keys[frame.idx++];
|
|
61
|
+
const val = frame.node[key];
|
|
62
|
+
if (isTokenReference(val)) {
|
|
63
|
+
const fullPath = path.length ? path.concat(key).join('.') : key;
|
|
64
|
+
throw new AxiomResolutionError('json-exporter', ERR_TOKEN_REF + ' at ' + fullPath, { path: fullPath, ref: val.ref });
|
|
65
|
+
}
|
|
66
|
+
if (isPlainObject(val)) {
|
|
67
|
+
// descend: push the key into path and new frame
|
|
68
|
+
path.push(key);
|
|
69
|
+
stack.push({ node: val, keys: Object.keys(val), idx: 0 });
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
if (isPrimitiveValue(val)) {
|
|
73
|
+
// join path only for leaf
|
|
74
|
+
const fullKey = path.length ? path.concat(key).join('.') : key;
|
|
75
|
+
// precompute formatted value once
|
|
76
|
+
const formatted = formatValueLocal(val);
|
|
77
|
+
out[fullKey] = formatted;
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
if (val === undefined) {
|
|
81
|
+
const fullPath = path.length ? path.concat(key).join('.') : key;
|
|
82
|
+
throw new AxiomResolutionError('json-exporter', ERR_UNDEFINED + ' at ' + fullPath, { path: fullPath });
|
|
83
|
+
}
|
|
84
|
+
throw new AxiomResolutionError('json-exporter', ERR_UNSUPPORTED + ' at ' + (path.length ? path.concat(key).join('.') : key), { key, value: val });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
function formatValue(value, format) {
|
|
88
|
+
if (format === 'figma') {
|
|
89
|
+
const type = typeof value === 'number' ? 'number' : (HEX_RE.test(String(value)) ? 'color' : 'string');
|
|
90
|
+
return { value, type };
|
|
91
|
+
}
|
|
92
|
+
return value;
|
|
93
|
+
}
|
|
94
|
+
export function exportResolvedTokens(resolved, options = {}) {
|
|
95
|
+
const { flatten = false, includeMetadata = false, format = 'default', axes, themeInfo } = options;
|
|
96
|
+
// Build token payload without mutating input
|
|
97
|
+
const tokens = {};
|
|
98
|
+
if (flatten) {
|
|
99
|
+
// When flattening we merge validation into traversal to avoid a separate pass.
|
|
100
|
+
if (includeMetadata) {
|
|
101
|
+
// Pre-assign metadata into result object to avoid spread overhead.
|
|
102
|
+
const res = Object.create(null);
|
|
103
|
+
res.$schema = 'axiom-core-v1';
|
|
104
|
+
res.axes = axes ?? [];
|
|
105
|
+
res.themeInfo = themeInfo ?? {};
|
|
106
|
+
flattenInto(resolved, res, format);
|
|
107
|
+
return res;
|
|
108
|
+
}
|
|
109
|
+
// Write directly into `tokens` with an iterative flatten to avoid
|
|
110
|
+
// intermediate nested object creation and reduce allocations.
|
|
111
|
+
flattenInto(resolved, tokens, format);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
// Preserve nested structure (less common path for large exports)
|
|
115
|
+
const isFigma = format === 'figma';
|
|
116
|
+
const formatValueLocal = (value) => {
|
|
117
|
+
if (isFigma) {
|
|
118
|
+
const type = typeof value === 'number' ? 'number' : (HEX_RE.test(String(value)) ? 'color' : 'string');
|
|
119
|
+
return { value, type };
|
|
120
|
+
}
|
|
121
|
+
return value;
|
|
122
|
+
};
|
|
123
|
+
for (const ns of Object.keys(resolved)) {
|
|
124
|
+
const namespace = resolved[ns];
|
|
125
|
+
const outNs = {};
|
|
126
|
+
if (!isPlainObject(namespace)) {
|
|
127
|
+
throw new AxiomResolutionError('json-exporter', `exportResolvedTokens: unexpected namespace shape for ${String(ns)}`, { ns });
|
|
128
|
+
}
|
|
129
|
+
for (const [k, v] of Object.entries(namespace)) {
|
|
130
|
+
const formatted = (function formatNode(node) {
|
|
131
|
+
if (isPrimitiveValue(node))
|
|
132
|
+
return formatValueLocal(node);
|
|
133
|
+
if (isPlainObject(node)) {
|
|
134
|
+
const o = {};
|
|
135
|
+
for (const [kk, vv] of Object.entries(node)) {
|
|
136
|
+
o[kk] = formatNode(vv);
|
|
137
|
+
}
|
|
138
|
+
return o;
|
|
139
|
+
}
|
|
140
|
+
throw new AxiomResolutionError('json-exporter', 'exportResolvedTokens: unexpected node type when formatting', { ns });
|
|
141
|
+
})(v);
|
|
142
|
+
outNs[k] = formatted;
|
|
143
|
+
}
|
|
144
|
+
tokens[String(ns)] = outNs;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
if (!includeMetadata)
|
|
148
|
+
return tokens;
|
|
149
|
+
// Non-flatten + includeMetadata: assign metadata fields then copy namespaces
|
|
150
|
+
const out = Object.create(null);
|
|
151
|
+
out.$schema = 'axiom-core-v1';
|
|
152
|
+
out.axes = axes ?? [];
|
|
153
|
+
out.themeInfo = themeInfo ?? {};
|
|
154
|
+
// copy top-level namespaces without using spread to avoid big allocation spikes
|
|
155
|
+
for (const [k, v] of Object.entries(tokens))
|
|
156
|
+
out[k] = v;
|
|
157
|
+
return out;
|
|
158
|
+
}
|
|
159
|
+
// cloning delegated to @axiom-core/internal-utils
|
|
160
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@axiom-core/json-exporter",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Axiom Core — JSON token export utility",
|
|
5
|
+
"private": false,
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"module": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"import": "./dist/index.js",
|
|
13
|
+
"types": "./dist/index.d.ts",
|
|
14
|
+
"default": "./dist/index.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist/**/*.js",
|
|
19
|
+
"dist/**/*.js.map",
|
|
20
|
+
"dist/**/*.d.ts",
|
|
21
|
+
"dist/**/*.d.ts.map"
|
|
22
|
+
],
|
|
23
|
+
"sideEffects": false,
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@axiom-core/token-schema": "0.1.0",
|
|
26
|
+
"@axiom-core/core-engine": "0.1.0",
|
|
27
|
+
"@axiom-core/internal-utils": "0.1.0"
|
|
28
|
+
},
|
|
29
|
+
"license": "MIT",
|
|
30
|
+
"repository": {
|
|
31
|
+
"type": "git",
|
|
32
|
+
"url": "https://github.com/Haneefe/Axiom-Core.git"
|
|
33
|
+
},
|
|
34
|
+
"homepage": "https://github.com/Haneefe/Axiom-Core",
|
|
35
|
+
"bugs": {
|
|
36
|
+
"url": "https://github.com/Haneefe/Axiom-Core/issues"
|
|
37
|
+
},
|
|
38
|
+
"publishConfig": {
|
|
39
|
+
"access": "public"
|
|
40
|
+
},
|
|
41
|
+
"scripts": {
|
|
42
|
+
"build": "tsc -b",
|
|
43
|
+
"clean": "rimraf dist",
|
|
44
|
+
"dev": "tsc -w -p tsconfig.json"
|
|
45
|
+
}
|
|
46
|
+
}
|