@dxos/plugin-deck 0.8.4-main.bc674ce → 0.8.4-main.c351d160a8

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 (234) hide show
  1. package/dist/lib/browser/Banner-AJW6225V.mjs +14 -0
  2. package/dist/lib/browser/Banner-AJW6225V.mjs.map +7 -0
  3. package/dist/lib/browser/DeckSettings-HSSQKFNE.mjs +96 -0
  4. package/dist/lib/browser/DeckSettings-HSSQKFNE.mjs.map +7 -0
  5. package/dist/lib/browser/{app-graph-builder-DTVCULQ4.mjs → app-graph-builder-MP6INIM2.mjs} +16 -13
  6. package/dist/lib/browser/app-graph-builder-MP6INIM2.mjs.map +7 -0
  7. package/dist/lib/browser/{check-app-scheme-JSRXXIYF.mjs → check-app-scheme-AUNCD2Y6.mjs} +9 -8
  8. package/dist/lib/browser/check-app-scheme-AUNCD2Y6.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-ATFPDN6J.mjs → chunk-3P2FJVXC.mjs} +35 -49
  10. package/dist/lib/browser/chunk-3P2FJVXC.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-BJDEG7YZ.mjs +74 -0
  12. package/dist/lib/browser/chunk-BJDEG7YZ.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-L3RYMAV7.mjs +16 -0
  14. package/dist/lib/browser/chunk-L3RYMAV7.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-UNG4CLLP.mjs → chunk-TAHLKBDO.mjs} +46 -20
  16. package/dist/lib/browser/chunk-TAHLKBDO.mjs.map +7 -0
  17. package/dist/lib/browser/{chunk-S4A5UO4K.mjs → chunk-WTNYSXY5.mjs} +221 -281
  18. package/dist/lib/browser/chunk-WTNYSXY5.mjs.map +7 -0
  19. package/dist/lib/browser/index.mjs +39 -35
  20. package/dist/lib/browser/index.mjs.map +3 -3
  21. package/dist/lib/browser/meta.json +1 -1
  22. package/dist/lib/browser/{operation-resolver-CDYBLZJ4.mjs → operation-resolver-2TEGT4PG.mjs} +166 -122
  23. package/dist/lib/browser/operation-resolver-2TEGT4PG.mjs.map +7 -0
  24. package/dist/lib/browser/{react-root-XDCMNENQ.mjs → react-root-XBFHPSCP.mjs} +8 -7
  25. package/dist/lib/browser/react-root-XBFHPSCP.mjs.map +7 -0
  26. package/dist/lib/browser/react-surface-4J3BZNT2.mjs +44 -0
  27. package/dist/lib/browser/react-surface-4J3BZNT2.mjs.map +7 -0
  28. package/dist/lib/browser/{settings-OMHVGZ6V.mjs → settings-PTMGCSJH.mjs} +8 -5
  29. package/dist/lib/browser/settings-PTMGCSJH.mjs.map +7 -0
  30. package/dist/lib/browser/{state-OC3BSB6E.mjs → state-MA4SQ7BE.mjs} +11 -8
  31. package/dist/lib/browser/state-MA4SQ7BE.mjs.map +7 -0
  32. package/dist/lib/browser/{toolkit-R53LD3EA.mjs → toolkit-6B34QFU3.mjs} +10 -8
  33. package/dist/lib/browser/toolkit-6B34QFU3.mjs.map +7 -0
  34. package/dist/lib/browser/types/index.mjs +4 -5
  35. package/dist/lib/browser/{url-handler-53TE6JZO.mjs → url-handler-FEUFPQIP.mjs} +22 -17
  36. package/dist/lib/browser/url-handler-FEUFPQIP.mjs.map +7 -0
  37. package/dist/lib/node-esm/Banner-XBH2IIDR.mjs +15 -0
  38. package/dist/lib/node-esm/Banner-XBH2IIDR.mjs.map +7 -0
  39. package/dist/lib/node-esm/DeckSettings-DJRFLKQS.mjs +97 -0
  40. package/dist/lib/node-esm/DeckSettings-DJRFLKQS.mjs.map +7 -0
  41. package/dist/lib/node-esm/{app-graph-builder-473BNZDJ.mjs → app-graph-builder-ACHG5HY7.mjs} +16 -13
  42. package/dist/lib/node-esm/app-graph-builder-ACHG5HY7.mjs.map +7 -0
  43. package/dist/lib/node-esm/{check-app-scheme-IVYRHKRH.mjs → check-app-scheme-WN76GWVC.mjs} +9 -8
  44. package/dist/lib/node-esm/check-app-scheme-WN76GWVC.mjs.map +7 -0
  45. package/dist/lib/node-esm/{chunk-D34L3ECT.mjs → chunk-CQ3XYTNJ.mjs} +220 -280
  46. package/dist/lib/node-esm/chunk-CQ3XYTNJ.mjs.map +7 -0
  47. package/dist/lib/node-esm/chunk-DGTRKKWZ.mjs +76 -0
  48. package/dist/lib/node-esm/chunk-DGTRKKWZ.mjs.map +7 -0
  49. package/dist/lib/node-esm/{chunk-SKEVPQ7E.mjs → chunk-EMU4VIPH.mjs} +46 -20
  50. package/dist/lib/node-esm/chunk-EMU4VIPH.mjs.map +7 -0
  51. package/dist/lib/node-esm/{chunk-XAKTY3EB.mjs → chunk-GZJAQ5IP.mjs} +34 -49
  52. package/dist/lib/node-esm/chunk-GZJAQ5IP.mjs.map +7 -0
  53. package/dist/lib/node-esm/chunk-XCNF4COU.mjs +18 -0
  54. package/dist/lib/node-esm/chunk-XCNF4COU.mjs.map +7 -0
  55. package/dist/lib/node-esm/index.mjs +39 -35
  56. package/dist/lib/node-esm/index.mjs.map +3 -3
  57. package/dist/lib/node-esm/meta.json +1 -1
  58. package/dist/lib/node-esm/{operation-resolver-WUOE33ID.mjs → operation-resolver-GCMCCI7A.mjs} +166 -122
  59. package/dist/lib/node-esm/operation-resolver-GCMCCI7A.mjs.map +7 -0
  60. package/dist/lib/node-esm/{react-root-O6GZO62Z.mjs → react-root-32LZ6APH.mjs} +8 -7
  61. package/dist/lib/node-esm/react-root-32LZ6APH.mjs.map +7 -0
  62. package/dist/lib/node-esm/{react-surface-IHDJDGC5.mjs → react-surface-CO4ZDZKM.mjs} +18 -16
  63. package/dist/lib/node-esm/react-surface-CO4ZDZKM.mjs.map +7 -0
  64. package/dist/lib/node-esm/{settings-2HB6FKIK.mjs → settings-LPPFLXNJ.mjs} +8 -5
  65. package/dist/lib/node-esm/settings-LPPFLXNJ.mjs.map +7 -0
  66. package/dist/lib/node-esm/{state-JRQ45ACJ.mjs → state-KNRU3GDC.mjs} +11 -8
  67. package/dist/lib/node-esm/state-KNRU3GDC.mjs.map +7 -0
  68. package/dist/lib/node-esm/{toolkit-JLPZNNKB.mjs → toolkit-SOWYKJY3.mjs} +10 -8
  69. package/dist/lib/node-esm/toolkit-SOWYKJY3.mjs.map +7 -0
  70. package/dist/lib/node-esm/types/index.mjs +4 -5
  71. package/dist/lib/node-esm/{url-handler-QGF2R24T.mjs → url-handler-4LEB7UWF.mjs} +22 -17
  72. package/dist/lib/node-esm/url-handler-4LEB7UWF.mjs.map +7 -0
  73. package/dist/types/src/DeckPlugin.d.ts.map +1 -1
  74. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +1 -1
  75. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
  76. package/dist/types/src/capabilities/check-app-scheme/check-app-scheme.d.ts +1 -1
  77. package/dist/types/src/capabilities/check-app-scheme/check-app-scheme.d.ts.map +1 -1
  78. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +2 -2
  79. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -1
  80. package/dist/types/src/capabilities/react-root/react-root.d.ts +1 -1
  81. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/react-surface/index.d.ts +1 -1
  83. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -1
  84. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +2 -2
  85. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -1
  86. package/dist/types/src/capabilities/settings/index.d.ts +1 -1
  87. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/settings/settings.d.ts +4 -3
  89. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/state/index.d.ts +6 -6
  91. package/dist/types/src/capabilities/state/state.d.ts +7 -7
  92. package/dist/types/src/capabilities/state/state.d.ts.map +1 -1
  93. package/dist/types/src/capabilities/toolkit/index.d.ts +1 -1
  94. package/dist/types/src/capabilities/toolkit/index.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/toolkit/toolkit.d.ts +4 -3
  96. package/dist/types/src/capabilities/toolkit/toolkit.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/tools/tools.d.ts +1 -1
  98. package/dist/types/src/capabilities/tools/tools.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/url-handler/url-handler.d.ts +1 -1
  100. package/dist/types/src/capabilities/url-handler/url-handler.d.ts.map +1 -1
  101. package/dist/types/src/components/DeckLayout/ActiveNode.d.ts.map +1 -1
  102. package/dist/types/src/components/DeckLayout/DeckLayout.stories.d.ts +1 -0
  103. package/dist/types/src/components/DeckLayout/DeckLayout.stories.d.ts.map +1 -1
  104. package/dist/types/src/components/DeckLayout/DeckMain.d.ts.map +1 -1
  105. package/dist/types/src/components/DeckLayout/Dialog.d.ts.map +1 -1
  106. package/dist/types/src/components/DeckLayout/Fallback.d.ts.map +1 -1
  107. package/dist/types/src/components/DeckLayout/Popover.d.ts.map +1 -1
  108. package/dist/types/src/components/DeckLayout/Toast.d.ts +3 -3
  109. package/dist/types/src/components/DeckLayout/Toast.d.ts.map +1 -1
  110. package/dist/types/src/components/Plank/Plank.d.ts +2 -2
  111. package/dist/types/src/components/Plank/Plank.d.ts.map +1 -1
  112. package/dist/types/src/components/Plank/Plank.stories.d.ts +3 -2
  113. package/dist/types/src/components/Plank/Plank.stories.d.ts.map +1 -1
  114. package/dist/types/src/components/Plank/PlankControls.d.ts.map +1 -1
  115. package/dist/types/src/components/Plank/PlankError.d.ts +5 -3
  116. package/dist/types/src/components/Plank/PlankError.d.ts.map +1 -1
  117. package/dist/types/src/components/Plank/PlankHeading.d.ts.map +1 -1
  118. package/dist/types/src/components/Sidebar/ComplementarySidebar.d.ts.map +1 -1
  119. package/dist/types/src/components/fragments.d.ts +4 -1
  120. package/dist/types/src/components/fragments.d.ts.map +1 -1
  121. package/dist/types/src/components/index.d.ts +0 -1
  122. package/dist/types/src/components/index.d.ts.map +1 -1
  123. package/dist/types/src/containers/Banner/Banner.d.ts +2 -0
  124. package/dist/types/src/containers/Banner/Banner.d.ts.map +1 -0
  125. package/dist/types/src/containers/Banner/index.d.ts +3 -0
  126. package/dist/types/src/containers/Banner/index.d.ts.map +1 -0
  127. package/dist/types/src/{components → containers}/DeckSettings/DeckSettings.d.ts.map +1 -1
  128. package/dist/types/src/containers/DeckSettings/index.d.ts +3 -0
  129. package/dist/types/src/containers/DeckSettings/index.d.ts.map +1 -0
  130. package/dist/types/src/containers/index.d.ts +4 -0
  131. package/dist/types/src/containers/index.d.ts.map +1 -0
  132. package/dist/types/src/hooks/index.d.ts +1 -0
  133. package/dist/types/src/hooks/index.d.ts.map +1 -1
  134. package/dist/types/src/hooks/useDeckCompanions.d.ts +0 -1
  135. package/dist/types/src/hooks/useDeckCompanions.d.ts.map +1 -1
  136. package/dist/types/src/hooks/useMainSize.d.ts +2 -2
  137. package/dist/types/src/hooks/useSelectedCompanion.d.ts +13 -0
  138. package/dist/types/src/hooks/useSelectedCompanion.d.ts.map +1 -0
  139. package/dist/types/src/layout.d.ts +1 -7
  140. package/dist/types/src/layout.d.ts.map +1 -1
  141. package/dist/types/src/translations.d.ts +1 -0
  142. package/dist/types/src/translations.d.ts.map +1 -1
  143. package/dist/types/src/types/capabilities.d.ts +6 -6
  144. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  145. package/dist/types/src/types/events.d.ts.map +1 -1
  146. package/dist/types/src/types/schema.d.ts +18 -16
  147. package/dist/types/src/types/schema.d.ts.map +1 -1
  148. package/dist/types/tsconfig.tsbuildinfo +1 -1
  149. package/package.json +48 -44
  150. package/src/DeckPlugin.ts +12 -11
  151. package/src/capabilities/app-graph-builder/app-graph-builder.ts +11 -10
  152. package/src/capabilities/check-app-scheme/check-app-scheme.ts +12 -8
  153. package/src/capabilities/operation-resolver/operation-resolver.ts +110 -107
  154. package/src/capabilities/react-root/react-root.tsx +2 -2
  155. package/src/capabilities/react-surface/react-surface.tsx +11 -10
  156. package/src/capabilities/settings/settings.ts +3 -2
  157. package/src/capabilities/state/state.ts +6 -5
  158. package/src/capabilities/toolkit/toolkit.ts +7 -6
  159. package/src/capabilities/tools/tools.ts +0 -1
  160. package/src/capabilities/url-handler/url-handler.ts +16 -13
  161. package/src/components/DeckLayout/ActiveNode.tsx +3 -2
  162. package/src/components/DeckLayout/Banner.tsx +8 -8
  163. package/src/components/DeckLayout/ContentEmpty.tsx +3 -3
  164. package/src/components/DeckLayout/DeckLayout.stories.tsx +8 -6
  165. package/src/components/DeckLayout/DeckMain.tsx +26 -25
  166. package/src/components/DeckLayout/Dialog.tsx +10 -4
  167. package/src/components/DeckLayout/Fallback.tsx +2 -6
  168. package/src/components/DeckLayout/Popover.tsx +46 -14
  169. package/src/components/DeckLayout/StatusBar.tsx +4 -4
  170. package/src/components/DeckLayout/Toast.tsx +3 -3
  171. package/src/components/Plank/Plank.stories.tsx +7 -5
  172. package/src/components/Plank/Plank.tsx +32 -24
  173. package/src/components/Plank/PlankControls.tsx +6 -8
  174. package/src/components/Plank/PlankError.tsx +29 -15
  175. package/src/components/Plank/PlankHeading.tsx +24 -26
  176. package/src/components/Plank/PlankLoading.tsx +1 -1
  177. package/src/components/Sidebar/ComplementarySidebar.tsx +50 -51
  178. package/src/components/Sidebar/Sidebar.tsx +4 -4
  179. package/src/components/Sidebar/SidebarButton.tsx +12 -12
  180. package/src/components/fragments.ts +9 -4
  181. package/src/components/index.ts +0 -1
  182. package/src/containers/Banner/Banner.tsx +5 -0
  183. package/src/containers/Banner/index.ts +7 -0
  184. package/src/{components → containers}/DeckSettings/DeckSettings.tsx +23 -23
  185. package/src/containers/DeckSettings/index.ts +7 -0
  186. package/src/containers/index.ts +8 -0
  187. package/src/hooks/index.ts +1 -0
  188. package/src/hooks/useCompanions.ts +2 -2
  189. package/src/hooks/useDeckCompanions.ts +3 -8
  190. package/src/hooks/useDeckState.ts +3 -3
  191. package/src/hooks/useHoistStatusbar.ts +1 -1
  192. package/src/hooks/useMainSize.ts +2 -2
  193. package/src/hooks/useNodeActionExpander.ts +1 -1
  194. package/src/hooks/useSelectedCompanion.ts +32 -0
  195. package/src/layout.ts +1 -14
  196. package/src/meta.ts +1 -1
  197. package/src/translations.ts +1 -0
  198. package/src/types/capabilities.ts +5 -5
  199. package/src/types/events.ts +5 -4
  200. package/src/types/schema.ts +22 -21
  201. package/src/util/overscroll.ts +3 -3
  202. package/dist/lib/browser/app-graph-builder-DTVCULQ4.mjs.map +0 -7
  203. package/dist/lib/browser/check-app-scheme-JSRXXIYF.mjs.map +0 -7
  204. package/dist/lib/browser/chunk-ATFPDN6J.mjs.map +0 -7
  205. package/dist/lib/browser/chunk-NHABISX2.mjs +0 -152
  206. package/dist/lib/browser/chunk-NHABISX2.mjs.map +0 -7
  207. package/dist/lib/browser/chunk-S4A5UO4K.mjs.map +0 -7
  208. package/dist/lib/browser/chunk-UNG4CLLP.mjs.map +0 -7
  209. package/dist/lib/browser/operation-resolver-CDYBLZJ4.mjs.map +0 -7
  210. package/dist/lib/browser/react-root-XDCMNENQ.mjs.map +0 -7
  211. package/dist/lib/browser/react-surface-HODERLOL.mjs +0 -42
  212. package/dist/lib/browser/react-surface-HODERLOL.mjs.map +0 -7
  213. package/dist/lib/browser/settings-OMHVGZ6V.mjs.map +0 -7
  214. package/dist/lib/browser/state-OC3BSB6E.mjs.map +0 -7
  215. package/dist/lib/browser/toolkit-R53LD3EA.mjs.map +0 -7
  216. package/dist/lib/browser/url-handler-53TE6JZO.mjs.map +0 -7
  217. package/dist/lib/node-esm/app-graph-builder-473BNZDJ.mjs.map +0 -7
  218. package/dist/lib/node-esm/check-app-scheme-IVYRHKRH.mjs.map +0 -7
  219. package/dist/lib/node-esm/chunk-ADPMWKLL.mjs +0 -154
  220. package/dist/lib/node-esm/chunk-ADPMWKLL.mjs.map +0 -7
  221. package/dist/lib/node-esm/chunk-D34L3ECT.mjs.map +0 -7
  222. package/dist/lib/node-esm/chunk-SKEVPQ7E.mjs.map +0 -7
  223. package/dist/lib/node-esm/chunk-XAKTY3EB.mjs.map +0 -7
  224. package/dist/lib/node-esm/operation-resolver-WUOE33ID.mjs.map +0 -7
  225. package/dist/lib/node-esm/react-root-O6GZO62Z.mjs.map +0 -7
  226. package/dist/lib/node-esm/react-surface-IHDJDGC5.mjs.map +0 -7
  227. package/dist/lib/node-esm/settings-2HB6FKIK.mjs.map +0 -7
  228. package/dist/lib/node-esm/state-JRQ45ACJ.mjs.map +0 -7
  229. package/dist/lib/node-esm/toolkit-JLPZNNKB.mjs.map +0 -7
  230. package/dist/lib/node-esm/url-handler-QGF2R24T.mjs.map +0 -7
  231. package/dist/types/src/components/DeckSettings/index.d.ts +0 -2
  232. package/dist/types/src/components/DeckSettings/index.d.ts.map +0 -1
  233. package/src/components/DeckSettings/index.ts +0 -5
  234. /package/dist/types/src/{components → containers}/DeckSettings/DeckSettings.d.ts +0 -0
@@ -1,26 +1,25 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
- closeEntry,
4
- computeActiveUpdates,
5
- createEntryId,
6
- incrementPlank,
7
- openEntry
8
- } from "./chunk-ADPMWKLL.mjs";
3
+ computeActiveUpdates
4
+ } from "./chunk-DGTRKKWZ.mjs";
9
5
  import {
10
6
  DeckCapabilities,
11
7
  DeckOperation,
12
8
  PLANK_COMPANION_TYPE,
13
9
  defaultDeck,
14
10
  getMode,
15
- isLayoutMode,
11
+ isLayoutMode
12
+ } from "./chunk-GZJAQ5IP.mjs";
13
+ import {
16
14
  meta
17
- } from "./chunk-XAKTY3EB.mjs";
15
+ } from "./chunk-XCNF4COU.mjs";
18
16
 
19
17
  // src/capabilities/operation-resolver/operation-resolver.ts
20
18
  import * as Effect from "effect/Effect";
21
19
  import * as Function from "effect/Function";
22
20
  import * as Option from "effect/Option";
23
- import { Capability, Common } from "@dxos/app-framework";
21
+ import { Capabilities, Capability, UndoOperation } from "@dxos/app-framework";
22
+ import { AppCapabilities, LayoutOperation, getCompanionVariant, isPinnedWorkspace } from "@dxos/app-toolkit";
24
23
  import { Obj } from "@dxos/echo";
25
24
  import { invariant } from "@dxos/invariant";
26
25
  import { log } from "@dxos/log";
@@ -30,12 +29,77 @@ import { AttentionCapabilities } from "@dxos/plugin-attention";
30
29
  import { Graph, Node } from "@dxos/plugin-graph";
31
30
  import { ObservabilityOperation } from "@dxos/plugin-observability/types";
32
31
  import { byPosition, isNonNullable } from "@dxos/util";
32
+
33
+ // src/layout.ts
34
+ import { produce } from "immer";
35
+ var openEntry = (deck, entryId, options) => {
36
+ return produce(deck, (draft) => {
37
+ if (draft.find((id) => id === entryId)) {
38
+ return;
39
+ }
40
+ const key = options?.key;
41
+ const plankPositioning = options?.positioning ?? "start";
42
+ const pivotId = options?.pivotId;
43
+ if (key) {
44
+ const index = draft.findIndex((id) => id.split("+")[0] === key);
45
+ if (index !== -1) {
46
+ draft.splice(index, 1, entryId);
47
+ return;
48
+ }
49
+ }
50
+ if (pivotId) {
51
+ const pivotIndex = draft.findIndex((id) => id === pivotId);
52
+ if (pivotIndex !== -1) {
53
+ if (plankPositioning === "start") {
54
+ draft.splice(pivotIndex, 0, entryId);
55
+ } else {
56
+ draft.splice(pivotIndex + 1, 0, entryId);
57
+ }
58
+ return;
59
+ }
60
+ }
61
+ if (plankPositioning === "start") {
62
+ draft.unshift(entryId);
63
+ } else {
64
+ draft.push(entryId);
65
+ }
66
+ });
67
+ };
68
+ var closeEntry = (deck, entryId) => {
69
+ return produce(deck, (draft) => {
70
+ const index = draft.findIndex((id) => id === entryId);
71
+ if (index !== -1) {
72
+ draft.splice(index, 1);
73
+ }
74
+ });
75
+ };
76
+ var incrementPlank = (deck, adjustment) => {
77
+ return produce(deck, (draft) => {
78
+ const index = draft.findIndex((id) => id === adjustment.id);
79
+ if (index === -1 || adjustment.type === "increment-start" && index === 0 || adjustment.type === "increment-end" && index === draft.length - 1) {
80
+ return;
81
+ }
82
+ if (adjustment.type === "increment-start") {
83
+ [draft[index - 1], draft[index]] = [
84
+ draft[index],
85
+ draft[index - 1]
86
+ ];
87
+ } else if (adjustment.type === "increment-end") {
88
+ [draft[index], draft[index + 1]] = [
89
+ draft[index + 1],
90
+ draft[index]
91
+ ];
92
+ }
93
+ });
94
+ };
95
+
96
+ // src/capabilities/operation-resolver/operation-resolver.ts
33
97
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-deck/src/capabilities/operation-resolver/operation-resolver.ts";
34
98
  var updateActiveDeck = (current, deckUpdates) => {
35
99
  const currentDeck = current.decks[current.activeDeck];
36
100
  invariant(currentDeck, `Deck not found: ${current.activeDeck}`, {
37
101
  F: __dxlog_file,
38
- L: 40,
102
+ L: 41,
39
103
  S: void 0,
40
104
  A: [
41
105
  "currentDeck",
@@ -54,18 +118,18 @@ var updateActiveDeck = (current, deckUpdates) => {
54
118
  };
55
119
  };
56
120
  var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(function* () {
57
- return Capability.contributes(Common.Capability.OperationResolver, [
121
+ return Capability.contributes(Capabilities.OperationResolver, [
58
122
  //
59
123
  // UpdateSidebar
60
124
  //
61
125
  OperationResolver.make({
62
- operation: Common.LayoutOperation.UpdateSidebar,
126
+ operation: LayoutOperation.UpdateSidebar,
63
127
  handler: Effect.fnUntraced(function* (input) {
64
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
128
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
65
129
  const next = input.state ?? state.sidebarState;
66
130
  if (next !== state.sidebarState) {
67
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => ({
68
- ...s,
131
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state2) => ({
132
+ ...state2,
69
133
  sidebarState: next
70
134
  }));
71
135
  }
@@ -75,17 +139,17 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
75
139
  // UpdateComplementary
76
140
  //
77
141
  OperationResolver.make({
78
- operation: Common.LayoutOperation.UpdateComplementary,
142
+ operation: LayoutOperation.UpdateComplementary,
79
143
  handler: Effect.fnUntraced(function* (input) {
80
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
144
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
81
145
  const panelChanged = state.complementarySidebarPanel !== input.subject;
82
146
  const next = input.subject ? "expanded" : input.state ?? state.complementarySidebarState;
83
147
  const stateChanged = next !== state.complementarySidebarState;
84
148
  if (panelChanged || stateChanged) {
85
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => ({
86
- ...s,
87
- complementarySidebarPanel: panelChanged ? input.subject : s.complementarySidebarPanel,
88
- complementarySidebarState: stateChanged ? next : s.complementarySidebarState
149
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state2) => ({
150
+ ...state2,
151
+ complementarySidebarPanel: panelChanged ? input.subject : state2.complementarySidebarPanel,
152
+ complementarySidebarState: stateChanged ? next : state2.complementarySidebarState
89
153
  }));
90
154
  }
91
155
  })
@@ -94,10 +158,10 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
94
158
  // UpdateDialog
95
159
  //
96
160
  OperationResolver.make({
97
- operation: Common.LayoutOperation.UpdateDialog,
161
+ operation: LayoutOperation.UpdateDialog,
98
162
  handler: Effect.fnUntraced(function* (input) {
99
- yield* Common.Capability.updateAtomValue(DeckCapabilities.EphemeralState, (s) => ({
100
- ...s,
163
+ yield* Capabilities.updateAtomValue(DeckCapabilities.EphemeralState, (state) => ({
164
+ ...state,
101
165
  dialogOpen: input.state ?? Boolean(input.subject),
102
166
  dialogType: input.type ?? "default",
103
167
  dialogBlockAlign: input.blockAlign ?? "center",
@@ -114,13 +178,14 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
114
178
  // UpdatePopover
115
179
  //
116
180
  OperationResolver.make({
117
- operation: Common.LayoutOperation.UpdatePopover,
181
+ operation: LayoutOperation.UpdatePopover,
118
182
  handler: Effect.fnUntraced(function* (input) {
119
- yield* Common.Capability.updateAtomValue(DeckCapabilities.EphemeralState, (s) => ({
120
- ...s,
183
+ yield* Capabilities.updateAtomValue(DeckCapabilities.EphemeralState, (state) => ({
184
+ ...state,
121
185
  popoverOpen: input.state ?? Boolean(input.subject),
122
186
  popoverKind: input.kind ?? "base",
123
187
  popoverTitle: input.kind === "card" ? input.title : void 0,
188
+ popoverContentRef: input.subjectRef,
124
189
  popoverContent: typeof input.subject === "string" ? {
125
190
  component: input.subject,
126
191
  props: input.props
@@ -128,8 +193,8 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
128
193
  subject: input.subject
129
194
  } : null,
130
195
  popoverSide: input.side,
131
- popoverAnchor: input.variant === "virtual" ? input.anchor : s.popoverAnchor,
132
- popoverAnchorId: input.variant !== "virtual" ? input.anchorId : s.popoverAnchorId
196
+ popoverAnchor: input.variant === "virtual" ? input.anchor : state.popoverAnchor,
197
+ popoverAnchorId: input.variant !== "virtual" ? input.anchorId : state.popoverAnchorId
133
198
  }));
134
199
  })
135
200
  }),
@@ -137,12 +202,12 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
137
202
  // AddToast
138
203
  //
139
204
  OperationResolver.make({
140
- operation: Common.LayoutOperation.AddToast,
205
+ operation: LayoutOperation.AddToast,
141
206
  handler: Effect.fnUntraced(function* (input) {
142
- yield* Common.Capability.updateAtomValue(DeckCapabilities.EphemeralState, (s) => ({
143
- ...s,
207
+ yield* Capabilities.updateAtomValue(DeckCapabilities.EphemeralState, (state) => ({
208
+ ...state,
144
209
  toasts: [
145
- ...s.toasts,
210
+ ...state.toasts,
146
211
  input
147
212
  ]
148
213
  }));
@@ -152,12 +217,12 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
152
217
  // ShowUndo
153
218
  //
154
219
  OperationResolver.make({
155
- operation: Common.UndoOperation.ShowUndo,
220
+ operation: UndoOperation.ShowUndo,
156
221
  handler: Effect.fnUntraced(function* (input) {
157
- const historyTracker = yield* Capability.get(Common.Capability.HistoryTracker);
222
+ const historyTracker = yield* Capability.get(Capabilities.HistoryTracker);
158
223
  const newUndoId = `show-undo-${Date.now()}`;
159
- yield* Common.Capability.updateAtomValue(DeckCapabilities.EphemeralState, (s) => {
160
- const filteredToasts = s.currentUndoId ? s.toasts.filter((toast2) => toast2.id !== s.currentUndoId) : s.toasts;
224
+ yield* Capabilities.updateAtomValue(DeckCapabilities.EphemeralState, (state) => {
225
+ const filteredToasts = state.currentUndoId ? state.toasts.filter((toast2) => toast2.id !== state.currentUndoId) : state.toasts;
161
226
  const toast = {
162
227
  id: newUndoId,
163
228
  title: input.message ?? [
@@ -188,7 +253,7 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
188
253
  onAction: () => historyTracker.undoPromise()
189
254
  };
190
255
  return {
191
- ...s,
256
+ ...state,
192
257
  currentUndoId: newUndoId,
193
258
  toasts: [
194
259
  ...filteredToasts,
@@ -202,7 +267,7 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
202
267
  // SetLayoutMode
203
268
  //
204
269
  OperationResolver.make({
205
- operation: Common.LayoutOperation.SetLayoutMode,
270
+ operation: LayoutOperation.SetLayoutMode,
206
271
  filter: (input) => {
207
272
  if ("mode" in input) {
208
273
  return isLayoutMode(input.mode);
@@ -210,7 +275,7 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
210
275
  return true;
211
276
  },
212
277
  handler: Effect.fnUntraced(function* (input) {
213
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
278
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
214
279
  const deck = yield* DeckCapabilities.getDeck();
215
280
  const computeModeUpdate = (mode, subject) => {
216
281
  const current = deck.solo ? [
@@ -245,24 +310,24 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
245
310
  if ("mode" in input) {
246
311
  const currentMode = getMode(deck);
247
312
  const deckUpdates = computeModeUpdate(input.mode, "subject" in input ? input.subject : void 0);
248
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => {
313
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state2) => {
249
314
  const newPreviousMode = currentMode !== input.mode ? {
250
- ...s.previousMode,
251
- [s.activeDeck]: currentMode
252
- } : s.previousMode;
315
+ ...state2.previousMode,
316
+ [state2.activeDeck]: currentMode
317
+ } : state2.previousMode;
253
318
  return {
254
- ...updateActiveDeck(s, deckUpdates),
319
+ ...updateActiveDeck(state2, deckUpdates),
255
320
  previousMode: newPreviousMode
256
321
  };
257
322
  });
258
323
  } else if ("revert" in input) {
259
324
  const last = state.previousMode[state.activeDeck];
260
325
  const deckUpdates = computeModeUpdate(last ?? "solo");
261
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, deckUpdates));
326
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state2) => updateActiveDeck(state2, deckUpdates));
262
327
  } else {
263
328
  log.warn("Invalid layout mode", input, {
264
329
  F: __dxlog_file,
265
- L: 244,
330
+ L: 258,
266
331
  S: this,
267
332
  C: (f, a) => f(...a)
268
333
  });
@@ -273,33 +338,33 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
273
338
  // SwitchWorkspace
274
339
  //
275
340
  OperationResolver.make({
276
- operation: Common.LayoutOperation.SwitchWorkspace,
341
+ operation: LayoutOperation.SwitchWorkspace,
277
342
  handler: Effect.fnUntraced(function* (input) {
278
- const { graph } = yield* Capability.get(Common.Capability.AppGraph);
343
+ const { graph } = yield* Capability.get(AppCapabilities.AppGraph);
279
344
  {
280
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
281
- const shouldUpdatePrevious = !state.activeDeck.startsWith("!");
282
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => {
283
- const newDecks = s.decks[input.subject] ? s.decks : {
284
- ...s.decks,
345
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
346
+ const shouldUpdatePrevious = !isPinnedWorkspace(state.activeDeck);
347
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state2) => {
348
+ const newDecks = state2.decks[input.subject] ? state2.decks : {
349
+ ...state2.decks,
285
350
  [input.subject]: {
286
351
  ...defaultDeck
287
352
  }
288
353
  };
289
354
  return {
290
- ...s,
291
- previousDeck: shouldUpdatePrevious ? s.activeDeck : s.previousDeck,
355
+ ...state2,
356
+ previousDeck: shouldUpdatePrevious ? state2.activeDeck : state2.previousDeck,
292
357
  activeDeck: input.subject,
293
358
  decks: newDecks
294
359
  };
295
360
  });
296
361
  }
297
362
  {
298
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
363
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
299
364
  const deck = state.decks[input.subject];
300
365
  invariant(deck, `Deck not found: ${input.subject}`, {
301
366
  F: __dxlog_file,
302
- L: 277,
367
+ L: 293,
303
368
  S: this,
304
369
  A: [
305
370
  "deck",
@@ -308,13 +373,13 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
308
373
  });
309
374
  const first = deck.solo ? deck.solo : deck.active[0];
310
375
  if (first) {
311
- yield* Operation.schedule(Common.LayoutOperation.ScrollIntoView, {
376
+ yield* Operation.schedule(LayoutOperation.ScrollIntoView, {
312
377
  subject: first
313
378
  });
314
379
  } else {
315
- const [item] = Graph.getConnections(graph, input.subject).filter((node) => !Node.isActionLike(node) && !node.properties.disposition);
380
+ const [item] = Graph.getConnections(graph, input.subject, "child").filter((node) => !Node.isActionLike(node) && !node.properties.disposition);
316
381
  if (item) {
317
- yield* Operation.schedule(Common.LayoutOperation.Open, {
382
+ yield* Operation.schedule(LayoutOperation.Open, {
318
383
  subject: [
319
384
  item.id
320
385
  ]
@@ -328,10 +393,10 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
328
393
  // RevertWorkspace
329
394
  //
330
395
  OperationResolver.make({
331
- operation: Common.LayoutOperation.RevertWorkspace,
396
+ operation: LayoutOperation.RevertWorkspace,
332
397
  handler: Effect.fnUntraced(function* () {
333
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
334
- yield* Operation.invoke(Common.LayoutOperation.SwitchWorkspace, {
398
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
399
+ yield* Operation.invoke(LayoutOperation.SwitchWorkspace, {
335
400
  subject: state.previousDeck
336
401
  });
337
402
  })
@@ -340,15 +405,15 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
340
405
  // Open
341
406
  //
342
407
  OperationResolver.make({
343
- operation: Common.LayoutOperation.Open,
408
+ operation: LayoutOperation.Open,
344
409
  handler: Effect.fnUntraced(function* (input) {
345
- const { graph } = yield* Capability.get(Common.Capability.AppGraph);
410
+ const { graph } = yield* Capability.get(AppCapabilities.AppGraph);
346
411
  const attention = yield* Capability.get(AttentionCapabilities.Attention);
347
- const settings = yield* Common.Capability.getAtomValue(DeckCapabilities.Settings);
412
+ const settings = yield* Capabilities.getAtomValue(DeckCapabilities.Settings);
348
413
  {
349
- const state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
414
+ const state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
350
415
  if (input.workspace && state.activeDeck !== input.workspace) {
351
- yield* Operation.invoke(Common.LayoutOperation.SwitchWorkspace, {
416
+ yield* Operation.invoke(LayoutOperation.SwitchWorkspace, {
352
417
  subject: input.workspace
353
418
  });
354
419
  }
@@ -359,18 +424,19 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
359
424
  previouslyOpenIds = new Set(deck.solo ? [
360
425
  deck.solo
361
426
  ] : deck.active);
362
- const next = deck.solo ? input.subject.map((id) => createEntryId(id, input.variant)) : input.subject.reduce((acc, entryId) => openEntry(acc, entryId, {
427
+ const next = deck.solo ? [
428
+ ...input.subject
429
+ ] : input.subject.reduce((acc, entryId) => openEntry(acc, entryId, {
363
430
  key: input.key,
364
431
  positioning: input.positioning ?? settings?.newPlankPositioning,
365
- pivotId: input.pivotId,
366
- variant: input.variant
432
+ pivotId: input.pivotId
367
433
  }), deck.active);
368
434
  const { deckUpdates, toAttend: _toAttend } = computeActiveUpdates({
369
435
  next,
370
436
  deck,
371
437
  attention
372
438
  });
373
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, deckUpdates));
439
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, deckUpdates));
374
440
  }
375
441
  {
376
442
  const deck = yield* DeckCapabilities.getDeck();
@@ -379,12 +445,12 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
379
445
  ] : deck.active;
380
446
  const newlyOpen = ids.filter((i) => !previouslyOpenIds.has(i));
381
447
  if (input.scrollIntoView !== false && (newlyOpen[0] ?? input.subject[0])) {
382
- yield* Operation.schedule(Common.LayoutOperation.ScrollIntoView, {
448
+ yield* Operation.schedule(LayoutOperation.ScrollIntoView, {
383
449
  subject: newlyOpen[0] ?? input.subject[0]
384
450
  });
385
451
  }
386
452
  if (newlyOpen[0] ?? input.subject[0]) {
387
- yield* Operation.schedule(Common.LayoutOperation.Expose, {
453
+ yield* Operation.schedule(LayoutOperation.Expose, {
388
454
  subject: newlyOpen[0] ?? input.subject[0]
389
455
  });
390
456
  }
@@ -413,9 +479,9 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
413
479
  OperationResolver.make({
414
480
  operation: DeckOperation.UpdatePlankSize,
415
481
  handler: Effect.fnUntraced(function* (input) {
416
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, {
482
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, {
417
483
  plankSizing: {
418
- ...s.decks[s.activeDeck]?.plankSizing,
484
+ ...state.decks[state.activeDeck]?.plankSizing,
419
485
  [input.id]: input.size
420
486
  }
421
487
  }));
@@ -427,10 +493,10 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
427
493
  OperationResolver.make({
428
494
  operation: DeckOperation.Adjust,
429
495
  handler: Effect.fnUntraced(function* (input) {
430
- const _state = yield* Common.Capability.getAtomValue(DeckCapabilities.State);
496
+ const _state = yield* Capabilities.getAtomValue(DeckCapabilities.State);
431
497
  const deck = yield* DeckCapabilities.getDeck();
432
498
  const attention = yield* Capability.get(AttentionCapabilities.Attention);
433
- const { graph } = yield* Capability.get(Common.Capability.AppGraph);
499
+ const { graph } = yield* Capability.get(AppCapabilities.AppGraph);
434
500
  let soloOperation;
435
501
  if (input.type === "increment-end" || input.type === "increment-start") {
436
502
  const next = incrementPlank(deck.active, input);
@@ -439,7 +505,7 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
439
505
  deck,
440
506
  attention
441
507
  });
442
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, deckUpdates));
508
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, deckUpdates));
443
509
  }
444
510
  if (input.type.startsWith("solo")) {
445
511
  const entryId = input.id;
@@ -465,25 +531,24 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
465
531
  }
466
532
  }
467
533
  if (soloOperation?.type === "solo") {
468
- yield* Operation.invoke(Common.LayoutOperation.SetLayoutMode, {
534
+ yield* Operation.invoke(LayoutOperation.SetLayoutMode, {
469
535
  subject: soloOperation.entryId,
470
536
  mode: soloOperation.mode
471
537
  });
472
538
  } else if (soloOperation?.type === "unsolo") {
473
- yield* Operation.invoke(Common.LayoutOperation.SetLayoutMode, {
539
+ yield* Operation.invoke(LayoutOperation.SetLayoutMode, {
474
540
  mode: "deck"
475
541
  });
476
- yield* Operation.invoke(Common.LayoutOperation.Open, {
542
+ yield* Operation.invoke(LayoutOperation.Open, {
477
543
  subject: [
478
544
  soloOperation.entryId
479
545
  ]
480
546
  });
481
547
  }
482
548
  if (input.type === "companion") {
483
- const companion = Function.pipe(Graph.getNode(graph, input.id), Option.map((node) => Graph.getConnections(graph, node.id).filter((n) => n.type === PLANK_COMPANION_TYPE).toSorted((a, b) => byPosition(a.properties, b.properties))), Option.flatMap((companions) => companions.length > 0 ? Option.some(companions[0]) : Option.none()));
549
+ const companion = Function.pipe(Graph.getNode(graph, input.id), Option.map((node) => Graph.getConnections(graph, node.id, "child").filter((n) => n.type === PLANK_COMPANION_TYPE).toSorted((a, b) => byPosition(a.properties, b.properties))), Option.flatMap((companions) => companions.length > 0 ? Option.some(companions[0]) : Option.none()));
484
550
  if (Option.isSome(companion)) {
485
551
  yield* Operation.invoke(DeckOperation.ChangeCompanion, {
486
- primary: input.id,
487
552
  companion: companion.value.id
488
553
  });
489
554
  }
@@ -496,28 +561,15 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
496
561
  OperationResolver.make({
497
562
  operation: DeckOperation.ChangeCompanion,
498
563
  handler: Effect.fnUntraced(function* (input) {
499
- const deck = yield* DeckCapabilities.getDeck();
500
564
  if (input.companion === null) {
501
- const { [input.primary]: _, ...nextActiveCompanions } = deck.activeCompanions ?? {};
502
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, {
503
- activeCompanions: nextActiveCompanions
565
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, {
566
+ companionOpen: false
504
567
  }));
505
568
  } else {
506
- const companion = input.companion;
507
- invariant(companion !== input.primary, void 0, {
508
- F: __dxlog_file,
509
- L: 479,
510
- S: this,
511
- A: [
512
- "companion !== input.primary",
513
- ""
514
- ]
515
- });
516
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, {
517
- activeCompanions: {
518
- ...deck.activeCompanions,
519
- [input.primary]: companion
520
- }
569
+ const variant = getCompanionVariant(input.companion);
570
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, {
571
+ companionOpen: true,
572
+ companionVariant: variant
521
573
  }));
522
574
  }
523
575
  })
@@ -526,7 +578,7 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
526
578
  // Close
527
579
  //
528
580
  OperationResolver.make({
529
- operation: Common.LayoutOperation.Close,
581
+ operation: LayoutOperation.Close,
530
582
  handler: Effect.fnUntraced(function* (input) {
531
583
  const deck = yield* DeckCapabilities.getDeck();
532
584
  const attention = yield* Capability.get(AttentionCapabilities.Attention);
@@ -539,17 +591,9 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
539
591
  deck,
540
592
  attention
541
593
  });
542
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, deckUpdates));
543
- for (const id of input.subject) {
544
- if (deck.activeCompanions && id in deck.activeCompanions) {
545
- yield* Operation.invoke(DeckOperation.ChangeCompanion, {
546
- primary: id,
547
- companion: null
548
- });
549
- }
550
- }
594
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, deckUpdates));
551
595
  if (toAttend) {
552
- yield* Operation.schedule(Common.LayoutOperation.ScrollIntoView, {
596
+ yield* Operation.schedule(LayoutOperation.ScrollIntoView, {
553
597
  subject: toAttend
554
598
  });
555
599
  }
@@ -559,7 +603,7 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
559
603
  // Set
560
604
  //
561
605
  OperationResolver.make({
562
- operation: Common.LayoutOperation.Set,
606
+ operation: LayoutOperation.Set,
563
607
  handler: Effect.fnUntraced(function* (input) {
564
608
  const deck = yield* DeckCapabilities.getDeck();
565
609
  const attention = yield* Capability.get(AttentionCapabilities.Attention);
@@ -568,9 +612,9 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
568
612
  deck,
569
613
  attention
570
614
  });
571
- yield* Common.Capability.updateAtomValue(DeckCapabilities.State, (s) => updateActiveDeck(s, deckUpdates));
615
+ yield* Capabilities.updateAtomValue(DeckCapabilities.State, (state) => updateActiveDeck(state, deckUpdates));
572
616
  if (toAttend) {
573
- yield* Operation.schedule(Common.LayoutOperation.ScrollIntoView, {
617
+ yield* Operation.schedule(LayoutOperation.ScrollIntoView, {
574
618
  subject: toAttend
575
619
  });
576
620
  }
@@ -580,10 +624,10 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
580
624
  // ScrollIntoView
581
625
  //
582
626
  OperationResolver.make({
583
- operation: Common.LayoutOperation.ScrollIntoView,
627
+ operation: LayoutOperation.ScrollIntoView,
584
628
  handler: Effect.fnUntraced(function* (input) {
585
- yield* Common.Capability.updateAtomValue(DeckCapabilities.EphemeralState, (s) => ({
586
- ...s,
629
+ yield* Capabilities.updateAtomValue(DeckCapabilities.EphemeralState, (state) => ({
630
+ ...state,
587
631
  scrollIntoView: input.subject
588
632
  }));
589
633
  })
@@ -593,4 +637,4 @@ var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(functio
593
637
  export {
594
638
  operation_resolver_default as default
595
639
  };
596
- //# sourceMappingURL=operation-resolver-WUOE33ID.mjs.map
640
+ //# sourceMappingURL=operation-resolver-GCMCCI7A.mjs.map