@syntrologie/runtime-sdk 0.2.0 → 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 +25953 -26837
  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 +7 -1
  119. package/dist/telemetry/adapters/posthog.js +49 -1
  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":"useShadowCanvasConfig.js","sourceRoot":"","sources":["../../src/hooks/useShadowCanvasConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAuBlE,MAAM,cAAc,GAAG,CAAC,UAA6B,EAAE,EAAE,CACvD,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,eAAC,OAAA,CAAC,MAAA,CAAC,CAAC,KAAK,mCAAI,CAAC,CAAC,GAAG,CAAC,MAAA,CAAC,CAAC,KAAK,mCAAI,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC;AAElE,MAAM,UAAU,qBAAqB,CAAC,EACpC,OAAO,EACP,cAAc,GAAG,KAAK,EACtB,WAAW,GACkB;IAC7B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAA0B;QAC1D,UAAU,EAAE,EAAE;QACd,SAAS,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAClC,IAAI,CAAC;YACH,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACrE,+DAA+D;YAC/D,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAgC,CAAC;YAC/D,+DAA+D;YAC/D,IAAI,UAAU,GAAsB,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;YAChF,IAAI,WAAW,EAAE,CAAC;gBAChB,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YACpF,CAAC;YACD,QAAQ,CAAC;gBACP,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC;gBACtC,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,WAAW,EAAE,QAAQ,CAAC,WAAW;aAClC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,SAAS,EAAE,KAAK;gBAChB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;aAC5D,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,EAAE,CAAC;QACP,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IAE3B,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"useShadowCanvasConfig.js","sourceRoot":"","sources":["../../src/hooks/useShadowCanvasConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA8BlE,MAAM,SAAS,GAAG,CAAC,KAAmB,EAAE,EAAE,CACxC,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,eAAC,OAAA,CAAC,MAAA,CAAC,CAAC,KAAK,mCAAI,CAAC,CAAC,GAAG,CAAC,MAAA,CAAC,CAAC,KAAK,mCAAI,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC;AAE7D,MAAM,UAAU,qBAAqB,CAAC,EACpC,OAAO,EACP,cAAc,GAAG,KAAK,EACtB,WAAW,GACkB;IAC7B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAA0B;QAC1D,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAClC,IAAI,CAAC;YACH,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACrE,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAE,CAAC;YACjC,IAAI,KAAK,GAAiB,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;YAC/C,IAAI,WAAW,EAAE,CAAC;gBAChB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1E,CAAC;YACD,QAAQ,CAAC;gBACP,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;gBACvB,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,aAAa,EAAE,QAAQ,CAAC,aAAa;gBACrC,cAAc,EAAE,QAAQ,CAAC,cAAc;gBACvC,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,SAAS,EAAE,KAAK;gBAChB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;aAC5D,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,EAAE,CAAC;QACP,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IAE3B,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AACvC,CAAC"}
@@ -8,7 +8,7 @@ function log(opts, level, msg, data) {
8
8
  console[level]('[host-patcher]', msg, data !== null && data !== void 0 ? data : '');
9
9
  }
10
10
  export function applyPatch(patch, opts = {}) {
11
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
11
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
12
12
  const policy = (_a = opts.policy) !== null && _a !== void 0 ? _a : defaultPolicy;
13
13
  if (applied.has(patch.id))
14
14
  return { ok: true }; // idempotent
@@ -17,7 +17,6 @@ export function applyPatch(patch, opts = {}) {
17
17
  return { ok: false, reason: 'anchor-missing' };
18
18
  if (!checkInvariants(anchorEl, patch.invariants))
19
19
  return { ok: false, reason: 'invariants-failed' };
20
- const tier = (_b = patch.tier) !== null && _b !== void 0 ? _b : 'additive';
21
20
  const inserted = [];
22
21
  const snapshot = { classes: undefined, attrs: undefined, styles: undefined, text: undefined };
23
22
  for (const op of patch.operations) {
@@ -34,7 +33,7 @@ export function applyPatch(patch, opts = {}) {
34
33
  break;
35
34
  }
36
35
  case 'append': {
37
- const node = (_c = op.node) !== null && _c !== void 0 ? _c : (() => {
36
+ const node = (_b = op.node) !== null && _b !== void 0 ? _b : (() => {
38
37
  const div = document.createElement('div');
39
38
  if (op.html)
40
39
  div.innerHTML = policy.sanitizeHTML(op.html);
@@ -45,7 +44,7 @@ export function applyPatch(patch, opts = {}) {
45
44
  break;
46
45
  }
47
46
  case 'prepend': {
48
- const node = (_d = op.node) !== null && _d !== void 0 ? _d : (() => {
47
+ const node = (_c = op.node) !== null && _c !== void 0 ? _c : (() => {
49
48
  const div = document.createElement('div');
50
49
  if (op.html)
51
50
  div.innerHTML = policy.sanitizeHTML(op.html);
@@ -56,29 +55,29 @@ export function applyPatch(patch, opts = {}) {
56
55
  break;
57
56
  }
58
57
  case 'addClass': {
59
- if (!policy.allowClass(op.className, tier)) {
58
+ if (!policy.allowClass(op.className)) {
60
59
  log(opts, 'warn', 'class not allowed', op.className);
61
60
  break;
62
61
  }
63
- (_e = snapshot.classes) !== null && _e !== void 0 ? _e : (snapshot.classes = new Set(Array.from(anchorEl.classList)));
62
+ (_d = snapshot.classes) !== null && _d !== void 0 ? _d : (snapshot.classes = new Set(Array.from(anchorEl.classList)));
64
63
  anchorEl.classList.add(op.className);
65
64
  break;
66
65
  }
67
66
  case 'removeClass': {
68
- if (!policy.allowClass(op.className, tier)) {
67
+ if (!policy.allowClass(op.className)) {
69
68
  log(opts, 'warn', 'class not allowed', op.className);
70
69
  break;
71
70
  }
72
- (_f = snapshot.classes) !== null && _f !== void 0 ? _f : (snapshot.classes = new Set(Array.from(anchorEl.classList)));
71
+ (_e = snapshot.classes) !== null && _e !== void 0 ? _e : (snapshot.classes = new Set(Array.from(anchorEl.classList)));
73
72
  anchorEl.classList.remove(op.className);
74
73
  break;
75
74
  }
76
75
  case 'setAttr': {
77
- if (!policy.allowAttribute(op.name, tier)) {
76
+ if (!policy.allowAttribute(op.name)) {
78
77
  log(opts, 'warn', 'attr not allowed', op.name);
79
78
  break;
80
79
  }
81
- (_g = snapshot.attrs) !== null && _g !== void 0 ? _g : (snapshot.attrs = new Map());
80
+ (_f = snapshot.attrs) !== null && _f !== void 0 ? _f : (snapshot.attrs = new Map());
82
81
  if (!snapshot.attrs.has(op.name)) {
83
82
  const current = anchorEl.getAttribute(op.name);
84
83
  if (current !== null)
@@ -93,11 +92,11 @@ export function applyPatch(patch, opts = {}) {
93
92
  break;
94
93
  }
95
94
  case 'setStyle': {
96
- if (!policy.allowStyle(op.prop, (_h = op.value) !== null && _h !== void 0 ? _h : null, tier)) {
95
+ if (!policy.allowStyle(op.prop, (_g = op.value) !== null && _g !== void 0 ? _g : null)) {
97
96
  log(opts, 'warn', 'style not allowed', op.prop);
98
97
  break;
99
98
  }
100
- (_j = snapshot.styles) !== null && _j !== void 0 ? _j : (snapshot.styles = new Map());
99
+ (_h = snapshot.styles) !== null && _h !== void 0 ? _h : (snapshot.styles = new Map());
101
100
  if (!snapshot.styles.has(op.prop)) {
102
101
  const prev = anchorEl.style.getPropertyValue(op.prop);
103
102
  snapshot.styles.set(op.prop, prev || '__NULL__');
@@ -109,11 +108,11 @@ export function applyPatch(patch, opts = {}) {
109
108
  break;
110
109
  }
111
110
  case 'setText': {
112
- if (!policy.allowSetText(tier)) {
113
- log(opts, 'warn', 'setText not allowed in this tier', { tier });
111
+ if (!policy.allowSetText()) {
112
+ log(opts, 'warn', 'setText not allowed');
114
113
  break;
115
114
  }
116
- (_k = snapshot.text) !== null && _k !== void 0 ? _k : (snapshot.text = (_l = anchorEl.textContent) !== null && _l !== void 0 ? _l : '');
115
+ (_j = snapshot.text) !== null && _j !== void 0 ? _j : (snapshot.text = (_k = anchorEl.textContent) !== null && _k !== void 0 ? _k : '');
117
116
  anchorEl.textContent = op.text;
118
117
  break;
119
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"patcher.js","sourceRoot":"","sources":["../../../src/hostPatcher/core/patcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAElE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;AAEhD,SAAS,GAAG,CAAC,IAAoB,EAAE,KAAoC,EAAE,GAAW,EAAE,IAAU;IAC9F,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;SACxC,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,CAAC,KAAK,CAAC,CAAC,gBAAgB,EAAE,GAAG,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAY,EAAE,OAAuB,EAAE;;IAChE,MAAM,MAAM,GAAW,MAAA,IAAI,CAAC,MAAM,mCAAI,aAAa,CAAC;IAEpD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,aAAa;IAE7D,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9E,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC9D,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAEpG,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,mCAAI,UAAU,CAAC;IAEtC,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,MAAM,QAAQ,GAA6B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IAExH,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAClC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAChD,SAAS,CAAC,YAAY,CAAC,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;gBACzD,IAAI,EAAE,CAAC,IAAI;oBAAE,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBAChE,IAAI,EAAE,CAAC,IAAI;oBAAE,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC5C,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBACpD,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,MAAM;YACR,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,MAAA,EAAE,CAAC,IAAI,mCAAI,CAAC,GAAG,EAAE;oBAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBAC1C,IAAI,EAAE,CAAC,IAAI;wBAAE,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBAC1D,OAAO,GAAG,CAAC;gBACb,CAAC,CAAC,EAAE,CAAC;gBACL,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC3B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM;YACR,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,MAAM,IAAI,GAAG,MAAA,EAAE,CAAC,IAAI,mCAAI,CAAC,GAAG,EAAE;oBAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBAC1C,IAAI,EAAE,CAAC,IAAI;wBAAE,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBAC1D,OAAO,GAAG,CAAC;gBACb,CAAC,CAAC,EAAE,CAAC;gBACL,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM;YACR,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,EAAC,MAAM,EAAC,mBAAmB,EAAC,EAAE,CAAC,SAAS,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBACzG,MAAA,QAAQ,CAAC,OAAO,oCAAhB,QAAQ,CAAC,OAAO,GAAK,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAC;gBAC7D,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;gBACrC,MAAM;YACR,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,EAAC,MAAM,EAAC,mBAAmB,EAAC,EAAE,CAAC,SAAS,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBACzG,MAAA,QAAQ,CAAC,OAAO,oCAAhB,QAAQ,CAAC,OAAO,GAAK,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAC;gBAC7D,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;gBACxC,MAAM;YACR,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,EAAC,MAAM,EAAC,kBAAkB,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBAClG,MAAA,QAAQ,CAAC,KAAK,oCAAd,QAAQ,CAAC,KAAK,GAAK,IAAI,GAAG,EAAE,EAAC;gBAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBAC/C,IAAI,OAAO,KAAK,IAAI;wBAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;wBACtD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC/C,CAAC;gBACD,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI;oBAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;;oBACpD,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC9C,MAAM;YACR,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAA,EAAE,CAAC,KAAK,mCAAI,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,EAAC,MAAM,EAAC,mBAAmB,EAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBACjH,MAAA,QAAQ,CAAC,MAAM,oCAAf,QAAQ,CAAC,MAAM,GAAK,IAAI,GAAG,EAAE,EAAC;gBAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,GAAI,QAAwB,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBACvE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC,CAAC;gBACnD,CAAC;gBACD,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI;oBAAG,QAAwB,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;;oBACzE,QAAwB,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACrG,MAAM;YACR,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,EAAC,MAAM,EAAC,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBACzG,MAAA,QAAQ,CAAC,IAAI,oCAAb,QAAQ,CAAC,IAAI,GAAK,MAAA,QAAQ,CAAC,WAAW,mCAAI,EAAE,EAAC;gBAC7C,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC;gBAC/B,MAAM;YACR,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,GAAG,CAAC,IAAI,EAAC,MAAM,EAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;IACtE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAAU,EAAE,OAAuB,EAAE;IAC/D,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,CAAC,EAAE;QAAE,OAAO;IAEhB,wBAAwB;IACxB,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;QAAC,IAAI,CAAC;YAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IAAC,CAAC;IAE7D,mBAAmB;IACnB,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC;IACvB,IAAI,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;QACtB,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS;YAAE,EAAE,CAAC,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;QACtE,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACpE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,QAAS,CAAC,KAAM,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3F,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAC,CAAC,EAAE,EAAE;gBAChC,IAAI,CAAC,KAAK,UAAU;oBAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;;oBACvC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAW,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,EAAE,GAAI,EAAkB,CAAC,KAAK,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAC,CAAC,EAAE,EAAE;gBACjC,IAAI,CAAC,KAAK,UAAU;oBAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;;oBACtC,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAW,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"patcher.js","sourceRoot":"","sources":["../../../src/hostPatcher/core/patcher.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ export function sanitizeWithFallback(html) {
17
17
  tpl.innerHTML = html;
18
18
  const root = tpl.content;
19
19
  const walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT, null);
20
- const allowed = new Set(['b', 'strong', 'i', 'em', 'u', 'span', 'div', 'p', 'br', 'ul', 'ol', 'li', 'code', 'pre', 'small', 'sup', 'sub', 'a']);
20
+ const allowed = new Set(['b', 'strong', 'i', 'em', 'u', 'span', 'div', 'p', 'br', 'ul', 'ol', 'li', 'code', 'pre', 'small', 'sup', 'sub', 'a', 'button']);
21
21
  const toRemove = [];
22
22
  while (walker.nextNode()) {
23
23
  const el = walker.currentNode;
@@ -1 +1 @@
1
- {"version":3,"file":"sanitizer.js","sourceRoot":"","sources":["../../../src/hostPatcher/core/sanitizer.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,IAAY;;IAC/C,MAAM,SAAS,GAAG,OAAQ,MAAc,CAAC,SAAS,KAAK,UAAU,CAAC;IAClE,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC;YACH,aAAa;YACb,MAAM,CAAC,GAAG,IAAK,MAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO,GAAG,CAAC,SAAS,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IACD,6BAA6B;IAC7B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC/C,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IACrB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;IACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,EAAC,GAAG,EAAC,MAAM,EAAC,KAAK,EAAC,GAAG,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,GAAG,CAAC,CAAC,CAAC;IAC/H,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAsB,CAAC;QACzC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC7E,IAAI,OAAO,IAAI,OAAO;gBAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC,UAAU;YAAE,MAAA,EAAE,CAAC,UAAU,0CAAE,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACrE,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"sanitizer.js","sourceRoot":"","sources":["../../../src/hostPatcher/core/sanitizer.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,IAAY;;IAC/C,MAAM,SAAS,GAAG,OAAQ,MAAc,CAAC,SAAS,KAAK,UAAU,CAAC;IAClE,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC;YACH,aAAa;YACb,MAAM,CAAC,GAAG,IAAK,MAAc,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO,GAAG,CAAC,SAAS,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IACD,6BAA6B;IAC7B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC/C,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IACrB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;IACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,EAAC,GAAG,EAAC,MAAM,EAAC,KAAK,EAAC,GAAG,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,GAAG,EAAC,QAAQ,CAAC,CAAC,CAAC;IACxI,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,CAAC,WAAsB,CAAC;QACzC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC7E,IAAI,OAAO,IAAI,OAAO;gBAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC,UAAU;YAAE,MAAA,EAAE,CAAC,UAAU,0CAAE,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACrE,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC3E,CAAC"}
@@ -1,19 +1,19 @@
1
1
  export type AnchorSelector = {
2
- by: 'css';
2
+ type: 'css';
3
3
  value: string;
4
4
  within?: 'document' | 'shadow';
5
5
  } | {
6
- by: 'data';
6
+ type: 'data';
7
7
  key: string;
8
8
  value?: string;
9
9
  within?: 'document' | 'shadow';
10
10
  } | {
11
- by: 'aria';
11
+ type: 'aria';
12
12
  role?: string;
13
13
  label?: string;
14
14
  within?: 'document' | 'shadow';
15
15
  } | {
16
- by: 'ref';
16
+ type: 'ref';
17
17
  el: HTMLElement;
18
18
  };
19
19
  export type Invariants = {
@@ -59,7 +59,6 @@ export type Patch = {
59
59
  anchor: AnchorSelector;
60
60
  invariants?: Invariants;
61
61
  operations: Operation[];
62
- tier?: 'additive' | 'moderate' | 'surgical';
63
62
  reapplyOn?: Array<'route' | 'anchor-mutation'>;
64
63
  rollbackOn?: Array<'route' | 'anchor-missing'>;
65
64
  };
@@ -75,10 +74,10 @@ export type AppliedPatch = {
75
74
  } | null;
76
75
  };
77
76
  export type Policy = {
78
- allowAttribute(name: string, tier: Patch['tier']): boolean;
79
- allowClass(name: string, tier: Patch['tier']): boolean;
80
- allowStyle(prop: string, value: string | null, tier: Patch['tier']): boolean;
81
- allowSetText(tier: Patch['tier']): boolean;
77
+ allowAttribute(name: string): boolean;
78
+ allowClass(name: string): boolean;
79
+ allowStyle(prop: string, value: string | null): boolean;
80
+ allowSetText(): boolean;
82
81
  sanitizeHTML(html: string): string;
83
82
  };
84
83
  export type PatcherOptions = {
@@ -1,2 +1,6 @@
1
1
  import type { Policy } from '../core/types';
2
+ /**
3
+ * Default policy - allows all operations.
4
+ * HTML is still sanitized for security.
5
+ */
2
6
  export declare const defaultPolicy: Policy;
@@ -1,41 +1,13 @@
1
1
  import { sanitizeWithFallback } from '../core/sanitizer';
2
- const SAFE_STYLE_PROPS = new Set([
3
- 'outline', 'outlineColor', 'outlineWidth', 'outlineStyle',
4
- 'boxShadow', 'filter',
5
- 'scrollMargin', 'scrollMarginTop', 'scrollMarginRight', 'scrollMarginBottom', 'scrollMarginLeft'
6
- ]);
7
- function isCssVar(prop) { return prop.startsWith('--'); }
8
- function isDataOrAria(name) { return name.startsWith('data-') || name.startsWith('aria-') || name === 'role'; }
9
- function isSyntroClass(name) { return name.startsWith('syntro-') || name.startsWith('sc-') || name.startsWith('sx-'); }
2
+ /**
3
+ * Default policy - allows all operations.
4
+ * HTML is still sanitized for security.
5
+ */
10
6
  export const defaultPolicy = {
11
- allowAttribute(name, tier) {
12
- if (isDataOrAria(name))
13
- return true;
14
- // moderate+: allow 'title'
15
- if (tier !== 'additive' && name === 'title')
16
- return true;
17
- return false;
18
- },
19
- allowClass(name, _tier) {
20
- // only prefixed classes to avoid colliding with host BEM/tailwind
21
- return isSyntroClass(name);
22
- },
23
- allowStyle(prop, _value, tier) {
24
- if (isCssVar(prop))
25
- return true;
26
- if (SAFE_STYLE_PROPS.has(prop))
27
- return true;
28
- // 'surgical' tier may allow a tiny extra set if needed
29
- if (tier === 'surgical' && (prop === 'backgroundColor' || prop === 'color'))
30
- return true;
31
- return false;
32
- },
33
- allowSetText(tier) {
34
- // only 'surgical' allows host text edits; prefer additive badges otherwise
35
- return tier === 'surgical';
36
- },
37
- sanitizeHTML(html) {
38
- return sanitizeWithFallback(html);
39
- }
7
+ allowAttribute() { return true; },
8
+ allowClass() { return true; },
9
+ allowStyle() { return true; },
10
+ allowSetText() { return true; },
11
+ sanitizeHTML(html) { return sanitizeWithFallback(html); }
40
12
  };
41
13
  //# sourceMappingURL=defaultPolicy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultPolicy.js","sourceRoot":"","sources":["../../../src/hostPatcher/policy/defaultPolicy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc;IACzD,WAAW,EAAE,QAAQ;IACrB,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB;CACjG,CAAC,CAAC;AAEH,SAAS,QAAQ,CAAC,IAAY,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjE,SAAS,YAAY,CAAC,IAAY,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;AACvH,SAAS,aAAa,CAAC,IAAY,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAE/H,MAAM,CAAC,MAAM,aAAa,GAAW;IACnC,cAAc,CAAC,IAAI,EAAE,IAAI;QACvB,IAAI,YAAY,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACpC,2BAA2B;QAC3B,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,UAAU,CAAC,IAAI,EAAE,KAAK;QACpB,kEAAkE;QAClE,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI;QAC3B,IAAI,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,uDAAuD;QACvD,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,KAAK,iBAAiB,IAAI,IAAI,KAAK,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACzF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,YAAY,CAAC,IAAI;QACf,2EAA2E;QAC3E,OAAO,IAAI,KAAK,UAAU,CAAC;IAC7B,CAAC;IACD,YAAY,CAAC,IAAI;QACf,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"defaultPolicy.js","sourceRoot":"","sources":["../../../src/hostPatcher/policy/defaultPolicy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAW;IACnC,cAAc,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IACjC,UAAU,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAC7B,UAAU,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAC7B,YAAY,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IAC/B,YAAY,CAAC,IAAI,IAAI,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CAC1D,CAAC"}
@@ -37,13 +37,13 @@ function validateSelector(selector) {
37
37
  */
38
38
  function buildAndValidateSelector(sel) {
39
39
  let selectorStr;
40
- if (sel.by === 'css') {
40
+ if (sel.type === 'css') {
41
41
  selectorStr = sel.value;
42
42
  }
43
- else if (sel.by === 'data') {
43
+ else if (sel.type === 'data') {
44
44
  selectorStr = `[data-${sel.key}${sel.value ? `="${sel.value}"` : ''}]`;
45
45
  }
46
- else if (sel.by === 'aria') {
46
+ else if (sel.type === 'aria') {
47
47
  const role = sel.role ? `[role="${sel.role}"]` : '';
48
48
  const label = sel.label ? `[aria-label="${sel.label}"]` : '';
49
49
  selectorStr = `${role}${label}`;
@@ -1 +1 @@
1
- {"version":3,"file":"anchors.js","sourceRoot":"","sources":["../../../src/hostPatcher/utils/anchors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anchors.js","sourceRoot":"","sources":["../../../src/hostPatcher/utils/anchors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,2BAA2B,GAAG;IAClC,MAAM,EAAY,gDAAgD;IAClE,OAAO,EAAW,mBAAmB;IACrC,SAAS,EAAS,8CAA8C;IAChE,cAAc,EAAI,mCAAmC;CACtD,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC;;;GAGG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,2CAA2C,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAClF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,mDAAmD,EAAE,QAAQ,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,2BAA2B;IAC3B,IAAI,CAAC;QACH,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAAC,GAAmB;IACnD,IAAI,WAAmB,CAAC;IAExB,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACvB,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC;IAC1B,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC/B,WAAW,GAAG,SAAS,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;IACzE,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,WAAW,GAAG,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,GAAmB,EAAE,IAAyC;;IAC1F,kDAAkD;IAClD,IAAK,GAAW,CAAC,EAAE,YAAY,WAAW;QAAE,OAAQ,GAAW,CAAC,EAAiB,CAAC;IAElF,MAAM,YAAY,GAAG,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IACvE,MAAM,IAAI,GAAe,YAAY;QACnC,CAAC,CAAC,CAAC,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,UAAU,mCAAI,QAAQ,CAAC;QAC3C,CAAC,CAAC,QAAQ,CAAC;IAEb,8BAA8B;IAC9B,MAAM,WAAW,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mDAAmD;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAEnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,6CAA6C,WAAW,EAAE,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CACV,2BAA2B,WAAW,aAAa,OAAO,CAAC,MAAM,aAAa;YAC9E,uDAAuD,CACxD,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,CAAC,CAAgB,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAe,EAAE,GAA4E;IAC3H,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE;QAAE,OAAO,KAAK,CAAC;IAChF,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM,CAAC,CAAC,EAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;IACxB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,9 +2,9 @@ export * from "./types";
2
2
  export * from "./telemetry";
3
3
  export * from "./experiments";
4
4
  export * from "./hooks/useShadowCanvasConfig";
5
- export * from "./components/RectangleCard";
5
+ export * from "./components/TileCard";
6
6
  export * from "./components/ShadowCanvasOverlay";
7
- export * from "./components/RectangleWheel";
7
+ export * from "./components/TileWheel";
8
8
  export * from "./controller";
9
9
  export * from "./SmartCanvasApp";
10
10
  export * from "./SmartCanvasElement";
package/dist/index.js CHANGED
@@ -2,9 +2,9 @@ export * from "./types";
2
2
  export * from "./telemetry";
3
3
  export * from "./experiments";
4
4
  export * from "./hooks/useShadowCanvasConfig";
5
- export * from "./components/RectangleCard";
5
+ export * from "./components/TileCard";
6
6
  export * from "./components/ShadowCanvasOverlay";
7
- export * from "./components/RectangleWheel";
7
+ export * from "./components/TileWheel";
8
8
  export * from "./controller";
9
9
  export * from "./SmartCanvasApp";
10
10
  export * from "./SmartCanvasElement";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,8BAA8B;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,8BAA8B;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Module-level registry for overlay recipes.
3
+ * Allows components like TileCard to look up recipes by ID
4
+ * without needing to prop-drill the entire recipe config.
5
+ */
6
+ import type { CanvasRecipe } from './types';
7
+ /** Register recipes (called when overlays are loaded) */
8
+ export declare function registerRecipes(recipes: CanvasRecipe[]): void;
9
+ /** Get a recipe by ID */
10
+ export declare function getRecipeById(id: string): CanvasRecipe | undefined;
11
+ /** Get the first step's route for a recipe */
12
+ export declare function getRecipeStartRoute(recipeId: string): string | undefined;
13
+ /** Clear the registry */
14
+ export declare function clearRecipes(): void;
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Module-level registry for overlay recipes.
3
+ * Allows components like TileCard to look up recipes by ID
4
+ * without needing to prop-drill the entire recipe config.
5
+ */
6
+ let registeredRecipes = [];
7
+ /** Register recipes (called when overlays are loaded) */
8
+ export function registerRecipes(recipes) {
9
+ registeredRecipes = recipes;
10
+ }
11
+ /** Get a recipe by ID */
12
+ export function getRecipeById(id) {
13
+ return registeredRecipes.find(r => r.id === id);
14
+ }
15
+ /** Get the first step's route for a recipe */
16
+ export function getRecipeStartRoute(recipeId) {
17
+ var _a;
18
+ const recipe = getRecipeById(recipeId);
19
+ if (!recipe)
20
+ return undefined;
21
+ // Find the start step
22
+ const startStepId = recipe.startStep || ((_a = recipe.steps[0]) === null || _a === void 0 ? void 0 : _a.id);
23
+ if (!startStepId)
24
+ return undefined;
25
+ const startStep = recipe.steps.find(s => s.id === startStepId);
26
+ return startStep === null || startStep === void 0 ? void 0 : startStep.route;
27
+ }
28
+ /** Clear the registry */
29
+ export function clearRecipes() {
30
+ registeredRecipes = [];
31
+ }
32
+ //# sourceMappingURL=recipeRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipeRegistry.js","sourceRoot":"","sources":["../../src/overlays/recipeRegistry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,IAAI,iBAAiB,GAAmB,EAAE,CAAC;AAE3C,yDAAyD;AACzD,MAAM,UAAU,eAAe,CAAC,OAAuB;IACrD,iBAAiB,GAAG,OAAO,CAAC;AAC9B,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,aAAa,CAAC,EAAU;IACtC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,mBAAmB,CAAC,QAAgB;;IAClD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE9B,sBAAsB;IACtB,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,KAAI,MAAA,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,0CAAE,EAAE,CAAA,CAAC;IAC5D,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IAEnC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC;IAC/D,OAAQ,SAAiB,aAAjB,SAAS,uBAAT,SAAS,CAAU,KAAK,CAAC;AACnC,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,YAAY;IAC1B,iBAAiB,GAAG,EAAE,CAAC;AACzB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export { ensureOverlayRoot, injectBaseStyles } from "./overlay/root";
2
2
  export { showTooltip } from "./overlay/tooltip";
3
3
  export { showHighlight } from "./overlay/highlight";
4
+ export { showModal } from "./overlay/modal";
4
5
  export { runOverlays } from "./overlay/runner";
5
6
  export { createAnchorResolver } from "./anchor/resolve";
6
7
  export { isVisible, scrollIntoViewIfNeeded } from "./utils/dom";
@@ -1,6 +1,7 @@
1
1
  export { ensureOverlayRoot, injectBaseStyles } from "./overlay/root";
2
2
  export { showTooltip } from "./overlay/tooltip";
3
3
  export { showHighlight } from "./overlay/highlight";
4
+ export { showModal } from "./overlay/modal";
4
5
  export { runOverlays } from "./overlay/runner";
5
6
  export { createAnchorResolver } from "./anchor/resolve";
6
7
  export { isVisible, scrollIntoViewIfNeeded } from "./utils/dom";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/overlays/runtime/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/overlays/runtime/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ export type ModalHandle = {
2
+ destroy(): void;
3
+ el: HTMLElement;
4
+ };
5
+ export declare function showModal(overlayRoot: HTMLElement, opts: {
6
+ html: string;
7
+ size?: 'sm' | 'md' | 'lg';
8
+ blocking?: boolean;
9
+ scrimOpacity?: number;
10
+ onAction?: (actionId: string) => void;
11
+ }): ModalHandle;
@@ -0,0 +1,78 @@
1
+ import { sanitizeWithFallback } from '../../../hostPatcher/core/sanitizer';
2
+ export function showModal(overlayRoot, opts) {
3
+ var _a, _b;
4
+ // Create scrim backdrop
5
+ const scrim = document.createElement('div');
6
+ scrim.className = 'syntro-modal-scrim';
7
+ scrim.style.opacity = String((_a = opts.scrimOpacity) !== null && _a !== void 0 ? _a : 0.6);
8
+ overlayRoot.appendChild(scrim);
9
+ // Create modal container
10
+ const modal = document.createElement('div');
11
+ modal.className = `syntro-modal syntro-modal-${(_b = opts.size) !== null && _b !== void 0 ? _b : 'md'}`;
12
+ modal.setAttribute('role', 'dialog');
13
+ modal.setAttribute('aria-modal', 'true');
14
+ // Sanitize HTML to prevent XSS
15
+ modal.innerHTML = sanitizeWithFallback(opts.html);
16
+ overlayRoot.appendChild(modal);
17
+ // Handle action button clicks
18
+ const actionBtns = modal.querySelectorAll('[data-syntro-action]');
19
+ const actionHandler = (e) => {
20
+ const btn = e.currentTarget;
21
+ const actionId = btn.getAttribute('data-syntro-action');
22
+ if (actionId && opts.onAction) {
23
+ opts.onAction(actionId);
24
+ }
25
+ };
26
+ actionBtns.forEach(btn => btn.addEventListener('click', actionHandler));
27
+ // Handle escape key
28
+ const onKey = (e) => {
29
+ if (e.key === 'Escape')
30
+ handle.destroy();
31
+ };
32
+ window.addEventListener('keydown', onKey);
33
+ // Handle click outside (on scrim)
34
+ const onScrimClick = () => handle.destroy();
35
+ scrim.addEventListener('click', onScrimClick);
36
+ // Blocking mode - make siblings inert
37
+ let originalInert = [];
38
+ if (opts.blocking) {
39
+ Array.from(document.body.children).forEach((el) => {
40
+ if (el !== overlayRoot && el.getAttribute('inert') === null) {
41
+ el.setAttribute('inert', '');
42
+ originalInert.push(el);
43
+ }
44
+ });
45
+ }
46
+ // Focus first focusable element
47
+ const focusableEls = modal.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
48
+ if (focusableEls.length > 0) {
49
+ requestAnimationFrame(() => focusableEls[0].focus());
50
+ }
51
+ // Fade in
52
+ requestAnimationFrame(() => {
53
+ var _a;
54
+ scrim.style.opacity = String((_a = opts.scrimOpacity) !== null && _a !== void 0 ? _a : 0.6);
55
+ modal.style.opacity = '1';
56
+ modal.style.transform = 'translate(-50%, -50%) scale(1)';
57
+ });
58
+ const handle = {
59
+ el: modal,
60
+ destroy() {
61
+ window.removeEventListener('keydown', onKey);
62
+ scrim.removeEventListener('click', onScrimClick);
63
+ actionBtns.forEach(btn => btn.removeEventListener('click', actionHandler));
64
+ // Restore inert state
65
+ originalInert.forEach(el => el.removeAttribute('inert'));
66
+ // Fade out then remove
67
+ modal.style.opacity = '0';
68
+ modal.style.transform = 'translate(-50%, -50%) scale(0.95)';
69
+ scrim.style.opacity = '0';
70
+ setTimeout(() => {
71
+ modal.remove();
72
+ scrim.remove();
73
+ }, 200);
74
+ }
75
+ };
76
+ return handle;
77
+ }
78
+ //# sourceMappingURL=modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../../src/overlays/runtime/overlay/modal.ts"],"names":[],"mappings":"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"}