@aglyn/besigner-ui 1.0.0-beta.143

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 (486) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +7 -0
  3. package/package.json +73 -0
  4. package/src/besigner.d.ts +88 -0
  5. package/src/besigner.js +89 -0
  6. package/src/besigner.js.map +1 -0
  7. package/src/index.d.ts +17 -0
  8. package/src/index.js +18 -0
  9. package/src/index.js.map +1 -0
  10. package/src/lib/box-styler/box-styler.d.ts +57 -0
  11. package/src/lib/box-styler/box-styler.js +240 -0
  12. package/src/lib/box-styler/box-styler.js.map +1 -0
  13. package/src/lib/box-styler/components/box-diagram.d.ts +89 -0
  14. package/src/lib/box-styler/components/box-diagram.js +661 -0
  15. package/src/lib/box-styler/components/box-diagram.js.map +1 -0
  16. package/src/lib/box-styler/components/legend.d.ts +56 -0
  17. package/src/lib/box-styler/components/legend.js +130 -0
  18. package/src/lib/box-styler/components/legend.js.map +1 -0
  19. package/src/lib/box-styler/components/spacing-editor.d.ts +55 -0
  20. package/src/lib/box-styler/components/spacing-editor.js +347 -0
  21. package/src/lib/box-styler/components/spacing-editor.js.map +1 -0
  22. package/src/lib/box-styler/constants.d.ts +17 -0
  23. package/src/lib/box-styler/constants.js +30 -0
  24. package/src/lib/box-styler/constants.js.map +1 -0
  25. package/src/lib/box-styler/index.d.ts +2 -0
  26. package/src/lib/box-styler/index.js +4 -0
  27. package/src/lib/box-styler/index.js.map +1 -0
  28. package/src/lib/box-styler/region-fills.d.ts +107 -0
  29. package/src/lib/box-styler/region-fills.js +139 -0
  30. package/src/lib/box-styler/region-fills.js.map +1 -0
  31. package/src/lib/box-styler/spacing-value.d.ts +104 -0
  32. package/src/lib/box-styler/spacing-value.js +223 -0
  33. package/src/lib/box-styler/spacing-value.js.map +1 -0
  34. package/src/lib/box-styler/types.d.ts +29 -0
  35. package/src/lib/box-styler/types.js +18 -0
  36. package/src/lib/box-styler/types.js.map +1 -0
  37. package/src/lib/components/accordion-list.component.d.ts +50 -0
  38. package/src/lib/components/accordion-list.component.js +228 -0
  39. package/src/lib/components/accordion-list.component.js.map +1 -0
  40. package/src/lib/components/add-controls.component.d.ts +22 -0
  41. package/src/lib/components/add-controls.component.js +50 -0
  42. package/src/lib/components/add-controls.component.js.map +1 -0
  43. package/src/lib/components/app-bar-breadcrumbs.component.d.ts +29 -0
  44. package/src/lib/components/app-bar-breadcrumbs.component.js +279 -0
  45. package/src/lib/components/app-bar-breadcrumbs.component.js.map +1 -0
  46. package/src/lib/components/app-bar-primary.component.d.ts +21 -0
  47. package/src/lib/components/app-bar-primary.component.js +108 -0
  48. package/src/lib/components/app-bar-primary.component.js.map +1 -0
  49. package/src/lib/components/app-bar-secondary.component.d.ts +21 -0
  50. package/src/lib/components/app-bar-secondary.component.js +94 -0
  51. package/src/lib/components/app-bar-secondary.component.js.map +1 -0
  52. package/src/lib/components/aside-panel.component.d.ts +23 -0
  53. package/src/lib/components/aside-panel.component.js +505 -0
  54. package/src/lib/components/aside-panel.component.js.map +1 -0
  55. package/src/lib/components/besigner-conflict-alert.component.d.ts +36 -0
  56. package/src/lib/components/besigner-conflict-alert.component.js +51 -0
  57. package/src/lib/components/besigner-conflict-alert.component.js.map +1 -0
  58. package/src/lib/components/besigner-dnd-context.component.d.ts +32 -0
  59. package/src/lib/components/besigner-dnd-context.component.js +75 -0
  60. package/src/lib/components/besigner-dnd-context.component.js.map +1 -0
  61. package/src/lib/components/besigner-draft-alert.component.d.ts +70 -0
  62. package/src/lib/components/besigner-draft-alert.component.js +155 -0
  63. package/src/lib/components/besigner-draft-alert.component.js.map +1 -0
  64. package/src/lib/components/besigner-root-provider.component.d.ts +33 -0
  65. package/src/lib/components/besigner-root-provider.component.js +68 -0
  66. package/src/lib/components/besigner-root-provider.component.js.map +1 -0
  67. package/src/lib/components/binding-preview-controls.component.d.ts +28 -0
  68. package/src/lib/components/binding-preview-controls.component.js +63 -0
  69. package/src/lib/components/binding-preview-controls.component.js.map +1 -0
  70. package/src/lib/components/closeable-drawer.component.d.ts +32 -0
  71. package/src/lib/components/closeable-drawer.component.js +134 -0
  72. package/src/lib/components/closeable-drawer.component.js.map +1 -0
  73. package/src/lib/components/component-accordion-list.d.ts +28 -0
  74. package/src/lib/components/component-accordion-list.js +205 -0
  75. package/src/lib/components/component-accordion-list.js.map +1 -0
  76. package/src/lib/components/component-icon.component.d.ts +32 -0
  77. package/src/lib/components/component-icon.component.js +51 -0
  78. package/src/lib/components/component-icon.component.js.map +1 -0
  79. package/src/lib/components/component-picker.d.ts +27 -0
  80. package/src/lib/components/component-picker.js +368 -0
  81. package/src/lib/components/component-picker.js.map +1 -0
  82. package/src/lib/components/components-grid-list.component.d.ts +31 -0
  83. package/src/lib/components/components-grid-list.component.js +162 -0
  84. package/src/lib/components/components-grid-list.component.js.map +1 -0
  85. package/src/lib/components/custom-css-form.component.d.ts +115 -0
  86. package/src/lib/components/custom-css-form.component.js +699 -0
  87. package/src/lib/components/custom-css-form.component.js.map +1 -0
  88. package/src/lib/components/device-preview-controls.component.d.ts +22 -0
  89. package/src/lib/components/device-preview-controls.component.js +150 -0
  90. package/src/lib/components/device-preview-controls.component.js.map +1 -0
  91. package/src/lib/components/dnd/canvas-drop-indicator.d.ts +20 -0
  92. package/src/lib/components/dnd/canvas-drop-indicator.js +61 -0
  93. package/src/lib/components/dnd/canvas-drop-indicator.js.map +1 -0
  94. package/src/lib/components/dnd/draggable-droppable.d.ts +31 -0
  95. package/src/lib/components/dnd/draggable-droppable.js +383 -0
  96. package/src/lib/components/dnd/draggable-droppable.js.map +1 -0
  97. package/src/lib/components/dnd/draggable.d.ts +42 -0
  98. package/src/lib/components/dnd/draggable.js +66 -0
  99. package/src/lib/components/dnd/draggable.js.map +1 -0
  100. package/src/lib/components/dnd/drop-indicator.d.ts +31 -0
  101. package/src/lib/components/dnd/drop-indicator.js +139 -0
  102. package/src/lib/components/dnd/drop-indicator.js.map +1 -0
  103. package/src/lib/components/dnd/droppable.d.ts +43 -0
  104. package/src/lib/components/dnd/droppable.js +63 -0
  105. package/src/lib/components/dnd/droppable.js.map +1 -0
  106. package/src/lib/components/element-card.component.d.ts +23 -0
  107. package/src/lib/components/element-card.component.js +49 -0
  108. package/src/lib/components/element-card.component.js.map +1 -0
  109. package/src/lib/components/element-classes-field.component.d.ts +41 -0
  110. package/src/lib/components/element-classes-field.component.js +140 -0
  111. package/src/lib/components/element-classes-field.component.js.map +1 -0
  112. package/src/lib/components/element-detail-overlay.component.d.ts +55 -0
  113. package/src/lib/components/element-detail-overlay.component.js +157 -0
  114. package/src/lib/components/element-detail-overlay.component.js.map +1 -0
  115. package/src/lib/components/element-detail.component.d.ts +56 -0
  116. package/src/lib/components/element-detail.component.js +171 -0
  117. package/src/lib/components/element-detail.component.js.map +1 -0
  118. package/src/lib/components/element-info-details.component.d.ts +18 -0
  119. package/src/lib/components/element-info-details.component.js +169 -0
  120. package/src/lib/components/element-info-details.component.js.map +1 -0
  121. package/src/lib/components/element-interactions-form.component.d.ts +21 -0
  122. package/src/lib/components/element-interactions-form.component.js +199 -0
  123. package/src/lib/components/element-interactions-form.component.js.map +1 -0
  124. package/src/lib/components/element-preview.component.d.ts +75 -0
  125. package/src/lib/components/element-preview.component.js +346 -0
  126. package/src/lib/components/element-preview.component.js.map +1 -0
  127. package/src/lib/components/element-props-form.component.d.ts +565 -0
  128. package/src/lib/components/element-props-form.component.js +2392 -0
  129. package/src/lib/components/element-props-form.component.js.map +1 -0
  130. package/src/lib/components/element-styles-form-template.component.d.ts +27 -0
  131. package/src/lib/components/element-styles-form-template.component.js +89 -0
  132. package/src/lib/components/element-styles-form-template.component.js.map +1 -0
  133. package/src/lib/components/element-styles-form.component.d.ts +52 -0
  134. package/src/lib/components/element-styles-form.component.js +1350 -0
  135. package/src/lib/components/element-styles-form.component.js.map +1 -0
  136. package/src/lib/components/empty-document-slot.d.ts +39 -0
  137. package/src/lib/components/empty-document-slot.js +121 -0
  138. package/src/lib/components/empty-document-slot.js.map +1 -0
  139. package/src/lib/components/empty-results.d.ts +22 -0
  140. package/src/lib/components/empty-results.js +131 -0
  141. package/src/lib/components/empty-results.js.map +1 -0
  142. package/src/lib/components/history-controls.component.d.ts +21 -0
  143. package/src/lib/components/history-controls.component.js +67 -0
  144. package/src/lib/components/history-controls.component.js.map +1 -0
  145. package/src/lib/components/inline-markdown-editor.component.d.ts +17 -0
  146. package/src/lib/components/inline-markdown-editor.component.js +220 -0
  147. package/src/lib/components/inline-markdown-editor.component.js.map +1 -0
  148. package/src/lib/components/inline-text-editor.component.d.ts +48 -0
  149. package/src/lib/components/inline-text-editor.component.js +905 -0
  150. package/src/lib/components/inline-text-editor.component.js.map +1 -0
  151. package/src/lib/components/insert-token-menu.component.d.ts +86 -0
  152. package/src/lib/components/insert-token-menu.component.js +232 -0
  153. package/src/lib/components/insert-token-menu.component.js.map +1 -0
  154. package/src/lib/components/instance-attr-overrides.component.d.ts +50 -0
  155. package/src/lib/components/instance-attr-overrides.component.js +298 -0
  156. package/src/lib/components/instance-attr-overrides.component.js.map +1 -0
  157. package/src/lib/components/interact-controls.component.d.ts +22 -0
  158. package/src/lib/components/interact-controls.component.js +74 -0
  159. package/src/lib/components/interact-controls.component.js.map +1 -0
  160. package/src/lib/components/markdown-attribute-field.component.d.ts +40 -0
  161. package/src/lib/components/markdown-attribute-field.component.js +103 -0
  162. package/src/lib/components/markdown-attribute-field.component.js.map +1 -0
  163. package/src/lib/components/node-card.d.ts +24 -0
  164. package/src/lib/components/node-card.js +86 -0
  165. package/src/lib/components/node-card.js.map +1 -0
  166. package/src/lib/components/node-context-menu.d.ts +25 -0
  167. package/src/lib/components/node-context-menu.js +558 -0
  168. package/src/lib/components/node-context-menu.js.map +1 -0
  169. package/src/lib/components/node-leaf.d.ts +39 -0
  170. package/src/lib/components/node-leaf.js +628 -0
  171. package/src/lib/components/node-leaf.js.map +1 -0
  172. package/src/lib/components/node-outline.d.ts +24 -0
  173. package/src/lib/components/node-outline.js +156 -0
  174. package/src/lib/components/node-outline.js.map +1 -0
  175. package/src/lib/components/node-overlay.d.ts +23 -0
  176. package/src/lib/components/node-overlay.js +299 -0
  177. package/src/lib/components/node-overlay.js.map +1 -0
  178. package/src/lib/components/node-quick-actions.d.ts +24 -0
  179. package/src/lib/components/node-quick-actions.js +284 -0
  180. package/src/lib/components/node-quick-actions.js.map +1 -0
  181. package/src/lib/components/node-tree-view.d.ts +106 -0
  182. package/src/lib/components/node-tree-view.js +820 -0
  183. package/src/lib/components/node-tree-view.js.map +1 -0
  184. package/src/lib/components/panel-controls.component.d.ts +22 -0
  185. package/src/lib/components/panel-controls.component.js +76 -0
  186. package/src/lib/components/panel-controls.component.js.map +1 -0
  187. package/src/lib/components/picker-search-field.d.ts +38 -0
  188. package/src/lib/components/picker-search-field.js +79 -0
  189. package/src/lib/components/picker-search-field.js.map +1 -0
  190. package/src/lib/components/plugin-settings-field.component.d.ts +38 -0
  191. package/src/lib/components/plugin-settings-field.component.js +264 -0
  192. package/src/lib/components/plugin-settings-field.component.js.map +1 -0
  193. package/src/lib/components/properties-dialog.component.d.ts +22 -0
  194. package/src/lib/components/properties-dialog.component.js +40 -0
  195. package/src/lib/components/properties-dialog.component.js.map +1 -0
  196. package/src/lib/components/property-binding-field.component.d.ts +142 -0
  197. package/src/lib/components/property-binding-field.component.js +325 -0
  198. package/src/lib/components/property-binding-field.component.js.map +1 -0
  199. package/src/lib/components/property-values-form.component.d.ts +43 -0
  200. package/src/lib/components/property-values-form.component.js +223 -0
  201. package/src/lib/components/property-values-form.component.js.map +1 -0
  202. package/src/lib/components/scheme-preview-controls.component.d.ts +26 -0
  203. package/src/lib/components/scheme-preview-controls.component.js +56 -0
  204. package/src/lib/components/scheme-preview-controls.component.js.map +1 -0
  205. package/src/lib/components/screen-link-field.component.d.ts +118 -0
  206. package/src/lib/components/screen-link-field.component.js +282 -0
  207. package/src/lib/components/screen-link-field.component.js.map +1 -0
  208. package/src/lib/components/site-theme-color-tokens-provider.component.d.ts +33 -0
  209. package/src/lib/components/site-theme-color-tokens-provider.component.js +53 -0
  210. package/src/lib/components/site-theme-color-tokens-provider.component.js.map +1 -0
  211. package/src/lib/components/subtree-json-dialog.component.d.ts +46 -0
  212. package/src/lib/components/subtree-json-dialog.component.js +125 -0
  213. package/src/lib/components/subtree-json-dialog.component.js.map +1 -0
  214. package/src/lib/components/token-pill.component.d.ts +51 -0
  215. package/src/lib/components/token-pill.component.js +164 -0
  216. package/src/lib/components/token-pill.component.js.map +1 -0
  217. package/src/lib/components/token-text-field.component.d.ts +146 -0
  218. package/src/lib/components/token-text-field.component.js +603 -0
  219. package/src/lib/components/token-text-field.component.js.map +1 -0
  220. package/src/lib/components/tree/tree-list.d.ts +6 -0
  221. package/src/lib/components/tree/tree-list.js +108 -0
  222. package/src/lib/components/tree/tree-list.js.map +1 -0
  223. package/src/lib/components/viewport-canvas.component.d.ts +23 -0
  224. package/src/lib/components/viewport-canvas.component.js +128 -0
  225. package/src/lib/components/viewport-canvas.component.js.map +1 -0
  226. package/src/lib/components/viewport-frame.component.d.ts +47 -0
  227. package/src/lib/components/viewport-frame.component.js +332 -0
  228. package/src/lib/components/viewport-frame.component.js.map +1 -0
  229. package/src/lib/components/viewport-root.component.d.ts +22 -0
  230. package/src/lib/components/viewport-root.component.js +112 -0
  231. package/src/lib/components/viewport-root.component.js.map +1 -0
  232. package/src/lib/components/viewport-zoom-controls.d.ts +29 -0
  233. package/src/lib/components/viewport-zoom-controls.js +147 -0
  234. package/src/lib/components/viewport-zoom-controls.js.map +1 -0
  235. package/src/lib/components/workspace-editor.component.d.ts +23 -0
  236. package/src/lib/components/workspace-editor.component.js +191 -0
  237. package/src/lib/components/workspace-editor.component.js.map +1 -0
  238. package/src/lib/components/workspace-panel.component.d.ts +28 -0
  239. package/src/lib/components/workspace-panel.component.js +147 -0
  240. package/src/lib/components/workspace-panel.component.js.map +1 -0
  241. package/src/lib/constants/sample-data.d.ts +18 -0
  242. package/src/lib/constants/sample-data.js +106 -0
  243. package/src/lib/constants/sample-data.js.map +1 -0
  244. package/src/lib/constants/shared.d.ts +17 -0
  245. package/src/lib/constants/shared.js +18 -0
  246. package/src/lib/constants/shared.js.map +1 -0
  247. package/src/lib/contexts/besigner-app-context.d.ts +30 -0
  248. package/src/lib/contexts/besigner-app-context.js +41 -0
  249. package/src/lib/contexts/besigner-app-context.js.map +1 -0
  250. package/src/lib/contexts/binding-picker-context.d.ts +78 -0
  251. package/src/lib/contexts/binding-picker-context.js +21 -0
  252. package/src/lib/contexts/binding-picker-context.js.map +1 -0
  253. package/src/lib/contexts/canvas-host-tokens-context.d.ts +49 -0
  254. package/src/lib/contexts/canvas-host-tokens-context.js +63 -0
  255. package/src/lib/contexts/canvas-host-tokens-context.js.map +1 -0
  256. package/src/lib/contexts/canvas-reveal-context.d.ts +32 -0
  257. package/src/lib/contexts/canvas-reveal-context.js +34 -0
  258. package/src/lib/contexts/canvas-reveal-context.js.map +1 -0
  259. package/src/lib/contexts/component-promotion-context.d.ts +89 -0
  260. package/src/lib/contexts/component-promotion-context.js +21 -0
  261. package/src/lib/contexts/component-promotion-context.js.map +1 -0
  262. package/src/lib/contexts/components-drawer-context.provider.d.ts +32 -0
  263. package/src/lib/contexts/components-drawer-context.provider.js +80 -0
  264. package/src/lib/contexts/components-drawer-context.provider.js.map +1 -0
  265. package/src/lib/contexts/element-drawer-context.d.ts +1005 -0
  266. package/src/lib/contexts/element-drawer-context.js +45 -0
  267. package/src/lib/contexts/element-drawer-context.js.map +1 -0
  268. package/src/lib/contexts/inspected-selection.d.ts +32 -0
  269. package/src/lib/contexts/inspected-selection.js +38 -0
  270. package/src/lib/contexts/inspected-selection.js.map +1 -0
  271. package/src/lib/contexts/inspector-extras-context.d.ts +56 -0
  272. package/src/lib/contexts/inspector-extras-context.js +35 -0
  273. package/src/lib/contexts/inspector-extras-context.js.map +1 -0
  274. package/src/lib/contexts/interactions-context.d.ts +99 -0
  275. package/src/lib/contexts/interactions-context.js +22 -0
  276. package/src/lib/contexts/interactions-context.js.map +1 -0
  277. package/src/lib/contexts/layout-chrome-context.d.ts +37 -0
  278. package/src/lib/contexts/layout-chrome-context.js +75 -0
  279. package/src/lib/contexts/layout-chrome-context.js.map +1 -0
  280. package/src/lib/contexts/media-asset-facts-context.d.ts +74 -0
  281. package/src/lib/contexts/media-asset-facts-context.js +27 -0
  282. package/src/lib/contexts/media-asset-facts-context.js.map +1 -0
  283. package/src/lib/contexts/media-picker-context.d.ts +88 -0
  284. package/src/lib/contexts/media-picker-context.js +21 -0
  285. package/src/lib/contexts/media-picker-context.js.map +1 -0
  286. package/src/lib/contexts/rendered-canvas-elements.d.ts +42 -0
  287. package/src/lib/contexts/rendered-canvas-elements.js +79 -0
  288. package/src/lib/contexts/rendered-canvas-elements.js.map +1 -0
  289. package/src/lib/contexts/repeat-record-context.d.ts +38 -0
  290. package/src/lib/contexts/repeat-record-context.js +21 -0
  291. package/src/lib/contexts/repeat-record-context.js.map +1 -0
  292. package/src/lib/contexts/repeat-rows-context.d.ts +53 -0
  293. package/src/lib/contexts/repeat-rows-context.js +38 -0
  294. package/src/lib/contexts/repeat-rows-context.js.map +1 -0
  295. package/src/lib/contexts/toolbar-extras-context.d.ts +31 -0
  296. package/src/lib/contexts/toolbar-extras-context.js +33 -0
  297. package/src/lib/contexts/toolbar-extras-context.js.map +1 -0
  298. package/src/lib/drafts/besigner-draft-store.d.ts +110 -0
  299. package/src/lib/drafts/besigner-draft-store.js +125 -0
  300. package/src/lib/drafts/besigner-draft-store.js.map +1 -0
  301. package/src/lib/drafts/besigner-server-draft.d.ts +130 -0
  302. package/src/lib/drafts/besigner-server-draft.js +211 -0
  303. package/src/lib/drafts/besigner-server-draft.js.map +1 -0
  304. package/src/lib/form-fields/components/shared/inline-form-control.d.ts +32 -0
  305. package/src/lib/form-fields/components/shared/inline-form-control.js +85 -0
  306. package/src/lib/form-fields/components/shared/inline-form-control.js.map +1 -0
  307. package/src/lib/form-fields/components/shared/toggle-button-form-control.d.ts +33 -0
  308. package/src/lib/form-fields/components/shared/toggle-button-form-control.js +83 -0
  309. package/src/lib/form-fields/components/shared/toggle-button-form-control.js.map +1 -0
  310. package/src/lib/form-fields/form-fields.d.ts +20 -0
  311. package/src/lib/form-fields/form-fields.js +21 -0
  312. package/src/lib/form-fields/form-fields.js.map +1 -0
  313. package/src/lib/form-fields/index.d.ts +1 -0
  314. package/src/lib/form-fields/index.js +3 -0
  315. package/src/lib/form-fields/index.js.map +1 -0
  316. package/src/lib/hooks/use-add-element-drawer-callback.d.ts +28 -0
  317. package/src/lib/hooks/use-add-element-drawer-callback.js +112 -0
  318. package/src/lib/hooks/use-add-element-drawer-callback.js.map +1 -0
  319. package/src/lib/hooks/use-aglyn-besigner-flag.d.ts +23 -0
  320. package/src/lib/hooks/use-aglyn-besigner-flag.js +47 -0
  321. package/src/lib/hooks/use-aglyn-besigner-flag.js.map +1 -0
  322. package/src/lib/hooks/use-aglyn-besigner-panel-value.d.ts +23 -0
  323. package/src/lib/hooks/use-aglyn-besigner-panel-value.js +54 -0
  324. package/src/lib/hooks/use-aglyn-besigner-panel-value.js.map +1 -0
  325. package/src/lib/hooks/use-aglyn-besigner-panel.d.ts +23 -0
  326. package/src/lib/hooks/use-aglyn-besigner-panel.js +47 -0
  327. package/src/lib/hooks/use-aglyn-besigner-panel.js.map +1 -0
  328. package/src/lib/hooks/use-anchored-rect.d.ts +68 -0
  329. package/src/lib/hooks/use-anchored-rect.js +131 -0
  330. package/src/lib/hooks/use-anchored-rect.js.map +1 -0
  331. package/src/lib/hooks/use-besigner-app-context.d.ts +18 -0
  332. package/src/lib/hooks/use-besigner-app-context.js +19 -0
  333. package/src/lib/hooks/use-besigner-app-context.js.map +1 -0
  334. package/src/lib/hooks/use-besigner-document.d.ts +309 -0
  335. package/src/lib/hooks/use-besigner-document.js +500 -0
  336. package/src/lib/hooks/use-besigner-document.js.map +1 -0
  337. package/src/lib/hooks/use-besigner-draft.d.ts +209 -0
  338. package/src/lib/hooks/use-besigner-draft.js +429 -0
  339. package/src/lib/hooks/use-besigner-draft.js.map +1 -0
  340. package/src/lib/hooks/use-clipboard-callbacks.d.ts +29 -0
  341. package/src/lib/hooks/use-clipboard-callbacks.js +82 -0
  342. package/src/lib/hooks/use-clipboard-callbacks.js.map +1 -0
  343. package/src/lib/hooks/use-clipboard-shortcuts.d.ts +52 -0
  344. package/src/lib/hooks/use-clipboard-shortcuts.js +102 -0
  345. package/src/lib/hooks/use-clipboard-shortcuts.js.map +1 -0
  346. package/src/lib/hooks/use-component-propagation-notice.d.ts +96 -0
  347. package/src/lib/hooks/use-component-propagation-notice.js +177 -0
  348. package/src/lib/hooks/use-component-propagation-notice.js.map +1 -0
  349. package/src/lib/hooks/use-debounced-commit.d.ts +43 -0
  350. package/src/lib/hooks/use-debounced-commit.js +88 -0
  351. package/src/lib/hooks/use-debounced-commit.js.map +1 -0
  352. package/src/lib/hooks/use-delete-element-callback.d.ts +24 -0
  353. package/src/lib/hooks/use-delete-element-callback.js +82 -0
  354. package/src/lib/hooks/use-delete-element-callback.js.map +1 -0
  355. package/src/lib/hooks/use-detail-hover-intent.d.ts +76 -0
  356. package/src/lib/hooks/use-detail-hover-intent.js +123 -0
  357. package/src/lib/hooks/use-detail-hover-intent.js.map +1 -0
  358. package/src/lib/hooks/use-document-repair-callbacks.d.ts +50 -0
  359. package/src/lib/hooks/use-document-repair-callbacks.js +237 -0
  360. package/src/lib/hooks/use-document-repair-callbacks.js.map +1 -0
  361. package/src/lib/hooks/use-insert-token-options.d.ts +52 -0
  362. package/src/lib/hooks/use-insert-token-options.js +230 -0
  363. package/src/lib/hooks/use-insert-token-options.js.map +1 -0
  364. package/src/lib/hooks/use-leaf-drag.d.ts +24 -0
  365. package/src/lib/hooks/use-leaf-drag.js +28 -0
  366. package/src/lib/hooks/use-leaf-drag.js.map +1 -0
  367. package/src/lib/hooks/use-leaf-drop.d.ts +31 -0
  368. package/src/lib/hooks/use-leaf-drop.js +43 -0
  369. package/src/lib/hooks/use-leaf-drop.js.map +1 -0
  370. package/src/lib/hooks/use-markdown-media-picker.d.ts +63 -0
  371. package/src/lib/hooks/use-markdown-media-picker.js +110 -0
  372. package/src/lib/hooks/use-markdown-media-picker.js.map +1 -0
  373. package/src/lib/hooks/use-media-asset-facts-overlay.d.ts +43 -0
  374. package/src/lib/hooks/use-media-asset-facts-overlay.js +133 -0
  375. package/src/lib/hooks/use-media-asset-facts-overlay.js.map +1 -0
  376. package/src/lib/hooks/use-move-node-callbacks.d.ts +22 -0
  377. package/src/lib/hooks/use-move-node-callbacks.js +57 -0
  378. package/src/lib/hooks/use-move-node-callbacks.js.map +1 -0
  379. package/src/lib/hooks/use-node-with-host-tokens.d.ts +42 -0
  380. package/src/lib/hooks/use-node-with-host-tokens.js +59 -0
  381. package/src/lib/hooks/use-node-with-host-tokens.js.map +1 -0
  382. package/src/lib/hooks/use-picker-filter.d.ts +61 -0
  383. package/src/lib/hooks/use-picker-filter.js +122 -0
  384. package/src/lib/hooks/use-picker-filter.js.map +1 -0
  385. package/src/lib/hooks/use-repeat-preview.d.ts +64 -0
  386. package/src/lib/hooks/use-repeat-preview.js +214 -0
  387. package/src/lib/hooks/use-repeat-preview.js.map +1 -0
  388. package/src/lib/hooks/use-repeat-sources.d.ts +17 -0
  389. package/src/lib/hooks/use-repeat-sources.js +41 -0
  390. package/src/lib/hooks/use-repeat-sources.js.map +1 -0
  391. package/src/lib/hooks/use-visible-component-categories.d.ts +37 -0
  392. package/src/lib/hooks/use-visible-component-categories.js +79 -0
  393. package/src/lib/hooks/use-visible-component-categories.js.map +1 -0
  394. package/src/lib/utils/active-host-theme.d.ts +28 -0
  395. package/src/lib/utils/active-host-theme.js +77 -0
  396. package/src/lib/utils/active-host-theme.js.map +1 -0
  397. package/src/lib/utils/attr-target.d.ts +170 -0
  398. package/src/lib/utils/attr-target.js +229 -0
  399. package/src/lib/utils/attr-target.js.map +1 -0
  400. package/src/lib/utils/attribute-field-value.d.ts +21 -0
  401. package/src/lib/utils/attribute-field-value.js +28 -0
  402. package/src/lib/utils/attribute-field-value.js.map +1 -0
  403. package/src/lib/utils/canvas-context-menu.d.ts +28 -0
  404. package/src/lib/utils/canvas-context-menu.js +56 -0
  405. package/src/lib/utils/canvas-context-menu.js.map +1 -0
  406. package/src/lib/utils/canvas-reveal.d.ts +115 -0
  407. package/src/lib/utils/canvas-reveal.js +165 -0
  408. package/src/lib/utils/canvas-reveal.js.map +1 -0
  409. package/src/lib/utils/describe-element.d.ts +72 -0
  410. package/src/lib/utils/describe-element.js +159 -0
  411. package/src/lib/utils/describe-element.js.map +1 -0
  412. package/src/lib/utils/device-preview-styles.d.ts +89 -0
  413. package/src/lib/utils/device-preview-styles.js +228 -0
  414. package/src/lib/utils/device-preview-styles.js.map +1 -0
  415. package/src/lib/utils/docs-help.d.ts +22 -0
  416. package/src/lib/utils/docs-help.generated.d.ts +47 -0
  417. package/src/lib/utils/docs-help.generated.js +229 -0
  418. package/src/lib/utils/docs-help.generated.js.map +1 -0
  419. package/src/lib/utils/docs-help.js +37 -0
  420. package/src/lib/utils/docs-help.js.map +1 -0
  421. package/src/lib/utils/held-answers-store.d.ts +59 -0
  422. package/src/lib/utils/held-answers-store.js +94 -0
  423. package/src/lib/utils/held-answers-store.js.map +1 -0
  424. package/src/lib/utils/in-place-edit-surface.d.ts +118 -0
  425. package/src/lib/utils/in-place-edit-surface.js +164 -0
  426. package/src/lib/utils/in-place-edit-surface.js.map +1 -0
  427. package/src/lib/utils/inline-markdown-edit.store.d.ts +71 -0
  428. package/src/lib/utils/inline-markdown-edit.store.js +90 -0
  429. package/src/lib/utils/inline-markdown-edit.store.js.map +1 -0
  430. package/src/lib/utils/inline-text-edit.store.d.ts +85 -0
  431. package/src/lib/utils/inline-text-edit.store.js +78 -0
  432. package/src/lib/utils/inline-text-edit.store.js.map +1 -0
  433. package/src/lib/utils/instance-leaf-hit.d.ts +39 -0
  434. package/src/lib/utils/instance-leaf-hit.js +56 -0
  435. package/src/lib/utils/instance-leaf-hit.js.map +1 -0
  436. package/src/lib/utils/muted-classes.d.ts +76 -0
  437. package/src/lib/utils/muted-classes.js +108 -0
  438. package/src/lib/utils/muted-classes.js.map +1 -0
  439. package/src/lib/utils/muted-styles.d.ts +125 -0
  440. package/src/lib/utils/muted-styles.js +193 -0
  441. package/src/lib/utils/muted-styles.js.map +1 -0
  442. package/src/lib/utils/numeric-text-value.d.ts +42 -0
  443. package/src/lib/utils/numeric-text-value.js +47 -0
  444. package/src/lib/utils/numeric-text-value.js.map +1 -0
  445. package/src/lib/utils/preset-interactions.d.ts +37 -0
  446. package/src/lib/utils/preset-interactions.js +87 -0
  447. package/src/lib/utils/preset-interactions.js.map +1 -0
  448. package/src/lib/utils/publish-failure-message.d.ts +35 -0
  449. package/src/lib/utils/publish-failure-message.js +51 -0
  450. package/src/lib/utils/publish-failure-message.js.map +1 -0
  451. package/src/lib/utils/rank-picker-results.d.ts +45 -0
  452. package/src/lib/utils/rank-picker-results.js +136 -0
  453. package/src/lib/utils/rank-picker-results.js.map +1 -0
  454. package/src/lib/utils/responsive-sx.d.ts +65 -0
  455. package/src/lib/utils/responsive-sx.js +129 -0
  456. package/src/lib/utils/responsive-sx.js.map +1 -0
  457. package/src/lib/utils/rich-text-commands.d.ts +28 -0
  458. package/src/lib/utils/rich-text-commands.js +43 -0
  459. package/src/lib/utils/rich-text-commands.js.map +1 -0
  460. package/src/lib/utils/sanitize-rich-text.d.ts +52 -0
  461. package/src/lib/utils/sanitize-rich-text.js +173 -0
  462. package/src/lib/utils/sanitize-rich-text.js.map +1 -0
  463. package/src/lib/utils/state-sx.d.ts +255 -0
  464. package/src/lib/utils/state-sx.js +338 -0
  465. package/src/lib/utils/state-sx.js.map +1 -0
  466. package/src/lib/utils/style-field-groups.d.ts +136 -0
  467. package/src/lib/utils/style-field-groups.js +874 -0
  468. package/src/lib/utils/style-field-groups.js.map +1 -0
  469. package/src/lib/utils/style-field-search.d.ts +84 -0
  470. package/src/lib/utils/style-field-search.js +505 -0
  471. package/src/lib/utils/style-field-search.js.map +1 -0
  472. package/src/lib/utils/style-target.d.ts +69 -0
  473. package/src/lib/utils/style-target.js +203 -0
  474. package/src/lib/utils/style-target.js.map +1 -0
  475. package/src/lib/utils/theme-scale-options.d.ts +169 -0
  476. package/src/lib/utils/theme-scale-options.js +702 -0
  477. package/src/lib/utils/theme-scale-options.js.map +1 -0
  478. package/src/lib/utils/token-editable-dom.d.ts +82 -0
  479. package/src/lib/utils/token-editable-dom.js +280 -0
  480. package/src/lib/utils/token-editable-dom.js.map +1 -0
  481. package/src/lib/utils/token-segments.d.ts +111 -0
  482. package/src/lib/utils/token-segments.js +246 -0
  483. package/src/lib/utils/token-segments.js.map +1 -0
  484. package/src/lib/utils/visibility-styles.d.ts +38 -0
  485. package/src/lib/utils/visibility-styles.js +54 -0
  486. package/src/lib/utils/visibility-styles.js.map +1 -0
@@ -0,0 +1,21 @@
1
+ import type * as Aglyn from '@aglyn/aglyn';
2
+ export interface ElementInteractionsFormProps {
3
+ node: Aglyn.NodeSchema<any>;
4
+ }
5
+ /**
6
+ * Interactions on the selected element, as its own panel tab.
7
+ *
8
+ * They used to sit at the bottom of Attributes, under every field the
9
+ * component declares — so on anything with more than a handful of attributes
10
+ * they were below the fold, and an author had no reason to believe the
11
+ * element had any. An interaction is not an attribute: it is a behaviour, it
12
+ * is authored in a dialog rather than a field, and it now lives with the
13
+ * canvas states and styles as a peer.
14
+ *
15
+ * The list, the trigger picker and the section experiment move verbatim; what
16
+ * changes is where they are.
17
+ */
18
+ export declare const ElementInteractionsForm: ((props: ElementInteractionsFormProps) => import("react").JSX.Element) & {
19
+ displayName: string;
20
+ };
21
+ export default ElementInteractionsForm;
@@ -0,0 +1,199 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Aglyn LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */ 'use client';
17
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
18
+ import { HelpTip } from "@aglyn/shared-ui-jsx";
19
+ import { Button, FormControl, IconButton, MenuItem as MuiMenuItem, Stack, Switch, TextField, Typography } from "@mui/material";
20
+ import { observer } from "mobx-react-lite";
21
+ import { useContext } from "react";
22
+ import { InteractionsContext, nodeElementSelector } from "../contexts/interactions-context.js";
23
+ import { besignerDocsUrl } from "../utils/docs-help.js";
24
+ /**
25
+ * Interactions on the selected element, as its own panel tab.
26
+ *
27
+ * They used to sit at the bottom of Attributes, under every field the
28
+ * component declares — so on anything with more than a handful of attributes
29
+ * they were below the fold, and an author had no reason to believe the
30
+ * element had any. An interaction is not an attribute: it is a behaviour, it
31
+ * is authored in a dialog rather than a field, and it now lives with the
32
+ * canvas states and styles as a peer.
33
+ *
34
+ * The list, the trigger picker and the section experiment move verbatim; what
35
+ * changes is where they are.
36
+ */ export const ElementInteractionsForm = observer((props)=>{
37
+ var _interactions_automations, _interactions_sectionExperiments, _nodeExperiment_name, _nodeExperiment_status;
38
+ const { node } = props;
39
+ const interactions = useContext(InteractionsContext);
40
+ const nodeSelector = (node == null ? void 0 : node.$id) ? nodeElementSelector(node.$id) : '';
41
+ const nodeAutomations = ((_interactions_automations = interactions.automations) != null ? _interactions_automations : []).filter((automation)=>automation.selector === nodeSelector);
42
+ const nodeExperiment = ((_interactions_sectionExperiments = interactions.sectionExperiments) != null ? _interactions_sectionExperiments : []).find((experiment)=>experiment.nodeId === (node == null ? void 0 : node.$id));
43
+ if (!interactions.onCreateInteraction || !(node == null ? void 0 : node.$id)) {
44
+ return /*#__PURE__*/ _jsx(Typography, {
45
+ variant: "body2",
46
+ color: "text.secondary",
47
+ sx: {
48
+ p: 2
49
+ },
50
+ children: 'Interactions are not available on this kind of document.'
51
+ });
52
+ }
53
+ return /*#__PURE__*/ _jsx(Stack, {
54
+ sx: {
55
+ p: 2
56
+ },
57
+ children: /*#__PURE__*/ _jsxs(FormControl, {
58
+ margin: "none",
59
+ fullWidth: true,
60
+ children: [
61
+ /*#__PURE__*/ _jsxs(Typography, {
62
+ variant: "overline",
63
+ color: "text.secondary",
64
+ sx: {
65
+ mt: 2
66
+ },
67
+ children: [
68
+ 'Interactions',
69
+ /*#__PURE__*/ _jsx(HelpTip, {
70
+ title: "Interactions",
71
+ excerpt: "Run an action when this element is clicked, hovered, or scrolled into view. Targets are picked by clicking them on the canvas.",
72
+ href: besignerDocsUrl('interactions', '#fluent-interactions'),
73
+ sx: {
74
+ ml: 0.25,
75
+ fontSize: '0.9em'
76
+ }
77
+ })
78
+ ]
79
+ }),
80
+ nodeAutomations.map((automation)=>{
81
+ var _automation_name;
82
+ return /*#__PURE__*/ _jsxs(Stack, {
83
+ direction: "row",
84
+ spacing: 1,
85
+ sx: {
86
+ alignItems: 'center',
87
+ mb: 0.5
88
+ },
89
+ children: [
90
+ /*#__PURE__*/ _jsx(Typography, {
91
+ variant: "body2",
92
+ noWrap: true,
93
+ sx: {
94
+ flex: 1
95
+ },
96
+ children: (_automation_name = automation.name) != null ? _automation_name : automation.id
97
+ }),
98
+ /*#__PURE__*/ _jsx(Typography, {
99
+ variant: "caption",
100
+ color: "text.secondary",
101
+ children: automation.event
102
+ }),
103
+ interactions.onToggleInteraction ? /*#__PURE__*/ _jsx(Switch, {
104
+ size: "small",
105
+ checked: automation.enabled !== false,
106
+ onChange: (event)=>interactions.onToggleInteraction == null ? void 0 : interactions.onToggleInteraction.call(interactions, {
107
+ id: automation.id,
108
+ enabled: event.target.checked
109
+ }),
110
+ slotProps: {
111
+ input: {
112
+ 'aria-label': 'Interaction enabled'
113
+ }
114
+ }
115
+ }) : automation.enabled === false ? /*#__PURE__*/ _jsx(Typography, {
116
+ variant: "caption",
117
+ color: "text.secondary",
118
+ children: 'off'
119
+ }) : null,
120
+ interactions.onEditInteraction && (node == null ? void 0 : node.$id) ? /*#__PURE__*/ _jsx(IconButton, {
121
+ size: "small",
122
+ "aria-label": "Edit interaction",
123
+ onClick: ()=>interactions.onEditInteraction == null ? void 0 : interactions.onEditInteraction.call(interactions, {
124
+ id: automation.id,
125
+ nodeId: node.$id
126
+ }),
127
+ children: '✎'
128
+ }) : null,
129
+ interactions.onDeleteInteraction ? /*#__PURE__*/ _jsx(IconButton, {
130
+ size: "small",
131
+ "aria-label": "Remove interaction",
132
+ onClick: ()=>interactions.onDeleteInteraction == null ? void 0 : interactions.onDeleteInteraction.call(interactions, {
133
+ id: automation.id
134
+ }),
135
+ children: '✕'
136
+ }) : null
137
+ ]
138
+ }, automation.id);
139
+ }),
140
+ /*#__PURE__*/ _jsxs(TextField, {
141
+ select: true,
142
+ size: "small",
143
+ label: "Add interaction",
144
+ value: "",
145
+ onChange: (event)=>{
146
+ const trigger = event.target.value;
147
+ if (trigger && (node == null ? void 0 : node.$id)) {
148
+ interactions.onCreateInteraction == null ? void 0 : interactions.onCreateInteraction.call(interactions, {
149
+ nodeId: node.$id,
150
+ event: trigger
151
+ });
152
+ }
153
+ },
154
+ children: [
155
+ /*#__PURE__*/ _jsx(MuiMenuItem, {
156
+ value: "elementClick",
157
+ children: 'When clicked…'
158
+ }),
159
+ /*#__PURE__*/ _jsx(MuiMenuItem, {
160
+ value: "elementHoverEnter",
161
+ children: 'When hovered…'
162
+ }),
163
+ /*#__PURE__*/ _jsx(MuiMenuItem, {
164
+ value: "elementHoverLeave",
165
+ children: 'When hover ends…'
166
+ }),
167
+ /*#__PURE__*/ _jsx(MuiMenuItem, {
168
+ value: "elementVisible",
169
+ children: 'When scrolled into view…'
170
+ })
171
+ ]
172
+ }),
173
+ interactions.onCreateSectionExperiment ? nodeExperiment ? /*#__PURE__*/ _jsx(Typography, {
174
+ variant: "caption",
175
+ color: "primary",
176
+ sx: {
177
+ mt: 1
178
+ },
179
+ children: `A/B test: ${(_nodeExperiment_name = nodeExperiment.name) != null ? _nodeExperiment_name : nodeExperiment.id}` + ` (${(_nodeExperiment_status = nodeExperiment.status) != null ? _nodeExperiment_status : 'draft'})`
180
+ }) : /*#__PURE__*/ _jsx(Button, {
181
+ color: "primary",
182
+ size: "small",
183
+ sx: {
184
+ mt: 1,
185
+ alignSelf: 'flex-start'
186
+ },
187
+ onClick: ()=>(node == null ? void 0 : node.$id) && (interactions.onCreateSectionExperiment == null ? void 0 : interactions.onCreateSectionExperiment.call(interactions, {
188
+ nodeId: node.$id
189
+ })),
190
+ children: 'A/B test this section'
191
+ }) : null
192
+ ]
193
+ })
194
+ });
195
+ });
196
+ ElementInteractionsForm.displayName = 'ElementInteractionsForm';
197
+ export default ElementInteractionsForm;
198
+
199
+ //# sourceMappingURL=element-interactions-form.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../libs/besigner/feature/designer/src/lib/components/element-interactions-form.component.tsx"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n'use client'\n\nimport type * as Aglyn from '@aglyn/aglyn'\nimport { HelpTip } from '@aglyn/shared-ui-jsx'\nimport {\n Button,\n FormControl,\n IconButton,\n MenuItem as MuiMenuItem,\n Stack,\n Switch,\n TextField,\n Typography,\n} from '@mui/material'\nimport { observer } from 'mobx-react-lite'\nimport { useContext } from 'react'\nimport {\n InteractionsContext,\n nodeElementSelector,\n type InteractionTriggerEvent,\n} from '../contexts/interactions-context'\nimport { besignerDocsUrl } from '../utils/docs-help'\n\nexport interface ElementInteractionsFormProps {\n node: Aglyn.NodeSchema<any>\n}\n\n/**\n * Interactions on the selected element, as its own panel tab.\n *\n * They used to sit at the bottom of Attributes, under every field the\n * component declares — so on anything with more than a handful of attributes\n * they were below the fold, and an author had no reason to believe the\n * element had any. An interaction is not an attribute: it is a behaviour, it\n * is authored in a dialog rather than a field, and it now lives with the\n * canvas states and styles as a peer.\n *\n * The list, the trigger picker and the section experiment move verbatim; what\n * changes is where they are.\n */\nexport const ElementInteractionsForm = observer(\n (props: ElementInteractionsFormProps) => {\n const { node } = props\n const interactions = useContext(InteractionsContext)\n const nodeSelector = node?.$id ? nodeElementSelector(node.$id) : ''\n const nodeAutomations = (interactions.automations ?? []).filter(\n (automation) => automation.selector === nodeSelector,\n )\n const nodeExperiment = (interactions.sectionExperiments ?? []).find(\n (experiment) => experiment.nodeId === node?.$id,\n )\n if (!interactions.onCreateInteraction || !node?.$id) {\n return (\n <Typography variant=\"body2\" color=\"text.secondary\" sx={{ p: 2 }}>\n {'Interactions are not available on this kind of document.'}\n </Typography>\n )\n }\n return (\n <Stack sx={{ p: 2 }}>\n <FormControl margin=\"none\" fullWidth>\n {/* Interactions (AGL-258): automations bound to this\n element's stable data-aglyn selector. */}\n <Typography\n variant=\"overline\"\n color=\"text.secondary\"\n sx={{ mt: 2 }}\n >\n {'Interactions'}\n {/* AGL-2167 — the trigger list says when, and\n nothing here says what an interaction can then\n do, or that the target is picked by clicking. */}\n <HelpTip\n title=\"Interactions\"\n excerpt=\"Run an action when this element is clicked, hovered, or scrolled into view. Targets are picked by clicking them on the canvas.\"\n href={besignerDocsUrl('interactions', '#fluent-interactions')}\n sx={{ ml: 0.25, fontSize: '0.9em' }}\n />\n </Typography>\n {nodeAutomations.map((automation) => (\n <Stack\n key={automation.id}\n direction=\"row\"\n spacing={1}\n sx={{ alignItems: 'center', mb: 0.5 }}\n >\n <Typography variant=\"body2\" noWrap sx={{ flex: 1 }}>\n {automation.name ?? automation.id}\n </Typography>\n <Typography variant=\"caption\" color=\"text.secondary\">\n {automation.event}\n </Typography>\n {/* Manage in place (wave v7): toggle + remove\n without leaving the canvas. */}\n {interactions.onToggleInteraction ? (\n <Switch\n size=\"small\"\n checked={automation.enabled !== false}\n onChange={(event) =>\n interactions.onToggleInteraction?.({\n id: automation.id,\n enabled: event.target.checked,\n })\n }\n slotProps={{\n input: { 'aria-label': 'Interaction enabled' },\n }}\n />\n ) : automation.enabled === false ? (\n <Typography\n variant=\"caption\"\n color=\"text.secondary\"\n >\n {'off'}\n </Typography>\n ) : null}\n {/* Fluent builder (AGL-319): edit reopens the\n inline dialog — no Automation detour. */}\n {interactions.onEditInteraction && node?.$id ? (\n <IconButton\n size=\"small\"\n aria-label=\"Edit interaction\"\n onClick={() =>\n interactions.onEditInteraction?.({\n id: automation.id,\n nodeId: node.$id as string,\n })\n }\n >\n {'✎'}\n </IconButton>\n ) : null}\n {interactions.onDeleteInteraction ? (\n <IconButton\n size=\"small\"\n aria-label=\"Remove interaction\"\n onClick={() =>\n interactions.onDeleteInteraction?.({\n id: automation.id,\n })\n }\n >\n {'✕'}\n </IconButton>\n ) : null}\n </Stack>\n ))}\n <TextField\n select\n size=\"small\"\n label=\"Add interaction\"\n value=\"\"\n onChange={(event) => {\n const trigger = event.target\n .value as InteractionTriggerEvent\n if (trigger && node?.$id) {\n interactions.onCreateInteraction?.({\n nodeId: node.$id,\n event: trigger,\n })\n }\n }}\n >\n <MuiMenuItem value=\"elementClick\">\n {'When clicked…'}\n </MuiMenuItem>\n {/* Hover choreography (AGL-562). */}\n <MuiMenuItem value=\"elementHoverEnter\">\n {'When hovered…'}\n </MuiMenuItem>\n <MuiMenuItem value=\"elementHoverLeave\">\n {'When hover ends…'}\n </MuiMenuItem>\n <MuiMenuItem value=\"elementVisible\">\n {'When scrolled into view…'}\n </MuiMenuItem>\n </TextField>\n {interactions.onCreateSectionExperiment ? (\n nodeExperiment ? (\n <Typography\n variant=\"caption\"\n color=\"primary\"\n sx={{ mt: 1 }}\n >\n {`A/B test: ${nodeExperiment.name ?? nodeExperiment.id}` +\n ` (${nodeExperiment.status ?? 'draft'})`}\n </Typography>\n ) : (\n <Button\n color=\"primary\"\n size=\"small\"\n sx={{ mt: 1, alignSelf: 'flex-start' }}\n onClick={() =>\n node?.$id &&\n interactions.onCreateSectionExperiment?.({\n nodeId: node.$id,\n })\n }\n >\n {'A/B test this section'}\n </Button>\n )\n ) : null}\n </FormControl>\n </Stack>\n )\n },\n)\nElementInteractionsForm.displayName = 'ElementInteractionsForm'\n\nexport default ElementInteractionsForm\n"],"names":["HelpTip","Button","FormControl","IconButton","MenuItem","MuiMenuItem","Stack","Switch","TextField","Typography","observer","useContext","InteractionsContext","nodeElementSelector","besignerDocsUrl","ElementInteractionsForm","props","interactions","nodeExperiment","node","nodeSelector","$id","nodeAutomations","automations","filter","automation","selector","sectionExperiments","find","experiment","nodeId","onCreateInteraction","variant","color","sx","p","margin","fullWidth","mt","title","excerpt","href","ml","fontSize","map","direction","spacing","alignItems","mb","noWrap","flex","name","id","event","onToggleInteraction","size","checked","enabled","onChange","target","slotProps","input","onEditInteraction","aria-label","onClick","onDeleteInteraction","select","label","value","trigger","onCreateSectionExperiment","status","alignSelf","displayName"],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Aglyn LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ export interface ElementPreviewProps {
18
+ /** The picker item — a preset in both drawers. */
19
+ node: any;
20
+ /** Bounded height of the preview box in CSS pixels. */
21
+ height?: number;
22
+ /**
23
+ * Parents this element must sit inside, from the schema. An element that
24
+ * only renders in context frequently draws nothing on its own, and the
25
+ * note says which parent it is waiting for.
26
+ */
27
+ requiredParents?: string[];
28
+ }
29
+ /**
30
+ * Renders the preset's own nodes into an isolated stage, so a picker shows
31
+ * what an element LOOKS like and not only what it is called (AGL-2486).
32
+ *
33
+ * Three things this must never do, each of which is a real hazard rather than
34
+ * a hypothetical one:
35
+ *
36
+ * 1. **Touch `Aglyn.canvas`.** That singleton holds the document being
37
+ * edited; the console's Preview route calls `setNodes` on it, and doing
38
+ * the same here would blow away the user's screen to draw a thumbnail.
39
+ * Every preview gets its own `CanvasManager`, backed by the real app so
40
+ * component schemas still resolve — the pattern `useLayoutChromeCanvas`
41
+ * already uses for locked layout chrome.
42
+ * 2. **Mutate anything from inside.** The stage is inert: pointer events are
43
+ * off, the subtree is marked `inert` so nothing in it is focusable or
44
+ * clickable, links are told not to navigate, and `SiteContext.preview`
45
+ * turns every write into a synthetic 423.
46
+ * 3. **Escape its box.** The stage is scaled to fit and clipped, so a Footer
47
+ * cannot push Confirm off the dialog or stretch the docked column.
48
+ *
49
+ * Elements that cannot render standalone — a Cart, a Product grid, anything
50
+ * reading site data — are NOT special-cased here. Deliberately: they already
51
+ * render their own dashed "Cart — lines render here" placeholder when there
52
+ * is no `hostId`, and this preview does not supply one. That placeholder is
53
+ * the honest answer to "what will I get", and it means the picker needs no
54
+ * second list of which elements are self-contained: each element already
55
+ * says so itself.
56
+ */
57
+ export declare const ElementPreview: ((props: ElementPreviewProps) => import("react").JSX.Element) & {
58
+ displayName: string;
59
+ };
60
+ /**
61
+ * Whether the rendered preview drew anything a person can actually see.
62
+ *
63
+ * Text, or a media element. A preset with no child nodes composes a real but
64
+ * EMPTY element — `Toolbar Content` is a 64px transparent flex row — which
65
+ * renders correctly and looks identical to the bug where nothing rendered at
66
+ * all. Since one of those has already shipped here, the frame says which it
67
+ * is rather than leaving a blank box to be read as broken.
68
+ *
69
+ * Deliberately conservative and slightly imprecise: a lone Divider draws a
70
+ * 1px rule and is reported as nothing to show. At preview scale that is very
71
+ * nearly true, and the alternative — probing computed backgrounds and
72
+ * borders — guesses far more than it settles.
73
+ */
74
+ export declare function subtreeHasInk(host: HTMLElement | null): boolean;
75
+ export default ElementPreview;