@dxos/plugin-deck 0.7.5-main.9d26e3a → 0.7.5-main.9d2a38b

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 (161) hide show
  1. package/dist/lib/browser/app-graph-builder-67VRUD5K.mjs +121 -0
  2. package/dist/lib/browser/app-graph-builder-67VRUD5K.mjs.map +7 -0
  3. package/dist/lib/browser/check-app-scheme-GEX6W2R5.mjs +33 -0
  4. package/dist/lib/browser/check-app-scheme-GEX6W2R5.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-2M4PXYNB.mjs +1052 -0
  6. package/dist/lib/browser/chunk-2M4PXYNB.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-2PJNBVCY.mjs +39 -0
  8. package/dist/lib/browser/chunk-2PJNBVCY.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-4C2AFTET.mjs +186 -0
  10. package/dist/lib/browser/chunk-4C2AFTET.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-5VFDMW5M.mjs +17 -0
  12. package/dist/lib/browser/chunk-5VFDMW5M.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-GVOGPULO.mjs → chunk-JQJ5UWVB.mjs} +3 -3
  14. package/dist/lib/browser/chunk-JQJ5UWVB.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-ZC3K6C2W.mjs → chunk-KY5WXIXY.mjs} +11 -4
  16. package/dist/lib/browser/chunk-KY5WXIXY.mjs.map +7 -0
  17. package/dist/lib/browser/deck-PLCSKPGL.mjs +26 -0
  18. package/dist/lib/browser/deck-PLCSKPGL.mjs.map +7 -0
  19. package/dist/lib/browser/index.mjs +131 -1770
  20. package/dist/lib/browser/index.mjs.map +4 -4
  21. package/dist/lib/browser/intent-resolver-FVOQSTBX.mjs +152 -0
  22. package/dist/lib/browser/intent-resolver-FVOQSTBX.mjs.map +7 -0
  23. package/dist/lib/browser/intent-resolver-K7GW4A2I.mjs +249 -0
  24. package/dist/lib/browser/intent-resolver-K7GW4A2I.mjs.map +7 -0
  25. package/dist/lib/browser/location-QHRBQBQN.mjs +35 -0
  26. package/dist/lib/browser/location-QHRBQBQN.mjs.map +7 -0
  27. package/dist/lib/browser/meta.json +1 -1
  28. package/dist/lib/browser/react-context-3BDW7W2N.mjs +32 -0
  29. package/dist/lib/browser/react-context-3BDW7W2N.mjs.map +7 -0
  30. package/dist/lib/browser/react-root-UL7ZDRVZ.mjs +50 -0
  31. package/dist/lib/browser/react-root-UL7ZDRVZ.mjs.map +7 -0
  32. package/dist/lib/browser/react-surface-VPNOGGNN.mjs +28 -0
  33. package/dist/lib/browser/react-surface-VPNOGGNN.mjs.map +7 -0
  34. package/dist/lib/browser/settings-FNWW6WIJ.mjs +29 -0
  35. package/dist/lib/browser/settings-FNWW6WIJ.mjs.map +7 -0
  36. package/dist/lib/browser/state-7I5BD7SE.mjs +34 -0
  37. package/dist/lib/browser/state-7I5BD7SE.mjs.map +7 -0
  38. package/dist/lib/browser/types.mjs +6 -6
  39. package/dist/lib/browser/url-handler-Z5B7LD3N.mjs +76 -0
  40. package/dist/lib/browser/url-handler-Z5B7LD3N.mjs.map +7 -0
  41. package/dist/types/src/DeckPlugin.d.ts +1 -5
  42. package/dist/types/src/DeckPlugin.d.ts.map +1 -1
  43. package/dist/types/src/capabilities/capabilities.d.ts +13 -0
  44. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
  45. package/dist/types/src/capabilities/index.d.ts +5 -0
  46. package/dist/types/src/capabilities/index.d.ts.map +1 -0
  47. package/dist/types/src/capabilities/layout/app-graph-builder.d.ts +181 -0
  48. package/dist/types/src/capabilities/layout/app-graph-builder.d.ts.map +1 -0
  49. package/dist/types/src/capabilities/layout/deck.d.ts +4 -0
  50. package/dist/types/src/capabilities/layout/deck.d.ts.map +1 -0
  51. package/dist/types/src/capabilities/layout/index.d.ts +229 -0
  52. package/dist/types/src/capabilities/layout/index.d.ts.map +1 -0
  53. package/dist/types/src/capabilities/layout/intent-resolver.d.ts +4 -0
  54. package/dist/types/src/capabilities/layout/intent-resolver.d.ts.map +1 -0
  55. package/dist/types/src/capabilities/layout/react-context.d.ts +8 -0
  56. package/dist/types/src/capabilities/layout/react-context.d.ts.map +1 -0
  57. package/dist/types/src/capabilities/layout/react-root.d.ts +7 -0
  58. package/dist/types/src/capabilities/layout/react-root.d.ts.map +1 -0
  59. package/dist/types/src/capabilities/layout/state.d.ts +42 -0
  60. package/dist/types/src/capabilities/layout/state.d.ts.map +1 -0
  61. package/dist/types/src/capabilities/navigation/check-app-scheme.d.ts +4 -0
  62. package/dist/types/src/capabilities/navigation/check-app-scheme.d.ts.map +1 -0
  63. package/dist/types/src/capabilities/navigation/index.d.ts +5 -0
  64. package/dist/types/src/capabilities/navigation/index.d.ts.map +1 -0
  65. package/dist/types/src/capabilities/navigation/intent-resolver.d.ts +4 -0
  66. package/dist/types/src/capabilities/navigation/intent-resolver.d.ts.map +1 -0
  67. package/dist/types/src/capabilities/navigation/location.d.ts +4 -0
  68. package/dist/types/src/capabilities/navigation/location.d.ts.map +1 -0
  69. package/dist/types/src/capabilities/navigation/set-location.d.ts +10 -0
  70. package/dist/types/src/capabilities/navigation/set-location.d.ts.map +1 -0
  71. package/dist/types/src/capabilities/navigation/url-handler.d.ts +4 -0
  72. package/dist/types/src/capabilities/navigation/url-handler.d.ts.map +1 -0
  73. package/dist/types/src/capabilities/settings/index.d.ts +3 -0
  74. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
  75. package/dist/types/src/capabilities/settings/react-surface.d.ts +4 -0
  76. package/dist/types/src/capabilities/settings/react-surface.d.ts.map +1 -0
  77. package/dist/types/src/capabilities/settings/settings.d.ts +4 -0
  78. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
  79. package/dist/types/src/components/DeckContext.d.ts +3 -0
  80. package/dist/types/src/components/DeckContext.d.ts.map +1 -1
  81. package/dist/types/src/components/DeckLayout/Banner.d.ts +6 -0
  82. package/dist/types/src/components/DeckLayout/Banner.d.ts.map +1 -0
  83. package/dist/types/src/components/DeckLayout/ComplementarySidebar.d.ts.map +1 -1
  84. package/dist/types/src/components/DeckLayout/ContentEmpty.d.ts.map +1 -1
  85. package/dist/types/src/components/DeckLayout/DeckLayout.d.ts.map +1 -1
  86. package/dist/types/src/components/DeckLayout/NodePlankHeading.d.ts.map +1 -1
  87. package/dist/types/src/components/DeckLayout/Plank.d.ts +1 -1
  88. package/dist/types/src/components/DeckLayout/Plank.d.ts.map +1 -1
  89. package/dist/types/src/components/DeckLayout/Sidebar.d.ts +1 -5
  90. package/dist/types/src/components/DeckLayout/Sidebar.d.ts.map +1 -1
  91. package/dist/types/src/components/DeckLayout/SidebarButton.d.ts +6 -0
  92. package/dist/types/src/components/DeckLayout/SidebarButton.d.ts.map +1 -0
  93. package/dist/types/src/components/DeckLayout/Topbar.d.ts +3 -0
  94. package/dist/types/src/components/DeckLayout/Topbar.d.ts.map +1 -0
  95. package/dist/types/src/components/fragments.d.ts +2 -0
  96. package/dist/types/src/components/fragments.d.ts.map +1 -0
  97. package/dist/types/src/events.d.ts +4 -0
  98. package/dist/types/src/events.d.ts.map +1 -0
  99. package/dist/types/src/index.d.ts +3 -2
  100. package/dist/types/src/index.d.ts.map +1 -1
  101. package/dist/types/src/meta.d.ts +3 -4
  102. package/dist/types/src/meta.d.ts.map +1 -1
  103. package/dist/types/src/translations.d.ts +2 -0
  104. package/dist/types/src/translations.d.ts.map +1 -1
  105. package/dist/types/src/types.d.ts +12 -20
  106. package/dist/types/src/types.d.ts.map +1 -1
  107. package/dist/types/src/util/index.d.ts +1 -1
  108. package/dist/types/src/util/index.d.ts.map +1 -1
  109. package/dist/types/src/util/useBreakpoints.d.ts +2 -0
  110. package/dist/types/src/util/useBreakpoints.d.ts.map +1 -0
  111. package/dist/types/src/util/useHoistStatusbar.d.ts +2 -0
  112. package/dist/types/src/util/useHoistStatusbar.d.ts.map +1 -0
  113. package/dist/types/tsconfig.tsbuildinfo +1 -1
  114. package/package.json +29 -35
  115. package/src/DeckPlugin.ts +123 -0
  116. package/src/capabilities/capabilities.ts +17 -0
  117. package/src/capabilities/index.ts +8 -0
  118. package/src/capabilities/layout/app-graph-builder.ts +101 -0
  119. package/src/capabilities/layout/deck.ts +25 -0
  120. package/src/capabilities/layout/index.ts +12 -0
  121. package/src/capabilities/layout/intent-resolver.ts +128 -0
  122. package/src/capabilities/layout/react-context.tsx +26 -0
  123. package/src/capabilities/layout/react-root.tsx +52 -0
  124. package/src/capabilities/layout/state.ts +32 -0
  125. package/src/capabilities/navigation/check-app-scheme.ts +44 -0
  126. package/src/capabilities/navigation/index.ts +10 -0
  127. package/src/capabilities/navigation/intent-resolver.ts +216 -0
  128. package/src/capabilities/navigation/location.ts +28 -0
  129. package/src/capabilities/navigation/set-location.ts +38 -0
  130. package/src/capabilities/navigation/url-handler.ts +67 -0
  131. package/src/capabilities/settings/index.ts +8 -0
  132. package/src/capabilities/settings/react-surface.tsx +23 -0
  133. package/src/capabilities/settings/settings.ts +22 -0
  134. package/src/components/DeckContext.ts +6 -1
  135. package/src/components/DeckLayout/Banner.tsx +37 -0
  136. package/src/components/DeckLayout/ComplementarySidebar.tsx +74 -52
  137. package/src/components/DeckLayout/ContentEmpty.tsx +10 -2
  138. package/src/components/DeckLayout/DeckLayout.tsx +28 -33
  139. package/src/components/DeckLayout/NodePlankHeading.tsx +15 -20
  140. package/src/components/DeckLayout/Plank.tsx +7 -7
  141. package/src/components/DeckLayout/Sidebar.tsx +21 -8
  142. package/src/components/DeckLayout/SidebarButton.tsx +74 -0
  143. package/src/components/DeckLayout/StatusBar.tsx +2 -2
  144. package/src/components/DeckLayout/Topbar.tsx +11 -0
  145. package/src/components/fragments.ts +6 -0
  146. package/src/events.ts +11 -0
  147. package/src/index.ts +3 -4
  148. package/src/meta.ts +2 -2
  149. package/src/translations.ts +2 -0
  150. package/src/types.ts +12 -37
  151. package/src/util/index.ts +1 -1
  152. package/src/util/useBreakpoints.ts +11 -0
  153. package/src/util/useHoistStatusbar.ts +15 -0
  154. package/dist/lib/browser/chunk-GVOGPULO.mjs.map +0 -7
  155. package/dist/lib/browser/chunk-ZC3K6C2W.mjs.map +0 -7
  156. package/dist/lib/browser/meta.mjs +0 -9
  157. package/dist/lib/browser/meta.mjs.map +0 -7
  158. package/dist/types/src/util/check-app-scheme.d.ts +0 -2
  159. package/dist/types/src/util/check-app-scheme.d.ts.map +0 -1
  160. package/src/DeckPlugin.tsx +0 -623
  161. package/src/util/check-app-scheme.ts +0 -21
@@ -0,0 +1,121 @@
1
+ import {
2
+ DECK_PLUGIN
3
+ } from "./chunk-JQJ5UWVB.mjs";
4
+
5
+ // packages/plugins/plugin-deck/src/capabilities/layout/app-graph-builder.ts
6
+ import { Capabilities, contributes, createIntent, LayoutAction, NavigationAction, openIds } from "@dxos/app-framework";
7
+ import { AttentionCapabilities } from "@dxos/plugin-attention";
8
+ import { createExtension, ROOT_ID } from "@dxos/plugin-graph";
9
+ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBuilder, createExtension({
10
+ id: DECK_PLUGIN,
11
+ filter: (node) => node.id === ROOT_ID,
12
+ actions: () => {
13
+ const _fullscreen = {
14
+ id: `${LayoutAction.SetLayoutMode._tag}/fullscreen`,
15
+ data: async () => {
16
+ const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
17
+ await dispatch(createIntent(LayoutAction.SetLayoutMode, {
18
+ layoutMode: "fullscreen"
19
+ }));
20
+ },
21
+ properties: {
22
+ label: [
23
+ "toggle fullscreen label",
24
+ {
25
+ ns: DECK_PLUGIN
26
+ }
27
+ ],
28
+ icon: "ph--arrows-out--regular",
29
+ keyBinding: {
30
+ macos: "ctrl+meta+f",
31
+ windows: "shift+ctrl+f"
32
+ }
33
+ }
34
+ };
35
+ const closeCurrent = {
36
+ id: `${NavigationAction.Close._tag}/current`,
37
+ data: async () => {
38
+ const attention = context.requestCapability(AttentionCapabilities.Attention);
39
+ const attended = attention.current.at(-1);
40
+ if (attended) {
41
+ const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
42
+ await dispatch(createIntent(NavigationAction.Close, {
43
+ activeParts: {
44
+ main: [
45
+ attended
46
+ ]
47
+ }
48
+ }));
49
+ }
50
+ },
51
+ properties: {
52
+ label: [
53
+ "close current label",
54
+ {
55
+ ns: DECK_PLUGIN
56
+ }
57
+ ],
58
+ icon: "ph--x--regular"
59
+ }
60
+ };
61
+ const closeOthers = {
62
+ id: `${NavigationAction.Close._tag}/others`,
63
+ data: async () => {
64
+ const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
65
+ const location = context.requestCapability(Capabilities.Location);
66
+ const attention = context.requestCapability(AttentionCapabilities.Attention);
67
+ const attended = attention.current.at(-1);
68
+ const ids = openIds(location.active, [
69
+ "main"
70
+ ]).filter((id) => id !== attended);
71
+ await dispatch(createIntent(NavigationAction.Close, {
72
+ activeParts: {
73
+ main: ids
74
+ }
75
+ }));
76
+ },
77
+ properties: {
78
+ label: [
79
+ "close others label",
80
+ {
81
+ ns: DECK_PLUGIN
82
+ }
83
+ ],
84
+ icon: "ph--x-square--regular"
85
+ }
86
+ };
87
+ const closeAll = {
88
+ id: `${NavigationAction.Close._tag}/all`,
89
+ data: async () => {
90
+ const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
91
+ const location = context.requestCapability(Capabilities.Location);
92
+ await dispatch(createIntent(NavigationAction.Close, {
93
+ activeParts: {
94
+ main: openIds(location.active, [
95
+ "main"
96
+ ])
97
+ }
98
+ }));
99
+ },
100
+ properties: {
101
+ label: [
102
+ "close all label",
103
+ {
104
+ ns: DECK_PLUGIN
105
+ }
106
+ ],
107
+ icon: "ph--x-circle--regular"
108
+ }
109
+ };
110
+ const layoutMode = context.requestCapabilities(Capabilities.Layout)[0]?.layoutMode;
111
+ return layoutMode === "deck" ? [
112
+ closeCurrent,
113
+ closeOthers,
114
+ closeAll
115
+ ] : [];
116
+ }
117
+ }));
118
+ export {
119
+ app_graph_builder_default as default
120
+ };
121
+ //# sourceMappingURL=app-graph-builder-67VRUD5K.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/layout/app-graph-builder.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n LayoutAction,\n NavigationAction,\n openIds,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { createExtension, type Node, ROOT_ID } from '@dxos/plugin-graph';\n\nimport { DECK_PLUGIN } from '../../meta';\n\nexport default (context: PluginsContext) =>\n contributes(\n Capabilities.AppGraphBuilder,\n createExtension({\n id: DECK_PLUGIN,\n filter: (node): node is Node<null> => node.id === ROOT_ID,\n actions: () => {\n // NOTE(Zan): This is currently disabled.\n // TODO(Zan): Fullscreen needs to know the active node and provide that to the layout part.\n const _fullscreen = {\n id: `${LayoutAction.SetLayoutMode._tag}/fullscreen`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(LayoutAction.SetLayoutMode, { layoutMode: 'fullscreen' }));\n },\n properties: {\n label: ['toggle fullscreen label', { ns: DECK_PLUGIN }],\n icon: 'ph--arrows-out--regular',\n keyBinding: {\n macos: 'ctrl+meta+f',\n windows: 'shift+ctrl+f',\n },\n },\n };\n\n const closeCurrent = {\n id: `${NavigationAction.Close._tag}/current`,\n data: async () => {\n const attention = context.requestCapability(AttentionCapabilities.Attention);\n const attended = attention.current.at(-1);\n if (attended) {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(NavigationAction.Close, { activeParts: { main: [attended] } }));\n }\n },\n properties: {\n label: ['close current label', { ns: DECK_PLUGIN }],\n icon: 'ph--x--regular',\n },\n };\n\n const closeOthers = {\n id: `${NavigationAction.Close._tag}/others`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const location = context.requestCapability(Capabilities.Location);\n const attention = context.requestCapability(AttentionCapabilities.Attention);\n const attended = attention.current.at(-1);\n const ids = openIds(location.active, ['main']).filter((id) => id !== attended);\n await dispatch(\n createIntent(NavigationAction.Close, {\n activeParts: { main: ids },\n }),\n );\n },\n properties: {\n label: ['close others label', { ns: DECK_PLUGIN }],\n icon: 'ph--x-square--regular',\n },\n };\n\n const closeAll = {\n id: `${NavigationAction.Close._tag}/all`,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const location = context.requestCapability(Capabilities.Location);\n await dispatch(\n createIntent(NavigationAction.Close, {\n activeParts: { main: openIds(location.active, ['main']) },\n }),\n );\n },\n properties: {\n label: ['close all label', { ns: DECK_PLUGIN }],\n icon: 'ph--x-circle--regular',\n },\n };\n\n const layoutMode = context.requestCapabilities(Capabilities.Layout)[0]?.layoutMode;\n return layoutMode === 'deck' ? [closeCurrent, closeOthers, closeAll] : [];\n },\n }),\n );\n"],
5
+ "mappings": ";;;;;AAIA,SACEA,cACAC,aACAC,cACAC,cACAC,kBACAC,eAEK;AACP,SAASC,6BAA6B;AACtC,SAASC,iBAA4BC,eAAe;AAIpD,IAAA,4BAAe,CAACC,YACdC,YACEC,aAAaC,iBACbC,gBAAgB;EACdC,IAAIC;EACJC,QAAQ,CAACC,SAA6BA,KAAKH,OAAOI;EAClDC,SAAS,MAAA;AAGP,UAAMC,cAAc;MAClBN,IAAI,GAAGO,aAAaC,cAAcC,IAAI;MACtCC,MAAM,YAAA;AACJ,cAAM,EAAEC,iBAAiBC,SAAQ,IAAKjB,QAAQkB,kBAAkBhB,aAAaiB,gBAAgB;AAC7F,cAAMF,SAASG,aAAaR,aAAaC,eAAe;UAAEQ,YAAY;QAAa,CAAA,CAAA;MACrF;MACAC,YAAY;QACVC,OAAO;UAAC;UAA2B;YAAEC,IAAIlB;UAAY;;QACrDmB,MAAM;QACNC,YAAY;UACVC,OAAO;UACPC,SAAS;QACX;MACF;IACF;AAEA,UAAMC,eAAe;MACnBxB,IAAI,GAAGyB,iBAAiBC,MAAMjB,IAAI;MAClCC,MAAM,YAAA;AACJ,cAAMiB,YAAYhC,QAAQkB,kBAAkBe,sBAAsBC,SAAS;AAC3E,cAAMC,WAAWH,UAAUI,QAAQC,GAAG,EAAC;AACvC,YAAIF,UAAU;AACZ,gBAAM,EAAEnB,iBAAiBC,SAAQ,IAAKjB,QAAQkB,kBAAkBhB,aAAaiB,gBAAgB;AAC7F,gBAAMF,SAASG,aAAaU,iBAAiBC,OAAO;YAAEO,aAAa;cAAEC,MAAM;gBAACJ;;YAAU;UAAE,CAAA,CAAA;QAC1F;MACF;MACAb,YAAY;QACVC,OAAO;UAAC;UAAuB;YAAEC,IAAIlB;UAAY;;QACjDmB,MAAM;MACR;IACF;AAEA,UAAMe,cAAc;MAClBnC,IAAI,GAAGyB,iBAAiBC,MAAMjB,IAAI;MAClCC,MAAM,YAAA;AACJ,cAAM,EAAEC,iBAAiBC,SAAQ,IAAKjB,QAAQkB,kBAAkBhB,aAAaiB,gBAAgB;AAC7F,cAAMsB,WAAWzC,QAAQkB,kBAAkBhB,aAAawC,QAAQ;AAChE,cAAMV,YAAYhC,QAAQkB,kBAAkBe,sBAAsBC,SAAS;AAC3E,cAAMC,WAAWH,UAAUI,QAAQC,GAAG,EAAC;AACvC,cAAMM,MAAMC,QAAQH,SAASI,QAAQ;UAAC;SAAO,EAAEtC,OAAO,CAACF,OAAOA,OAAO8B,QAAAA;AACrE,cAAMlB,SACJG,aAAaU,iBAAiBC,OAAO;UACnCO,aAAa;YAAEC,MAAMI;UAAI;QAC3B,CAAA,CAAA;MAEJ;MACArB,YAAY;QACVC,OAAO;UAAC;UAAsB;YAAEC,IAAIlB;UAAY;;QAChDmB,MAAM;MACR;IACF;AAEA,UAAMqB,WAAW;MACfzC,IAAI,GAAGyB,iBAAiBC,MAAMjB,IAAI;MAClCC,MAAM,YAAA;AACJ,cAAM,EAAEC,iBAAiBC,SAAQ,IAAKjB,QAAQkB,kBAAkBhB,aAAaiB,gBAAgB;AAC7F,cAAMsB,WAAWzC,QAAQkB,kBAAkBhB,aAAawC,QAAQ;AAChE,cAAMzB,SACJG,aAAaU,iBAAiBC,OAAO;UACnCO,aAAa;YAAEC,MAAMK,QAAQH,SAASI,QAAQ;cAAC;aAAO;UAAE;QAC1D,CAAA,CAAA;MAEJ;MACAvB,YAAY;QACVC,OAAO;UAAC;UAAmB;YAAEC,IAAIlB;UAAY;;QAC7CmB,MAAM;MACR;IACF;AAEA,UAAMJ,aAAarB,QAAQ+C,oBAAoB7C,aAAa8C,MAAM,EAAE,CAAA,GAAI3B;AACxE,WAAOA,eAAe,SAAS;MAACQ;MAAcW;MAAaM;QAAY,CAAA;EACzE;AACF,CAAA,CAAA;",
6
+ "names": ["Capabilities", "contributes", "createIntent", "LayoutAction", "NavigationAction", "openIds", "AttentionCapabilities", "createExtension", "ROOT_ID", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "DECK_PLUGIN", "filter", "node", "ROOT_ID", "actions", "_fullscreen", "LayoutAction", "SetLayoutMode", "_tag", "data", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "createIntent", "layoutMode", "properties", "label", "ns", "icon", "keyBinding", "macos", "windows", "closeCurrent", "NavigationAction", "Close", "attention", "AttentionCapabilities", "Attention", "attended", "current", "at", "activeParts", "main", "closeOthers", "location", "Location", "ids", "openIds", "active", "closeAll", "requestCapabilities", "Layout"]
7
+ }
@@ -0,0 +1,33 @@
1
+ import {
2
+ DECK_PLUGIN
3
+ } from "./chunk-JQJ5UWVB.mjs";
4
+
5
+ // packages/plugins/plugin-deck/src/capabilities/navigation/check-app-scheme.ts
6
+ import { Capabilities, contributes } from "@dxos/app-framework";
7
+ var isSocket = !!globalThis.__args;
8
+ var appScheme = "composer://";
9
+ var checkAppScheme = (url) => {
10
+ const iframe = document.createElement("iframe");
11
+ iframe.style.display = "none";
12
+ document.body.appendChild(iframe);
13
+ iframe.src = url + window.location.pathname.replace(/^\/+/, "") + window.location.search;
14
+ const timer = setTimeout(() => {
15
+ document.body.removeChild(iframe);
16
+ }, 3e3);
17
+ window.addEventListener("pagehide", (event) => {
18
+ clearTimeout(timer);
19
+ document.body.removeChild(iframe);
20
+ });
21
+ };
22
+ var check_app_scheme_default = async (context) => {
23
+ const settingsStore = context.requestCapability(Capabilities.SettingsStore);
24
+ const settings = settingsStore.getStore(DECK_PLUGIN)?.value;
25
+ if (!isSocket && settings?.enableNativeRedirect) {
26
+ checkAppScheme(appScheme);
27
+ }
28
+ return contributes(Capabilities.Null, null);
29
+ };
30
+ export {
31
+ check_app_scheme_default as default
32
+ };
33
+ //# sourceMappingURL=check-app-scheme-GEX6W2R5.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/navigation/check-app-scheme.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\n\nimport { DECK_PLUGIN } from '../../meta';\nimport { type DeckSettingsProps } from '../../types';\n\nconst isSocket = !!(globalThis as any).__args;\n\n// TODO(mjamesderocher): Can we get this directly from Socket?\nconst appScheme = 'composer://';\n\n// TODO(mjamesderocher): Factor out as part of NavigationPlugin.\nconst checkAppScheme = (url: string) => {\n const iframe = document.createElement('iframe');\n iframe.style.display = 'none';\n document.body.appendChild(iframe);\n\n iframe.src = url + window.location.pathname.replace(/^\\/+/, '') + window.location.search;\n\n const timer = setTimeout(() => {\n document.body.removeChild(iframe);\n }, 3000);\n\n window.addEventListener('pagehide', (event) => {\n clearTimeout(timer);\n document.body.removeChild(iframe);\n });\n};\n\nexport default async (context: PluginsContext) => {\n const settingsStore = context.requestCapability(Capabilities.SettingsStore);\n const settings = settingsStore.getStore<DeckSettingsProps>(DECK_PLUGIN)?.value;\n if (!isSocket && settings?.enableNativeRedirect) {\n checkAppScheme(appScheme);\n }\n\n return contributes(Capabilities.Null, null);\n};\n"],
5
+ "mappings": ";;;;;AAOA,SAASA,cAAcC,mBAAwC;AAK/D,IAAMC,WAAW,CAAC,CAAEC,WAAmBC;AAGvC,IAAMC,YAAY;AAGlB,IAAMC,iBAAiB,CAACC,QAAAA;AACtB,QAAMC,SAASC,SAASC,cAAc,QAAA;AACtCF,SAAOG,MAAMC,UAAU;AACvBH,WAASI,KAAKC,YAAYN,MAAAA;AAE1BA,SAAOO,MAAMR,MAAMS,OAAOC,SAASC,SAASC,QAAQ,QAAQ,EAAA,IAAMH,OAAOC,SAASG;AAElF,QAAMC,QAAQC,WAAW,MAAA;AACvBb,aAASI,KAAKU,YAAYf,MAAAA;EAC5B,GAAG,GAAA;AAEHQ,SAAOQ,iBAAiB,YAAY,CAACC,UAAAA;AACnCC,iBAAaL,KAAAA;AACbZ,aAASI,KAAKU,YAAYf,MAAAA;EAC5B,CAAA;AACF;AAEA,IAAA,2BAAe,OAAOmB,YAAAA;AACpB,QAAMC,gBAAgBD,QAAQE,kBAAkBC,aAAaC,aAAa;AAC1E,QAAMC,WAAWJ,cAAcK,SAA4BC,WAAAA,GAAcC;AACzE,MAAI,CAACjC,YAAY8B,UAAUI,sBAAsB;AAC/C9B,mBAAeD,SAAAA;EACjB;AAEA,SAAOgC,YAAYP,aAAaQ,MAAM,IAAA;AACxC;",
6
+ "names": ["Capabilities", "contributes", "isSocket", "globalThis", "__args", "appScheme", "checkAppScheme", "url", "iframe", "document", "createElement", "style", "display", "body", "appendChild", "src", "window", "location", "pathname", "replace", "search", "timer", "setTimeout", "removeChild", "addEventListener", "event", "clearTimeout", "context", "settingsStore", "requestCapability", "Capabilities", "SettingsStore", "settings", "getStore", "DECK_PLUGIN", "value", "enableNativeRedirect", "contributes", "Null"]
7
+ }