@syntrologie/runtime-sdk 2.0.0-canary.1 → 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 (284) 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 -7
  18. package/dist/actions/executors/index.js +28 -28
  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 +12 -12
  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 +28 -22
  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 +11 -0
  49. package/dist/apps/faq/index.js.map +7 -0
  50. package/dist/apps/gamification/index.js +2 -0
  51. package/dist/apps/gamification/index.js.map +7 -0
  52. package/dist/apps/index.d.ts +10 -13
  53. package/dist/apps/index.js +8 -17
  54. package/dist/apps/index.js.map +1 -1
  55. package/dist/apps/nav/index.js +11 -0
  56. package/dist/apps/nav/index.js.map +7 -0
  57. package/dist/apps/types.d.ts +10 -10
  58. package/dist/blocks/data/ComparisonBlock.d.ts +1 -1
  59. package/dist/blocks/data/ComparisonBlock.js +40 -40
  60. package/dist/blocks/data/ComparisonBlock.js.map +1 -1
  61. package/dist/blocks/data/StatsBlock.d.ts +1 -1
  62. package/dist/blocks/data/StatsBlock.js +41 -41
  63. package/dist/blocks/data/StatsBlock.js.map +1 -1
  64. package/dist/blocks/data/index.d.ts +2 -2
  65. package/dist/blocks/data/index.js +2 -2
  66. package/dist/blocks/index.d.ts +5 -5
  67. package/dist/blocks/index.js +29 -29
  68. package/dist/blocks/index.js.map +1 -1
  69. package/dist/blocks/interactive/ChecklistBlock.d.ts +1 -1
  70. package/dist/blocks/interactive/ChecklistBlock.js +60 -60
  71. package/dist/blocks/interactive/ChecklistBlock.js.map +1 -1
  72. package/dist/blocks/interactive/RatingBlock.d.ts +1 -1
  73. package/dist/blocks/interactive/RatingBlock.js +75 -65
  74. package/dist/blocks/interactive/RatingBlock.js.map +1 -1
  75. package/dist/blocks/interactive/index.d.ts +2 -2
  76. package/dist/blocks/interactive/index.js +2 -2
  77. package/dist/blocks/notification/NotificationBlock.d.ts +2 -2
  78. package/dist/blocks/notification/NotificationBlock.js +67 -63
  79. package/dist/blocks/notification/NotificationBlock.js.map +1 -1
  80. package/dist/blocks/notification/index.d.ts +1 -1
  81. package/dist/blocks/notification/index.js +1 -1
  82. package/dist/bootstrap.d.ts +10 -10
  83. package/dist/bootstrap.js +54 -40
  84. package/dist/bootstrap.js.map +1 -1
  85. package/dist/components/ShadowCanvasOverlay.d.ts +6 -6
  86. package/dist/components/ShadowCanvasOverlay.js +117 -107
  87. package/dist/components/ShadowCanvasOverlay.js.map +1 -1
  88. package/dist/components/TileCard.d.ts +5 -5
  89. package/dist/components/TileCard.js +174 -143
  90. package/dist/components/TileCard.js.map +1 -1
  91. package/dist/components/TileWheel.d.ts +3 -3
  92. package/dist/components/TileWheel.js +7 -7
  93. package/dist/components/TileWheel.js.map +1 -1
  94. package/dist/configFetcher.d.ts +2 -2
  95. package/dist/configFetcher.js +10 -7
  96. package/dist/configFetcher.js.map +1 -1
  97. package/dist/context/ContextManager.d.ts +3 -3
  98. package/dist/context/ContextManager.js +15 -15
  99. package/dist/context/ContextManager.js.map +1 -1
  100. package/dist/context/index.d.ts +4 -4
  101. package/dist/context/index.js +3 -3
  102. package/dist/context/schema.d.ts +1 -1
  103. package/dist/context/schema.js +1 -1
  104. package/dist/decisions/engine.d.ts +5 -5
  105. package/dist/decisions/engine.js +13 -13
  106. package/dist/decisions/index.d.ts +6 -6
  107. package/dist/decisions/index.js +5 -5
  108. package/dist/decisions/schema.d.ts +1 -1
  109. package/dist/decisions/schema.js +20 -20
  110. package/dist/decisions/strategies/rules.d.ts +1 -1
  111. package/dist/decisions/strategies/rules.js +24 -24
  112. package/dist/decisions/strategies/rules.js.map +1 -1
  113. package/dist/decisions/strategies/score.d.ts +1 -1
  114. package/dist/decisions/strategies/score.js +3 -3
  115. package/dist/decisions/types.d.ts +19 -19
  116. package/dist/editorLoader.js +26 -20
  117. package/dist/editorLoader.js.map +1 -1
  118. package/dist/events/EventBus.d.ts +3 -3
  119. package/dist/events/EventBus.js +5 -7
  120. package/dist/events/EventBus.js.map +1 -1
  121. package/dist/events/index.d.ts +6 -6
  122. package/dist/events/index.js +5 -5
  123. package/dist/events/normalizers/canvas.d.ts +2 -2
  124. package/dist/events/normalizers/canvas.js +3 -3
  125. package/dist/events/normalizers/canvas.js.map +1 -1
  126. package/dist/events/normalizers/posthog.d.ts +1 -1
  127. package/dist/events/normalizers/posthog.js +34 -27
  128. package/dist/events/normalizers/posthog.js.map +1 -1
  129. package/dist/events/schema.d.ts +1 -1
  130. package/dist/events/schema.js +2 -2
  131. package/dist/events/types.d.ts +1 -1
  132. package/dist/events/types.js +27 -27
  133. package/dist/experiments/adapters/growthbook.d.ts +4 -4
  134. package/dist/experiments/adapters/growthbook.js +5 -5
  135. package/dist/experiments/adapters/growthbook.js.map +1 -1
  136. package/dist/experiments/index.d.ts +3 -3
  137. package/dist/experiments/index.js +1 -1
  138. package/dist/experiments/registry.d.ts +2 -2
  139. package/dist/experiments/registry.js +2 -2
  140. package/dist/experiments/types.d.ts +5 -1
  141. package/dist/fetchers/cdnFetcher.d.ts +1 -1
  142. package/dist/fetchers/cdnFetcher.js +4 -8
  143. package/dist/fetchers/cdnFetcher.js.map +1 -1
  144. package/dist/fetchers/experimentsFetcher.d.ts +2 -2
  145. package/dist/fetchers/experimentsFetcher.js +7 -7
  146. package/dist/fetchers/experimentsFetcher.js.map +1 -1
  147. package/dist/fetchers/index.d.ts +3 -3
  148. package/dist/fetchers/index.js +2 -2
  149. package/dist/fetchers/index.js.map +1 -1
  150. package/dist/fetchers/registry.d.ts +1 -1
  151. package/dist/fetchers/registry.js +4 -4
  152. package/dist/fetchers/types.d.ts +1 -1
  153. package/dist/hooks/useCanvasOverlays.d.ts +5 -5
  154. package/dist/hooks/useCanvasOverlays.js +15 -13
  155. package/dist/hooks/useCanvasOverlays.js.map +1 -1
  156. package/dist/hooks/useHostPatches.d.ts +2 -2
  157. package/dist/hooks/useHostPatches.js +8 -8
  158. package/dist/hooks/useHostPatches.js.map +1 -1
  159. package/dist/hooks/useShadowCanvasConfig.d.ts +3 -3
  160. package/dist/hooks/useShadowCanvasConfig.js +5 -2
  161. package/dist/hooks/useShadowCanvasConfig.js.map +1 -1
  162. package/dist/hostPatcher/core/patcher.d.ts +1 -1
  163. package/dist/hostPatcher/core/patcher.js +18 -9
  164. package/dist/hostPatcher/core/patcher.js.map +1 -1
  165. package/dist/hostPatcher/core/sanitizer.js +24 -3
  166. package/dist/hostPatcher/core/sanitizer.js.map +1 -1
  167. package/dist/hostPatcher/policy/defaultPolicy.js +15 -5
  168. package/dist/hostPatcher/policy/defaultPolicy.js.map +1 -1
  169. package/dist/hostPatcher/utils/anchors.js +4 -6
  170. package/dist/hostPatcher/utils/anchors.js.map +1 -1
  171. package/dist/index.d.ts +32 -32
  172. package/dist/index.js +29 -29
  173. package/dist/index.js.map +1 -1
  174. package/dist/metrics/index.d.ts +1 -1
  175. package/dist/metrics/index.js +1 -1
  176. package/dist/metrics/sessionMetrics.d.ts +1 -1
  177. package/dist/metrics/sessionMetrics.js +6 -6
  178. package/dist/overlays/fetcher.d.ts +2 -2
  179. package/dist/overlays/fetcher.js +4 -4
  180. package/dist/overlays/recipeRegistry.js +2 -2
  181. package/dist/overlays/recipeRegistry.js.map +1 -1
  182. package/dist/overlays/runtime/anchor/resolve.js +1 -1
  183. package/dist/overlays/runtime/anchor/resolve.js.map +1 -1
  184. package/dist/overlays/runtime/index.d.ts +7 -7
  185. package/dist/overlays/runtime/index.js +7 -7
  186. package/dist/overlays/runtime/overlay/highlight.js +39 -39
  187. package/dist/overlays/runtime/overlay/highlight.js.map +1 -1
  188. package/dist/overlays/runtime/overlay/modal.js +5 -5
  189. package/dist/overlays/runtime/overlay/modal.js.map +1 -1
  190. package/dist/overlays/runtime/overlay/root.js +1 -1
  191. package/dist/overlays/runtime/overlay/runner.js +70 -23
  192. package/dist/overlays/runtime/overlay/runner.js.map +1 -1
  193. package/dist/overlays/runtime/overlay/tooltip.d.ts +1 -1
  194. package/dist/overlays/runtime/overlay/tooltip.js +10 -10
  195. package/dist/overlays/runtime/overlay/tooltip.js.map +1 -1
  196. package/dist/overlays/runtime/utils/dom.js +4 -1
  197. package/dist/overlays/runtime/utils/dom.js.map +1 -1
  198. package/dist/overlays/schema.js +12 -8
  199. package/dist/overlays/schema.js.map +1 -1
  200. package/dist/react.d.ts +7 -7
  201. package/dist/react.js +4 -4
  202. package/dist/react.js.map +1 -1
  203. package/dist/render/RenderContext.d.ts +2 -2
  204. package/dist/render/RenderContext.js +5 -5
  205. package/dist/render/RenderContext.js.map +1 -1
  206. package/dist/render/index.d.ts +3 -3
  207. package/dist/render/index.js +1 -1
  208. package/dist/render/types.d.ts +4 -4
  209. package/dist/runtime.d.ts +12 -12
  210. package/dist/runtime.js +20 -20
  211. package/dist/runtime.js.map +1 -1
  212. package/dist/smart-canvas.esm.js +45 -75
  213. package/dist/smart-canvas.esm.js.map +4 -4
  214. package/dist/smart-canvas.js +24594 -21824
  215. package/dist/smart-canvas.js.map +4 -4
  216. package/dist/smart-canvas.min.js +45 -75
  217. package/dist/smart-canvas.min.js.map +4 -4
  218. package/dist/state/StateStore.d.ts +1 -1
  219. package/dist/state/StateStore.js +9 -9
  220. package/dist/state/StateStore.js.map +1 -1
  221. package/dist/state/helpers/cooldowns.d.ts +1 -1
  222. package/dist/state/helpers/cooldowns.js +1 -1
  223. package/dist/state/helpers/dismissals.d.ts +1 -1
  224. package/dist/state/helpers/dismissals.js +1 -1
  225. package/dist/state/helpers/frequency.d.ts +1 -1
  226. package/dist/state/helpers/frequency.js +1 -1
  227. package/dist/state/index.d.ts +4 -4
  228. package/dist/state/index.js +3 -3
  229. package/dist/state/schema.d.ts +1 -1
  230. package/dist/state/schema.js +1 -1
  231. package/dist/store/example.js +13 -13
  232. package/dist/store/example.js.map +1 -1
  233. package/dist/store/mini-effector.js +6 -8
  234. package/dist/store/mini-effector.js.map +1 -1
  235. package/dist/surfaces/Surfaces.d.ts +1 -1
  236. package/dist/surfaces/Surfaces.js +25 -25
  237. package/dist/surfaces/Surfaces.js.map +1 -1
  238. package/dist/surfaces/index.d.ts +4 -4
  239. package/dist/surfaces/index.js +3 -3
  240. package/dist/surfaces/positioning.d.ts +2 -2
  241. package/dist/surfaces/positioning.js +74 -77
  242. package/dist/surfaces/positioning.js.map +1 -1
  243. package/dist/surfaces/types.d.ts +9 -9
  244. package/dist/surfaces/types.js +7 -7
  245. package/dist/surfaces/types.js.map +1 -1
  246. package/dist/telemetry/adapters/noop.d.ts +12 -0
  247. package/dist/telemetry/adapters/noop.js +42 -0
  248. package/dist/telemetry/adapters/noop.js.map +1 -0
  249. package/dist/telemetry/adapters/posthog.d.ts +2 -2
  250. package/dist/telemetry/adapters/posthog.js +29 -16
  251. package/dist/telemetry/adapters/posthog.js.map +1 -1
  252. package/dist/telemetry/index.d.ts +4 -3
  253. package/dist/telemetry/index.js +3 -2
  254. package/dist/telemetry/index.js.map +1 -1
  255. package/dist/telemetry/registry.d.ts +2 -2
  256. package/dist/telemetry/registry.js +4 -2
  257. package/dist/telemetry/registry.js.map +1 -1
  258. package/dist/telemetry/types.d.ts +1 -1
  259. package/dist/theme/ThemeProvider.d.ts +2 -2
  260. package/dist/theme/ThemeProvider.js +21 -21
  261. package/dist/theme/ThemeProvider.js.map +1 -1
  262. package/dist/theme/defaultTheme.d.ts +2 -2
  263. package/dist/theme/defaultTheme.js +111 -111
  264. package/dist/theme/defaultTheme.js.map +1 -1
  265. package/dist/theme/extractHostTheme.d.ts +1 -1
  266. package/dist/theme/extractHostTheme.js +42 -44
  267. package/dist/theme/extractHostTheme.js.map +1 -1
  268. package/dist/theme/index.d.ts +5 -5
  269. package/dist/theme/index.js +3 -3
  270. package/dist/theme/index.js.map +1 -1
  271. package/dist/theme/types.d.ts +2 -2
  272. package/dist/token.js +3 -6
  273. package/dist/token.js.map +1 -1
  274. package/dist/types-only.d.ts +1 -1
  275. package/dist/types.d.ts +43 -43
  276. package/dist/widgets/WidgetRegistry.d.ts +2 -2
  277. package/dist/widgets/WidgetRegistry.js +11 -11
  278. package/dist/widgets/WidgetRegistry.js.map +1 -1
  279. package/dist/widgets/index.d.ts +2 -2
  280. package/dist/widgets/index.js +1 -1
  281. package/dist/widgets/index.js.map +1 -1
  282. package/package.json +11 -12
  283. package/schema/canvas-config.schema.json +51 -7
  284. package/schema/runtime-context.schema.json +1 -5
@@ -5,40 +5,40 @@ export function evaluateCondition(condition, evalContext) {
5
5
  var _a, _b, _c, _d, _e;
6
6
  const { context, state, events } = evalContext;
7
7
  switch (condition.type) {
8
- case "page_url": {
8
+ case 'page_url': {
9
9
  const { url } = condition;
10
10
  const currentUrl = context.page.url;
11
11
  // Simple pattern matching with wildcards
12
12
  const pattern = url
13
- .replace(/[.+^${}()|[\]\\]/g, "\\$&") // Escape regex chars except * and ?
14
- .replace(/\*\*/g, ".*") // ** matches anything
15
- .replace(/\*/g, "[^/]*"); // * matches within path segment
13
+ .replace(/[.+^${}()|[\]\\]/g, '\\$&') // Escape regex chars except * and ?
14
+ .replace(/\*\*/g, '.*') // ** matches anything
15
+ .replace(/\*/g, '[^/]*'); // * matches within path segment
16
16
  const regex = new RegExp(`^${pattern}$`);
17
17
  return regex.test(currentUrl);
18
18
  }
19
- case "route": {
19
+ case 'route': {
20
20
  return context.page.routeId === condition.routeId;
21
21
  }
22
- case "anchor_visible": {
22
+ case 'anchor_visible': {
23
23
  const anchor = (_a = context.anchors) === null || _a === void 0 ? void 0 : _a.find((a) => a.anchorId === condition.anchorId);
24
24
  switch (condition.state) {
25
- case "visible":
25
+ case 'visible':
26
26
  return (anchor === null || anchor === void 0 ? void 0 : anchor.visible) === true;
27
- case "present":
27
+ case 'present':
28
28
  return (anchor === null || anchor === void 0 ? void 0 : anchor.present) === true;
29
- case "absent":
29
+ case 'absent':
30
30
  return !(anchor === null || anchor === void 0 ? void 0 : anchor.present);
31
31
  default:
32
32
  return false;
33
33
  }
34
34
  }
35
- case "event_occurred": {
35
+ case 'event_occurred': {
36
36
  if (!events)
37
37
  return false;
38
38
  const withinMs = (_b = condition.withinMs) !== null && _b !== void 0 ? _b : 60000; // Default 1 minute
39
39
  return events.hasRecentEvent(condition.eventName, withinMs);
40
40
  }
41
- case "state_equals": {
41
+ case 'state_equals': {
42
42
  // This checks arbitrary state values - implementation depends on
43
43
  // how the state store exposes values. For now, check session storage.
44
44
  if (!state)
@@ -47,7 +47,7 @@ export function evaluateCondition(condition, evalContext) {
47
47
  // For simplicity, we'll do a basic comparison
48
48
  return false; // TODO: Implement when state interface is clearer
49
49
  }
50
- case "viewport": {
50
+ case 'viewport': {
51
51
  const { width, height } = context.viewport;
52
52
  if (condition.minWidth !== undefined && width < condition.minWidth)
53
53
  return false;
@@ -59,39 +59,39 @@ export function evaluateCondition(condition, evalContext) {
59
59
  return false;
60
60
  return true;
61
61
  }
62
- case "session_metric": {
62
+ case 'session_metric': {
63
63
  if (!state)
64
64
  return false;
65
65
  const metricValue = state.getSessionMetric(condition.key);
66
66
  const { operator, threshold } = condition;
67
67
  switch (operator) {
68
- case "gte":
68
+ case 'gte':
69
69
  return metricValue >= threshold;
70
- case "lte":
70
+ case 'lte':
71
71
  return metricValue <= threshold;
72
- case "eq":
72
+ case 'eq':
73
73
  return metricValue === threshold;
74
- case "gt":
74
+ case 'gt':
75
75
  return metricValue > threshold;
76
- case "lt":
76
+ case 'lt':
77
77
  return metricValue < threshold;
78
78
  default:
79
79
  return false;
80
80
  }
81
81
  }
82
- case "dismissed": {
82
+ case 'dismissed': {
83
83
  if (!state)
84
84
  return (_c = condition.inverted) !== null && _c !== void 0 ? _c : false;
85
85
  const isDismissed = state.isDismissed(condition.key);
86
86
  return condition.inverted ? !isDismissed : isDismissed;
87
87
  }
88
- case "cooldown_active": {
88
+ case 'cooldown_active': {
89
89
  if (!state)
90
90
  return (_d = condition.inverted) !== null && _d !== void 0 ? _d : false;
91
91
  const isActive = state.isCooldownActive(condition.key);
92
92
  return condition.inverted ? !isActive : isActive;
93
93
  }
94
- case "frequency_limit": {
94
+ case 'frequency_limit': {
95
95
  if (!state)
96
96
  return (_e = condition.inverted) !== null && _e !== void 0 ? _e : false;
97
97
  const count = state.getFrequencyCount(condition.key);
@@ -100,7 +100,7 @@ export function evaluateCondition(condition, evalContext) {
100
100
  }
101
101
  default:
102
102
  // Unknown condition type - fail closed (return false)
103
- console.warn("[RuleStrategy] Unknown condition type:", condition.type);
103
+ console.warn('[RuleStrategy] Unknown condition type:', condition.type);
104
104
  return false;
105
105
  }
106
106
  }
@@ -133,7 +133,7 @@ export function evaluateRuleStrategy(strategy, evalContext) {
133
133
  value: rule.value,
134
134
  isFallback: false,
135
135
  matchInfo: {
136
- strategyType: "rules",
136
+ strategyType: 'rules',
137
137
  matchedRuleIndex: i,
138
138
  evaluatedConditions: conditionResults,
139
139
  },
@@ -145,7 +145,7 @@ export function evaluateRuleStrategy(strategy, evalContext) {
145
145
  value: strategy.default,
146
146
  isFallback: true,
147
147
  matchInfo: {
148
- strategyType: "rules",
148
+ strategyType: 'rules',
149
149
  },
150
150
  };
151
151
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../src/decisions/strategies/rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../src/decisions/strategies/rules.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Compares an augmented field value against a threshold.
5
5
  */
6
- import type { ScoreStrategy, DecisionResult, EvaluationContext } from "../types";
6
+ import type { ScoreStrategy, DecisionResult, EvaluationContext } from '../types';
7
7
  /**
8
8
  * Evaluate a ScoreStrategy and return the result.
9
9
  */
@@ -7,12 +7,12 @@ export function evaluateScoreStrategy(strategy, evalContext) {
7
7
  // Get the score from augmented context
8
8
  const score = (_a = context.augmented) === null || _a === void 0 ? void 0 : _a[strategy.field];
9
9
  // If no score available, return below value as fallback
10
- if (score === undefined || typeof score !== "number") {
10
+ if (score === undefined || typeof score !== 'number') {
11
11
  return {
12
12
  value: strategy.below,
13
13
  isFallback: true,
14
14
  matchInfo: {
15
- strategyType: "score",
15
+ strategyType: 'score',
16
16
  },
17
17
  };
18
18
  }
@@ -22,7 +22,7 @@ export function evaluateScoreStrategy(strategy, evalContext) {
22
22
  value: isAbove ? strategy.above : strategy.below,
23
23
  isFallback: false,
24
24
  matchInfo: {
25
- strategyType: "score",
25
+ strategyType: 'score',
26
26
  },
27
27
  };
28
28
  }
@@ -5,12 +5,12 @@
5
5
  * and adaptive behavior in the v2 runtime. It replaces the experiment-based
6
6
  * filtering with a more flexible, context-aware system.
7
7
  */
8
- import type { RuntimeContext } from "../context/types";
8
+ import type { RuntimeContext } from '../context/types';
9
9
  /**
10
10
  * Condition that checks if the current page URL matches a pattern.
11
11
  */
12
12
  export interface PageUrlCondition {
13
- type: "page_url";
13
+ type: 'page_url';
14
14
  /** URL pattern (supports wildcards: * and **) */
15
15
  url: string;
16
16
  }
@@ -18,7 +18,7 @@ export interface PageUrlCondition {
18
18
  * Condition that checks if the current route matches.
19
19
  */
20
20
  export interface RouteCondition {
21
- type: "route";
21
+ type: 'route';
22
22
  /** Route ID from RoutesConfig */
23
23
  routeId: string;
24
24
  }
@@ -26,17 +26,17 @@ export interface RouteCondition {
26
26
  * Condition that checks anchor element visibility.
27
27
  */
28
28
  export interface AnchorVisibleCondition {
29
- type: "anchor_visible";
29
+ type: 'anchor_visible';
30
30
  /** Anchor element ID */
31
31
  anchorId: string;
32
32
  /** Required state */
33
- state: "visible" | "present" | "absent";
33
+ state: 'visible' | 'present' | 'absent';
34
34
  }
35
35
  /**
36
36
  * Condition that checks if an event occurred recently.
37
37
  */
38
38
  export interface EventOccurredCondition {
39
- type: "event_occurred";
39
+ type: 'event_occurred';
40
40
  /** Event name to check */
41
41
  eventName: string;
42
42
  /** Time window in milliseconds (optional) */
@@ -46,7 +46,7 @@ export interface EventOccurredCondition {
46
46
  * Condition that checks a state value.
47
47
  */
48
48
  export interface StateEqualsCondition {
49
- type: "state_equals";
49
+ type: 'state_equals';
50
50
  /** State key to check */
51
51
  key: string;
52
52
  /** Expected value */
@@ -56,7 +56,7 @@ export interface StateEqualsCondition {
56
56
  * Condition that checks viewport size.
57
57
  */
58
58
  export interface ViewportCondition {
59
- type: "viewport";
59
+ type: 'viewport';
60
60
  /** Minimum viewport width */
61
61
  minWidth?: number;
62
62
  /** Maximum viewport width */
@@ -70,11 +70,11 @@ export interface ViewportCondition {
70
70
  * Condition that checks a session metric threshold.
71
71
  */
72
72
  export interface SessionMetricCondition {
73
- type: "session_metric";
73
+ type: 'session_metric';
74
74
  /** Metric key */
75
75
  key: string;
76
76
  /** Comparison operator */
77
- operator: "gte" | "lte" | "eq" | "gt" | "lt";
77
+ operator: 'gte' | 'lte' | 'eq' | 'gt' | 'lt';
78
78
  /** Threshold value */
79
79
  threshold: number;
80
80
  }
@@ -82,7 +82,7 @@ export interface SessionMetricCondition {
82
82
  * Condition that checks if an item has been dismissed.
83
83
  */
84
84
  export interface DismissedCondition {
85
- type: "dismissed";
85
+ type: 'dismissed';
86
86
  /** Item key to check */
87
87
  key: string;
88
88
  /** Invert the condition (true if NOT dismissed) */
@@ -92,7 +92,7 @@ export interface DismissedCondition {
92
92
  * Condition that checks if a cooldown is active.
93
93
  */
94
94
  export interface CooldownActiveCondition {
95
- type: "cooldown_active";
95
+ type: 'cooldown_active';
96
96
  /** Cooldown key to check */
97
97
  key: string;
98
98
  /** Invert the condition (true if NOT active) */
@@ -102,7 +102,7 @@ export interface CooldownActiveCondition {
102
102
  * Condition that checks frequency limits.
103
103
  */
104
104
  export interface FrequencyLimitCondition {
105
- type: "frequency_limit";
105
+ type: 'frequency_limit';
106
106
  /** Frequency key to check */
107
107
  key: string;
108
108
  /** Maximum allowed count */
@@ -127,7 +127,7 @@ export interface Rule<T = unknown> {
127
127
  * Rule-based strategy: evaluates rules in order, returns first match.
128
128
  */
129
129
  export interface RuleStrategy<T = unknown> {
130
- type: "rules";
130
+ type: 'rules';
131
131
  /** Rules to evaluate in order */
132
132
  rules: Rule<T>[];
133
133
  /** Default value if no rules match */
@@ -137,7 +137,7 @@ export interface RuleStrategy<T = unknown> {
137
137
  * Score-based strategy: compares an augmented field against a threshold.
138
138
  */
139
139
  export interface ScoreStrategy<T = unknown> {
140
- type: "score";
140
+ type: 'score';
141
141
  /** Field name in augmented context */
142
142
  field: string;
143
143
  /** Threshold value */
@@ -152,7 +152,7 @@ export interface ScoreStrategy<T = unknown> {
152
152
  * (Phase 3 - placeholder)
153
153
  */
154
154
  export interface ModelStrategy<T = unknown> {
155
- type: "model";
155
+ type: 'model';
156
156
  /** Model endpoint or ID */
157
157
  modelId: string;
158
158
  /** Input fields from context */
@@ -167,11 +167,11 @@ export interface ModelStrategy<T = unknown> {
167
167
  * (Phase 3 - placeholder)
168
168
  */
169
169
  export interface ExternalStrategy<T = unknown> {
170
- type: "external";
170
+ type: 'external';
171
171
  /** Endpoint URL */
172
172
  endpoint: string;
173
173
  /** HTTP method */
174
- method?: "GET" | "POST";
174
+ method?: 'GET' | 'POST';
175
175
  /** Default value if endpoint fails */
176
176
  default: T;
177
177
  /** Timeout in milliseconds */
@@ -192,7 +192,7 @@ export interface DecisionResult<T = unknown> {
192
192
  /** Debug info about which rule/condition matched */
193
193
  matchInfo?: {
194
194
  /** Strategy type that produced the result */
195
- strategyType: DecisionStrategy<T>["type"];
195
+ strategyType: DecisionStrategy<T>['type'];
196
196
  /** Index of matched rule (for rule strategy) */
197
197
  matchedRuleIndex?: number;
198
198
  /** Conditions that were evaluated */
@@ -1,5 +1,5 @@
1
- import { debug, warn } from "./logger";
2
- export const DEFAULT_EDITOR_URL = "https://cdn.syntrologie.com/editor-sdk/latest/editor-sdk.js";
1
+ import { debug, warn } from './logger';
2
+ export const DEFAULT_EDITOR_URL = 'https://cdn.syntrologie.com/editor-sdk/latest/editor-sdk.js';
3
3
  /**
4
4
  * Allowed hosts for loading the editor SDK.
5
5
  * Only scripts from these hosts will be loaded.
@@ -16,10 +16,16 @@ const ALLOWED_EDITOR_HOSTS = [
16
16
  /**
17
17
  * Validates that an editor URL is from an allowed host.
18
18
  * Requires HTTPS for non-localhost URLs.
19
+ * Relative URLs (starting with /) are allowed and assumed to be same-origin.
19
20
  */
20
21
  function validateEditorUrl(url) {
21
22
  debug('Syntro Runtime', 'Validating editor URL:', url);
22
23
  try {
24
+ // Allow relative URLs (same-origin) - they start with /
25
+ if (url.startsWith('/')) {
26
+ debug('Syntro Runtime', '✓ Relative URL allowed (same-origin):', url);
27
+ return true;
28
+ }
23
29
  const parsed = new URL(url);
24
30
  const isLocalhost = /^(localhost|127\.0\.0\.1)$/.test(parsed.hostname);
25
31
  debug('Syntro Runtime', 'Parsed URL:', {
@@ -33,7 +39,7 @@ function validateEditorUrl(url) {
33
39
  return false;
34
40
  }
35
41
  // Check against allowlist - handle both exact match and suffix match
36
- const isAllowed = ALLOWED_EDITOR_HOSTS.some(host => {
42
+ const isAllowed = ALLOWED_EDITOR_HOSTS.some((host) => {
37
43
  if (host.startsWith('.')) {
38
44
  // Suffix match for wildcards like '.syntrologie.com'
39
45
  return parsed.hostname.endsWith(host) || parsed.hostname === host.slice(1);
@@ -64,7 +70,7 @@ function validateEditorUrl(url) {
64
70
  export const shouldLoadEditor = () => {
65
71
  var _a;
66
72
  debug('Syntro Runtime', '====== EDITOR LOAD CHECK ======');
67
- if (typeof window === "undefined") {
73
+ if (typeof window === 'undefined') {
68
74
  debug('Syntro Runtime', 'Not in browser - skipping editor');
69
75
  return false;
70
76
  }
@@ -72,14 +78,14 @@ export const shouldLoadEditor = () => {
72
78
  debug('Syntro Runtime', 'URL:', window.location.href);
73
79
  debug('Syntro Runtime', 'Search params:', window.location.search);
74
80
  // Require editor_token for security - prevents arbitrary editor activation
75
- const hasEditorFlag = params.has("syntro_editor") || params.has("syntro-editor");
76
- const hasEditorToken = params.has("editor_token");
81
+ const hasEditorFlag = params.has('syntro_editor') || params.has('syntro-editor');
82
+ const hasEditorToken = params.has('editor_token');
77
83
  debug('Syntro Runtime', 'Editor flags:', {
78
84
  hasEditorFlag,
79
85
  hasEditorToken,
80
- syntro_editor: params.get("syntro_editor"),
81
- "syntro-editor": params.get("syntro-editor"),
82
- editor_token: hasEditorToken ? `${(_a = params.get("editor_token")) === null || _a === void 0 ? void 0 : _a.slice(0, 10)}...` : 'none',
86
+ syntro_editor: params.get('syntro_editor'),
87
+ 'syntro-editor': params.get('syntro-editor'),
88
+ editor_token: hasEditorToken ? `${(_a = params.get('editor_token')) === null || _a === void 0 ? void 0 : _a.slice(0, 10)}...` : 'none',
83
89
  });
84
90
  if (hasEditorFlag && !hasEditorToken) {
85
91
  warn('Syntro Runtime', '❌ Editor activation requires editor_token parameter');
@@ -99,19 +105,19 @@ export const shouldLoadEditor = () => {
99
105
  export const isAuditMode = () => {
100
106
  var _a;
101
107
  debug('Syntro Runtime', '====== AUDIT MODE CHECK ======');
102
- if (typeof window === "undefined") {
108
+ if (typeof window === 'undefined') {
103
109
  debug('Syntro Runtime', 'Not in browser - skipping audit');
104
110
  return false;
105
111
  }
106
112
  const params = new URLSearchParams(window.location.search);
107
- const hasAuditFlag = params.has("syntro_audit");
108
- const hasAuditToken = params.has("audit_token");
109
- const auditSessionId = params.get("audit_session_id");
113
+ const hasAuditFlag = params.has('syntro_audit');
114
+ const hasAuditToken = params.has('audit_token');
115
+ const auditSessionId = params.get('audit_session_id');
110
116
  debug('Syntro Runtime', 'Audit flags:', {
111
117
  hasAuditFlag,
112
118
  hasAuditToken,
113
119
  auditSessionId: auditSessionId ? `${auditSessionId.slice(0, 8)}...` : 'none',
114
- audit_token: hasAuditToken ? `${(_a = params.get("audit_token")) === null || _a === void 0 ? void 0 : _a.slice(0, 10)}...` : 'none',
120
+ audit_token: hasAuditToken ? `${(_a = params.get('audit_token')) === null || _a === void 0 ? void 0 : _a.slice(0, 10)}...` : 'none',
115
121
  });
116
122
  // Require syntro_audit flag to activate audit mode
117
123
  if (!hasAuditFlag) {
@@ -145,10 +151,10 @@ export const getActiveSdkMode = () => {
145
151
  * Returns the token value or null if not found.
146
152
  */
147
153
  function getTokenFromUrl() {
148
- if (typeof window === "undefined")
154
+ if (typeof window === 'undefined')
149
155
  return null;
150
156
  const params = new URLSearchParams(window.location.search);
151
- return params.get("editor_token") || params.get("audit_token");
157
+ return params.get('editor_token') || params.get('audit_token');
152
158
  }
153
159
  /**
154
160
  * Dynamically loads the Editor SDK script.
@@ -157,7 +163,7 @@ function getTokenFromUrl() {
157
163
  */
158
164
  export const loadEditorSdk = async (editorUrlOrOptions) => {
159
165
  debug('Syntro Runtime', '====== LOAD EDITOR SDK ======');
160
- if (typeof window === "undefined") {
166
+ if (typeof window === 'undefined') {
161
167
  debug('Syntro Runtime', 'Not in browser - skipping editor SDK load');
162
168
  return;
163
169
  }
@@ -168,7 +174,7 @@ export const loadEditorSdk = async (editorUrlOrOptions) => {
168
174
  // Handle both legacy string arg and new options object
169
175
  const options = typeof editorUrlOrOptions === 'string'
170
176
  ? { editorUrl: editorUrlOrOptions }
171
- : editorUrlOrOptions !== null && editorUrlOrOptions !== void 0 ? editorUrlOrOptions : {};
177
+ : (editorUrlOrOptions !== null && editorUrlOrOptions !== void 0 ? editorUrlOrOptions : {});
172
178
  // Check for editor SDK URL override in query params
173
179
  const params = new URLSearchParams(window.location.search);
174
180
  const urlParamEditorSdk = params.get('syntro_editor_sdk_url');
@@ -201,13 +207,13 @@ export const loadEditorSdk = async (editorUrlOrOptions) => {
201
207
  }
202
208
  debug('Syntro Runtime', '✓ URL validated, injecting script tag...');
203
209
  return new Promise((resolve, reject) => {
204
- const script = document.createElement("script");
210
+ const script = document.createElement('script');
205
211
  script.src = editorUrl;
206
212
  script.async = true;
207
213
  // Add SRI integrity check if provided
208
214
  if (options.integrity) {
209
215
  script.integrity = options.integrity;
210
- script.crossOrigin = "anonymous";
216
+ script.crossOrigin = 'anonymous';
211
217
  debug('Syntro Runtime', 'SRI integrity check enabled');
212
218
  }
213
219
  script.onload = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"editorLoader.js","sourceRoot":"","sources":["../src/editorLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editorLoader.js","sourceRoot":"","sources":["../src/editorLoader.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * - Event history for recent event lookups
7
7
  * - Filtering by name, pattern, or source
8
8
  */
9
- import type { NormalizedEvent, EventFilter, EventCallback, EventUnsubscribe } from "./types";
9
+ import type { NormalizedEvent, EventFilter, EventCallback, EventUnsubscribe } from './types';
10
10
  export interface EventBusOptions {
11
11
  /** Maximum number of events to keep in history */
12
12
  maxHistorySize?: number;
@@ -27,7 +27,7 @@ export declare class EventBus {
27
27
  /**
28
28
  * Publish an event to all matching subscribers.
29
29
  */
30
- publish(name: string, props?: Record<string, unknown>, source?: NormalizedEvent["source"]): void;
30
+ publish(name: string, props?: Record<string, unknown>, source?: NormalizedEvent['source']): void;
31
31
  /**
32
32
  * Publish a pre-constructed NormalizedEvent.
33
33
  */
@@ -39,7 +39,7 @@ export declare class EventBus {
39
39
  /**
40
40
  * Check if an event with a specific name occurred within a time window.
41
41
  */
42
- hasRecentEvent(eventName: string, withinMs: number, source?: NormalizedEvent["source"]): boolean;
42
+ hasRecentEvent(eventName: string, withinMs: number, source?: NormalizedEvent['source']): boolean;
43
43
  /**
44
44
  * Count events matching a filter within a time window.
45
45
  */
@@ -1,4 +1,4 @@
1
- import { EVENT_SCHEMA_VERSION } from "./types";
1
+ import { EVENT_SCHEMA_VERSION } from './types';
2
2
  /**
3
3
  * Check if an event matches a filter.
4
4
  */
@@ -51,7 +51,7 @@ export class EventBus {
51
51
  let filter;
52
52
  let callback;
53
53
  // Handle overloaded signatures
54
- if (typeof filterOrCallback === "function") {
54
+ if (typeof filterOrCallback === 'function') {
55
55
  filter = undefined;
56
56
  callback = filterOrCallback;
57
57
  }
@@ -68,7 +68,7 @@ export class EventBus {
68
68
  /**
69
69
  * Publish an event to all matching subscribers.
70
70
  */
71
- publish(name, props, source = "canvas") {
71
+ publish(name, props, source = 'canvas') {
72
72
  const event = {
73
73
  ts: Date.now(),
74
74
  name,
@@ -94,7 +94,7 @@ export class EventBus {
94
94
  subscription.callback(event);
95
95
  }
96
96
  catch (err) {
97
- console.error("[EventBus] Subscriber error:", err);
97
+ console.error('[EventBus] Subscriber error:', err);
98
98
  }
99
99
  }
100
100
  }
@@ -117,9 +117,7 @@ export class EventBus {
117
117
  */
118
118
  hasRecentEvent(eventName, withinMs, source) {
119
119
  const cutoff = Date.now() - withinMs;
120
- return this.history.some((e) => e.name === eventName &&
121
- e.ts >= cutoff &&
122
- (source === undefined || e.source === source));
120
+ return this.history.some((e) => e.name === eventName && e.ts >= cutoff && (source === undefined || e.source === source));
123
121
  }
124
122
  /**
125
123
  * Count events matching a filter within a time window.
@@ -1 +1 @@
1
- {"version":3,"file":"EventBus.js","sourceRoot":"","sources":["../../src/events/EventBus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventBus.js","sourceRoot":"","sources":["../../src/events/EventBus.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * Events module exports.
3
3
  */
4
- export * from "./types";
5
- export * from "./schema";
6
- export { EventBus, createEventBus } from "./EventBus";
7
- export type { EventBusOptions } from "./EventBus";
8
- export { normalizePostHogEvent, shouldNormalizeEvent, createPostHogNormalizer, } from "./normalizers/posthog";
9
- export { CanvasEvents } from "./normalizers/canvas";
4
+ export * from './types';
5
+ export * from './schema';
6
+ export { EventBus, createEventBus } from './EventBus';
7
+ export type { EventBusOptions } from './EventBus';
8
+ export { normalizePostHogEvent, shouldNormalizeEvent, createPostHogNormalizer, } from './normalizers/posthog';
9
+ export { CanvasEvents } from './normalizers/canvas';
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Events module exports.
3
3
  */
4
- export * from "./types";
5
- export * from "./schema";
6
- export { EventBus, createEventBus } from "./EventBus";
4
+ export * from './types';
5
+ export * from './schema';
6
+ export { EventBus, createEventBus } from './EventBus';
7
7
  // Normalizers
8
- export { normalizePostHogEvent, shouldNormalizeEvent, createPostHogNormalizer, } from "./normalizers/posthog";
9
- export { CanvasEvents } from "./normalizers/canvas";
8
+ export { normalizePostHogEvent, shouldNormalizeEvent, createPostHogNormalizer, } from './normalizers/posthog';
9
+ export { CanvasEvents } from './normalizers/canvas';
10
10
  //# sourceMappingURL=index.js.map