@dxos/plugin-deck 0.8.4-main.422d1c7879 → 0.8.4-main.4f23b4e393

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 (349) hide show
  1. package/dist/lib/neutral/DeckLayout-6SICSSUF.mjs +278 -0
  2. package/dist/lib/neutral/DeckLayout-6SICSSUF.mjs.map +7 -0
  3. package/dist/lib/neutral/DeckPlugin.mjs +70 -0
  4. package/dist/lib/neutral/DeckPlugin.mjs.map +7 -0
  5. package/dist/lib/neutral/DeckPlugin.node.mjs +18 -0
  6. package/dist/lib/neutral/DeckPlugin.node.mjs.map +7 -0
  7. package/dist/lib/neutral/DeckSettings-W5I57OXM.mjs +27 -0
  8. package/dist/lib/neutral/DeckSettings-W5I57OXM.mjs.map +7 -0
  9. package/dist/lib/{browser/add-toast-EUN62IUE.mjs → neutral/add-toast-2OMTFZ2L.mjs} +5 -5
  10. package/dist/lib/{browser/add-toast-EUN62IUE.mjs.map → neutral/add-toast-2OMTFZ2L.mjs.map} +2 -2
  11. package/dist/lib/{browser/adjust-XWB6ZZ6U.mjs → neutral/adjust-RXTF3IT3.mjs} +15 -17
  12. package/dist/lib/neutral/adjust-RXTF3IT3.mjs.map +7 -0
  13. package/dist/lib/neutral/app-graph-builder-GZYYAN5B.mjs +129 -0
  14. package/dist/lib/neutral/app-graph-builder-GZYYAN5B.mjs.map +7 -0
  15. package/dist/lib/neutral/capabilities/index.mjs +23 -0
  16. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  17. package/dist/lib/neutral/check-app-scheme-A7FZVNZO.mjs +10 -0
  18. package/dist/lib/neutral/chunk-4MYX2NT3.mjs +1335 -0
  19. package/dist/lib/neutral/chunk-4MYX2NT3.mjs.map +7 -0
  20. package/dist/lib/neutral/chunk-64ODQD6S.mjs +282 -0
  21. package/dist/lib/neutral/chunk-64ODQD6S.mjs.map +7 -0
  22. package/dist/lib/neutral/chunk-6MOYMDKQ.mjs +8 -0
  23. package/dist/lib/neutral/chunk-6MOYMDKQ.mjs.map +7 -0
  24. package/dist/lib/neutral/chunk-GBIGQKYW.mjs +112 -0
  25. package/dist/lib/neutral/chunk-GBIGQKYW.mjs.map +7 -0
  26. package/dist/lib/{browser/chunk-KUTDCWZF.mjs → neutral/chunk-GLB73Q6U.mjs} +2 -10
  27. package/dist/lib/{browser/chunk-KUTDCWZF.mjs.map → neutral/chunk-GLB73Q6U.mjs.map} +2 -2
  28. package/dist/lib/neutral/chunk-JMYWDX4I.mjs +19 -0
  29. package/dist/lib/neutral/chunk-JMYWDX4I.mjs.map +7 -0
  30. package/dist/lib/neutral/chunk-VHETZ22W.mjs +101 -0
  31. package/dist/lib/neutral/chunk-VHETZ22W.mjs.map +7 -0
  32. package/dist/lib/{browser/chunk-DF2VZ6W3.mjs → neutral/chunk-ZYYOSX5I.mjs} +1 -1
  33. package/dist/lib/{browser/chunk-DF2VZ6W3.mjs.map → neutral/chunk-ZYYOSX5I.mjs.map} +2 -2
  34. package/dist/lib/{browser/close-JXK73YIM.mjs → neutral/close-DG5IVQCE.mjs} +12 -12
  35. package/dist/lib/{browser/close-JXK73YIM.mjs.map → neutral/close-DG5IVQCE.mjs.map} +2 -2
  36. package/dist/lib/neutral/components/index.mjs +126 -0
  37. package/dist/lib/neutral/components/index.mjs.map +7 -0
  38. package/dist/lib/neutral/containers/index.mjs +32 -0
  39. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  40. package/dist/lib/neutral/hooks/index.mjs +178 -0
  41. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  42. package/dist/lib/{node-esm/types → neutral}/index.mjs +13 -8
  43. package/dist/lib/neutral/meta.json +1 -0
  44. package/dist/lib/neutral/meta.mjs +8 -0
  45. package/dist/lib/{browser/open-K2JOEW2E.mjs → neutral/open-SGYZO7RF.mjs} +21 -24
  46. package/dist/lib/neutral/open-SGYZO7RF.mjs.map +7 -0
  47. package/dist/lib/neutral/operation-handler-266CVMTW.mjs +13 -0
  48. package/dist/lib/neutral/operation-handler-266CVMTW.mjs.map +7 -0
  49. package/dist/lib/neutral/operations/index.mjs +8 -0
  50. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  51. package/dist/lib/neutral/plugin.mjs +16 -0
  52. package/dist/lib/neutral/plugin.mjs.map +7 -0
  53. package/dist/lib/neutral/react-root-WZ6KH27J.mjs +41 -0
  54. package/dist/lib/neutral/react-root-WZ6KH27J.mjs.map +7 -0
  55. package/dist/lib/neutral/react-surface-KAAZDHV3.mjs +34 -0
  56. package/dist/lib/neutral/react-surface-KAAZDHV3.mjs.map +7 -0
  57. package/dist/lib/{browser/revert-workspace-BNIR5U64.mjs → neutral/revert-workspace-V6D7W6CL.mjs} +5 -5
  58. package/dist/lib/{browser/revert-workspace-BNIR5U64.mjs.map → neutral/revert-workspace-V6D7W6CL.mjs.map} +2 -2
  59. package/dist/lib/{browser/scroll-into-view-4GSKC3GA.mjs → neutral/scroll-into-view-UM446Q2T.mjs} +5 -5
  60. package/dist/lib/{browser/scroll-into-view-4GSKC3GA.mjs.map → neutral/scroll-into-view-UM446Q2T.mjs.map} +2 -2
  61. package/dist/lib/{browser/set-XCG6NIAO.mjs → neutral/set-JFFKT32S.mjs} +11 -11
  62. package/dist/lib/{browser/set-XCG6NIAO.mjs.map → neutral/set-JFFKT32S.mjs.map} +2 -2
  63. package/dist/lib/{browser/set-layout-mode-BEVNGOY2.mjs → neutral/set-layout-mode-I4YV5V2Y.mjs} +10 -15
  64. package/dist/lib/neutral/set-layout-mode-I4YV5V2Y.mjs.map +7 -0
  65. package/dist/lib/neutral/settings-FE7AC5VS.mjs +34 -0
  66. package/dist/lib/neutral/settings-FE7AC5VS.mjs.map +7 -0
  67. package/dist/lib/{browser/show-undo-5RQNREEB.mjs → neutral/show-undo-ZCMF4J2Q.mjs} +5 -5
  68. package/dist/lib/{browser/show-undo-5RQNREEB.mjs.map → neutral/show-undo-ZCMF4J2Q.mjs.map} +2 -2
  69. package/dist/lib/neutral/state-IIDXMQUO.mjs +86 -0
  70. package/dist/lib/neutral/state-IIDXMQUO.mjs.map +7 -0
  71. package/dist/lib/{browser/switch-workspace-ICJJWNFT.mjs → neutral/switch-workspace-CVDYG5YZ.mjs} +8 -16
  72. package/dist/lib/neutral/switch-workspace-CVDYG5YZ.mjs.map +7 -0
  73. package/dist/lib/neutral/translations.mjs +57 -0
  74. package/dist/lib/neutral/translations.mjs.map +7 -0
  75. package/dist/lib/{browser → neutral}/types/index.mjs +7 -5
  76. package/dist/lib/neutral/types/index.mjs.map +7 -0
  77. package/dist/lib/{browser/update-companion-VPCBH3YT.mjs → neutral/update-companion-VPCM7FJX.mjs} +7 -7
  78. package/dist/lib/neutral/update-companion-VPCM7FJX.mjs.map +7 -0
  79. package/dist/lib/{browser/update-complementary-74DEQY6T.mjs → neutral/update-complementary-SEQ6DDWA.mjs} +6 -6
  80. package/dist/lib/neutral/update-complementary-SEQ6DDWA.mjs.map +7 -0
  81. package/dist/lib/{browser/update-dialog-6TDUYI5R.mjs → neutral/update-dialog-VDHYE4QH.mjs} +5 -5
  82. package/dist/lib/{browser/update-dialog-6TDUYI5R.mjs.map → neutral/update-dialog-VDHYE4QH.mjs.map} +2 -2
  83. package/dist/lib/neutral/update-plank-size-ZXOUZD7Y.mjs +26 -0
  84. package/dist/lib/neutral/update-plank-size-ZXOUZD7Y.mjs.map +7 -0
  85. package/dist/lib/{browser/update-popover-W7E2Z5T6.mjs → neutral/update-popover-VFP32W57.mjs} +5 -5
  86. package/dist/lib/{browser/update-popover-W7E2Z5T6.mjs.map → neutral/update-popover-VFP32W57.mjs.map} +2 -2
  87. package/dist/lib/{browser/update-sidebar-H3A6ZFRU.mjs → neutral/update-sidebar-O5HBOXYH.mjs} +6 -6
  88. package/dist/lib/{browser/update-sidebar-H3A6ZFRU.mjs.map → neutral/update-sidebar-O5HBOXYH.mjs.map} +2 -2
  89. package/dist/lib/neutral/url-handler-3QTKEM2K.mjs +184 -0
  90. package/dist/lib/neutral/url-handler-3QTKEM2K.mjs.map +7 -0
  91. package/dist/types/src/DeckPlugin.d.ts +1 -0
  92. package/dist/types/src/DeckPlugin.d.ts.map +1 -1
  93. package/dist/types/src/DeckPlugin.node.d.ts +4 -0
  94. package/dist/types/src/DeckPlugin.node.d.ts.map +1 -0
  95. package/dist/types/src/DeckPlugin.test.d.ts +2 -0
  96. package/dist/types/src/DeckPlugin.test.d.ts.map +1 -0
  97. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  98. package/dist/types/src/capabilities/check-app-scheme.d.ts +1 -1
  99. package/dist/types/src/capabilities/check-app-scheme.d.ts.map +1 -1
  100. package/dist/types/src/capabilities/index.d.ts +17 -17
  101. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
  103. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  107. package/dist/types/src/capabilities/state.d.ts +16 -16
  108. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  109. package/dist/types/src/capabilities/tools.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/url-handler.d.ts +1 -1
  111. package/dist/types/src/capabilities/url-handler.d.ts.map +1 -1
  112. package/dist/types/src/components/DeckSettings/DeckSettings.d.ts.map +1 -1
  113. package/dist/types/src/components/DeckSettings/DeckSettings.stories.d.ts +42 -52
  114. package/dist/types/src/components/DeckSettings/DeckSettings.stories.d.ts.map +1 -1
  115. package/dist/types/src/components/Matrix/Matrix.d.ts +2 -2
  116. package/dist/types/src/components/Matrix/Matrix.d.ts.map +1 -1
  117. package/dist/types/src/components/Matrix/Matrix.stories.d.ts.map +1 -1
  118. package/dist/types/src/containers/Deck/Banner.d.ts +1 -1
  119. package/dist/types/src/containers/Deck/Banner.d.ts.map +1 -1
  120. package/dist/types/src/containers/Deck/Deck.d.ts.map +1 -1
  121. package/dist/types/src/containers/Deck/Deck.stories.d.ts +42 -52
  122. package/dist/types/src/containers/Deck/Deck.stories.d.ts.map +1 -1
  123. package/dist/types/src/containers/Deck/DeckContent.d.ts +4 -4
  124. package/dist/types/src/containers/Deck/DeckContent.d.ts.map +1 -1
  125. package/dist/types/src/containers/Deck/DeckRoot.d.ts +5 -8
  126. package/dist/types/src/containers/Deck/DeckRoot.d.ts.map +1 -1
  127. package/dist/types/src/containers/Deck/DeckViewport.d.ts +4 -7
  128. package/dist/types/src/containers/Deck/DeckViewport.d.ts.map +1 -1
  129. package/dist/types/src/containers/Deck/StatusBar.d.ts.map +1 -1
  130. package/dist/types/src/containers/DeckLayout/DeckLayout.d.ts.map +1 -1
  131. package/dist/types/src/containers/DeckLayout/DeckLayout.stories.d.ts +42 -52
  132. package/dist/types/src/containers/DeckLayout/DeckLayout.stories.d.ts.map +1 -1
  133. package/dist/types/src/containers/DeckLayout/Popover.d.ts.map +1 -1
  134. package/dist/types/src/containers/DeckLayout/Toast.d.ts +1 -1
  135. package/dist/types/src/containers/DeckLayout/Toast.d.ts.map +1 -1
  136. package/dist/types/src/containers/DeckLayout/index.d.ts.map +1 -1
  137. package/dist/types/src/containers/Plank/Plank.d.ts +1 -1
  138. package/dist/types/src/containers/Plank/Plank.d.ts.map +1 -1
  139. package/dist/types/src/containers/Plank/Plank.stories.d.ts +42 -52
  140. package/dist/types/src/containers/Plank/Plank.stories.d.ts.map +1 -1
  141. package/dist/types/src/containers/Plank/PlankContent.d.ts +1 -1
  142. package/dist/types/src/containers/Plank/PlankError.d.ts +1 -1
  143. package/dist/types/src/containers/Plank/PlankError.d.ts.map +1 -1
  144. package/dist/types/src/containers/Plank/PlankRoot.d.ts +1 -1
  145. package/dist/types/src/containers/Plank/PlankRoot.d.ts.map +1 -1
  146. package/dist/types/src/containers/Sidebar/ComplementarySidebar.d.ts.map +1 -1
  147. package/dist/types/src/containers/Sidebar/SidebarButton.d.ts +1 -1
  148. package/dist/types/src/containers/Sidebar/SidebarButton.d.ts.map +1 -1
  149. package/dist/types/src/hooks/useBreakpoints.d.ts +1 -1
  150. package/dist/types/src/hooks/useCompanions.d.ts.map +1 -1
  151. package/dist/types/src/hooks/useDeckCompanions.d.ts +1 -1
  152. package/dist/types/src/hooks/useDeckCompanions.d.ts.map +1 -1
  153. package/dist/types/src/hooks/useHoistStatusbar.d.ts.map +1 -1
  154. package/dist/types/src/hooks/useMainSize.d.ts.map +1 -1
  155. package/dist/types/src/hooks/useNodeActionExpander.d.ts.map +1 -1
  156. package/dist/types/src/hooks/useSelectedCompanion.d.ts.map +1 -1
  157. package/dist/types/src/index.d.ts +1 -3
  158. package/dist/types/src/index.d.ts.map +1 -1
  159. package/dist/types/src/layout.d.ts.map +1 -1
  160. package/dist/types/src/meta.d.ts.map +1 -1
  161. package/dist/types/src/operations/add-toast.d.ts +1 -1
  162. package/dist/types/src/operations/add-toast.d.ts.map +1 -1
  163. package/dist/types/src/operations/adjust.d.ts +3 -3
  164. package/dist/types/src/operations/adjust.d.ts.map +1 -1
  165. package/dist/types/src/operations/close.d.ts +1 -1
  166. package/dist/types/src/operations/close.d.ts.map +1 -1
  167. package/dist/types/src/operations/helpers.d.ts.map +1 -1
  168. package/dist/types/src/operations/index.d.ts +1 -2
  169. package/dist/types/src/operations/index.d.ts.map +1 -1
  170. package/dist/types/src/operations/open.d.ts +1 -1
  171. package/dist/types/src/operations/open.d.ts.map +1 -1
  172. package/dist/types/src/operations/revert-workspace.d.ts +1 -1
  173. package/dist/types/src/operations/revert-workspace.d.ts.map +1 -1
  174. package/dist/types/src/operations/scroll-into-view.d.ts +1 -1
  175. package/dist/types/src/operations/scroll-into-view.d.ts.map +1 -1
  176. package/dist/types/src/operations/set-layout-mode.d.ts +1 -1
  177. package/dist/types/src/operations/set-layout-mode.d.ts.map +1 -1
  178. package/dist/types/src/operations/set.d.ts +1 -1
  179. package/dist/types/src/operations/set.d.ts.map +1 -1
  180. package/dist/types/src/operations/show-undo.d.ts +1 -1
  181. package/dist/types/src/operations/show-undo.d.ts.map +1 -1
  182. package/dist/types/src/operations/switch-workspace.d.ts +1 -1
  183. package/dist/types/src/operations/switch-workspace.d.ts.map +1 -1
  184. package/dist/types/src/operations/update-companion.d.ts +1 -1
  185. package/dist/types/src/operations/update-companion.d.ts.map +1 -1
  186. package/dist/types/src/operations/update-complementary.d.ts +1 -1
  187. package/dist/types/src/operations/update-complementary.d.ts.map +1 -1
  188. package/dist/types/src/operations/update-dialog.d.ts +1 -1
  189. package/dist/types/src/operations/update-dialog.d.ts.map +1 -1
  190. package/dist/types/src/operations/update-plank-size.d.ts +3 -3
  191. package/dist/types/src/operations/update-plank-size.d.ts.map +1 -1
  192. package/dist/types/src/operations/update-popover.d.ts +1 -1
  193. package/dist/types/src/operations/update-popover.d.ts.map +1 -1
  194. package/dist/types/src/operations/update-sidebar.d.ts +1 -1
  195. package/dist/types/src/operations/update-sidebar.d.ts.map +1 -1
  196. package/dist/types/src/plugin.d.ts +4 -0
  197. package/dist/types/src/plugin.d.ts.map +1 -0
  198. package/dist/types/src/translations.d.ts +42 -53
  199. package/dist/types/src/translations.d.ts.map +1 -1
  200. package/dist/types/src/types/DeckCapabilities.d.ts +188 -0
  201. package/dist/types/src/types/DeckCapabilities.d.ts.map +1 -0
  202. package/dist/types/src/types/DeckEvents.d.ts +5 -0
  203. package/dist/types/src/types/DeckEvents.d.ts.map +1 -0
  204. package/dist/types/src/types/DeckOperation.d.ts +15 -0
  205. package/dist/types/src/types/DeckOperation.d.ts.map +1 -0
  206. package/dist/types/src/types/Settings.d.ts +5 -5
  207. package/dist/types/src/types/Settings.d.ts.map +1 -1
  208. package/dist/types/src/types/index.d.ts +3 -2
  209. package/dist/types/src/types/index.d.ts.map +1 -1
  210. package/dist/types/src/types/schema.d.ts +0 -1
  211. package/dist/types/src/types/schema.d.ts.map +1 -1
  212. package/dist/types/src/util/layoutAppliesTopbar.d.ts.map +1 -1
  213. package/dist/types/src/util/plank-url-params.d.ts.map +1 -1
  214. package/dist/types/src/util/sanitize-persisted-state.d.ts.map +1 -1
  215. package/dist/types/src/util/set-active.d.ts.map +1 -1
  216. package/dist/types/tsconfig.tsbuildinfo +1 -1
  217. package/package.json +102 -66
  218. package/src/DeckPlugin.node.ts +17 -0
  219. package/src/DeckPlugin.test.ts +27 -0
  220. package/src/DeckPlugin.ts +4 -3
  221. package/src/capabilities/app-graph-builder.ts +3 -3
  222. package/src/capabilities/index.ts +1 -1
  223. package/src/capabilities/operation-handler.ts +1 -1
  224. package/src/capabilities/settings.ts +1 -1
  225. package/src/capabilities/url-handler.ts +1 -1
  226. package/src/components/DeckSettings/DeckSettings.stories.tsx +2 -1
  227. package/src/components/DeckSettings/DeckSettings.tsx +8 -47
  228. package/src/components/Matrix/Matrix.stories.tsx +1 -1
  229. package/src/containers/Deck/Banner.tsx +2 -2
  230. package/src/containers/Deck/Deck.stories.tsx +1 -1
  231. package/src/containers/Deck/DeckContent.tsx +1 -1
  232. package/src/containers/Deck/DeckViewport.tsx +4 -9
  233. package/src/containers/DeckLayout/ActiveNode.tsx +1 -1
  234. package/src/containers/DeckLayout/DeckLayout.stories.tsx +2 -2
  235. package/src/containers/DeckLayout/Fallback.tsx +1 -1
  236. package/src/containers/Plank/Plank.stories.tsx +2 -2
  237. package/src/containers/Plank/PlankHeading.tsx +3 -3
  238. package/src/containers/Plank/PlankLoading.tsx +1 -1
  239. package/src/containers/Plank/PlankRoot.tsx +1 -1
  240. package/src/containers/Sidebar/ComplementarySidebar.tsx +5 -7
  241. package/src/containers/Sidebar/SidebarButton.tsx +7 -1
  242. package/src/hooks/useDeckCompanions.ts +1 -1
  243. package/src/index.ts +1 -3
  244. package/src/meta.ts +1 -0
  245. package/src/operations/add-toast.ts +1 -1
  246. package/src/operations/adjust.ts +4 -5
  247. package/src/operations/close.ts +2 -2
  248. package/src/operations/index.ts +1 -3
  249. package/src/operations/open.ts +7 -7
  250. package/src/operations/revert-workspace.ts +1 -1
  251. package/src/operations/scroll-into-view.ts +1 -1
  252. package/src/operations/set-layout-mode.ts +1 -1
  253. package/src/operations/set.ts +2 -2
  254. package/src/operations/show-undo.ts +1 -1
  255. package/src/operations/switch-workspace.ts +1 -1
  256. package/src/operations/update-companion.ts +1 -1
  257. package/src/operations/update-complementary.ts +1 -1
  258. package/src/operations/update-dialog.ts +1 -1
  259. package/src/operations/update-plank-size.ts +3 -4
  260. package/src/operations/update-popover.ts +1 -1
  261. package/src/operations/update-sidebar.ts +1 -1
  262. package/src/plugin.ts +11 -0
  263. package/src/translations.ts +2 -12
  264. package/src/types/DeckCapabilities.ts +34 -0
  265. package/src/types/DeckEvents.ts +21 -0
  266. package/src/{operations/definitions.ts → types/DeckOperation.ts} +6 -4
  267. package/src/types/Settings.ts +30 -5
  268. package/src/types/index.ts +4 -2
  269. package/src/types/schema.ts +0 -2
  270. package/dist/lib/browser/adjust-XWB6ZZ6U.mjs.map +0 -7
  271. package/dist/lib/browser/chunk-5LM6A3EC.mjs +0 -208
  272. package/dist/lib/browser/chunk-5LM6A3EC.mjs.map +0 -7
  273. package/dist/lib/browser/chunk-BRZAVPMC.mjs +0 -48
  274. package/dist/lib/browser/chunk-BRZAVPMC.mjs.map +0 -7
  275. package/dist/lib/browser/chunk-FRVCL5NO.mjs +0 -72
  276. package/dist/lib/browser/chunk-FRVCL5NO.mjs.map +0 -7
  277. package/dist/lib/browser/index.mjs +0 -201
  278. package/dist/lib/browser/index.mjs.map +0 -7
  279. package/dist/lib/browser/meta.json +0 -1
  280. package/dist/lib/browser/open-K2JOEW2E.mjs.map +0 -7
  281. package/dist/lib/browser/operations/index.mjs +0 -13
  282. package/dist/lib/browser/operations/index.mjs.map +0 -7
  283. package/dist/lib/browser/set-layout-mode-BEVNGOY2.mjs.map +0 -7
  284. package/dist/lib/browser/switch-workspace-ICJJWNFT.mjs.map +0 -7
  285. package/dist/lib/browser/update-companion-VPCBH3YT.mjs.map +0 -7
  286. package/dist/lib/browser/update-complementary-74DEQY6T.mjs.map +0 -7
  287. package/dist/lib/browser/update-plank-size-5VHZOTHE.mjs +0 -28
  288. package/dist/lib/browser/update-plank-size-5VHZOTHE.mjs.map +0 -7
  289. package/dist/lib/node-esm/add-toast-AZM7NFNM.mjs +0 -25
  290. package/dist/lib/node-esm/add-toast-AZM7NFNM.mjs.map +0 -7
  291. package/dist/lib/node-esm/adjust-ICALXQ6F.mjs +0 -96
  292. package/dist/lib/node-esm/adjust-ICALXQ6F.mjs.map +0 -7
  293. package/dist/lib/node-esm/chunk-A63Q53TW.mjs +0 -73
  294. package/dist/lib/node-esm/chunk-A63Q53TW.mjs.map +0 -7
  295. package/dist/lib/node-esm/chunk-B7WZXRW4.mjs +0 -209
  296. package/dist/lib/node-esm/chunk-B7WZXRW4.mjs.map +0 -7
  297. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  298. package/dist/lib/node-esm/chunk-IRWCUYJY.mjs +0 -71
  299. package/dist/lib/node-esm/chunk-IRWCUYJY.mjs.map +0 -7
  300. package/dist/lib/node-esm/chunk-MB4SDDVY.mjs +0 -50
  301. package/dist/lib/node-esm/chunk-MB4SDDVY.mjs.map +0 -7
  302. package/dist/lib/node-esm/chunk-MLVJ2ODW.mjs +0 -32
  303. package/dist/lib/node-esm/chunk-MLVJ2ODW.mjs.map +0 -7
  304. package/dist/lib/node-esm/close-GC5V3GD5.mjs +0 -45
  305. package/dist/lib/node-esm/close-GC5V3GD5.mjs.map +0 -7
  306. package/dist/lib/node-esm/index.mjs +0 -202
  307. package/dist/lib/node-esm/index.mjs.map +0 -7
  308. package/dist/lib/node-esm/meta.json +0 -1
  309. package/dist/lib/node-esm/open-XXEHIR6G.mjs +0 -151
  310. package/dist/lib/node-esm/open-XXEHIR6G.mjs.map +0 -7
  311. package/dist/lib/node-esm/operations/index.mjs +0 -14
  312. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  313. package/dist/lib/node-esm/revert-workspace-WCXAL5C6.mjs +0 -22
  314. package/dist/lib/node-esm/revert-workspace-WCXAL5C6.mjs.map +0 -7
  315. package/dist/lib/node-esm/scroll-into-view-2ZNU44ZO.mjs +0 -22
  316. package/dist/lib/node-esm/scroll-into-view-2ZNU44ZO.mjs.map +0 -7
  317. package/dist/lib/node-esm/set-5MO2JCUQ.mjs +0 -38
  318. package/dist/lib/node-esm/set-5MO2JCUQ.mjs.map +0 -7
  319. package/dist/lib/node-esm/set-layout-mode-3RK4HIG7.mjs +0 -91
  320. package/dist/lib/node-esm/set-layout-mode-3RK4HIG7.mjs.map +0 -7
  321. package/dist/lib/node-esm/show-undo-WV7SAYGJ.mjs +0 -60
  322. package/dist/lib/node-esm/show-undo-WV7SAYGJ.mjs.map +0 -7
  323. package/dist/lib/node-esm/switch-workspace-VNM75H66.mjs +0 -69
  324. package/dist/lib/node-esm/switch-workspace-VNM75H66.mjs.map +0 -7
  325. package/dist/lib/node-esm/update-companion-SIB3GWH7.mjs +0 -33
  326. package/dist/lib/node-esm/update-companion-SIB3GWH7.mjs.map +0 -7
  327. package/dist/lib/node-esm/update-complementary-CZTIVIXU.mjs +0 -29
  328. package/dist/lib/node-esm/update-complementary-CZTIVIXU.mjs.map +0 -7
  329. package/dist/lib/node-esm/update-dialog-HEDV5XBB.mjs +0 -30
  330. package/dist/lib/node-esm/update-dialog-HEDV5XBB.mjs.map +0 -7
  331. package/dist/lib/node-esm/update-plank-size-JJLU7VE3.mjs +0 -29
  332. package/dist/lib/node-esm/update-plank-size-JJLU7VE3.mjs.map +0 -7
  333. package/dist/lib/node-esm/update-popover-HI5TU2VT.mjs +0 -34
  334. package/dist/lib/node-esm/update-popover-HI5TU2VT.mjs.map +0 -7
  335. package/dist/lib/node-esm/update-sidebar-QB5BA655.mjs +0 -26
  336. package/dist/lib/node-esm/update-sidebar-QB5BA655.mjs.map +0 -7
  337. package/dist/types/src/operations/definitions.d.ts +0 -15
  338. package/dist/types/src/operations/definitions.d.ts.map +0 -1
  339. package/dist/types/src/types/capabilities.d.ts +0 -191
  340. package/dist/types/src/types/capabilities.d.ts.map +0 -1
  341. package/dist/types/src/types/events.d.ts +0 -7
  342. package/dist/types/src/types/events.d.ts.map +0 -1
  343. package/src/types/capabilities.ts +0 -35
  344. package/src/types/events.ts +0 -21
  345. /package/dist/lib/{browser/chunk-J5LGTIGS.mjs.map → neutral/check-app-scheme-A7FZVNZO.mjs.map} +0 -0
  346. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  347. /package/dist/lib/{browser/types/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  348. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
  349. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/meta.mjs.map} +0 -0
@@ -84,13 +84,12 @@ export const ComplementarySidebar = ({ current }: ComplementarySidebarProps) =>
84
84
  ]}
85
85
  >
86
86
  {/* R0 Tabs */}
87
- <Tabs.Root orientation='vertical' value={internalValue} classNames='contents'>
87
+ <Tabs.Root classNames='contents' orientation='vertical' value={internalValue}>
88
88
  <div
89
89
  data-tauri-drag-region
90
- role='none'
91
90
  style={iconSize(5)}
92
91
  className={mx(
93
- 'absolute z-20 inset-y-0 end-0 w-(--dx-r0-size)!',
92
+ 'absolute z-1 inset-y-0 end-0 w-(--dx-r0-size)!',
94
93
  'py-[env(safe-area-inset-top)] pb-[env(safe-area-inset-bottom)] border-s border-subdued-separator',
95
94
  'grid grid-cols-1 grid-rows-[1fr_min-content] bg-toolbar-surface dx-contain-layout dx-app-drag',
96
95
  )}
@@ -120,14 +119,13 @@ export const ComplementarySidebar = ({ current }: ComplementarySidebarProps) =>
120
119
  </Tabs.Tablist>
121
120
  {!hoistStatusbar && (
122
121
  <div
123
- role='none'
124
- className='grid grid-cols-1 auto-rows-(--dx-rail-item) gap-0.5 overflow-y-auto'
122
+ className='grid grid-cols-1 auto-rows-(--dx-rail-item) py-0.5 gap-0.5 overflow-y-auto scrollbar-none'
125
123
  style={iconSize(4)}
126
124
  >
127
125
  <Surface.Surface role='status-indicator' />
128
126
  </div>
129
127
  )}
130
- <div role='none' className='hidden lg:grid grid-cols-1 auto-rows-(--dx-rail-action) p-1'>
128
+ <div className='hidden lg:grid grid-cols-1 auto-rows-(--dx-rail-action) p-1'>
131
129
  <ToggleComplementarySidebarButton />
132
130
  </div>
133
131
  </div>
@@ -140,7 +138,7 @@ export const ComplementarySidebar = ({ current }: ComplementarySidebarProps) =>
140
138
  value={getLinkedVariant(companion.id)}
141
139
  classNames={[
142
140
  'absolute data-[state="inactive"]:-z-[1] overflow-hidden',
143
- 'inset-y-0 start-0 w-[calc(100%-var(--dx-r0-size))] lg:w-(--dx-r1-size)',
141
+ 'inset-y-0 start-0 w-full lg:w-(--dx-r1-size)',
144
142
  ]}
145
143
  {...(state.complementarySidebarState !== 'expanded' && { inert: true })}
146
144
  >
@@ -80,13 +80,19 @@ export const ToggleComplementarySidebarButton = ({
80
80
  }
81
81
  }, [state, updateState, current, companions, invokePromise]);
82
82
 
83
+ const label = t(
84
+ state.complementarySidebarState === 'expanded'
85
+ ? 'close-complementary-sidebar.label'
86
+ : 'open-complementary-sidebar.label',
87
+ );
88
+
83
89
  return (
84
90
  <IconButton
85
91
  variant='ghost'
86
92
  classNames={['[&>svg]:-scale-x-100', classNames]}
87
93
  icon='ph--sidebar-simple--regular'
88
94
  iconOnly
89
- label={t('open-complementary-sidebar.label')}
95
+ label={label}
90
96
  tooltipSide={inR0 ? 'left' : undefined}
91
97
  onClick={handleClick}
92
98
  />
@@ -5,7 +5,7 @@
5
5
  import { useAppGraph } from '@dxos/app-toolkit/ui';
6
6
  import { Node, type Node as NodeType } from '@dxos/plugin-graph';
7
7
  import { useConnections } from '@dxos/plugin-graph';
8
- import { type Label } from '@dxos/ui-types';
8
+ import { type Label } from '@dxos/ui-types/translations';
9
9
  import { type Position, byPosition } from '@dxos/util';
10
10
 
11
11
  import { DECK_COMPANION_TYPE } from '#types';
package/src/index.ts CHANGED
@@ -2,7 +2,5 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- export { DeckCapabilities, DeckEvents } from './types';
6
- export * from './DeckPlugin';
7
5
  export * from './meta';
8
- export { useCompanions } from './hooks';
6
+ export * from './types';
package/src/meta.ts CHANGED
@@ -13,4 +13,5 @@ export const meta: Plugin.Meta = {
13
13
  Customize your workspace organization with drag-and-drop layout management.
14
14
  `,
15
15
  icon: 'ph--layout--regular',
16
+ tags: ['system'],
16
17
  };
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
@@ -8,18 +8,17 @@ import * as Option from 'effect/Option';
8
8
 
9
9
  import { Capabilities, Capability } from '@dxos/app-framework';
10
10
  import { AppCapabilities, LayoutOperation } from '@dxos/app-toolkit';
11
- import { Operation } from '@dxos/operation';
12
- import { AttentionCapabilities } from '@dxos/plugin-attention/types';
11
+ import { Operation } from '@dxos/compute';
12
+ import { AttentionCapabilities } from '@dxos/plugin-attention';
13
13
  import { Graph } from '@dxos/plugin-graph';
14
14
  import { byPosition } from '@dxos/util';
15
15
 
16
16
  import { incrementPlank } from '../layout';
17
- import { DeckCapabilities, PLANK_COMPANION_TYPE } from '../types';
17
+ import { DeckCapabilities, DeckOperation, PLANK_COMPANION_TYPE } from '../types';
18
18
  import { computeActiveUpdates } from '../util';
19
- import { Adjust } from './definitions';
20
19
  import { updateActiveDeck } from './helpers';
21
20
 
22
- const handler: Operation.WithHandler<typeof Adjust> = Adjust.pipe(
21
+ const handler: Operation.WithHandler<typeof DeckOperation.Adjust> = DeckOperation.Adjust.pipe(
23
22
  Operation.withHandler(
24
23
  Effect.fnUntraced(function* (input) {
25
24
  const _state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
@@ -6,8 +6,8 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities, Capability } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
10
- import { AttentionCapabilities } from '@dxos/plugin-attention/types';
9
+ import { Operation } from '@dxos/compute';
10
+ import { AttentionCapabilities } from '@dxos/plugin-attention';
11
11
 
12
12
  import { closeEntry } from '../layout';
13
13
  import { DeckCapabilities } from '../types';
@@ -2,9 +2,7 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { OperationHandlerSet } from '@dxos/operation';
6
-
7
- export * as DeckOperation from './definitions';
5
+ import { OperationHandlerSet } from '@dxos/compute';
8
6
 
9
7
  export const DeckOperationHandlerSet = OperationHandlerSet.lazy(
10
8
  () => import('./add-toast'),
@@ -13,13 +13,13 @@ import {
13
13
  expandPath,
14
14
  validateNavigationTarget,
15
15
  } from '@dxos/app-toolkit';
16
+ import { Operation } from '@dxos/compute';
16
17
  import { Context } from '@dxos/context';
17
18
  import { Obj } from '@dxos/echo';
18
- import { Operation } from '@dxos/operation';
19
- import { AttentionCapabilities } from '@dxos/plugin-attention/types';
20
- import { ClientCapabilities } from '@dxos/plugin-client/types';
19
+ import { AttentionCapabilities } from '@dxos/plugin-attention';
20
+ import { ClientCapabilities } from '@dxos/plugin-client';
21
21
  import { Graph } from '@dxos/plugin-graph';
22
- import { ObservabilityOperation } from '@dxos/plugin-observability/operations';
22
+ import { ObservabilityOperation } from '@dxos/plugin-observability';
23
23
 
24
24
  import { openSubjectsOnActiveDeck } from '../layout';
25
25
  import { DeckCapabilities } from '../types';
@@ -74,7 +74,7 @@ const handler: Operation.WithHandler<typeof LayoutOperation.Open> = LayoutOperat
74
74
  const deck = yield* DeckCapabilities.getDeck();
75
75
  const active = !deck.solo && deck.initialized ? deck.active : [];
76
76
  if (active.length > 0 && input.subject.length > 0) {
77
- const resolveDxn = (qualifiedPath: string) =>
77
+ const resolveDXN = (qualifiedPath: string) =>
78
78
  Effect.reduce(pathResolvers, Option.none<string>(), (acc, resolver) =>
79
79
  Option.isSome(acc)
80
80
  ? Effect.succeed(acc)
@@ -88,7 +88,7 @@ const handler: Operation.WithHandler<typeof LayoutOperation.Open> = LayoutOperat
88
88
  const deckDxnMap = new Map<string, string>();
89
89
  yield* Effect.all(
90
90
  active.map((deckId) =>
91
- resolveDxn(deckId).pipe(
91
+ resolveDXN(deckId).pipe(
92
92
  Effect.map((opt) => {
93
93
  if (Option.isSome(opt)) {
94
94
  deckDxnMap.set(opt.value, deckId);
@@ -103,7 +103,7 @@ const handler: Operation.WithHandler<typeof LayoutOperation.Open> = LayoutOperat
103
103
  if (deckDxnMap.size > 0) {
104
104
  const remapped = yield* Effect.all(
105
105
  input.subject.map((subjectId) =>
106
- resolveDxn(subjectId).pipe(
106
+ resolveDXN(subjectId).pipe(
107
107
  Effect.map((opt) => {
108
108
  if (Option.isSome(opt)) {
109
109
  const existing = deckDxnMap.get(opt.value);
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
@@ -6,8 +6,8 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
+ import { Operation } from '@dxos/compute';
9
10
  import { log } from '@dxos/log';
10
- import { Operation } from '@dxos/operation';
11
11
  import { isNonNullable } from '@dxos/util';
12
12
 
13
13
  import { DeckCapabilities, type DeckState, type LayoutMode, getMode, isLayoutMode } from '../types';
@@ -6,8 +6,8 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities, Capability } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
10
- import { AttentionCapabilities } from '@dxos/plugin-attention/types';
9
+ import { Operation } from '@dxos/compute';
10
+ import { AttentionCapabilities } from '@dxos/plugin-attention';
11
11
 
12
12
  import { DeckCapabilities } from '../types';
13
13
  import { computeActiveUpdates } from '../util';
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities, Capability, UndoOperation } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { meta } from '#meta';
12
12
 
@@ -6,8 +6,8 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities, Capability } from '@dxos/app-framework';
8
8
  import { AppCapabilities, isPinnedWorkspace, LayoutOperation } from '@dxos/app-toolkit';
9
+ import { Operation } from '@dxos/compute';
9
10
  import { invariant } from '@dxos/invariant';
10
- import { Operation } from '@dxos/operation';
11
11
  import { Graph, Node } from '@dxos/plugin-graph';
12
12
 
13
13
  import { DeckCapabilities, defaultDeck } from '../types';
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
  import { getLinkedVariant } from '@dxos/react-ui-attention';
11
11
 
12
12
  import { DeckCapabilities } from '../types';
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
@@ -5,13 +5,12 @@
5
5
  import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
- import { Operation } from '@dxos/operation';
8
+ import { Operation } from '@dxos/compute';
9
9
 
10
- import { DeckCapabilities } from '../types';
11
- import { UpdatePlankSize } from './definitions';
10
+ import { DeckCapabilities, DeckOperation } from '../types';
12
11
  import { updateActiveDeck } from './helpers';
13
12
 
14
- const handler: Operation.WithHandler<typeof UpdatePlankSize> = UpdatePlankSize.pipe(
13
+ const handler: Operation.WithHandler<typeof DeckOperation.UpdatePlankSize> = DeckOperation.UpdatePlankSize.pipe(
15
14
  Operation.withHandler(
16
15
  Effect.fnUntraced(function* (input) {
17
16
  yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) =>
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
@@ -6,7 +6,7 @@ import * as Effect from 'effect/Effect';
6
6
 
7
7
  import { Capabilities } from '@dxos/app-framework';
8
8
  import { LayoutOperation } from '@dxos/app-toolkit';
9
- import { Operation } from '@dxos/operation';
9
+ import { Operation } from '@dxos/compute';
10
10
 
11
11
  import { DeckCapabilities } from '../types';
12
12
 
package/src/plugin.ts ADDED
@@ -0,0 +1,11 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import { Plugin } from '@dxos/app-framework';
6
+
7
+ import { meta } from './meta';
8
+
9
+ export const DeckPlugin = Plugin.lazy(meta, () => import('#plugin'));
10
+
11
+ export { DeckOperationHandlerSet } from './operations';
@@ -14,9 +14,9 @@ export const translations = [
14
14
  'settings.title': 'Deck settings',
15
15
  'main-header.label': 'Main header',
16
16
  'open-navigation-sidebar.label': 'Open sidebar',
17
- 'collapse-navigation-sidebar.label': 'Minimize sidebar',
17
+ 'collapse-navigation-sidebar.label': 'Close sidebar',
18
18
  'open-complementary-sidebar.label': 'Open context sidebar',
19
- 'close-complementary-sidebar.label': 'Minimize context sidebar',
19
+ 'close-complementary-sidebar.label': 'Close context sidebar',
20
20
  'sidebar.title': 'Navigation sidebar',
21
21
  'complementary-sidebar.title': 'Context sidebar',
22
22
  'plugin-error.message': 'Content failed to render.',
@@ -24,10 +24,6 @@ export const translations = [
24
24
  'content-fallback.description':
25
25
  'No plugin had a response for the address you navigated to. Double-check the URL, and ensure you’ve enabled a plugin that supports the object.',
26
26
  'toggle-fullscreen.label': 'Toggle fullscreen',
27
- 'settings.show-hints.label': 'Show hints',
28
- 'settings.show-hints.description': 'Show helpful tips and keyboard shortcut hints in the interface.',
29
- 'settings.native-redirect.label': 'Enable native url redirect',
30
- 'settings.native-redirect.description': 'Redirect supported URLs to the native desktop application.',
31
27
  'undo-available.label': 'Click to undo previous action.',
32
28
  'undo-action.label': 'Undo',
33
29
  'undo-action.alt': 'Undo previous action',
@@ -51,12 +47,6 @@ export const translations = [
51
47
  'minify.label': 'Minify',
52
48
  'open-companion.label': 'Open companion',
53
49
  'close-companion.label': 'Close companion',
54
- 'settings.enable-statusbar.label': 'Show status bar',
55
- 'settings.enable-statusbar.description': 'Display a status bar at the bottom of the application.',
56
- 'settings.enable-deck.label': 'Enable Deck',
57
- 'settings.enable-deck.description': 'Display multiple panels side by side instead of one at a time.',
58
- 'settings.encapsulated-planks.label': 'Encapsulated planks',
59
- 'settings.encapsulated-planks.description': 'Render each plank inside its own isolated container.',
60
50
  'close-current.label': 'Close current plank',
61
51
  'close-others.label': 'Close other planks',
62
52
  'close-all.label': 'Close all planks',
@@ -0,0 +1,34 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import { type Atom } from '@effect-atom/atom-react';
8
+ import * as Effect from 'effect/Effect';
9
+
10
+ import { Capabilities, Capability } from '@dxos/app-framework';
11
+ import { invariant } from '@dxos/invariant';
12
+
13
+ import { meta } from '#meta';
14
+
15
+ import { type EphemeralDeckState, type DeckState, type StoredDeckState } from './schema';
16
+
17
+ export const Settings = Capability.make<Atom.Writable<import('./Settings').Settings>>(`${meta.id}.capability.settings`);
18
+
19
+ /** Persisted state (stored in KVS/localStorage). */
20
+ export const State = Capability.make<Atom.Writable<StoredDeckState>>(`${meta.id}.capability.state`);
21
+
22
+ /** Transient/ephemeral state (not persisted). */
23
+ export const EphemeralState = Capability.make<Atom.Writable<EphemeralDeckState>>(
24
+ `${meta.id}.capability.ephemeral-state`,
25
+ );
26
+
27
+ /** Get the current active deck from state. */
28
+ export const getDeck = (): Effect.Effect<DeckState, Error, Capability.Service> =>
29
+ Effect.gen(function* () {
30
+ const state = yield* Capabilities.getAtomValue(State);
31
+ const deck = state.decks[state.activeDeck];
32
+ invariant(deck, `Deck not found: ${state.activeDeck}`);
33
+ return deck;
34
+ });
@@ -0,0 +1,21 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ import { type ActivationEvent } from '@dxos/app-framework';
8
+ import { AppActivationEvents } from '@dxos/app-toolkit';
9
+
10
+ import { meta } from '#meta';
11
+
12
+ import * as DeckCapabilities from './DeckCapabilities';
13
+
14
+ export const StateReady: ActivationEvent.ActivationEvent = AppActivationEvents.createStateEvent(
15
+ `${meta.id}.state-ready`,
16
+ );
17
+
18
+ /** Fired when DeckSettings capability is ready. */
19
+ export const SettingsReady: ActivationEvent.ActivationEvent = AppActivationEvents.createSettingsEvent(
20
+ DeckCapabilities.Settings.identifier,
21
+ );
@@ -2,14 +2,16 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ // @import-as-namespace
6
+
5
7
  import * as Schema from 'effect/Schema';
6
8
 
7
9
  import { Capability } from '@dxos/app-framework';
8
- import { Operation } from '@dxos/operation';
10
+ import { Operation } from '@dxos/compute';
9
11
 
10
12
  import { meta } from '#meta';
11
13
 
12
- const PartAdjustment = Schema.Union(
14
+ const PartAdjustmentSchema = Schema.Union(
13
15
  Schema.Literal('close').annotations({ description: 'Close the plank.' }),
14
16
  Schema.Literal('companion').annotations({ description: 'Open the companion plank.' }),
15
17
  Schema.Literal('solo').annotations({ description: 'Solo the plank.' }),
@@ -18,7 +20,7 @@ const PartAdjustment = Schema.Union(
18
20
  Schema.Literal('increment-end').annotations({ description: 'Move the plank towards the end of the deck.' }),
19
21
  );
20
22
 
21
- export type PartAdjustment = Schema.Schema.Type<typeof PartAdjustment>;
23
+ export type PartAdjustment = Schema.Schema.Type<typeof PartAdjustmentSchema>;
22
24
 
23
25
  export const Adjust = Operation.make({
24
26
  meta: {
@@ -29,7 +31,7 @@ export const Adjust = Operation.make({
29
31
  services: [Capability.Service],
30
32
  input: Schema.Struct({
31
33
  id: Schema.String.annotations({ description: 'The id of the plank to adjust.' }),
32
- type: PartAdjustment.annotations({ description: 'The type of adjustment to make.' }),
34
+ type: PartAdjustmentSchema.annotations({ description: 'The type of adjustment to make.' }),
33
35
  }),
34
36
  output: Schema.Void,
35
37
  });
@@ -7,11 +7,36 @@
7
7
  import * as Schema from 'effect/Schema';
8
8
 
9
9
  export const Settings = Schema.Struct({
10
- showHints: Schema.optional(Schema.Boolean),
11
- enableDeck: Schema.optional(Schema.Boolean),
12
- enableStatusbar: Schema.optional(Schema.Boolean),
13
- enableNativeRedirect: Schema.optional(Schema.Boolean),
10
+ enableDeck: Schema.optional(
11
+ Schema.Boolean.annotations({
12
+ title: 'Enable Deck',
13
+ description: 'Display multiple panels side by side instead of one at a time.',
14
+ }),
15
+ ),
14
16
  // TODO(burdon): Rename layoutMode? (e.g., bento | encapsulated?)
15
- encapsulatedPlanks: Schema.optional(Schema.Boolean),
17
+ encapsulatedPlanks: Schema.optional(
18
+ Schema.Boolean.annotations({
19
+ title: 'Encapsulated planks',
20
+ description: 'Render each plank inside its own isolated container.',
21
+ }),
22
+ ),
23
+ enableStatusbar: Schema.optional(
24
+ Schema.Boolean.annotations({
25
+ title: 'Show status bar',
26
+ description: 'Display a status bar at the bottom of the application.',
27
+ }),
28
+ ),
29
+ showHints: Schema.optional(
30
+ Schema.Boolean.annotations({
31
+ title: 'Show hints',
32
+ description: 'Show helpful tips and keyboard shortcut hints in the interface.',
33
+ }),
34
+ ),
35
+ enableNativeRedirect: Schema.optional(
36
+ Schema.Boolean.annotations({
37
+ title: 'Enable native url redirect',
38
+ description: 'Redirect supported URLs to the native desktop application.',
39
+ }),
40
+ ),
16
41
  }).pipe(Schema.mutable);
17
42
  export interface Settings extends Schema.Schema.Type<typeof Settings> {}
@@ -2,7 +2,9 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- export * from './capabilities';
6
- export * from './events';
7
5
  export * from './schema';
6
+
7
+ export * as DeckCapabilities from './DeckCapabilities';
8
+ export * as DeckEvents from './DeckEvents';
9
+ export * as DeckOperation from './DeckOperation';
8
10
  export * as Settings from './Settings';
@@ -9,8 +9,6 @@ import { type DeepReadonly } from '@dxos/util';
9
9
 
10
10
  import { meta } from '#meta';
11
11
 
12
- export * as Settings from './Settings';
13
-
14
12
  export { PLANK_COMPANION_TYPE, DECK_COMPANION_TYPE } from '@dxos/app-toolkit';
15
13
 
16
14
  export type Part = 'solo' | 'multi' | 'complementary';
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/operations/adjust.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities, LayoutOperation } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/operation';\nimport { AttentionCapabilities } from '@dxos/plugin-attention/types';\nimport { Graph } from '@dxos/plugin-graph';\nimport { byPosition } from '@dxos/util';\n\nimport { incrementPlank } from '../layout';\nimport { DeckCapabilities, PLANK_COMPANION_TYPE } from '../types';\nimport { computeActiveUpdates } from '../util';\nimport { Adjust } from './definitions';\nimport { updateActiveDeck } from './helpers';\n\nconst handler: Operation.WithHandler<typeof Adjust> = Adjust.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (input) {\n const _state = yield* Capabilities.getAtomValue(DeckCapabilities.State);\n const deck = yield* DeckCapabilities.getDeck();\n const attention = yield* Capability.get(AttentionCapabilities.Attention);\n const { graph } = yield* Capability.get(AppCapabilities.AppGraph);\n\n let soloOperation:\n | { type: 'solo'; entryId: string; mode: string }\n | { type: 'unsolo'; entryId: string }\n | undefined;\n\n if (input.type === 'increment-end' || input.type === 'increment-start') {\n const next = incrementPlank(deck.active, input);\n const { deckUpdates } = computeActiveUpdates({ next, deck, attention });\n yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, deckUpdates));\n }\n\n if (input.type.startsWith('solo')) {\n const entryId = input.id;\n if (!deck.solo) {\n soloOperation = { type: 'solo', entryId, mode: input.type };\n } else {\n if (input.type === 'solo--fullscreen') {\n soloOperation = { type: 'solo', entryId, mode: 'solo--fullscreen' };\n } else if (input.type === 'solo') {\n soloOperation = { type: 'unsolo', entryId };\n }\n }\n }\n\n if (soloOperation?.type === 'solo') {\n yield* Operation.invoke(LayoutOperation.SetLayoutMode, {\n subject: soloOperation.entryId,\n mode: soloOperation.mode,\n });\n } else if (soloOperation?.type === 'unsolo') {\n yield* Operation.invoke(LayoutOperation.SetLayoutMode, { mode: 'multi' });\n yield* Operation.invoke(LayoutOperation.Open, { subject: [soloOperation.entryId] });\n }\n\n if (input.type === 'companion') {\n const companion = Function.pipe(\n Graph.getNode(graph, input.id),\n Option.map((node) =>\n Graph.getConnections(graph, node.id, 'child')\n .filter((n) => n.type === PLANK_COMPANION_TYPE)\n .toSorted((a, b) => byPosition(a.properties, b.properties)),\n ),\n Option.flatMap((companions) => (companions.length > 0 ? Option.some(companions[0]) : Option.none())),\n );\n\n if (Option.isSome(companion)) {\n yield* Operation.invoke(LayoutOperation.UpdateCompanion, { subject: companion.value.id });\n }\n }\n }),\n ),\n);\n\nexport default handler;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAIA,YAAYA,YAAY;AACxB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,iBAAiBC,uBAAuB;AACjD,SAASC,iBAAiB;AAC1B,SAASC,6BAA6B;AACtC,SAASC,aAAa;AACtB,SAASC,kBAAkB;AAQ3B,IAAMC,UAAgDC,OAAOC,KAC3DC,UAAUC,YACDC,kBAAW,WAAWC,OAAK;AAChC,QAAMC,SAAS,OAAOC,aAAaC,aAAaC,iBAAiBC,KAAK;AACtE,QAAMC,OAAO,OAAOF,iBAAiBG,QAAO;AAC5C,QAAMC,YAAY,OAAOC,WAAWC,IAAIC,sBAAsBC,SAAS;AACvE,QAAM,EAAEC,MAAK,IAAK,OAAOJ,WAAWC,IAAII,gBAAgBC,QAAQ;AAEhE,MAAIC;AAKJ,MAAIhB,MAAMiB,SAAS,mBAAmBjB,MAAMiB,SAAS,mBAAmB;AACtE,UAAMC,OAAOC,eAAeb,KAAKc,QAAQpB,KAAAA;AACzC,UAAM,EAAEqB,YAAW,IAAKC,qBAAqB;MAAEJ;MAAMZ;MAAME;IAAU,CAAA;AACrE,WAAON,aAAaqB,gBAAgBnB,iBAAiBC,OAAO,CAACmB,UAAUC,iBAAiBD,OAAOH,WAAAA,CAAAA;EACjG;AAEA,MAAIrB,MAAMiB,KAAKS,WAAW,MAAA,GAAS;AACjC,UAAMC,UAAU3B,MAAM4B;AACtB,QAAI,CAACtB,KAAKuB,MAAM;AACdb,sBAAgB;QAAEC,MAAM;QAAQU;QAASG,MAAM9B,MAAMiB;MAAK;IAC5D,OAAO;AACL,UAAIjB,MAAMiB,SAAS,oBAAoB;AACrCD,wBAAgB;UAAEC,MAAM;UAAQU;UAASG,MAAM;QAAmB;MACpE,WAAW9B,MAAMiB,SAAS,QAAQ;AAChCD,wBAAgB;UAAEC,MAAM;UAAUU;QAAQ;MAC5C;IACF;EACF;AAEA,MAAIX,eAAeC,SAAS,QAAQ;AAClC,WAAOpB,UAAUkC,OAAOC,gBAAgBC,eAAe;MACrDC,SAASlB,cAAcW;MACvBG,MAAMd,cAAcc;IACtB,CAAA;EACF,WAAWd,eAAeC,SAAS,UAAU;AAC3C,WAAOpB,UAAUkC,OAAOC,gBAAgBC,eAAe;MAAEH,MAAM;IAAQ,CAAA;AACvE,WAAOjC,UAAUkC,OAAOC,gBAAgBG,MAAM;MAAED,SAAS;QAAClB,cAAcW;;IAAS,CAAA;EACnF;AAEA,MAAI3B,MAAMiB,SAAS,aAAa;AAC9B,UAAMmB,YAAqBxC,cACzByC,MAAMC,QAAQzB,OAAOb,MAAM4B,EAAE,GACtBW,WAAI,CAACC,SACVH,MAAMI,eAAe5B,OAAO2B,KAAKZ,IAAI,OAAA,EAClCc,OAAO,CAACC,MAAMA,EAAE1B,SAAS2B,oBAAAA,EACzBC,SAAS,CAACC,GAAGC,MAAMC,WAAWF,EAAEG,YAAYF,EAAEE,UAAU,CAAA,CAAA,GAEtDC,eAAQ,CAACC,eAAgBA,WAAWC,SAAS,IAAWC,YAAKF,WAAW,CAAA,CAAE,IAAWG,YAAI,CAAA,CAAA;AAGlG,QAAWC,cAAOnB,SAAAA,GAAY;AAC5B,aAAOvC,UAAUkC,OAAOC,gBAAgBwB,iBAAiB;QAAEtB,SAASE,UAAUqB,MAAM7B;MAAG,CAAA;IACzF;EACF;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,iBAAelC;",
6
- "names": ["Effect", "Function", "Option", "Capabilities", "Capability", "AppCapabilities", "LayoutOperation", "Operation", "AttentionCapabilities", "Graph", "byPosition", "handler", "Adjust", "pipe", "Operation", "withHandler", "fnUntraced", "input", "_state", "Capabilities", "getAtomValue", "DeckCapabilities", "State", "deck", "getDeck", "attention", "Capability", "get", "AttentionCapabilities", "Attention", "graph", "AppCapabilities", "AppGraph", "soloOperation", "type", "next", "incrementPlank", "active", "deckUpdates", "computeActiveUpdates", "updateAtomValue", "state", "updateActiveDeck", "startsWith", "entryId", "id", "solo", "mode", "invoke", "LayoutOperation", "SetLayoutMode", "subject", "Open", "companion", "Graph", "getNode", "map", "node", "getConnections", "filter", "n", "PLANK_COMPANION_TYPE", "toSorted", "a", "b", "byPosition", "properties", "flatMap", "companions", "length", "some", "none", "isSome", "UpdateCompanion", "value"]
7
- }