@abraca/nuxt 1.9.1 → 2.0.1

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 (440) hide show
  1. package/dist/module.d.mts +4 -3
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +9 -1
  4. package/dist/runtime/components/ADocumentTree.vue +1 -1
  5. package/dist/runtime/components/AEditor.d.vue.ts +26 -1
  6. package/dist/runtime/components/AEditor.vue +158 -4
  7. package/dist/runtime/components/AEditor.vue.d.ts +26 -1
  8. package/dist/runtime/components/AIdentityModal.d.vue.ts +46 -0
  9. package/dist/runtime/components/AIdentityModal.vue +157 -0
  10. package/dist/runtime/components/AIdentityModal.vue.d.ts +46 -0
  11. package/dist/runtime/components/AMnemonicLoginModal.d.vue.ts +35 -0
  12. package/dist/runtime/components/AMnemonicLoginModal.vue +173 -0
  13. package/dist/runtime/components/AMnemonicLoginModal.vue.d.ts +35 -0
  14. package/dist/runtime/components/ANodePanel.d.vue.ts +29 -2
  15. package/dist/runtime/components/ANodePanel.vue +148 -27
  16. package/dist/runtime/components/ANodePanel.vue.d.ts +29 -2
  17. package/dist/runtime/components/ANodePanelHeader.d.vue.ts +64 -0
  18. package/dist/runtime/components/ANodePanelHeader.vue +105 -0
  19. package/dist/runtime/components/ANodePanelHeader.vue.d.ts +64 -0
  20. package/dist/runtime/components/ANodeSettingsPanel.d.vue.ts +49 -0
  21. package/dist/runtime/components/ANodeSettingsPanel.vue +59 -0
  22. package/dist/runtime/components/ANodeSettingsPanel.vue.d.ts +49 -0
  23. package/dist/runtime/components/ANotificationBell.d.vue.ts +26 -0
  24. package/dist/runtime/components/ANotificationBell.vue +55 -0
  25. package/dist/runtime/components/ANotificationBell.vue.d.ts +26 -0
  26. package/dist/runtime/components/AOfflineSync.d.vue.ts +11 -0
  27. package/dist/runtime/components/AOfflineSync.vue +217 -0
  28. package/dist/runtime/components/AOfflineSync.vue.d.ts +11 -0
  29. package/dist/runtime/components/ARecoveryPhraseDisplay.d.vue.ts +26 -0
  30. package/dist/runtime/components/ARecoveryPhraseDisplay.vue +94 -0
  31. package/dist/runtime/components/ARecoveryPhraseDisplay.vue.d.ts +26 -0
  32. package/dist/runtime/components/AServerInfoModal.d.vue.ts +43 -0
  33. package/dist/runtime/components/AServerInfoModal.vue +150 -0
  34. package/dist/runtime/components/AServerInfoModal.vue.d.ts +43 -0
  35. package/dist/runtime/components/ASpaceFormModal.vue +1 -1
  36. package/dist/runtime/components/ASubPageList.d.vue.ts +66 -0
  37. package/dist/runtime/components/ASubPageList.vue +147 -0
  38. package/dist/runtime/components/ASubPageList.vue.d.ts +66 -0
  39. package/dist/runtime/components/aware/AAccordion.d.vue.ts +25 -0
  40. package/dist/runtime/components/aware/AAccordion.vue +107 -0
  41. package/dist/runtime/components/aware/AAccordion.vue.d.ts +25 -0
  42. package/dist/runtime/components/aware/AArea.vue +24 -11
  43. package/dist/runtime/components/aware/AAvatar.d.vue.ts +6 -0
  44. package/dist/runtime/components/aware/AAvatar.vue +33 -3
  45. package/dist/runtime/components/aware/AAvatar.vue.d.ts +6 -0
  46. package/dist/runtime/components/aware/AAvatarGroup.d.vue.ts +10 -0
  47. package/dist/runtime/components/aware/AAvatarGroup.vue +30 -0
  48. package/dist/runtime/components/aware/AAvatarGroup.vue.d.ts +10 -0
  49. package/dist/runtime/components/aware/AButton.d.vue.ts +4 -2
  50. package/dist/runtime/components/aware/AButton.vue +46 -14
  51. package/dist/runtime/components/aware/AButton.vue.d.ts +4 -2
  52. package/dist/runtime/components/aware/ACalendar.d.vue.ts +17 -0
  53. package/dist/runtime/components/aware/ACalendar.vue +145 -0
  54. package/dist/runtime/components/aware/ACalendar.vue.d.ts +17 -0
  55. package/dist/runtime/components/aware/ACarousel.d.vue.ts +25 -0
  56. package/dist/runtime/components/aware/ACarousel.vue +39 -0
  57. package/dist/runtime/components/aware/ACarousel.vue.d.ts +25 -0
  58. package/dist/runtime/components/aware/ACheckbox.d.vue.ts +11 -0
  59. package/dist/runtime/components/aware/ACheckbox.vue +74 -0
  60. package/dist/runtime/components/aware/ACheckbox.vue.d.ts +11 -0
  61. package/dist/runtime/components/aware/ACheckboxGroup.d.vue.ts +27 -0
  62. package/dist/runtime/components/aware/ACheckboxGroup.vue +79 -0
  63. package/dist/runtime/components/aware/ACheckboxGroup.vue.d.ts +27 -0
  64. package/dist/runtime/components/aware/ACollapsible.d.vue.ts +25 -0
  65. package/dist/runtime/components/aware/ACollapsible.vue +45 -0
  66. package/dist/runtime/components/aware/ACollapsible.vue.d.ts +25 -0
  67. package/dist/runtime/components/aware/AColorPicker.d.vue.ts +15 -0
  68. package/dist/runtime/components/aware/AColorPicker.vue +48 -0
  69. package/dist/runtime/components/aware/AColorPicker.vue.d.ts +15 -0
  70. package/dist/runtime/components/aware/ACommandPalette.d.vue.ts +33 -0
  71. package/dist/runtime/components/aware/ACommandPalette.vue +123 -0
  72. package/dist/runtime/components/aware/ACommandPalette.vue.d.ts +33 -0
  73. package/dist/runtime/components/aware/AContextMenu.d.vue.ts +25 -0
  74. package/dist/runtime/components/aware/AContextMenu.vue +63 -0
  75. package/dist/runtime/components/aware/AContextMenu.vue.d.ts +25 -0
  76. package/dist/runtime/components/aware/ADrawer.d.vue.ts +25 -0
  77. package/dist/runtime/components/aware/ADrawer.vue +57 -0
  78. package/dist/runtime/components/aware/ADrawer.vue.d.ts +25 -0
  79. package/dist/runtime/components/aware/ADropdownMenu.d.vue.ts +25 -0
  80. package/dist/runtime/components/aware/ADropdownMenu.vue +63 -0
  81. package/dist/runtime/components/aware/ADropdownMenu.vue.d.ts +25 -0
  82. package/dist/runtime/components/aware/AFileUpload.d.vue.ts +27 -0
  83. package/dist/runtime/components/aware/AFileUpload.vue +67 -0
  84. package/dist/runtime/components/aware/AFileUpload.vue.d.ts +27 -0
  85. package/dist/runtime/components/aware/AFollowBar.d.vue.ts +21 -0
  86. package/dist/runtime/components/aware/AFollowBar.vue +62 -0
  87. package/dist/runtime/components/aware/AFollowBar.vue.d.ts +21 -0
  88. package/dist/runtime/components/aware/AFollowScroll.d.vue.ts +7 -0
  89. package/dist/runtime/components/aware/AFollowScroll.vue +17 -0
  90. package/dist/runtime/components/aware/AFollowScroll.vue.d.ts +7 -0
  91. package/dist/runtime/components/aware/AFormSync.d.vue.ts +21 -0
  92. package/dist/runtime/components/aware/AFormSync.vue +52 -0
  93. package/dist/runtime/components/aware/AFormSync.vue.d.ts +21 -0
  94. package/dist/runtime/components/aware/AGlobalFocusLayer.d.vue.ts +3 -0
  95. package/dist/runtime/components/aware/AGlobalFocusLayer.vue +90 -0
  96. package/dist/runtime/components/aware/AGlobalFocusLayer.vue.d.ts +3 -0
  97. package/dist/runtime/components/aware/AHoverItem.d.vue.ts +27 -0
  98. package/dist/runtime/components/aware/AHoverItem.vue +124 -0
  99. package/dist/runtime/components/aware/AHoverItem.vue.d.ts +27 -0
  100. package/dist/runtime/components/aware/AInput.d.vue.ts +12 -2
  101. package/dist/runtime/components/aware/AInput.vue +72 -19
  102. package/dist/runtime/components/aware/AInput.vue.d.ts +12 -2
  103. package/dist/runtime/components/aware/AInputMenu.d.vue.ts +17 -0
  104. package/dist/runtime/components/aware/AInputMenu.vue +138 -0
  105. package/dist/runtime/components/aware/AInputMenu.vue.d.ts +17 -0
  106. package/dist/runtime/components/aware/AInputNumber.d.vue.ts +15 -0
  107. package/dist/runtime/components/aware/AInputNumber.vue +67 -0
  108. package/dist/runtime/components/aware/AInputNumber.vue.d.ts +15 -0
  109. package/dist/runtime/components/aware/AInputTags.d.vue.ts +15 -0
  110. package/dist/runtime/components/aware/AInputTags.vue +67 -0
  111. package/dist/runtime/components/aware/AInputTags.vue.d.ts +15 -0
  112. package/dist/runtime/components/aware/AKeyHint.d.vue.ts +3 -0
  113. package/dist/runtime/components/aware/AKeyHint.vue +23 -0
  114. package/dist/runtime/components/aware/AKeyHint.vue.d.ts +3 -0
  115. package/dist/runtime/components/aware/AMedia.d.vue.ts +19 -0
  116. package/dist/runtime/components/aware/AMedia.vue +85 -0
  117. package/dist/runtime/components/aware/AMedia.vue.d.ts +19 -0
  118. package/dist/runtime/components/aware/AModal.d.vue.ts +33 -0
  119. package/dist/runtime/components/aware/AModal.vue +110 -0
  120. package/dist/runtime/components/aware/AModal.vue.d.ts +33 -0
  121. package/dist/runtime/components/aware/ANavigationMenu.d.vue.ts +25 -0
  122. package/dist/runtime/components/aware/ANavigationMenu.vue +82 -0
  123. package/dist/runtime/components/aware/ANavigationMenu.vue.d.ts +25 -0
  124. package/dist/runtime/components/aware/APagination.d.vue.ts +13 -0
  125. package/dist/runtime/components/aware/APagination.vue +53 -0
  126. package/dist/runtime/components/aware/APagination.vue.d.ts +13 -0
  127. package/dist/runtime/components/aware/APeerCaretLayer.d.vue.ts +10 -0
  128. package/dist/runtime/components/aware/APeerCaretLayer.vue +133 -0
  129. package/dist/runtime/components/aware/APeerCaretLayer.vue.d.ts +10 -0
  130. package/dist/runtime/components/aware/APinInput.d.vue.ts +15 -0
  131. package/dist/runtime/components/aware/APinInput.vue +48 -0
  132. package/dist/runtime/components/aware/APinInput.vue.d.ts +15 -0
  133. package/dist/runtime/components/aware/APopover.d.vue.ts +25 -0
  134. package/dist/runtime/components/aware/APopover.vue +57 -0
  135. package/dist/runtime/components/aware/APopover.vue.d.ts +25 -0
  136. package/dist/runtime/components/aware/APresenceBlobs.d.vue.ts +3 -0
  137. package/dist/runtime/components/aware/APresenceBlobs.vue +69 -0
  138. package/dist/runtime/components/aware/APresenceBlobs.vue.d.ts +3 -0
  139. package/dist/runtime/components/aware/APresenceCursors.d.vue.ts +20 -0
  140. package/dist/runtime/components/aware/APresenceCursors.vue +47 -0
  141. package/dist/runtime/components/aware/APresenceCursors.vue.d.ts +20 -0
  142. package/dist/runtime/components/aware/ARadioGroup.d.vue.ts +27 -0
  143. package/dist/runtime/components/aware/ARadioGroup.vue +86 -0
  144. package/dist/runtime/components/aware/ARadioGroup.vue.d.ts +27 -0
  145. package/dist/runtime/components/aware/AScroll.d.vue.ts +25 -0
  146. package/dist/runtime/components/aware/AScroll.vue +87 -0
  147. package/dist/runtime/components/aware/AScroll.vue.d.ts +25 -0
  148. package/dist/runtime/components/aware/ASelect.d.vue.ts +12 -2
  149. package/dist/runtime/components/aware/ASelect.vue +146 -22
  150. package/dist/runtime/components/aware/ASelect.vue.d.ts +12 -2
  151. package/dist/runtime/components/aware/ASelectMenu.d.vue.ts +17 -0
  152. package/dist/runtime/components/aware/ASelectMenu.vue +139 -0
  153. package/dist/runtime/components/aware/ASelectMenu.vue.d.ts +17 -0
  154. package/dist/runtime/components/aware/ASlideover.d.vue.ts +33 -0
  155. package/dist/runtime/components/aware/ASlideover.vue +110 -0
  156. package/dist/runtime/components/aware/ASlideover.vue.d.ts +33 -0
  157. package/dist/runtime/components/aware/ASlider.d.vue.ts +19 -0
  158. package/dist/runtime/components/aware/ASlider.vue +77 -0
  159. package/dist/runtime/components/aware/ASlider.vue.d.ts +19 -0
  160. package/dist/runtime/components/aware/AStepper.d.vue.ts +25 -0
  161. package/dist/runtime/components/aware/AStepper.vue +82 -0
  162. package/dist/runtime/components/aware/AStepper.vue.d.ts +25 -0
  163. package/dist/runtime/components/aware/ASwitch.d.vue.ts +11 -0
  164. package/dist/runtime/components/aware/ASwitch.vue +75 -0
  165. package/dist/runtime/components/aware/ASwitch.vue.d.ts +11 -0
  166. package/dist/runtime/components/aware/ATable.d.vue.ts +23 -0
  167. package/dist/runtime/components/aware/ATable.vue +97 -0
  168. package/dist/runtime/components/aware/ATable.vue.d.ts +23 -0
  169. package/dist/runtime/components/aware/ATabs.d.vue.ts +27 -0
  170. package/dist/runtime/components/aware/ATabs.vue +128 -0
  171. package/dist/runtime/components/aware/ATabs.vue.d.ts +27 -0
  172. package/dist/runtime/components/aware/ATextarea.d.vue.ts +12 -2
  173. package/dist/runtime/components/aware/ATextarea.vue +72 -19
  174. package/dist/runtime/components/aware/ATextarea.vue.d.ts +12 -2
  175. package/dist/runtime/components/aware/AToggleGroup.d.vue.ts +27 -0
  176. package/dist/runtime/components/aware/AToggleGroup.vue +79 -0
  177. package/dist/runtime/components/aware/AToggleGroup.vue.d.ts +27 -0
  178. package/dist/runtime/components/aware/ATree.d.vue.ts +27 -0
  179. package/dist/runtime/components/aware/ATree.vue +111 -0
  180. package/dist/runtime/components/aware/ATree.vue.d.ts +27 -0
  181. package/dist/runtime/components/chat/AChatPanel.d.vue.ts +6 -6
  182. package/dist/runtime/components/chat/AChatPanel.vue.d.ts +6 -6
  183. package/dist/runtime/components/chat/ANodeChatPanel.d.vue.ts +42 -0
  184. package/dist/runtime/components/chat/ANodeChatPanel.vue +53 -0
  185. package/dist/runtime/components/chat/ANodeChatPanel.vue.d.ts +42 -0
  186. package/dist/runtime/components/docs/ADocsSearch.d.vue.ts +2 -2
  187. package/dist/runtime/components/docs/ADocsSearch.vue.d.ts +2 -2
  188. package/dist/runtime/components/docs/ADocsSearchButton.d.vue.ts +3 -3
  189. package/dist/runtime/components/docs/ADocsSearchButton.vue.d.ts +3 -3
  190. package/dist/runtime/components/editor/AEditorRedoButton.d.vue.ts +26 -0
  191. package/dist/runtime/components/editor/AEditorRedoButton.vue +38 -0
  192. package/dist/runtime/components/editor/AEditorRedoButton.vue.d.ts +26 -0
  193. package/dist/runtime/components/editor/AEditorUndoButton.d.vue.ts +26 -0
  194. package/dist/runtime/components/editor/AEditorUndoButton.vue +38 -0
  195. package/dist/runtime/components/editor/AEditorUndoButton.vue.d.ts +26 -0
  196. package/dist/runtime/components/editor/AIconPickerPopover.d.vue.ts +24 -0
  197. package/dist/runtime/components/editor/AIconPickerPopover.vue +113 -0
  198. package/dist/runtime/components/editor/AIconPickerPopover.vue.d.ts +24 -0
  199. package/dist/runtime/components/editor/ANodeInlineLabel.d.vue.ts +24 -0
  200. package/dist/runtime/components/editor/ANodeInlineLabel.vue +101 -0
  201. package/dist/runtime/components/editor/ANodeInlineLabel.vue.d.ts +24 -0
  202. package/dist/runtime/components/renderers/ADocLoadError.d.vue.ts +3 -0
  203. package/dist/runtime/components/renderers/ADocLoadError.vue +11 -0
  204. package/dist/runtime/components/renderers/ADocLoadError.vue.d.ts +3 -0
  205. package/dist/runtime/components/renderers/ADocLoadingSkeleton.d.vue.ts +3 -0
  206. package/dist/runtime/components/renderers/ADocLoadingSkeleton.vue +5 -0
  207. package/dist/runtime/components/renderers/ADocLoadingSkeleton.vue.d.ts +3 -0
  208. package/dist/runtime/components/renderers/AOverviewRenderer.d.vue.ts +22 -0
  209. package/dist/runtime/components/renderers/AOverviewRenderer.vue +1041 -0
  210. package/dist/runtime/components/renderers/AOverviewRenderer.vue.d.ts +22 -0
  211. package/dist/runtime/components/renderers/AProseRenderer.d.vue.ts +23 -0
  212. package/dist/runtime/components/renderers/AProseRenderer.vue +31 -0
  213. package/dist/runtime/components/renderers/AProseRenderer.vue.d.ts +23 -0
  214. package/dist/runtime/components/renderers/ASheetsRenderer.client.d.vue.ts +19 -0
  215. package/dist/runtime/components/renderers/ASheetsRenderer.client.vue +865 -0
  216. package/dist/runtime/components/renderers/ASheetsRenderer.client.vue.d.ts +19 -0
  217. package/dist/runtime/components/renderers/calendar/ACalendarDayCell.d.vue.ts +14 -0
  218. package/dist/runtime/components/renderers/calendar/ACalendarDayCell.vue +45 -15
  219. package/dist/runtime/components/renderers/calendar/ACalendarDayCell.vue.d.ts +14 -0
  220. package/dist/runtime/components/renderers/calendar/ACalendarDayView.d.vue.ts +15 -0
  221. package/dist/runtime/components/renderers/calendar/ACalendarDayView.vue +93 -20
  222. package/dist/runtime/components/renderers/calendar/ACalendarDayView.vue.d.ts +15 -0
  223. package/dist/runtime/components/renderers/calendar/ACalendarEventChip.d.vue.ts +9 -0
  224. package/dist/runtime/components/renderers/calendar/ACalendarEventChip.vue +31 -2
  225. package/dist/runtime/components/renderers/calendar/ACalendarEventChip.vue.d.ts +9 -0
  226. package/dist/runtime/components/renderers/calendar/ACalendarWeekView.d.vue.ts +15 -0
  227. package/dist/runtime/components/renderers/calendar/ACalendarWeekView.vue +94 -21
  228. package/dist/runtime/components/renderers/calendar/ACalendarWeekView.vue.d.ts +15 -0
  229. package/dist/runtime/components/renderers/sheets/ASheetsCell.d.vue.ts +45 -0
  230. package/dist/runtime/components/renderers/sheets/ASheetsCell.vue +123 -0
  231. package/dist/runtime/components/renderers/sheets/ASheetsCell.vue.d.ts +45 -0
  232. package/dist/runtime/components/renderers/sheets/ASheetsGrid.d.vue.ts +111 -0
  233. package/dist/runtime/components/renderers/sheets/ASheetsGrid.vue +737 -0
  234. package/dist/runtime/components/renderers/sheets/ASheetsGrid.vue.d.ts +111 -0
  235. package/dist/runtime/components/renderers/sheets/ASheetsMobileActionBar.d.vue.ts +26 -0
  236. package/dist/runtime/components/renderers/sheets/ASheetsMobileActionBar.vue +100 -0
  237. package/dist/runtime/components/renderers/sheets/ASheetsMobileActionBar.vue.d.ts +26 -0
  238. package/dist/runtime/components/renderers/sheets/ASheetsToolbar.d.vue.ts +48 -0
  239. package/dist/runtime/components/renderers/sheets/ASheetsToolbar.vue +243 -0
  240. package/dist/runtime/components/renderers/sheets/ASheetsToolbar.vue.d.ts +48 -0
  241. package/dist/runtime/components/renderers/table/cells/ATableCellColor.d.vue.ts +1 -0
  242. package/dist/runtime/components/renderers/table/cells/ATableCellColor.vue +13 -32
  243. package/dist/runtime/components/renderers/table/cells/ATableCellColor.vue.d.ts +1 -0
  244. package/dist/runtime/components/renderers/timeline/ATimelineBar.d.vue.ts +6 -0
  245. package/dist/runtime/components/renderers/timeline/ATimelineBar.vue +34 -4
  246. package/dist/runtime/components/renderers/timeline/ATimelineBar.vue.d.ts +6 -0
  247. package/dist/runtime/components/renderers/timeline/ATimelineBarArea.d.vue.ts +16 -0
  248. package/dist/runtime/components/renderers/timeline/ATimelineBarArea.vue +14 -3
  249. package/dist/runtime/components/renderers/timeline/ATimelineBarArea.vue.d.ts +16 -0
  250. package/dist/runtime/components/renderers/timeline/ATimelineLabelPanel.d.vue.ts +13 -1
  251. package/dist/runtime/components/renderers/timeline/ATimelineLabelPanel.vue +114 -47
  252. package/dist/runtime/components/renderers/timeline/ATimelineLabelPanel.vue.d.ts +13 -1
  253. package/dist/runtime/components/renderers/timeline/ATimelineMilestone.d.vue.ts +4 -0
  254. package/dist/runtime/components/renderers/timeline/ATimelineMilestone.vue +21 -4
  255. package/dist/runtime/components/renderers/timeline/ATimelineMilestone.vue.d.ts +4 -0
  256. package/dist/runtime/components/renderers/timeline/ATimelineToolbar.d.vue.ts +2 -2
  257. package/dist/runtime/components/renderers/timeline/ATimelineToolbar.vue.d.ts +2 -2
  258. package/dist/runtime/components/settings/ASettingsSpacesPanel.vue +7 -25
  259. package/dist/runtime/components/shell/ADocPanelSettings.d.vue.ts +3 -3
  260. package/dist/runtime/components/shell/ADocPanelSettings.vue.d.ts +3 -3
  261. package/dist/runtime/components/shell/ASyncStatus.d.vue.ts +1 -1
  262. package/dist/runtime/components/shell/ASyncStatus.vue.d.ts +1 -1
  263. package/dist/runtime/components/shell/AUserMenu.d.vue.ts +2 -2
  264. package/dist/runtime/components/shell/AUserMenu.vue.d.ts +2 -2
  265. package/dist/runtime/components/shell/AWelcomeScreen.d.vue.ts +1 -1
  266. package/dist/runtime/components/shell/AWelcomeScreen.vue.d.ts +1 -1
  267. package/dist/runtime/composables/useAACaret.d.ts +29 -0
  268. package/dist/runtime/composables/useAACaret.js +64 -0
  269. package/dist/runtime/composables/useAAEphemeral.d.ts +32 -0
  270. package/dist/runtime/composables/useAAEphemeral.js +33 -0
  271. package/dist/runtime/composables/useAAField.d.ts +10 -2
  272. package/dist/runtime/composables/useAAField.js +31 -2
  273. package/dist/runtime/composables/useAAFieldValue.d.ts +26 -0
  274. package/dist/runtime/composables/useAAFieldValue.js +32 -0
  275. package/dist/runtime/composables/useAAFocus.d.ts +68 -0
  276. package/dist/runtime/composables/useAAFocus.js +174 -0
  277. package/dist/runtime/composables/useAAFollowAnchor.d.ts +25 -0
  278. package/dist/runtime/composables/useAAFollowAnchor.js +69 -0
  279. package/dist/runtime/composables/useAAFollowPeer.d.ts +29 -0
  280. package/dist/runtime/composables/useAAFollowPeer.js +75 -0
  281. package/dist/runtime/composables/useAAKey.d.ts +22 -0
  282. package/dist/runtime/composables/useAAKey.js +24 -0
  283. package/dist/runtime/composables/useAAPointer.d.ts +30 -0
  284. package/dist/runtime/composables/useAAPointer.js +53 -0
  285. package/dist/runtime/composables/useAAUIState.d.ts +29 -0
  286. package/dist/runtime/composables/useAAUIState.js +28 -0
  287. package/dist/runtime/composables/useAAViewport.d.ts +22 -0
  288. package/dist/runtime/composables/useAAViewport.js +50 -0
  289. package/dist/runtime/composables/useAbraAdmin.d.ts +54 -0
  290. package/dist/runtime/composables/useAbraAdmin.js +115 -0
  291. package/dist/runtime/composables/useAbracadabraAuth.d.ts +8 -0
  292. package/dist/runtime/composables/useAbracadabraAuth.js +8 -0
  293. package/dist/runtime/composables/useAggregatedPresence.d.ts +23 -0
  294. package/dist/runtime/composables/useAggregatedPresence.js +140 -0
  295. package/dist/runtime/composables/useChat.d.ts +16 -2
  296. package/dist/runtime/composables/useChat.js +257 -66
  297. package/dist/runtime/composables/useChatUsers.d.ts +2 -0
  298. package/dist/runtime/composables/useChatUsers.js +2 -1
  299. package/dist/runtime/composables/useDocLookup.d.ts +4 -0
  300. package/dist/runtime/composables/useDocLookup.js +25 -0
  301. package/dist/runtime/composables/useDocSnapshots.d.ts +79 -0
  302. package/dist/runtime/composables/useDocSnapshots.js +234 -0
  303. package/dist/runtime/composables/useEditorDragHandle.d.ts +7 -0
  304. package/dist/runtime/composables/useEditorDragHandle.js +19 -1
  305. package/dist/runtime/composables/useEditorSuggestions.js +27 -1
  306. package/dist/runtime/composables/useEditorToolbar.js +9 -1
  307. package/dist/runtime/composables/useEmailVerification.d.ts +33 -0
  308. package/dist/runtime/composables/useEmailVerification.js +58 -0
  309. package/dist/runtime/composables/useIdentityDoc.js +0 -3
  310. package/dist/runtime/composables/useItemPresence.d.ts +47 -0
  311. package/dist/runtime/composables/useItemPresence.js +73 -0
  312. package/dist/runtime/composables/useResizableWidth.d.ts +24 -0
  313. package/dist/runtime/composables/useResizableWidth.js +87 -0
  314. package/dist/runtime/composables/useServerInfo.d.ts +17 -2
  315. package/dist/runtime/composables/useServerInfo.js +30 -6
  316. package/dist/runtime/composables/useServerSearch.d.ts +36 -0
  317. package/dist/runtime/composables/useServerSearch.js +91 -0
  318. package/dist/runtime/composables/useServerTrash.d.ts +67 -0
  319. package/dist/runtime/composables/useServerTrash.js +128 -0
  320. package/dist/runtime/composables/useSheetsClipboard.d.ts +42 -0
  321. package/dist/runtime/composables/useSheetsClipboard.js +109 -0
  322. package/dist/runtime/composables/useSheetsFormulas.d.ts +38 -0
  323. package/dist/runtime/composables/useSheetsFormulas.js +725 -0
  324. package/dist/runtime/composables/useSheetsSelection.d.ts +68 -0
  325. package/dist/runtime/composables/useSheetsSelection.js +390 -0
  326. package/dist/runtime/composables/useSheetsView.d.ts +31 -0
  327. package/dist/runtime/composables/useSheetsView.js +77 -0
  328. package/dist/runtime/composables/useSpaceConnections.d.ts +43 -0
  329. package/dist/runtime/composables/useSpaceConnections.js +72 -0
  330. package/dist/runtime/composables/useSpaces.d.ts +1 -3
  331. package/dist/runtime/composables/useSpaces.js +2 -5
  332. package/dist/runtime/composables/useTiptapHistory.d.ts +22 -0
  333. package/dist/runtime/composables/useTiptapHistory.js +12 -0
  334. package/dist/runtime/composables/useTreeExpansion.d.ts +28 -0
  335. package/dist/runtime/composables/useTreeExpansion.js +94 -0
  336. package/dist/runtime/composables/useYDoc.js +12 -1
  337. package/dist/runtime/extensions/button.d.ts +3 -0
  338. package/dist/runtime/extensions/button.js +62 -0
  339. package/dist/runtime/extensions/color-swatch.d.ts +2 -0
  340. package/dist/runtime/extensions/color-swatch.js +34 -0
  341. package/dist/runtime/extensions/diff.d.ts +2 -0
  342. package/dist/runtime/extensions/diff.js +40 -0
  343. package/dist/runtime/extensions/divider.d.ts +2 -0
  344. package/dist/runtime/extensions/divider.js +33 -0
  345. package/dist/runtime/extensions/embed.d.ts +2 -0
  346. package/dist/runtime/extensions/embed.js +40 -0
  347. package/dist/runtime/extensions/figure.d.ts +2 -0
  348. package/dist/runtime/extensions/figure.js +49 -0
  349. package/dist/runtime/extensions/math.d.ts +15 -0
  350. package/dist/runtime/extensions/math.js +66 -0
  351. package/dist/runtime/extensions/progress.d.ts +2 -0
  352. package/dist/runtime/extensions/progress.js +43 -0
  353. package/dist/runtime/extensions/quote.d.ts +2 -0
  354. package/dist/runtime/extensions/quote.js +39 -0
  355. package/dist/runtime/extensions/spoiler.d.ts +2 -0
  356. package/dist/runtime/extensions/spoiler.js +36 -0
  357. package/dist/runtime/extensions/stat.d.ts +3 -0
  358. package/dist/runtime/extensions/stat.js +58 -0
  359. package/dist/runtime/extensions/svg-embed.d.ts +23 -0
  360. package/dist/runtime/extensions/svg-embed.js +33 -0
  361. package/dist/runtime/extensions/video.d.ts +2 -0
  362. package/dist/runtime/extensions/video.js +40 -0
  363. package/dist/runtime/extensions/views/ButtonGroupView.d.vue.ts +4 -0
  364. package/dist/runtime/extensions/views/ButtonGroupView.vue +25 -0
  365. package/dist/runtime/extensions/views/ButtonGroupView.vue.d.ts +4 -0
  366. package/dist/runtime/extensions/views/ButtonView.d.vue.ts +4 -0
  367. package/dist/runtime/extensions/views/ButtonView.vue +171 -0
  368. package/dist/runtime/extensions/views/ButtonView.vue.d.ts +4 -0
  369. package/dist/runtime/extensions/views/ColorSwatchView.d.vue.ts +4 -0
  370. package/dist/runtime/extensions/views/ColorSwatchView.vue +134 -0
  371. package/dist/runtime/extensions/views/ColorSwatchView.vue.d.ts +4 -0
  372. package/dist/runtime/extensions/views/DiffView.d.vue.ts +4 -0
  373. package/dist/runtime/extensions/views/DiffView.vue +163 -0
  374. package/dist/runtime/extensions/views/DiffView.vue.d.ts +4 -0
  375. package/dist/runtime/extensions/views/DividerView.d.vue.ts +4 -0
  376. package/dist/runtime/extensions/views/DividerView.vue +40 -0
  377. package/dist/runtime/extensions/views/DividerView.vue.d.ts +4 -0
  378. package/dist/runtime/extensions/views/EmbedView.d.vue.ts +4 -0
  379. package/dist/runtime/extensions/views/EmbedView.vue +166 -0
  380. package/dist/runtime/extensions/views/EmbedView.vue.d.ts +4 -0
  381. package/dist/runtime/extensions/views/FigureView.d.vue.ts +4 -0
  382. package/dist/runtime/extensions/views/FigureView.vue +122 -0
  383. package/dist/runtime/extensions/views/FigureView.vue.d.ts +4 -0
  384. package/dist/runtime/extensions/views/FileNodeView.vue +21 -24
  385. package/dist/runtime/extensions/views/MathBlockView.d.vue.ts +4 -0
  386. package/dist/runtime/extensions/views/MathBlockView.vue +151 -0
  387. package/dist/runtime/extensions/views/MathBlockView.vue.d.ts +4 -0
  388. package/dist/runtime/extensions/views/MathInlineView.d.vue.ts +4 -0
  389. package/dist/runtime/extensions/views/MathInlineView.vue +149 -0
  390. package/dist/runtime/extensions/views/MathInlineView.vue.d.ts +4 -0
  391. package/dist/runtime/extensions/views/MetaFieldView.vue +1129 -550
  392. package/dist/runtime/extensions/views/ProgressView.d.vue.ts +4 -0
  393. package/dist/runtime/extensions/views/ProgressView.vue +156 -0
  394. package/dist/runtime/extensions/views/ProgressView.vue.d.ts +4 -0
  395. package/dist/runtime/extensions/views/QuoteView.d.vue.ts +4 -0
  396. package/dist/runtime/extensions/views/QuoteView.vue +128 -0
  397. package/dist/runtime/extensions/views/QuoteView.vue.d.ts +4 -0
  398. package/dist/runtime/extensions/views/SpoilerView.d.vue.ts +4 -0
  399. package/dist/runtime/extensions/views/SpoilerView.vue +62 -0
  400. package/dist/runtime/extensions/views/SpoilerView.vue.d.ts +4 -0
  401. package/dist/runtime/extensions/views/StatGroupView.d.vue.ts +4 -0
  402. package/dist/runtime/extensions/views/StatGroupView.vue +25 -0
  403. package/dist/runtime/extensions/views/StatGroupView.vue.d.ts +4 -0
  404. package/dist/runtime/extensions/views/StatView.d.vue.ts +4 -0
  405. package/dist/runtime/extensions/views/StatView.vue +89 -0
  406. package/dist/runtime/extensions/views/StatView.vue.d.ts +4 -0
  407. package/dist/runtime/extensions/views/SvgEmbedView.d.vue.ts +4 -0
  408. package/dist/runtime/extensions/views/SvgEmbedView.vue +120 -0
  409. package/dist/runtime/extensions/views/SvgEmbedView.vue.d.ts +4 -0
  410. package/dist/runtime/extensions/views/VideoView.d.vue.ts +4 -0
  411. package/dist/runtime/extensions/views/VideoView.vue +190 -0
  412. package/dist/runtime/extensions/views/VideoView.vue.d.ts +4 -0
  413. package/dist/runtime/locale.d.ts +133 -0
  414. package/dist/runtime/locale.js +121 -2
  415. package/dist/runtime/plugin-abracadabra.client.js +233 -36
  416. package/dist/runtime/plugin-abracadabra.server.js +0 -1
  417. package/dist/runtime/plugins/core.plugin.js +77 -4
  418. package/dist/runtime/server/plugins/abracadabra-service.js +84 -6
  419. package/dist/runtime/server/utils/rpcHandler.d.ts +74 -0
  420. package/dist/runtime/server/utils/rpcHandler.js +74 -0
  421. package/dist/runtime/server/utils/spaceManager.js +10 -9
  422. package/dist/runtime/types.d.ts +63 -10
  423. package/dist/runtime/utils/awareRingStyle.d.ts +22 -0
  424. package/dist/runtime/utils/awareRingStyle.js +16 -0
  425. package/dist/runtime/utils/caretCoordinates.d.ts +41 -0
  426. package/dist/runtime/utils/caretCoordinates.js +126 -0
  427. package/dist/runtime/utils/content.d.ts +1 -1
  428. package/dist/runtime/utils/docTypes.js +44 -13
  429. package/dist/runtime/utils/domPath.d.ts +42 -0
  430. package/dist/runtime/utils/domPath.js +89 -0
  431. package/dist/runtime/utils/loadKatex.d.ts +1 -0
  432. package/dist/runtime/utils/loadKatex.js +29 -0
  433. package/dist/runtime/utils/lucideIcons.d.ts +16 -0
  434. package/dist/runtime/utils/lucideIcons.js +451 -0
  435. package/dist/runtime/utils/sanitizeSvg.d.ts +19 -0
  436. package/dist/runtime/utils/sanitizeSvg.js +87 -0
  437. package/dist/runtime/utils/time.d.ts +15 -0
  438. package/dist/runtime/utils/time.js +5 -0
  439. package/dist/types.d.mts +4 -0
  440. package/package.json +26 -16
@@ -8,6 +8,10 @@ type __VLS_Props = {
8
8
  name: string;
9
9
  color: string;
10
10
  }>;
11
+ viewers?: Array<{
12
+ name: string;
13
+ color: string;
14
+ }>;
11
15
  };
12
16
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
17
  click: (id: string, label: string) => any;
@@ -1,10 +1,12 @@
1
1
  <script setup>
2
+ import { avatarBorderStyle } from "../../../utils/avatarStyle";
2
3
  defineProps({
3
4
  entry: { type: Object, required: true },
4
5
  left: { type: Number, required: true },
5
6
  color: { type: String, required: true },
6
7
  isDragging: { type: Boolean, required: false },
7
- focusers: { type: Array, required: false }
8
+ focusers: { type: Array, required: false },
9
+ viewers: { type: Array, required: false }
8
10
  });
9
11
  const emit = defineEmits(["pointer-down", "pointer-enter", "pointer-leave", "click"]);
10
12
  </script>
@@ -20,9 +22,24 @@ const emit = defineEmits(["pointer-down", "pointer-enter", "pointer-leave", "cli
20
22
  @pointerleave="emit('pointer-leave')"
21
23
  @click.stop="emit('click', entry.id, entry.label)"
22
24
  >
23
- <!-- Remote hover badge -->
25
+ <!-- Remote viewer cluster (slideover/full open) — overrides hover badge -->
26
+ <div
27
+ v-if="viewers?.length"
28
+ class="absolute -top-2.5 left-0 flex -space-x-1 z-20 pointer-events-none"
29
+ >
30
+ <UAvatar
31
+ v-for="(u, i) in viewers.slice(0, 3)"
32
+ :key="`v-${i}`"
33
+ size="3xs"
34
+ :alt="u.name"
35
+ :title="u.name"
36
+ :style="avatarBorderStyle(u.color, 'zinc')"
37
+ />
38
+ </div>
39
+
40
+ <!-- Remote hover badge (only when no viewer is shown) -->
24
41
  <span
25
- v-if="focusers?.length"
42
+ v-else-if="focusers?.length"
26
43
  class="absolute -top-3 left-0 text-[10px] px-1 rounded text-white leading-tight z-10 pointer-events-none"
27
44
  :style="{ backgroundColor: focusers[0].color }"
28
45
  >
@@ -34,7 +51,7 @@ const emit = defineEmits(["pointer-down", "pointer-enter", "pointer-leave", "cli
34
51
  class="w-4 h-4 rotate-45 rounded-sm shrink-0"
35
52
  :style="{
36
53
  background: color,
37
- ...focusers?.length ? { outline: `2px solid ${focusers[0].color}`, outlineOffset: '1px' } : {}
54
+ ...viewers?.length ? { outline: `4px solid ${viewers[0].color}`, outlineOffset: '1px' } : focusers?.length ? { outline: `2px solid ${focusers[0].color}`, outlineOffset: '1px' } : {}
38
55
  }"
39
56
  />
40
57
 
@@ -8,6 +8,10 @@ type __VLS_Props = {
8
8
  name: string;
9
9
  color: string;
10
10
  }>;
11
+ viewers?: Array<{
12
+ name: string;
13
+ color: string;
14
+ }>;
11
15
  };
12
16
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
17
  click: (id: string, label: string) => any;
@@ -12,18 +12,18 @@ type __VLS_Props = {
12
12
  labels?: Partial<AbracadabraLocale['renderers']['timeline']>;
13
13
  };
14
14
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
- today: () => any;
16
15
  "zoom-in": () => any;
17
16
  "zoom-out": () => any;
17
+ today: () => any;
18
18
  "go-to-date": (date: string) => any;
19
19
  "add-epic": () => any;
20
20
  "add-milestone": () => any;
21
21
  "toggle-labels": () => any;
22
22
  fit: () => any;
23
23
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
24
- onToday?: (() => any) | undefined;
25
24
  "onZoom-in"?: (() => any) | undefined;
26
25
  "onZoom-out"?: (() => any) | undefined;
26
+ onToday?: (() => any) | undefined;
27
27
  "onGo-to-date"?: ((date: string) => any) | undefined;
28
28
  "onAdd-epic"?: (() => any) | undefined;
29
29
  "onAdd-milestone"?: (() => any) | undefined;
@@ -12,18 +12,18 @@ type __VLS_Props = {
12
12
  labels?: Partial<AbracadabraLocale['renderers']['timeline']>;
13
13
  };
14
14
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
- today: () => any;
16
15
  "zoom-in": () => any;
17
16
  "zoom-out": () => any;
17
+ today: () => any;
18
18
  "go-to-date": (date: string) => any;
19
19
  "add-epic": () => any;
20
20
  "add-milestone": () => any;
21
21
  "toggle-labels": () => any;
22
22
  fit: () => any;
23
23
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
24
- onToday?: (() => any) | undefined;
25
24
  "onZoom-in"?: (() => any) | undefined;
26
25
  "onZoom-out"?: (() => any) | undefined;
26
+ onToday?: (() => any) | undefined;
27
27
  "onGo-to-date"?: ((date: string) => any) | undefined;
28
28
  "onAdd-epic"?: (() => any) | undefined;
29
29
  "onAdd-milestone"?: (() => any) | undefined;
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import { ref } from "vue";
3
3
  import { useSpaces } from "../../composables/useSpaces";
4
- const { spaces, spacesEnabled, currentSpace, create, remove, switchTo, loading, error } = useSpaces();
4
+ const { spaces, currentSpace, create, remove, switchTo, loading, error } = useSpaces();
5
5
  const showCreateForm = ref(false);
6
6
  const newName = ref("");
7
7
  const newDescription = ref("");
@@ -59,16 +59,6 @@ async function handleDelete(id) {
59
59
  />
60
60
  </div>
61
61
 
62
- <UAlert
63
- v-if="!spacesEnabled"
64
- color="info"
65
- variant="soft"
66
- icon="i-lucide-info"
67
- title="Spaces not enabled"
68
- description="This server does not support multiple spaces."
69
- class="mb-4"
70
- />
71
-
72
62
  <UAlert
73
63
  v-if="error"
74
64
  color="error"
@@ -115,7 +105,7 @@ async function handleDelete(id) {
115
105
  <div class="flex flex-col gap-1">
116
106
  <div
117
107
  v-for="space in spaces"
118
- :key="space.doc_id"
108
+ :key="space.id"
119
109
  class="flex items-center gap-3 p-3 rounded-lg border border-(--ui-border) hover:bg-(--ui-bg-elevated)/50 transition-colors"
120
110
  >
121
111
  <UIcon
@@ -134,19 +124,12 @@ async function handleDelete(id) {
134
124
  </p>
135
125
  </div>
136
126
  <UBadge
137
- v-if="currentSpace?.doc_id === space.doc_id"
127
+ v-if="currentSpace?.id === space.id"
138
128
  color="primary"
139
129
  variant="subtle"
140
130
  label="Active"
141
131
  size="xs"
142
132
  />
143
- <UBadge
144
- v-if="space.is_hub"
145
- color="info"
146
- variant="subtle"
147
- label="Hub"
148
- size="xs"
149
- />
150
133
  <UBadge
151
134
  :color="space.visibility === 'private' ? 'neutral' : 'success'"
152
135
  variant="subtle"
@@ -155,20 +138,19 @@ async function handleDelete(id) {
155
138
  />
156
139
  <div class="flex gap-1 shrink-0">
157
140
  <UButton
158
- v-if="currentSpace?.doc_id !== space.doc_id"
141
+ v-if="currentSpace?.id !== space.id"
159
142
  label="Switch"
160
143
  size="xs"
161
144
  color="neutral"
162
145
  variant="outline"
163
- @click="switchTo(space.doc_id)"
146
+ @click="switchTo(space.id)"
164
147
  />
165
148
  <UButton
166
- v-if="!space.is_hub"
167
149
  icon="i-lucide-trash-2"
168
150
  size="xs"
169
- :color="confirmDeleteId === space.doc_id ? 'error' : 'neutral'"
151
+ :color="confirmDeleteId === space.id ? 'error' : 'neutral'"
170
152
  variant="ghost"
171
- @click="handleDelete(space.doc_id)"
153
+ @click="handleDelete(space.id)"
172
154
  />
173
155
  </div>
174
156
  </div>
@@ -107,11 +107,11 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
107
107
  "onFork-snapshot"?: ((version: number) => any) | undefined;
108
108
  "onLoad-more-snapshots"?: (() => any) | undefined;
109
109
  }>, {
110
+ snapshots: SnapshotMeta[];
110
111
  userName: string;
111
112
  docMeta: DocPageMeta | null;
112
- userAvatarStyle: string;
113
113
  effectiveRole: string | null;
114
- isSyncing: boolean;
114
+ userAvatarStyle: string;
115
115
  isOwner: boolean;
116
116
  permissions: PermissionEntry[];
117
117
  loadingPermissions: boolean;
@@ -121,10 +121,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
121
121
  syncStatusIcon: string;
122
122
  syncStatusColor: string;
123
123
  syncStatusLabel: string;
124
+ isSyncing: boolean;
124
125
  lastSyncedLabel: string | null;
125
126
  syncError: string | null;
126
127
  docTypeKey: string;
127
- snapshots: SnapshotMeta[];
128
128
  loadingSnapshots: boolean;
129
129
  snapshotsError: string | null;
130
130
  hasMoreSnapshots: boolean;
@@ -107,11 +107,11 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
107
107
  "onFork-snapshot"?: ((version: number) => any) | undefined;
108
108
  "onLoad-more-snapshots"?: (() => any) | undefined;
109
109
  }>, {
110
+ snapshots: SnapshotMeta[];
110
111
  userName: string;
111
112
  docMeta: DocPageMeta | null;
112
- userAvatarStyle: string;
113
113
  effectiveRole: string | null;
114
- isSyncing: boolean;
114
+ userAvatarStyle: string;
115
115
  isOwner: boolean;
116
116
  permissions: PermissionEntry[];
117
117
  loadingPermissions: boolean;
@@ -121,10 +121,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
121
121
  syncStatusIcon: string;
122
122
  syncStatusColor: string;
123
123
  syncStatusLabel: string;
124
+ isSyncing: boolean;
124
125
  lastSyncedLabel: string | null;
125
126
  syncError: string | null;
126
127
  docTypeKey: string;
127
- snapshots: SnapshotMeta[];
128
128
  loadingSnapshots: boolean;
129
129
  snapshotsError: string | null;
130
130
  hasMoreSnapshots: boolean;
@@ -15,8 +15,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
15
15
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
16
16
  onClick?: (() => any) | undefined;
17
17
  }>, {
18
- syncing: boolean;
19
18
  progress: number;
19
+ syncing: boolean;
20
20
  collapsed: boolean;
21
21
  errorCount: number;
22
22
  pendingUploads: number;
@@ -15,8 +15,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
15
15
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
16
16
  onClick?: (() => any) | undefined;
17
17
  }>, {
18
- syncing: boolean;
19
18
  progress: number;
19
+ syncing: boolean;
20
20
  collapsed: boolean;
21
21
  errorCount: number;
22
22
  pendingUploads: number;
@@ -12,13 +12,13 @@ type __VLS_Props = {
12
12
  extraItems?: DropdownMenuItem[][];
13
13
  };
14
14
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
- logout: () => any;
16
15
  "open-settings": () => any;
17
16
  "open-account": () => any;
17
+ logout: () => any;
18
18
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
19
- onLogout?: (() => any) | undefined;
20
19
  "onOpen-settings"?: (() => any) | undefined;
21
20
  "onOpen-account"?: (() => any) | undefined;
21
+ onLogout?: (() => any) | undefined;
22
22
  }>, {
23
23
  color: string;
24
24
  collapsed: boolean;
@@ -12,13 +12,13 @@ type __VLS_Props = {
12
12
  extraItems?: DropdownMenuItem[][];
13
13
  };
14
14
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
- logout: () => any;
16
15
  "open-settings": () => any;
17
16
  "open-account": () => any;
17
+ logout: () => any;
18
18
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
19
- onLogout?: (() => any) | undefined;
20
19
  "onOpen-settings"?: (() => any) | undefined;
21
20
  "onOpen-account"?: (() => any) | undefined;
21
+ onLogout?: (() => any) | undefined;
22
22
  }>, {
23
23
  color: string;
24
24
  collapsed: boolean;
@@ -78,10 +78,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
78
78
  currentColor: string;
79
79
  isClaimed: boolean;
80
80
  avatarStyle: string;
81
+ connectionError: string;
81
82
  colors: string[];
82
83
  neutrals: string[];
83
84
  currentNeutral: string;
84
- connectionError: string;
85
85
  claimLoading: boolean;
86
86
  claimError: string | null;
87
87
  claimSuccess: boolean;
@@ -78,10 +78,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
78
78
  currentColor: string;
79
79
  isClaimed: boolean;
80
80
  avatarStyle: string;
81
+ connectionError: string;
81
82
  colors: string[];
82
83
  neutrals: string[];
83
84
  currentNeutral: string;
84
- connectionError: string;
85
85
  claimLoading: boolean;
86
86
  claimError: string | null;
87
87
  claimSuccess: boolean;
@@ -0,0 +1,29 @@
1
+ import { type Ref } from 'vue';
2
+ import type { MaybeRefOrGetter } from 'vue';
3
+ /**
4
+ * Per-peer text-input caret ranges — the building block under the `peers`
5
+ * prop on `<AInput>` / `<ATextarea>`.
6
+ *
7
+ * Built on top of `useAAEphemeral`. The local element's `selectionStart`
8
+ * and `selectionEnd` are written into the awareness slot whenever the
9
+ * element gains focus or its selection changes; clear on blur. Every other
10
+ * peer's caret is exposed as a typed list ready to render as a coloured
11
+ * label inside the input.
12
+ *
13
+ * Awareness already RAF-throttles emitted updates downstream; we additionally
14
+ * coalesce write-side via the natural `selectionchange` cadence so a fast
15
+ * cursor still produces at most one frame of work per render cycle.
16
+ */
17
+ export interface PeerCaret {
18
+ clientId: number;
19
+ start: number;
20
+ end: number;
21
+ user?: {
22
+ name?: string;
23
+ color?: string;
24
+ publicKey?: string;
25
+ };
26
+ }
27
+ export declare function useAACaret(fieldKey: MaybeRefOrGetter<string>, elementRef: Ref<HTMLInputElement | HTMLTextAreaElement | null | undefined>): {
28
+ carets: import("vue").ComputedRef<PeerCaret[]>;
29
+ };
@@ -0,0 +1,64 @@
1
+ import { computed, onScopeDispose, watch } from "vue";
2
+ import { useAAEphemeral } from "./useAAEphemeral.js";
3
+ export function useAACaret(fieldKey, elementRef) {
4
+ const { peers, setLocal } = useAAEphemeral(fieldKey);
5
+ let attached = null;
6
+ function publish() {
7
+ if (!attached) return;
8
+ const start = attached.selectionStart;
9
+ const end = attached.selectionEnd;
10
+ if (start == null || end == null) return;
11
+ setLocal({ start, end });
12
+ }
13
+ function clear() {
14
+ setLocal(null);
15
+ }
16
+ function onSelectionChange() {
17
+ if (!attached) return;
18
+ if (document.activeElement !== attached) return;
19
+ publish();
20
+ }
21
+ function publishSoon() {
22
+ queueMicrotask(publish);
23
+ }
24
+ function attach(el) {
25
+ if (attached === el) return;
26
+ detach();
27
+ attached = el;
28
+ el.addEventListener("focus", publish);
29
+ el.addEventListener("blur", clear);
30
+ el.addEventListener("keydown", publishSoon);
31
+ el.addEventListener("keyup", publish);
32
+ el.addEventListener("mouseup", publish);
33
+ el.addEventListener("mousedown", publishSoon);
34
+ el.addEventListener("input", publish);
35
+ document.addEventListener("selectionchange", onSelectionChange);
36
+ }
37
+ function detach() {
38
+ if (!attached) return;
39
+ attached.removeEventListener("focus", publish);
40
+ attached.removeEventListener("blur", clear);
41
+ attached.removeEventListener("keydown", publishSoon);
42
+ attached.removeEventListener("keyup", publish);
43
+ attached.removeEventListener("mouseup", publish);
44
+ attached.removeEventListener("mousedown", publishSoon);
45
+ attached.removeEventListener("input", publish);
46
+ document.removeEventListener("selectionchange", onSelectionChange);
47
+ attached = null;
48
+ clear();
49
+ }
50
+ watch(elementRef, (el) => {
51
+ if (el) attach(el);
52
+ else detach();
53
+ }, { immediate: true, flush: "post" });
54
+ onScopeDispose(detach);
55
+ const carets = computed(
56
+ () => peers.value.map((p) => ({
57
+ clientId: p.clientId,
58
+ start: p.value.start,
59
+ end: p.value.end,
60
+ user: p.user
61
+ }))
62
+ );
63
+ return { carets };
64
+ }
@@ -0,0 +1,32 @@
1
+ import type { MaybeRefOrGetter } from 'vue';
2
+ /**
3
+ * Per-peer ephemeral UI state — the building block under the `peers` prop on
4
+ * every aware component.
5
+ *
6
+ * Each peer writes its value into a *namespaced slot* on its own awareness
7
+ * record (`peer:<fieldKey>`), so writes never collide across peers. Reads
8
+ * return every peer's current value, excluding the local user, with their
9
+ * `user` info already attached.
10
+ *
11
+ * Use cases:
12
+ * - text input caret ranges (one per peer)
13
+ * - currently-highlighted dropdown option (one per peer)
14
+ * - drag delta on a slider thumb (one per peer)
15
+ * - free-floating mouse cursor coords (one per peer)
16
+ *
17
+ * Awareness already RAF-throttles its `change` event in `useAwareness`, so
18
+ * even a 60Hz writer doesn't storm Vue render.
19
+ */
20
+ export interface PeerValue<T> {
21
+ clientId: number;
22
+ value: T;
23
+ user?: {
24
+ name?: string;
25
+ color?: string;
26
+ publicKey?: string;
27
+ };
28
+ }
29
+ export declare function useAAEphemeral<T = unknown>(fieldKey: MaybeRefOrGetter<string>): {
30
+ peers: import("vue").ComputedRef<PeerValue<T>[]>;
31
+ setLocal: (value: T | null) => void;
32
+ };
@@ -0,0 +1,33 @@
1
+ import { computed } from "vue";
2
+ import { useAwareness } from "./useAwareness.js";
3
+ import { useAbracadabra } from "./useAbracadabra.js";
4
+ function resolveKey(fieldKey) {
5
+ if (typeof fieldKey === "function") return fieldKey();
6
+ if (fieldKey && typeof fieldKey === "object" && "value" in fieldKey) return fieldKey.value;
7
+ return fieldKey;
8
+ }
9
+ export function useAAEphemeral(fieldKey) {
10
+ const { states, setField } = useAwareness();
11
+ const { provider } = useAbracadabra();
12
+ const slot = computed(() => `peer:${resolveKey(fieldKey)}`);
13
+ function setLocal(value) {
14
+ setField(slot.value, value);
15
+ }
16
+ const peers = computed(() => {
17
+ const out = [];
18
+ const key = slot.value;
19
+ const localId = provider.value?.awareness?.clientID;
20
+ for (const [clientId, state] of states.value.entries()) {
21
+ if (clientId === localId) continue;
22
+ const v = state[key];
23
+ if (v === null || v === void 0) continue;
24
+ out.push({
25
+ clientId,
26
+ value: v,
27
+ user: state.user
28
+ });
29
+ }
30
+ return out;
31
+ });
32
+ return { peers, setLocal };
33
+ }
@@ -1,4 +1,4 @@
1
- import type { MaybeRef } from 'vue';
1
+ import type { MaybeRefOrGetter } from 'vue';
2
2
  import type { AwarenessPeer } from '../types.js';
3
3
  /**
4
4
  * Per-element interaction awareness.
@@ -16,11 +16,13 @@ import type { AwarenessPeer } from '../types.js';
16
16
  *
17
17
  * Field convention: "{scope}:{element-id}", e.g. "doc:toolbar:bold", "settings:save-btn"
18
18
  */
19
- export declare function useAAField(key: MaybeRef<string>): {
19
+ export declare function useAAField(key: MaybeRefOrGetter<string>): {
20
20
  hoverers: import("vue").ComputedRef<AwarenessPeer[]>;
21
21
  pressers: import("vue").ComputedRef<AwarenessPeer[]>;
22
22
  focusers: import("vue").ComputedRef<AwarenessPeer[]>;
23
23
  hasRemoteActivity: import("vue").ComputedRef<boolean>;
24
+ localPress: import("vue").Ref<boolean, boolean>;
25
+ isPressed: import("vue").ComputedRef<boolean>;
24
26
  handlers: {
25
27
  mouseenter: () => void;
26
28
  mouseleave: () => void;
@@ -33,6 +35,12 @@ export declare function useAAField(key: MaybeRef<string>): {
33
35
  mouseenter: () => void;
34
36
  mouseleave: () => void;
35
37
  };
38
+ hoverPressHandlers: {
39
+ mouseenter: () => void;
40
+ mouseleave: () => void;
41
+ mousedown: () => void;
42
+ mouseup: () => void;
43
+ };
36
44
  onMouseenter: () => void;
37
45
  onMouseleave: () => void;
38
46
  onMousedown: () => void;
@@ -1,10 +1,12 @@
1
- import { computed, isRef } from "vue";
1
+ import { computed, isRef, onScopeDispose, ref } from "vue";
2
2
  import { useAwareness } from "./useAwareness.js";
3
3
  import { useAwarenessPeers } from "./useAwarenessPeers.js";
4
4
  export function useAAField(key) {
5
5
  const { setField } = useAwareness();
6
6
  const { peers } = useAwarenessPeers();
7
- const fieldKey = computed(() => isRef(key) ? key.value : key);
7
+ const fieldKey = computed(
8
+ () => typeof key === "function" ? key() : isRef(key) ? key.value : key
9
+ );
8
10
  const hoverers = computed(
9
11
  () => peers.value.filter((p) => p.hover === fieldKey.value)
10
12
  );
@@ -17,6 +19,21 @@ export function useAAField(key) {
17
19
  const hasRemoteActivity = computed(
18
20
  () => hoverers.value.length > 0 || pressers.value.length > 0 || focusers.value.length > 0
19
21
  );
22
+ const localPress = ref(false);
23
+ function releaseLocalPress() {
24
+ if (!localPress.value) return;
25
+ localPress.value = false;
26
+ }
27
+ if (typeof window !== "undefined") {
28
+ window.addEventListener("pointerup", releaseLocalPress);
29
+ window.addEventListener("pointercancel", releaseLocalPress);
30
+ window.addEventListener("blur", releaseLocalPress);
31
+ onScopeDispose(() => {
32
+ window.removeEventListener("pointerup", releaseLocalPress);
33
+ window.removeEventListener("pointercancel", releaseLocalPress);
34
+ window.removeEventListener("blur", releaseLocalPress);
35
+ });
36
+ }
20
37
  function onMouseenter() {
21
38
  setField("hover", fieldKey.value);
22
39
  }
@@ -24,9 +41,11 @@ export function useAAField(key) {
24
41
  setField("hover", null);
25
42
  }
26
43
  function onMousedown() {
44
+ localPress.value = true;
27
45
  setField("press", fieldKey.value);
28
46
  }
29
47
  function onMouseup() {
48
+ localPress.value = false;
30
49
  setField("press", null);
31
50
  }
32
51
  function onFocus() {
@@ -35,6 +54,7 @@ export function useAAField(key) {
35
54
  function onBlur() {
36
55
  setField("focus", null);
37
56
  }
57
+ const isPressed = computed(() => localPress.value || pressers.value.length > 0);
38
58
  const handlers = {
39
59
  mouseenter: onMouseenter,
40
60
  mouseleave: onMouseleave,
@@ -47,13 +67,22 @@ export function useAAField(key) {
47
67
  mouseenter: onMouseenter,
48
68
  mouseleave: onMouseleave
49
69
  };
70
+ const hoverPressHandlers = {
71
+ mouseenter: onMouseenter,
72
+ mouseleave: onMouseleave,
73
+ mousedown: onMousedown,
74
+ mouseup: onMouseup
75
+ };
50
76
  return {
51
77
  hoverers,
52
78
  pressers,
53
79
  focusers,
54
80
  hasRemoteActivity,
81
+ localPress,
82
+ isPressed,
55
83
  handlers,
56
84
  hoverHandlers,
85
+ hoverPressHandlers,
57
86
  onMouseenter,
58
87
  onMouseleave,
59
88
  onMousedown,
@@ -0,0 +1,26 @@
1
+ import { type WritableComputedRef } from 'vue';
2
+ /**
3
+ * Optional collaborative value-sync layer for <AInput>, <ATextarea>, <ASelect>,
4
+ * and other Aware form components.
5
+ *
6
+ * Stores a single value keyed by `fieldKey` on a shared Y.Map called
7
+ * `aware-fields` on the root Y.Doc. All connected peers see edits in real time.
8
+ *
9
+ * Usage policy inside Aware components:
10
+ * - If consumer passes their own `v-model`, that takes precedence — sync is
11
+ * skipped unless `sync` is explicitly true.
12
+ * - When `sync` is true (or no v-model is provided), the composable produces
13
+ * a writable computed that reads/writes the Y.Map.
14
+ *
15
+ * Writes are debounced ~120ms to avoid storming the doc with every keystroke
16
+ * while still feeling immediate.
17
+ */
18
+ export declare function useAAFieldValue<T = unknown>(fieldKey: () => string, options?: {
19
+ debounceMs?: number;
20
+ defaultValue?: T;
21
+ }): WritableComputedRef<T | undefined>;
22
+ /**
23
+ * Marker watcher: when `fieldKey` changes (rare), flush immediately
24
+ * to avoid writing the new value to the OLD key.
25
+ */
26
+ export declare function watchFieldKey(fieldKey: () => string, onChange: (key: string, prev: string) => void): void;
@@ -0,0 +1,32 @@
1
+ import { computed, watch } from "vue";
2
+ import { useAbracadabra } from "./useAbracadabra.js";
3
+ import { useSyncedMap } from "./useYDoc.js";
4
+ export function useAAFieldValue(fieldKey, options = {}) {
5
+ const { doc } = useAbracadabra();
6
+ const { data, set } = useSyncedMap(doc, "aware-fields");
7
+ const debounceMs = options.debounceMs ?? 120;
8
+ let timer = null;
9
+ let pending;
10
+ const flush = () => {
11
+ timer = null;
12
+ if (pending !== void 0) {
13
+ set(fieldKey(), pending);
14
+ } else {
15
+ set(fieldKey(), "");
16
+ }
17
+ };
18
+ return computed({
19
+ get() {
20
+ const v = data[fieldKey()];
21
+ return v === void 0 ? options.defaultValue : v;
22
+ },
23
+ set(value) {
24
+ pending = value;
25
+ if (timer) clearTimeout(timer);
26
+ timer = setTimeout(flush, debounceMs);
27
+ }
28
+ });
29
+ }
30
+ export function watchFieldKey(fieldKey, onChange) {
31
+ watch(() => fieldKey(), (k, prev) => onChange(k, prev));
32
+ }