@calibrate-ds/core 0.1.80 → 0.1.82

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.
Files changed (52) hide show
  1. package/dist/docs/generate-component-stories.d.ts.map +1 -1
  2. package/dist/docs/generate-component-stories.js +10 -4
  3. package/dist/docs/generate-component-stories.js.map +1 -1
  4. package/dist/filesystem/prune-stale-components.d.ts.map +1 -1
  5. package/dist/filesystem/prune-stale-components.js +38 -2
  6. package/dist/filesystem/prune-stale-components.js.map +1 -1
  7. package/dist/icons/enrich-icon-svgs.d.ts.map +1 -1
  8. package/dist/icons/enrich-icon-svgs.js +3 -0
  9. package/dist/icons/enrich-icon-svgs.js.map +1 -1
  10. package/dist/mappings/naming-strategy.d.ts +0 -10
  11. package/dist/mappings/naming-strategy.d.ts.map +1 -1
  12. package/dist/mappings/naming-strategy.js +46 -4
  13. package/dist/mappings/naming-strategy.js.map +1 -1
  14. package/dist/model/build-design-system-model.d.ts.map +1 -1
  15. package/dist/model/build-design-system-model.js +5 -0
  16. package/dist/model/build-design-system-model.js.map +1 -1
  17. package/dist/normalizer/naming.d.ts.map +1 -1
  18. package/dist/normalizer/naming.js +12 -5
  19. package/dist/normalizer/naming.js.map +1 -1
  20. package/dist/normalizer/normalize-components.d.ts.map +1 -1
  21. package/dist/normalizer/normalize-components.js +18 -3
  22. package/dist/normalizer/normalize-components.js.map +1 -1
  23. package/dist/normalizer/types.d.ts +4 -0
  24. package/dist/normalizer/types.d.ts.map +1 -1
  25. package/dist/prompt/generate-component-prompt.d.ts.map +1 -1
  26. package/dist/prompt/generate-component-prompt.js +11 -1
  27. package/dist/prompt/generate-component-prompt.js.map +1 -1
  28. package/dist/registry/generator-registry.d.ts.map +1 -1
  29. package/dist/registry/generator-registry.js +5 -1
  30. package/dist/registry/generator-registry.js.map +1 -1
  31. package/dist/snapshots/index.d.ts +1 -0
  32. package/dist/snapshots/index.d.ts.map +1 -1
  33. package/dist/snapshots/index.js +1 -0
  34. package/dist/snapshots/index.js.map +1 -1
  35. package/dist/snapshots/load-latest-snapshot.d.ts.map +1 -1
  36. package/dist/snapshots/load-latest-snapshot.js +4 -1
  37. package/dist/snapshots/load-latest-snapshot.js.map +1 -1
  38. package/dist/snapshots/load-previous-snapshot.d.ts.map +1 -1
  39. package/dist/snapshots/load-previous-snapshot.js +2 -1
  40. package/dist/snapshots/load-previous-snapshot.js.map +1 -1
  41. package/dist/snapshots/sanitize-model.d.ts +18 -0
  42. package/dist/snapshots/sanitize-model.d.ts.map +1 -0
  43. package/dist/snapshots/sanitize-model.js +77 -0
  44. package/dist/snapshots/sanitize-model.js.map +1 -0
  45. package/dist/tokens/naming.d.ts.map +1 -1
  46. package/dist/tokens/naming.js +3 -1
  47. package/dist/tokens/naming.js.map +1 -1
  48. package/dist/tokens/resolve-token-source.d.ts +5 -0
  49. package/dist/tokens/resolve-token-source.d.ts.map +1 -1
  50. package/dist/tokens/resolve-token-source.js +7 -3
  51. package/dist/tokens/resolve-token-source.js.map +1 -1
  52. package/package.json +3 -3
@@ -0,0 +1,77 @@
1
+ /**
2
+ * E-14: normalizes a loaded DesignSystemModel so malformed elements (null names,
3
+ * null token lists, null array entries) can never abort a downstream run.
4
+ *
5
+ * Scan output on a messy Figma file — or a hand-edited/imported snapshot — can
6
+ * legitimately carry nulls. Before this pass, a single null `collection.tokens`
7
+ * crashed ~10 independent iteration sites ("col.tokens is not iterable") and a
8
+ * null component name crashed identifier formatting. Guarding each site was
9
+ * whack-a-mole; this sanitizes ONCE at the snapshot-load choke point.
10
+ *
11
+ * Every normalization is skip-and-warn, never abort: the goal is that one bad
12
+ * element costs that element (with an explicit console warning), not the build.
13
+ * Well-formed models pass through untouched — no cloning, no key reordering —
14
+ * so snapshot hashing and golden output are unaffected.
15
+ */
16
+ export function sanitizeModel(model) {
17
+ const warnings = [];
18
+ // Token collections: null list → [], null entries dropped, null names → "".
19
+ if (Array.isArray(model.tokens)) {
20
+ for (const collection of model.tokens) {
21
+ if (!collection)
22
+ continue;
23
+ if (!Array.isArray(collection.tokens)) {
24
+ warnings.push(`token collection "${collection.name ?? "?"}" has no token list — treating as empty`);
25
+ collection.tokens = [];
26
+ continue;
27
+ }
28
+ const before = collection.tokens.length;
29
+ collection.tokens = collection.tokens.filter(Boolean);
30
+ if (collection.tokens.length !== before) {
31
+ warnings.push(`token collection "${collection.name ?? "?"}" contained ${before - collection.tokens.length} null token entr(ies) — dropped`);
32
+ }
33
+ for (const t of collection.tokens) {
34
+ if (t.name == null) {
35
+ warnings.push(`token ${t.id ?? "?"} in "${collection.name ?? "?"}" has no name — using ""`);
36
+ t.name = "";
37
+ }
38
+ }
39
+ }
40
+ const beforeCols = model.tokens.length;
41
+ model.tokens = model.tokens.filter(Boolean);
42
+ if (model.tokens.length !== beforeCols) {
43
+ warnings.push(`model contained ${beforeCols - model.tokens.length} null token collection(s) — dropped`);
44
+ }
45
+ }
46
+ else if (model.tokens == null) {
47
+ model.tokens = [];
48
+ }
49
+ // Components: null entries dropped, null names → "Unknown", null
50
+ // dependencyInstances entries filtered.
51
+ if (Array.isArray(model.components)) {
52
+ const before = model.components.length;
53
+ model.components = model.components.filter(Boolean);
54
+ if (model.components.length !== before) {
55
+ warnings.push(`model contained ${before - model.components.length} null component entr(ies) — dropped`);
56
+ }
57
+ for (const c of model.components) {
58
+ if (c.name == null) {
59
+ warnings.push(`component ${c.id ?? "?"} has no name — using "Unknown"`);
60
+ c.name = "Unknown";
61
+ }
62
+ const deps = c.dependencyInstances;
63
+ if (Array.isArray(deps) && deps.some((d) => !d)) {
64
+ c.dependencyInstances = deps.filter(Boolean);
65
+ warnings.push(`component "${c.name}" had null dependencyInstances entr(ies) — dropped`);
66
+ }
67
+ }
68
+ }
69
+ else if (model.components == null) {
70
+ model.components = [];
71
+ }
72
+ for (const w of warnings) {
73
+ console.warn(`[PTB] ⚠ model sanitizer: ${w}`);
74
+ }
75
+ return model;
76
+ }
77
+ //# sourceMappingURL=sanitize-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize-model.js","sourceRoot":"","sources":["../../src/snapshots/sanitize-model.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"naming.d.ts","sourceRoot":"","sources":["../../src/tokens/naming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAIzF"}
1
+ {"version":3,"file":"naming.d.ts","sourceRoot":"","sources":["../../src/tokens/naming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM/D;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAIzF"}
@@ -10,7 +10,9 @@
10
10
  * Example: "scale / 300 (12px)" -> "scale-300-12px"
11
11
  */
12
12
  export function normalizeTokenVariablePart(name) {
13
- return name.toLowerCase()
13
+ // E-14: scan output on messy files can carry null/undefined names — normalize
14
+ // to an empty segment instead of crashing the whole generate run.
15
+ return (name ?? "").toLowerCase()
14
16
  .replace(/[^a-z0-9]+/g, "-")
15
17
  .replace(/(^-|-$)/g, "");
16
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"naming.js","sourceRoot":"","sources":["../../src/tokens/naming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACnD,OAAO,IAAI,CAAC,WAAW,EAAE;SACpB,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,cAAsB,EAAE,SAAiB;IAC7E,MAAM,QAAQ,GAAG,0BAA0B,CAAC,cAAc,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACpD,OAAO,SAAS,QAAQ,IAAI,KAAK,EAAE,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"naming.js","sourceRoot":"","sources":["../../src/tokens/naming.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACnD,8EAA8E;IAC9E,kEAAkE;IAClE,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;SAC5B,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,cAAsB,EAAE,SAAiB;IAC7E,MAAM,QAAQ,GAAG,0BAA0B,CAAC,cAAc,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACpD,OAAO,SAAS,QAAQ,IAAI,KAAK,EAAE,CAAC;AACxC,CAAC"}
@@ -9,6 +9,11 @@ export type TokenSourceResult = {
9
9
  * Component fills bound to internal/alias collections (e.g. "Mapped") resolve correctly
10
10
  * only when those collections are in the index. Falls back to `tokens` when unavailable. */
11
11
  allTokens: TokenCollection[];
12
+ /** S-1: why the REST variables attempt failed (e.g. a 403 missing the
13
+ * file_variables:read scope / non-Enterprise plan). Present only when the REST
14
+ * path errored — callers should surface it so "0 tokens" is distinguishable
15
+ * from a genuinely token-free file. */
16
+ restError?: string;
12
17
  };
13
18
  /**
14
19
  * Resolves the highest fidelity token collections securely via REST first,
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-token-source.d.ts","sourceRoot":"","sources":["../../src/tokens/resolve-token-source.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,MAAM,MAAM,iBAAiB,GAAG;IAC5B,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACrC,uFAAuF;IACvF,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B;;iGAE6F;IAC7F,SAAS,EAAE,eAAe,EAAE,CAAC;CAChC,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACpC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,iBAAiB,CAAC,CAwC5B"}
1
+ {"version":3,"file":"resolve-token-source.d.ts","sourceRoot":"","sources":["../../src/tokens/resolve-token-source.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,MAAM,MAAM,iBAAiB,GAAG;IAC5B,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACrC,uFAAuF;IACvF,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B;;iGAE6F;IAC7F,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B;;;4CAGwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACpC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,iBAAiB,CAAC,CA4C5B"}
@@ -11,6 +11,7 @@ import { buildTokenModel, buildAllTokenModel, adaptCanonicalToTokenCollections }
11
11
  */
12
12
  export async function resolveTokenSource(config, figmaToken, adapter) {
13
13
  // 1. Attempt REST Payload
14
+ let restError;
14
15
  try {
15
16
  const variablesData = adapter?.resolveTokenVariables
16
17
  ? await adapter.resolveTokenVariables({
@@ -31,8 +32,11 @@ export async function resolveTokenSource(config, figmaToken, adapter) {
31
32
  }
32
33
  }
33
34
  }
34
- catch {
35
- // Fallback organically to imported tokens
35
+ catch (err) {
36
+ // Fallback to imported tokens, but keep the reason (S-1): a 403 here usually
37
+ // means the PAT lacks the file_variables:read scope (Enterprise-gated API) —
38
+ // swallowing it made a tokenless scan indistinguishable from a token-free file.
39
+ restError = err?.message ?? String(err);
36
40
  }
37
41
  // 2. Attempt Imported Output (already schema-validated via local loading)
38
42
  const importedData = await loadImportedTokens(config);
@@ -45,6 +49,6 @@ export async function resolveTokenSource(config, figmaToken, adapter) {
45
49
  };
46
50
  }
47
51
  // 3. Fallback Empty Array
48
- return { source: "none", tokens: [], allTokens: [] };
52
+ return { source: "none", tokens: [], allTokens: [], restError };
49
53
  }
50
54
  //# sourceMappingURL=resolve-token-source.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-token-source.js","sourceRoot":"","sources":["../../src/tokens/resolve-token-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAe/G;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,MAAiB,EACjB,UAAkB,EAClB,OAA4B;IAE5B,0BAA0B;IAC1B,IAAI,CAAC;QACD,MAAM,aAAa,GAAQ,OAAO,EAAE,qBAAqB;YACrD,CAAC,CAAC,MAAM,OAAO,CAAC,qBAAqB,CAAC;gBAClC,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO;gBAClC,WAAW,EAAE,UAAU;aAC1B,CAAC;YACF,CAAC,CAAC,MAAM,sBAAsB,CAAC;gBAC3B,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO;gBAClC,KAAK,EAAE,UAAU;aACpB,CAAC,CAAC;QAEP,8EAA8E;QAC9E,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,uEAAuE;gBACvE,MAAM,cAAc,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBACzD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;YAC9E,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,0CAA0C;IAC9C,CAAC;IAED,0EAA0E;IAC1E,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEtD,IAAI,YAAY,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,gCAAgC,CAAC,YAAY,CAAC,CAAC;QAChE,OAAO;YACH,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,QAAQ,EAAG,qDAAqD;SAC9E,CAAC;IACN,CAAC;IAED,0BAA0B;IAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"resolve-token-source.js","sourceRoot":"","sources":["../../src/tokens/resolve-token-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAoB/G;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,MAAiB,EACjB,UAAkB,EAClB,OAA4B;IAE5B,0BAA0B;IAC1B,IAAI,SAA6B,CAAC;IAClC,IAAI,CAAC;QACD,MAAM,aAAa,GAAQ,OAAO,EAAE,qBAAqB;YACrD,CAAC,CAAC,MAAM,OAAO,CAAC,qBAAqB,CAAC;gBAClC,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO;gBAClC,WAAW,EAAE,UAAU;aAC1B,CAAC;YACF,CAAC,CAAC,MAAM,sBAAsB,CAAC;gBAC3B,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO;gBAClC,KAAK,EAAE,UAAU;aACpB,CAAC,CAAC;QAEP,8EAA8E;QAC9E,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,uEAAuE;gBACvE,MAAM,cAAc,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBACzD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;YAC9E,CAAC;QACL,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,6EAA6E;QAC7E,6EAA6E;QAC7E,gFAAgF;QAChF,SAAS,GAAG,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED,0EAA0E;IAC1E,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEtD,IAAI,YAAY,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,gCAAgC,CAAC,YAAY,CAAC,CAAC;QAChE,OAAO;YACH,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,QAAQ,EAAG,qDAAqD;SAC9E,CAAC;IACN,CAAC;IAED,0BAA0B;IAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;AACpE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calibrate-ds/core",
3
- "version": "0.1.80",
3
+ "version": "0.1.82",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -39,8 +39,8 @@
39
39
  "pixelmatch": "^6.0.0",
40
40
  "pngjs": "^7.0.0",
41
41
  "zod": "^4.3.6",
42
- "@calibrate-ds/shared-types": "^0.1.80",
43
- "@calibrate-ds/figma-client": "^0.1.80"
42
+ "@calibrate-ds/shared-types": "^0.1.82",
43
+ "@calibrate-ds/figma-client": "^0.1.82"
44
44
  },
45
45
  "scripts": {
46
46
  "build": "tsc -p tsconfig.json",