@threadlabs/looma 0.5.0 → 0.5.2

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 (313) hide show
  1. package/README.md +1 -1
  2. package/components/shared/input-modality.d.ts +8 -0
  3. package/components/shared/input-modality.js +2 -0
  4. package/components/ui-button/ui-button.html +42 -1
  5. package/components/ui-combobox/ui-combobox.html +12 -4
  6. package/components/ui-dialog/ui-dialog.html +13 -0
  7. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +1 -1
  8. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +1 -1
  9. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +6 -2
  10. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +20 -4
  11. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +8 -4
  12. package/components/ui-form-field/ui-form-field.html +18 -7
  13. package/components/ui-icon/ui-icon.html +5 -1
  14. package/components/ui-icon-button/ui-icon-button.html +44 -1
  15. package/components/ui-popover/ui-popover.js +10 -2
  16. package/components/ui-search-shell/ui-search-shell.html +7 -0
  17. package/components/ui-search-shell/ui-search-shell.js +9 -0
  18. package/components/ui-tabs/ui-tabs.html +1 -1
  19. package/components/ui-toast-region/ui-toast-region.html +1 -1
  20. package/components/ui-tree-item/ui-tree-item.html +6 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.js +2 -2
  23. package/package.json +2 -2
  24. package/styles/ui-affordance-scope.css +1 -1
  25. package/styles/ui-avatar-group.css +1 -1
  26. package/styles/ui-avatar.css +1 -1
  27. package/styles/ui-badge.css +1 -1
  28. package/styles/ui-button.css +42 -2
  29. package/styles/ui-callout.css +1 -1
  30. package/styles/ui-checkbox.css +1 -1
  31. package/styles/ui-cluster.css +1 -1
  32. package/styles/ui-combobox.css +1 -1
  33. package/styles/ui-container.css +1 -1
  34. package/styles/ui-context-menu.css +1 -1
  35. package/styles/ui-dialog.css +18 -1
  36. package/styles/ui-disclosure.css +1 -1
  37. package/styles/ui-editable.css +1 -1
  38. package/styles/ui-editor-insert-table-grid.css +1 -1
  39. package/styles/ui-editor-mention-menu.css +1 -1
  40. package/styles/ui-editor-slash-menu.css +1 -1
  41. package/styles/ui-editor-table-context-menu.css +1 -1
  42. package/styles/ui-editor-table-overlay.css +1 -1
  43. package/styles/ui-editor-table-toolbar.css +1 -1
  44. package/styles/ui-editor-toolbar.css +1 -1
  45. package/styles/ui-floating-action-button.css +1 -1
  46. package/styles/ui-form-field.css +24 -10
  47. package/styles/ui-grid.css +1 -1
  48. package/styles/ui-icon-button.css +52 -2
  49. package/styles/ui-icon.css +1 -1
  50. package/styles/ui-input.css +1 -1
  51. package/styles/ui-menu-item.css +1 -1
  52. package/styles/ui-menu.css +1 -1
  53. package/styles/ui-popover.css +1 -1
  54. package/styles/ui-radio-group.css +1 -1
  55. package/styles/ui-radio.css +1 -1
  56. package/styles/ui-reel.css +1 -1
  57. package/styles/ui-search-result-row.css +1 -1
  58. package/styles/ui-search-shell.css +11 -2
  59. package/styles/ui-select.css +1 -1
  60. package/styles/ui-separator.css +1 -1
  61. package/styles/ui-sidebar.css +1 -1
  62. package/styles/ui-stack.css +1 -1
  63. package/styles/ui-switch.css +1 -1
  64. package/styles/ui-switcher.css +1 -1
  65. package/styles/ui-tabs.css +1 -1
  66. package/styles/ui-textarea.css +1 -1
  67. package/styles/ui-toast-region.css +1 -1
  68. package/styles/ui-tooltip.css +1 -1
  69. package/styles/ui-top-bar.css +1 -1
  70. package/styles/ui-tree-item.css +10 -2
  71. package/styles/ui-tree.css +1 -1
  72. package/vanilla/UiAffordanceScope.d.ts +1 -1
  73. package/vanilla/UiAffordanceScope.js +2 -2
  74. package/vanilla/UiAvatar.d.ts +1 -1
  75. package/vanilla/UiAvatar.js +2 -2
  76. package/vanilla/UiAvatarGroup.d.ts +1 -1
  77. package/vanilla/UiAvatarGroup.js +2 -2
  78. package/vanilla/UiBadge.d.ts +1 -1
  79. package/vanilla/UiBadge.js +2 -2
  80. package/vanilla/UiButton.d.ts +3 -1
  81. package/vanilla/UiButton.js +3 -3
  82. package/vanilla/UiCallout.d.ts +1 -1
  83. package/vanilla/UiCallout.js +2 -2
  84. package/vanilla/UiCheckbox.d.ts +1 -1
  85. package/vanilla/UiCheckbox.js +2 -2
  86. package/vanilla/UiCluster.d.ts +1 -1
  87. package/vanilla/UiCluster.js +2 -2
  88. package/vanilla/UiCombobox.d.ts +1 -1
  89. package/vanilla/UiCombobox.js +3 -3
  90. package/vanilla/UiContainer.d.ts +1 -1
  91. package/vanilla/UiContainer.js +2 -2
  92. package/vanilla/UiContextMenu.d.ts +1 -1
  93. package/vanilla/UiContextMenu.js +2 -2
  94. package/vanilla/UiDialog.d.ts +1 -1
  95. package/vanilla/UiDialog.js +2 -2
  96. package/vanilla/UiDisclosure.d.ts +1 -1
  97. package/vanilla/UiDisclosure.js +2 -2
  98. package/vanilla/UiEditable.d.ts +1 -1
  99. package/vanilla/UiEditable.js +2 -2
  100. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  101. package/vanilla/UiEditorInsertTableGrid.js +3 -3
  102. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  103. package/vanilla/UiEditorMentionMenu.js +3 -3
  104. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  105. package/vanilla/UiEditorSlashMenu.js +2 -2
  106. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  107. package/vanilla/UiEditorTableContextMenu.js +3 -3
  108. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  109. package/vanilla/UiEditorTableOverlay.js +3 -3
  110. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  111. package/vanilla/UiEditorTableToolbar.js +3 -3
  112. package/vanilla/UiEditorToolbar.d.ts +1 -1
  113. package/vanilla/UiEditorToolbar.js +2 -2
  114. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  115. package/vanilla/UiFloatingActionButton.js +2 -2
  116. package/vanilla/UiFormField.d.ts +1 -1
  117. package/vanilla/UiFormField.js +15 -6
  118. package/vanilla/UiGrid.d.ts +1 -1
  119. package/vanilla/UiGrid.js +2 -2
  120. package/vanilla/UiIcon.d.ts +1 -1
  121. package/vanilla/UiIcon.js +3 -3
  122. package/vanilla/UiIconButton.d.ts +1 -1
  123. package/vanilla/UiIconButton.js +2 -2
  124. package/vanilla/UiInput.d.ts +1 -1
  125. package/vanilla/UiInput.js +2 -2
  126. package/vanilla/UiMenu.d.ts +1 -1
  127. package/vanilla/UiMenu.js +2 -2
  128. package/vanilla/UiMenuItem.d.ts +1 -1
  129. package/vanilla/UiMenuItem.js +2 -2
  130. package/vanilla/UiPopover.d.ts +1 -1
  131. package/vanilla/UiPopover.js +2 -2
  132. package/vanilla/UiRadio.d.ts +1 -1
  133. package/vanilla/UiRadio.js +2 -2
  134. package/vanilla/UiRadioGroup.d.ts +1 -1
  135. package/vanilla/UiRadioGroup.js +2 -2
  136. package/vanilla/UiReel.d.ts +1 -1
  137. package/vanilla/UiReel.js +2 -2
  138. package/vanilla/UiSearchResultRow.d.ts +1 -1
  139. package/vanilla/UiSearchResultRow.js +2 -2
  140. package/vanilla/UiSearchShell.d.ts +1 -1
  141. package/vanilla/UiSearchShell.js +2 -2
  142. package/vanilla/UiSelect.d.ts +1 -1
  143. package/vanilla/UiSelect.js +2 -2
  144. package/vanilla/UiSeparator.d.ts +1 -1
  145. package/vanilla/UiSeparator.js +2 -2
  146. package/vanilla/UiSidebar.d.ts +1 -1
  147. package/vanilla/UiSidebar.js +2 -2
  148. package/vanilla/UiStack.d.ts +1 -1
  149. package/vanilla/UiStack.js +2 -2
  150. package/vanilla/UiSwitch.d.ts +1 -1
  151. package/vanilla/UiSwitch.js +2 -2
  152. package/vanilla/UiSwitcher.d.ts +1 -1
  153. package/vanilla/UiSwitcher.js +2 -2
  154. package/vanilla/UiTabs.d.ts +1 -1
  155. package/vanilla/UiTabs.js +3 -3
  156. package/vanilla/UiTextarea.d.ts +1 -1
  157. package/vanilla/UiTextarea.js +2 -2
  158. package/vanilla/UiToastRegion.d.ts +1 -1
  159. package/vanilla/UiToastRegion.js +3 -3
  160. package/vanilla/UiTooltip.d.ts +1 -1
  161. package/vanilla/UiTooltip.js +2 -2
  162. package/vanilla/UiTopBar.d.ts +1 -1
  163. package/vanilla/UiTopBar.js +1 -1
  164. package/vanilla/UiTree.d.ts +1 -1
  165. package/vanilla/UiTree.js +2 -2
  166. package/vanilla/UiTreeItem.d.ts +1 -1
  167. package/vanilla/UiTreeItem.js +2 -2
  168. package/vue/UiAffordanceScope.d.ts +2 -2
  169. package/vue/UiAffordanceScope.vue +92 -73
  170. package/vue/UiAvatar.d.ts +7 -7
  171. package/vue/UiAvatar.vue +145 -105
  172. package/vue/UiAvatarGroup.d.ts +4 -4
  173. package/vue/UiAvatarGroup.vue +134 -118
  174. package/vue/UiBadge.d.ts +4 -4
  175. package/vue/UiBadge.vue +113 -114
  176. package/vue/UiButton.d.ts +10 -6
  177. package/vue/UiButton.vue +289 -220
  178. package/vue/UiCallout.d.ts +2 -2
  179. package/vue/UiCallout.vue +154 -87
  180. package/vue/UiCheckbox.d.ts +14 -10
  181. package/vue/UiCheckbox.vue +228 -162
  182. package/vue/UiCluster.d.ts +2 -2
  183. package/vue/UiCluster.vue +53 -60
  184. package/vue/UiCombobox.d.ts +36 -32
  185. package/vue/UiCombobox.vue +1005 -416
  186. package/vue/UiContainer.d.ts +2 -2
  187. package/vue/UiContainer.vue +48 -51
  188. package/vue/UiContextMenu.d.ts +6 -4
  189. package/vue/UiContextMenu.vue +205 -116
  190. package/vue/UiDialog.d.ts +11 -9
  191. package/vue/UiDialog.vue +287 -212
  192. package/vue/UiDisclosure.d.ts +8 -6
  193. package/vue/UiDisclosure.vue +248 -159
  194. package/vue/UiEditable.d.ts +16 -12
  195. package/vue/UiEditable.vue +325 -205
  196. package/vue/UiEditorInsertTableGrid.d.ts +8 -8
  197. package/vue/UiEditorInsertTableGrid.vue +216 -157
  198. package/vue/UiEditorMentionMenu.d.ts +9 -9
  199. package/vue/UiEditorMentionMenu.vue +265 -222
  200. package/vue/UiEditorSlashMenu.d.ts +7 -7
  201. package/vue/UiEditorSlashMenu.vue +286 -240
  202. package/vue/UiEditorTableContextMenu.d.ts +5 -5
  203. package/vue/UiEditorTableContextMenu.vue +306 -193
  204. package/vue/UiEditorTableOverlay.d.ts +2 -2
  205. package/vue/UiEditorTableOverlay.vue +609 -369
  206. package/vue/UiEditorTableToolbar.d.ts +7 -7
  207. package/vue/UiEditorTableToolbar.vue +443 -268
  208. package/vue/UiEditorToolbar.d.ts +2 -2
  209. package/vue/UiEditorToolbar.vue +134 -121
  210. package/vue/UiFloatingActionButton.d.ts +6 -6
  211. package/vue/UiFloatingActionButton.vue +100 -99
  212. package/vue/UiFormField.d.ts +6 -6
  213. package/vue/UiFormField.vue +112 -80
  214. package/vue/UiGrid.d.ts +2 -2
  215. package/vue/UiGrid.vue +51 -57
  216. package/vue/UiIcon.d.ts +2 -2
  217. package/vue/UiIcon.vue +118 -89
  218. package/vue/UiIconButton.d.ts +11 -11
  219. package/vue/UiIconButton.vue +285 -206
  220. package/vue/UiInput.d.ts +9 -9
  221. package/vue/UiInput.vue +153 -127
  222. package/vue/UiMenu.d.ts +8 -6
  223. package/vue/UiMenu.vue +217 -143
  224. package/vue/UiMenuItem.d.ts +4 -4
  225. package/vue/UiMenuItem.vue +52 -46
  226. package/vue/UiPopover.d.ts +8 -6
  227. package/vue/UiPopover.vue +197 -137
  228. package/vue/UiRadio.d.ts +14 -10
  229. package/vue/UiRadio.vue +183 -117
  230. package/vue/UiRadioGroup.d.ts +14 -12
  231. package/vue/UiRadioGroup.vue +172 -111
  232. package/vue/UiReel.d.ts +3 -3
  233. package/vue/UiReel.vue +77 -77
  234. package/vue/UiSearchResultRow.d.ts +4 -4
  235. package/vue/UiSearchResultRow.vue +124 -115
  236. package/vue/UiSearchShell.d.ts +10 -8
  237. package/vue/UiSearchShell.vue +245 -176
  238. package/vue/UiSelect.d.ts +9 -9
  239. package/vue/UiSelect.vue +162 -134
  240. package/vue/UiSeparator.d.ts +2 -2
  241. package/vue/UiSeparator.vue +22 -27
  242. package/vue/UiSidebar.d.ts +20 -18
  243. package/vue/UiSidebar.vue +312 -224
  244. package/vue/UiStack.d.ts +3 -3
  245. package/vue/UiStack.vue +64 -70
  246. package/vue/UiSwitch.d.ts +12 -8
  247. package/vue/UiSwitch.vue +218 -150
  248. package/vue/UiSwitcher.d.ts +3 -3
  249. package/vue/UiSwitcher.vue +73 -75
  250. package/vue/UiTabs.d.ts +10 -8
  251. package/vue/UiTabs.vue +251 -210
  252. package/vue/UiTextarea.d.ts +11 -11
  253. package/vue/UiTextarea.vue +155 -128
  254. package/vue/UiToastRegion.d.ts +10 -8
  255. package/vue/UiToastRegion.vue +261 -198
  256. package/vue/UiTooltip.d.ts +14 -12
  257. package/vue/UiTooltip.vue +241 -177
  258. package/vue/UiTopBar.vue +51 -42
  259. package/vue/UiTree.d.ts +8 -6
  260. package/vue/UiTree.vue +157 -70
  261. package/vue/UiTreeItem.d.ts +24 -22
  262. package/vue/UiTreeItem.vue +456 -339
  263. package/vue/chunks/UiAffordanceScope.js +9 -16
  264. package/vue/chunks/UiAvatar.js +23 -29
  265. package/vue/chunks/UiAvatarGroup.js +16 -39
  266. package/vue/chunks/UiBadge.js +3 -12
  267. package/vue/chunks/UiButton.js +15 -18
  268. package/vue/chunks/UiCallout.js +8 -17
  269. package/vue/chunks/UiCheckbox.js +37 -40
  270. package/vue/chunks/UiCluster.js +3 -12
  271. package/vue/chunks/UiCombobox.js +224 -266
  272. package/vue/chunks/UiContainer.js +3 -12
  273. package/vue/chunks/UiContextMenu.js +39 -34
  274. package/vue/chunks/UiDialog.js +36 -39
  275. package/vue/chunks/UiDisclosure.js +43 -48
  276. package/vue/chunks/UiEditable.js +55 -57
  277. package/vue/chunks/UiEditorInsertTableGrid.js +55 -73
  278. package/vue/chunks/UiEditorMentionMenu.js +40 -81
  279. package/vue/chunks/UiEditorSlashMenu.js +28 -52
  280. package/vue/chunks/UiEditorTableContextMenu.js +32 -56
  281. package/vue/chunks/UiEditorTableOverlay.js +58 -82
  282. package/vue/chunks/UiEditorTableToolbar.js +61 -85
  283. package/vue/chunks/UiEditorToolbar.js +4 -13
  284. package/vue/chunks/UiFloatingActionButton.js +7 -21
  285. package/vue/chunks/UiFormField.js +15 -12
  286. package/vue/chunks/UiGrid.js +3 -12
  287. package/vue/chunks/UiIcon.js +20 -43
  288. package/vue/chunks/UiIconButton.js +16 -28
  289. package/vue/chunks/UiInput.js +20 -25
  290. package/vue/chunks/UiMenu.js +29 -33
  291. package/vue/chunks/UiMenuItem.js +4 -10
  292. package/vue/chunks/UiPopover.js +28 -29
  293. package/vue/chunks/UiRadio.js +36 -39
  294. package/vue/chunks/UiRadioGroup.js +30 -34
  295. package/vue/chunks/UiReel.js +6 -15
  296. package/vue/chunks/UiSearchResultRow.js +6 -19
  297. package/vue/chunks/UiSearchShell.js +25 -28
  298. package/vue/chunks/UiSelect.js +20 -23
  299. package/vue/chunks/UiSeparator.js +2 -8
  300. package/vue/chunks/UiSidebar.js +39 -44
  301. package/vue/chunks/UiStack.js +6 -15
  302. package/vue/chunks/UiSwitch.js +35 -38
  303. package/vue/chunks/UiSwitcher.js +6 -15
  304. package/vue/chunks/UiTabs.js +47 -85
  305. package/vue/chunks/UiTextarea.js +21 -26
  306. package/vue/chunks/UiToastRegion.js +38 -72
  307. package/vue/chunks/UiTooltip.js +34 -35
  308. package/vue/chunks/UiTopBar.js +1 -1
  309. package/vue/chunks/UiTree.js +20 -15
  310. package/vue/chunks/UiTreeItem.js +85 -102
  311. package/vue/components.css +3994 -3764
  312. package/vue/index.d.ts +1 -0
  313. package/vue/index.js +2 -1
@@ -33,7 +33,7 @@ var UiEditorSlashMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
33
33
  anchorRect: {},
34
34
  items: {},
35
35
  open: {
36
- type: [Boolean, null],
36
+ type: Boolean,
37
37
  default: false
38
38
  },
39
39
  query: { default: "" },
@@ -41,52 +41,28 @@ var UiEditorSlashMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
41
41
  },
42
42
  emits: ["highlight", "select"],
43
43
  setup(__props, { emit: __emit }) {
44
- const hn = {
45
- t: (v) => v === true || (typeof v === "string" ? v.length > 0 : typeof v === "number" ? v !== 0 && v === v : Array.isArray(v) ? v.length > 0 : v !== null && typeof v === "object" ? Object.keys(v).length > 0 : false),
46
- text: (v) => v === void 0 || v === null ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? "" : String(v),
47
- attr: (v) => v === void 0 || v === null || v === false ? void 0 : v === true ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? void 0 : String(v),
48
- enumerated: (v) => typeof v === "boolean" ? String(v) : hn.attr(v),
49
- shape: (items, where, sort, limit) => {
50
- let list = Array.isArray(items) ? items.slice() : [];
51
- if (where !== void 0) list = list.filter((item) => hn.t(where(item)));
52
- if (sort.length > 0) {
53
- const field = (item, path) => item !== null && typeof item === "object" && !Array.isArray(item) ? path.split(".").reduce((value, key) => value?.[key], item) : item;
54
- const compare = (a, b) => typeof a === "number" && typeof b === "number" ? a - b : hn.text(a).localeCompare(hn.text(b));
55
- list.sort((a, b) => {
56
- for (const key of sort) {
57
- const descending = key.startsWith("-");
58
- const order = compare(field(a, descending ? key.slice(1) : key), field(b, descending ? key.slice(1) : key));
59
- if (order !== 0) return descending ? -order : order;
60
- }
61
- return 0;
62
- });
63
- }
64
- return typeof limit === "number" ? list.slice(0, Math.max(0, Math.trunc(limit))) : list;
65
- }
66
- };
67
44
  const props = __props;
68
45
  const emit = __emit;
69
46
  const root = ref(null);
70
- const refs = {};
71
- const state_visible = ref(false);
72
- const state_active = ref(0);
47
+ const visible = ref(false);
48
+ const active = ref(0);
73
49
  /** Dispatches a component event to Vue listeners and, for controllers and page code, on the root. */
74
- const dispatch = (name, detail) => {
50
+ function dispatch(name, detail) {
75
51
  const declared = {
76
- "highlight": {
77
- "bubbles": true,
78
- "composed": true,
79
- "cancelable": false
52
+ highlight: {
53
+ bubbles: true,
54
+ composed: true,
55
+ cancelable: false
80
56
  },
81
- "select": {
82
- "bubbles": true,
83
- "composed": true,
84
- "cancelable": false
57
+ select: {
58
+ bubbles: true,
59
+ composed: true,
60
+ cancelable: false
85
61
  }
86
62
  };
87
63
  const checks = {
88
- "highlight": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key)),
89
- "select": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key))
64
+ highlight: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key)),
65
+ select: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key))
90
66
  };
91
67
  if (detail !== void 0 && checks[name] !== void 0 && !checks[name](detail)) throw new TypeError(`HR002: Event \`${name}\` detail does not satisfy its declared type.`);
92
68
  emit(name, detail);
@@ -96,19 +72,19 @@ var UiEditorSlashMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
96
72
  ...declared[name],
97
73
  detail
98
74
  })) ?? true;
99
- };
75
+ }
100
76
  function read(name) {
101
- if (name === "visible") return state_visible.value;
102
- if (name === "active") return state_active.value;
77
+ if (name === "visible") return visible.value;
78
+ if (name === "active") return active.value;
103
79
  return props[name];
104
80
  }
105
81
  function write(name, value) {
106
82
  if (name === "visible") {
107
- state_visible.value = value;
83
+ visible.value = value;
108
84
  return true;
109
85
  }
110
86
  if (name === "active") {
111
- state_active.value = value;
87
+ active.value = value;
112
88
  return true;
113
89
  }
114
90
  throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
@@ -122,7 +98,7 @@ var UiEditorSlashMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
122
98
  get: (_target, name) => typeof name === "string" ? read(name) : void 0,
123
99
  set: (_target, name, value) => typeof name === "string" && write(name, value)
124
100
  }),
125
- refs,
101
+ refs: {},
126
102
  elements: new Proxy({}, { get: (_target, name) => {
127
103
  if (typeof name !== "string" || root.value === null) return void 0;
128
104
  return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
@@ -177,19 +153,19 @@ var UiEditorSlashMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
177
153
  role: "listbox",
178
154
  "aria-label": "Insert block"
179
155
  }, _ctx.$attrs, {
180
- hidden: hn.attr(!hn.t(state_visible.value)),
156
+ hidden: !visible.value,
181
157
  ref_key: "root",
182
158
  ref: root
183
159
  }), [
184
- createElementVNode("div", _hoisted_2, [_cache[0] || (_cache[0] = createElementVNode("span", { class: "header-label" }, "Insert", -1)), hn.t(props.query) ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(hn.text(props.query)), 1)) : createCommentVNode("v-if", true)]),
185
- createElementVNode("ul", _hoisted_4, [(openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(props.items, void 0, [], void 0), (item, index) => {
160
+ createElementVNode("div", _hoisted_2, [_cache[0] || (_cache[0] = createElementVNode("span", { class: "header-label" }, "Insert", -1)), __props.query ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.query), 1)) : createCommentVNode("v-if", true)]),
161
+ createElementVNode("ul", _hoisted_4, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item, index) => {
186
162
  return openBlock(), createElementBlock("li", {
187
163
  key: index,
188
- class: normalizeClass(["item", { "active": hn.t(index === state_active.value) }]),
164
+ class: normalizeClass(["item", { active: index === active.value }]),
189
165
  role: "option",
190
- "aria-selected": hn.enumerated(index === state_active.value),
191
- "data-index": hn.attr(index)
192
- }, [createElementVNode("span", _hoisted_6, [createVNode(UiIcon_default, { name: item?.icon }, null, 8, ["name"])]), createElementVNode("span", _hoisted_7, [createElementVNode("span", _hoisted_8, toDisplayString(hn.text(item?.title)), 1), createElementVNode("span", _hoisted_9, toDisplayString(hn.text(item?.description)), 1)])], 10, _hoisted_5);
166
+ "aria-selected": index === active.value,
167
+ "data-index": index
168
+ }, [createElementVNode("span", _hoisted_6, [createVNode(UiIcon_default, { name: item.icon }, null, 8, ["name"])]), createElementVNode("span", _hoisted_7, [createElementVNode("span", _hoisted_8, toDisplayString(item.title), 1), createElementVNode("span", _hoisted_9, toDisplayString(item.description), 1)])], 10, _hoisted_5);
193
169
  }), 128))]),
194
170
  _cache[1] || (_cache[1] = createElementVNode("div", {
195
171
  class: "footer",
@@ -205,6 +181,6 @@ var UiEditorSlashMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(
205
181
  ], 16, _hoisted_1);
206
182
  };
207
183
  }
208
- }), [["__scopeId", "data-v-93dbbf52"]]);
184
+ }), [["__scopeId", "data-v-6616eea5"]]);
209
185
  //#endregion
210
186
  export { UiEditorSlashMenu_default as t };
@@ -34,49 +34,25 @@ var UiEditorTableContextMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_d
34
34
  actions: {},
35
35
  cellBackground: { default: "" },
36
36
  open: {
37
- type: [Boolean, null],
37
+ type: Boolean,
38
38
  default: false
39
39
  }
40
40
  },
41
41
  emits: ["action"],
42
42
  setup(__props, { emit: __emit }) {
43
- const hn = {
44
- t: (v) => v === true || (typeof v === "string" ? v.length > 0 : typeof v === "number" ? v !== 0 && v === v : Array.isArray(v) ? v.length > 0 : v !== null && typeof v === "object" ? Object.keys(v).length > 0 : false),
45
- text: (v) => v === void 0 || v === null ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? "" : String(v),
46
- attr: (v) => v === void 0 || v === null || v === false ? void 0 : v === true ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? void 0 : String(v),
47
- enumerated: (v) => typeof v === "boolean" ? String(v) : hn.attr(v),
48
- shape: (items, where, sort, limit) => {
49
- let list = Array.isArray(items) ? items.slice() : [];
50
- if (where !== void 0) list = list.filter((item) => hn.t(where(item)));
51
- if (sort.length > 0) {
52
- const field = (item, path) => item !== null && typeof item === "object" && !Array.isArray(item) ? path.split(".").reduce((value, key) => value?.[key], item) : item;
53
- const compare = (a, b) => typeof a === "number" && typeof b === "number" ? a - b : hn.text(a).localeCompare(hn.text(b));
54
- list.sort((a, b) => {
55
- for (const key of sort) {
56
- const descending = key.startsWith("-");
57
- const order = compare(field(a, descending ? key.slice(1) : key), field(b, descending ? key.slice(1) : key));
58
- if (order !== 0) return descending ? -order : order;
59
- }
60
- return 0;
61
- });
62
- }
63
- return typeof limit === "number" ? list.slice(0, Math.max(0, Math.trunc(limit))) : list;
64
- }
65
- };
66
43
  const props = __props;
67
44
  const emit = __emit;
68
45
  const root = ref(null);
69
- const refs = {};
70
- const state_swatches = ref([]);
71
- const state_sections = ref([]);
46
+ const swatches = ref([]);
47
+ const sections = ref([]);
72
48
  /** Dispatches a component event to Vue listeners and, for controllers and page code, on the root. */
73
- const dispatch = (name, detail) => {
74
- const declared = { "action": {
75
- "bubbles": true,
76
- "composed": true,
77
- "cancelable": false
49
+ function dispatch(name, detail) {
50
+ const declared = { action: {
51
+ bubbles: true,
52
+ composed: true,
53
+ cancelable: false
78
54
  } };
79
- const checks = { "action": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["action"] === "align-left" || detail["action"] === "align-center" || detail["action"] === "align-right" || detail["action"] === "background-none" || detail["action"] === "background-gray" || detail["action"] === "background-yellow" || detail["action"] === "background-blue" || detail["action"] === "background-green" || detail["action"] === "background-red" || detail["action"] === "add-row-before" || detail["action"] === "add-row-after" || detail["action"] === "add-column-before" || detail["action"] === "add-column-after" || detail["action"] === "clear-cells" || detail["action"] === "merge-cells" || detail["action"] === "split-cell" || detail["action"] === "delete-row" || detail["action"] === "delete-column" || detail["action"] === "delete-table") && Object.keys(detail).every((key) => ["action"].includes(key)) };
55
+ const checks = { action: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["action"] === "align-left" || detail["action"] === "align-center" || detail["action"] === "align-right" || detail["action"] === "background-none" || detail["action"] === "background-gray" || detail["action"] === "background-yellow" || detail["action"] === "background-blue" || detail["action"] === "background-green" || detail["action"] === "background-red" || detail["action"] === "add-row-before" || detail["action"] === "add-row-after" || detail["action"] === "add-column-before" || detail["action"] === "add-column-after" || detail["action"] === "clear-cells" || detail["action"] === "merge-cells" || detail["action"] === "split-cell" || detail["action"] === "delete-row" || detail["action"] === "delete-column" || detail["action"] === "delete-table") && Object.keys(detail).every((key) => ["action"].includes(key)) };
80
56
  if (detail !== void 0 && checks[name] !== void 0 && !checks[name](detail)) throw new TypeError(`HR002: Event \`${name}\` detail does not satisfy its declared type.`);
81
57
  emit(name, detail);
82
58
  return root.value?.dispatchEvent(new CustomEvent(name, {
@@ -85,19 +61,19 @@ var UiEditorTableContextMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_d
85
61
  ...declared[name],
86
62
  detail
87
63
  })) ?? true;
88
- };
64
+ }
89
65
  function read(name) {
90
- if (name === "swatches") return state_swatches.value;
91
- if (name === "sections") return state_sections.value;
66
+ if (name === "swatches") return swatches.value;
67
+ if (name === "sections") return sections.value;
92
68
  return props[name];
93
69
  }
94
70
  function write(name, value) {
95
71
  if (name === "swatches") {
96
- state_swatches.value = value;
72
+ swatches.value = value;
97
73
  return true;
98
74
  }
99
75
  if (name === "sections") {
100
- state_sections.value = value;
76
+ sections.value = value;
101
77
  return true;
102
78
  }
103
79
  throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
@@ -111,7 +87,7 @@ var UiEditorTableContextMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_d
111
87
  get: (_target, name) => typeof name === "string" ? read(name) : void 0,
112
88
  set: (_target, name, value) => typeof name === "string" && write(name, value)
113
89
  }),
114
- refs,
90
+ refs: {},
115
91
  elements: new Proxy({}, { get: (_target, name) => {
116
92
  if (typeof name !== "string" || root.value === null) return void 0;
117
93
  return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
@@ -165,37 +141,37 @@ var UiEditorTableContextMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_d
165
141
  "data-component": "ui-editor-table-context-menu",
166
142
  role: "menu"
167
143
  }, _ctx.$attrs, {
168
- hidden: hn.attr(!hn.t(props.open)),
144
+ hidden: !__props.open,
169
145
  ref_key: "root",
170
146
  ref: root
171
- }), [hn.t(state_swatches.value) ? (openBlock(), createElementBlock("div", _hoisted_2, [_cache[0] || (_cache[0] = createElementVNode("div", {
147
+ }), [swatches.value?.length ? (openBlock(), createElementBlock("div", _hoisted_2, [_cache[0] || (_cache[0] = createElementVNode("div", {
172
148
  class: "heading",
173
149
  role: "presentation"
174
- }, "Cell background", -1)), createElementVNode("div", _hoisted_3, [(openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(state_swatches.value, void 0, [], void 0), (swatch, index) => {
150
+ }, "Cell background", -1)), createElementVNode("div", _hoisted_3, [(openBlock(true), createElementBlock(Fragment, null, renderList(swatches.value, (swatch) => {
175
151
  return openBlock(), createElementBlock("button", {
176
- key: swatch?.action,
152
+ key: swatch.action,
177
153
  type: "button",
178
- class: normalizeClass(["swatch-button", { "selected": hn.t(swatch?.selected) }]),
154
+ class: normalizeClass(["swatch-button", { selected: swatch.selected }]),
179
155
  role: "menuitemradio",
180
- "aria-checked": hn.enumerated(swatch?.selected),
181
- "data-action": hn.attr(swatch?.action)
156
+ "aria-checked": swatch.selected,
157
+ "data-action": swatch.action
182
158
  }, [createElementVNode("span", {
183
- class: normalizeClass(["swatch", { "default": hn.t(!hn.t(swatch?.color)) }]),
184
- style: normalizeStyle({ "--ui-editor-table-context-swatch": hn.text(swatch?.color) })
185
- }, null, 6), createElementVNode("span", _hoisted_5, toDisplayString(hn.text(swatch?.label)), 1)], 10, _hoisted_4);
186
- }), 128))])])) : createCommentVNode("v-if", true), (openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(state_sections.value, void 0, [], void 0), (section, index) => {
187
- return openBlock(), createElementBlock(Fragment, { key: section?.heading }, [_cache[1] || (_cache[1] = createElementVNode("div", { class: "sep" }, null, -1)), createElementVNode("div", _hoisted_6, [createElementVNode("div", _hoisted_7, toDisplayString(hn.text(section?.heading)), 1), (openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(section?.items, void 0, [], void 0), (item, index) => {
159
+ class: normalizeClass(["swatch", { default: !swatch.color }]),
160
+ style: normalizeStyle({ "--ui-editor-table-context-swatch": swatch.color })
161
+ }, null, 6), createElementVNode("span", _hoisted_5, toDisplayString(swatch.label), 1)], 10, _hoisted_4);
162
+ }), 128))])])) : createCommentVNode("v-if", true), (openBlock(true), createElementBlock(Fragment, null, renderList(sections.value, (section) => {
163
+ return openBlock(), createElementBlock(Fragment, { key: section.heading }, [_cache[1] || (_cache[1] = createElementVNode("div", { class: "sep" }, null, -1)), createElementVNode("div", _hoisted_6, [createElementVNode("div", _hoisted_7, toDisplayString(section.heading), 1), (openBlock(true), createElementBlock(Fragment, null, renderList(section.items, (item) => {
188
164
  return openBlock(), createElementBlock("button", {
189
- key: item?.action,
165
+ key: item.action,
190
166
  type: "button",
191
167
  role: "menuitem",
192
- "data-action": hn.attr(item?.action),
193
- class: normalizeClass({ "danger": hn.t(item?.danger) })
194
- }, [createVNode(UiIcon_default, { name: item?.icon }, null, 8, ["name"]), createElementVNode("span", null, toDisplayString(hn.text(item?.label)), 1)], 10, _hoisted_8);
168
+ "data-action": item.action,
169
+ class: normalizeClass({ danger: item.danger })
170
+ }, [createVNode(UiIcon_default, { name: item.icon }, null, 8, ["name"]), createElementVNode("span", null, toDisplayString(item.label), 1)], 10, _hoisted_8);
195
171
  }), 128))])], 64);
196
172
  }), 128))], 16, _hoisted_1);
197
173
  };
198
174
  }
199
- }), [["__scopeId", "data-v-2714613a"]]);
175
+ }), [["__scopeId", "data-v-db07efb3"]]);
200
176
  //#endregion
201
177
  export { UiEditorTableContextMenu_default as t };
@@ -41,52 +41,28 @@ var UiEditorTableOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
41
41
  props: {
42
42
  geometry: {},
43
43
  open: {
44
- type: [Boolean, null],
44
+ type: Boolean,
45
45
  default: false
46
46
  }
47
47
  },
48
48
  emits: ["action"],
49
49
  setup(__props, { emit: __emit }) {
50
- const hn = {
51
- t: (v) => v === true || (typeof v === "string" ? v.length > 0 : typeof v === "number" ? v !== 0 && v === v : Array.isArray(v) ? v.length > 0 : v !== null && typeof v === "object" ? Object.keys(v).length > 0 : false),
52
- text: (v) => v === void 0 || v === null ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? "" : String(v),
53
- attr: (v) => v === void 0 || v === null || v === false ? void 0 : v === true ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? void 0 : String(v),
54
- enumerated: (v) => typeof v === "boolean" ? String(v) : hn.attr(v),
55
- shape: (items, where, sort, limit) => {
56
- let list = Array.isArray(items) ? items.slice() : [];
57
- if (where !== void 0) list = list.filter((item) => hn.t(where(item)));
58
- if (sort.length > 0) {
59
- const field = (item, path) => item !== null && typeof item === "object" && !Array.isArray(item) ? path.split(".").reduce((value, key) => value?.[key], item) : item;
60
- const compare = (a, b) => typeof a === "number" && typeof b === "number" ? a - b : hn.text(a).localeCompare(hn.text(b));
61
- list.sort((a, b) => {
62
- for (const key of sort) {
63
- const descending = key.startsWith("-");
64
- const order = compare(field(a, descending ? key.slice(1) : key), field(b, descending ? key.slice(1) : key));
65
- if (order !== 0) return descending ? -order : order;
66
- }
67
- return 0;
68
- });
69
- }
70
- return typeof limit === "number" ? list.slice(0, Math.max(0, Math.trunc(limit))) : list;
71
- }
72
- };
73
50
  const props = __props;
74
51
  const emit = __emit;
75
52
  const root = ref(null);
76
- const refs = {};
77
- const state_rows = ref([]);
78
- const state_cols = ref([]);
79
- const state_hovered = ref(null);
80
- const state_active = ref(null);
81
- const state_activeKey = ref("");
53
+ const rows = ref([]);
54
+ const cols = ref([]);
55
+ const hovered = ref(null);
56
+ const active = ref(null);
57
+ const activeKey = ref("");
82
58
  /** Dispatches a component event to Vue listeners and, for controllers and page code, on the root. */
83
- const dispatch = (name, detail) => {
84
- const declared = { "action": {
85
- "bubbles": true,
86
- "composed": true,
87
- "cancelable": false
59
+ function dispatch(name, detail) {
60
+ const declared = { action: {
61
+ bubbles: true,
62
+ composed: true,
63
+ cancelable: false
88
64
  } };
89
- const checks = { "action": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["action"] === "add-row-before" || detail["action"] === "add-row-after" || detail["action"] === "add-column-before" || detail["action"] === "add-column-after") && Number.isInteger(detail["boundaryIndex"]) && Object.keys(detail).every((key) => ["action", "boundaryIndex"].includes(key)) || detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["action"] === "select-row" || detail["action"] === "select-column") && Number.isInteger(detail["rowIndex"]) && Number.isInteger(detail["columnIndex"]) && Object.keys(detail).every((key) => [
65
+ const checks = { action: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["action"] === "add-row-before" || detail["action"] === "add-row-after" || detail["action"] === "add-column-before" || detail["action"] === "add-column-after") && Number.isInteger(detail["boundaryIndex"]) && Object.keys(detail).every((key) => ["action", "boundaryIndex"].includes(key)) || detail !== null && typeof detail === "object" && !Array.isArray(detail) && (detail["action"] === "select-row" || detail["action"] === "select-column") && Number.isInteger(detail["rowIndex"]) && Number.isInteger(detail["columnIndex"]) && Object.keys(detail).every((key) => [
90
66
  "action",
91
67
  "rowIndex",
92
68
  "columnIndex"
@@ -109,34 +85,34 @@ var UiEditorTableOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
109
85
  ...declared[name],
110
86
  detail
111
87
  })) ?? true;
112
- };
88
+ }
113
89
  function read(name) {
114
- if (name === "rows") return state_rows.value;
115
- if (name === "cols") return state_cols.value;
116
- if (name === "hovered") return state_hovered.value;
117
- if (name === "active") return state_active.value;
118
- if (name === "activeKey") return state_activeKey.value;
90
+ if (name === "rows") return rows.value;
91
+ if (name === "cols") return cols.value;
92
+ if (name === "hovered") return hovered.value;
93
+ if (name === "active") return active.value;
94
+ if (name === "activeKey") return activeKey.value;
119
95
  return props[name];
120
96
  }
121
97
  function write(name, value) {
122
98
  if (name === "rows") {
123
- state_rows.value = value;
99
+ rows.value = value;
124
100
  return true;
125
101
  }
126
102
  if (name === "cols") {
127
- state_cols.value = value;
103
+ cols.value = value;
128
104
  return true;
129
105
  }
130
106
  if (name === "hovered") {
131
- state_hovered.value = value;
107
+ hovered.value = value;
132
108
  return true;
133
109
  }
134
110
  if (name === "active") {
135
- state_active.value = value;
111
+ active.value = value;
136
112
  return true;
137
113
  }
138
114
  if (name === "activeKey") {
139
- state_activeKey.value = value;
115
+ activeKey.value = value;
140
116
  return true;
141
117
  }
142
118
  throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
@@ -150,7 +126,7 @@ var UiEditorTableOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
150
126
  get: (_target, name) => typeof name === "string" ? read(name) : void 0,
151
127
  set: (_target, name, value) => typeof name === "string" && write(name, value)
152
128
  }),
153
- refs,
129
+ refs: {},
154
130
  elements: new Proxy({}, { get: (_target, name) => {
155
131
  if (typeof name !== "string" || root.value === null) return void 0;
156
132
  return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
@@ -204,16 +180,16 @@ var UiEditorTableOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
204
180
  "data-component": "ui-editor-table-overlay",
205
181
  "aria-label": "Table controls"
206
182
  }, _ctx.$attrs, {
207
- hidden: hn.attr(!hn.t(props.open)),
183
+ hidden: !__props.open,
208
184
  ref_key: "root",
209
185
  ref: root
210
186
  }), [
211
- createElementVNode("div", _hoisted_2, [(openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(state_rows.value, void 0, [], void 0), (control, index) => {
187
+ createElementVNode("div", _hoisted_2, [(openBlock(true), createElementBlock(Fragment, null, renderList(rows.value, (control) => {
212
188
  return openBlock(), createElementBlock("div", {
213
- key: control?.key,
214
- class: normalizeClass(["control row", { "active": hn.t(control?.key === state_activeKey.value) }]),
215
- "data-control-key": hn.attr(control?.key),
216
- style: normalizeStyle({ "top": hn.text(control?.offset) })
189
+ key: control.key,
190
+ class: normalizeClass(["control row", { active: control.key === activeKey.value }]),
191
+ "data-control-key": control.key,
192
+ style: normalizeStyle({ top: control.offset })
217
193
  }, [
218
194
  _cache[0] || (_cache[0] = createElementVNode("span", {
219
195
  class: "line",
@@ -227,19 +203,19 @@ var UiEditorTableOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
227
203
  createElementVNode("button", {
228
204
  type: "button",
229
205
  class: "handle",
230
- "data-ui-affordance": hn.attr(control?.affordance),
231
- "data-action": hn.attr(control?.action),
232
- "data-boundary-index": hn.attr(control?.index),
233
- "aria-label": hn.enumerated(control?.label)
234
- }, [createVNode(UiIcon_default, { name: "plus" }), createElementVNode("span", _hoisted_5, toDisplayString(hn.text(control?.label)), 1)], 8, _hoisted_4)
206
+ "data-ui-affordance": control.affordance,
207
+ "data-action": control.action,
208
+ "data-boundary-index": control.index,
209
+ "aria-label": control.label
210
+ }, [createVNode(UiIcon_default, { name: "plus" }), createElementVNode("span", _hoisted_5, toDisplayString(control.label), 1)], 8, _hoisted_4)
235
211
  ], 14, _hoisted_3);
236
212
  }), 128))]),
237
- createElementVNode("div", _hoisted_6, [(openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(state_cols.value, void 0, [], void 0), (control, index) => {
213
+ createElementVNode("div", _hoisted_6, [(openBlock(true), createElementBlock(Fragment, null, renderList(cols.value, (control) => {
238
214
  return openBlock(), createElementBlock("div", {
239
- key: control?.key,
240
- class: normalizeClass(["control col", { "active": hn.t(control?.key === state_activeKey.value) }]),
241
- "data-control-key": hn.attr(control?.key),
242
- style: normalizeStyle({ "left": hn.text(control?.offset) })
215
+ key: control.key,
216
+ class: normalizeClass(["control col", { active: control.key === activeKey.value }]),
217
+ "data-control-key": control.key,
218
+ style: normalizeStyle({ left: control.offset })
243
219
  }, [
244
220
  _cache[2] || (_cache[2] = createElementVNode("span", {
245
221
  class: "line",
@@ -253,49 +229,49 @@ var UiEditorTableOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_defau
253
229
  createElementVNode("button", {
254
230
  type: "button",
255
231
  class: "handle",
256
- "data-ui-affordance": hn.attr(control?.affordance),
257
- "data-action": hn.attr(control?.action),
258
- "data-boundary-index": hn.attr(control?.index),
259
- "aria-label": hn.enumerated(control?.label)
260
- }, [createVNode(UiIcon_default, { name: "plus" }), createElementVNode("span", _hoisted_9, toDisplayString(hn.text(control?.label)), 1)], 8, _hoisted_8)
232
+ "data-ui-affordance": control.affordance,
233
+ "data-action": control.action,
234
+ "data-boundary-index": control.index,
235
+ "aria-label": control.label
236
+ }, [createVNode(UiIcon_default, { name: "plus" }), createElementVNode("span", _hoisted_9, toDisplayString(control.label), 1)], 8, _hoisted_8)
261
237
  ], 14, _hoisted_7);
262
238
  }), 128))]),
263
- hn.t(state_hovered.value) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createElementVNode("button", {
239
+ hovered.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createElementVNode("button", {
264
240
  type: "button",
265
241
  class: "selector row",
266
242
  "data-action": "select-row",
267
243
  title: "Select row",
268
244
  "aria-label": "Select row",
269
- "data-row-index": hn.attr(state_hovered.value?.rowIndex),
270
- "data-column-index": hn.attr(state_hovered.value?.columnIndex),
271
- style: normalizeStyle({ "top": hn.text(state_hovered.value?.rowOffset) })
245
+ "data-row-index": hovered.value?.rowIndex,
246
+ "data-column-index": hovered.value?.columnIndex,
247
+ style: normalizeStyle({ top: hovered.value?.rowOffset })
272
248
  }, [createElementVNode("span", _hoisted_11, [createVNode(UiIcon_default, { name: "grip-vertical" })])], 12, _hoisted_10), createElementVNode("button", {
273
249
  type: "button",
274
250
  class: "selector column",
275
251
  "data-action": "select-column",
276
252
  title: "Select column",
277
253
  "aria-label": "Select column",
278
- "data-row-index": hn.attr(state_hovered.value?.rowIndex),
279
- "data-column-index": hn.attr(state_hovered.value?.columnIndex),
280
- style: normalizeStyle({ "left": hn.text(state_hovered.value?.columnOffset) })
254
+ "data-row-index": hovered.value?.rowIndex,
255
+ "data-column-index": hovered.value?.columnIndex,
256
+ style: normalizeStyle({ left: hovered.value?.columnOffset })
281
257
  }, [createElementVNode("span", _hoisted_13, [createVNode(UiIcon_default, { name: "grip-horizontal" })])], 12, _hoisted_12)], 64)) : createCommentVNode("v-if", true),
282
- hn.t(state_active.value) ? (openBlock(), createElementBlock("button", {
258
+ active.value ? (openBlock(), createElementBlock("button", {
283
259
  key: 1,
284
260
  type: "button",
285
261
  class: "cell-menu",
286
262
  "data-action": "open-cell-menu",
287
263
  title: "Cell actions",
288
264
  "aria-label": "Cell actions",
289
- "data-row-index": hn.attr(state_active.value?.rowIndex),
290
- "data-column-index": hn.attr(state_active.value?.columnIndex),
265
+ "data-row-index": active.value?.rowIndex,
266
+ "data-column-index": active.value?.columnIndex,
291
267
  style: normalizeStyle({
292
- "left": hn.text(state_active.value?.menuLeft),
293
- "top": hn.text(state_active.value?.menuTop)
268
+ left: active.value?.menuLeft,
269
+ top: active.value?.menuTop
294
270
  })
295
271
  }, [createVNode(UiIcon_default, { name: "chevron-down" })], 12, _hoisted_14)) : createCommentVNode("v-if", true)
296
272
  ], 16, _hoisted_1);
297
273
  };
298
274
  }
299
- }), [["__scopeId", "data-v-7b392ded"]]);
275
+ }), [["__scopeId", "data-v-a31eb11f"]]);
300
276
  //#endregion
301
277
  export { UiEditorTableOverlay_default as t };