@ikas/component-cli 1.4.0-beta.13 → 1.4.0-beta.130

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 (135) hide show
  1. package/dist/build-tools.d.ts +11 -0
  2. package/dist/build-tools.d.ts.map +1 -0
  3. package/dist/build-tools.js +11 -0
  4. package/dist/build-tools.js.map +1 -0
  5. package/dist/commands/add-sections-to-page.d.ts +3 -0
  6. package/dist/commands/add-sections-to-page.d.ts.map +1 -0
  7. package/dist/commands/add-sections-to-page.js +39 -0
  8. package/dist/commands/add-sections-to-page.js.map +1 -0
  9. package/dist/commands/add.d.ts.map +1 -1
  10. package/dist/commands/add.js +10 -1
  11. package/dist/commands/add.js.map +1 -1
  12. package/dist/commands/build.d.ts.map +1 -1
  13. package/dist/commands/build.js +5 -165
  14. package/dist/commands/build.js.map +1 -1
  15. package/dist/commands/config.d.ts +28 -0
  16. package/dist/commands/config.d.ts.map +1 -1
  17. package/dist/commands/config.js +737 -96
  18. package/dist/commands/config.js.map +1 -1
  19. package/dist/commands/create-design-tokens.d.ts +24 -0
  20. package/dist/commands/create-design-tokens.d.ts.map +1 -0
  21. package/dist/commands/create-design-tokens.js +327 -0
  22. package/dist/commands/create-design-tokens.js.map +1 -0
  23. package/dist/commands/create-global-variable.d.ts +3 -0
  24. package/dist/commands/create-global-variable.d.ts.map +1 -0
  25. package/dist/commands/create-global-variable.js +53 -0
  26. package/dist/commands/create-global-variable.js.map +1 -0
  27. package/dist/commands/create-page.d.ts +3 -0
  28. package/dist/commands/create-page.d.ts.map +1 -0
  29. package/dist/commands/create-page.js +31 -0
  30. package/dist/commands/create-page.js.map +1 -0
  31. package/dist/commands/delete-theme-globals.d.ts +4 -0
  32. package/dist/commands/delete-theme-globals.d.ts.map +1 -0
  33. package/dist/commands/delete-theme-globals.js +48 -0
  34. package/dist/commands/delete-theme-globals.js.map +1 -0
  35. package/dist/commands/dev.d.ts.map +1 -1
  36. package/dist/commands/dev.js +82 -12
  37. package/dist/commands/dev.js.map +1 -1
  38. package/dist/commands/get-component-props.d.ts +3 -0
  39. package/dist/commands/get-component-props.d.ts.map +1 -0
  40. package/dist/commands/get-component-props.js +32 -0
  41. package/dist/commands/get-component-props.js.map +1 -0
  42. package/dist/commands/get-page-by-type.d.ts +3 -0
  43. package/dist/commands/get-page-by-type.d.ts.map +1 -0
  44. package/dist/commands/get-page-by-type.js +25 -0
  45. package/dist/commands/get-page-by-type.js.map +1 -0
  46. package/dist/commands/get-section-values.d.ts +3 -0
  47. package/dist/commands/get-section-values.d.ts.map +1 -0
  48. package/dist/commands/get-section-values.js +39 -0
  49. package/dist/commands/get-section-values.js.map +1 -0
  50. package/dist/commands/list-entities.d.ts +3 -0
  51. package/dist/commands/list-entities.d.ts.map +1 -0
  52. package/dist/commands/list-entities.js +32 -0
  53. package/dist/commands/list-entities.js.map +1 -0
  54. package/dist/commands/list-page-sections.d.ts +3 -0
  55. package/dist/commands/list-page-sections.d.ts.map +1 -0
  56. package/dist/commands/list-page-sections.js +25 -0
  57. package/dist/commands/list-page-sections.js.map +1 -0
  58. package/dist/commands/list-theme-globals.d.ts +3 -0
  59. package/dist/commands/list-theme-globals.d.ts.map +1 -0
  60. package/dist/commands/list-theme-globals.js +22 -0
  61. package/dist/commands/list-theme-globals.js.map +1 -0
  62. package/dist/commands/publish-theme.d.ts +3 -0
  63. package/dist/commands/publish-theme.d.ts.map +1 -0
  64. package/dist/commands/publish-theme.js +29 -0
  65. package/dist/commands/publish-theme.js.map +1 -0
  66. package/dist/commands/publish.d.ts.map +1 -1
  67. package/dist/commands/publish.js +24 -2
  68. package/dist/commands/publish.js.map +1 -1
  69. package/dist/commands/search-products.d.ts +3 -0
  70. package/dist/commands/search-products.d.ts.map +1 -0
  71. package/dist/commands/search-products.js +40 -0
  72. package/dist/commands/search-products.js.map +1 -0
  73. package/dist/commands/update-global-variable.d.ts +3 -0
  74. package/dist/commands/update-global-variable.d.ts.map +1 -0
  75. package/dist/commands/update-global-variable.js +47 -0
  76. package/dist/commands/update-global-variable.js.map +1 -0
  77. package/dist/commands/update-page-sections.d.ts +3 -0
  78. package/dist/commands/update-page-sections.d.ts.map +1 -0
  79. package/dist/commands/update-page-sections.js +39 -0
  80. package/dist/commands/update-page-sections.js.map +1 -0
  81. package/dist/commands/update-section-prop.d.ts +3 -0
  82. package/dist/commands/update-section-prop.d.ts.map +1 -0
  83. package/dist/commands/update-section-prop.js +75 -0
  84. package/dist/commands/update-section-prop.js.map +1 -0
  85. package/dist/commands/upload-image.d.ts +3 -0
  86. package/dist/commands/upload-image.d.ts.map +1 -0
  87. package/dist/commands/upload-image.js +38 -0
  88. package/dist/commands/upload-image.js.map +1 -0
  89. package/dist/commands/upload-images.d.ts +3 -0
  90. package/dist/commands/upload-images.d.ts.map +1 -0
  91. package/dist/commands/upload-images.js +48 -0
  92. package/dist/commands/upload-images.js.map +1 -0
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +48 -1
  95. package/dist/index.js.map +1 -1
  96. package/dist/types.d.ts +18 -1
  97. package/dist/types.d.ts.map +1 -1
  98. package/dist/utils/compile.d.ts +4 -1
  99. package/dist/utils/compile.d.ts.map +1 -1
  100. package/dist/utils/compile.js +630 -102
  101. package/dist/utils/compile.js.map +1 -1
  102. package/dist/utils/component-helpers.d.ts +70 -3
  103. package/dist/utils/component-helpers.d.ts.map +1 -1
  104. package/dist/utils/component-helpers.js +195 -23
  105. package/dist/utils/component-helpers.js.map +1 -1
  106. package/dist/utils/editor-action-client.d.ts +1 -1
  107. package/dist/utils/editor-action-client.d.ts.map +1 -1
  108. package/dist/utils/editor-action-client.js +23 -8
  109. package/dist/utils/editor-action-client.js.map +1 -1
  110. package/dist/utils/forbid-deep-imports.d.ts +3 -0
  111. package/dist/utils/forbid-deep-imports.d.ts.map +1 -0
  112. package/dist/utils/forbid-deep-imports.js +54 -0
  113. package/dist/utils/forbid-deep-imports.js.map +1 -0
  114. package/dist/utils/forbid-external-packages.d.ts +16 -0
  115. package/dist/utils/forbid-external-packages.d.ts.map +1 -0
  116. package/dist/utils/forbid-external-packages.js +89 -0
  117. package/dist/utils/forbid-external-packages.js.map +1 -0
  118. package/dist/utils/load-image.d.ts +16 -0
  119. package/dist/utils/load-image.d.ts.map +1 -0
  120. package/dist/utils/load-image.js +50 -0
  121. package/dist/utils/load-image.js.map +1 -0
  122. package/dist/utils/websocket-server.d.ts +13 -4
  123. package/dist/utils/websocket-server.d.ts.map +1 -1
  124. package/dist/utils/websocket-server.js +1 -1
  125. package/dist/utils/websocket-server.js.map +1 -1
  126. package/package.json +13 -1
  127. package/templates/add/section.css +11 -0
  128. package/dist/commands/create.d.ts +0 -9
  129. package/dist/commands/create.d.ts.map +0 -1
  130. package/dist/commands/create.js +0 -9
  131. package/dist/commands/create.js.map +0 -1
  132. package/dist/commands/proxy.d.ts +0 -39
  133. package/dist/commands/proxy.d.ts.map +0 -1
  134. package/dist/commands/proxy.js +0 -212
  135. package/dist/commands/proxy.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/utils/compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/utils/compile.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ComponentDefinition, ComponentProp, ComponentPropGroup } from "../types.js";
1
+ import type { ComponentDefinition, ComponentProp, ComponentPropGroup, ThemeSettingMeta } from "../types.js";
2
2
  /**
3
3
  * Generate an 8-character random alphanumeric project ID (lowercase + digits).
4
4
  * Used to namespace component IDs across independent CLI projects.
@@ -14,6 +14,42 @@ export declare function generateUniqueId(): string;
14
14
  * Format: `${projectId}-${randomId}` — opaque suffix, no name leakage.
15
15
  */
16
16
  export declare function generateComponentId(projectId: string): string;
17
+ /**
18
+ * The editor's publish-id machinery (rewrite-asset-ids.ts, MIN_ROOT_ID_LENGTH = 6)
19
+ * treats a leading run of >=6 alphanumeric characters before a `-`/`_` separator as
20
+ * a strippable project prefix, and republish stability (insert-vs-version matching
21
+ * by source suffix) depends on every projectId satisfying that shape. A projectId
22
+ * that is shorter, or that contains a separator/non-alphanumeric character, shifts
23
+ * the prefix/suffix boundary and silently re-opens the duplicate-element bug.
24
+ * `generateProjectId()` always satisfies this; the check exists because
25
+ * ikas.config.json is hand-editable and parsed without a schema.
26
+ */
27
+ export declare const PROJECT_ID_PATTERN: RegExp;
28
+ export declare function isValidProjectId(projectId: string): boolean;
29
+ /**
30
+ * A component id is publishable when the editor's prefix-strip machinery parses it
31
+ * unambiguously: either a legacy atomic id (alphanumeric only, no separators) or a
32
+ * `<projectId>-<suffix>` form whose PREFIX meets the same >=6 floor as PROJECT_ID_PATTERN.
33
+ * The prefix must stay >=6 alphanumeric with NO separator (the editor strips exactly one
34
+ * leading `>=MIN_ROOT_ID_LENGTH` run before the first `-`/`_`); a short/separator-bearing
35
+ * prefix shifts that boundary and re-opens the duplicate-element bug.
36
+ *
37
+ * The SUFFIX, however, may be multi-segment (`<projectId>-hero-slider`,
38
+ * `<projectId>-product-detail-add-to-cart`): older CLI configs used human-readable
39
+ * suffixes, and those ids are already placed on published themes so they cannot be
40
+ * renamed. The editor's `normalizeSourceElementId` canonicalizes every suffix separator
41
+ * to `_`, so a hyphenated local suffix and its underscore-sterilized published form
42
+ * normalize to the same republish-invariant key — multi-segment suffixes match stably.
43
+ * Each segment must still be a non-empty alphanumeric run (no trailing/doubled separators).
44
+ */
45
+ export declare const COMPONENT_ID_PATTERN: RegExp;
46
+ export declare function findInvalidComponentIds(components: Array<{
47
+ id: string;
48
+ name?: string;
49
+ }>): Array<{
50
+ id: string;
51
+ name?: string;
52
+ }>;
17
53
  /**
18
54
  * Validate that every entry in `input` is the id of a component currently in `components`.
19
55
  * Returns the list of unknown entries (empty array means all valid).
@@ -27,8 +63,21 @@ export declare function validateFilteredComponentIds(input: string[], components
27
63
  }>): {
28
64
  unknown: string[];
29
65
  };
30
- export declare const PROP_TYPES: readonly ["TEXT", "RICH_TEXT", "NUMBER", "NUMBER_RANGE", "BOOLEAN", "IMAGE", "IMAGE_LIST", "VIDEO", "DATE", "LINK", "LIST_OF_LINK", "COLOR", "PRODUCT", "PRODUCT_LIST", "PRODUCT_ATTRIBUTE", "PRODUCT_ATTRIBUTE_LIST", "CATEGORY", "CATEGORY_LIST", "BRAND", "BRAND_LIST", "BLOG", "BLOG_LIST", "BLOG_CATEGORY", "BLOG_CATEGORY_LIST", "TYPE", "ENUM", "COMPONENT", "COMPONENT_LIST"];
66
+ export declare const PROP_TYPES: readonly ["TEXT", "RICH_TEXT", "NUMBER", "NUMBER_RANGE", "BOOLEAN", "IMAGE", "IMAGE_LIST", "VIDEO", "SVG", "SVG_LIST", "DATE", "LINK", "LIST_OF_LINK", "COLOR", "PRODUCT", "PRODUCT_LIST", "PRODUCT_ATTRIBUTE", "PRODUCT_ATTRIBUTE_LIST", "CATEGORY", "CATEGORY_LIST", "BRAND", "BRAND_LIST", "BLOG", "BLOG_LIST", "BLOG_CATEGORY", "BLOG_CATEGORY_LIST", "TYPE", "ENUM", "COMPONENT", "COMPONENT_LIST"];
31
67
  export declare const PROP_TYPE_TO_TS: Record<string, string>;
68
+ /**
69
+ * Pattern-element ("Font Style" / typography) enum sentinel. The editor builds
70
+ * this synthetic enum at theme time (createPatternElementEnum). Mirror of
71
+ * PATTERN_ELEMENT_ENUM_ID in @ikas/editor-models — kept local to avoid an
72
+ * editor-models dependency in the CLI.
73
+ */
74
+ export declare const PATTERN_ELEMENT_ENUM_ID = "__patternElementEnum__";
75
+ /**
76
+ * Built-in enum type ids do not need to exist in config.customTypes: @ikas/*
77
+ * enums ship with the storefront models, and the pattern-element sentinel is
78
+ * resolved by the editor at theme time. Author-defined enums are NOT built-in.
79
+ */
80
+ export declare function isBuiltInEnumTypeId(enumTypeId: string): boolean;
32
81
  export declare function toKebabCase(str: string): string;
33
82
  export declare function toPascalCase(str: string): string;
34
83
  export declare function generateTypesFile(componentName: string, props: ComponentProp[], type?: "component" | "section", editorTypes?: Array<{
@@ -74,7 +123,25 @@ export declare function generateGlobalTypesFile(editorTypes?: Array<{
74
123
  * Callers should compute this from `config.components[*].props[*].enumTypeId`
75
124
  * so unused enums are excluded from `global-types.ts`.
76
125
  */
77
- usedEnumIds?: Set<string> | null): string;
126
+ usedEnumIds?: Set<string> | null, themeSettings?: Array<ThemeSettingMeta> | null): string;
127
+ /**
128
+ * Decide whether freshly generated `global-types.ts` content should overwrite
129
+ * the existing file on disk.
130
+ *
131
+ * Guards the dev-server startup race: before the editor connects, the theme
132
+ * settings cache is empty, so the generated content omits the theme-globals
133
+ * block (`themeValue`, `ThemeSettingName`). Writing it would clobber the rich
134
+ * file left from the previous session and break every component that imports
135
+ * those exports until the editor reconnects and re-syncs. While theme settings
136
+ * are not yet cached, preserve an existing theme-globals block instead of
137
+ * stubbing it out — the editor's `onSyncTypes` is the authoritative writer once
138
+ * connected.
139
+ *
140
+ * @param existing current file content, or null if the file is absent
141
+ * @param next freshly generated content
142
+ * @param hasThemeSettingsCached whether the editor has synced theme settings yet
143
+ */
144
+ export declare function shouldWriteGlobalTypes(existing: string | null, next: string, hasThemeSettingsCached: boolean): boolean;
78
145
  export declare function generateComponentFile(componentName: string, props: ComponentProp[], type?: "component" | "section"): string;
79
146
  export declare function generateStylesFile(componentName: string, type?: "component" | "section"): string;
80
147
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"component-helpers.d.ts","sourceRoot":"","sources":["../../src/utils/component-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-helpers.d.ts","sourceRoot":"","sources":["../../src/utils/component-helpers.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,40 @@ export function generateUniqueId() {
35
35
  export function generateComponentId(projectId) {
36
36
  return `${projectId}-${generateUniqueId()}`;
37
37
  }
38
+ /**
39
+ * The editor's publish-id machinery (rewrite-asset-ids.ts, MIN_ROOT_ID_LENGTH = 6)
40
+ * treats a leading run of >=6 alphanumeric characters before a `-`/`_` separator as
41
+ * a strippable project prefix, and republish stability (insert-vs-version matching
42
+ * by source suffix) depends on every projectId satisfying that shape. A projectId
43
+ * that is shorter, or that contains a separator/non-alphanumeric character, shifts
44
+ * the prefix/suffix boundary and silently re-opens the duplicate-element bug.
45
+ * `generateProjectId()` always satisfies this; the check exists because
46
+ * ikas.config.json is hand-editable and parsed without a schema.
47
+ */
48
+ export const PROJECT_ID_PATTERN = /^[A-Za-z0-9]{6,}$/;
49
+ export function isValidProjectId(projectId) {
50
+ return PROJECT_ID_PATTERN.test(projectId);
51
+ }
52
+ /**
53
+ * A component id is publishable when the editor's prefix-strip machinery parses it
54
+ * unambiguously: either a legacy atomic id (alphanumeric only, no separators) or a
55
+ * `<projectId>-<suffix>` form whose PREFIX meets the same >=6 floor as PROJECT_ID_PATTERN.
56
+ * The prefix must stay >=6 alphanumeric with NO separator (the editor strips exactly one
57
+ * leading `>=MIN_ROOT_ID_LENGTH` run before the first `-`/`_`); a short/separator-bearing
58
+ * prefix shifts that boundary and re-opens the duplicate-element bug.
59
+ *
60
+ * The SUFFIX, however, may be multi-segment (`<projectId>-hero-slider`,
61
+ * `<projectId>-product-detail-add-to-cart`): older CLI configs used human-readable
62
+ * suffixes, and those ids are already placed on published themes so they cannot be
63
+ * renamed. The editor's `normalizeSourceElementId` canonicalizes every suffix separator
64
+ * to `_`, so a hyphenated local suffix and its underscore-sterilized published form
65
+ * normalize to the same republish-invariant key — multi-segment suffixes match stably.
66
+ * Each segment must still be a non-empty alphanumeric run (no trailing/doubled separators).
67
+ */
68
+ export const COMPONENT_ID_PATTERN = /^(?:[A-Za-z0-9]+|[A-Za-z0-9]{6,}(?:[-_][A-Za-z0-9]+)+)$/;
69
+ export function findInvalidComponentIds(components) {
70
+ return components.filter((c) => !COMPONENT_ID_PATTERN.test(c.id));
71
+ }
38
72
  /**
39
73
  * Validate that every entry in `input` is the id of a component currently in `components`.
40
74
  * Returns the list of unknown entries (empty array means all valid).
@@ -56,6 +90,8 @@ export const PROP_TYPES = [
56
90
  "IMAGE",
57
91
  "IMAGE_LIST",
58
92
  "VIDEO",
93
+ "SVG",
94
+ "SVG_LIST",
59
95
  "DATE",
60
96
  "LINK",
61
97
  "LIST_OF_LINK",
@@ -86,6 +122,8 @@ export const PROP_TYPE_TO_TS = {
86
122
  IMAGE: "IkasImage | null",
87
123
  IMAGE_LIST: "IkasImageList",
88
124
  VIDEO: "IkasVideo | null",
125
+ SVG: "string",
126
+ SVG_LIST: "string[]",
89
127
  DATE: "Date | string",
90
128
  LINK: "IkasNavigationLink | null",
91
129
  LIST_OF_LINK: "IkasNavigationLinkList",
@@ -107,6 +145,21 @@ export const PROP_TYPE_TO_TS = {
107
145
  COMPONENT: "any",
108
146
  COMPONENT_LIST: "any",
109
147
  };
148
+ /**
149
+ * Pattern-element ("Font Style" / typography) enum sentinel. The editor builds
150
+ * this synthetic enum at theme time (createPatternElementEnum). Mirror of
151
+ * PATTERN_ELEMENT_ENUM_ID in @ikas/editor-models — kept local to avoid an
152
+ * editor-models dependency in the CLI.
153
+ */
154
+ export const PATTERN_ELEMENT_ENUM_ID = "__patternElementEnum__";
155
+ /**
156
+ * Built-in enum type ids do not need to exist in config.customTypes: @ikas/*
157
+ * enums ship with the storefront models, and the pattern-element sentinel is
158
+ * resolved by the editor at theme time. Author-defined enums are NOT built-in.
159
+ */
160
+ export function isBuiltInEnumTypeId(enumTypeId) {
161
+ return (enumTypeId.startsWith("@ikas/") || enumTypeId === PATTERN_ELEMENT_ENUM_ID);
162
+ }
110
163
  export function toKebabCase(str) {
111
164
  return str
112
165
  .replace(/([a-z])([A-Z])/g, "$1-$2")
@@ -145,14 +198,16 @@ function resolveTypeId(typeId) {
145
198
  */
146
199
  function resolveCustomEnumTypeName(enumTypeId, editorTypes, customTypes) {
147
200
  if (editorTypes) {
148
- const editorType = editorTypes.find(t => t.id === enumTypeId);
149
- if (editorType?.enumOptions && Object.keys(editorType.enumOptions).length > 0) {
201
+ const editorType = editorTypes.find((t) => t.id === enumTypeId);
202
+ if (editorType?.enumOptions &&
203
+ Object.keys(editorType.enumOptions).length > 0) {
150
204
  return toPascalCase(editorType.name);
151
205
  }
152
206
  }
153
207
  if (customTypes) {
154
- const customType = customTypes.find(t => t.id === enumTypeId);
155
- if (customType?.enumOptions && Object.keys(customType.enumOptions).length > 0) {
208
+ const customType = customTypes.find((t) => t.id === enumTypeId);
209
+ if (customType?.enumOptions &&
210
+ Object.keys(customType.enumOptions).length > 0) {
156
211
  return toPascalCase(customType.name);
157
212
  }
158
213
  }
@@ -172,7 +227,9 @@ export function generateTypesFile(componentName, props, type, editorTypes, custo
172
227
  typeIdResolved.set(prop.name, resolved.isArray ? `${resolved.typeName}[]` : resolved.typeName);
173
228
  }
174
229
  }
175
- else if (prop.type === "ENUM" && prop.enumTypeId) {
230
+ else if (prop.type === "ENUM" &&
231
+ prop.enumTypeId &&
232
+ prop.enumTypeId !== PATTERN_ELEMENT_ENUM_ID) {
176
233
  const resolved = resolveTypeId(prop.enumTypeId);
177
234
  if (resolved) {
178
235
  // Built-in enum — import from @ikas/bp-storefront
@@ -189,6 +246,9 @@ export function generateTypesFile(componentName, props, type, editorTypes, custo
189
246
  }
190
247
  }
191
248
  else {
249
+ // Non-ENUM props, plus the font-style (pattern-element) sentinel whose
250
+ // runtime value is a plain pattern-element id string → PROP_TYPE_TO_TS
251
+ // (PROP_TYPE_TO_TS["ENUM"] === "string"), no import emitted.
192
252
  const tsType = PROP_TYPE_TO_TS[prop.type];
193
253
  if (tsType?.includes("Ikas")) {
194
254
  const matches = tsType.match(/Ikas\w+/g);
@@ -294,6 +354,73 @@ export function collectUsedCustomTypeIds(customTypes, components) {
294
354
  }
295
355
  return used;
296
356
  }
357
+ /** Map a global-variable kind to a TS type. Primitives narrowed; complex kinds stay `any`. */
358
+ function themeSettingTsType(type) {
359
+ switch (type) {
360
+ case "NUMBER":
361
+ return "number";
362
+ case "BOOLEAN":
363
+ return "boolean";
364
+ case "TEXT":
365
+ case "RICH_TEXT":
366
+ case "COLOR":
367
+ return "string";
368
+ default:
369
+ return "any"; // IMAGE, BORDER, SHADOW — object shapes can drift from runtime
370
+ }
371
+ }
372
+ /**
373
+ * Import line for the typed theme-globals wrapper. Must sit at the top of the generated
374
+ * file (after the header). Emitted only when there are theme globals.
375
+ *
376
+ * A module augmentation can't deliver key-safety here: the runtime `getThemeSettingValue`
377
+ * is declared `(name: string): any`, so an added narrower overload never wins resolution —
378
+ * unknown keys still match `string` and return `any`. A generated wrapper whose parameter
379
+ * is `ThemeSettingName` (no `string` overload) does reject unknown keys and narrow the value.
380
+ */
381
+ const THEME_GLOBALS_IMPORT = `import { getThemeSettingValue as _getThemeSettingValueRaw } from "@ikas/bp-storefront";\n`;
382
+ /**
383
+ * Sentinel that marks a generated `global-types.ts` as containing the theme-globals block.
384
+ * This is the exported symbol authors import (stable public API), and it must stay a substring
385
+ * of what {@link generateThemeGlobalsBlock} emits — keep the two in sync if that output changes.
386
+ */
387
+ const THEME_GLOBALS_MARKER = "export type ThemeSettingName";
388
+ /**
389
+ * Build the theme-globals block for `src/global-types.ts`: the key union, a value-type map,
390
+ * and a type-safe `themeValue` wrapper (authors import it from `./global-types`). The wrapper
391
+ * is deliberately named differently from the SDK's `getThemeSettingValue` so authors can't
392
+ * accidentally import the untyped SDK version and lose key-safety (no shadowing).
393
+ * Returns "" when there are no globals (an empty union would resolve to `never`). The import
394
+ * the wrapper needs is emitted separately via {@link THEME_GLOBALS_IMPORT}.
395
+ */
396
+ function generateThemeGlobalsBlock(themeSettings) {
397
+ if (!themeSettings || themeSettings.length === 0)
398
+ return "";
399
+ const sorted = [...themeSettings].sort((a, b) => a.name.localeCompare(b.name));
400
+ const unionLines = sorted
401
+ .map((s) => {
402
+ // Escape the JSDoc comment terminator to avoid prematurely closing the
403
+ // generated `/** ... */` block when a displayName contains `*/`.
404
+ const label = String(s.displayName).replace(/\*\//g, "*\\/");
405
+ return ` /** ${label} (${s.type}) */\n | ${JSON.stringify(s.name)}`;
406
+ })
407
+ .join("\n");
408
+ const mapLines = sorted
409
+ .map((s) => ` ${JSON.stringify(s.name)}: ${themeSettingTsType(s.type)};`)
410
+ .join("\n");
411
+ return (`\n/** Stable keys of theme global variables defined in the editor's "Styles" panel. */\n` +
412
+ `export type ThemeSettingName =\n${unionLines};\n\n` +
413
+ `/** Narrowed value type per global key (primitives only; complex kinds are \`any\`). */\n` +
414
+ `type ThemeSettingValueMap = {\n${mapLines}\n};\n\n` +
415
+ `/**\n` +
416
+ ` * Type-safe theme global accessor — only accepts keys declared in the editor's Styles panel.\n` +
417
+ ` * Import this from \`./global-types\`, not \`getThemeSettingValue\` from \`@ikas/bp-storefront\`\n` +
418
+ ` * (that one is untyped: it accepts any string and returns \`any\`).\n` +
419
+ ` */\n` +
420
+ `export function themeValue<K extends ThemeSettingName>(name: K): ThemeSettingValueMap[K] {\n` +
421
+ ` return _getThemeSettingValueRaw(name) as ThemeSettingValueMap[K];\n` +
422
+ `}\n`);
423
+ }
297
424
  /**
298
425
  * Generate the content for `src/global-types.ts`.
299
426
  * Collects all custom enum types from editorTypes (preferred) or customTypes (fallback)
@@ -307,7 +434,7 @@ export function generateGlobalTypesFile(editorTypes, customTypes,
307
434
  * Callers should compute this from `config.components[*].props[*].enumTypeId`
308
435
  * so unused enums are excluded from `global-types.ts`.
309
436
  */
310
- usedEnumIds) {
437
+ usedEnumIds, themeSettings) {
311
438
  const header = `// Auto-generated global type definitions for ikas code components.\n// This file is regenerated automatically — do not edit manually.\n`;
312
439
  // Collect all custom enum types with their options
313
440
  // Use a Map keyed by type ID to deduplicate
@@ -316,8 +443,8 @@ usedEnumIds) {
316
443
  if (editorTypes) {
317
444
  for (const t of editorTypes) {
318
445
  if (t.enumOptions && Object.keys(t.enumOptions).length > 0) {
319
- // Skip built-in types
320
- if (t.id.startsWith("@ikas/"))
446
+ // Skip built-in types (@ikas/* and the pattern-element font-style sentinel)
447
+ if (isBuiltInEnumTypeId(t.id))
321
448
  continue;
322
449
  if (usedEnumIds && !usedEnumIds.has(t.id))
323
450
  continue;
@@ -335,7 +462,7 @@ usedEnumIds) {
335
462
  const id = t.id;
336
463
  if (enumTypes.has(id))
337
464
  continue;
338
- if (id.startsWith("@ikas/"))
465
+ if (isBuiltInEnumTypeId(id))
339
466
  continue;
340
467
  if (usedEnumIds && !usedEnumIds.has(id))
341
468
  continue;
@@ -348,17 +475,54 @@ usedEnumIds) {
348
475
  }
349
476
  }
350
477
  }
478
+ const themeBlock = generateThemeGlobalsBlock(themeSettings);
479
+ // The wrapper's runtime import must sit at the top of the file (after the header).
480
+ const themeImport = themeBlock ? THEME_GLOBALS_IMPORT : "";
351
481
  if (enumTypes.size === 0) {
352
- return `${header}// Custom enum types from the editor will appear here.\n\nexport {};\n`;
482
+ if (!themeBlock) {
483
+ return `${header}// Custom enum types from the editor will appear here.\n\nexport {};\n`;
484
+ }
485
+ return `${header}${themeImport}${themeBlock}`;
353
486
  }
354
487
  // Sort by type name for stable output
355
488
  const sorted = Array.from(enumTypes.values()).sort((a, b) => a.name.localeCompare(b.name));
356
- let content = `${header}\n`;
489
+ let content = `${header}${themeImport}\n`;
357
490
  for (const enumType of sorted) {
358
- const unionType = enumType.options.map(v => `"${v}"`).join(" | ");
491
+ const unionType = enumType.options.map((v) => `"${v}"`).join(" | ");
359
492
  content += `/** Enum type: ${enumType.id} */\nexport type ${enumType.name} = ${unionType};\n`;
360
493
  }
361
- return content;
494
+ return `${content}${themeBlock}`;
495
+ }
496
+ /**
497
+ * Decide whether freshly generated `global-types.ts` content should overwrite
498
+ * the existing file on disk.
499
+ *
500
+ * Guards the dev-server startup race: before the editor connects, the theme
501
+ * settings cache is empty, so the generated content omits the theme-globals
502
+ * block (`themeValue`, `ThemeSettingName`). Writing it would clobber the rich
503
+ * file left from the previous session and break every component that imports
504
+ * those exports until the editor reconnects and re-syncs. While theme settings
505
+ * are not yet cached, preserve an existing theme-globals block instead of
506
+ * stubbing it out — the editor's `onSyncTypes` is the authoritative writer once
507
+ * connected.
508
+ *
509
+ * @param existing current file content, or null if the file is absent
510
+ * @param next freshly generated content
511
+ * @param hasThemeSettingsCached whether the editor has synced theme settings yet
512
+ */
513
+ export function shouldWriteGlobalTypes(existing, next, hasThemeSettingsCached) {
514
+ // No file yet — always write so imports resolve.
515
+ if (existing === null)
516
+ return true;
517
+ // Identical content — skip to avoid file-watcher loops.
518
+ if (existing === next)
519
+ return false;
520
+ // Editor has synced theme settings — it's authoritative, write freely.
521
+ if (hasThemeSettingsCached)
522
+ return true;
523
+ // Not synced yet: write unless we'd drop an existing theme-globals block for a stub.
524
+ return (!existing.includes(THEME_GLOBALS_MARKER) ||
525
+ next.includes(THEME_GLOBALS_MARKER));
362
526
  }
363
527
  export function generateComponentFile(componentName, props, type) {
364
528
  const propsDestructure = props.map((p) => p.name).join(", ");
@@ -404,8 +568,8 @@ export function buildPropGroupHierarchy(componentId, propGroups, props) {
404
568
  for (const group of propGroups) {
405
569
  const groupGlobalId = `${componentId}_pg_${group.id}`;
406
570
  // Collect props assigned to this group
407
- const groupProps = props.filter(p => p.groupId === group.id);
408
- const propChildren = groupProps.map(p => ({
571
+ const groupProps = props.filter((p) => p.groupId === group.id);
572
+ const propChildren = groupProps.map((p) => ({
409
573
  id: `${componentId}_pgp_${p.id}`,
410
574
  propId: p.id,
411
575
  }));
@@ -415,8 +579,8 @@ export function buildPropGroupHierarchy(componentId, propGroups, props) {
415
579
  for (const child of group.children) {
416
580
  const childGlobalId = `${componentId}_pg_${child.id}`;
417
581
  // Collect props assigned to this child group
418
- const childProps = props.filter(p => p.groupId === child.id);
419
- const childPropChildren = childProps.map(p => ({
582
+ const childProps = props.filter((p) => p.groupId === child.id);
583
+ const childPropChildren = childProps.map((p) => ({
420
584
  id: `${componentId}_pgp_${p.id}`,
421
585
  propId: p.id,
422
586
  }));
@@ -424,7 +588,9 @@ export function buildPropGroupHierarchy(componentId, propGroups, props) {
424
588
  id: childGlobalId,
425
589
  name: child.name,
426
590
  ...(child.description ? { description: child.description } : {}),
427
- ...(childPropChildren.length > 0 ? { children: childPropChildren } : {}),
591
+ ...(childPropChildren.length > 0
592
+ ? { children: childPropChildren }
593
+ : {}),
428
594
  });
429
595
  }
430
596
  }
@@ -524,7 +690,9 @@ export function movePropGroupInTree(propGroups, propGroupId, parentGroupId, inde
524
690
  const found = findPropGroup(propGroups, propGroupId);
525
691
  if (!found)
526
692
  throw new Error(`Prop group "${propGroupId}" not found`);
527
- if (parentGroupId && found.group.children && found.group.children.length > 0) {
693
+ if (parentGroupId &&
694
+ found.group.children &&
695
+ found.group.children.length > 0) {
528
696
  throw new Error(`Cannot nest "${propGroupId}": it already has child groups`);
529
697
  }
530
698
  if (parentGroupId) {
@@ -538,10 +706,10 @@ export function movePropGroupInTree(propGroups, propGroupId, parentGroupId, inde
538
706
  }
539
707
  let roots = propGroups;
540
708
  if (found.parent) {
541
- found.parent.children = (found.parent.children || []).filter(c => c.id !== propGroupId);
709
+ found.parent.children = (found.parent.children || []).filter((c) => c.id !== propGroupId);
542
710
  }
543
711
  else {
544
- roots = roots.filter(g => g.id !== propGroupId);
712
+ roots = roots.filter((g) => g.id !== propGroupId);
545
713
  }
546
714
  if (parentGroupId) {
547
715
  const target = findPropGroup(roots, parentGroupId);
@@ -549,13 +717,17 @@ export function movePropGroupInTree(propGroups, propGroupId, parentGroupId, inde
549
717
  throw new Error(`Target parent group "${parentGroupId}" not found after removal`);
550
718
  if (!target.group.children)
551
719
  target.group.children = [];
552
- const insertAt = typeof index === "number" && index >= 0 && index <= target.group.children.length
720
+ const insertAt = typeof index === "number" &&
721
+ index >= 0 &&
722
+ index <= target.group.children.length
553
723
  ? index
554
724
  : target.group.children.length;
555
725
  target.group.children.splice(insertAt, 0, found.group);
556
726
  }
557
727
  else {
558
- const insertAt = typeof index === "number" && index >= 0 && index <= roots.length ? index : roots.length;
728
+ const insertAt = typeof index === "number" && index >= 0 && index <= roots.length
729
+ ? index
730
+ : roots.length;
559
731
  roots.splice(insertAt, 0, found.group);
560
732
  }
561
733
  return roots;