@threadlabs/looma 0.5.1 → 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 (309) hide show
  1. package/README.md +1 -1
  2. package/components/ui-button/ui-button.html +13 -0
  3. package/components/ui-combobox/ui-combobox.html +12 -4
  4. package/components/ui-dialog/ui-dialog.html +13 -0
  5. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +1 -1
  6. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +1 -1
  7. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +6 -2
  8. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +20 -4
  9. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +8 -4
  10. package/components/ui-form-field/ui-form-field.html +18 -7
  11. package/components/ui-icon/ui-icon.html +5 -1
  12. package/components/ui-icon-button/ui-icon-button.html +30 -0
  13. package/components/ui-popover/ui-popover.js +10 -2
  14. package/components/ui-search-shell/ui-search-shell.html +7 -0
  15. package/components/ui-search-shell/ui-search-shell.js +9 -0
  16. package/components/ui-tabs/ui-tabs.html +1 -1
  17. package/components/ui-toast-region/ui-toast-region.html +1 -1
  18. package/components/ui-tree-item/ui-tree-item.html +6 -1
  19. package/dist/index.d.ts +1 -1
  20. package/dist/index.js +2 -2
  21. package/package.json +2 -2
  22. package/styles/ui-affordance-scope.css +1 -1
  23. package/styles/ui-avatar-group.css +1 -1
  24. package/styles/ui-avatar.css +1 -1
  25. package/styles/ui-badge.css +1 -1
  26. package/styles/ui-button.css +11 -1
  27. package/styles/ui-callout.css +1 -1
  28. package/styles/ui-checkbox.css +1 -1
  29. package/styles/ui-cluster.css +1 -1
  30. package/styles/ui-combobox.css +1 -1
  31. package/styles/ui-container.css +1 -1
  32. package/styles/ui-context-menu.css +1 -1
  33. package/styles/ui-dialog.css +18 -1
  34. package/styles/ui-disclosure.css +1 -1
  35. package/styles/ui-editable.css +1 -1
  36. package/styles/ui-editor-insert-table-grid.css +1 -1
  37. package/styles/ui-editor-mention-menu.css +1 -1
  38. package/styles/ui-editor-slash-menu.css +1 -1
  39. package/styles/ui-editor-table-context-menu.css +1 -1
  40. package/styles/ui-editor-table-overlay.css +1 -1
  41. package/styles/ui-editor-table-toolbar.css +1 -1
  42. package/styles/ui-editor-toolbar.css +1 -1
  43. package/styles/ui-floating-action-button.css +1 -1
  44. package/styles/ui-form-field.css +24 -10
  45. package/styles/ui-grid.css +1 -1
  46. package/styles/ui-icon-button.css +36 -1
  47. package/styles/ui-icon.css +1 -1
  48. package/styles/ui-input.css +1 -1
  49. package/styles/ui-menu-item.css +1 -1
  50. package/styles/ui-menu.css +1 -1
  51. package/styles/ui-popover.css +1 -1
  52. package/styles/ui-radio-group.css +1 -1
  53. package/styles/ui-radio.css +1 -1
  54. package/styles/ui-reel.css +1 -1
  55. package/styles/ui-search-result-row.css +1 -1
  56. package/styles/ui-search-shell.css +11 -2
  57. package/styles/ui-select.css +1 -1
  58. package/styles/ui-separator.css +1 -1
  59. package/styles/ui-sidebar.css +1 -1
  60. package/styles/ui-stack.css +1 -1
  61. package/styles/ui-switch.css +1 -1
  62. package/styles/ui-switcher.css +1 -1
  63. package/styles/ui-tabs.css +1 -1
  64. package/styles/ui-textarea.css +1 -1
  65. package/styles/ui-toast-region.css +1 -1
  66. package/styles/ui-tooltip.css +1 -1
  67. package/styles/ui-top-bar.css +1 -1
  68. package/styles/ui-tree-item.css +10 -2
  69. package/styles/ui-tree.css +1 -1
  70. package/vanilla/UiAffordanceScope.d.ts +1 -1
  71. package/vanilla/UiAffordanceScope.js +2 -2
  72. package/vanilla/UiAvatar.d.ts +1 -1
  73. package/vanilla/UiAvatar.js +2 -2
  74. package/vanilla/UiAvatarGroup.d.ts +1 -1
  75. package/vanilla/UiAvatarGroup.js +2 -2
  76. package/vanilla/UiBadge.d.ts +1 -1
  77. package/vanilla/UiBadge.js +2 -2
  78. package/vanilla/UiButton.d.ts +3 -1
  79. package/vanilla/UiButton.js +3 -3
  80. package/vanilla/UiCallout.d.ts +1 -1
  81. package/vanilla/UiCallout.js +2 -2
  82. package/vanilla/UiCheckbox.d.ts +1 -1
  83. package/vanilla/UiCheckbox.js +2 -2
  84. package/vanilla/UiCluster.d.ts +1 -1
  85. package/vanilla/UiCluster.js +2 -2
  86. package/vanilla/UiCombobox.d.ts +1 -1
  87. package/vanilla/UiCombobox.js +3 -3
  88. package/vanilla/UiContainer.d.ts +1 -1
  89. package/vanilla/UiContainer.js +2 -2
  90. package/vanilla/UiContextMenu.d.ts +1 -1
  91. package/vanilla/UiContextMenu.js +2 -2
  92. package/vanilla/UiDialog.d.ts +1 -1
  93. package/vanilla/UiDialog.js +2 -2
  94. package/vanilla/UiDisclosure.d.ts +1 -1
  95. package/vanilla/UiDisclosure.js +2 -2
  96. package/vanilla/UiEditable.d.ts +1 -1
  97. package/vanilla/UiEditable.js +2 -2
  98. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  99. package/vanilla/UiEditorInsertTableGrid.js +3 -3
  100. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  101. package/vanilla/UiEditorMentionMenu.js +3 -3
  102. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  103. package/vanilla/UiEditorSlashMenu.js +2 -2
  104. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  105. package/vanilla/UiEditorTableContextMenu.js +3 -3
  106. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  107. package/vanilla/UiEditorTableOverlay.js +3 -3
  108. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  109. package/vanilla/UiEditorTableToolbar.js +3 -3
  110. package/vanilla/UiEditorToolbar.d.ts +1 -1
  111. package/vanilla/UiEditorToolbar.js +2 -2
  112. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  113. package/vanilla/UiFloatingActionButton.js +2 -2
  114. package/vanilla/UiFormField.d.ts +1 -1
  115. package/vanilla/UiFormField.js +15 -6
  116. package/vanilla/UiGrid.d.ts +1 -1
  117. package/vanilla/UiGrid.js +2 -2
  118. package/vanilla/UiIcon.d.ts +1 -1
  119. package/vanilla/UiIcon.js +3 -3
  120. package/vanilla/UiIconButton.d.ts +1 -1
  121. package/vanilla/UiIconButton.js +2 -2
  122. package/vanilla/UiInput.d.ts +1 -1
  123. package/vanilla/UiInput.js +2 -2
  124. package/vanilla/UiMenu.d.ts +1 -1
  125. package/vanilla/UiMenu.js +2 -2
  126. package/vanilla/UiMenuItem.d.ts +1 -1
  127. package/vanilla/UiMenuItem.js +2 -2
  128. package/vanilla/UiPopover.d.ts +1 -1
  129. package/vanilla/UiPopover.js +2 -2
  130. package/vanilla/UiRadio.d.ts +1 -1
  131. package/vanilla/UiRadio.js +2 -2
  132. package/vanilla/UiRadioGroup.d.ts +1 -1
  133. package/vanilla/UiRadioGroup.js +2 -2
  134. package/vanilla/UiReel.d.ts +1 -1
  135. package/vanilla/UiReel.js +2 -2
  136. package/vanilla/UiSearchResultRow.d.ts +1 -1
  137. package/vanilla/UiSearchResultRow.js +2 -2
  138. package/vanilla/UiSearchShell.d.ts +1 -1
  139. package/vanilla/UiSearchShell.js +2 -2
  140. package/vanilla/UiSelect.d.ts +1 -1
  141. package/vanilla/UiSelect.js +2 -2
  142. package/vanilla/UiSeparator.d.ts +1 -1
  143. package/vanilla/UiSeparator.js +2 -2
  144. package/vanilla/UiSidebar.d.ts +1 -1
  145. package/vanilla/UiSidebar.js +2 -2
  146. package/vanilla/UiStack.d.ts +1 -1
  147. package/vanilla/UiStack.js +2 -2
  148. package/vanilla/UiSwitch.d.ts +1 -1
  149. package/vanilla/UiSwitch.js +2 -2
  150. package/vanilla/UiSwitcher.d.ts +1 -1
  151. package/vanilla/UiSwitcher.js +2 -2
  152. package/vanilla/UiTabs.d.ts +1 -1
  153. package/vanilla/UiTabs.js +3 -3
  154. package/vanilla/UiTextarea.d.ts +1 -1
  155. package/vanilla/UiTextarea.js +2 -2
  156. package/vanilla/UiToastRegion.d.ts +1 -1
  157. package/vanilla/UiToastRegion.js +3 -3
  158. package/vanilla/UiTooltip.d.ts +1 -1
  159. package/vanilla/UiTooltip.js +2 -2
  160. package/vanilla/UiTopBar.d.ts +1 -1
  161. package/vanilla/UiTopBar.js +1 -1
  162. package/vanilla/UiTree.d.ts +1 -1
  163. package/vanilla/UiTree.js +2 -2
  164. package/vanilla/UiTreeItem.d.ts +1 -1
  165. package/vanilla/UiTreeItem.js +2 -2
  166. package/vue/UiAffordanceScope.d.ts +2 -2
  167. package/vue/UiAffordanceScope.vue +92 -73
  168. package/vue/UiAvatar.d.ts +7 -7
  169. package/vue/UiAvatar.vue +145 -105
  170. package/vue/UiAvatarGroup.d.ts +4 -4
  171. package/vue/UiAvatarGroup.vue +134 -118
  172. package/vue/UiBadge.d.ts +4 -4
  173. package/vue/UiBadge.vue +113 -114
  174. package/vue/UiButton.d.ts +10 -6
  175. package/vue/UiButton.vue +289 -248
  176. package/vue/UiCallout.d.ts +2 -2
  177. package/vue/UiCallout.vue +154 -87
  178. package/vue/UiCheckbox.d.ts +14 -10
  179. package/vue/UiCheckbox.vue +228 -162
  180. package/vue/UiCluster.d.ts +2 -2
  181. package/vue/UiCluster.vue +53 -60
  182. package/vue/UiCombobox.d.ts +36 -32
  183. package/vue/UiCombobox.vue +1005 -416
  184. package/vue/UiContainer.d.ts +2 -2
  185. package/vue/UiContainer.vue +48 -51
  186. package/vue/UiContextMenu.d.ts +6 -4
  187. package/vue/UiContextMenu.vue +205 -116
  188. package/vue/UiDialog.d.ts +11 -9
  189. package/vue/UiDialog.vue +287 -212
  190. package/vue/UiDisclosure.d.ts +8 -6
  191. package/vue/UiDisclosure.vue +248 -159
  192. package/vue/UiEditable.d.ts +16 -12
  193. package/vue/UiEditable.vue +325 -205
  194. package/vue/UiEditorInsertTableGrid.d.ts +8 -8
  195. package/vue/UiEditorInsertTableGrid.vue +216 -157
  196. package/vue/UiEditorMentionMenu.d.ts +9 -9
  197. package/vue/UiEditorMentionMenu.vue +265 -222
  198. package/vue/UiEditorSlashMenu.d.ts +7 -7
  199. package/vue/UiEditorSlashMenu.vue +286 -240
  200. package/vue/UiEditorTableContextMenu.d.ts +5 -5
  201. package/vue/UiEditorTableContextMenu.vue +306 -193
  202. package/vue/UiEditorTableOverlay.d.ts +2 -2
  203. package/vue/UiEditorTableOverlay.vue +609 -369
  204. package/vue/UiEditorTableToolbar.d.ts +7 -7
  205. package/vue/UiEditorTableToolbar.vue +443 -268
  206. package/vue/UiEditorToolbar.d.ts +2 -2
  207. package/vue/UiEditorToolbar.vue +134 -121
  208. package/vue/UiFloatingActionButton.d.ts +6 -6
  209. package/vue/UiFloatingActionButton.vue +100 -99
  210. package/vue/UiFormField.d.ts +6 -6
  211. package/vue/UiFormField.vue +112 -80
  212. package/vue/UiGrid.d.ts +2 -2
  213. package/vue/UiGrid.vue +51 -57
  214. package/vue/UiIcon.d.ts +2 -2
  215. package/vue/UiIcon.vue +118 -89
  216. package/vue/UiIconButton.d.ts +11 -11
  217. package/vue/UiIconButton.vue +283 -217
  218. package/vue/UiInput.d.ts +9 -9
  219. package/vue/UiInput.vue +153 -127
  220. package/vue/UiMenu.d.ts +8 -6
  221. package/vue/UiMenu.vue +217 -143
  222. package/vue/UiMenuItem.d.ts +4 -4
  223. package/vue/UiMenuItem.vue +52 -46
  224. package/vue/UiPopover.d.ts +8 -6
  225. package/vue/UiPopover.vue +197 -137
  226. package/vue/UiRadio.d.ts +14 -10
  227. package/vue/UiRadio.vue +183 -117
  228. package/vue/UiRadioGroup.d.ts +14 -12
  229. package/vue/UiRadioGroup.vue +172 -111
  230. package/vue/UiReel.d.ts +3 -3
  231. package/vue/UiReel.vue +77 -77
  232. package/vue/UiSearchResultRow.d.ts +4 -4
  233. package/vue/UiSearchResultRow.vue +124 -115
  234. package/vue/UiSearchShell.d.ts +10 -8
  235. package/vue/UiSearchShell.vue +245 -176
  236. package/vue/UiSelect.d.ts +9 -9
  237. package/vue/UiSelect.vue +162 -134
  238. package/vue/UiSeparator.d.ts +2 -2
  239. package/vue/UiSeparator.vue +22 -27
  240. package/vue/UiSidebar.d.ts +20 -18
  241. package/vue/UiSidebar.vue +312 -224
  242. package/vue/UiStack.d.ts +3 -3
  243. package/vue/UiStack.vue +64 -70
  244. package/vue/UiSwitch.d.ts +12 -8
  245. package/vue/UiSwitch.vue +218 -150
  246. package/vue/UiSwitcher.d.ts +3 -3
  247. package/vue/UiSwitcher.vue +73 -75
  248. package/vue/UiTabs.d.ts +10 -8
  249. package/vue/UiTabs.vue +251 -210
  250. package/vue/UiTextarea.d.ts +11 -11
  251. package/vue/UiTextarea.vue +155 -128
  252. package/vue/UiToastRegion.d.ts +10 -8
  253. package/vue/UiToastRegion.vue +261 -198
  254. package/vue/UiTooltip.d.ts +14 -12
  255. package/vue/UiTooltip.vue +241 -177
  256. package/vue/UiTopBar.vue +51 -42
  257. package/vue/UiTree.d.ts +8 -6
  258. package/vue/UiTree.vue +157 -70
  259. package/vue/UiTreeItem.d.ts +24 -22
  260. package/vue/UiTreeItem.vue +456 -339
  261. package/vue/chunks/UiAffordanceScope.js +9 -16
  262. package/vue/chunks/UiAvatar.js +23 -29
  263. package/vue/chunks/UiAvatarGroup.js +16 -39
  264. package/vue/chunks/UiBadge.js +3 -12
  265. package/vue/chunks/UiButton.js +15 -18
  266. package/vue/chunks/UiCallout.js +8 -17
  267. package/vue/chunks/UiCheckbox.js +37 -40
  268. package/vue/chunks/UiCluster.js +3 -12
  269. package/vue/chunks/UiCombobox.js +224 -266
  270. package/vue/chunks/UiContainer.js +3 -12
  271. package/vue/chunks/UiContextMenu.js +39 -34
  272. package/vue/chunks/UiDialog.js +36 -39
  273. package/vue/chunks/UiDisclosure.js +43 -48
  274. package/vue/chunks/UiEditable.js +55 -57
  275. package/vue/chunks/UiEditorInsertTableGrid.js +55 -73
  276. package/vue/chunks/UiEditorMentionMenu.js +40 -81
  277. package/vue/chunks/UiEditorSlashMenu.js +28 -52
  278. package/vue/chunks/UiEditorTableContextMenu.js +32 -56
  279. package/vue/chunks/UiEditorTableOverlay.js +58 -82
  280. package/vue/chunks/UiEditorTableToolbar.js +61 -85
  281. package/vue/chunks/UiEditorToolbar.js +4 -13
  282. package/vue/chunks/UiFloatingActionButton.js +7 -21
  283. package/vue/chunks/UiFormField.js +15 -12
  284. package/vue/chunks/UiGrid.js +3 -12
  285. package/vue/chunks/UiIcon.js +20 -43
  286. package/vue/chunks/UiIconButton.js +16 -28
  287. package/vue/chunks/UiInput.js +20 -25
  288. package/vue/chunks/UiMenu.js +29 -33
  289. package/vue/chunks/UiMenuItem.js +4 -10
  290. package/vue/chunks/UiPopover.js +28 -29
  291. package/vue/chunks/UiRadio.js +36 -39
  292. package/vue/chunks/UiRadioGroup.js +30 -34
  293. package/vue/chunks/UiReel.js +6 -15
  294. package/vue/chunks/UiSearchResultRow.js +6 -19
  295. package/vue/chunks/UiSearchShell.js +25 -28
  296. package/vue/chunks/UiSelect.js +20 -23
  297. package/vue/chunks/UiSeparator.js +2 -8
  298. package/vue/chunks/UiSidebar.js +39 -44
  299. package/vue/chunks/UiStack.js +6 -15
  300. package/vue/chunks/UiSwitch.js +35 -38
  301. package/vue/chunks/UiSwitcher.js +6 -15
  302. package/vue/chunks/UiTabs.js +47 -85
  303. package/vue/chunks/UiTextarea.js +21 -26
  304. package/vue/chunks/UiToastRegion.js +38 -72
  305. package/vue/chunks/UiTooltip.js +34 -35
  306. package/vue/chunks/UiTopBar.js +1 -1
  307. package/vue/chunks/UiTree.js +20 -15
  308. package/vue/chunks/UiTreeItem.js +85 -102
  309. package/vue/components.css +3994 -3801
@@ -1,5 +1,5 @@
1
1
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { computed, createCommentVNode, createElementBlock, createElementVNode, defineComponent, mergeProps, onBeforeUnmount, onMounted, openBlock, ref, shallowRef, toDisplayString, watchEffect } from "vue";
2
+ import { computed, createCommentVNode, createElementBlock, createElementVNode, defineComponent, mergeProps, onBeforeUnmount, onMounted, openBlock, ref, shallowRef, toDisplayString, useTemplateRef, watchEffect } from "vue";
3
3
  import * as controllerModule from "@threadlabs/looma/components/ui-editable/ui-editable.js";
4
4
  //#region .build/vue/UiEditable.vue?vue&type=script&setup=true&lang.ts
5
5
  var _hoisted_1 = ["data-ui-editable-state"];
@@ -27,15 +27,15 @@ var UiEditable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
27
27
  __name: "UiEditable",
28
28
  props: {
29
29
  actions: {
30
- type: [Boolean, null],
30
+ type: Boolean,
31
31
  default: false
32
32
  },
33
33
  disabled: {
34
- type: [Boolean, null],
34
+ type: Boolean,
35
35
  default: false
36
36
  },
37
37
  edit: {
38
- type: [Boolean, null],
38
+ type: Boolean,
39
39
  default: false
40
40
  },
41
41
  hint: { default: "" },
@@ -43,46 +43,45 @@ var UiEditable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
43
43
  value: { default: "" }
44
44
  },
45
45
  emits: [
46
+ "update:edit",
47
+ "update:value",
46
48
  "input",
47
49
  "change",
48
50
  "edit-change"
49
51
  ],
50
52
  setup(__props, { emit: __emit }) {
51
- const hn = {
52
- 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),
53
- text: (v) => v === void 0 || v === null ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? "" : String(v),
54
- 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),
55
- enumerated: (v) => typeof v === "boolean" ? String(v) : hn.attr(v)
56
- };
57
53
  const props = __props;
58
54
  const emit = __emit;
59
55
  const root = ref(null);
60
- const refs = {};
61
- const state_internalEdit = ref(false);
62
- const state_internalValue = ref("");
63
- const state_draft = ref("");
56
+ const previewElement = useTemplateRef("preview");
57
+ const inputElement = useTemplateRef("input");
58
+ const internalEdit = ref(false);
59
+ const internalValue = ref("");
60
+ const draft = ref("");
61
+ /** The values the styles' :host-state() rules test. */
62
+ const hostState = computed(() => [internalEdit.value && "internalEdit", props.disabled && "disabled"].filter(Boolean).join(" "));
64
63
  /** Dispatches a component event to Vue listeners and, for controllers and page code, on the root. */
65
- const dispatch = (name, detail) => {
64
+ function dispatch(name, detail) {
66
65
  const declared = {
67
- "input": {
68
- "bubbles": true,
69
- "composed": true,
70
- "cancelable": false
66
+ input: {
67
+ bubbles: true,
68
+ composed: true,
69
+ cancelable: false
71
70
  },
72
- "change": {
73
- "bubbles": true,
74
- "composed": true,
75
- "cancelable": false
71
+ change: {
72
+ bubbles: true,
73
+ composed: true,
74
+ cancelable: false
76
75
  },
77
76
  "edit-change": {
78
- "bubbles": true,
79
- "composed": true,
80
- "cancelable": false
77
+ bubbles: true,
78
+ composed: true,
79
+ cancelable: false
81
80
  }
82
81
  };
83
82
  const checks = {
84
- "input": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["value"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => ["value", "trigger"].includes(key)),
85
- "change": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["value"] === "string" && typeof detail["previousValue"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
83
+ input: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["value"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => ["value", "trigger"].includes(key)),
84
+ change: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["value"] === "string" && typeof detail["previousValue"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
86
85
  "value",
87
86
  "previousValue",
88
87
  "trigger"
@@ -94,38 +93,34 @@ var UiEditable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
94
93
  ].includes(key))
95
94
  };
96
95
  if (detail !== void 0 && checks[name] !== void 0 && !checks[name](detail)) throw new TypeError(`HR002: Event \`${name}\` detail does not satisfy its declared type.`);
97
- emit(name, detail);
96
+ const emitEvent = emit;
97
+ emitEvent(name, detail);
98
+ if (detail !== null && typeof detail === "object" && "edit" in detail) emitEvent("update:edit", detail["edit"]);
99
+ if (detail !== null && typeof detail === "object" && "value" in detail) emitEvent("update:value", detail["value"]);
98
100
  return root.value?.dispatchEvent(new CustomEvent(name, {
99
101
  bubbles: true,
100
102
  composed: true,
101
103
  ...declared[name],
102
104
  detail
103
105
  })) ?? true;
104
- };
105
- /** The resolved values the styles' :host-state() rules test. */
106
- const hostState = computed(() => ["internalEdit", "disabled"].flatMap((name) => {
107
- const value = read(name);
108
- const tokens = hn.t(value) ? [name] : [];
109
- if (typeof value === "string" || typeof value === "number") tokens.push(`${name}=${encodeURIComponent(String(value))}`);
110
- return tokens;
111
- }).join(" "));
106
+ }
112
107
  function read(name) {
113
- if (name === "internalEdit") return state_internalEdit.value;
114
- if (name === "internalValue") return state_internalValue.value;
115
- if (name === "draft") return state_draft.value;
108
+ if (name === "internalEdit") return internalEdit.value;
109
+ if (name === "internalValue") return internalValue.value;
110
+ if (name === "draft") return draft.value;
116
111
  return props[name];
117
112
  }
118
113
  function write(name, value) {
119
114
  if (name === "internalEdit") {
120
- state_internalEdit.value = value;
115
+ internalEdit.value = value;
121
116
  return true;
122
117
  }
123
118
  if (name === "internalValue") {
124
- state_internalValue.value = value;
119
+ internalValue.value = value;
125
120
  return true;
126
121
  }
127
122
  if (name === "draft") {
128
- state_draft.value = value;
123
+ draft.value = value;
129
124
  return true;
130
125
  }
131
126
  throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
@@ -139,7 +134,14 @@ var UiEditable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
139
134
  get: (_target, name) => typeof name === "string" ? read(name) : void 0,
140
135
  set: (_target, name, value) => typeof name === "string" && write(name, value)
141
136
  }),
142
- refs,
137
+ refs: {
138
+ get preview() {
139
+ return previewElement.value;
140
+ },
141
+ get input() {
142
+ return inputElement.value;
143
+ }
144
+ },
143
145
  elements: new Proxy({}, { get: (_target, name) => {
144
146
  if (typeof name !== "string" || root.value === null) return void 0;
145
147
  return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
@@ -196,20 +198,16 @@ var UiEditable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
196
198
  }), [createElementVNode("div", _hoisted_2, [createElementVNode("button", {
197
199
  class: "preview",
198
200
  type: "button",
199
- disabled: hn.attr(props.disabled),
200
- ref: (element) => {
201
- refs["preview"] = element;
202
- }
203
- }, [createElementVNode("span", _hoisted_4, toDisplayString(hn.text(state_internalValue.value)), 1), hn.t(props.hint) ? (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(hn.text(props.hint)), 1)) : createCommentVNode("v-if", true)], 8, _hoisted_3), createElementVNode("input", {
201
+ disabled: __props.disabled,
202
+ ref: "preview"
203
+ }, [createElementVNode("span", _hoisted_4, toDisplayString(internalValue.value), 1), __props.hint ? (openBlock(), createElementBlock("span", _hoisted_5, toDisplayString(__props.hint), 1)) : createCommentVNode("v-if", true)], 8, _hoisted_3), createElementVNode("input", {
204
204
  class: "input",
205
205
  type: "text",
206
- ".value": state_draft.value,
207
- "aria-label": hn.enumerated(props.label),
208
- disabled: hn.attr(hn.t(props.disabled) || hn.t(!hn.t(state_internalEdit.value))),
209
- ref: (element) => {
210
- refs["input"] = element;
211
- }
212
- }, null, 40, _hoisted_6)]), hn.t(props.actions) ? (openBlock(), createElementBlock("div", _hoisted_7, [..._cache[0] || (_cache[0] = [createElementVNode("button", {
206
+ ".value": draft.value,
207
+ "aria-label": __props.label,
208
+ disabled: __props.disabled || !internalEdit.value,
209
+ ref: "input"
210
+ }, null, 40, _hoisted_6)]), __props.actions ? (openBlock(), createElementBlock("div", _hoisted_7, [..._cache[0] || (_cache[0] = [createElementVNode("button", {
213
211
  class: "save",
214
212
  type: "button"
215
213
  }, "Save", -1), createElementVNode("button", {
@@ -218,6 +216,6 @@ var UiEditable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
218
216
  }, "Cancel", -1)])])) : createCommentVNode("v-if", true)], 16, _hoisted_1);
219
217
  };
220
218
  }
221
- }), [["__scopeId", "data-v-d8c654a7"]]);
219
+ }), [["__scopeId", "data-v-f4bef809"]]);
222
220
  //#endregion
223
221
  export { UiEditable_default as t };
@@ -1,5 +1,5 @@
1
1
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { Fragment, computed, createElementBlock, createElementVNode, createTextVNode, defineComponent, mergeProps, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, shallowRef, toDisplayString, watchEffect } from "vue";
2
+ import { Fragment, computed, createElementBlock, createElementVNode, createTextVNode, defineComponent, mergeProps, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, shallowRef, toDisplayString, useTemplateRef, watchEffect } from "vue";
3
3
  import * as controllerModule from "@threadlabs/looma/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.js";
4
4
  //#region .build/vue/UiEditorInsertTableGrid.vue?vue&type=script&setup=true&lang.ts
5
5
  var _hoisted_1 = ["hidden"];
@@ -12,6 +12,11 @@ var _hoisted_3 = [
12
12
  ];
13
13
  var _hoisted_4 = { class: "header" };
14
14
  var _hoisted_5 = [".checked"];
15
+ var _hoisted_6 = {
16
+ type: "button",
17
+ class: "insert",
18
+ ref: "insert"
19
+ };
15
20
  //#endregion
16
21
  //#region .build/vue/UiEditorInsertTableGrid.vue
17
22
  var UiEditorInsertTableGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -19,58 +24,36 @@ var UiEditorInsertTableGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_de
19
24
  __name: "UiEditorInsertTableGrid",
20
25
  props: {
21
26
  headerRow: {
22
- type: [Boolean, null],
27
+ type: Boolean,
23
28
  default: false
24
29
  },
25
30
  maxCols: { default: 8 },
26
31
  maxRows: { default: 8 },
27
32
  open: {
28
- type: [Boolean, null],
33
+ type: Boolean,
29
34
  default: false
30
35
  }
31
36
  },
32
37
  emits: ["insert"],
33
38
  setup(__props, { emit: __emit }) {
34
- const hn = {
35
- 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),
36
- text: (v) => v === void 0 || v === null ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? "" : String(v),
37
- 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),
38
- enumerated: (v) => typeof v === "boolean" ? String(v) : hn.attr(v),
39
- shape: (items, where, sort, limit) => {
40
- let list = Array.isArray(items) ? items.slice() : [];
41
- if (where !== void 0) list = list.filter((item) => hn.t(where(item)));
42
- if (sort.length > 0) {
43
- const field = (item, path) => item !== null && typeof item === "object" && !Array.isArray(item) ? path.split(".").reduce((value, key) => value?.[key], item) : item;
44
- const compare = (a, b) => typeof a === "number" && typeof b === "number" ? a - b : hn.text(a).localeCompare(hn.text(b));
45
- list.sort((a, b) => {
46
- for (const key of sort) {
47
- const descending = key.startsWith("-");
48
- const order = compare(field(a, descending ? key.slice(1) : key), field(b, descending ? key.slice(1) : key));
49
- if (order !== 0) return descending ? -order : order;
50
- }
51
- return 0;
52
- });
53
- }
54
- return typeof limit === "number" ? list.slice(0, Math.max(0, Math.trunc(limit))) : list;
55
- }
56
- };
57
39
  const props = __props;
58
40
  const emit = __emit;
59
41
  const root = ref(null);
60
- const refs = {};
61
- const state_cells = ref([]);
62
- const state_rows = ref(8);
63
- const state_cols = ref(8);
64
- const state_hint = ref("");
65
- const state_withHeaderRow = ref(false);
42
+ const headerElement = useTemplateRef("header");
43
+ const insertElement = useTemplateRef("insert");
44
+ const cells = ref([]);
45
+ const rows = ref(8);
46
+ const cols = ref(8);
47
+ const hint = ref("");
48
+ const withHeaderRow = ref(false);
66
49
  /** Dispatches a component event to Vue listeners and, for controllers and page code, on the root. */
67
- const dispatch = (name, detail) => {
68
- const declared = { "insert": {
69
- "bubbles": true,
70
- "composed": true,
71
- "cancelable": false
50
+ function dispatch(name, detail) {
51
+ const declared = { insert: {
52
+ bubbles: true,
53
+ composed: true,
54
+ cancelable: false
72
55
  } };
73
- const checks = { "insert": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["rows"]) && Number.isInteger(detail["cols"]) && typeof detail["withHeaderRow"] === "boolean" && Object.keys(detail).every((key) => [
56
+ const checks = { insert: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["rows"]) && Number.isInteger(detail["cols"]) && typeof detail["withHeaderRow"] === "boolean" && Object.keys(detail).every((key) => [
74
57
  "rows",
75
58
  "cols",
76
59
  "withHeaderRow"
@@ -83,34 +66,34 @@ var UiEditorInsertTableGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_de
83
66
  ...declared[name],
84
67
  detail
85
68
  })) ?? true;
86
- };
69
+ }
87
70
  function read(name) {
88
- if (name === "cells") return state_cells.value;
89
- if (name === "rows") return state_rows.value;
90
- if (name === "cols") return state_cols.value;
91
- if (name === "hint") return state_hint.value;
92
- if (name === "withHeaderRow") return state_withHeaderRow.value;
71
+ if (name === "cells") return cells.value;
72
+ if (name === "rows") return rows.value;
73
+ if (name === "cols") return cols.value;
74
+ if (name === "hint") return hint.value;
75
+ if (name === "withHeaderRow") return withHeaderRow.value;
93
76
  return props[name];
94
77
  }
95
78
  function write(name, value) {
96
79
  if (name === "cells") {
97
- state_cells.value = value;
80
+ cells.value = value;
98
81
  return true;
99
82
  }
100
83
  if (name === "rows") {
101
- state_rows.value = value;
84
+ rows.value = value;
102
85
  return true;
103
86
  }
104
87
  if (name === "cols") {
105
- state_cols.value = value;
88
+ cols.value = value;
106
89
  return true;
107
90
  }
108
91
  if (name === "hint") {
109
- state_hint.value = value;
92
+ hint.value = value;
110
93
  return true;
111
94
  }
112
95
  if (name === "withHeaderRow") {
113
- state_withHeaderRow.value = value;
96
+ withHeaderRow.value = value;
114
97
  return true;
115
98
  }
116
99
  throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
@@ -124,7 +107,14 @@ var UiEditorInsertTableGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_de
124
107
  get: (_target, name) => typeof name === "string" ? read(name) : void 0,
125
108
  set: (_target, name, value) => typeof name === "string" && write(name, value)
126
109
  }),
127
- refs,
110
+ refs: {
111
+ get header() {
112
+ return headerElement.value;
113
+ },
114
+ get insert() {
115
+ return insertElement.value;
116
+ }
117
+ },
128
118
  elements: new Proxy({}, { get: (_target, name) => {
129
119
  if (typeof name !== "string" || root.value === null) return void 0;
130
120
  return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
@@ -175,47 +165,39 @@ var UiEditorInsertTableGrid_default = /*#__PURE__*/ _plugin_vue_export_helper_de
175
165
  });
176
166
  return (_ctx, _cache) => {
177
167
  return openBlock(), createElementBlock("div", mergeProps({ "data-component": "ui-editor-insert-table-grid" }, _ctx.$attrs, {
178
- hidden: hn.attr(!hn.t(props.open)),
168
+ hidden: !__props.open,
179
169
  ref_key: "root",
180
170
  ref: root
181
171
  }), [
182
- createElementVNode("p", _hoisted_2, toDisplayString(hn.text(state_hint.value)), 1),
172
+ createElementVNode("p", _hoisted_2, toDisplayString(hint.value), 1),
183
173
  createElementVNode("div", {
184
174
  class: "grid",
185
175
  role: "group",
186
176
  "aria-label": "Table dimensions",
187
177
  style: normalizeStyle({
188
- "--ui-editor-table-grid-rows": hn.text(state_rows.value),
189
- "--ui-editor-table-grid-cols": hn.text(state_cols.value)
178
+ "--ui-editor-table-grid-rows": rows.value,
179
+ "--ui-editor-table-grid-cols": cols.value
190
180
  })
191
- }, [(openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(state_cells.value, void 0, [], void 0), (cell, index) => {
181
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(cells.value, (cell) => {
192
182
  return openBlock(), createElementBlock("button", {
193
- key: cell?.key,
183
+ key: cell.key,
194
184
  type: "button",
195
- class: normalizeClass(["cell", { "selected": hn.t(cell?.selected) }]),
196
- "data-row": hn.attr(cell?.row),
197
- "data-col": hn.attr(cell?.col),
198
- "aria-label": hn.enumerated(cell?.label),
199
- "aria-pressed": hn.enumerated(cell?.selected)
185
+ class: normalizeClass(["cell", { selected: cell.selected }]),
186
+ "data-row": cell.row,
187
+ "data-col": cell.col,
188
+ "aria-label": cell.label,
189
+ "aria-pressed": cell.selected
200
190
  }, null, 10, _hoisted_3);
201
191
  }), 128))], 4),
202
192
  createElementVNode("label", _hoisted_4, [createElementVNode("input", {
203
193
  type: "checkbox",
204
- ".checked": state_withHeaderRow.value,
205
- ref: (element) => {
206
- refs["header"] = element;
207
- }
194
+ ".checked": withHeaderRow.value,
195
+ ref: "header"
208
196
  }, null, 40, _hoisted_5), _cache[0] || (_cache[0] = createTextVNode(" Header row", -1))]),
209
- createElementVNode("button", {
210
- type: "button",
211
- class: "insert",
212
- ref: (element) => {
213
- refs["insert"] = element;
214
- }
215
- }, "Insert table", 512)
197
+ createElementVNode("button", _hoisted_6, "Insert table", 512)
216
198
  ], 16, _hoisted_1);
217
199
  };
218
200
  }
219
- }), [["__scopeId", "data-v-0d980738"]]);
201
+ }), [["__scopeId", "data-v-daf13b61"]]);
220
202
  //#endregion
221
203
  export { UiEditorInsertTableGrid_default as t };
@@ -37,11 +37,11 @@ var UiEditorMentionMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
37
37
  anchorRect: {},
38
38
  items: {},
39
39
  loading: {
40
- type: [Boolean, null],
40
+ type: Boolean,
41
41
  default: false
42
42
  },
43
43
  open: {
44
- type: [Boolean, null],
44
+ type: Boolean,
45
45
  default: false
46
46
  },
47
47
  query: { default: "" },
@@ -49,72 +49,31 @@ var UiEditorMentionMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
49
49
  },
50
50
  emits: ["highlight", "select"],
51
51
  setup(__props, { emit: __emit }) {
52
- const hn = {
53
- 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),
54
- n: (v) => typeof v === "number" && v === v ? v : void 0,
55
- text: (v) => v === void 0 || v === null ? "" : Array.isArray(v) ? v.map(hn.text).join(" ") : typeof v === "object" ? "" : String(v),
56
- 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),
57
- enumerated: (v) => typeof v === "boolean" ? String(v) : hn.attr(v),
58
- call: (fn, ...args) => {
59
- if (fn === "format") {
60
- let index = 1;
61
- return typeof args[0] === "string" ? args[0].replace(/%s/g, () => index < args.length ? hn.text(args[index++]) : "%s") : void 0;
62
- }
63
- const n = args.map(hn.n);
64
- if (n.some((value) => value === void 0)) return void 0;
65
- const v = n;
66
- switch (fn) {
67
- case "abs": return v.length === 1 ? Math.abs(v[0]) : void 0;
68
- case "round": return v.length === 1 ? Math.round(v[0]) : void 0;
69
- case "min": return v.length > 0 ? Math.min(...v) : void 0;
70
- case "max": return v.length > 0 ? Math.max(...v) : void 0;
71
- case "clamp": return v.length === 3 ? Math.min(Math.max(v[0], v[1]), v[2]) : void 0;
72
- }
73
- },
74
- shape: (items, where, sort, limit) => {
75
- let list = Array.isArray(items) ? items.slice() : [];
76
- if (where !== void 0) list = list.filter((item) => hn.t(where(item)));
77
- if (sort.length > 0) {
78
- const field = (item, path) => item !== null && typeof item === "object" && !Array.isArray(item) ? path.split(".").reduce((value, key) => value?.[key], item) : item;
79
- const compare = (a, b) => typeof a === "number" && typeof b === "number" ? a - b : hn.text(a).localeCompare(hn.text(b));
80
- list.sort((a, b) => {
81
- for (const key of sort) {
82
- const descending = key.startsWith("-");
83
- const order = compare(field(a, descending ? key.slice(1) : key), field(b, descending ? key.slice(1) : key));
84
- if (order !== 0) return descending ? -order : order;
85
- }
86
- return 0;
87
- });
88
- }
89
- return typeof limit === "number" ? list.slice(0, Math.max(0, Math.trunc(limit))) : list;
90
- }
91
- };
92
52
  const props = __props;
93
53
  const emit = __emit;
94
54
  const root = ref(null);
95
- const refs = {};
96
- const state_visible = ref(false);
97
- const state_rows = ref([]);
98
- const state_searching = ref(false);
99
- const state_active = ref(0);
100
- const state_prefix = ref("ui-editor-mention-menu");
55
+ const visible = ref(false);
56
+ const rows = ref([]);
57
+ const searching = ref(false);
58
+ const active = ref(0);
59
+ const prefix = ref("ui-editor-mention-menu");
101
60
  /** Dispatches a component event to Vue listeners and, for controllers and page code, on the root. */
102
- const dispatch = (name, detail) => {
61
+ function dispatch(name, detail) {
103
62
  const declared = {
104
- "highlight": {
105
- "bubbles": true,
106
- "composed": true,
107
- "cancelable": false
63
+ highlight: {
64
+ bubbles: true,
65
+ composed: true,
66
+ cancelable: false
108
67
  },
109
- "select": {
110
- "bubbles": true,
111
- "composed": true,
112
- "cancelable": false
68
+ select: {
69
+ bubbles: true,
70
+ composed: true,
71
+ cancelable: false
113
72
  }
114
73
  };
115
74
  const checks = {
116
- "highlight": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key)),
117
- "select": (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key))
75
+ highlight: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key)),
76
+ select: (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && Number.isInteger(detail["index"]) && Object.keys(detail).every((key) => ["index"].includes(key))
118
77
  };
119
78
  if (detail !== void 0 && checks[name] !== void 0 && !checks[name](detail)) throw new TypeError(`HR002: Event \`${name}\` detail does not satisfy its declared type.`);
120
79
  emit(name, detail);
@@ -124,34 +83,34 @@ var UiEditorMentionMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
124
83
  ...declared[name],
125
84
  detail
126
85
  })) ?? true;
127
- };
86
+ }
128
87
  function read(name) {
129
- if (name === "visible") return state_visible.value;
130
- if (name === "rows") return state_rows.value;
131
- if (name === "searching") return state_searching.value;
132
- if (name === "active") return state_active.value;
133
- if (name === "prefix") return state_prefix.value;
88
+ if (name === "visible") return visible.value;
89
+ if (name === "rows") return rows.value;
90
+ if (name === "searching") return searching.value;
91
+ if (name === "active") return active.value;
92
+ if (name === "prefix") return prefix.value;
134
93
  return props[name];
135
94
  }
136
95
  function write(name, value) {
137
96
  if (name === "visible") {
138
- state_visible.value = value;
97
+ visible.value = value;
139
98
  return true;
140
99
  }
141
100
  if (name === "rows") {
142
- state_rows.value = value;
101
+ rows.value = value;
143
102
  return true;
144
103
  }
145
104
  if (name === "searching") {
146
- state_searching.value = value;
105
+ searching.value = value;
147
106
  return true;
148
107
  }
149
108
  if (name === "active") {
150
- state_active.value = value;
109
+ active.value = value;
151
110
  return true;
152
111
  }
153
112
  if (name === "prefix") {
154
- state_prefix.value = value;
113
+ prefix.value = value;
155
114
  return true;
156
115
  }
157
116
  throw new TypeError(`Only declared state is writable; \`${name}\` is not.`);
@@ -165,7 +124,7 @@ var UiEditorMentionMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
165
124
  get: (_target, name) => typeof name === "string" ? read(name) : void 0,
166
125
  set: (_target, name, value) => typeof name === "string" && write(name, value)
167
126
  }),
168
- refs,
127
+ refs: {},
169
128
  elements: new Proxy({}, { get: (_target, name) => {
170
129
  if (typeof name !== "string" || root.value === null) return void 0;
171
130
  return (root.value instanceof HTMLFormElement ? root.value : root.value.querySelector("form"))?.elements.namedItem(name) ?? root.value.querySelector(`[name="${CSS.escape(name)}"]`) ?? void 0;
@@ -220,26 +179,26 @@ var UiEditorMentionMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
220
179
  role: "listbox",
221
180
  "aria-label": "Mention a person"
222
181
  }, _ctx.$attrs, {
223
- "aria-busy": hn.enumerated(props.loading),
224
- hidden: hn.attr(!hn.t(state_visible.value)),
182
+ "aria-busy": __props.loading,
183
+ hidden: !visible.value,
225
184
  ref_key: "root",
226
185
  ref: root
227
186
  }), [
228
187
  _cache[0] || (_cache[0] = createElementVNode("div", { class: "header" }, [createElementVNode("span", null, "People"), createElementVNode("span", { class: "hint" }, "Type after @ to search")], -1)),
229
- hn.t(state_searching.value) ? (openBlock(), createElementBlock("div", _hoisted_2, "Searching…")) : createCommentVNode("v-if", true),
230
- hn.t(!hn.t(state_searching.value)) ? (openBlock(), createElementBlock("ul", _hoisted_3, [(openBlock(true), createElementBlock(Fragment, null, renderList(hn.shape(state_rows.value, void 0, [], void 0), (row, index) => {
188
+ searching.value ? (openBlock(), createElementBlock("div", _hoisted_2, "Searching…")) : createCommentVNode("v-if", true),
189
+ !searching.value ? (openBlock(), createElementBlock("ul", _hoisted_3, [(openBlock(true), createElementBlock(Fragment, null, renderList(rows.value, (row, index) => {
231
190
  return openBlock(), createElementBlock("li", {
232
191
  key: index,
233
- class: normalizeClass(["item", { "active": hn.t(index === state_active.value) }]),
192
+ class: normalizeClass(["item", { active: index === active.value }]),
234
193
  role: "option",
235
- id: hn.attr(hn.call("format", "%s-option-%s", state_prefix.value, index)),
236
- "aria-selected": hn.enumerated(index === state_active.value),
237
- "data-index": hn.attr(index)
238
- }, [createElementVNode("span", _hoisted_5, toDisplayString(hn.text(row?.initials)), 1), createElementVNode("span", _hoisted_6, [createElementVNode("span", _hoisted_7, toDisplayString(hn.text(row?.label)), 1), hn.t(row?.detail) ? (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(hn.text(row?.detail)), 1)) : createCommentVNode("v-if", true)])], 10, _hoisted_4);
194
+ id: `${prefix.value}-option-${index}`,
195
+ "aria-selected": index === active.value,
196
+ "data-index": index
197
+ }, [createElementVNode("span", _hoisted_5, toDisplayString(row.initials), 1), createElementVNode("span", _hoisted_6, [createElementVNode("span", _hoisted_7, toDisplayString(row.label), 1), row.detail ? (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(row.detail), 1)) : createCommentVNode("v-if", true)])], 10, _hoisted_4);
239
198
  }), 128))])) : createCommentVNode("v-if", true)
240
199
  ], 16, _hoisted_1);
241
200
  };
242
201
  }
243
- }), [["__scopeId", "data-v-a727834e"]]);
202
+ }), [["__scopeId", "data-v-e6ede828"]]);
244
203
  //#endregion
245
204
  export { UiEditorMentionMenu_default as t };