@abraca/nuxt 1.9.1 → 2.0.0

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 (434) 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 +153 -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/aware/AAccordion.d.vue.ts +25 -0
  37. package/dist/runtime/components/aware/AAccordion.vue +107 -0
  38. package/dist/runtime/components/aware/AAccordion.vue.d.ts +25 -0
  39. package/dist/runtime/components/aware/AArea.vue +24 -11
  40. package/dist/runtime/components/aware/AAvatar.d.vue.ts +6 -0
  41. package/dist/runtime/components/aware/AAvatar.vue +33 -3
  42. package/dist/runtime/components/aware/AAvatar.vue.d.ts +6 -0
  43. package/dist/runtime/components/aware/AAvatarGroup.d.vue.ts +10 -0
  44. package/dist/runtime/components/aware/AAvatarGroup.vue +30 -0
  45. package/dist/runtime/components/aware/AAvatarGroup.vue.d.ts +10 -0
  46. package/dist/runtime/components/aware/AButton.d.vue.ts +4 -2
  47. package/dist/runtime/components/aware/AButton.vue +46 -14
  48. package/dist/runtime/components/aware/AButton.vue.d.ts +4 -2
  49. package/dist/runtime/components/aware/ACalendar.d.vue.ts +17 -0
  50. package/dist/runtime/components/aware/ACalendar.vue +145 -0
  51. package/dist/runtime/components/aware/ACalendar.vue.d.ts +17 -0
  52. package/dist/runtime/components/aware/ACarousel.d.vue.ts +25 -0
  53. package/dist/runtime/components/aware/ACarousel.vue +39 -0
  54. package/dist/runtime/components/aware/ACarousel.vue.d.ts +25 -0
  55. package/dist/runtime/components/aware/ACheckbox.d.vue.ts +11 -0
  56. package/dist/runtime/components/aware/ACheckbox.vue +74 -0
  57. package/dist/runtime/components/aware/ACheckbox.vue.d.ts +11 -0
  58. package/dist/runtime/components/aware/ACheckboxGroup.d.vue.ts +27 -0
  59. package/dist/runtime/components/aware/ACheckboxGroup.vue +79 -0
  60. package/dist/runtime/components/aware/ACheckboxGroup.vue.d.ts +27 -0
  61. package/dist/runtime/components/aware/ACollapsible.d.vue.ts +25 -0
  62. package/dist/runtime/components/aware/ACollapsible.vue +45 -0
  63. package/dist/runtime/components/aware/ACollapsible.vue.d.ts +25 -0
  64. package/dist/runtime/components/aware/AColorPicker.d.vue.ts +15 -0
  65. package/dist/runtime/components/aware/AColorPicker.vue +48 -0
  66. package/dist/runtime/components/aware/AColorPicker.vue.d.ts +15 -0
  67. package/dist/runtime/components/aware/ACommandPalette.d.vue.ts +33 -0
  68. package/dist/runtime/components/aware/ACommandPalette.vue +123 -0
  69. package/dist/runtime/components/aware/ACommandPalette.vue.d.ts +33 -0
  70. package/dist/runtime/components/aware/AContextMenu.d.vue.ts +25 -0
  71. package/dist/runtime/components/aware/AContextMenu.vue +63 -0
  72. package/dist/runtime/components/aware/AContextMenu.vue.d.ts +25 -0
  73. package/dist/runtime/components/aware/ADrawer.d.vue.ts +25 -0
  74. package/dist/runtime/components/aware/ADrawer.vue +57 -0
  75. package/dist/runtime/components/aware/ADrawer.vue.d.ts +25 -0
  76. package/dist/runtime/components/aware/ADropdownMenu.d.vue.ts +25 -0
  77. package/dist/runtime/components/aware/ADropdownMenu.vue +63 -0
  78. package/dist/runtime/components/aware/ADropdownMenu.vue.d.ts +25 -0
  79. package/dist/runtime/components/aware/AFileUpload.d.vue.ts +27 -0
  80. package/dist/runtime/components/aware/AFileUpload.vue +67 -0
  81. package/dist/runtime/components/aware/AFileUpload.vue.d.ts +27 -0
  82. package/dist/runtime/components/aware/AFollowBar.d.vue.ts +21 -0
  83. package/dist/runtime/components/aware/AFollowBar.vue +62 -0
  84. package/dist/runtime/components/aware/AFollowBar.vue.d.ts +21 -0
  85. package/dist/runtime/components/aware/AFollowScroll.d.vue.ts +7 -0
  86. package/dist/runtime/components/aware/AFollowScroll.vue +17 -0
  87. package/dist/runtime/components/aware/AFollowScroll.vue.d.ts +7 -0
  88. package/dist/runtime/components/aware/AFormSync.d.vue.ts +21 -0
  89. package/dist/runtime/components/aware/AFormSync.vue +52 -0
  90. package/dist/runtime/components/aware/AFormSync.vue.d.ts +21 -0
  91. package/dist/runtime/components/aware/AGlobalFocusLayer.d.vue.ts +3 -0
  92. package/dist/runtime/components/aware/AGlobalFocusLayer.vue +90 -0
  93. package/dist/runtime/components/aware/AGlobalFocusLayer.vue.d.ts +3 -0
  94. package/dist/runtime/components/aware/AHoverItem.d.vue.ts +27 -0
  95. package/dist/runtime/components/aware/AHoverItem.vue +124 -0
  96. package/dist/runtime/components/aware/AHoverItem.vue.d.ts +27 -0
  97. package/dist/runtime/components/aware/AInput.d.vue.ts +12 -2
  98. package/dist/runtime/components/aware/AInput.vue +72 -19
  99. package/dist/runtime/components/aware/AInput.vue.d.ts +12 -2
  100. package/dist/runtime/components/aware/AInputMenu.d.vue.ts +17 -0
  101. package/dist/runtime/components/aware/AInputMenu.vue +138 -0
  102. package/dist/runtime/components/aware/AInputMenu.vue.d.ts +17 -0
  103. package/dist/runtime/components/aware/AInputNumber.d.vue.ts +15 -0
  104. package/dist/runtime/components/aware/AInputNumber.vue +67 -0
  105. package/dist/runtime/components/aware/AInputNumber.vue.d.ts +15 -0
  106. package/dist/runtime/components/aware/AInputTags.d.vue.ts +15 -0
  107. package/dist/runtime/components/aware/AInputTags.vue +67 -0
  108. package/dist/runtime/components/aware/AInputTags.vue.d.ts +15 -0
  109. package/dist/runtime/components/aware/AKeyHint.d.vue.ts +3 -0
  110. package/dist/runtime/components/aware/AKeyHint.vue +23 -0
  111. package/dist/runtime/components/aware/AKeyHint.vue.d.ts +3 -0
  112. package/dist/runtime/components/aware/AMedia.d.vue.ts +19 -0
  113. package/dist/runtime/components/aware/AMedia.vue +85 -0
  114. package/dist/runtime/components/aware/AMedia.vue.d.ts +19 -0
  115. package/dist/runtime/components/aware/AModal.d.vue.ts +33 -0
  116. package/dist/runtime/components/aware/AModal.vue +110 -0
  117. package/dist/runtime/components/aware/AModal.vue.d.ts +33 -0
  118. package/dist/runtime/components/aware/ANavigationMenu.d.vue.ts +25 -0
  119. package/dist/runtime/components/aware/ANavigationMenu.vue +82 -0
  120. package/dist/runtime/components/aware/ANavigationMenu.vue.d.ts +25 -0
  121. package/dist/runtime/components/aware/APagination.d.vue.ts +13 -0
  122. package/dist/runtime/components/aware/APagination.vue +53 -0
  123. package/dist/runtime/components/aware/APagination.vue.d.ts +13 -0
  124. package/dist/runtime/components/aware/APeerCaretLayer.d.vue.ts +10 -0
  125. package/dist/runtime/components/aware/APeerCaretLayer.vue +133 -0
  126. package/dist/runtime/components/aware/APeerCaretLayer.vue.d.ts +10 -0
  127. package/dist/runtime/components/aware/APinInput.d.vue.ts +15 -0
  128. package/dist/runtime/components/aware/APinInput.vue +48 -0
  129. package/dist/runtime/components/aware/APinInput.vue.d.ts +15 -0
  130. package/dist/runtime/components/aware/APopover.d.vue.ts +25 -0
  131. package/dist/runtime/components/aware/APopover.vue +57 -0
  132. package/dist/runtime/components/aware/APopover.vue.d.ts +25 -0
  133. package/dist/runtime/components/aware/APresenceBlobs.d.vue.ts +3 -0
  134. package/dist/runtime/components/aware/APresenceBlobs.vue +69 -0
  135. package/dist/runtime/components/aware/APresenceBlobs.vue.d.ts +3 -0
  136. package/dist/runtime/components/aware/APresenceCursors.d.vue.ts +20 -0
  137. package/dist/runtime/components/aware/APresenceCursors.vue +47 -0
  138. package/dist/runtime/components/aware/APresenceCursors.vue.d.ts +20 -0
  139. package/dist/runtime/components/aware/ARadioGroup.d.vue.ts +27 -0
  140. package/dist/runtime/components/aware/ARadioGroup.vue +86 -0
  141. package/dist/runtime/components/aware/ARadioGroup.vue.d.ts +27 -0
  142. package/dist/runtime/components/aware/AScroll.d.vue.ts +25 -0
  143. package/dist/runtime/components/aware/AScroll.vue +87 -0
  144. package/dist/runtime/components/aware/AScroll.vue.d.ts +25 -0
  145. package/dist/runtime/components/aware/ASelect.d.vue.ts +12 -2
  146. package/dist/runtime/components/aware/ASelect.vue +146 -22
  147. package/dist/runtime/components/aware/ASelect.vue.d.ts +12 -2
  148. package/dist/runtime/components/aware/ASelectMenu.d.vue.ts +17 -0
  149. package/dist/runtime/components/aware/ASelectMenu.vue +139 -0
  150. package/dist/runtime/components/aware/ASelectMenu.vue.d.ts +17 -0
  151. package/dist/runtime/components/aware/ASlideover.d.vue.ts +33 -0
  152. package/dist/runtime/components/aware/ASlideover.vue +110 -0
  153. package/dist/runtime/components/aware/ASlideover.vue.d.ts +33 -0
  154. package/dist/runtime/components/aware/ASlider.d.vue.ts +19 -0
  155. package/dist/runtime/components/aware/ASlider.vue +77 -0
  156. package/dist/runtime/components/aware/ASlider.vue.d.ts +19 -0
  157. package/dist/runtime/components/aware/AStepper.d.vue.ts +25 -0
  158. package/dist/runtime/components/aware/AStepper.vue +82 -0
  159. package/dist/runtime/components/aware/AStepper.vue.d.ts +25 -0
  160. package/dist/runtime/components/aware/ASwitch.d.vue.ts +11 -0
  161. package/dist/runtime/components/aware/ASwitch.vue +75 -0
  162. package/dist/runtime/components/aware/ASwitch.vue.d.ts +11 -0
  163. package/dist/runtime/components/aware/ATable.d.vue.ts +23 -0
  164. package/dist/runtime/components/aware/ATable.vue +97 -0
  165. package/dist/runtime/components/aware/ATable.vue.d.ts +23 -0
  166. package/dist/runtime/components/aware/ATabs.d.vue.ts +27 -0
  167. package/dist/runtime/components/aware/ATabs.vue +128 -0
  168. package/dist/runtime/components/aware/ATabs.vue.d.ts +27 -0
  169. package/dist/runtime/components/aware/ATextarea.d.vue.ts +12 -2
  170. package/dist/runtime/components/aware/ATextarea.vue +72 -19
  171. package/dist/runtime/components/aware/ATextarea.vue.d.ts +12 -2
  172. package/dist/runtime/components/aware/AToggleGroup.d.vue.ts +27 -0
  173. package/dist/runtime/components/aware/AToggleGroup.vue +79 -0
  174. package/dist/runtime/components/aware/AToggleGroup.vue.d.ts +27 -0
  175. package/dist/runtime/components/aware/ATree.d.vue.ts +27 -0
  176. package/dist/runtime/components/aware/ATree.vue +111 -0
  177. package/dist/runtime/components/aware/ATree.vue.d.ts +27 -0
  178. package/dist/runtime/components/chat/AChatPanel.d.vue.ts +6 -6
  179. package/dist/runtime/components/chat/AChatPanel.vue.d.ts +6 -6
  180. package/dist/runtime/components/chat/ANodeChatPanel.d.vue.ts +42 -0
  181. package/dist/runtime/components/chat/ANodeChatPanel.vue +53 -0
  182. package/dist/runtime/components/chat/ANodeChatPanel.vue.d.ts +42 -0
  183. package/dist/runtime/components/docs/ADocsSearch.d.vue.ts +2 -2
  184. package/dist/runtime/components/docs/ADocsSearch.vue.d.ts +2 -2
  185. package/dist/runtime/components/docs/ADocsSearchButton.d.vue.ts +3 -3
  186. package/dist/runtime/components/docs/ADocsSearchButton.vue.d.ts +3 -3
  187. package/dist/runtime/components/editor/AEditorRedoButton.d.vue.ts +26 -0
  188. package/dist/runtime/components/editor/AEditorRedoButton.vue +38 -0
  189. package/dist/runtime/components/editor/AEditorRedoButton.vue.d.ts +26 -0
  190. package/dist/runtime/components/editor/AEditorUndoButton.d.vue.ts +26 -0
  191. package/dist/runtime/components/editor/AEditorUndoButton.vue +38 -0
  192. package/dist/runtime/components/editor/AEditorUndoButton.vue.d.ts +26 -0
  193. package/dist/runtime/components/editor/AIconPickerPopover.d.vue.ts +24 -0
  194. package/dist/runtime/components/editor/AIconPickerPopover.vue +113 -0
  195. package/dist/runtime/components/editor/AIconPickerPopover.vue.d.ts +24 -0
  196. package/dist/runtime/components/editor/ANodeInlineLabel.d.vue.ts +24 -0
  197. package/dist/runtime/components/editor/ANodeInlineLabel.vue +101 -0
  198. package/dist/runtime/components/editor/ANodeInlineLabel.vue.d.ts +24 -0
  199. package/dist/runtime/components/renderers/ADocLoadError.d.vue.ts +3 -0
  200. package/dist/runtime/components/renderers/ADocLoadError.vue +11 -0
  201. package/dist/runtime/components/renderers/ADocLoadError.vue.d.ts +3 -0
  202. package/dist/runtime/components/renderers/ADocLoadingSkeleton.d.vue.ts +3 -0
  203. package/dist/runtime/components/renderers/ADocLoadingSkeleton.vue +5 -0
  204. package/dist/runtime/components/renderers/ADocLoadingSkeleton.vue.d.ts +3 -0
  205. package/dist/runtime/components/renderers/AOverviewRenderer.d.vue.ts +22 -0
  206. package/dist/runtime/components/renderers/AOverviewRenderer.vue +1041 -0
  207. package/dist/runtime/components/renderers/AOverviewRenderer.vue.d.ts +22 -0
  208. package/dist/runtime/components/renderers/AProseRenderer.d.vue.ts +23 -0
  209. package/dist/runtime/components/renderers/AProseRenderer.vue +31 -0
  210. package/dist/runtime/components/renderers/AProseRenderer.vue.d.ts +23 -0
  211. package/dist/runtime/components/renderers/ASheetsRenderer.client.d.vue.ts +19 -0
  212. package/dist/runtime/components/renderers/ASheetsRenderer.client.vue +865 -0
  213. package/dist/runtime/components/renderers/ASheetsRenderer.client.vue.d.ts +19 -0
  214. package/dist/runtime/components/renderers/calendar/ACalendarDayCell.d.vue.ts +14 -0
  215. package/dist/runtime/components/renderers/calendar/ACalendarDayCell.vue +45 -15
  216. package/dist/runtime/components/renderers/calendar/ACalendarDayCell.vue.d.ts +14 -0
  217. package/dist/runtime/components/renderers/calendar/ACalendarDayView.d.vue.ts +15 -0
  218. package/dist/runtime/components/renderers/calendar/ACalendarDayView.vue +93 -20
  219. package/dist/runtime/components/renderers/calendar/ACalendarDayView.vue.d.ts +15 -0
  220. package/dist/runtime/components/renderers/calendar/ACalendarEventChip.d.vue.ts +9 -0
  221. package/dist/runtime/components/renderers/calendar/ACalendarEventChip.vue +31 -2
  222. package/dist/runtime/components/renderers/calendar/ACalendarEventChip.vue.d.ts +9 -0
  223. package/dist/runtime/components/renderers/calendar/ACalendarToolbar.d.vue.ts +4 -4
  224. package/dist/runtime/components/renderers/calendar/ACalendarToolbar.vue.d.ts +4 -4
  225. package/dist/runtime/components/renderers/calendar/ACalendarWeekView.d.vue.ts +15 -0
  226. package/dist/runtime/components/renderers/calendar/ACalendarWeekView.vue +94 -21
  227. package/dist/runtime/components/renderers/calendar/ACalendarWeekView.vue.d.ts +15 -0
  228. package/dist/runtime/components/renderers/media/MediaTransportBar.d.vue.ts +2 -2
  229. package/dist/runtime/components/renderers/media/MediaTransportBar.vue.d.ts +2 -2
  230. package/dist/runtime/components/renderers/sheets/ASheetsCell.d.vue.ts +45 -0
  231. package/dist/runtime/components/renderers/sheets/ASheetsCell.vue +123 -0
  232. package/dist/runtime/components/renderers/sheets/ASheetsCell.vue.d.ts +45 -0
  233. package/dist/runtime/components/renderers/sheets/ASheetsGrid.d.vue.ts +111 -0
  234. package/dist/runtime/components/renderers/sheets/ASheetsGrid.vue +737 -0
  235. package/dist/runtime/components/renderers/sheets/ASheetsGrid.vue.d.ts +111 -0
  236. package/dist/runtime/components/renderers/sheets/ASheetsMobileActionBar.d.vue.ts +26 -0
  237. package/dist/runtime/components/renderers/sheets/ASheetsMobileActionBar.vue +100 -0
  238. package/dist/runtime/components/renderers/sheets/ASheetsMobileActionBar.vue.d.ts +26 -0
  239. package/dist/runtime/components/renderers/sheets/ASheetsToolbar.d.vue.ts +48 -0
  240. package/dist/runtime/components/renderers/sheets/ASheetsToolbar.vue +243 -0
  241. package/dist/runtime/components/renderers/sheets/ASheetsToolbar.vue.d.ts +48 -0
  242. package/dist/runtime/components/renderers/table/cells/ATableCellColor.d.vue.ts +1 -0
  243. package/dist/runtime/components/renderers/table/cells/ATableCellColor.vue +13 -32
  244. package/dist/runtime/components/renderers/table/cells/ATableCellColor.vue.d.ts +1 -0
  245. package/dist/runtime/components/renderers/timeline/ATimelineBar.d.vue.ts +6 -0
  246. package/dist/runtime/components/renderers/timeline/ATimelineBar.vue +34 -4
  247. package/dist/runtime/components/renderers/timeline/ATimelineBar.vue.d.ts +6 -0
  248. package/dist/runtime/components/renderers/timeline/ATimelineBarArea.d.vue.ts +16 -0
  249. package/dist/runtime/components/renderers/timeline/ATimelineBarArea.vue +14 -3
  250. package/dist/runtime/components/renderers/timeline/ATimelineBarArea.vue.d.ts +16 -0
  251. package/dist/runtime/components/renderers/timeline/ATimelineLabelPanel.d.vue.ts +13 -1
  252. package/dist/runtime/components/renderers/timeline/ATimelineLabelPanel.vue +114 -47
  253. package/dist/runtime/components/renderers/timeline/ATimelineLabelPanel.vue.d.ts +13 -1
  254. package/dist/runtime/components/renderers/timeline/ATimelineMilestone.d.vue.ts +4 -0
  255. package/dist/runtime/components/renderers/timeline/ATimelineMilestone.vue +21 -4
  256. package/dist/runtime/components/renderers/timeline/ATimelineMilestone.vue.d.ts +4 -0
  257. package/dist/runtime/components/renderers/timeline/ATimelineToolbar.d.vue.ts +2 -2
  258. package/dist/runtime/components/renderers/timeline/ATimelineToolbar.vue.d.ts +2 -2
  259. package/dist/runtime/components/settings/ASettingsSpacesPanel.vue +7 -25
  260. package/dist/runtime/components/shell/ADocPanelSettings.d.vue.ts +3 -3
  261. package/dist/runtime/components/shell/ADocPanelSettings.vue.d.ts +3 -3
  262. package/dist/runtime/components/shell/ASyncStatus.d.vue.ts +1 -1
  263. package/dist/runtime/components/shell/ASyncStatus.vue.d.ts +1 -1
  264. package/dist/runtime/components/shell/AUserMenu.d.vue.ts +2 -2
  265. package/dist/runtime/components/shell/AUserMenu.vue.d.ts +2 -2
  266. package/dist/runtime/components/shell/AWelcomeScreen.d.vue.ts +1 -1
  267. package/dist/runtime/components/shell/AWelcomeScreen.vue.d.ts +1 -1
  268. package/dist/runtime/composables/useAACaret.d.ts +29 -0
  269. package/dist/runtime/composables/useAACaret.js +64 -0
  270. package/dist/runtime/composables/useAAEphemeral.d.ts +32 -0
  271. package/dist/runtime/composables/useAAEphemeral.js +33 -0
  272. package/dist/runtime/composables/useAAField.d.ts +10 -2
  273. package/dist/runtime/composables/useAAField.js +31 -2
  274. package/dist/runtime/composables/useAAFieldValue.d.ts +26 -0
  275. package/dist/runtime/composables/useAAFieldValue.js +32 -0
  276. package/dist/runtime/composables/useAAFocus.d.ts +68 -0
  277. package/dist/runtime/composables/useAAFocus.js +174 -0
  278. package/dist/runtime/composables/useAAFollowAnchor.d.ts +25 -0
  279. package/dist/runtime/composables/useAAFollowAnchor.js +69 -0
  280. package/dist/runtime/composables/useAAFollowPeer.d.ts +29 -0
  281. package/dist/runtime/composables/useAAFollowPeer.js +75 -0
  282. package/dist/runtime/composables/useAAKey.d.ts +22 -0
  283. package/dist/runtime/composables/useAAKey.js +24 -0
  284. package/dist/runtime/composables/useAAPointer.d.ts +30 -0
  285. package/dist/runtime/composables/useAAPointer.js +53 -0
  286. package/dist/runtime/composables/useAAUIState.d.ts +29 -0
  287. package/dist/runtime/composables/useAAUIState.js +28 -0
  288. package/dist/runtime/composables/useAAViewport.d.ts +22 -0
  289. package/dist/runtime/composables/useAAViewport.js +50 -0
  290. package/dist/runtime/composables/useAbraAdmin.d.ts +54 -0
  291. package/dist/runtime/composables/useAbraAdmin.js +115 -0
  292. package/dist/runtime/composables/useAbracadabraAuth.d.ts +8 -0
  293. package/dist/runtime/composables/useAbracadabraAuth.js +8 -0
  294. package/dist/runtime/composables/useAggregatedPresence.d.ts +23 -0
  295. package/dist/runtime/composables/useAggregatedPresence.js +140 -0
  296. package/dist/runtime/composables/useChat.d.ts +16 -2
  297. package/dist/runtime/composables/useChat.js +257 -66
  298. package/dist/runtime/composables/useChatUsers.d.ts +2 -0
  299. package/dist/runtime/composables/useChatUsers.js +2 -1
  300. package/dist/runtime/composables/useDocLookup.d.ts +4 -0
  301. package/dist/runtime/composables/useDocLookup.js +25 -0
  302. package/dist/runtime/composables/useDocSnapshots.d.ts +79 -0
  303. package/dist/runtime/composables/useDocSnapshots.js +234 -0
  304. package/dist/runtime/composables/useEditorDragHandle.d.ts +7 -0
  305. package/dist/runtime/composables/useEditorDragHandle.js +19 -1
  306. package/dist/runtime/composables/useEditorSuggestions.js +26 -1
  307. package/dist/runtime/composables/useEditorToolbar.js +9 -1
  308. package/dist/runtime/composables/useEmailVerification.d.ts +33 -0
  309. package/dist/runtime/composables/useEmailVerification.js +58 -0
  310. package/dist/runtime/composables/useIdentityDoc.js +0 -3
  311. package/dist/runtime/composables/useItemPresence.d.ts +47 -0
  312. package/dist/runtime/composables/useItemPresence.js +73 -0
  313. package/dist/runtime/composables/useResizableWidth.d.ts +24 -0
  314. package/dist/runtime/composables/useResizableWidth.js +87 -0
  315. package/dist/runtime/composables/useServerInfo.d.ts +17 -2
  316. package/dist/runtime/composables/useServerInfo.js +30 -6
  317. package/dist/runtime/composables/useServerSearch.d.ts +36 -0
  318. package/dist/runtime/composables/useServerSearch.js +91 -0
  319. package/dist/runtime/composables/useServerTrash.d.ts +67 -0
  320. package/dist/runtime/composables/useServerTrash.js +128 -0
  321. package/dist/runtime/composables/useSheetsClipboard.d.ts +42 -0
  322. package/dist/runtime/composables/useSheetsClipboard.js +109 -0
  323. package/dist/runtime/composables/useSheetsFormulas.d.ts +38 -0
  324. package/dist/runtime/composables/useSheetsFormulas.js +725 -0
  325. package/dist/runtime/composables/useSheetsSelection.d.ts +68 -0
  326. package/dist/runtime/composables/useSheetsSelection.js +390 -0
  327. package/dist/runtime/composables/useSheetsView.d.ts +31 -0
  328. package/dist/runtime/composables/useSheetsView.js +77 -0
  329. package/dist/runtime/composables/useSpaceConnections.d.ts +43 -0
  330. package/dist/runtime/composables/useSpaceConnections.js +72 -0
  331. package/dist/runtime/composables/useSpaces.d.ts +1 -3
  332. package/dist/runtime/composables/useSpaces.js +2 -5
  333. package/dist/runtime/composables/useTiptapHistory.d.ts +22 -0
  334. package/dist/runtime/composables/useTiptapHistory.js +12 -0
  335. package/dist/runtime/composables/useTreeExpansion.d.ts +28 -0
  336. package/dist/runtime/composables/useTreeExpansion.js +94 -0
  337. package/dist/runtime/composables/useYDoc.js +12 -1
  338. package/dist/runtime/extensions/button.d.ts +3 -0
  339. package/dist/runtime/extensions/button.js +62 -0
  340. package/dist/runtime/extensions/color-swatch.d.ts +2 -0
  341. package/dist/runtime/extensions/color-swatch.js +34 -0
  342. package/dist/runtime/extensions/diff.d.ts +2 -0
  343. package/dist/runtime/extensions/diff.js +40 -0
  344. package/dist/runtime/extensions/divider.d.ts +2 -0
  345. package/dist/runtime/extensions/divider.js +33 -0
  346. package/dist/runtime/extensions/embed.d.ts +2 -0
  347. package/dist/runtime/extensions/embed.js +40 -0
  348. package/dist/runtime/extensions/figure.d.ts +2 -0
  349. package/dist/runtime/extensions/figure.js +49 -0
  350. package/dist/runtime/extensions/math.d.ts +15 -0
  351. package/dist/runtime/extensions/math.js +66 -0
  352. package/dist/runtime/extensions/progress.d.ts +2 -0
  353. package/dist/runtime/extensions/progress.js +43 -0
  354. package/dist/runtime/extensions/quote.d.ts +2 -0
  355. package/dist/runtime/extensions/quote.js +39 -0
  356. package/dist/runtime/extensions/spoiler.d.ts +2 -0
  357. package/dist/runtime/extensions/spoiler.js +36 -0
  358. package/dist/runtime/extensions/stat.d.ts +3 -0
  359. package/dist/runtime/extensions/stat.js +58 -0
  360. package/dist/runtime/extensions/video.d.ts +2 -0
  361. package/dist/runtime/extensions/video.js +40 -0
  362. package/dist/runtime/extensions/views/ButtonGroupView.d.vue.ts +4 -0
  363. package/dist/runtime/extensions/views/ButtonGroupView.vue +25 -0
  364. package/dist/runtime/extensions/views/ButtonGroupView.vue.d.ts +4 -0
  365. package/dist/runtime/extensions/views/ButtonView.d.vue.ts +4 -0
  366. package/dist/runtime/extensions/views/ButtonView.vue +171 -0
  367. package/dist/runtime/extensions/views/ButtonView.vue.d.ts +4 -0
  368. package/dist/runtime/extensions/views/ColorSwatchView.d.vue.ts +4 -0
  369. package/dist/runtime/extensions/views/ColorSwatchView.vue +134 -0
  370. package/dist/runtime/extensions/views/ColorSwatchView.vue.d.ts +4 -0
  371. package/dist/runtime/extensions/views/DiffView.d.vue.ts +4 -0
  372. package/dist/runtime/extensions/views/DiffView.vue +163 -0
  373. package/dist/runtime/extensions/views/DiffView.vue.d.ts +4 -0
  374. package/dist/runtime/extensions/views/DividerView.d.vue.ts +4 -0
  375. package/dist/runtime/extensions/views/DividerView.vue +40 -0
  376. package/dist/runtime/extensions/views/DividerView.vue.d.ts +4 -0
  377. package/dist/runtime/extensions/views/EmbedView.d.vue.ts +4 -0
  378. package/dist/runtime/extensions/views/EmbedView.vue +166 -0
  379. package/dist/runtime/extensions/views/EmbedView.vue.d.ts +4 -0
  380. package/dist/runtime/extensions/views/FigureView.d.vue.ts +4 -0
  381. package/dist/runtime/extensions/views/FigureView.vue +122 -0
  382. package/dist/runtime/extensions/views/FigureView.vue.d.ts +4 -0
  383. package/dist/runtime/extensions/views/FileNodeView.vue +21 -24
  384. package/dist/runtime/extensions/views/MathBlockView.d.vue.ts +4 -0
  385. package/dist/runtime/extensions/views/MathBlockView.vue +151 -0
  386. package/dist/runtime/extensions/views/MathBlockView.vue.d.ts +4 -0
  387. package/dist/runtime/extensions/views/MathInlineView.d.vue.ts +4 -0
  388. package/dist/runtime/extensions/views/MathInlineView.vue +149 -0
  389. package/dist/runtime/extensions/views/MathInlineView.vue.d.ts +4 -0
  390. package/dist/runtime/extensions/views/MetaFieldView.vue +1129 -550
  391. package/dist/runtime/extensions/views/ProgressView.d.vue.ts +4 -0
  392. package/dist/runtime/extensions/views/ProgressView.vue +156 -0
  393. package/dist/runtime/extensions/views/ProgressView.vue.d.ts +4 -0
  394. package/dist/runtime/extensions/views/QuoteView.d.vue.ts +4 -0
  395. package/dist/runtime/extensions/views/QuoteView.vue +128 -0
  396. package/dist/runtime/extensions/views/QuoteView.vue.d.ts +4 -0
  397. package/dist/runtime/extensions/views/SpoilerView.d.vue.ts +4 -0
  398. package/dist/runtime/extensions/views/SpoilerView.vue +62 -0
  399. package/dist/runtime/extensions/views/SpoilerView.vue.d.ts +4 -0
  400. package/dist/runtime/extensions/views/StatGroupView.d.vue.ts +4 -0
  401. package/dist/runtime/extensions/views/StatGroupView.vue +25 -0
  402. package/dist/runtime/extensions/views/StatGroupView.vue.d.ts +4 -0
  403. package/dist/runtime/extensions/views/StatView.d.vue.ts +4 -0
  404. package/dist/runtime/extensions/views/StatView.vue +89 -0
  405. package/dist/runtime/extensions/views/StatView.vue.d.ts +4 -0
  406. package/dist/runtime/extensions/views/VideoView.d.vue.ts +4 -0
  407. package/dist/runtime/extensions/views/VideoView.vue +190 -0
  408. package/dist/runtime/extensions/views/VideoView.vue.d.ts +4 -0
  409. package/dist/runtime/locale.d.ts +133 -0
  410. package/dist/runtime/locale.js +121 -2
  411. package/dist/runtime/plugin-abracadabra.client.js +233 -36
  412. package/dist/runtime/plugin-abracadabra.server.js +0 -1
  413. package/dist/runtime/plugins/core.plugin.js +73 -4
  414. package/dist/runtime/server/plugins/abracadabra-service.js +1 -1
  415. package/dist/runtime/server/utils/rpcHandler.d.ts +74 -0
  416. package/dist/runtime/server/utils/rpcHandler.js +74 -0
  417. package/dist/runtime/server/utils/spaceManager.js +10 -9
  418. package/dist/runtime/types.d.ts +63 -10
  419. package/dist/runtime/utils/awareRingStyle.d.ts +22 -0
  420. package/dist/runtime/utils/awareRingStyle.js +16 -0
  421. package/dist/runtime/utils/caretCoordinates.d.ts +41 -0
  422. package/dist/runtime/utils/caretCoordinates.js +126 -0
  423. package/dist/runtime/utils/content.d.ts +1 -1
  424. package/dist/runtime/utils/docTypes.js +44 -13
  425. package/dist/runtime/utils/domPath.d.ts +42 -0
  426. package/dist/runtime/utils/domPath.js +89 -0
  427. package/dist/runtime/utils/loadKatex.d.ts +1 -0
  428. package/dist/runtime/utils/loadKatex.js +29 -0
  429. package/dist/runtime/utils/lucideIcons.d.ts +16 -0
  430. package/dist/runtime/utils/lucideIcons.js +451 -0
  431. package/dist/runtime/utils/time.d.ts +15 -0
  432. package/dist/runtime/utils/time.js +5 -0
  433. package/dist/types.d.mts +4 -0
  434. package/package.json +27 -16
@@ -0,0 +1,46 @@
1
+ type __VLS_Props = {
2
+ /** Open state (v-model). */
3
+ open?: boolean;
4
+ /** Display name override. Defaults to useAbracadabra().userName. */
5
+ userName?: string;
6
+ /** Public key override. Defaults to useAbracadabra().publicKeyB64. */
7
+ publicKey?: string | null;
8
+ /** Color override (CSS color or named color). */
9
+ color?: string;
10
+ /** Modal title. */
11
+ title?: string;
12
+ /** Whether the user can edit their display name inline. Default: true. */
13
+ editable?: boolean;
14
+ };
15
+ declare var __VLS_30: {}, __VLS_39: {
16
+ publicKey: string | null;
17
+ userName: string;
18
+ }, __VLS_42: {}, __VLS_51: {};
19
+ type __VLS_Slots = {} & {
20
+ subtitle?: (props: typeof __VLS_30) => any;
21
+ } & {
22
+ content?: (props: typeof __VLS_39) => any;
23
+ } & {
24
+ 'actions-left'?: (props: typeof __VLS_42) => any;
25
+ } & {
26
+ 'actions-right'?: (props: typeof __VLS_51) => any;
27
+ };
28
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
29
+ rename: (name: string) => any;
30
+ "update:open": (open: boolean) => any;
31
+ "sign-out": () => any;
32
+ "show-recovery": () => any;
33
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
34
+ onRename?: ((name: string) => any) | undefined;
35
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
36
+ "onSign-out"?: (() => any) | undefined;
37
+ "onShow-recovery"?: (() => any) | undefined;
38
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
39
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
40
+ declare const _default: typeof __VLS_export;
41
+ export default _default;
42
+ type __VLS_WithSlots<T, S> = T & {
43
+ new (): {
44
+ $slots: S;
45
+ };
46
+ };
@@ -0,0 +1,35 @@
1
+ type __VLS_Props = {
2
+ open?: boolean;
3
+ /** Number of words. 12 (default) or 24. */
4
+ wordCount?: 12 | 24;
5
+ /** Inline error string from the consumer's submit handler. */
6
+ error?: string | null;
7
+ /** Loading flag while consumer handles submit. */
8
+ loading?: boolean;
9
+ /** Title text. */
10
+ title?: string;
11
+ /** Subtitle text. */
12
+ subtitle?: string;
13
+ };
14
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ submit: (payload: {
16
+ mnemonic: string;
17
+ passphrase?: string;
18
+ ephemeral: boolean;
19
+ }) => any;
20
+ "update:open": (open: boolean) => any;
21
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
22
+ onSubmit?: ((payload: {
23
+ mnemonic: string;
24
+ passphrase?: string;
25
+ ephemeral: boolean;
26
+ }) => any) | undefined;
27
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
28
+ }>, {
29
+ subtitle: string;
30
+ title: string;
31
+ wordCount: 12 | 24;
32
+ loading: boolean;
33
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
34
+ declare const _default: typeof __VLS_export;
35
+ export default _default;
@@ -0,0 +1,173 @@
1
+ <script setup>
2
+ import { ref, computed, watch } from "vue";
3
+ import { validateMnemonic, bip39Wordlist } from "@abraca/dabra";
4
+ const props = defineProps({
5
+ open: { type: Boolean, required: false },
6
+ wordCount: { type: Number, required: false, default: 12 },
7
+ error: { type: [String, null], required: false },
8
+ loading: { type: Boolean, required: false, default: false },
9
+ title: { type: String, required: false, default: "Enter recovery phrase" },
10
+ subtitle: { type: String, required: false, default: "Type or paste your 12-word recovery phrase to restore your account." }
11
+ });
12
+ const emit = defineEmits(["update:open", "submit"]);
13
+ const open = computed({
14
+ get: () => !!props.open,
15
+ set: (v) => emit("update:open", v)
16
+ });
17
+ const wordSet = new Set(bip39Wordlist);
18
+ const words = ref(Array(props.wordCount).fill(""));
19
+ const passphrase = ref("");
20
+ const showAdvanced = ref(false);
21
+ const ephemeral = ref(false);
22
+ watch(() => props.open, (v) => {
23
+ if (!v) return;
24
+ words.value = Array(props.wordCount).fill("");
25
+ passphrase.value = "";
26
+ ephemeral.value = false;
27
+ showAdvanced.value = false;
28
+ });
29
+ watch(() => props.wordCount, (n) => {
30
+ words.value = Array(n).fill("");
31
+ });
32
+ const wordValid = computed(
33
+ () => words.value.map((w) => !w.trim() || wordSet.has(w.trim().toLowerCase()))
34
+ );
35
+ const allFilled = computed(() => words.value.every((w) => w.trim().length > 0));
36
+ const mnemonicString = computed(() => words.value.map((w) => w.trim().toLowerCase()).join(" "));
37
+ const checksumValid = computed(() => {
38
+ if (!allFilled.value) return true;
39
+ return validateMnemonic(mnemonicString.value);
40
+ });
41
+ const canSubmit = computed(
42
+ () => allFilled.value && wordValid.value.every(Boolean) && checksumValid.value && !props.loading
43
+ );
44
+ function handlePaste(event, index) {
45
+ const text = event.clipboardData?.getData("text")?.trim();
46
+ if (!text) return;
47
+ const pasted = text.split(/\s+/);
48
+ if (pasted.length > 1) {
49
+ event.preventDefault();
50
+ const next = [...words.value];
51
+ for (let i = 0; i < pasted.length && index + i < props.wordCount; i++) {
52
+ next[index + i] = pasted[i];
53
+ }
54
+ words.value = next;
55
+ }
56
+ }
57
+ function submit() {
58
+ if (!canSubmit.value) return;
59
+ emit("submit", {
60
+ mnemonic: mnemonicString.value,
61
+ passphrase: passphrase.value || void 0,
62
+ ephemeral: ephemeral.value
63
+ });
64
+ }
65
+ </script>
66
+
67
+ <template>
68
+ <UModal
69
+ v-model:open="open"
70
+ :title="title"
71
+ :ui="{ content: 'sm:max-w-lg' }"
72
+ >
73
+ <template #body>
74
+ <div class="flex flex-col gap-5">
75
+ <p class="text-sm text-(--ui-text-muted) text-center">
76
+ {{ subtitle }}
77
+ </p>
78
+
79
+ <UAlert
80
+ v-if="error"
81
+ color="error"
82
+ variant="soft"
83
+ icon="i-lucide-triangle-alert"
84
+ :description="error"
85
+ />
86
+
87
+ <UAlert
88
+ v-if="allFilled && !checksumValid"
89
+ color="warning"
90
+ variant="soft"
91
+ icon="i-lucide-triangle-alert"
92
+ description="Checksum doesn't match — double-check the words."
93
+ />
94
+
95
+ <div class="grid grid-cols-3 gap-2">
96
+ <div
97
+ v-for="i in wordCount"
98
+ :key="i - 1"
99
+ class="flex items-center gap-1 px-2 py-1 rounded-md border bg-(--ui-bg-elevated)"
100
+ :class="!wordValid[i - 1] ? 'border-(--ui-error)' : 'border-(--ui-border)'"
101
+ >
102
+ <span class="text-xs font-mono text-(--ui-text-muted) w-5 text-right shrink-0">{{ i }}.</span>
103
+ <input
104
+ v-model="words[i - 1]"
105
+ type="text"
106
+ autocapitalize="off"
107
+ autocomplete="off"
108
+ spellcheck="false"
109
+ class="bg-transparent outline-none text-sm font-mono w-full text-(--ui-text-highlighted)"
110
+ @paste="(e) => handlePaste(e, i - 1)"
111
+ @keydown.enter.prevent="submit"
112
+ >
113
+ </div>
114
+ </div>
115
+
116
+ <div class="flex items-center justify-between text-xs">
117
+ <UButton
118
+ variant="ghost"
119
+ color="neutral"
120
+ size="2xs"
121
+ :icon="showAdvanced ? 'i-lucide-chevron-up' : 'i-lucide-chevron-down'"
122
+ :label="showAdvanced ? 'Hide advanced' : 'Advanced'"
123
+ @click="showAdvanced = !showAdvanced"
124
+ />
125
+ </div>
126
+
127
+ <div
128
+ v-if="showAdvanced"
129
+ class="flex flex-col gap-3 px-1"
130
+ >
131
+ <div class="flex flex-col gap-1">
132
+ <label class="text-xs font-medium text-(--ui-text-muted)">Optional passphrase</label>
133
+ <UInput
134
+ v-model="passphrase"
135
+ size="sm"
136
+ type="password"
137
+ placeholder="Empty if you didn't set one"
138
+ />
139
+ </div>
140
+ <label class="flex items-center gap-2 cursor-pointer text-sm">
141
+ <USwitch
142
+ v-model="ephemeral"
143
+ size="sm"
144
+ />
145
+ <span>Don't store on this device (ephemeral session)</span>
146
+ </label>
147
+ </div>
148
+ </div>
149
+ </template>
150
+
151
+ <template #footer>
152
+ <div class="flex items-center justify-end gap-2 w-full">
153
+ <UButton
154
+ variant="ghost"
155
+ color="neutral"
156
+ size="sm"
157
+ label="Cancel"
158
+ @click="open = false"
159
+ />
160
+ <UButton
161
+ variant="solid"
162
+ color="primary"
163
+ size="sm"
164
+ icon="i-lucide-log-in"
165
+ label="Sign in"
166
+ :loading="loading"
167
+ :disabled="!canSubmit"
168
+ @click="submit"
169
+ />
170
+ </div>
171
+ </template>
172
+ </UModal>
173
+ </template>
@@ -0,0 +1,35 @@
1
+ type __VLS_Props = {
2
+ open?: boolean;
3
+ /** Number of words. 12 (default) or 24. */
4
+ wordCount?: 12 | 24;
5
+ /** Inline error string from the consumer's submit handler. */
6
+ error?: string | null;
7
+ /** Loading flag while consumer handles submit. */
8
+ loading?: boolean;
9
+ /** Title text. */
10
+ title?: string;
11
+ /** Subtitle text. */
12
+ subtitle?: string;
13
+ };
14
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ submit: (payload: {
16
+ mnemonic: string;
17
+ passphrase?: string;
18
+ ephemeral: boolean;
19
+ }) => any;
20
+ "update:open": (open: boolean) => any;
21
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
22
+ onSubmit?: ((payload: {
23
+ mnemonic: string;
24
+ passphrase?: string;
25
+ ephemeral: boolean;
26
+ }) => any) | undefined;
27
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
28
+ }>, {
29
+ subtitle: string;
30
+ title: string;
31
+ wordCount: 12 | 24;
32
+ loading: boolean;
33
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
34
+ declare const _default: typeof __VLS_export;
35
+ export default _default;
@@ -1,15 +1,42 @@
1
1
  import type { AbracadabraLocale } from '../locale.js';
2
+ import type { DocPageMeta } from '../types.js';
2
3
  type __VLS_Props = {
3
4
  nodeId: string | null;
4
5
  nodeLabel?: string;
5
6
  childProvider?: any;
6
7
  docType?: string;
7
8
  labels?: Partial<AbracadabraLocale['nodePanel']>;
9
+ /** Tab to open initially. Defaults to 'editor'. */
10
+ initialTab?: 'editor' | 'properties' | 'chat' | 'settings' | string;
11
+ /**
12
+ * Built-in tabs to render. Defaults to all-on; pass an array to limit which
13
+ * tabs appear (useful when a developer wants only properties + chat).
14
+ * Plugin-registered tab slots are unaffected.
15
+ */
16
+ tabs?: Array<'editor' | 'properties' | 'chat' | 'settings'>;
8
17
  };
9
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ declare var __VLS_11: {
19
+ nodeId: string | null;
20
+ nodeLabel: string | undefined;
21
+ editor: any;
22
+ meta: DocPageMeta;
23
+ docTypeDef: import("../utils/docTypes.js").DocTypeDefinition;
24
+ };
25
+ type __VLS_Slots = {} & {
26
+ header?: (props: typeof __VLS_11) => any;
27
+ };
28
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
29
  close: () => any;
11
30
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
12
31
  onClose?: (() => any) | undefined;
13
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
32
+ }>, {
33
+ initialTab: "editor" | "properties" | "chat" | "settings" | string;
34
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
35
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
36
  declare const _default: typeof __VLS_export;
15
37
  export default _default;
38
+ type __VLS_WithSlots<T, S> = T & {
39
+ new (): {
40
+ $slots: S;
41
+ };
42
+ };
@@ -1,17 +1,27 @@
1
1
  <script setup>
2
- import { ref, computed } from "vue";
2
+ import { ref, computed, watch } from "vue";
3
3
  import { useAbracadabra } from "../composables/useAbracadabra";
4
4
  import { useSyncedMap } from "../composables/useYDoc";
5
5
  import { navigateTo } from "#imports";
6
6
  import { useChildTree } from "../composables/useChildTree";
7
7
  import { useAbraLocale } from "../composables/useAbraLocale";
8
+ import { useResizableWidth } from "../composables/useResizableWidth";
9
+ import ANodePanelHeader from "./ANodePanelHeader.vue";
10
+ import { defineAsyncComponent } from "vue";
11
+ import { useRuntimeConfig } from "#imports";
12
+ import { useChat } from "../composables/useChat";
13
+ const ANodeChatPanel = defineAsyncComponent(() => import("./chat/ANodeChatPanel.vue"));
14
+ const ANodeSettingsPanel = defineAsyncComponent(() => import("./ANodeSettingsPanel.vue"));
8
15
  import { META_FIELD_DEFINITIONS } from "../utils/metaFieldDefinitions";
16
+ import { resolveDocType } from "../utils/docTypes";
9
17
  const props = defineProps({
10
18
  nodeId: { type: [String, null], required: true },
11
19
  nodeLabel: { type: String, required: false },
12
20
  childProvider: { type: null, required: false },
13
21
  docType: { type: String, required: false },
14
- labels: { type: Object, required: false }
22
+ labels: { type: Object, required: false },
23
+ initialTab: { type: String, required: false, default: "editor" },
24
+ tabs: { type: Array, required: false }
15
25
  });
16
26
  const emit = defineEmits(["close"]);
17
27
  const open = computed({
@@ -49,7 +59,41 @@ function patchType(type) {
49
59
  const e = treeMap.data[props.nodeId];
50
60
  if (e) treeMap.set(props.nodeId, { ...e, type, updatedAt: Date.now() });
51
61
  }
52
- const activeTab = ref("editor");
62
+ const activeTab = ref(props.initialTab);
63
+ watch(() => props.nodeId, (id) => {
64
+ if (id) activeTab.value = props.initialTab;
65
+ });
66
+ const docTypeDef = computed(() => resolveDocType(currentType.value, registry));
67
+ const usesPageRenderer = computed(
68
+ () => docTypeDef.value.key !== "doc" && !!docTypeDef.value.component
69
+ );
70
+ const editorRef = ref(null);
71
+ const tiptapEditor = computed(() => editorRef.value?.editor ?? null);
72
+ const resize = useResizableWidth({
73
+ defaultWidth: 672,
74
+ minWidth: 320,
75
+ cookieKey: "abraca-node-panel-width",
76
+ direction: "left"
77
+ });
78
+ const _runtimeFeatures = computed(() => {
79
+ try {
80
+ return useRuntimeConfig().public?.abracadabra?.features ?? {};
81
+ } catch {
82
+ return {};
83
+ }
84
+ });
85
+ const showChatTab = computed(() => {
86
+ if (props.tabs && !props.tabs.includes("chat")) return false;
87
+ return !!_runtimeFeatures.value?.chat;
88
+ });
89
+ const showEditorTab = computed(() => !props.tabs || props.tabs.includes("editor"));
90
+ const showPropertiesTab = computed(() => !props.tabs || props.tabs.includes("properties"));
91
+ const showSettingsTab = computed(() => !props.tabs || props.tabs.includes("settings"));
92
+ const _chat = useChat();
93
+ const chatUnread = computed(() => {
94
+ if (!props.nodeId) return 0;
95
+ return _chat.channels.value[props.nodeId]?.unreadCount ?? 0;
96
+ });
53
97
  const pluginSlots = computed(() => {
54
98
  return registry.getAllNodePanelSlots().filter((slot) => {
55
99
  if (!props.nodeId || !tree.value) return false;
@@ -138,37 +182,48 @@ const addFieldMenuItems = computed(
138
182
  v-model:open="open"
139
183
  side="right"
140
184
  :title="nodeLabel || 'Document'"
141
- :ui="{ content: 'sm:max-w-2xl' }"
185
+ :content="{ style: resize.style.value }"
142
186
  @update:open="(v) => !v && emit('close')"
143
187
  >
144
188
  <template #header>
145
- <div class="flex items-center gap-2 min-w-0 flex-1">
146
- <UIcon
147
- :name="meta.icon ?? 'i-lucide-file-text'"
148
- class="size-4 shrink-0"
149
- :style="meta.color ? `color: ${meta.color}` : ''"
150
- :class="meta.color ? '' : 'text-muted'"
189
+ <!-- Default header uses <ANodePanelHeader>. Consumers can replace the
190
+ whole header via the #header slot, or replace individual pieces
191
+ (presence, actions-right, etc.) by importing <ANodePanelHeader>
192
+ and supplying its own slots. -->
193
+ <slot
194
+ name="header"
195
+ :node-id="nodeId"
196
+ :node-label="nodeLabel"
197
+ :editor="tiptapEditor"
198
+ :meta="meta"
199
+ :doc-type-def="docTypeDef"
200
+ >
201
+ <ANodePanelHeader
202
+ :node-id="nodeId"
203
+ :node-label="nodeLabel"
204
+ :icon="meta.icon ?? docTypeDef.icon"
205
+ :icon-color="meta.color"
206
+ :editor="activeTab === 'editor' && !usesPageRenderer ? tiptapEditor : null"
207
+ @expand="navigateTo(`/app/${nodeId}`)"
151
208
  />
152
- <span class="font-medium truncate flex-1">{{ nodeLabel || "Document" }}</span>
153
- <UTooltip
154
- text="Open as full page"
155
- :content="{ side: 'bottom' }"
156
- >
157
- <UButton
158
- icon="i-lucide-expand"
159
- size="xs"
160
- variant="ghost"
161
- color="neutral"
162
- @click="navigateTo(`/app/${nodeId}`)"
163
- />
164
- </UTooltip>
165
- </div>
209
+ </slot>
166
210
  </template>
167
211
 
168
212
  <template #body>
169
- <!-- Tab bar -->
213
+ <!-- Resize handle: left edge of slideover, desktop only -->
214
+ <div
215
+ class="absolute left-0 top-0 bottom-0 w-1.5 z-10 cursor-col-resize hidden sm:block group"
216
+ :class="resize.isResizing.value ? 'bg-(--ui-primary)/20' : 'hover:bg-(--ui-primary)/10'"
217
+ @mousedown.stop.prevent="resize.onMouseDown"
218
+ @touchstart.stop.prevent="resize.onTouchStart"
219
+ @dblclick="resize.onDoubleClick"
220
+ />
221
+
222
+ <!-- Tab bar — built-in tabs are individually toggleable via the
223
+ `tabs` prop; plugin-registered tabs always render. -->
170
224
  <div class="flex items-center gap-1 border-b border-(--ui-border) mb-4 -mt-2">
171
225
  <UButton
226
+ v-if="showEditorTab"
172
227
  icon="i-lucide-file-text"
173
228
  :label="locale.editorTab"
174
229
  size="sm"
@@ -177,6 +232,7 @@ const addFieldMenuItems = computed(
177
232
  @click="activeTab = 'editor'"
178
233
  />
179
234
  <UButton
235
+ v-if="showPropertiesTab"
180
236
  icon="i-lucide-sliders-horizontal"
181
237
  :label="locale.propertiesTab"
182
238
  size="sm"
@@ -184,6 +240,32 @@ const addFieldMenuItems = computed(
184
240
  :variant="activeTab === 'properties' ? 'soft' : 'ghost'"
185
241
  @click="activeTab = 'properties'"
186
242
  />
243
+ <UChip
244
+ v-if="showChatTab"
245
+ :text="chatUnread > 0 && activeTab !== 'chat' ? String(chatUnread) : void 0"
246
+ color="error"
247
+ size="lg"
248
+ :show="chatUnread > 0 && activeTab !== 'chat'"
249
+ :inset="true"
250
+ >
251
+ <UButton
252
+ icon="i-lucide-message-circle"
253
+ label="Chat"
254
+ size="sm"
255
+ :color="activeTab === 'chat' ? 'primary' : 'neutral'"
256
+ :variant="activeTab === 'chat' ? 'soft' : 'ghost'"
257
+ @click="activeTab = 'chat'"
258
+ />
259
+ </UChip>
260
+ <UButton
261
+ v-if="showSettingsTab"
262
+ icon="i-lucide-settings-2"
263
+ label="Settings"
264
+ size="sm"
265
+ :color="activeTab === 'settings' ? 'primary' : 'neutral'"
266
+ :variant="activeTab === 'settings' ? 'soft' : 'ghost'"
267
+ @click="activeTab = 'settings'"
268
+ />
187
269
  <UButton
188
270
  v-for="slot in pluginSlots"
189
271
  :key="slot.id"
@@ -196,13 +278,23 @@ const addFieldMenuItems = computed(
196
278
  />
197
279
  </div>
198
280
 
199
- <!-- Editor tab -->
281
+ <!-- Editor tab — swaps to the registered page-type renderer when the
282
+ doc has a non-'doc' type (kanban / table / calendar / etc.). -->
200
283
  <div
201
284
  v-show="activeTab === 'editor'"
202
285
  class="min-h-[60vh]"
203
286
  >
287
+ <component
288
+ :is="docTypeDef.component"
289
+ v-if="nodeId && usesPageRenderer"
290
+ :key="`${nodeId}-${currentType}`"
291
+ :doc-id="nodeId"
292
+ :doc-label="nodeLabel || ''"
293
+ :child-provider="childProvider"
294
+ />
204
295
  <AEditor
205
- v-if="nodeId"
296
+ v-else-if="nodeId"
297
+ ref="editorRef"
206
298
  :doc-id="nodeId"
207
299
  :child-provider="childProvider"
208
300
  :parent-type="docType"
@@ -212,6 +304,35 @@ const addFieldMenuItems = computed(
212
304
  />
213
305
  </div>
214
306
 
307
+ <!-- Chat tab -->
308
+ <div
309
+ v-if="showChatTab"
310
+ v-show="activeTab === 'chat'"
311
+ class="min-h-[60vh] -mx-4 -mb-4 sm:-mx-6"
312
+ >
313
+ <ANodeChatPanel
314
+ v-if="nodeId"
315
+ :doc-id="nodeId"
316
+ :label="nodeLabel || 'Chat'"
317
+ />
318
+ </div>
319
+
320
+ <!-- Settings tab — snapshots wired by default; permissions and
321
+ encryption are app-supplied via slots. -->
322
+ <div
323
+ v-if="showSettingsTab"
324
+ v-show="activeTab === 'settings'"
325
+ class="min-h-[60vh]"
326
+ >
327
+ <ANodeSettingsPanel
328
+ v-if="nodeId"
329
+ :doc-id="nodeId"
330
+ :doc-type-key="currentType"
331
+ :doc-meta="meta"
332
+ @update-meta="patchMeta"
333
+ />
334
+ </div>
335
+
215
336
  <!-- Properties tab -->
216
337
  <div
217
338
  v-show="activeTab === 'properties'"
@@ -1,15 +1,42 @@
1
1
  import type { AbracadabraLocale } from '../locale.js';
2
+ import type { DocPageMeta } from '../types.js';
2
3
  type __VLS_Props = {
3
4
  nodeId: string | null;
4
5
  nodeLabel?: string;
5
6
  childProvider?: any;
6
7
  docType?: string;
7
8
  labels?: Partial<AbracadabraLocale['nodePanel']>;
9
+ /** Tab to open initially. Defaults to 'editor'. */
10
+ initialTab?: 'editor' | 'properties' | 'chat' | 'settings' | string;
11
+ /**
12
+ * Built-in tabs to render. Defaults to all-on; pass an array to limit which
13
+ * tabs appear (useful when a developer wants only properties + chat).
14
+ * Plugin-registered tab slots are unaffected.
15
+ */
16
+ tabs?: Array<'editor' | 'properties' | 'chat' | 'settings'>;
8
17
  };
9
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ declare var __VLS_11: {
19
+ nodeId: string | null;
20
+ nodeLabel: string | undefined;
21
+ editor: any;
22
+ meta: DocPageMeta;
23
+ docTypeDef: import("../utils/docTypes.js").DocTypeDefinition;
24
+ };
25
+ type __VLS_Slots = {} & {
26
+ header?: (props: typeof __VLS_11) => any;
27
+ };
28
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
29
  close: () => any;
11
30
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
12
31
  onClose?: (() => any) | undefined;
13
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
32
+ }>, {
33
+ initialTab: "editor" | "properties" | "chat" | "settings" | string;
34
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
35
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
36
  declare const _default: typeof __VLS_export;
15
37
  export default _default;
38
+ type __VLS_WithSlots<T, S> = T & {
39
+ new (): {
40
+ $slots: S;
41
+ };
42
+ };