@syntrologie/runtime-sdk 0.2.1 → 0.2.3

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 (144) hide show
  1. package/CAPABILITIES.md +400 -0
  2. package/dist/SmartCanvasApp.js +28 -10
  3. package/dist/SmartCanvasApp.js.map +1 -1
  4. package/dist/api.d.ts +23 -0
  5. package/dist/api.js +23 -5
  6. package/dist/api.js.map +1 -1
  7. package/dist/blocks/data/ComparisonBlock.d.ts +10 -0
  8. package/dist/blocks/data/ComparisonBlock.js +92 -0
  9. package/dist/blocks/data/ComparisonBlock.js.map +1 -0
  10. package/dist/blocks/data/StatsBlock.d.ts +10 -0
  11. package/dist/blocks/data/StatsBlock.js +103 -0
  12. package/dist/blocks/data/StatsBlock.js.map +1 -0
  13. package/dist/blocks/data/index.d.ts +2 -0
  14. package/dist/blocks/data/index.js +3 -0
  15. package/dist/blocks/data/index.js.map +1 -0
  16. package/dist/blocks/index.d.ts +26 -0
  17. package/dist/blocks/index.js +94 -0
  18. package/dist/blocks/index.js.map +1 -0
  19. package/dist/blocks/interactive/ChecklistBlock.d.ts +11 -0
  20. package/dist/blocks/interactive/ChecklistBlock.js +110 -0
  21. package/dist/blocks/interactive/ChecklistBlock.js.map +1 -0
  22. package/dist/blocks/interactive/RatingBlock.d.ts +11 -0
  23. package/dist/blocks/interactive/RatingBlock.js +131 -0
  24. package/dist/blocks/interactive/RatingBlock.js.map +1 -0
  25. package/dist/blocks/interactive/index.d.ts +2 -0
  26. package/dist/blocks/interactive/index.js +3 -0
  27. package/dist/blocks/interactive/index.js.map +1 -0
  28. package/dist/blocks/notification/NotificationBlock.d.ts +26 -0
  29. package/dist/blocks/notification/NotificationBlock.js +166 -0
  30. package/dist/blocks/notification/NotificationBlock.js.map +1 -0
  31. package/dist/blocks/notification/index.d.ts +1 -0
  32. package/dist/blocks/notification/index.js +2 -0
  33. package/dist/blocks/notification/index.js.map +1 -0
  34. package/dist/bootstrap.d.ts +19 -1
  35. package/dist/bootstrap.js +118 -17
  36. package/dist/bootstrap.js.map +1 -1
  37. package/dist/components/ShadowCanvasOverlay.d.ts +12 -3
  38. package/dist/components/ShadowCanvasOverlay.js +75 -24
  39. package/dist/components/ShadowCanvasOverlay.js.map +1 -1
  40. package/dist/components/{RectangleCard.d.ts → TileCard.d.ts} +4 -4
  41. package/dist/components/{RectangleCard.js → TileCard.js} +57 -6
  42. package/dist/components/TileCard.js.map +1 -0
  43. package/dist/components/TileWheel.d.ts +8 -0
  44. package/dist/components/{RectangleWheel.js → TileWheel.js} +7 -7
  45. package/dist/components/TileWheel.js.map +1 -0
  46. package/dist/configFetcher.js.map +1 -1
  47. package/dist/earlyPatcher.js +1 -2
  48. package/dist/earlyPatcher.js.map +1 -1
  49. package/dist/editorLoader.js +74 -17
  50. package/dist/editorLoader.js.map +1 -1
  51. package/dist/experiments/adapters/growthbook.d.ts +18 -2
  52. package/dist/experiments/adapters/growthbook.js +17 -3
  53. package/dist/experiments/adapters/growthbook.js.map +1 -1
  54. package/dist/experiments/registry.d.ts +18 -4
  55. package/dist/experiments/registry.js +1 -1
  56. package/dist/experiments/registry.js.map +1 -1
  57. package/dist/experiments/types.d.ts +8 -3
  58. package/dist/fetchers/cdnFetcher.js.map +1 -1
  59. package/dist/fetchers/experimentsFetcher.js +20 -0
  60. package/dist/fetchers/experimentsFetcher.js.map +1 -1
  61. package/dist/fetchers/types.d.ts +2 -2
  62. package/dist/hooks/useCanvasOverlays.d.ts +5 -1
  63. package/dist/hooks/useCanvasOverlays.js +33 -13
  64. package/dist/hooks/useCanvasOverlays.js.map +1 -1
  65. package/dist/hooks/useShadowCanvasConfig.d.ts +9 -2
  66. package/dist/hooks/useShadowCanvasConfig.js +8 -8
  67. package/dist/hooks/useShadowCanvasConfig.js.map +1 -1
  68. package/dist/hostPatcher/core/patcher.js +14 -15
  69. package/dist/hostPatcher/core/patcher.js.map +1 -1
  70. package/dist/hostPatcher/core/sanitizer.js +1 -1
  71. package/dist/hostPatcher/core/sanitizer.js.map +1 -1
  72. package/dist/hostPatcher/core/types.d.ts +8 -9
  73. package/dist/hostPatcher/policy/defaultPolicy.d.ts +4 -0
  74. package/dist/hostPatcher/policy/defaultPolicy.js +9 -37
  75. package/dist/hostPatcher/policy/defaultPolicy.js.map +1 -1
  76. package/dist/hostPatcher/utils/anchors.js +3 -3
  77. package/dist/hostPatcher/utils/anchors.js.map +1 -1
  78. package/dist/index.d.ts +2 -2
  79. package/dist/index.js +2 -2
  80. package/dist/index.js.map +1 -1
  81. package/dist/overlays/recipeRegistry.d.ts +14 -0
  82. package/dist/overlays/recipeRegistry.js +32 -0
  83. package/dist/overlays/recipeRegistry.js.map +1 -0
  84. package/dist/overlays/runtime/index.d.ts +1 -0
  85. package/dist/overlays/runtime/index.js +1 -0
  86. package/dist/overlays/runtime/index.js.map +1 -1
  87. package/dist/overlays/runtime/overlay/modal.d.ts +11 -0
  88. package/dist/overlays/runtime/overlay/modal.js +78 -0
  89. package/dist/overlays/runtime/overlay/modal.js.map +1 -0
  90. package/dist/overlays/runtime/overlay/root.js +132 -0
  91. package/dist/overlays/runtime/overlay/root.js.map +1 -1
  92. package/dist/overlays/runtime/overlay/runner.d.ts +2 -0
  93. package/dist/overlays/runtime/overlay/runner.js +441 -2
  94. package/dist/overlays/runtime/overlay/runner.js.map +1 -1
  95. package/dist/overlays/runtime/overlay/tooltip.d.ts +1 -0
  96. package/dist/overlays/runtime/overlay/tooltip.js +61 -1
  97. package/dist/overlays/runtime/overlay/tooltip.js.map +1 -1
  98. package/dist/overlays/schema.d.ts +6 -6
  99. package/dist/overlays/types.d.ts +55 -1
  100. package/dist/react.d.ts +6 -1
  101. package/dist/react.js +31 -9
  102. package/dist/react.js.map +1 -1
  103. package/dist/render/RenderContext.d.ts +39 -0
  104. package/dist/render/RenderContext.js +67 -0
  105. package/dist/render/RenderContext.js.map +1 -0
  106. package/dist/render/index.d.ts +3 -0
  107. package/dist/render/index.js +3 -0
  108. package/dist/render/index.js.map +1 -0
  109. package/dist/render/types.d.ts +81 -0
  110. package/dist/render/types.js +2 -0
  111. package/dist/render/types.js.map +1 -0
  112. package/dist/smart-canvas.esm.js +192 -25
  113. package/dist/smart-canvas.esm.js.map +4 -4
  114. package/dist/smart-canvas.js +25962 -26846
  115. package/dist/smart-canvas.js.map +4 -4
  116. package/dist/smart-canvas.min.js +192 -25
  117. package/dist/smart-canvas.min.js.map +4 -4
  118. package/dist/telemetry/adapters/posthog.d.ts +6 -0
  119. package/dist/telemetry/adapters/posthog.js +48 -0
  120. package/dist/telemetry/adapters/posthog.js.map +1 -1
  121. package/dist/telemetry/types.d.ts +30 -0
  122. package/dist/theme/ThemeProvider.d.ts +31 -0
  123. package/dist/theme/ThemeProvider.js +109 -0
  124. package/dist/theme/ThemeProvider.js.map +1 -0
  125. package/dist/theme/defaultTheme.d.ts +18 -0
  126. package/dist/theme/defaultTheme.js +163 -0
  127. package/dist/theme/defaultTheme.js.map +1 -0
  128. package/dist/theme/extractHostTheme.d.ts +14 -0
  129. package/dist/theme/extractHostTheme.js +261 -0
  130. package/dist/theme/extractHostTheme.js.map +1 -0
  131. package/dist/theme/index.d.ts +5 -0
  132. package/dist/theme/index.js +7 -0
  133. package/dist/theme/index.js.map +1 -0
  134. package/dist/theme/types.d.ts +91 -0
  135. package/dist/theme/types.js +6 -0
  136. package/dist/theme/types.js.map +1 -0
  137. package/dist/token.d.ts +4 -0
  138. package/dist/token.js.map +1 -1
  139. package/dist/types.d.ts +228 -47
  140. package/package.json +8 -4
  141. package/schema/canvas-config.schema.json +24 -15
  142. package/dist/components/RectangleCard.js.map +0 -1
  143. package/dist/components/RectangleWheel.d.ts +0 -8
  144. package/dist/components/RectangleWheel.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../src/overlays/runtime/overlay/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../src/overlays/runtime/overlay/runner.ts"],"names":[],"mappings":"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"}
@@ -10,5 +10,6 @@ export declare function showTooltip(anchorEl: HTMLElement, overlayRoot: HTMLElem
10
10
  offsetPx?: number;
11
11
  blocking?: boolean;
12
12
  trigger?: 'immediate' | 'hover' | 'click';
13
+ onAction?: (actionId: string) => void;
13
14
  }): TooltipHandle;
14
15
  export {};
@@ -1,12 +1,67 @@
1
1
  import { computePosition, autoUpdate, offset, flip, shift, hide, arrow as arrowMiddleware } from '@floating-ui/dom';
2
2
  import { sanitizeWithFallback } from '../../../hostPatcher/core/sanitizer';
3
+ /**
4
+ * For large elements (larger than viewport), create a virtual anchor
5
+ * at the center of the visible portion. This prevents tooltips from
6
+ * appearing at the edge of massive elements.
7
+ */
8
+ function getAnchorReference(anchorEl) {
9
+ const rect = anchorEl.getBoundingClientRect();
10
+ const viewportWidth = window.innerWidth;
11
+ const viewportHeight = window.innerHeight;
12
+ // Check if element is larger than 80% of viewport in either dimension
13
+ const isLargeElement = rect.width > viewportWidth * 0.8 || rect.height > viewportHeight * 0.8;
14
+ if (!isLargeElement) {
15
+ return anchorEl;
16
+ }
17
+ // For large elements, create a virtual anchor at center of visible portion
18
+ const visibleLeft = Math.max(rect.left, 0);
19
+ const visibleTop = Math.max(rect.top, 0);
20
+ const visibleRight = Math.min(rect.right, viewportWidth);
21
+ const visibleBottom = Math.min(rect.bottom, viewportHeight);
22
+ const centerX = (visibleLeft + visibleRight) / 2;
23
+ const centerY = (visibleTop + visibleBottom) / 2;
24
+ console.log(`[SmartCanvas] Large element detected (${Math.round(rect.width)}x${Math.round(rect.height)}), using virtual anchor at center (${Math.round(centerX)}, ${Math.round(centerY)})`);
25
+ // Return a virtual element that Floating UI can use
26
+ return {
27
+ getBoundingClientRect() {
28
+ return {
29
+ width: 0,
30
+ height: 0,
31
+ x: centerX,
32
+ y: centerY,
33
+ top: centerY,
34
+ left: centerX,
35
+ right: centerX,
36
+ bottom: centerY,
37
+ };
38
+ }
39
+ };
40
+ }
3
41
  export function showTooltip(anchorEl, overlayRoot, opts) {
4
42
  var _a;
43
+ // Scroll the anchor element into view (like driver.js does)
44
+ // Only scroll if element is not already mostly visible
45
+ const rect = anchorEl.getBoundingClientRect();
46
+ const isLargeElement = rect.width > window.innerWidth * 0.8 || rect.height > window.innerHeight * 0.8;
47
+ if (!isLargeElement) {
48
+ anchorEl.scrollIntoView({ behavior: 'smooth', block: 'center', inline: 'center' });
49
+ }
5
50
  const div = document.createElement('div');
6
51
  div.className = 'syntro-tooltip';
7
52
  div.setAttribute('role', 'tooltip');
8
53
  // Sanitize HTML to prevent XSS
9
54
  div.innerHTML = sanitizeWithFallback(opts.html);
55
+ // Handle action button clicks
56
+ const actionBtns = div.querySelectorAll('[data-syntro-action]');
57
+ const actionHandler = (e) => {
58
+ const btn = e.currentTarget;
59
+ const actionId = btn.getAttribute('data-syntro-action');
60
+ if (actionId && opts.onAction) {
61
+ opts.onAction(actionId);
62
+ }
63
+ };
64
+ actionBtns.forEach(btn => btn.addEventListener('click', actionHandler));
10
65
  // Create arrow element
11
66
  const arrowEl = document.createElement('div');
12
67
  arrowEl.className = 'syntro-tooltip-arrow';
@@ -20,8 +75,12 @@ export function showTooltip(anchorEl, overlayRoot, opts) {
20
75
  arrowMiddleware({ element: arrowEl })
21
76
  ];
22
77
  const placement = opts.placement && opts.placement !== 'auto' ? opts.placement : 'top';
78
+ // Get anchor reference (may be virtual for large elements)
79
+ const anchorRef = getAnchorReference(anchorEl);
23
80
  const cleanup = autoUpdate(anchorEl, div, async () => {
24
- const result = await computePosition(anchorEl, div, {
81
+ // Re-compute anchor reference on each update (element size may change)
82
+ const currentAnchorRef = getAnchorReference(anchorEl);
83
+ const result = await computePosition(currentAnchorRef, div, {
25
84
  placement,
26
85
  middleware
27
86
  });
@@ -156,6 +215,7 @@ export function showTooltip(anchorEl, overlayRoot, opts) {
156
215
  cleanup();
157
216
  removeTrigger();
158
217
  window.removeEventListener('keydown', onKey);
218
+ actionBtns.forEach(btn => btn.removeEventListener('click', actionHandler));
159
219
  // Restore inert state
160
220
  if (opts.blocking) {
161
221
  Array.from(document.body.children).forEach((el) => {
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../../src/overlays/runtime/overlay/tooltip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../../src/overlays/runtime/overlay/tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,eAAe,EAAyC,MAAM,kBAAkB,CAAC;AAC3J,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAM3E;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,QAAqB;IAC/C,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IAC9C,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC;IACxC,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC;IAE1C,sEAAsE;IACtE,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,GAAG,aAAa,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,cAAc,GAAG,GAAG,CAAC;IAE9F,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,2EAA2E;IAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAE5D,MAAM,OAAO,GAAG,CAAC,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAEjD,OAAO,CAAC,GAAG,CAAC,yCAAyC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sCAAsC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE5L,oDAAoD;IACpD,OAAO;QACL,qBAAqB;YACnB,OAAO;gBACL,KAAK,EAAE,CAAC;gBACR,MAAM,EAAE,CAAC;gBACT,CAAC,EAAE,OAAO;gBACV,CAAC,EAAE,OAAO;gBACV,GAAG,EAAE,OAAO;gBACZ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,OAAO;gBACd,MAAM,EAAE,OAAO;aAChB,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAqB,EAAE,WAAwB,EAAE,IAO5E;;IACC,4DAA4D;IAC5D,uDAAuD;IACvD,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC;IACtG,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,SAAS,GAAG,gBAAgB,CAAC;IACjC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpC,+BAA+B;IAC/B,GAAG,CAAC,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhD,8BAA8B;IAC9B,MAAM,UAAU,GAAG,GAAG,CAAC,gBAAgB,CAAc,sBAAsB,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,CAAC,CAAQ,EAAE,EAAE;QACjC,MAAM,GAAG,GAAG,CAAC,CAAC,aAA4B,CAAC;QAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;QACxD,IAAI,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;IACF,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IAExE,uBAAuB;IACvB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,SAAS,GAAG,sBAAsB,CAAC;IAC3C,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAEzB,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAiB;QAC/B,MAAM,CAAC,MAAA,IAAI,CAAC,QAAQ,mCAAI,CAAC,CAAC;QAC1B,IAAI,EAAE;QACN,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACrB,IAAI,EAAE;QACN,eAAe,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;KACtC,CAAC;IAEF,MAAM,SAAS,GAAc,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAElG,2DAA2D;IAC3D,MAAM,SAAS,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAE/C,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;QACnD,uEAAuE;QACvE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC1D,SAAS;YACT,UAAU;SACX,CAAC,CAAC;QAEH,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;QAE7E,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE;YACvB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,GAAG,EAAE,GAAG,CAAC,IAAI;YACb,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;QAEH,iBAAiB;QACjB,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC;YACzB,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC;YACtD,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAE1C,MAAM,UAAU,GAAG;gBACjB,GAAG,EAAE,QAAQ;gBACb,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,OAAO;aACd,CAAC,IAAI,CAAC,CAAC;YAER,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBAC3B,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE;gBACzC,GAAG,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE;gBACxC,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,EAAE;gBACV,CAAC,UAAoB,CAAC,EAAE,MAAM;aAC/B,CAAC,CAAC;YAEH,wCAAwC;YACxC,MAAM,QAAQ,GAAG;gBACf,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,OAAO;gBACd,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,QAAQ;aACf,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;YAElB,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,QAAQ,GAAG,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,CAAC,CAAgB,EAAE,EAAE;QACjC,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ;YAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IAC3C,CAAC,CAAC;IACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAE1C,4CAA4C;IAC5C,IAAI,aAAa,GAAa,EAAE,CAAC;IACjC,IAAI,YAAY,GAAkB,EAAE,CAAC;IAErC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,0BAA0B;QAC1B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YAChD,IAAI,EAAE,KAAK,WAAW,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC5D,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC7B,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,mBAAmB;QACnB,YAAY,GAAG,KAAK,CAAC,IAAI,CACvB,GAAG,CAAC,gBAAgB,CAAc,0EAA0E,CAAC,CAC9G,CAAC;QAEF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,aAAa,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAE5D,MAAM,SAAS,GAAG,CAAC,CAAgB,EAAE,EAAE;gBACrC,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK;oBAAE,OAAO;gBAE5B,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;oBACf,IAAI,QAAQ,CAAC,aAAa,KAAK,cAAc,EAAE,CAAC;wBAC9C,aAAa,CAAC,KAAK,EAAE,CAAC;wBACtB,CAAC,CAAC,cAAc,EAAE,CAAC;oBACrB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,QAAQ,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;wBAC7C,cAAc,CAAC,KAAK,EAAE,CAAC;wBACvB,CAAC,CAAC,cAAc,EAAE,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC3C,qBAAqB,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,GAAG,EAAE;gBACjB,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;gBACjC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YAC1B,CAAC,CAAC;YACF,MAAM,KAAK,GAAG,GAAG,EAAE;gBACjB,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;gBAChC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YAC1B,CAAC,CAAC;YACF,yBAAyB;YACzB,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;YAChC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YACxB,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,sCAAsC,CAAC;YAE9D,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAC/C,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAC/C,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC1C,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzC,OAAO,GAAG,EAAE;gBACV,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;gBAClD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;gBAClD,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC7C,QAAQ,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9C,CAAC,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,GAAG,EAAE;gBAClB,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC;gBACrD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;oBACjC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;gBAC1B,CAAC;YACH,CAAC,CAAC;YACF,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;YAChC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YACxB,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,sCAAsC,CAAC;YAC9D,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3C,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7D,CAAC;QACD,+BAA+B;QAC/B,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACxB,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,oBAAoB,CAAC;QAC5C,qBAAqB,CAAC,GAAG,EAAE;YACzB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,aAAa,EAAE,CAAC;IAEtC,MAAM,MAAM,GAAkB;QAC5B,EAAE,EAAE,GAAG;QACP,OAAO;YACL,OAAO,EAAE,CAAC;YACV,aAAa,EAAE,CAAC;YAChB,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC7C,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;YAE3E,sBAAsB;YACtB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;oBAChD,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;wBACvB,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;oBAC9B,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,uBAAuB;YACvB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;YACxB,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC;KACF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -679,8 +679,6 @@ export declare const CanvasRecipeZ: z.ZodObject<{
679
679
  ringColor?: string | undefined;
680
680
  }>]>, "many">;
681
681
  }, "strip", z.ZodTypeAny, {
682
- id: string;
683
- version: number;
684
682
  steps: ({
685
683
  anchor: {
686
684
  type: "data";
@@ -752,10 +750,10 @@ export declare const CanvasRecipeZ: z.ZodObject<{
752
750
  } | undefined;
753
751
  ringColor?: string | undefined;
754
752
  })[];
755
- routes?: string[] | undefined;
756
- }, {
757
753
  id: string;
758
754
  version: number;
755
+ routes?: string[] | undefined;
756
+ }, {
759
757
  steps: ({
760
758
  anchor: {
761
759
  type: "data";
@@ -827,11 +825,11 @@ export declare const CanvasRecipeZ: z.ZodObject<{
827
825
  } | undefined;
828
826
  ringColor?: string | undefined;
829
827
  })[];
828
+ id: string;
829
+ version: number;
830
830
  routes?: string[] | undefined;
831
831
  }>;
832
832
  export declare function validateRecipe(json: unknown): {
833
- id: string;
834
- version: number;
835
833
  steps: ({
836
834
  anchor: {
837
835
  type: "data";
@@ -903,5 +901,7 @@ export declare function validateRecipe(json: unknown): {
903
901
  } | undefined;
904
902
  ringColor?: string | undefined;
905
903
  })[];
904
+ id: string;
905
+ version: number;
906
906
  routes?: string[] | undefined;
907
907
  };
@@ -33,6 +33,16 @@ export type TooltipStep = {
33
33
  closeButton?: boolean;
34
34
  timeoutMs?: number;
35
35
  };
36
+ /** CTA buttons for tour navigation */
37
+ ctaButtons?: Array<{
38
+ label: string;
39
+ actionId: string;
40
+ primary?: boolean;
41
+ }>;
42
+ /** In sequential mode, maps actionIds to next step IDs. Use 'end' to finish tour. */
43
+ onAction?: Record<string, string>;
44
+ /** Route this step should appear on (for cross-page tours) */
45
+ route?: string;
36
46
  };
37
47
  export type HighlightStep = {
38
48
  kind: 'highlight';
@@ -54,15 +64,59 @@ export type HighlightStep = {
54
64
  timeoutMs?: number;
55
65
  };
56
66
  };
67
+ export type ModalStep = {
68
+ kind: 'modal';
69
+ id: string;
70
+ content: {
71
+ title?: string;
72
+ body: string;
73
+ };
74
+ size?: 'sm' | 'md' | 'lg';
75
+ blocking?: boolean;
76
+ scrim?: {
77
+ opacity?: number;
78
+ };
79
+ dismiss?: {
80
+ onEsc?: boolean;
81
+ closeButton?: boolean;
82
+ timeoutMs?: number;
83
+ };
84
+ ctaButtons?: Array<{
85
+ label: string;
86
+ actionId: string;
87
+ primary?: boolean;
88
+ }>;
89
+ /** In sequential mode, maps actionIds to next step IDs. Use 'end' to finish tour. */
90
+ onAction?: Record<string, string>;
91
+ /** Route this step should appear on (for cross-page tours) */
92
+ route?: string;
93
+ };
57
94
  export type CanvasRecipe = {
58
95
  id: string;
59
96
  version: number;
97
+ /** Display title for the tour (shown in canvas tile) */
98
+ title?: string;
99
+ /** Display description for the tour (shown in canvas tile) */
100
+ description?: string;
60
101
  routes?: string[];
61
- steps: Array<TooltipStep | HighlightStep>;
102
+ /** 'parallel' shows all steps at once (default), 'sequential' runs as a tour */
103
+ mode?: 'parallel' | 'sequential';
104
+ /** For sequential mode, the step ID to start with (defaults to first step) */
105
+ startStep?: string;
106
+ /**
107
+ * Whether to auto-start this tour on page load (default: true for backwards compatibility).
108
+ * Set to false for tours that should only start via explicit user action (e.g., clicking "Start Tour").
109
+ */
110
+ autoStart?: boolean;
111
+ steps: Array<TooltipStep | HighlightStep | ModalStep>;
62
112
  };
63
113
  export type OverlayContext = {
64
114
  overlayRoot: HTMLElement;
65
115
  resolve: (sel: Selector) => Promise<HTMLElement | null>;
66
116
  onEvent: (name: string, payload?: any) => void;
67
117
  canvasHost?: HTMLElement | null;
118
+ /** Telemetry client for persisting tour state to PostHog */
119
+ telemetry?: {
120
+ setPersonPropertiesOnce?: (props: Record<string, unknown>) => void;
121
+ };
68
122
  };
package/dist/react.d.ts CHANGED
@@ -45,6 +45,11 @@ export interface SyntroProviderProps {
45
45
  * Optional canvas configuration overrides.
46
46
  */
47
47
  canvasOptions?: SyntroInitOptions["canvas"];
48
+ /**
49
+ * Custom config fetcher to override the default experiment-based fetcher.
50
+ * Use this for local development or when bypassing the experiment server.
51
+ */
52
+ fetcher?: SyntroInitOptions["fetcher"];
48
53
  /**
49
54
  * Children to render.
50
55
  */
@@ -64,7 +69,7 @@ export interface SyntroProviderProps {
64
69
  * Place this at the root of your app or at the top of any subtree
65
70
  * that needs access to the SDK.
66
71
  */
67
- export declare function SyntroProvider({ token, canvasOptions, children, onReady, onError, }: SyntroProviderProps): import("react/jsx-runtime").JSX.Element;
72
+ export declare function SyntroProvider({ token, canvasOptions, fetcher, children, onReady, onError, }: SyntroProviderProps): import("react/jsx-runtime").JSX.Element;
68
73
  /**
69
74
  * Hook to access the Syntro SDK.
70
75
  *
package/dist/react.js CHANGED
@@ -23,13 +23,16 @@ import { jsx as _jsx } from "react/jsx-runtime";
23
23
  import { createContext, useContext, useEffect, useState, useRef, } from "react";
24
24
  import { Syntro } from "./bootstrap";
25
25
  const SyntroContext = createContext(null);
26
+ // Global tracking to handle React Strict Mode double-mounting
27
+ let globalInitPromise = null;
28
+ let globalInitToken = null;
26
29
  /**
27
30
  * Provider component that initializes the Syntro SDK.
28
31
  *
29
32
  * Place this at the root of your app or at the top of any subtree
30
33
  * that needs access to the SDK.
31
34
  */
32
- export function SyntroProvider({ token, canvasOptions, children, onReady, onError, }) {
35
+ export function SyntroProvider({ token, canvasOptions, fetcher, children, onReady, onError, }) {
33
36
  const [state, setState] = useState({
34
37
  canvas: null,
35
38
  experiments: null,
@@ -40,10 +43,30 @@ export function SyntroProvider({ token, canvasOptions, children, onReady, onErro
40
43
  const initRef = useRef(false);
41
44
  const handleRef = useRef(null);
42
45
  useEffect(() => {
43
- if (!token || initRef.current)
46
+ if (!token)
47
+ return;
48
+ // Reuse existing init if same token (handles React Strict Mode remounts)
49
+ if (globalInitPromise && globalInitToken === token) {
50
+ globalInitPromise.then((result) => {
51
+ var _a, _b;
52
+ handleRef.current = result.canvas;
53
+ setState({
54
+ canvas: result.canvas,
55
+ experiments: (_a = result.experiments) !== null && _a !== void 0 ? _a : null,
56
+ telemetry: (_b = result.telemetry) !== null && _b !== void 0 ? _b : null,
57
+ isReady: true,
58
+ error: null,
59
+ });
60
+ });
61
+ return;
62
+ }
63
+ // Prevent double init
64
+ if (initRef.current)
44
65
  return;
45
66
  initRef.current = true;
46
- Syntro.init({ token, canvas: canvasOptions })
67
+ globalInitToken = token;
68
+ globalInitPromise = Syntro.init({ token, canvas: canvasOptions, fetcher });
69
+ globalInitPromise
47
70
  .then((result) => {
48
71
  var _a, _b;
49
72
  handleRef.current = result.canvas;
@@ -60,13 +83,12 @@ export function SyntroProvider({ token, canvasOptions, children, onReady, onErro
60
83
  const error = err instanceof Error ? err : new Error(String(err));
61
84
  setState((prev) => ({ ...prev, error, isReady: true }));
62
85
  onError === null || onError === void 0 ? void 0 : onError(error);
86
+ // Clear global state on error so retry is possible
87
+ globalInitPromise = null;
88
+ globalInitToken = null;
63
89
  });
64
- return () => {
65
- if (handleRef.current) {
66
- handleRef.current.destroy();
67
- handleRef.current = null;
68
- }
69
- };
90
+ // Don't destroy on unmount in dev mode - React Strict Mode will remount
91
+ // The canvas persists and will be reused on remount
70
92
  }, [token]);
71
93
  return (_jsx(SyntroContext.Provider, { value: state, children: children }));
72
94
  }
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { ReactNode } from "react";
2
+ import type { RenderProps, RenderData, DefaultRenderer, AppearanceConfig, ActionHandler } from "./types";
3
+ interface RenderContextValue {
4
+ renderProps: RenderProps;
5
+ appearance: AppearanceConfig;
6
+ actionHandlers: ActionHandler;
7
+ invoke: <T extends ReactNode>(propName: keyof RenderProps, data: RenderData, defaultRenderer: DefaultRenderer<T>) => T;
8
+ }
9
+ export interface RenderProviderProps {
10
+ children: ReactNode;
11
+ renderProps?: RenderProps;
12
+ appearance?: AppearanceConfig;
13
+ actionHandlers?: ActionHandler;
14
+ }
15
+ /**
16
+ * Provider for render props and appearance configuration
17
+ */
18
+ export declare function RenderProvider({ children, renderProps, appearance, actionHandlers, }: RenderProviderProps): import("react/jsx-runtime").JSX.Element;
19
+ /**
20
+ * Hook to access render context
21
+ */
22
+ export declare function useRenderContext(): RenderContextValue;
23
+ /**
24
+ * Hook to get render props
25
+ */
26
+ export declare function useRenderProps(): RenderProps;
27
+ /**
28
+ * Hook to get appearance config
29
+ */
30
+ export declare function useAppearance(): AppearanceConfig;
31
+ /**
32
+ * Hook to get action handlers
33
+ */
34
+ export declare function useActionHandlers(): ActionHandler;
35
+ /**
36
+ * Hook to invoke a render prop
37
+ */
38
+ export declare function useRender<T extends ReactNode>(propName: keyof RenderProps, data: RenderData, defaultRenderer: DefaultRenderer<T>): T;
39
+ export {};
@@ -0,0 +1,67 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useContext, useMemo } from "react";
3
+ const RenderContext = createContext(null);
4
+ /**
5
+ * Provider for render props and appearance configuration
6
+ */
7
+ export function RenderProvider({ children, renderProps = {}, appearance = {}, actionHandlers = {}, }) {
8
+ const value = useMemo(() => ({
9
+ renderProps,
10
+ appearance,
11
+ actionHandlers,
12
+ invoke: (propName, data, defaultRenderer) => {
13
+ var _a;
14
+ const renderProp = renderProps[propName];
15
+ // Check for type-specific override first
16
+ if (propName === "renderContent" && renderProps.renderByType) {
17
+ const contentType = (_a = data.content) === null || _a === void 0 ? void 0 : _a.type;
18
+ if (contentType && renderProps.renderByType[contentType]) {
19
+ return renderProps.renderByType[contentType](data, defaultRenderer);
20
+ }
21
+ }
22
+ // Use custom render prop if provided
23
+ if (typeof renderProp === "function") {
24
+ return renderProp(data, defaultRenderer);
25
+ }
26
+ // Fall back to default renderer
27
+ return defaultRenderer(data);
28
+ },
29
+ }), [renderProps, appearance, actionHandlers]);
30
+ return (_jsx(RenderContext.Provider, { value: value, children: children }));
31
+ }
32
+ /**
33
+ * Hook to access render context
34
+ */
35
+ export function useRenderContext() {
36
+ const context = useContext(RenderContext);
37
+ if (!context) {
38
+ throw new Error("useRenderContext must be used within a RenderProvider");
39
+ }
40
+ return context;
41
+ }
42
+ /**
43
+ * Hook to get render props
44
+ */
45
+ export function useRenderProps() {
46
+ return useRenderContext().renderProps;
47
+ }
48
+ /**
49
+ * Hook to get appearance config
50
+ */
51
+ export function useAppearance() {
52
+ return useRenderContext().appearance;
53
+ }
54
+ /**
55
+ * Hook to get action handlers
56
+ */
57
+ export function useActionHandlers() {
58
+ return useRenderContext().actionHandlers;
59
+ }
60
+ /**
61
+ * Hook to invoke a render prop
62
+ */
63
+ export function useRender(propName, data, defaultRenderer) {
64
+ const { invoke } = useRenderContext();
65
+ return invoke(propName, data, defaultRenderer);
66
+ }
67
+ //# sourceMappingURL=RenderContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderContext.js","sourceRoot":"","sources":["../../src/render/RenderContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAa,OAAO,EAAE,MAAM,OAAO,CAAC;AAsBtE,MAAM,aAAa,GAAG,aAAa,CAA4B,IAAI,CAAC,CAAC;AASrE;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,QAAQ,EACR,WAAW,GAAG,EAAE,EAChB,UAAU,GAAG,EAAE,EACf,cAAc,GAAG,EAAE,GACC;IACpB,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC;QACL,WAAW;QACX,UAAU;QACV,cAAc;QACd,MAAM,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE;;YAC1C,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;YAEzC,yCAAyC;YACzC,IAAI,QAAQ,KAAK,eAAe,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;gBAC7D,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC;gBACvC,IAAI,WAAW,IAAI,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;oBACzD,OAAO,WAAW,CAAC,YAAY,CAAC,WAAW,CAAE,CAC3C,IAAI,EACJ,eAAkC,CAC5B,CAAC;gBACX,CAAC;YACH,CAAC;YAED,qCAAqC;YACrC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;gBACrC,OAAO,UAAU,CAAC,IAAI,EAAE,eAAkC,CAAQ,CAAC;YACrE,CAAC;YAED,gCAAgC;YAChC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC,EACF,CAAC,WAAW,EAAE,UAAU,EAAE,cAAc,CAAC,CAC1C,CAAC;IAEF,OAAO,CACL,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAA0B,CAC1E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,gBAAgB,EAAE,CAAC,WAAW,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,gBAAgB,EAAE,CAAC,UAAU,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,gBAAgB,EAAE,CAAC,cAAc,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,QAA2B,EAC3B,IAAgB,EAChB,eAAmC;IAEnC,MAAM,EAAE,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACtC,OAAO,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type { RenderData, DefaultRenderer, RenderProp, RenderProps, StyleOverrides, ClassNameOverrides, AppearanceConfig, ActionHandler, } from "./types";
2
+ export { RenderProvider, useRenderContext, useRenderProps, useAppearance, useActionHandlers, useRender, } from "./RenderContext";
3
+ export type { RenderProviderProps } from "./RenderContext";
@@ -0,0 +1,3 @@
1
+ // Context and hooks
2
+ export { RenderProvider, useRenderContext, useRenderProps, useAppearance, useActionHandlers, useRender, } from "./RenderContext";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/render/index.ts"],"names":[],"mappings":"AAYA,oBAAoB;AACpB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,SAAS,GACV,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,81 @@
1
+ import type { ReactNode, CSSProperties } from "react";
2
+ import type { TileConfig, TileContent, BlockType, TileAction } from "../types";
3
+ /**
4
+ * Data passed to render props
5
+ */
6
+ export interface RenderData {
7
+ tile: TileConfig;
8
+ content: TileContent;
9
+ isExpanded: boolean;
10
+ surface: "overlay" | "wheel";
11
+ }
12
+ /**
13
+ * Default renderer function signature
14
+ */
15
+ export type DefaultRenderer<T = ReactNode> = (data: RenderData) => T;
16
+ /**
17
+ * Render prop function signature - receives data and default renderer
18
+ */
19
+ export type RenderProp<T = ReactNode> = (data: RenderData, defaultRenderer: DefaultRenderer<T>) => T;
20
+ /**
21
+ * Complete render props configuration (Novu-style pyramid)
22
+ */
23
+ export interface RenderProps {
24
+ renderTile?: RenderProp;
25
+ renderHeader?: RenderProp;
26
+ renderIcon?: RenderProp;
27
+ renderTitle?: RenderProp;
28
+ renderSubtitle?: RenderProp;
29
+ renderPreview?: RenderProp;
30
+ renderContent?: RenderProp;
31
+ renderActions?: RenderProp;
32
+ renderByType?: Partial<Record<BlockType, RenderProp>>;
33
+ }
34
+ /**
35
+ * Style overrides for tile parts
36
+ */
37
+ export interface StyleOverrides {
38
+ tile?: CSSProperties;
39
+ header?: CSSProperties;
40
+ icon?: CSSProperties;
41
+ title?: CSSProperties;
42
+ subtitle?: CSSProperties;
43
+ preview?: CSSProperties;
44
+ content?: CSSProperties;
45
+ actions?: CSSProperties;
46
+ action?: CSSProperties;
47
+ }
48
+ /**
49
+ * Class name overrides for custom styling
50
+ */
51
+ export interface ClassNameOverrides {
52
+ tile?: string;
53
+ header?: string;
54
+ icon?: string;
55
+ title?: string;
56
+ subtitle?: string;
57
+ preview?: string;
58
+ content?: string;
59
+ actions?: string;
60
+ action?: string;
61
+ }
62
+ /**
63
+ * Complete appearance configuration
64
+ */
65
+ export interface AppearanceConfig {
66
+ variables?: Partial<Record<`--sc-${string}`, string>>;
67
+ styles?: StyleOverrides;
68
+ classNames?: ClassNameOverrides;
69
+ baseTheme?: "light" | "dark" | "system";
70
+ }
71
+ /**
72
+ * Action handler for interactive elements
73
+ */
74
+ export interface ActionHandler {
75
+ onActionClick?: (action: TileAction, tile: TileConfig) => void;
76
+ onTileClick?: (tile: TileConfig) => void;
77
+ onTileDismiss?: (tile: TileConfig) => void;
78
+ onRatingSubmit?: (value: number, tile: TileConfig) => void;
79
+ onFormSubmit?: (data: Record<string, unknown>, tile: TileConfig) => void;
80
+ onSurveySubmit?: (choices: string[], tile: TileConfig) => void;
81
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/render/types.ts"],"names":[],"mappings":""}