@syntrologie/runtime-sdk 2.0.0 → 2.0.1-canary.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 (280) hide show
  1. package/CAPABILITIES.md +232 -138
  2. package/README.md +76 -57
  3. package/dist/RuntimeProvider.d.ts +6 -6
  4. package/dist/RuntimeProvider.js +2 -3
  5. package/dist/RuntimeProvider.js.map +1 -1
  6. package/dist/SmartCanvasApp.d.ts +8 -8
  7. package/dist/SmartCanvasApp.js +16 -18
  8. package/dist/SmartCanvasApp.js.map +1 -1
  9. package/dist/SmartCanvasElement.d.ts +5 -5
  10. package/dist/SmartCanvasElement.js +13 -13
  11. package/dist/SmartCanvasElement.js.map +1 -1
  12. package/dist/SmartCanvasPortal.d.ts +2 -2
  13. package/dist/SmartCanvasPortal.js +2 -2
  14. package/dist/actions/ActionEngine.d.ts +1 -1
  15. package/dist/actions/ActionEngine.js +24 -24
  16. package/dist/actions/ActionEngine.js.map +1 -1
  17. package/dist/actions/executors/index.d.ts +6 -6
  18. package/dist/actions/executors/index.js +22 -22
  19. package/dist/actions/executors/index.js.map +1 -1
  20. package/dist/actions/executors/tour.d.ts +1 -1
  21. package/dist/actions/executors/tour.js +19 -19
  22. package/dist/actions/executors/tour.js.map +1 -1
  23. package/dist/actions/index.d.ts +5 -5
  24. package/dist/actions/index.js +3 -3
  25. package/dist/actions/index.js.map +1 -1
  26. package/dist/actions/types.d.ts +37 -37
  27. package/dist/actions/validation.d.ts +1 -1
  28. package/dist/actions/validation.js +195 -196
  29. package/dist/actions/validation.js.map +1 -1
  30. package/dist/antiFlicker.js +1 -1
  31. package/dist/api.d.ts +10 -10
  32. package/dist/api.js +11 -11
  33. package/dist/api.js.map +1 -1
  34. package/dist/apps/AppContext.d.ts +2 -2
  35. package/dist/apps/AppContext.js +1 -1
  36. package/dist/apps/AppContext.js.map +1 -1
  37. package/dist/apps/AppLoader.d.ts +2 -2
  38. package/dist/apps/AppLoader.js +24 -24
  39. package/dist/apps/AppLoader.js.map +1 -1
  40. package/dist/apps/AppRegistry.d.ts +2 -2
  41. package/dist/apps/AppRegistry.js +28 -28
  42. package/dist/apps/AppRegistry.js.map +1 -1
  43. package/dist/apps/adaptive-chatbot/index.js +7 -0
  44. package/dist/apps/adaptive-chatbot/index.js.map +7 -0
  45. package/dist/apps/examples/gamification-app.example.d.ts +3 -3
  46. package/dist/apps/examples/gamification-app.example.js +94 -94
  47. package/dist/apps/examples/gamification-app.example.js.map +1 -1
  48. package/dist/apps/faq/index.js.map +3 -3
  49. package/dist/apps/gamification/index.js.map +3 -3
  50. package/dist/apps/index.d.ts +10 -10
  51. package/dist/apps/index.js +6 -6
  52. package/dist/apps/nav/index.js.map +3 -3
  53. package/dist/apps/types.d.ts +10 -10
  54. package/dist/blocks/data/ComparisonBlock.d.ts +1 -1
  55. package/dist/blocks/data/ComparisonBlock.js +40 -40
  56. package/dist/blocks/data/ComparisonBlock.js.map +1 -1
  57. package/dist/blocks/data/StatsBlock.d.ts +1 -1
  58. package/dist/blocks/data/StatsBlock.js +41 -41
  59. package/dist/blocks/data/StatsBlock.js.map +1 -1
  60. package/dist/blocks/data/index.d.ts +2 -2
  61. package/dist/blocks/data/index.js +2 -2
  62. package/dist/blocks/index.d.ts +5 -5
  63. package/dist/blocks/index.js +29 -29
  64. package/dist/blocks/index.js.map +1 -1
  65. package/dist/blocks/interactive/ChecklistBlock.d.ts +1 -1
  66. package/dist/blocks/interactive/ChecklistBlock.js +60 -60
  67. package/dist/blocks/interactive/ChecklistBlock.js.map +1 -1
  68. package/dist/blocks/interactive/RatingBlock.d.ts +1 -1
  69. package/dist/blocks/interactive/RatingBlock.js +75 -65
  70. package/dist/blocks/interactive/RatingBlock.js.map +1 -1
  71. package/dist/blocks/interactive/index.d.ts +2 -2
  72. package/dist/blocks/interactive/index.js +2 -2
  73. package/dist/blocks/notification/NotificationBlock.d.ts +2 -2
  74. package/dist/blocks/notification/NotificationBlock.js +67 -63
  75. package/dist/blocks/notification/NotificationBlock.js.map +1 -1
  76. package/dist/blocks/notification/index.d.ts +1 -1
  77. package/dist/blocks/notification/index.js +1 -1
  78. package/dist/bootstrap.d.ts +10 -10
  79. package/dist/bootstrap.js +54 -40
  80. package/dist/bootstrap.js.map +1 -1
  81. package/dist/components/ShadowCanvasOverlay.d.ts +6 -6
  82. package/dist/components/ShadowCanvasOverlay.js +117 -107
  83. package/dist/components/ShadowCanvasOverlay.js.map +1 -1
  84. package/dist/components/TileCard.d.ts +5 -5
  85. package/dist/components/TileCard.js +174 -143
  86. package/dist/components/TileCard.js.map +1 -1
  87. package/dist/components/TileWheel.d.ts +3 -3
  88. package/dist/components/TileWheel.js +7 -7
  89. package/dist/components/TileWheel.js.map +1 -1
  90. package/dist/configFetcher.d.ts +2 -2
  91. package/dist/configFetcher.js +10 -7
  92. package/dist/configFetcher.js.map +1 -1
  93. package/dist/context/ContextManager.d.ts +3 -3
  94. package/dist/context/ContextManager.js +15 -15
  95. package/dist/context/ContextManager.js.map +1 -1
  96. package/dist/context/index.d.ts +4 -4
  97. package/dist/context/index.js +3 -3
  98. package/dist/context/schema.d.ts +1 -1
  99. package/dist/context/schema.js +1 -1
  100. package/dist/decisions/engine.d.ts +5 -5
  101. package/dist/decisions/engine.js +13 -13
  102. package/dist/decisions/index.d.ts +6 -6
  103. package/dist/decisions/index.js +5 -5
  104. package/dist/decisions/schema.d.ts +1 -1
  105. package/dist/decisions/schema.js +20 -20
  106. package/dist/decisions/strategies/rules.d.ts +1 -1
  107. package/dist/decisions/strategies/rules.js +24 -24
  108. package/dist/decisions/strategies/rules.js.map +1 -1
  109. package/dist/decisions/strategies/score.d.ts +1 -1
  110. package/dist/decisions/strategies/score.js +3 -3
  111. package/dist/decisions/types.d.ts +19 -19
  112. package/dist/editorLoader.js +20 -20
  113. package/dist/editorLoader.js.map +1 -1
  114. package/dist/events/EventBus.d.ts +3 -3
  115. package/dist/events/EventBus.js +5 -7
  116. package/dist/events/EventBus.js.map +1 -1
  117. package/dist/events/index.d.ts +6 -6
  118. package/dist/events/index.js +5 -5
  119. package/dist/events/normalizers/canvas.d.ts +2 -2
  120. package/dist/events/normalizers/canvas.js +3 -3
  121. package/dist/events/normalizers/canvas.js.map +1 -1
  122. package/dist/events/normalizers/posthog.d.ts +1 -1
  123. package/dist/events/normalizers/posthog.js +34 -27
  124. package/dist/events/normalizers/posthog.js.map +1 -1
  125. package/dist/events/schema.d.ts +1 -1
  126. package/dist/events/schema.js +2 -2
  127. package/dist/events/types.d.ts +1 -1
  128. package/dist/events/types.js +27 -27
  129. package/dist/experiments/adapters/growthbook.d.ts +4 -4
  130. package/dist/experiments/adapters/growthbook.js +5 -5
  131. package/dist/experiments/adapters/growthbook.js.map +1 -1
  132. package/dist/experiments/index.d.ts +3 -3
  133. package/dist/experiments/index.js +1 -1
  134. package/dist/experiments/registry.d.ts +2 -2
  135. package/dist/experiments/registry.js +2 -2
  136. package/dist/experiments/types.d.ts +5 -1
  137. package/dist/fetchers/cdnFetcher.d.ts +1 -1
  138. package/dist/fetchers/cdnFetcher.js +4 -8
  139. package/dist/fetchers/cdnFetcher.js.map +1 -1
  140. package/dist/fetchers/experimentsFetcher.d.ts +2 -2
  141. package/dist/fetchers/experimentsFetcher.js +7 -7
  142. package/dist/fetchers/experimentsFetcher.js.map +1 -1
  143. package/dist/fetchers/index.d.ts +3 -3
  144. package/dist/fetchers/index.js +2 -2
  145. package/dist/fetchers/index.js.map +1 -1
  146. package/dist/fetchers/registry.d.ts +1 -1
  147. package/dist/fetchers/registry.js +4 -4
  148. package/dist/fetchers/types.d.ts +1 -1
  149. package/dist/hooks/useCanvasOverlays.d.ts +5 -5
  150. package/dist/hooks/useCanvasOverlays.js +15 -13
  151. package/dist/hooks/useCanvasOverlays.js.map +1 -1
  152. package/dist/hooks/useHostPatches.d.ts +2 -2
  153. package/dist/hooks/useHostPatches.js +8 -8
  154. package/dist/hooks/useHostPatches.js.map +1 -1
  155. package/dist/hooks/useShadowCanvasConfig.d.ts +3 -3
  156. package/dist/hooks/useShadowCanvasConfig.js +5 -2
  157. package/dist/hooks/useShadowCanvasConfig.js.map +1 -1
  158. package/dist/hostPatcher/core/patcher.d.ts +1 -1
  159. package/dist/hostPatcher/core/patcher.js +18 -9
  160. package/dist/hostPatcher/core/patcher.js.map +1 -1
  161. package/dist/hostPatcher/core/sanitizer.js +24 -3
  162. package/dist/hostPatcher/core/sanitizer.js.map +1 -1
  163. package/dist/hostPatcher/policy/defaultPolicy.js +15 -5
  164. package/dist/hostPatcher/policy/defaultPolicy.js.map +1 -1
  165. package/dist/hostPatcher/utils/anchors.js +4 -6
  166. package/dist/hostPatcher/utils/anchors.js.map +1 -1
  167. package/dist/index.d.ts +32 -32
  168. package/dist/index.js +29 -29
  169. package/dist/index.js.map +1 -1
  170. package/dist/metrics/index.d.ts +1 -1
  171. package/dist/metrics/index.js +1 -1
  172. package/dist/metrics/sessionMetrics.d.ts +1 -1
  173. package/dist/metrics/sessionMetrics.js +6 -6
  174. package/dist/overlays/fetcher.d.ts +2 -2
  175. package/dist/overlays/fetcher.js +4 -4
  176. package/dist/overlays/recipeRegistry.js +2 -2
  177. package/dist/overlays/recipeRegistry.js.map +1 -1
  178. package/dist/overlays/runtime/anchor/resolve.js +1 -1
  179. package/dist/overlays/runtime/anchor/resolve.js.map +1 -1
  180. package/dist/overlays/runtime/index.d.ts +7 -7
  181. package/dist/overlays/runtime/index.js +7 -7
  182. package/dist/overlays/runtime/overlay/highlight.js +39 -39
  183. package/dist/overlays/runtime/overlay/highlight.js.map +1 -1
  184. package/dist/overlays/runtime/overlay/modal.js +5 -5
  185. package/dist/overlays/runtime/overlay/modal.js.map +1 -1
  186. package/dist/overlays/runtime/overlay/root.js +1 -1
  187. package/dist/overlays/runtime/overlay/runner.js +70 -23
  188. package/dist/overlays/runtime/overlay/runner.js.map +1 -1
  189. package/dist/overlays/runtime/overlay/tooltip.d.ts +1 -1
  190. package/dist/overlays/runtime/overlay/tooltip.js +10 -10
  191. package/dist/overlays/runtime/overlay/tooltip.js.map +1 -1
  192. package/dist/overlays/runtime/utils/dom.js +4 -1
  193. package/dist/overlays/runtime/utils/dom.js.map +1 -1
  194. package/dist/overlays/schema.js +12 -8
  195. package/dist/overlays/schema.js.map +1 -1
  196. package/dist/react.d.ts +7 -7
  197. package/dist/react.js +4 -4
  198. package/dist/react.js.map +1 -1
  199. package/dist/render/RenderContext.d.ts +2 -2
  200. package/dist/render/RenderContext.js +5 -5
  201. package/dist/render/RenderContext.js.map +1 -1
  202. package/dist/render/index.d.ts +3 -3
  203. package/dist/render/index.js +1 -1
  204. package/dist/render/types.d.ts +4 -4
  205. package/dist/runtime.d.ts +12 -12
  206. package/dist/runtime.js +20 -20
  207. package/dist/runtime.js.map +1 -1
  208. package/dist/smart-canvas.esm.js +16 -16
  209. package/dist/smart-canvas.esm.js.map +4 -4
  210. package/dist/smart-canvas.js +644 -491
  211. package/dist/smart-canvas.js.map +4 -4
  212. package/dist/smart-canvas.min.js +15 -15
  213. package/dist/smart-canvas.min.js.map +4 -4
  214. package/dist/state/StateStore.d.ts +1 -1
  215. package/dist/state/StateStore.js +9 -9
  216. package/dist/state/StateStore.js.map +1 -1
  217. package/dist/state/helpers/cooldowns.d.ts +1 -1
  218. package/dist/state/helpers/cooldowns.js +1 -1
  219. package/dist/state/helpers/dismissals.d.ts +1 -1
  220. package/dist/state/helpers/dismissals.js +1 -1
  221. package/dist/state/helpers/frequency.d.ts +1 -1
  222. package/dist/state/helpers/frequency.js +1 -1
  223. package/dist/state/index.d.ts +4 -4
  224. package/dist/state/index.js +3 -3
  225. package/dist/state/schema.d.ts +1 -1
  226. package/dist/state/schema.js +1 -1
  227. package/dist/store/example.js +13 -13
  228. package/dist/store/example.js.map +1 -1
  229. package/dist/store/mini-effector.js +6 -8
  230. package/dist/store/mini-effector.js.map +1 -1
  231. package/dist/surfaces/Surfaces.d.ts +1 -1
  232. package/dist/surfaces/Surfaces.js +25 -25
  233. package/dist/surfaces/Surfaces.js.map +1 -1
  234. package/dist/surfaces/index.d.ts +4 -4
  235. package/dist/surfaces/index.js +3 -3
  236. package/dist/surfaces/positioning.d.ts +2 -2
  237. package/dist/surfaces/positioning.js +74 -77
  238. package/dist/surfaces/positioning.js.map +1 -1
  239. package/dist/surfaces/types.d.ts +9 -9
  240. package/dist/surfaces/types.js +7 -7
  241. package/dist/surfaces/types.js.map +1 -1
  242. package/dist/telemetry/adapters/noop.d.ts +12 -0
  243. package/dist/telemetry/adapters/noop.js +42 -0
  244. package/dist/telemetry/adapters/noop.js.map +1 -0
  245. package/dist/telemetry/adapters/posthog.d.ts +2 -2
  246. package/dist/telemetry/adapters/posthog.js +29 -16
  247. package/dist/telemetry/adapters/posthog.js.map +1 -1
  248. package/dist/telemetry/index.d.ts +4 -3
  249. package/dist/telemetry/index.js +3 -2
  250. package/dist/telemetry/index.js.map +1 -1
  251. package/dist/telemetry/registry.d.ts +2 -2
  252. package/dist/telemetry/registry.js +4 -2
  253. package/dist/telemetry/registry.js.map +1 -1
  254. package/dist/telemetry/types.d.ts +1 -1
  255. package/dist/theme/ThemeProvider.d.ts +2 -2
  256. package/dist/theme/ThemeProvider.js +21 -21
  257. package/dist/theme/ThemeProvider.js.map +1 -1
  258. package/dist/theme/defaultTheme.d.ts +2 -2
  259. package/dist/theme/defaultTheme.js +111 -111
  260. package/dist/theme/defaultTheme.js.map +1 -1
  261. package/dist/theme/extractHostTheme.d.ts +1 -1
  262. package/dist/theme/extractHostTheme.js +42 -44
  263. package/dist/theme/extractHostTheme.js.map +1 -1
  264. package/dist/theme/index.d.ts +5 -5
  265. package/dist/theme/index.js +3 -3
  266. package/dist/theme/index.js.map +1 -1
  267. package/dist/theme/types.d.ts +2 -2
  268. package/dist/token.js +3 -6
  269. package/dist/token.js.map +1 -1
  270. package/dist/types-only.d.ts +1 -1
  271. package/dist/types.d.ts +43 -43
  272. package/dist/widgets/WidgetRegistry.d.ts +2 -2
  273. package/dist/widgets/WidgetRegistry.js +11 -11
  274. package/dist/widgets/WidgetRegistry.js.map +1 -1
  275. package/dist/widgets/index.d.ts +2 -2
  276. package/dist/widgets/index.js +1 -1
  277. package/dist/widgets/index.js.map +1 -1
  278. package/package.json +4 -2
  279. package/schema/canvas-config.schema.json +51 -7
  280. package/schema/runtime-context.schema.json +1 -5
@@ -25,10 +25,10 @@ export class WidgetRegistry {
25
25
  * @param source - The source app ID (for tracking)
26
26
  * @param metadata - Optional metadata about the widget
27
27
  */
28
- register(id, widget, source = "custom", metadata) {
28
+ register(id, widget, source = 'custom', metadata) {
29
29
  if (this.widgets.has(id)) {
30
30
  const existing = this.widgets.get(id);
31
- if (existing.source === "built-in") {
31
+ if (existing.source === 'built-in') {
32
32
  throw new Error(`Cannot override built-in widget: ${id}`);
33
33
  }
34
34
  console.warn(`[WidgetRegistry] Overriding widget: ${id}`);
@@ -51,7 +51,7 @@ export class WidgetRegistry {
51
51
  if (!existing) {
52
52
  return false;
53
53
  }
54
- if (existing.source === "built-in") {
54
+ if (existing.source === 'built-in') {
55
55
  console.warn(`[WidgetRegistry] Cannot unregister built-in widget: ${id}`);
56
56
  return false;
57
57
  }
@@ -103,8 +103,8 @@ export class WidgetRegistry {
103
103
  throw new Error(`Widget not found: ${id}`);
104
104
  }
105
105
  const mountId = `widget-mount-${++this.mountIdCounter}`;
106
- container.setAttribute("data-widget-mount-id", mountId);
107
- container.setAttribute("data-widget-id", id);
106
+ container.setAttribute('data-widget-mount-id', mountId);
107
+ container.setAttribute('data-widget-id', id);
108
108
  // Mount the widget
109
109
  const cleanup = registration.widget.mount(container, config);
110
110
  // Track the mounted widget
@@ -121,9 +121,9 @@ export class WidgetRegistry {
121
121
  if (mounted) {
122
122
  (_a = mounted.cleanup) === null || _a === void 0 ? void 0 : _a.call(mounted);
123
123
  this.mountedWidgets.delete(mountId);
124
- container.removeAttribute("data-widget-mount-id");
125
- container.removeAttribute("data-widget-id");
126
- container.innerHTML = "";
124
+ container.removeAttribute('data-widget-mount-id');
125
+ container.removeAttribute('data-widget-id');
126
+ container.innerHTML = '';
127
127
  }
128
128
  },
129
129
  update: (newConfig) => {
@@ -136,7 +136,7 @@ export class WidgetRegistry {
136
136
  const mounted = this.mountedWidgets.get(mountId);
137
137
  if (mounted) {
138
138
  (_a = mounted.cleanup) === null || _a === void 0 ? void 0 : _a.call(mounted);
139
- container.innerHTML = "";
139
+ container.innerHTML = '';
140
140
  const newCleanup = registration.widget.mount(container, newConfig);
141
141
  mounted.cleanup = newCleanup !== null && newCleanup !== void 0 ? newCleanup : undefined;
142
142
  }
@@ -168,9 +168,9 @@ export class WidgetRegistry {
168
168
  */
169
169
  destroy() {
170
170
  var _a;
171
- for (const [mountId, mounted] of this.mountedWidgets.entries()) {
171
+ for (const [_mountId, mounted] of this.mountedWidgets.entries()) {
172
172
  (_a = mounted.cleanup) === null || _a === void 0 ? void 0 : _a.call(mounted);
173
- mounted.container.innerHTML = "";
173
+ mounted.container.innerHTML = '';
174
174
  }
175
175
  this.mountedWidgets.clear();
176
176
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetRegistry.js","sourceRoot":"","sources":["../../src/widgets/WidgetRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetRegistry.js","sourceRoot":"","sources":["../../src/widgets/WidgetRegistry.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@
3
3
  *
4
4
  * Extensible widget registry for mountable components.
5
5
  */
6
- export { WidgetRegistry, widgetRegistry, } from "./WidgetRegistry";
7
- export type { MountableWidget, WidgetRegistration, MountedWidgetHandle, WidgetCleanup, } from "./WidgetRegistry";
6
+ export { WidgetRegistry, widgetRegistry } from './WidgetRegistry';
7
+ export type { MountableWidget, WidgetRegistration, MountedWidgetHandle, WidgetCleanup, } from './WidgetRegistry';
@@ -3,5 +3,5 @@
3
3
  *
4
4
  * Extensible widget registry for mountable components.
5
5
  */
6
- export { WidgetRegistry, widgetRegistry, } from "./WidgetRegistry";
6
+ export { WidgetRegistry, widgetRegistry } from './WidgetRegistry';
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,cAAc,EACd,cAAc,GACf,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@syntrologie/runtime-sdk",
3
- "version": "2.0.0",
3
+ "version": "2.0.1-canary.0",
4
4
  "description": "Syntrologie Runtime SDK for web experimentation and analytics",
5
5
  "license": "Proprietary",
6
6
  "private": false,
@@ -50,6 +50,7 @@
50
50
  "build:lib": "tsc --project tsconfig.build.json",
51
51
  "build:cdn": "node ./scripts/build-cdn.js",
52
52
  "validate-config": "node ./scripts/validate-config.mjs",
53
+ "test": "vitest run",
53
54
  "prepublishOnly": "npm run clean && npm run build"
54
55
  },
55
56
  "dependencies": {
@@ -73,6 +74,7 @@
73
74
  "esbuild": "~0.25.0",
74
75
  "react": "^18.3.1",
75
76
  "react-dom": "^18.3.1",
76
- "typescript": "~5.7.0"
77
+ "typescript": "~5.7.0",
78
+ "vitest": "^4.0.18"
77
79
  }
78
80
  }
@@ -81,7 +81,30 @@
81
81
  "properties": {
82
82
  "type": {
83
83
  "type": "string",
84
- "enum": ["text", "metric", "chatbot", "embed", "custom", "alert", "success", "warning", "info", "error", "video", "gallery", "code", "form", "rating", "progress", "survey", "checklist", "stats", "comparison", "chart", "table"]
84
+ "enum": [
85
+ "text",
86
+ "metric",
87
+ "chatbot",
88
+ "embed",
89
+ "custom",
90
+ "alert",
91
+ "success",
92
+ "warning",
93
+ "info",
94
+ "error",
95
+ "video",
96
+ "gallery",
97
+ "code",
98
+ "form",
99
+ "rating",
100
+ "progress",
101
+ "survey",
102
+ "checklist",
103
+ "stats",
104
+ "comparison",
105
+ "chart",
106
+ "table"
107
+ ]
85
108
  },
86
109
  "headline": { "type": "string" },
87
110
  "body": { "type": "string" },
@@ -208,7 +231,11 @@
208
231
  "properties": {
209
232
  "label": { "type": "string", "description": "Button text" },
210
233
  "actionId": { "type": "string", "description": "Identifier for the action" },
211
- "primary": { "type": "boolean", "description": "Whether this is a primary button", "default": false }
234
+ "primary": {
235
+ "type": "boolean",
236
+ "description": "Whether this is a primary button",
237
+ "default": false
238
+ }
212
239
  },
213
240
  "additionalProperties": false
214
241
  },
@@ -266,7 +293,10 @@
266
293
  },
267
294
  "additionalProperties": false
268
295
  },
269
- "duration": { "type": "number", "description": "Duration in ms before auto-cleanup (for sequences)" },
296
+ "duration": {
297
+ "type": "number",
298
+ "description": "Duration in ms before auto-cleanup (for sequences)"
299
+ },
270
300
  "label": { "type": "string" }
271
301
  },
272
302
  "additionalProperties": false
@@ -419,7 +449,11 @@
419
449
  "required": ["kind"],
420
450
  "properties": {
421
451
  "kind": { "const": "core:wait" },
422
- "durationMs": { "type": "number", "minimum": 0, "description": "Wait for a duration in milliseconds" },
452
+ "durationMs": {
453
+ "type": "number",
454
+ "minimum": 0,
455
+ "description": "Wait for a duration in milliseconds"
456
+ },
423
457
  "event": { "type": "string", "description": "Wait for an event on the EventBus" },
424
458
  "label": { "type": "string" }
425
459
  },
@@ -462,7 +496,10 @@
462
496
  "required": ["id", "action"],
463
497
  "properties": {
464
498
  "id": { "type": "string", "description": "Unique identifier for this step" },
465
- "action": { "$ref": "#/$defs/actionStep", "description": "Action to execute for this step" },
499
+ "action": {
500
+ "$ref": "#/$defs/actionStep",
501
+ "description": "Action to execute for this step"
502
+ },
466
503
  "route": { "type": "string", "description": "Route this step appears on" },
467
504
  "onAction": {
468
505
  "type": "object",
@@ -487,8 +524,15 @@
487
524
  "minItems": 1,
488
525
  "description": "Sequential tour steps"
489
526
  },
490
- "startStep": { "type": "string", "description": "ID of the step to start at (defaults to first step)" },
491
- "autoStart": { "type": "boolean", "default": true, "description": "Whether to start the tour automatically" },
527
+ "startStep": {
528
+ "type": "string",
529
+ "description": "ID of the step to start at (defaults to first step)"
530
+ },
531
+ "autoStart": {
532
+ "type": "boolean",
533
+ "default": true,
534
+ "description": "Whether to start the tour automatically"
535
+ },
492
536
  "label": { "type": "string" }
493
537
  },
494
538
  "additionalProperties": false
@@ -119,11 +119,7 @@
119
119
  "type": "object",
120
120
  "description": "ML-derived augmentation data (Phase 3)",
121
121
  "additionalProperties": {
122
- "oneOf": [
123
- { "type": "number" },
124
- { "type": "string" },
125
- { "type": "boolean" }
126
- ]
122
+ "oneOf": [{ "type": "number" }, { "type": "string" }, { "type": "boolean" }]
127
123
  }
128
124
  }
129
125
  },