@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
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * Transforms Smart Canvas events into normalized events for the EventBus.
5
5
  */
6
- import type { NormalizedEvent } from "../types";
7
- import type { CanvasSurface } from "../../telemetry/types";
6
+ import type { NormalizedEvent } from '../types';
7
+ import type { CanvasSurface } from '../../telemetry/types';
8
8
  /**
9
9
  * Canvas opened event.
10
10
  */
@@ -1,4 +1,4 @@
1
- import { StandardEvents, EVENT_SCHEMA_VERSION } from "../types";
1
+ import { StandardEvents, EVENT_SCHEMA_VERSION } from '../types';
2
2
  /**
3
3
  * Create a canvas event with standard metadata.
4
4
  */
@@ -6,7 +6,7 @@ function createCanvasEvent(name, props) {
6
6
  return {
7
7
  ts: Date.now(),
8
8
  name,
9
- source: "canvas",
9
+ source: 'canvas',
10
10
  props,
11
11
  schemaVersion: EVENT_SCHEMA_VERSION,
12
12
  };
@@ -94,7 +94,7 @@ export function overlayStepViewed(recipeId, stepIndex, stepTitle) {
94
94
  */
95
95
  export function customCanvasEvent(name, props) {
96
96
  // Prefix custom events with "canvas." if not already prefixed
97
- const eventName = name.startsWith("canvas.") ? name : `canvas.${name}`;
97
+ const eventName = name.startsWith('canvas.') ? name : `canvas.${name}`;
98
98
  return createCanvasEvent(eventName, props);
99
99
  }
100
100
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/events/normalizers/canvas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/events/normalizers/canvas.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@
27
27
  *
28
28
  * @see RUNTIME_V2_REFERENCE.md for the full event mapping table
29
29
  */
30
- import type { NormalizedEvent } from "../types";
30
+ import type { NormalizedEvent } from '../types';
31
31
  /**
32
32
  * PostHog event structure (simplified).
33
33
  */
@@ -1,10 +1,10 @@
1
- import { StandardEvents, EVENT_SCHEMA_VERSION } from "../types";
1
+ import { StandardEvents, EVENT_SCHEMA_VERSION } from '../types';
2
2
  /**
3
3
  * Map PostHog event names to normalized event names.
4
4
  */
5
5
  const POSTHOG_EVENT_MAP = {
6
6
  // Autocapture events
7
- $autocapture: "ui.click", // Default autocapture is usually clicks
7
+ $autocapture: 'ui.click', // Default autocapture is usually clicks
8
8
  $click: StandardEvents.UI_CLICK,
9
9
  $scroll: StandardEvents.UI_SCROLL,
10
10
  $input: StandardEvents.UI_INPUT,
@@ -14,9 +14,9 @@ const POSTHOG_EVENT_MAP = {
14
14
  $pageview: StandardEvents.NAV_PAGE_VIEW,
15
15
  $pageleave: StandardEvents.NAV_PAGE_LEAVE,
16
16
  // Session events
17
- $session_start: "session.start",
17
+ $session_start: 'session.start',
18
18
  // Identify events
19
- $identify: "user.identify",
19
+ $identify: 'user.identify',
20
20
  };
21
21
  /**
22
22
  * Extract the normalized event name from a PostHog event.
@@ -29,23 +29,26 @@ function getEventName(phEvent) {
29
29
  return POSTHOG_EVENT_MAP[eventName];
30
30
  }
31
31
  // For autocapture, check the element type to determine the action
32
- if (eventName === "$autocapture") {
32
+ if (eventName === '$autocapture') {
33
33
  const tagName = (_a = phEvent.properties) === null || _a === void 0 ? void 0 : _a.$tag_name;
34
34
  const eventType = (_b = phEvent.properties) === null || _b === void 0 ? void 0 : _b.$event_type;
35
- if (eventType === "submit")
35
+ if (eventType === 'submit')
36
36
  return StandardEvents.UI_SUBMIT;
37
- if (eventType === "change")
37
+ if (eventType === 'change')
38
38
  return StandardEvents.UI_CHANGE;
39
- if (tagName === "input" || tagName === "textarea")
39
+ if (tagName === 'input' || tagName === 'textarea')
40
40
  return StandardEvents.UI_INPUT;
41
41
  return StandardEvents.UI_CLICK;
42
42
  }
43
43
  // For custom events, prefix with "posthog." to namespace them
44
- if (!eventName.startsWith("$")) {
44
+ if (typeof eventName !== 'string') {
45
+ return 'posthog.unknown';
46
+ }
47
+ if (!eventName.startsWith('$')) {
45
48
  return `posthog.${eventName}`;
46
49
  }
47
50
  // Pass through other $ events as-is but normalized
48
- return eventName.replace("$", "posthog.");
51
+ return eventName.replace('$', 'posthog.');
49
52
  }
50
53
  /**
51
54
  * Extract relevant properties from a PostHog event.
@@ -90,10 +93,10 @@ function extractProps(phEvent) {
90
93
  export function normalizePostHogEvent(phEvent) {
91
94
  // Parse timestamp
92
95
  let ts;
93
- if (typeof phEvent.timestamp === "number") {
96
+ if (typeof phEvent.timestamp === 'number') {
94
97
  ts = phEvent.timestamp;
95
98
  }
96
- else if (typeof phEvent.timestamp === "string") {
99
+ else if (typeof phEvent.timestamp === 'string') {
97
100
  ts = new Date(phEvent.timestamp).getTime();
98
101
  }
99
102
  else {
@@ -102,7 +105,7 @@ export function normalizePostHogEvent(phEvent) {
102
105
  return {
103
106
  ts,
104
107
  name: getEventName(phEvent),
105
- source: "posthog",
108
+ source: 'posthog',
106
109
  props: extractProps(phEvent),
107
110
  schemaVersion: EVENT_SCHEMA_VERSION,
108
111
  };
@@ -113,22 +116,24 @@ export function normalizePostHogEvent(phEvent) {
113
116
  */
114
117
  export function shouldNormalizeEvent(phEvent) {
115
118
  const eventName = phEvent.event;
119
+ if (typeof eventName !== 'string')
120
+ return false;
116
121
  // Skip internal PostHog events
117
122
  const skipEvents = [
118
- "$feature_flag_called",
119
- "$feature_flags",
120
- "$groups",
121
- "$groupidentify",
122
- "$set",
123
- "$set_once",
124
- "$unset",
125
- "$create_alias",
126
- "$capture_metrics",
127
- "$performance_event",
128
- "$web_vitals",
129
- "$exception",
130
- "$dead_click",
131
- "$heatmap",
123
+ '$feature_flag_called',
124
+ '$feature_flags',
125
+ '$groups',
126
+ '$groupidentify',
127
+ '$set',
128
+ '$set_once',
129
+ '$unset',
130
+ '$create_alias',
131
+ '$capture_metrics',
132
+ '$performance_event',
133
+ '$web_vitals',
134
+ '$exception',
135
+ '$dead_click',
136
+ '$heatmap',
132
137
  ];
133
138
  if (skipEvents.includes(eventName)) {
134
139
  return false;
@@ -141,6 +146,8 @@ export function shouldNormalizeEvent(phEvent) {
141
146
  */
142
147
  export function createPostHogNormalizer(publishFn) {
143
148
  return (eventName, properties) => {
149
+ if (typeof eventName !== 'string')
150
+ return;
144
151
  const phEvent = {
145
152
  event: eventName,
146
153
  properties,
@@ -1 +1 @@
1
- {"version":3,"file":"posthog.js","sourceRoot":"","sources":["../../../src/events/normalizers/posthog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"posthog.js","sourceRoot":"","sources":["../../../src/events/normalizers/posthog.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Zod schemas for event validation.
3
3
  */
4
- import { z } from "zod";
4
+ import { z } from 'zod';
5
5
  export declare const EventSourceZ: z.ZodEnum<["posthog", "canvas", "derived"]>;
6
6
  export declare const NormalizedEventZ: z.ZodObject<{
7
7
  ts: z.ZodNumber;
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Zod schemas for event validation.
3
3
  */
4
- import { z } from "zod";
5
- export const EventSourceZ = z.enum(["posthog", "canvas", "derived"]);
4
+ import { z } from 'zod';
5
+ export const EventSourceZ = z.enum(['posthog', 'canvas', 'derived']);
6
6
  export const NormalizedEventZ = z.object({
7
7
  ts: z.number(),
8
8
  name: z.string(),
@@ -7,7 +7,7 @@
7
7
  /**
8
8
  * Event sources in the runtime.
9
9
  */
10
- export type EventSource = "posthog" | "canvas" | "derived";
10
+ export type EventSource = 'posthog' | 'canvas' | 'derived';
11
11
  /**
12
12
  * Normalized event structure for the event bus.
13
13
  */
@@ -9,41 +9,41 @@
9
9
  */
10
10
  export const StandardEvents = {
11
11
  // UI events (from PostHog autocapture)
12
- UI_CLICK: "ui.click",
13
- UI_SCROLL: "ui.scroll",
14
- UI_INPUT: "ui.input",
15
- UI_CHANGE: "ui.change",
16
- UI_SUBMIT: "ui.submit",
12
+ UI_CLICK: 'ui.click',
13
+ UI_SCROLL: 'ui.scroll',
14
+ UI_INPUT: 'ui.input',
15
+ UI_CHANGE: 'ui.change',
16
+ UI_SUBMIT: 'ui.submit',
17
17
  // Navigation events
18
- NAV_PAGE_VIEW: "nav.page_view",
19
- NAV_PAGE_LEAVE: "nav.page_leave",
18
+ NAV_PAGE_VIEW: 'nav.page_view',
19
+ NAV_PAGE_LEAVE: 'nav.page_leave',
20
20
  // Canvas events
21
- CANVAS_OPENED: "canvas.opened",
22
- CANVAS_CLOSED: "canvas.closed",
23
- TILE_VIEWED: "tile.viewed",
24
- TILE_EXPANDED: "tile.expanded",
25
- TILE_COLLAPSED: "tile.collapsed",
26
- TILE_ACTION: "tile.action",
21
+ CANVAS_OPENED: 'canvas.opened',
22
+ CANVAS_CLOSED: 'canvas.closed',
23
+ TILE_VIEWED: 'tile.viewed',
24
+ TILE_EXPANDED: 'tile.expanded',
25
+ TILE_COLLAPSED: 'tile.collapsed',
26
+ TILE_ACTION: 'tile.action',
27
27
  // Overlay/tour events
28
- OVERLAY_STARTED: "overlay.started",
29
- OVERLAY_COMPLETED: "overlay.completed",
30
- OVERLAY_DISMISSED: "overlay.dismissed",
31
- OVERLAY_STEP_VIEWED: "overlay.step_viewed",
28
+ OVERLAY_STARTED: 'overlay.started',
29
+ OVERLAY_COMPLETED: 'overlay.completed',
30
+ OVERLAY_DISMISSED: 'overlay.dismissed',
31
+ OVERLAY_STEP_VIEWED: 'overlay.step_viewed',
32
32
  // Derived behavioral signals (Phase 3)
33
- BEHAVIOR_RAGE_CLICK: "behavior.rage_click",
34
- BEHAVIOR_HESITATION: "behavior.hesitation",
35
- BEHAVIOR_CONFUSION: "behavior.confusion",
33
+ BEHAVIOR_RAGE_CLICK: 'behavior.rage_click',
34
+ BEHAVIOR_HESITATION: 'behavior.hesitation',
35
+ BEHAVIOR_CONFUSION: 'behavior.confusion',
36
36
  // Action events
37
- ACTION_APPLIED: "action.applied",
38
- ACTION_REVERTED: "action.reverted",
39
- ACTION_FAILED: "action.failed",
40
- ACTION_CTA_CLICKED: "action.cta_clicked",
37
+ ACTION_APPLIED: 'action.applied',
38
+ ACTION_REVERTED: 'action.reverted',
39
+ ACTION_FAILED: 'action.failed',
40
+ ACTION_CTA_CLICKED: 'action.cta_clicked',
41
41
  // Surface events
42
- SURFACE_MOUNTED: "surface.mounted",
43
- SURFACE_UNMOUNTED: "surface.unmounted",
42
+ SURFACE_MOUNTED: 'surface.mounted',
43
+ SURFACE_UNMOUNTED: 'surface.unmounted',
44
44
  };
45
45
  /**
46
46
  * Current schema version for normalized events.
47
47
  */
48
- export const EVENT_SCHEMA_VERSION = "1.0.0";
48
+ export const EVENT_SCHEMA_VERSION = '1.0.0';
49
49
  //# sourceMappingURL=types.js.map
@@ -4,10 +4,10 @@
4
4
  * This file is INTERNAL - consumers should only import from experiments/types.ts
5
5
  * and use the ExperimentClient interface.
6
6
  */
7
- import { GrowthBook } from "@growthbook/growthbook-react";
8
- import type { Context as GrowthBookInitOptions } from "@growthbook/growthbook";
9
- import type { ExperimentClient } from "../types";
10
- import type { TileConfig } from "../../types";
7
+ import { GrowthBook } from '@growthbook/growthbook';
8
+ import type { Context as GrowthBookInitOptions } from '@growthbook/growthbook';
9
+ import type { ExperimentClient } from '../types';
10
+ import type { TileConfig } from '../../types';
11
11
  /**
12
12
  * Callback fired when a user is assigned to an experiment.
13
13
  */
@@ -4,11 +4,11 @@
4
4
  * This file is INTERNAL - consumers should only import from experiments/types.ts
5
5
  * and use the ExperimentClient interface.
6
6
  */
7
- import { GrowthBook } from "@growthbook/growthbook-react";
7
+ import { GrowthBook } from '@growthbook/growthbook';
8
8
  /**
9
9
  * Default API host for GrowthBook experiments.
10
10
  */
11
- export const DEFAULT_EXPERIMENT_API_HOST = "https://experiment.syntrologie.com";
11
+ export const DEFAULT_EXPERIMENT_API_HOST = 'https://experiment.syntrologie.com';
12
12
  /**
13
13
  * Internal adapter that implements ExperimentClient using GrowthBook.
14
14
  */
@@ -22,7 +22,7 @@ export class GrowthBookAdapter {
22
22
  // Set up tracking callback to bridge to telemetry
23
23
  const trackingCallback = options.onExperimentViewed
24
24
  ? (experiment, result) => {
25
- options.onExperimentViewed(experiment.key, result.variationId, typeof result.value === "string" ? result.value : `variation_${result.variationId}`);
25
+ options.onExperimentViewed(experiment.key, result.variationId, typeof result.value === 'string' ? result.value : `variation_${result.variationId}`);
26
26
  }
27
27
  : undefined;
28
28
  this.gb = new GrowthBook({
@@ -67,10 +67,10 @@ export class GrowthBookAdapter {
67
67
  const value = this.gb.getFeatureValue(experiment.featureKey, null);
68
68
  if (value === null || value === undefined)
69
69
  return false;
70
- if (typeof experiment.variationId === "number") {
70
+ if (typeof experiment.variationId === 'number') {
71
71
  return Number(value) === experiment.variationId;
72
72
  }
73
- if (typeof experiment.variationValue !== "undefined") {
73
+ if (typeof experiment.variationValue !== 'undefined') {
74
74
  return value === experiment.variationValue;
75
75
  }
76
76
  if (experiment.predicate) {
@@ -1 +1 @@
1
- {"version":3,"file":"growthbook.js","sourceRoot":"","sources":["../../../src/experiments/adapters/growthbook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"growthbook.js","sourceRoot":"","sources":["../../../src/experiments/adapters/growthbook.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export type { ExperimentClient, SyntroExperimentClient } from "./types";
2
- export { createGrowthBookClient } from "./adapters/growthbook";
3
- export type { GrowthBookAdapterOptions } from "./adapters/growthbook";
1
+ export type { ExperimentClient, SyntroExperimentClient } from './types';
2
+ export { createGrowthBookClient } from './adapters/growthbook';
3
+ export type { GrowthBookAdapterOptions } from './adapters/growthbook';
@@ -1,4 +1,4 @@
1
1
  // Adapter factory - consumers use this to create clients
2
2
  // but don't need to know about the internal implementation
3
- export { createGrowthBookClient } from "./adapters/growthbook";
3
+ export { createGrowthBookClient } from './adapters/growthbook';
4
4
  //# sourceMappingURL=index.js.map
@@ -5,8 +5,8 @@
5
5
  * This allows the bootstrap module to dynamically create
6
6
  * experiment clients based on token configuration.
7
7
  */
8
- import { ExperimentTrackingCallback } from "./adapters/growthbook";
9
- import type { ExperimentClient } from "./types";
8
+ import { ExperimentTrackingCallback } from './adapters/growthbook';
9
+ import type { ExperimentClient } from './types';
10
10
  export interface CreateExperimentClientConfig {
11
11
  clientKey: string;
12
12
  apiHost?: string;
@@ -5,7 +5,7 @@
5
5
  * This allows the bootstrap module to dynamically create
6
6
  * experiment clients based on token configuration.
7
7
  */
8
- import { createGrowthBookClient, } from "./adapters/growthbook";
8
+ import { createGrowthBookClient, } from './adapters/growthbook';
9
9
  const adapters = {
10
10
  growthbook: (config) => createGrowthBookClient({
11
11
  ...config,
@@ -23,7 +23,7 @@ const adapters = {
23
23
  export function createExperimentClient(provider, config) {
24
24
  const factory = adapters[provider];
25
25
  if (!factory) {
26
- throw new Error(`Unknown experiment provider: ${provider}. Supported: ${Object.keys(adapters).join(", ")}`);
26
+ throw new Error(`Unknown experiment provider: ${provider}. Supported: ${Object.keys(adapters).join(', ')}`);
27
27
  }
28
28
  return factory(config);
29
29
  }
@@ -1,4 +1,4 @@
1
- import type { TileConfig } from "../types";
1
+ import type { TileConfig } from '../types';
2
2
  /**
3
3
  * Clean interface for experiment/feature flag clients.
4
4
  *
@@ -23,6 +23,10 @@ export interface ExperimentClient {
23
23
  * @param variations Map of experiment tracking key to variation index
24
24
  */
25
25
  setForcedVariations?(variations: Record<string, number>): void;
26
+ /**
27
+ * Refresh/load feature flags from the server.
28
+ */
29
+ refreshFeatures?(): Promise<void>;
26
30
  }
27
31
  /**
28
32
  * @deprecated Use ExperimentClient instead
@@ -1,4 +1,4 @@
1
- import type { ConfigFetcher, FetchResult } from "./types";
1
+ import type { ConfigFetcher, FetchResult } from './types';
2
2
  export interface CdnFetcherOptions {
3
3
  /**
4
4
  * Base CDN URL (e.g., "https://cdn.syntrologie.com/configs")
@@ -1,11 +1,7 @@
1
1
  /**
2
2
  * Allowed CDN hosts for config fetching.
3
3
  */
4
- const ALLOWED_CDN_HOSTS = [
5
- 'cdn.syntrologie.com',
6
- 'localhost',
7
- '127.0.0.1'
8
- ];
4
+ const ALLOWED_CDN_HOSTS = ['cdn.syntrologie.com', 'localhost', '127.0.0.1'];
9
5
  /**
10
6
  * Validates that a CDN URL is from an allowed host.
11
7
  */
@@ -17,7 +13,7 @@ function validateCdnUrl(url) {
17
13
  console.warn('[SmartCanvas] CDN URL must use HTTPS:', url);
18
14
  return false;
19
15
  }
20
- const isAllowed = ALLOWED_CDN_HOSTS.some(host => parsed.hostname === host);
16
+ const isAllowed = ALLOWED_CDN_HOSTS.some((host) => parsed.hostname === host);
21
17
  if (!isAllowed) {
22
18
  console.warn('[SmartCanvas] CDN host not in allowlist:', parsed.hostname);
23
19
  return false;
@@ -39,7 +35,7 @@ function validateCdnUrl(url) {
39
35
  */
40
36
  export class CdnFetcher {
41
37
  constructor(options) {
42
- this.name = "cdn";
38
+ this.name = 'cdn';
43
39
  this.url = `${options.baseUrl}/${options.configId}.json`;
44
40
  this.integrity = options.integrity;
45
41
  if (!validateCdnUrl(this.url)) {
@@ -73,7 +69,7 @@ export class CdnFetcher {
73
69
  return {
74
70
  config,
75
71
  meta: {
76
- source: "cdn",
72
+ source: 'cdn',
77
73
  fetchTimeMs,
78
74
  cached: (_a = cacheControl === null || cacheControl === void 0 ? void 0 : cacheControl.includes('public')) !== null && _a !== void 0 ? _a : false,
79
75
  cacheAge: age ? parseInt(age, 10) : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"cdnFetcher.js","sourceRoot":"","sources":["../../src/fetchers/cdnFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cdnFetcher.js","sourceRoot":"","sources":["../../src/fetchers/cdnFetcher.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { ConfigFetcher, FetchResult } from "./types";
2
- import type { ExperimentClient } from "../experiments/types";
1
+ import type { ConfigFetcher, FetchResult } from './types';
2
+ import type { ExperimentClient } from '../experiments/types';
3
3
  export interface ExperimentsFetcherOptions {
4
4
  /**
5
5
  * Experiment client instance (e.g., from createGrowthBookClient).
@@ -2,8 +2,8 @@
2
2
  * URL parameters for forcing experiment variations in preview mode.
3
3
  * Usage: ?syntro_exp=experiment_tracking_key&syntro_var=1
4
4
  */
5
- const PREVIEW_EXP_PARAM = "syntro_exp";
6
- const PREVIEW_VAR_PARAM = "syntro_var";
5
+ const PREVIEW_EXP_PARAM = 'syntro_exp';
6
+ const PREVIEW_VAR_PARAM = 'syntro_var';
7
7
  /**
8
8
  * Fetches config from an experiment/feature flag system.
9
9
  *
@@ -16,15 +16,15 @@ const PREVIEW_VAR_PARAM = "syntro_var";
16
16
  export class ExperimentsFetcher {
17
17
  constructor(options) {
18
18
  var _a;
19
- this.name = "experiments";
19
+ this.name = 'experiments';
20
20
  this.client = options.client;
21
- this.featureKey = (_a = options.featureKey) !== null && _a !== void 0 ? _a : "smart-canvas-config";
21
+ this.featureKey = (_a = options.featureKey) !== null && _a !== void 0 ? _a : 'smart-canvas-config';
22
22
  }
23
23
  async fetch() {
24
24
  var _a, _b;
25
25
  const start = performance.now();
26
26
  // Check for preview URL params to force a specific variation
27
- if (typeof window !== "undefined") {
27
+ if (typeof window !== 'undefined') {
28
28
  const params = new URLSearchParams(window.location.search);
29
29
  const expName = params.get(PREVIEW_EXP_PARAM);
30
30
  const varIndex = params.get(PREVIEW_VAR_PARAM);
@@ -38,7 +38,7 @@ export class ExperimentsFetcher {
38
38
  }
39
39
  // Get config from experiment client (GrowthBook feature flag)
40
40
  const config = (_b = (_a = this.client).getFeatureValue) === null || _b === void 0 ? void 0 : _b.call(_a, this.featureKey, null);
41
- if (!config || typeof config !== "object") {
41
+ if (!config || typeof config !== 'object') {
42
42
  throw new Error(`[SmartCanvas] Feature "${this.featureKey}" not found or invalid. ` +
43
43
  `Ensure the feature is configured in your experiment platform.`);
44
44
  }
@@ -46,7 +46,7 @@ export class ExperimentsFetcher {
46
46
  return {
47
47
  config: config,
48
48
  meta: {
49
- source: "experiments",
49
+ source: 'experiments',
50
50
  fetchTimeMs,
51
51
  cached: true,
52
52
  },
@@ -1 +1 @@
1
- {"version":3,"file":"experimentsFetcher.js","sourceRoot":"","sources":["../../src/fetchers/experimentsFetcher.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,iBAAiB,GAAG,YAAY,CAAC;AACvC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAevC;;;;;;;;GAQG;AACH,MAAM,OAAO,kBAAkB;IAM7B,YAAY,OAAkC;;QALrC,SAAI,GAAG,aAAa,CAAC;QAM5B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,qBAAqB,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,KAAK;;QACT,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAEhC,6DAA6D;QAC7D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAE/C,IAAI,OAAO,IAAI,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;gBACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClB,OAAO,CAAC,GAAG,CAAC,wCAAwC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC;oBACtF,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAA,MAAA,IAAI,CAAC,MAAM,EAAC,eAAe,mDAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAEpE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,0BAA0B,IAAI,CAAC,UAAU,0BAA0B;gBACnE,+DAA+D,CAChE,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAE9C,OAAO;YACL,MAAM,EAAE,MAA8B;YACtC,IAAI,EAAE;gBACJ,MAAM,EAAE,aAAa;gBACrB,WAAW;gBACX,MAAM,EAAE,IAAI;aACb;SACF,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAkC;IAElC,OAAO,IAAI,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"experimentsFetcher.js","sourceRoot":"","sources":["../../src/fetchers/experimentsFetcher.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,iBAAiB,GAAG,YAAY,CAAC;AACvC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAevC;;;;;;;;GAQG;AACH,MAAM,OAAO,kBAAkB;IAM7B,YAAY,OAAkC;;QALrC,SAAI,GAAG,aAAa,CAAC;QAM5B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,qBAAqB,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,KAAK;;QACT,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAEhC,6DAA6D;QAC7D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAE/C,IAAI,OAAO,IAAI,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;gBACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClB,OAAO,CAAC,GAAG,CAAC,wCAAwC,OAAO,kBAAkB,KAAK,EAAE,CAAC,CAAC;oBACtF,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAA,MAAA,IAAI,CAAC,MAAM,EAAC,eAAe,mDAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAEpE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,0BAA0B,IAAI,CAAC,UAAU,0BAA0B;gBACjE,+DAA+D,CAClE,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAE9C,OAAO;YACL,MAAM,EAAE,MAA8B;YACtC,IAAI,EAAE;gBACJ,MAAM,EAAE,aAAa;gBACrB,WAAW;gBACX,MAAM,EAAE,IAAI;aACb;SACF,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAAkC;IACzE,OAAO,IAAI,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC"}
@@ -1,3 +1,3 @@
1
- export type { ConfigFetcher, FetchResult } from "./types";
2
- export { ExperimentsFetcher, createExperimentsFetcher, type ExperimentsFetcherOptions, } from "./experimentsFetcher";
3
- export { CdnFetcher, createCdnFetcher, type CdnFetcherOptions, } from "./cdnFetcher";
1
+ export type { ConfigFetcher, FetchResult } from './types';
2
+ export { ExperimentsFetcher, createExperimentsFetcher, type ExperimentsFetcherOptions, } from './experimentsFetcher';
3
+ export { CdnFetcher, createCdnFetcher, type CdnFetcherOptions } from './cdnFetcher';
@@ -1,5 +1,5 @@
1
1
  // Experiments-based fetcher (GrowthBook, LaunchDarkly, etc.)
2
- export { ExperimentsFetcher, createExperimentsFetcher, } from "./experimentsFetcher";
2
+ export { ExperimentsFetcher, createExperimentsFetcher, } from './experimentsFetcher';
3
3
  // CDN fetcher with UUID-based paths
4
- export { CdnFetcher, createCdnFetcher, } from "./cdnFetcher";
4
+ export { CdnFetcher, createCdnFetcher } from './cdnFetcher';
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetchers/index.ts"],"names":[],"mappings":"AAGA,6DAA6D;AAC7D,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GAEzB,MAAM,sBAAsB,CAAC;AAE9B,oCAAoC;AACpC,OAAO,EACL,UAAU,EACV,gBAAgB,GAEjB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetchers/index.ts"],"names":[],"mappings":"AAGA,6DAA6D;AAC7D,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GAEzB,MAAM,sBAAsB,CAAC;AAE9B,oCAAoC;AACpC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAA0B,MAAM,cAAc,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ConfigFetcher } from "./types";
1
+ import type { ConfigFetcher } from './types';
2
2
  /**
3
3
  * Default CDN base URL for config fetching.
4
4
  */