@calibrate-ds/core 0.1.5 → 0.1.6

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 (51) hide show
  1. package/dist/__tests__/compare-components.test.js +146 -0
  2. package/dist/__tests__/compare-components.test.js.map +1 -1
  3. package/dist/__tests__/compare-tokens.test.d.ts +2 -0
  4. package/dist/__tests__/compare-tokens.test.d.ts.map +1 -0
  5. package/dist/__tests__/compare-tokens.test.js +76 -0
  6. package/dist/__tests__/compare-tokens.test.js.map +1 -0
  7. package/dist/diff/compare-components.d.ts.map +1 -1
  8. package/dist/diff/compare-components.js +168 -19
  9. package/dist/diff/compare-components.js.map +1 -1
  10. package/dist/diff/compare-tokens.d.ts.map +1 -1
  11. package/dist/diff/compare-tokens.js +76 -21
  12. package/dist/diff/compare-tokens.js.map +1 -1
  13. package/dist/diff/format-diff-summary.d.ts.map +1 -1
  14. package/dist/diff/format-diff-summary.js +18 -2
  15. package/dist/diff/format-diff-summary.js.map +1 -1
  16. package/dist/docs/generate-component-stories.d.ts.map +1 -1
  17. package/dist/docs/generate-component-stories.js +21 -0
  18. package/dist/docs/generate-component-stories.js.map +1 -1
  19. package/dist/doctor/check-component.d.ts.map +1 -1
  20. package/dist/doctor/check-component.js +18 -0
  21. package/dist/doctor/check-component.js.map +1 -1
  22. package/dist/icons/enrich-bitmap-assets.d.ts +14 -0
  23. package/dist/icons/enrich-bitmap-assets.d.ts.map +1 -0
  24. package/dist/icons/enrich-bitmap-assets.js +100 -0
  25. package/dist/icons/enrich-bitmap-assets.js.map +1 -0
  26. package/dist/index.d.ts +1 -0
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/normalizer/classify-group-intent.d.ts +32 -0
  31. package/dist/normalizer/classify-group-intent.d.ts.map +1 -0
  32. package/dist/normalizer/classify-group-intent.js +76 -0
  33. package/dist/normalizer/classify-group-intent.js.map +1 -0
  34. package/dist/normalizer/index.d.ts +2 -0
  35. package/dist/normalizer/index.d.ts.map +1 -1
  36. package/dist/normalizer/index.js +2 -0
  37. package/dist/normalizer/index.js.map +1 -1
  38. package/dist/normalizer/instance-resolver.d.ts.map +1 -1
  39. package/dist/normalizer/instance-resolver.js +17 -1
  40. package/dist/normalizer/instance-resolver.js.map +1 -1
  41. package/dist/normalizer/normalize-components.d.ts.map +1 -1
  42. package/dist/normalizer/normalize-components.js +23 -3
  43. package/dist/normalizer/normalize-components.js.map +1 -1
  44. package/dist/normalizer/sanitize-property-names.d.ts +27 -0
  45. package/dist/normalizer/sanitize-property-names.d.ts.map +1 -0
  46. package/dist/normalizer/sanitize-property-names.js +163 -0
  47. package/dist/normalizer/sanitize-property-names.js.map +1 -0
  48. package/dist/prompt/generate-component-prompt.d.ts.map +1 -1
  49. package/dist/prompt/generate-component-prompt.js +5 -2
  50. package/dist/prompt/generate-component-prompt.js.map +1 -1
  51. package/package.json +3 -3
@@ -4,4 +4,6 @@ export * from "./classify-entities.js";
4
4
  export * from "./normalize-components.js";
5
5
  export * from "./normalize-composites.js";
6
6
  export * from "./normalize-instances.js";
7
+ export * from "./sanitize-property-names.js";
8
+ export * from "./classify-group-intent.js";
7
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/normalizer/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/normalizer/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"instance-resolver.d.ts","sourceRoot":"","sources":["../../src/normalizer/instance-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAsB,mBAAmB,EAA2L,MAAM,4BAA4B,CAAC;AACrT,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4B1C;;;;GAIG;AACH,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,cAAc,EACpB,UAAU,GAAE,mBAAmB,EAAO,EACtC,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,qBAAqB,GAAG,SAAS,CAsCnC;AA+hBD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,QAwBhI"}
1
+ {"version":3,"file":"instance-resolver.d.ts","sourceRoot":"","sources":["../../src/normalizer/instance-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAsB,mBAAmB,EAA2L,MAAM,4BAA4B,CAAC;AACrT,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4B1C;;;;GAIG;AACH,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,cAAc,EACpB,UAAU,GAAE,mBAAmB,EAAO,EACtC,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,qBAAqB,GAAG,SAAS,CAsCnC;AAgjBD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,QAwBhI"}
@@ -458,6 +458,21 @@ function doResolveInstanceRecipe(node, components = [], tokenIndex) {
458
458
  return;
459
459
  processedNames.add(cleanName);
460
460
  const { renderPattern, visibilityBehavior } = computeSlotRender(kind, visible, prop, textContent, dependency);
461
+ // Audit Gap #7: explicit renderAs so consumers don't have to infer
462
+ // whether to pass `children`, a typed prop, or accept the design-owned
463
+ // subtree as-is. The visibilityBehavior already encodes this implicitly;
464
+ // renderAs surfaces it as a discriminated union for downstream tooling.
465
+ let renderAs;
466
+ if (prop) {
467
+ renderAs = { mode: "prop", name: prop };
468
+ }
469
+ else {
470
+ // No prop = the slot is design-owned (fixed visible subtree like an
471
+ // embedded icon, or a hidden node that doesn't render). Treat as
472
+ // a named slot rather than as React children — children is reserved
473
+ // for explicit children-policy slots on composite roots.
474
+ renderAs = { mode: "slot", name: cleanName };
475
+ }
461
476
  slotContract[cleanName] = {
462
477
  kind,
463
478
  visible,
@@ -465,7 +480,8 @@ function doResolveInstanceRecipe(node, components = [], tokenIndex) {
465
480
  textContent,
466
481
  dependency,
467
482
  renderPattern,
468
- visibilityBehavior
483
+ visibilityBehavior,
484
+ renderAs,
469
485
  };
470
486
  };
471
487
  textNodes.forEach(tn => {
@@ -1 +1 @@
1
- {"version":3,"file":"instance-resolver.js","sourceRoot":"","sources":["../../src/normalizer/instance-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instance-resolver.js","sourceRoot":"","sources":["../../src/normalizer/instance-resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-components.d.ts","sourceRoot":"","sources":["../../src/normalizer/normalize-components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAA8E,eAAe,EAAuF,MAAM,4BAA4B,CAAC;AACxP,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA8DnE;;GAEG;AACH,wBAAgB,mBAAmB,CAC/B,iBAAiB,EAAE,CAAC,gBAAgB,GAAG,eAAe,CAAC,EAAE,EACzD,SAAS,EAAE,kBAAkB,EAC7B,MAAM,GAAE,eAAe,EAAO,GAC/B,mBAAmB,EAAE,CA+BvB;AAGD,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,gBAAgB,GAAG,eAAe,EAC1C,SAAS,EAAE,kBAAkB,EAC7B,MAAM,EAAE,eAAe,EAAE,EACzB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACtC,mBAAmB,CA2ErB;AA0YD;;GAEG;AACH,wBAAgB,oCAAoC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYzF"}
1
+ {"version":3,"file":"normalize-components.d.ts","sourceRoot":"","sources":["../../src/normalizer/normalize-components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAA8E,eAAe,EAAuF,MAAM,4BAA4B,CAAC;AACxP,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAgEnE;;GAEG;AACH,wBAAgB,mBAAmB,CAC/B,iBAAiB,EAAE,CAAC,gBAAgB,GAAG,eAAe,CAAC,EAAE,EACzD,SAAS,EAAE,kBAAkB,EAC7B,MAAM,GAAE,eAAe,EAAO,GAC/B,mBAAmB,EAAE,CA+BvB;AAGD,wBAAgB,kBAAkB,CAC9B,MAAM,EAAE,gBAAgB,GAAG,eAAe,EAC1C,SAAS,EAAE,kBAAkB,EAC7B,MAAM,EAAE,eAAe,EAAE,EACzB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACtC,mBAAmB,CA0FrB;AAgZD;;GAEG;AACH,wBAAgB,oCAAoC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYzF"}
@@ -3,6 +3,8 @@ import { isIconComponent } from "../icons/enrich-icon-svgs.js";
3
3
  import { buildComparableSnapshot, diffVariantAgainstBaseline } from "./variant-diff.js";
4
4
  import { rgbToHex } from "./helpers.js";
5
5
  import { relinkTreeRecipes } from "./instance-resolver.js";
6
+ import { applyLeakedPropertyRename } from "./sanitize-property-names.js";
7
+ import { classifyGroupIntent } from "./classify-group-intent.js";
6
8
  function normalizeTokenId(id) {
7
9
  if (!id)
8
10
  return "";
@@ -122,7 +124,7 @@ export function normalizeComponent(entity, lookupMap, tokens, tokenIndex) {
122
124
  : isFormCtrl ? "formControl"
123
125
  : dependencies.length > 0 ? "composite"
124
126
  : "layout";
125
- return {
127
+ const component = {
126
128
  id: internalId,
127
129
  designToolNodeId: entity.id,
128
130
  kind: {
@@ -150,6 +152,18 @@ export function normalizeComponent(entity, lookupMap, tokens, tokenIndex) {
150
152
  dependencyInstances,
151
153
  reactions: entity.reactions,
152
154
  };
155
+ // Rewrites text-type property names whose comparable form matches a piece
156
+ // of layer text content — Figma's "default the property name to its text"
157
+ // behavior is the canonical source of `alexandraDavis?: string` leaks. The
158
+ // original Figma identity is preserved on `property.figmaName` for any
159
+ // round-trip tooling. See sanitize-property-names.ts for the heuristic.
160
+ applyLeakedPropertyRename(component);
161
+ // Tags container nodes that contain repeated identical-recipe siblings so
162
+ // the generator can distinguish a state-showcase (drop duplicates) from a
163
+ // genuine list (map over data) from an icon-button cluster (render each).
164
+ // Audit Gap #8: previously the generator emitted N literal copies blind.
165
+ classifyGroupIntent(component.layoutTree);
166
+ return component;
153
167
  }
154
168
  /**
155
169
  * Parses variant selection from Figma node name (e.g. "Primary=sm, Effect=Default")
@@ -233,12 +247,15 @@ function extractSizeMetadata(node, tokens, tokenIndex) {
233
247
  return undefined;
234
248
  const toDesignValue = (val, boundVar, axis) => {
235
249
  let resolvedToken;
250
+ let boundToken;
236
251
  if (boundVar?.id) {
237
252
  resolvedToken = resolveTokenById(boundVar.id, tokenIndex);
238
253
  }
239
254
  if (!resolvedToken && boundVar?.name) {
240
255
  resolvedToken = { name: boundVar.name, id: boundVar.id };
241
256
  }
257
+ if (boundVar?.id)
258
+ boundToken = resolvedToken;
242
259
  let mode = "fixed";
243
260
  if (node.layoutMode === "HORIZONTAL") {
244
261
  if (axis === "horizontal") {
@@ -276,7 +293,7 @@ function extractSizeMetadata(node, tokens, tokenIndex) {
276
293
  mode = "fixed";
277
294
  }
278
295
  }
279
- return { rawValue: val, resolvedToken, mode };
296
+ return { rawValue: val, resolvedToken, boundToken, mode };
280
297
  };
281
298
  return {
282
299
  width: toDesignValue(width, node.boundVariables?.width, "horizontal"),
@@ -289,16 +306,19 @@ function extractLayoutMetadata(node, tokens, tokenIndex) {
289
306
  return undefined;
290
307
  const toDesignValue = (val, boundVar) => {
291
308
  let resolvedToken;
309
+ let boundToken;
292
310
  if (boundVar?.id) {
293
311
  resolvedToken = resolveTokenById(boundVar.id, tokenIndex);
294
312
  }
295
313
  if (!resolvedToken && boundVar?.name) {
296
314
  resolvedToken = { name: boundVar.name, id: boundVar.id };
297
315
  }
316
+ if (boundVar?.id)
317
+ boundToken = resolvedToken;
298
318
  if (!resolvedToken) {
299
319
  resolvedToken = resolveTokenByValue(val, tokens);
300
320
  }
301
- return { rawValue: val, resolvedToken };
321
+ return { rawValue: val, resolvedToken, boundToken };
302
322
  };
303
323
  const isAutoGap = node.primaryAxisAlignItems === "SPACE_BETWEEN";
304
324
  const gapVal = isAutoGap
@@ -1 +1 @@
1
- {"version":3,"file":"normalize-components.js","sourceRoot":"","sources":["../../src/normalizer/normalize-components.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"normalize-components.js","sourceRoot":"","sources":["../../src/normalizer/normalize-components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { ComponentDefinition, ComponentProperty } from "@calibrate-ds/shared-types";
2
+ type LeakedRename = {
3
+ figmaName: string;
4
+ newName: string;
5
+ matchedAgainst: string;
6
+ };
7
+ /**
8
+ * Strict-mode rename: only fires when a text-type property's name normalizes
9
+ * to the same comparable form as the text content of one of its default
10
+ * value or a text node inside the component's layout tree. This catches
11
+ * the "Figma defaulted the property name to its placeholder text" leak
12
+ * without overriding designers who chose a sensible name.
13
+ *
14
+ * Returns the rename map so callers can patch propBinding / contentContract
15
+ * references in the layout tree consistently.
16
+ */
17
+ export declare function applyLeakedPropertyRename(component: ComponentDefinition): LeakedRename[];
18
+ /**
19
+ * Reports text-type properties whose names look suspect — multi-word names
20
+ * outside the known clean vocabulary. Used by `ptb doctor` to surface
21
+ * borderline cases that the strict guard didn't rewrite. Never mutates.
22
+ * Takes the properties array directly so it can be called against either a
23
+ * raw ComponentDefinition or a derived ComponentContext.
24
+ */
25
+ export declare function detectSuspectPropertyNames(properties: ComponentProperty[] | undefined): ComponentProperty[];
26
+ export {};
27
+ //# sourceMappingURL=sanitize-property-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize-property-names.d.ts","sourceRoot":"","sources":["../../src/normalizer/sanitize-property-names.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAkB,MAAM,4BAA4B,CAAC;AAgCzG,KAAK,YAAY,GAAG;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,mBAAmB,GAAG,YAAY,EAAE,CAoDxF;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,iBAAiB,EAAE,GAAG,SAAS,GAAG,iBAAiB,EAAE,CAyB3G"}
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Normalizes a name down to a comparison form: lowercase alphanumerics only.
3
+ * Used to decide whether a property name and a piece of text content are
4
+ * "the same thing" regardless of casing or punctuation:
5
+ * "Alexandra Davis" → "alexandradavis"
6
+ * "alexandraDavis" → "alexandradavis"
7
+ * "ALEXANDRA_DAVIS" → "alexandradavis"
8
+ */
9
+ function comparable(s) {
10
+ if (!s)
11
+ return "";
12
+ return s.toLowerCase().replace(/[^a-z0-9]+/g, "");
13
+ }
14
+ /**
15
+ * A small list of clean vocabulary tokens that are common, intentional
16
+ * developer-facing prop names. Names matching one of these as a substring are
17
+ * never flagged as suspect by the doctor warning. (The strict rename guard
18
+ * doesn't consult this list — it only looks for textContent matches.)
19
+ */
20
+ const CLEAN_VOCABULARY = new Set([
21
+ "text", "title", "subtitle", "label", "value", "name", "role", "id",
22
+ "description", "summary", "body", "caption", "header", "footer",
23
+ "placeholder", "helper", "error", "hint", "content", "message",
24
+ "icon", "image", "avatar", "logo",
25
+ "time", "date", "timestamp", "duration",
26
+ "count", "amount", "price", "quantity", "rating",
27
+ "primary", "secondary", "tertiary",
28
+ "left", "right", "leading", "trailing", "top", "bottom",
29
+ ]);
30
+ /**
31
+ * Strict-mode rename: only fires when a text-type property's name normalizes
32
+ * to the same comparable form as the text content of one of its default
33
+ * value or a text node inside the component's layout tree. This catches
34
+ * the "Figma defaulted the property name to its placeholder text" leak
35
+ * without overriding designers who chose a sensible name.
36
+ *
37
+ * Returns the rename map so callers can patch propBinding / contentContract
38
+ * references in the layout tree consistently.
39
+ */
40
+ export function applyLeakedPropertyRename(component) {
41
+ if (!component.properties || component.properties.length === 0)
42
+ return [];
43
+ const textContents = collectTextSignals(component.layoutTree);
44
+ const renames = [];
45
+ let textCounter = 1;
46
+ for (const prop of component.properties) {
47
+ if (prop.type !== "text")
48
+ continue;
49
+ const propKey = comparable(prop.name);
50
+ if (!propKey)
51
+ continue;
52
+ // Skip rename if the property name is built from clean-vocab words —
53
+ // a designer who names a property `title` with default text "Title"
54
+ // is being explicit, not leaking, and `title` is the right developer
55
+ // identifier. Same logic the doctor warning uses to avoid false flags.
56
+ const propWords = splitWords(prop.name).map(w => w.toLowerCase());
57
+ if (propWords.some(w => CLEAN_VOCABULARY.has(w)))
58
+ continue;
59
+ // Compare against the property's own default value first — the most
60
+ // common leak path is a Figma property literally named after its
61
+ // default text.
62
+ const defaultMatch = typeof prop.defaultValue === "string"
63
+ ? comparable(prop.defaultValue)
64
+ : "";
65
+ const layoutMatch = textContents.find(t => comparable(t) === propKey);
66
+ const matchedAgainst = defaultMatch && defaultMatch === propKey
67
+ ? prop.defaultValue
68
+ : layoutMatch;
69
+ if (!matchedAgainst)
70
+ continue;
71
+ const newName = `text${textCounter}`;
72
+ textCounter += 1;
73
+ renames.push({
74
+ figmaName: prop.name,
75
+ newName,
76
+ matchedAgainst,
77
+ });
78
+ prop.figmaName = prop.name;
79
+ prop.name = newName;
80
+ }
81
+ if (renames.length > 0 && component.layoutTree) {
82
+ const renameMap = new Map(renames.map(r => [comparable(r.figmaName), r.newName]));
83
+ rewriteLayoutPropBindings(component.layoutTree, renameMap);
84
+ }
85
+ return renames;
86
+ }
87
+ /**
88
+ * Reports text-type properties whose names look suspect — multi-word names
89
+ * outside the known clean vocabulary. Used by `ptb doctor` to surface
90
+ * borderline cases that the strict guard didn't rewrite. Never mutates.
91
+ * Takes the properties array directly so it can be called against either a
92
+ * raw ComponentDefinition or a derived ComponentContext.
93
+ */
94
+ export function detectSuspectPropertyNames(properties) {
95
+ if (!properties || properties.length === 0)
96
+ return [];
97
+ const suspects = [];
98
+ for (const prop of properties) {
99
+ if (prop.type !== "text")
100
+ continue;
101
+ if (prop.figmaName)
102
+ continue; // already renamed by the strict guard
103
+ const k = comparable(prop.name);
104
+ if (!k || k.length < 3)
105
+ continue;
106
+ // Built from any known-clean word? Then it's almost certainly intentional.
107
+ // We check word boundaries by splitting on camelCase / non-word breaks.
108
+ const words = splitWords(prop.name);
109
+ const usesCleanVocab = words.some(w => CLEAN_VOCABULARY.has(w.toLowerCase()));
110
+ if (usesCleanVocab)
111
+ continue;
112
+ // Multi-word names that don't intersect the clean vocab are the
113
+ // canonical leak shape. Single-word names (e.g. "Lender") are
114
+ // ambiguous and we leave them alone here.
115
+ if (words.length >= 2)
116
+ suspects.push(prop);
117
+ }
118
+ return suspects;
119
+ }
120
+ function collectTextSignals(tree) {
121
+ if (!tree)
122
+ return [];
123
+ const out = [];
124
+ const walk = (node) => {
125
+ if (node.role === "text" || node.type === "TEXT") {
126
+ if (typeof node.textContent === "string")
127
+ out.push(node.textContent);
128
+ if (typeof node.name === "string")
129
+ out.push(node.name);
130
+ }
131
+ for (const child of node.children ?? [])
132
+ walk(child);
133
+ };
134
+ walk(tree);
135
+ return out;
136
+ }
137
+ function rewriteLayoutPropBindings(tree, renameMap) {
138
+ const walk = (node) => {
139
+ const pb = node.propBinding;
140
+ if (pb && typeof pb.propName === "string") {
141
+ const replacement = renameMap.get(comparable(pb.propName));
142
+ if (replacement)
143
+ pb.propName = replacement;
144
+ }
145
+ const cc = node.contentContract;
146
+ if (cc && typeof cc.propName === "string") {
147
+ const replacement = renameMap.get(comparable(cc.propName));
148
+ if (replacement)
149
+ cc.propName = replacement;
150
+ }
151
+ for (const child of node.children ?? [])
152
+ walk(child);
153
+ };
154
+ walk(tree);
155
+ }
156
+ function splitWords(s) {
157
+ return s
158
+ .replace(/([a-z])([A-Z])/g, "$1 $2")
159
+ .replace(/[_\-]+/g, " ")
160
+ .split(/\s+/)
161
+ .filter(Boolean);
162
+ }
163
+ //# sourceMappingURL=sanitize-property-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize-property-names.js","sourceRoot":"","sources":["../../src/normalizer/sanitize-property-names.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate-component-prompt.d.ts","sourceRoot":"","sources":["../../src/prompt/generate-component-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAA8K,MAAM,4BAA4B,CAAC;AA+jBvQ;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,gBAAgB,EACzB,SAAS,GAAE,MAAM,GAAG,IAAW,GAChC,sBAAsB,CAujCxB"}
1
+ {"version":3,"file":"generate-component-prompt.d.ts","sourceRoot":"","sources":["../../src/prompt/generate-component-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAA8K,MAAM,4BAA4B,CAAC;AA+jBvQ;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,OAAO,EAAE,gBAAgB,EACzB,SAAS,GAAE,MAAM,GAAG,IAAW,GAChC,sBAAsB,CA0jCxB"}
@@ -755,7 +755,10 @@ export function generateComponentPrompt(context, framework = null) {
755
755
  }
756
756
  const addRequiredImport = (rawName, importName) => {
757
757
  const normalized = isIconComponent(rawName) ? normalizeIconDisplayName(rawName) : rawName;
758
- const compName = importName ?? normalized.split(/\s+/).map(p => p.charAt(0).toUpperCase() + p.slice(1)).join("");
758
+ // Split on whitespace AND hyphen/underscore so "btn-web" doesn't emit
759
+ // the invalid JS identifier "Btn-web" (audit Gap #9). Matches the
760
+ // split pattern used by every other PascalCase derivation in this file.
761
+ const compName = importName ?? normalized.split(/[\s\-_]+/).map(p => p.charAt(0).toUpperCase() + p.slice(1)).join("");
759
762
  if (seenImports.has(compName))
760
763
  return;
761
764
  seenImports.add(compName);
@@ -1040,7 +1043,7 @@ export function generateComponentPrompt(context, framework = null) {
1040
1043
  return depLower.includes(prefix) || prefix.includes(depLower);
1041
1044
  });
1042
1045
  const depPascal = matchedDep
1043
- ? matchedDep.name.split(/\s+/).map((w) => w.charAt(0).toUpperCase() + w.slice(1)).join("")
1046
+ ? matchedDep.name.split(/[\s\-_]+/).map((w) => w.charAt(0).toUpperCase() + w.slice(1)).join("")
1044
1047
  : "ChildComponent";
1045
1048
  lines.push(`- \`${propName}\`${defNote} → \`{${propName} !== false && <${depPascal} />}\``);
1046
1049
  }