@widgentic/designer 0.8.0 → 0.11.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.
Files changed (58) hide show
  1. package/README.md +2 -1
  2. package/dist/browser/widgentic-designer.js +100 -97
  3. package/dist/browser/widgentic-designer.js.map +4 -4
  4. package/dist/browser.d.ts.map +1 -1
  5. package/dist/browser.js +2 -1
  6. package/dist/browser.js.map +1 -1
  7. package/dist/dom.d.ts +5 -0
  8. package/dist/dom.d.ts.map +1 -1
  9. package/dist/dom.js +18 -0
  10. package/dist/dom.js.map +1 -1
  11. package/dist/element.d.ts +9 -0
  12. package/dist/element.d.ts.map +1 -1
  13. package/dist/element.js +55 -0
  14. package/dist/element.js.map +1 -1
  15. package/dist/index.d.ts +7 -5
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +5 -4
  18. package/dist/index.js.map +1 -1
  19. package/dist/io.d.ts +8 -3
  20. package/dist/io.d.ts.map +1 -1
  21. package/dist/io.js +38 -8
  22. package/dist/io.js.map +1 -1
  23. package/dist/panels.d.ts.map +1 -1
  24. package/dist/panels.js +17 -54
  25. package/dist/panels.js.map +1 -1
  26. package/dist/preview.d.ts.map +1 -1
  27. package/dist/preview.js +23 -6
  28. package/dist/preview.js.map +1 -1
  29. package/dist/schema-designer.d.ts.map +1 -1
  30. package/dist/schema-designer.js +15 -7
  31. package/dist/schema-designer.js.map +1 -1
  32. package/dist/settings-designer.d.ts +37 -0
  33. package/dist/settings-designer.d.ts.map +1 -0
  34. package/dist/settings-designer.js +224 -0
  35. package/dist/settings-designer.js.map +1 -0
  36. package/dist/shell.d.ts +24 -0
  37. package/dist/shell.d.ts.map +1 -1
  38. package/dist/shell.js +39 -7
  39. package/dist/shell.js.map +1 -1
  40. package/dist/store.d.ts +9 -1
  41. package/dist/store.d.ts.map +1 -1
  42. package/dist/store.js.map +1 -1
  43. package/dist/styles-panel.d.ts +10 -0
  44. package/dist/styles-panel.d.ts.map +1 -0
  45. package/dist/styles-panel.js +79 -0
  46. package/dist/styles-panel.js.map +1 -0
  47. package/dist/theme-designer.d.ts +7 -2
  48. package/dist/theme-designer.d.ts.map +1 -1
  49. package/dist/theme-designer.js +79 -15
  50. package/dist/theme-designer.js.map +1 -1
  51. package/dist/theme-panel.d.ts.map +1 -1
  52. package/dist/theme-panel.js +19 -12
  53. package/dist/theme-panel.js.map +1 -1
  54. package/dist/validate.d.ts +16 -0
  55. package/dist/validate.d.ts.map +1 -1
  56. package/dist/validate.js +38 -7
  57. package/dist/validate.js.map +1 -1
  58. package/package.json +2 -2
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Standalone theme designer: edits a NAMED theme entry
3
- * (`{ name, label?, description?, tokens }` — the theme registry's shape,
4
- * which is also what a host persists) with live preview against any
5
- * catalog kind.
3
+ * (`{ name, label?, description?, tokens, styles? }` — the theme
4
+ * registry's shape, which is also what a host persists) with live preview
5
+ * against any catalog kind. Its styles are edited with the widget
6
+ * designer's own styles panel: one shape, one rule set, one editor.
6
7
  *
7
8
  * Split from the widget designer on purpose: an app routes to "design a
8
9
  * theme" and "design a widget" as separate destinations, and a host
@@ -10,11 +11,13 @@
10
11
  * controller, chrome, and store discipline.
11
12
  */
12
13
  import { errorMessage } from "./internal.js";
13
- import { createCatalog } from "@widgentic/core";
14
- import { THEME_TOKENS, TOKEN_DEFAULTS, TOKEN_SPECS, isSafeTokenValue, validateTheme } from "@widgentic/core";
14
+ import { createCatalog, createThemeRegistry, SAFE_IDENTIFIER } from "@widgentic/core";
15
+ import { THEME_TOKENS, TOKEN_DEFAULTS, TOKEN_SPECS, isSafeTokenValue, TOKEN_VALUE_RULE, isStyleMap, validateTheme } from "@widgentic/core";
15
16
  import { applyChrome, diagnosticLine, h, injectDesignerStyles, section, textField, requireChild } from "./dom.js";
16
17
  import { createPreview } from "./preview.js";
17
18
  import { starterDraft } from "./store.js";
19
+ import { createStylesPanel } from "./styles-panel.js";
20
+ import { auditStyles } from "./validate.js";
18
21
  const BASE_KINDS = createCatalog().kinds();
19
22
  /** Hex form the native color input accepts. */
20
23
  const HEX = /^#[0-9a-f]{3}([0-9a-f]{3})?$/i;
@@ -30,8 +33,34 @@ function toHexInput(value) {
30
33
  function starterEntry() {
31
34
  return { name: "my-theme", label: "My theme", tokens: {} };
32
35
  }
33
- /** Validate an untrusted entry; errors instead of throwing. */
34
- export function checkThemeEntry(entry) {
36
+ /** Theme names a stored theme may never take, read from the registry. */
37
+ const BUILT_IN_THEMES = new Set(createThemeRegistry().names());
38
+ /** What saving would refuse about a name, in the store's terms. */
39
+ function nameProblem(name) {
40
+ if (!SAFE_IDENTIFIER.test(name)) {
41
+ return `INVALID_IDENTIFIER — '${name}' may use letters, digits, '.', '_' or '-' only.`;
42
+ }
43
+ if (BUILT_IN_THEMES.has(name)) {
44
+ return `RESERVED_THEME — '${name}' is a built-in theme; give yours its own name.`;
45
+ }
46
+ return undefined;
47
+ }
48
+ /**
49
+ * A copy of an entry for the designer to hold. A retired `extends` is left
50
+ * behind: the registry ignores it, and a field the designer handed back
51
+ * (to `getTheme`, Export, Save or an agent) would look meaningful.
52
+ */
53
+ function takeEntry(input) {
54
+ const { extends: _retired, ...entry } = JSON.parse(JSON.stringify(input));
55
+ return entry;
56
+ }
57
+ /**
58
+ * Validate an untrusted entry; errors instead of throwing. The name is held
59
+ * to what saving accepts only when it differs from `currentName`: a name the
60
+ * entry already has is the person's to fix (the Name field flags it), and
61
+ * reloading the same entry with new tokens must not fail on it.
62
+ */
63
+ export function checkThemeEntry(entry, currentName) {
35
64
  const errors = [];
36
65
  if (typeof entry !== "object" || entry === null || Array.isArray(entry)) {
37
66
  return ["Theme entry must be an object."];
@@ -40,17 +69,23 @@ export function checkThemeEntry(entry) {
40
69
  if (typeof candidate.name !== "string" || candidate.name.trim() === "") {
41
70
  errors.push("'name' must be a non-empty string.");
42
71
  }
72
+ else if (candidate.name !== currentName) {
73
+ const problem = nameProblem(candidate.name);
74
+ if (problem !== undefined)
75
+ errors.push(`name: ${problem}`);
76
+ }
43
77
  const validated = validateTheme(candidate.tokens ?? {});
44
78
  if (!validated.ok) {
45
79
  errors.push(`tokens: ${validated.error.code} — ${validated.error.message}`);
46
80
  }
81
+ if (candidate.styles !== undefined && !isStyleMap(candidate.styles)) {
82
+ errors.push("styles: must map selectors to objects of property/value strings.");
83
+ }
47
84
  return errors;
48
85
  }
49
86
  export function createThemeDesigner(container, options = {}) {
50
87
  injectDesignerStyles(document);
51
- let entry = options.initialTheme
52
- ? JSON.parse(JSON.stringify(options.initialTheme))
53
- : starterEntry();
88
+ let entry = options.initialTheme ? takeEntry(options.initialTheme) : starterEntry();
54
89
  const listeners = new Set();
55
90
  const preview = createPreview(options.widgets ? { widgets: options.widgets } : {});
56
91
  // Built-ins plus whatever custom definitions the host supplied.
@@ -66,7 +101,8 @@ export function createThemeDesigner(container, options = {}) {
66
101
  container.appendChild(root);
67
102
  /** A draft carrying only what the preview needs: kind + this theme. */
68
103
  function previewDraft() {
69
- return { ...starterDraft(), theme: entry.tokens };
104
+ const draft = { ...starterDraft(), theme: entry.tokens };
105
+ return entry.styles === undefined ? draft : { ...draft, themeStyles: entry.styles };
70
106
  }
71
107
  function refresh() {
72
108
  preview.update(previewDraft(), { styles: [], previewable: true }, previewKind);
@@ -97,11 +133,21 @@ export function createThemeDesigner(container, options = {}) {
97
133
  });
98
134
  return field;
99
135
  }
136
+ // A name saving would refuse is flagged as it is typed, in the store's terms.
137
+ const nameDiag = diagnosticLine(undefined);
138
+ function showNameProblem() {
139
+ const problem = entry.name.trim() === "" ? "'name' must be a non-empty string." : nameProblem(entry.name);
140
+ nameDiag.hidden = problem === undefined;
141
+ nameDiag.textContent = problem ?? "";
142
+ }
143
+ identityRefreshers.push(showNameProblem);
100
144
  const identity = section("Theme", [
101
145
  identityField("Name (id)", () => entry.name, (value) => {
102
146
  entry = { ...entry, name: value };
147
+ showNameProblem();
103
148
  refresh();
104
149
  }),
150
+ nameDiag,
105
151
  identityField("Label", () => entry.label ?? "", (value) => {
106
152
  entry = { ...entry, label: value };
107
153
  refresh();
@@ -111,6 +157,7 @@ export function createThemeDesigner(container, options = {}) {
111
157
  refresh();
112
158
  })
113
159
  ]);
160
+ showNameProblem();
114
161
  // The kind selector is a PREVIEW control, so it lives beside the
115
162
  // preview, outside the editing panels — read-only mode keeps it live.
116
163
  const kindSelect = h("select", {
@@ -165,7 +212,7 @@ export function createThemeDesigner(container, options = {}) {
165
212
  const unsafe = input.value !== "" && !isSafeTokenValue(input.value);
166
213
  issue.hidden = !unsafe;
167
214
  issue.textContent = unsafe
168
- ? "INVALID_TOKEN_VALUE: unsafe value withheld from the preview (no ;{}<> url() expression())."
215
+ ? `INVALID_TOKEN_VALUE: unsafe value withheld from the preview. ${TOKEN_VALUE_RULE}`
169
216
  : "";
170
217
  paint(input.value);
171
218
  setToken(token, input.value);
@@ -291,17 +338,32 @@ export function createThemeDesigner(container, options = {}) {
291
338
  output
292
339
  ]);
293
340
  exportPanel.classList.add("wgd-view-only");
341
+ // Shared classes for every widget the theme dresses — the widget
342
+ // designer's own panel, so the shape, guards and audit are identical.
343
+ const stylesPanel = createStylesPanel(entry.styles, (styles) => {
344
+ const { styles: _previous, ...rest } = entry;
345
+ entry = styles === undefined ? rest : { ...rest, styles };
346
+ stylesPanel.setIssues(auditStyles(entry.styles));
347
+ refresh();
348
+ });
349
+ stylesPanel.setIssues(auditStyles(entry.styles));
294
350
  panels.append(identity, tokenPanel, customPanel, importPanel, exportPanel);
351
+ // Under the preview, where the widget designer keeps its Styles panel:
352
+ // styles are judged against what they dress.
353
+ stylesPanel.element.classList.add("wgd-edit-only");
354
+ side.append(stylesPanel.element);
295
355
  function loadTheme(input) {
296
- const errors = checkThemeEntry(input);
356
+ const errors = checkThemeEntry(input, entry.name);
297
357
  if (errors.length > 0)
298
358
  return { ok: false, errors };
299
- entry = JSON.parse(JSON.stringify(input));
359
+ entry = takeEntry(input);
300
360
  for (const refreshIdentity of identityRefreshers)
301
361
  refreshIdentity();
302
362
  for (const refreshToken of tokenRefreshers)
303
363
  refreshToken();
304
364
  renderCustom();
365
+ stylesPanel.setValue(entry.styles);
366
+ stylesPanel.setIssues(auditStyles(entry.styles));
305
367
  refresh();
306
368
  return { ok: true };
307
369
  }
@@ -309,7 +371,9 @@ export function createThemeDesigner(container, options = {}) {
309
371
  /** Same mechanism as the widget designer: inert the section bodies. */
310
372
  function setReadOnly(readOnly) {
311
373
  root.classList.toggle("wgd-readonly", readOnly);
312
- const bodies = [...panels.querySelectorAll(".wgd-section-body")].filter((body) => !body.parentElement?.classList.contains("wgd-view-only"));
374
+ const bodies = [
375
+ ...root.querySelectorAll(".wgd-panels .wgd-section-body, .wgd-edit-only > .wgd-section-body")
376
+ ].filter((body) => !body.parentElement?.classList.contains("wgd-view-only"));
313
377
  for (const body of bodies) {
314
378
  if (readOnly)
315
379
  body.setAttribute("inert", "");
@@ -1 +1 @@
1
- {"version":3,"file":"theme-designer.js","sourceRoot":"","sources":["../src/theme-designer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-designer.js","sourceRoot":"","sources":["../src/theme-designer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"theme-panel.d.ts","sourceRoot":"","sources":["../src/theme-panel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1D,wBAAgB,eAAe,CAC7B,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC,EAAE,EAC5C,MAAM,GAAE,UAAU,EAAO,GACxB;IACD,OAAO,EAAE,WAAW,CAAC;IACrB,oEAAoE;IACpE,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD,OAAO,IAAI,IAAI,CAAC;CACjB,CAmGA"}
1
+ {"version":3,"file":"theme-panel.d.ts","sourceRoot":"","sources":["../src/theme-panel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1D,wBAAgB,eAAe,CAC7B,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC,EAAE,EAC5C,MAAM,GAAE,UAAU,EAAO,GACxB;IACD,OAAO,EAAE,WAAW,CAAC;IACrB,oEAAoE;IACpE,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD,OAAO,IAAI,IAAI,CAAC;CACjB,CAwGA"}
@@ -12,14 +12,28 @@ export function mountThemePanel(store, refreshers, themes = []) {
12
12
  for (const entry of themes) {
13
13
  themeSelect.append(h("option", { value: entry.name }, [entry.label ?? entry.name]));
14
14
  }
15
+ // The selection is the person's: it names the draft's `previewTheme`
16
+ // and only a pick here changes it — tokens a host or agent layers on
17
+ // top never re-select by content.
18
+ const showChoice = (draft) => {
19
+ themeSelect.value = themes.some((entry) => entry.name === draft.previewTheme) ? draft.previewTheme ?? "" : "";
20
+ };
21
+ showChoice(store.get());
15
22
  themeSelect.addEventListener("change", () => {
16
23
  const entry = themes.find((candidate) => candidate.name === themeSelect.value);
17
24
  store.update((draft) => {
18
- if (entry === undefined) {
19
- const { theme: _gone, ...rest } = draft;
25
+ const { theme: _theme, themeStyles: _styles, previewTheme: _name, ...rest } = draft;
26
+ if (entry === undefined)
20
27
  return rest;
21
- }
22
- return { ...draft, theme: entry.tokens };
28
+ // A pick replaces any layered tokens. The entry's shared styles dress
29
+ // the preview too, so its classes look in the draft as they will
30
+ // under this theme.
31
+ return {
32
+ ...rest,
33
+ theme: entry.tokens,
34
+ previewTheme: entry.name,
35
+ ...(entry.styles === undefined ? {} : { themeStyles: entry.styles })
36
+ };
23
37
  });
24
38
  });
25
39
  // Token reference: the EFFECTIVE preview tokens — the selected entry
@@ -55,14 +69,7 @@ export function mountThemePanel(store, refreshers, themes = []) {
55
69
  }
56
70
  renderTokenReference(store.get().theme);
57
71
  refreshers.push((draft) => {
58
- // Reflect programmatic theme loads; an unrecognized map shows as none.
59
- if (draft.theme === undefined) {
60
- themeSelect.value = "";
61
- }
62
- else {
63
- const match = themes.find((entry) => JSON.stringify(entry.tokens) === JSON.stringify(draft.theme));
64
- themeSelect.value = match?.name ?? "";
65
- }
72
+ showChoice(draft);
66
73
  renderTokenReference(draft.theme);
67
74
  });
68
75
  const rows = [
@@ -1 +1 @@
1
- {"version":3,"file":"theme-panel.js","sourceRoot":"","sources":["../src/theme-panel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme-panel.js","sourceRoot":"","sources":["../src/theme-panel.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { WidgetStyles } from "@widgentic/core";
1
2
  import type { WidgetContractError } from "@widgentic/core";
2
3
  import type { ThemeError } from "@widgentic/core";
3
4
  import type { WidgetDraft } from "./store.js";
@@ -29,6 +30,13 @@ export interface DesignerDiagnostics {
29
30
  load?: string;
30
31
  /** Shared actions referenced by the template or `load` that are not among the supplied ones. */
31
32
  actionRefs?: string;
33
+ /**
34
+ * A warning, never blocking: without `descriptor.dataShape` agents that
35
+ * list the widget see a placeholder instead of the data it expects.
36
+ */
37
+ dataShape?: string;
38
+ /** Warnings, never blocking: what the validator would ignore in the inline `dataSchema`. */
39
+ dataSchema?: string[];
32
40
  /** True when the draft can be registered and previewed. */
33
41
  previewable: boolean;
34
42
  }
@@ -52,6 +60,14 @@ export declare function effectiveDataSchema(draft: WidgetDraft, schemas?: {
52
60
  name: string;
53
61
  schema: Record<string, unknown>;
54
62
  }[]): Record<string, unknown> | undefined;
63
+ /** What saving would refuse about a kind, in the store's terms; `undefined` when acceptable. */
64
+ export declare function kindProblem(kind: string): string | undefined;
65
+ /**
66
+ * Detect style entries the renderer would skip, using only the public
67
+ * generator: a probe that produces no CSS was filtered by the safety
68
+ * guards. Selector and per-declaration issues are reported separately.
69
+ */
70
+ export declare function auditStyles(styles: WidgetStyles | undefined): StyleIssue[];
55
71
  /** Run every validator; total — never throws on any draft shape. */
56
72
  export declare function deriveDiagnostics(draft: WidgetDraft, options?: DeriveOptions): DesignerDiagnostics;
57
73
  //# sourceMappingURL=validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAI3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,wDAAwD;IACxD,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,CAAC;IAC9D,+DAA+D;IAC/D,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC9B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAAO,GAChE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAOrC;AA0CD,oEAAoE;AACpE,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,mBAAmB,CAuErB"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAI3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,wDAAwD;IACxD,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,2DAA2D;IAC3D,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,oEAAoE;AACpE,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,CAAC;IAC9D,+DAA+D;IAC/D,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC9B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAAO,GAChE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAOrC;AAID,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ5D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,UAAU,EAAE,CAkC1E;AAED,oEAAoE;AACpE,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,mBAAmB,CAsFrB"}
package/dist/validate.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * Everything here goes through public package entries — the designer owns
5
5
  * no validation logic of its own.
6
6
  */
7
- import { isPlainObject } from "@widgentic/core";
7
+ import { auditDataSchema, isPlainObject, PROPERTY_NAME, SAFE_IDENTIFIER, STYLE_RULES } from "@widgentic/core";
8
8
  import { createCatalog, validateDataAgainstSchema, widgetStylesToCss } from "@widgentic/core";
9
9
  import { collectActionRefs, parsePath, validateTemplate } from "@widgentic/core";
10
10
  import { validateLoadBinding } from "@widgentic/core";
@@ -23,12 +23,22 @@ export function effectiveDataSchema(draft, schemas = []) {
23
23
  return isPlainObject(inline) ? inline : undefined;
24
24
  }
25
25
  const BASE_KINDS = new Set(createCatalog().kinds());
26
+ /** What saving would refuse about a kind, in the store's terms; `undefined` when acceptable. */
27
+ export function kindProblem(kind) {
28
+ if (!SAFE_IDENTIFIER.test(kind)) {
29
+ return `INVALID_IDENTIFIER — '${kind}' may use letters, digits, '.', '_' or '-' only.`;
30
+ }
31
+ if (BASE_KINDS.has(kind)) {
32
+ return `RESERVED_KIND — '${kind}' is a built-in kind; give the widget its own kind.`;
33
+ }
34
+ return undefined;
35
+ }
26
36
  /**
27
37
  * Detect style entries the renderer would skip, using only the public
28
38
  * generator: a probe that produces no CSS was filtered by the safety
29
39
  * guards. Selector and per-declaration issues are reported separately.
30
40
  */
31
- function auditStyles(styles) {
41
+ export function auditStyles(styles) {
32
42
  if (!isPlainObject(styles))
33
43
  return [];
34
44
  const issues = [];
@@ -36,7 +46,7 @@ function auditStyles(styles) {
36
46
  if (widgetStylesToCss({ [selector]: { color: "red" } }) === "") {
37
47
  issues.push({
38
48
  selector,
39
- message: "Selector would be skipped — every comma-separated part must target a .wg- class and avoid ;{}<>@\\."
49
+ message: `Selector would be skipped. ${STYLE_RULES.selectors} ${STYLE_RULES.banned}`
40
50
  });
41
51
  continue;
42
52
  }
@@ -47,10 +57,15 @@ function auditStyles(styles) {
47
57
  for (const [property, value] of Object.entries(declarations)) {
48
58
  if (typeof value !== "string" ||
49
59
  widgetStylesToCss({ ".wg-probe": { [property]: value } }) === "") {
60
+ // Name the part at fault: the property name, or else the value.
50
61
  issues.push({
51
62
  selector,
52
63
  property,
53
- message: "Declaration would be skipped — unsafe property name or value (no url(), expression(), or ;{}<>@\\)."
64
+ message: !PROPERTY_NAME.test(property)
65
+ ? `Property would be skipped. ${STYLE_RULES.propertyNames}`
66
+ : typeof value !== "string"
67
+ ? "Value would be skipped: it must be a string."
68
+ : `Value would be skipped. ${STYLE_RULES.banned}`
54
69
  });
55
70
  }
56
71
  }
@@ -63,8 +78,21 @@ export function deriveDiagnostics(draft, options = {}) {
63
78
  if (typeof draft.kind !== "string" || draft.kind.trim().length === 0) {
64
79
  diagnostics.kind = "Kind must be a non-empty id.";
65
80
  }
66
- else if (BASE_KINDS.has(draft.kind)) {
67
- diagnostics.kind = `'${draft.kind}' is a built-in kind — pick a distinct id.`;
81
+ else {
82
+ const problem = kindProblem(draft.kind);
83
+ if (problem !== undefined)
84
+ diagnostics.kind = problem;
85
+ }
86
+ const dataShape = draft.descriptor?.dataShape;
87
+ if (typeof dataShape !== "string" || dataShape.trim() === "") {
88
+ diagnostics.dataShape =
89
+ "Data shape is empty — agents listing this widget will see a placeholder instead of the data it expects.";
90
+ }
91
+ const inlineSchema = draft.descriptor?.dataSchema;
92
+ if (isPlainObject(inlineSchema)) {
93
+ const warnings = auditDataSchema(inlineSchema, "dataSchema");
94
+ if (warnings.length > 0)
95
+ diagnostics.dataSchema = warnings;
68
96
  }
69
97
  const template = validateTemplate(draft.template);
70
98
  if (!template.ok) {
@@ -85,7 +113,10 @@ export function deriveDiagnostics(draft, options = {}) {
85
113
  diagnostics.schemaRef =
86
114
  "A descriptor carries 'dataSchema' OR 'dataSchemaRef', never both.";
87
115
  }
88
- else if ((options.schemas ?? []).every((entry) => entry.name !== ref)) {
116
+ else if (
117
+ // Unverifiable without the host's schemas: never a false "unknown".
118
+ options.schemas !== undefined &&
119
+ options.schemas.every((entry) => entry.name !== ref)) {
89
120
  diagnostics.schemaRef = `References unknown schema '${ref}' — it is not among the supplied shared schemas.`;
90
121
  }
91
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@widgentic/designer",
3
- "version": "0.8.0",
3
+ "version": "0.11.0",
4
4
  "description": "Hostable widgentic designers: widget, theme, schema and action designers as functions and custom elements, plus a single-file browser bundle.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -44,6 +44,6 @@
44
44
  "clean": "rm -rf dist"
45
45
  },
46
46
  "dependencies": {
47
- "@widgentic/core": "^0.8.0"
47
+ "@widgentic/core": "^0.11.0"
48
48
  }
49
49
  }