@dxos/plugin-simple-layout 0.8.4-main.7996785055 → 0.8.4-main.8baae0fced
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.
- package/LICENSE +102 -5
- package/dist/lib/neutral/SimpleLayoutPlugin.mjs +52 -0
- package/dist/lib/neutral/SimpleLayoutPlugin.mjs.map +7 -0
- package/dist/lib/neutral/app-graph-builder-EYQKLRRP.mjs +21 -0
- package/dist/lib/neutral/app-graph-builder-EYQKLRRP.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +21 -0
- package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
- package/dist/lib/neutral/chunk-5LQGH5KW.mjs +20 -0
- package/dist/lib/neutral/chunk-5LQGH5KW.mjs.map +7 -0
- package/dist/lib/{browser/chunk-XJVW3PRY.mjs → neutral/chunk-7UDV3JDT.mjs} +4 -4
- package/dist/lib/neutral/chunk-7UDV3JDT.mjs.map +7 -0
- package/dist/lib/neutral/chunk-FD2CAY4Q.mjs +26 -0
- package/dist/lib/neutral/chunk-FD2CAY4Q.mjs.map +7 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/neutral/chunk-Y2QR5SYD.mjs +8 -0
- package/dist/lib/neutral/chunk-Y2QR5SYD.mjs.map +7 -0
- package/dist/lib/{browser/close-OT5JOGVY.mjs → neutral/close-WKMURGUB.mjs} +5 -4
- package/dist/lib/{node-esm/close-PEVHREL2.mjs.map → neutral/close-WKMURGUB.mjs.map} +1 -1
- package/dist/lib/{browser/chunk-J5FQ32AV.mjs → neutral/components/index.mjs} +261 -591
- package/dist/lib/neutral/components/index.mjs.map +7 -0
- package/dist/lib/neutral/hooks/index.mjs +332 -0
- package/dist/lib/neutral/hooks/index.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +14 -0
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/meta.mjs +8 -0
- package/dist/lib/neutral/meta.mjs.map +7 -0
- package/dist/lib/neutral/open-PEVXNVTV.mjs +51 -0
- package/dist/lib/neutral/open-PEVXNVTV.mjs.map +7 -0
- package/dist/lib/neutral/operation-handler-EAIE7KPR.mjs +13 -0
- package/dist/lib/neutral/operation-handler-EAIE7KPR.mjs.map +7 -0
- package/dist/lib/neutral/operations/index.mjs +8 -0
- package/dist/lib/neutral/operations/index.mjs.map +7 -0
- package/dist/lib/neutral/plugin.mjs +16 -0
- package/dist/lib/neutral/plugin.mjs.map +7 -0
- package/dist/lib/{browser/react-root-6KIGPLUT.mjs → neutral/react-root-VE265VX4.mjs} +5 -8
- package/dist/lib/neutral/react-root-VE265VX4.mjs.map +7 -0
- package/dist/lib/{node-esm/react-surface-WLKB6AET.mjs → neutral/react-surface-YHXOHJI7.mjs} +16 -15
- package/dist/lib/neutral/react-surface-YHXOHJI7.mjs.map +7 -0
- package/dist/lib/{browser/revert-workspace-DLE265AN.mjs → neutral/revert-workspace-ST6NZUNG.mjs} +5 -4
- package/dist/lib/{node-esm/revert-workspace-XZXT64YA.mjs.map → neutral/revert-workspace-ST6NZUNG.mjs.map} +1 -1
- package/dist/lib/{browser/set-52HGTSH4.mjs → neutral/set-6ZRLWPJS.mjs} +5 -4
- package/dist/lib/{node-esm/set-5I6LFH5L.mjs.map → neutral/set-6ZRLWPJS.mjs.map} +1 -1
- package/dist/lib/{browser/set-layout-mode-T6QI3DGU.mjs → neutral/set-layout-mode-L22HRCKS.mjs} +4 -2
- package/dist/lib/neutral/set-layout-mode-L22HRCKS.mjs.map +7 -0
- package/dist/lib/{browser/spotlight-dismiss-67PHYS5B.mjs → neutral/spotlight-dismiss-EIYW5E7M.mjs} +7 -15
- package/dist/lib/{node-esm/spotlight-dismiss-RMLRZUVY.mjs.map → neutral/spotlight-dismiss-EIYW5E7M.mjs.map} +3 -3
- package/dist/lib/{browser/state-TXSMUWYI.mjs → neutral/state-7NXKBLPY.mjs} +5 -6
- package/dist/lib/neutral/state-7NXKBLPY.mjs.map +7 -0
- package/dist/lib/{browser/switch-workspace-5Y6T4BWJ.mjs → neutral/switch-workspace-PYWPTMFO.mjs} +5 -4
- package/dist/lib/{node-esm/switch-workspace-PB6T2SGY.mjs.map → neutral/switch-workspace-PYWPTMFO.mjs.map} +1 -1
- package/dist/lib/neutral/translations.mjs +36 -0
- package/dist/lib/neutral/translations.mjs.map +7 -0
- package/dist/lib/neutral/types/index.mjs +10 -0
- package/dist/lib/neutral/types/index.mjs.map +7 -0
- package/dist/lib/{browser/update-complementary-MX3TTVAB.mjs → neutral/update-complementary-HKWF5OXT.mjs} +8 -6
- package/dist/lib/neutral/update-complementary-HKWF5OXT.mjs.map +7 -0
- package/dist/lib/{browser/update-dialog-FPAPZXKO.mjs → neutral/update-dialog-P4ASXCE7.mjs} +5 -4
- package/dist/lib/{node-esm/update-dialog-ID267DCL.mjs.map → neutral/update-dialog-P4ASXCE7.mjs.map} +1 -1
- package/dist/lib/{browser/update-popover-6V5ZTIYN.mjs → neutral/update-popover-REAKC2GN.mjs} +5 -4
- package/dist/lib/{node-esm/update-popover-RLHU2HF4.mjs.map → neutral/update-popover-REAKC2GN.mjs.map} +1 -1
- package/dist/lib/{browser/update-sidebar-WHDKYMV7.mjs → neutral/update-sidebar-O5SQPR6Q.mjs} +4 -2
- package/dist/lib/neutral/update-sidebar-O5SQPR6Q.mjs.map +7 -0
- package/dist/lib/{node-esm/url-handler-WMONO2T6.mjs → neutral/url-handler-GZXUUAHD.mjs} +45 -80
- package/dist/lib/neutral/url-handler-GZXUUAHD.mjs.map +7 -0
- package/dist/types/src/SimpleLayoutPlugin.d.ts +1 -0
- package/dist/types/src/SimpleLayoutPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +21 -6
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/{operation-handler/operation-handler.d.ts → operation-handler.d.ts} +1 -1
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/{spotlight-dismiss/spotlight-dismiss.d.ts → spotlight-dismiss.d.ts} +1 -1
- package/dist/types/src/capabilities/spotlight-dismiss.d.ts.map +1 -0
- package/dist/types/src/capabilities/{state/state.d.ts → state.d.ts} +3 -3
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/capabilities/{url-handler/url-handler.d.ts → url-handler.d.ts} +1 -1
- package/dist/types/src/capabilities/url-handler.d.ts.map +1 -0
- package/dist/types/src/components/ContentError.stories.d.ts +21 -19
- package/dist/types/src/components/ContentError.stories.d.ts.map +1 -1
- package/dist/types/src/components/DebugOverlay/DebugOverlay.d.ts.map +1 -1
- package/dist/types/src/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/types/src/components/Home/Home.d.ts.map +1 -1
- package/dist/types/src/components/Loading/Loading.stories.d.ts.map +1 -1
- package/dist/types/src/components/MobileLayout/MobileLayout.d.ts +2 -2
- package/dist/types/src/components/MobileLayout/MobileLayout.d.ts.map +1 -1
- package/dist/types/src/components/MobileLayout/MobileLayout.stories.d.ts.map +1 -1
- package/dist/types/src/components/NavBranch/NavBranch.d.ts.map +1 -1
- package/dist/types/src/components/Popover/Popover.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/AppBar.d.ts +1 -5
- package/dist/types/src/components/SimpleLayout/AppBar.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/AppBar.stories.d.ts +21 -19
- package/dist/types/src/components/SimpleLayout/AppBar.stories.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/Drawer.d.ts +4 -7
- package/dist/types/src/components/SimpleLayout/Drawer.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/Main.d.ts +4 -7
- package/dist/types/src/components/SimpleLayout/Main.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/NavBar.d.ts +1 -5
- package/dist/types/src/components/SimpleLayout/NavBar.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/NavBar.stories.d.ts +22 -24
- package/dist/types/src/components/SimpleLayout/NavBar.stories.d.ts.map +1 -1
- package/dist/types/src/components/SimpleLayout/SimpleLayout.stories.d.ts +21 -19
- package/dist/types/src/components/SimpleLayout/SimpleLayout.stories.d.ts.map +1 -1
- package/dist/types/src/components/hooks.d.ts.map +1 -1
- package/dist/types/src/hooks/actions.d.ts +3 -3
- package/dist/types/src/hooks/actions.d.ts.map +1 -1
- package/dist/types/src/hooks/useAppBarProps.d.ts +2 -2
- package/dist/types/src/hooks/useAppBarProps.d.ts.map +1 -1
- package/dist/types/src/hooks/useCompanions.d.ts.map +1 -1
- package/dist/types/src/hooks/useDrawerActions.d.ts.map +1 -1
- package/dist/types/src/hooks/useSimpleLayoutState.d.ts +3 -3
- package/dist/types/src/hooks/useSimpleLayoutState.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/close.d.ts +1 -1
- package/dist/types/src/operations/close.d.ts.map +1 -1
- package/dist/types/src/operations/index.d.ts +1 -1
- package/dist/types/src/operations/index.d.ts.map +1 -1
- package/dist/types/src/operations/open.d.ts +1 -1
- package/dist/types/src/operations/open.d.ts.map +1 -1
- package/dist/types/src/operations/revert-workspace.d.ts +1 -1
- package/dist/types/src/operations/revert-workspace.d.ts.map +1 -1
- package/dist/types/src/operations/set-layout-mode.d.ts +1 -1
- package/dist/types/src/operations/set-layout-mode.d.ts.map +1 -1
- package/dist/types/src/operations/set.d.ts +1 -1
- package/dist/types/src/operations/set.d.ts.map +1 -1
- package/dist/types/src/operations/state-access.d.ts +3 -3
- package/dist/types/src/operations/state-access.d.ts.map +1 -1
- package/dist/types/src/operations/switch-workspace.d.ts +1 -1
- package/dist/types/src/operations/switch-workspace.d.ts.map +1 -1
- package/dist/types/src/operations/update-complementary.d.ts +1 -1
- package/dist/types/src/operations/update-complementary.d.ts.map +1 -1
- package/dist/types/src/operations/update-dialog.d.ts +1 -1
- package/dist/types/src/operations/update-dialog.d.ts.map +1 -1
- package/dist/types/src/operations/update-popover.d.ts +1 -1
- package/dist/types/src/operations/update-popover.d.ts.map +1 -1
- package/dist/types/src/operations/update-sidebar.d.ts +1 -1
- package/dist/types/src/operations/update-sidebar.d.ts.map +1 -1
- package/dist/types/src/plugin.d.ts +4 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +21 -20
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/{capabilities.d.ts → SimpleLayoutCapabilities.d.ts} +12 -10
- package/dist/types/src/types/SimpleLayoutCapabilities.d.ts.map +1 -0
- package/dist/types/src/types/SimpleLayoutEvents.d.ts +4 -0
- package/dist/types/src/types/SimpleLayoutEvents.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +2 -2
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +87 -33
- package/src/SimpleLayoutPlugin.ts +17 -6
- package/src/capabilities/app-graph-builder.ts +21 -0
- package/src/capabilities/index.ts +13 -6
- package/src/capabilities/{operation-handler/operation-handler.ts → operation-handler.ts} +2 -2
- package/src/capabilities/{react-root/react-root.tsx → react-root.tsx} +2 -2
- package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +13 -6
- package/src/capabilities/{state/state.tsx → state.tsx} +5 -6
- package/src/capabilities/url-handler.ts +164 -0
- package/src/components/ContentError.stories.tsx +1 -1
- package/src/components/Dialog/Dialog.tsx +14 -3
- package/src/components/Home/Home.tsx +3 -2
- package/src/components/Loading/Loading.tsx +1 -1
- package/src/components/MobileLayout/MobileLayout.stories.tsx +13 -13
- package/src/components/MobileLayout/MobileLayout.tsx +0 -2
- package/src/components/NavBranch/NavBranch.tsx +4 -7
- package/src/components/Popover/Popover.tsx +10 -5
- package/src/components/SimpleLayout/AppBar.stories.tsx +7 -7
- package/src/components/SimpleLayout/AppBar.tsx +45 -42
- package/src/components/SimpleLayout/Drawer.tsx +24 -16
- package/src/components/SimpleLayout/Main.tsx +5 -5
- package/src/components/SimpleLayout/NavBar.stories.tsx +2 -2
- package/src/components/SimpleLayout/SimpleLayout.stories.tsx +10 -10
- package/src/components/SimpleLayout/SimpleLayout.tsx +9 -9
- package/src/components/hooks.ts +1 -1
- package/src/hooks/actions.ts +8 -5
- package/src/hooks/useAppBarProps.ts +4 -24
- package/src/hooks/useDrawerActions.ts +6 -6
- package/src/hooks/useNavbarActions.ts +4 -4
- package/src/hooks/useSimpleLayoutState.ts +7 -5
- package/src/index.ts +2 -1
- package/src/meta.ts +3 -1
- package/src/operations/close.ts +1 -1
- package/src/operations/index.ts +1 -1
- package/src/operations/open.ts +36 -3
- package/src/operations/revert-workspace.ts +1 -1
- package/src/operations/set-layout-mode.ts +1 -1
- package/src/operations/set.ts +1 -1
- package/src/operations/state-access.ts +5 -3
- package/src/operations/switch-workspace.ts +1 -1
- package/src/operations/update-complementary.ts +4 -3
- package/src/operations/update-dialog.ts +1 -1
- package/src/operations/update-popover.ts +1 -1
- package/src/operations/update-sidebar.ts +1 -1
- package/src/plugin.ts +11 -0
- package/src/translations.ts +20 -19
- package/src/types/{capabilities.ts → SimpleLayoutCapabilities.ts} +6 -18
- package/src/types/SimpleLayoutEvents.ts +15 -0
- package/src/types/index.ts +2 -2
- package/dist/lib/browser/chunk-J5FQ32AV.mjs.map +0 -7
- package/dist/lib/browser/chunk-MRR7PXSM.mjs +0 -29
- package/dist/lib/browser/chunk-MRR7PXSM.mjs.map +0 -7
- package/dist/lib/browser/chunk-XJVW3PRY.mjs.map +0 -7
- package/dist/lib/browser/close-OT5JOGVY.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -102
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/open-4FQ44Z5G.mjs +0 -31
- package/dist/lib/browser/open-4FQ44Z5G.mjs.map +0 -7
- package/dist/lib/browser/operation-handler-OAD7LISD.mjs +0 -16
- package/dist/lib/browser/operation-handler-OAD7LISD.mjs.map +0 -7
- package/dist/lib/browser/react-root-6KIGPLUT.mjs.map +0 -7
- package/dist/lib/browser/react-surface-JLIEQGOL.mjs +0 -44
- package/dist/lib/browser/react-surface-JLIEQGOL.mjs.map +0 -7
- package/dist/lib/browser/revert-workspace-DLE265AN.mjs.map +0 -7
- package/dist/lib/browser/set-52HGTSH4.mjs.map +0 -7
- package/dist/lib/browser/set-layout-mode-T6QI3DGU.mjs.map +0 -7
- package/dist/lib/browser/spotlight-dismiss-67PHYS5B.mjs.map +0 -7
- package/dist/lib/browser/state-TXSMUWYI.mjs.map +0 -7
- package/dist/lib/browser/switch-workspace-5Y6T4BWJ.mjs.map +0 -7
- package/dist/lib/browser/update-complementary-MX3TTVAB.mjs.map +0 -7
- package/dist/lib/browser/update-dialog-FPAPZXKO.mjs.map +0 -7
- package/dist/lib/browser/update-popover-6V5ZTIYN.mjs.map +0 -7
- package/dist/lib/browser/update-sidebar-WHDKYMV7.mjs.map +0 -7
- package/dist/lib/browser/url-handler-GUJ3L7Y3.mjs +0 -163
- package/dist/lib/browser/url-handler-GUJ3L7Y3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-27K22G6S.mjs +0 -23
- package/dist/lib/node-esm/chunk-27K22G6S.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-EXNDYZTP.mjs +0 -1257
- package/dist/lib/node-esm/chunk-EXNDYZTP.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-WMNTJ2MK.mjs +0 -31
- package/dist/lib/node-esm/chunk-WMNTJ2MK.mjs.map +0 -7
- package/dist/lib/node-esm/close-PEVHREL2.mjs +0 -35
- package/dist/lib/node-esm/index.mjs +0 -103
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/open-LMJY7JCJ.mjs +0 -32
- package/dist/lib/node-esm/open-LMJY7JCJ.mjs.map +0 -7
- package/dist/lib/node-esm/operation-handler-A2DC4WHC.mjs +0 -18
- package/dist/lib/node-esm/operation-handler-A2DC4WHC.mjs.map +0 -7
- package/dist/lib/node-esm/react-root-5SCW2KTH.mjs +0 -22
- package/dist/lib/node-esm/react-root-5SCW2KTH.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-WLKB6AET.mjs.map +0 -7
- package/dist/lib/node-esm/revert-workspace-XZXT64YA.mjs +0 -22
- package/dist/lib/node-esm/set-5I6LFH5L.mjs +0 -22
- package/dist/lib/node-esm/set-layout-mode-F5B6QLZM.mjs +0 -13
- package/dist/lib/node-esm/set-layout-mode-F5B6QLZM.mjs.map +0 -7
- package/dist/lib/node-esm/spotlight-dismiss-RMLRZUVY.mjs +0 -68
- package/dist/lib/node-esm/state-JMX6FAG4.mjs +0 -49
- package/dist/lib/node-esm/state-JMX6FAG4.mjs.map +0 -7
- package/dist/lib/node-esm/switch-workspace-PB6T2SGY.mjs +0 -25
- package/dist/lib/node-esm/update-complementary-FTW423IY.mjs +0 -32
- package/dist/lib/node-esm/update-complementary-FTW423IY.mjs.map +0 -7
- package/dist/lib/node-esm/update-dialog-ID267DCL.mjs +0 -30
- package/dist/lib/node-esm/update-popover-RLHU2HF4.mjs +0 -34
- package/dist/lib/node-esm/update-sidebar-BJ7HTNZ4.mjs +0 -12
- package/dist/lib/node-esm/update-sidebar-BJ7HTNZ4.mjs.map +0 -7
- package/dist/lib/node-esm/url-handler-WMONO2T6.mjs.map +0 -7
- package/dist/types/src/capabilities/operation-handler/index.d.ts +0 -4
- package/dist/types/src/capabilities/operation-handler/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-handler/operation-handler.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-root/index.d.ts +0 -6
- package/dist/types/src/capabilities/react-root/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-root/react-root.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/spotlight-dismiss/index.d.ts +0 -3
- package/dist/types/src/capabilities/spotlight-dismiss/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/spotlight-dismiss/spotlight-dismiss.d.ts.map +0 -1
- package/dist/types/src/capabilities/state/index.d.ts +0 -13
- package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
- package/dist/types/src/capabilities/url-handler/index.d.ts +0 -3
- package/dist/types/src/capabilities/url-handler/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/url-handler/url-handler.d.ts.map +0 -1
- package/dist/types/src/types/capabilities.d.ts.map +0 -1
- package/dist/types/src/types/events.d.ts +0 -6
- package/dist/types/src/types/events.d.ts.map +0 -1
- package/src/capabilities/operation-handler/index.ts +0 -9
- package/src/capabilities/react-root/index.ts +0 -7
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/spotlight-dismiss/index.ts +0 -7
- package/src/capabilities/state/index.ts +0 -9
- package/src/capabilities/url-handler/index.ts +0 -7
- package/src/capabilities/url-handler/url-handler.ts +0 -145
- package/src/types/events.ts +0 -15
- /package/dist/types/src/capabilities/{react-root/react-root.d.ts → react-root.d.ts} +0 -0
- /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
- /package/src/capabilities/{spotlight-dismiss/spotlight-dismiss.ts → spotlight-dismiss.ts} +0 -0
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
SimpleLayoutState
|
|
3
|
-
} from "./chunk-MRR7PXSM.mjs";
|
|
4
|
-
|
|
5
|
-
// src/capabilities/url-handler/url-handler.ts
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
8
|
-
import { LayoutOperation, fromUrlPath, getWorkspaceFromPath, toUrlPath } from "@dxos/app-toolkit";
|
|
9
|
-
import { log } from "@dxos/log";
|
|
10
|
-
import { isTauri } from "@dxos/util";
|
|
11
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-simple-layout/src/capabilities/url-handler/url-handler.ts";
|
|
12
|
-
var url_handler_default = Capability.makeModule(Effect.fnUntraced(function* () {
|
|
13
|
-
const { invokePromise } = yield* Capability.get(Capabilities.OperationInvoker);
|
|
14
|
-
const handlePathNavigation = (pathname) => {
|
|
15
|
-
if (isFilePath(pathname)) {
|
|
16
|
-
log.info("[UrlHandler] Skipping file path (not a graph node)", {
|
|
17
|
-
pathname
|
|
18
|
-
}, {
|
|
19
|
-
F: __dxlog_file,
|
|
20
|
-
L: 31,
|
|
21
|
-
S: this,
|
|
22
|
-
C: (f, a) => f(...a)
|
|
23
|
-
});
|
|
24
|
-
pathname = "/";
|
|
25
|
-
}
|
|
26
|
-
log.info("[UrlHandler] Navigating to path", {
|
|
27
|
-
pathname
|
|
28
|
-
}, {
|
|
29
|
-
F: __dxlog_file,
|
|
30
|
-
L: 35,
|
|
31
|
-
S: this,
|
|
32
|
-
C: (f, a) => f(...a)
|
|
33
|
-
});
|
|
34
|
-
const qualifiedId = fromUrlPath(pathname);
|
|
35
|
-
const workspace = getWorkspaceFromPath(qualifiedId);
|
|
36
|
-
void invokePromise(LayoutOperation.SwitchWorkspace, {
|
|
37
|
-
subject: workspace
|
|
38
|
-
});
|
|
39
|
-
const activeId = qualifiedId !== workspace ? qualifiedId : void 0;
|
|
40
|
-
if (activeId) {
|
|
41
|
-
void invokePromise(LayoutOperation.Open, {
|
|
42
|
-
subject: [
|
|
43
|
-
activeId
|
|
44
|
-
]
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
const onNavigation = handleNavigation(handlePathNavigation);
|
|
49
|
-
yield* Effect.sync(() => onNavigation());
|
|
50
|
-
window.addEventListener("popstate", onNavigation);
|
|
51
|
-
let unlistenDeepLink;
|
|
52
|
-
if (isTauri()) {
|
|
53
|
-
yield* Effect.tryPromise({
|
|
54
|
-
try: async () => {
|
|
55
|
-
const { getCurrent, onOpenUrl } = await import("@tauri-apps/plugin-deep-link");
|
|
56
|
-
const launchUrls = await getCurrent();
|
|
57
|
-
if (launchUrls && launchUrls.length > 0) {
|
|
58
|
-
log.info("[UrlHandler] App launched with deep links", {
|
|
59
|
-
urls: launchUrls
|
|
60
|
-
}, {
|
|
61
|
-
F: __dxlog_file,
|
|
62
|
-
L: 61,
|
|
63
|
-
S: this,
|
|
64
|
-
C: (f, a) => f(...a)
|
|
65
|
-
});
|
|
66
|
-
for (const url of launchUrls) {
|
|
67
|
-
handleDeepLink(url, handlePathNavigation);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
unlistenDeepLink = await onOpenUrl((urls) => {
|
|
71
|
-
log.info("[UrlHandler] Deep links received", {
|
|
72
|
-
urls
|
|
73
|
-
}, {
|
|
74
|
-
F: __dxlog_file,
|
|
75
|
-
L: 68,
|
|
76
|
-
S: this,
|
|
77
|
-
C: (f, a) => f(...a)
|
|
78
|
-
});
|
|
79
|
-
for (const url of urls) {
|
|
80
|
-
handleDeepLink(url, handlePathNavigation);
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
log.info("[UrlHandler] Deep link listener initialized", void 0, {
|
|
84
|
-
F: __dxlog_file,
|
|
85
|
-
L: 74,
|
|
86
|
-
S: this,
|
|
87
|
-
C: (f, a) => f(...a)
|
|
88
|
-
});
|
|
89
|
-
},
|
|
90
|
-
catch: (error) => {
|
|
91
|
-
log.warn("[UrlHandler] Failed to initialize deep link listener", {
|
|
92
|
-
error
|
|
93
|
-
}, {
|
|
94
|
-
F: __dxlog_file,
|
|
95
|
-
L: 77,
|
|
96
|
-
S: this,
|
|
97
|
-
C: (f, a) => f(...a)
|
|
98
|
-
});
|
|
99
|
-
return error;
|
|
100
|
-
}
|
|
101
|
-
}).pipe(Effect.catchAll(() => Effect.void));
|
|
102
|
-
}
|
|
103
|
-
let lastWorkspace;
|
|
104
|
-
let lastActive;
|
|
105
|
-
const unsubscribe = yield* Capabilities.subscribeAtom(SimpleLayoutState, (state) => {
|
|
106
|
-
const { workspace, active } = state;
|
|
107
|
-
if (workspace !== lastWorkspace || active !== lastActive) {
|
|
108
|
-
lastWorkspace = workspace;
|
|
109
|
-
lastActive = active;
|
|
110
|
-
const path = active ? toUrlPath(active) : toUrlPath(workspace);
|
|
111
|
-
if (window.location.pathname !== path) {
|
|
112
|
-
history.pushState(null, "", `${path}${window.location.search}`);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
return Capability.contributes(Capabilities.Null, null, () => Effect.sync(() => {
|
|
117
|
-
window.removeEventListener("popstate", onNavigation);
|
|
118
|
-
unsubscribe();
|
|
119
|
-
unlistenDeepLink?.();
|
|
120
|
-
}));
|
|
121
|
-
}));
|
|
122
|
-
var isRedirectPath = (pathname) => pathname.startsWith("/redirect/");
|
|
123
|
-
var isFilePath = (pathname) => /\.[a-z]+$/i.test(pathname);
|
|
124
|
-
var handleNavigation = (navigate) => () => navigate(window.location.pathname);
|
|
125
|
-
var handleDeepLink = (urlString, navigate) => {
|
|
126
|
-
log.info("[UrlHandler] Deep link received", {
|
|
127
|
-
url: urlString
|
|
128
|
-
}, {
|
|
129
|
-
F: __dxlog_file,
|
|
130
|
-
L: 134,
|
|
131
|
-
S: void 0,
|
|
132
|
-
C: (f, a) => f(...a)
|
|
133
|
-
});
|
|
134
|
-
try {
|
|
135
|
-
const url = new URL(urlString);
|
|
136
|
-
if (isRedirectPath(url.pathname)) {
|
|
137
|
-
log.info("[UrlHandler] Skipping redirect path (handled elsewhere)", {
|
|
138
|
-
pathname: url.pathname
|
|
139
|
-
}, {
|
|
140
|
-
F: __dxlog_file,
|
|
141
|
-
L: 138,
|
|
142
|
-
S: void 0,
|
|
143
|
-
C: (f, a) => f(...a)
|
|
144
|
-
});
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
navigate(url.pathname);
|
|
148
|
-
} catch (error) {
|
|
149
|
-
log.warn("[UrlHandler] Failed to parse deep link URL", {
|
|
150
|
-
urlString,
|
|
151
|
-
error
|
|
152
|
-
}, {
|
|
153
|
-
F: __dxlog_file,
|
|
154
|
-
L: 143,
|
|
155
|
-
S: void 0,
|
|
156
|
-
C: (f, a) => f(...a)
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
};
|
|
160
|
-
export {
|
|
161
|
-
url_handler_default as default
|
|
162
|
-
};
|
|
163
|
-
//# sourceMappingURL=url-handler-GUJ3L7Y3.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/url-handler/url-handler.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { LayoutOperation, fromUrlPath, getWorkspaceFromPath, toUrlPath } from '@dxos/app-toolkit';\nimport { log } from '@dxos/log';\nimport { isTauri } from '@dxos/util';\n\nimport { type SimpleLayoutState, SimpleLayoutState as SimpleLayoutStateCapability } from '../../types';\n\n/**\n * URL handler for simple layout that syncs browser URL with layout state.\n * URL paths map directly to qualified graph IDs with the leading `root` segment stripped.\n * Root is represented as `/`.\n *\n * On mobile Tauri, also listens for deep links via the deep-link plugin.\n */\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const { invokePromise } = yield* Capability.get(Capabilities.OperationInvoker);\n\n /**\n * Handle navigation from a pathname.\n * Restores the qualified graph ID and dispatches layout operations.\n */\n const handlePathNavigation = (pathname: string) => {\n if (isFilePath(pathname)) {\n log.info('[UrlHandler] Skipping file path (not a graph node)', { pathname });\n pathname = '/';\n }\n\n log.info('[UrlHandler] Navigating to path', { pathname });\n\n const qualifiedId = fromUrlPath(pathname);\n const workspace = getWorkspaceFromPath(qualifiedId);\n\n void invokePromise(LayoutOperation.SwitchWorkspace, { subject: workspace });\n\n const activeId = qualifiedId !== workspace ? qualifiedId : undefined;\n if (activeId) {\n void invokePromise(LayoutOperation.Open, { subject: [activeId] });\n }\n };\n\n const onNavigation = handleNavigation(handlePathNavigation);\n\n yield* Effect.sync(() => onNavigation());\n window.addEventListener('popstate', onNavigation);\n\n let unlistenDeepLink: (() => void) | undefined;\n if (isTauri()) {\n yield* Effect.tryPromise({\n try: async () => {\n const { getCurrent, onOpenUrl } = await import('@tauri-apps/plugin-deep-link');\n\n const launchUrls = await getCurrent();\n if (launchUrls && launchUrls.length > 0) {\n log.info('[UrlHandler] App launched with deep links', { urls: launchUrls });\n for (const url of launchUrls) {\n handleDeepLink(url, handlePathNavigation);\n }\n }\n\n unlistenDeepLink = await onOpenUrl((urls) => {\n log.info('[UrlHandler] Deep links received', { urls });\n for (const url of urls) {\n handleDeepLink(url, handlePathNavigation);\n }\n });\n\n log.info('[UrlHandler] Deep link listener initialized');\n },\n catch: (error) => {\n log.warn('[UrlHandler] Failed to initialize deep link listener', { error });\n return error;\n },\n }).pipe(Effect.catchAll(() => Effect.void));\n }\n\n let lastWorkspace: string | undefined;\n let lastActive: string | undefined;\n const unsubscribe = yield* Capabilities.subscribeAtom(SimpleLayoutStateCapability, (state: SimpleLayoutState) => {\n const { workspace, active } = state;\n\n if (workspace !== lastWorkspace || active !== lastActive) {\n lastWorkspace = workspace;\n lastActive = active;\n\n const path = active ? toUrlPath(active) : toUrlPath(workspace);\n if (window.location.pathname !== path) {\n history.pushState(null, '', `${path}${window.location.search}`);\n }\n }\n });\n\n return Capability.contributes(Capabilities.Null, null, () =>\n Effect.sync(() => {\n window.removeEventListener('popstate', onNavigation);\n unsubscribe();\n unlistenDeepLink?.();\n }),\n );\n }),\n);\n\n/**\n * Check if a path is a special redirect path that shouldn't be navigated to.\n * These paths are handled by other systems (e.g., OAuth).\n */\nconst isRedirectPath = (pathname: string): boolean => pathname.startsWith('/redirect/');\n\n/**\n * Paths with file extensions (e.g., `/iframe.html`) are not graph node paths.\n * This guards against embedded contexts like Storybook iframes interpreting\n * the host pathname as a navigation target.\n */\nconst isFilePath = (pathname: string): boolean => /\\.[a-z]+$/i.test(pathname);\n\n/**\n * Returns a handler for navigation events (initial load and popstate) that navigates to current pathname.\n */\nconst handleNavigation =\n (navigate: (pathname: string) => void): (() => void) =>\n () =>\n navigate(window.location.pathname);\n\n/**\n * Handle deep link URL from Tauri. Parses the URL and calls navigate unless it's a redirect path.\n */\nconst handleDeepLink = (urlString: string, navigate: (pathname: string) => void): void => {\n log.info('[UrlHandler] Deep link received', { url: urlString });\n try {\n const url = new URL(urlString);\n if (isRedirectPath(url.pathname)) {\n log.info('[UrlHandler] Skipping redirect path (handled elsewhere)', { pathname: url.pathname });\n return;\n }\n navigate(url.pathname);\n } catch (error) {\n log.warn('[UrlHandler] Failed to parse deep link URL', { urlString, error });\n }\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Effect", "Capabilities", "Capability", "LayoutOperation", "fromUrlPath", "getWorkspaceFromPath", "toUrlPath", "log", "isTauri", "Capability", "makeModule", "fnUntraced", "invokePromise", "get", "Capabilities", "OperationInvoker", "handlePathNavigation", "pathname", "isFilePath", "log", "info", "qualifiedId", "fromUrlPath", "workspace", "getWorkspaceFromPath", "LayoutOperation", "SwitchWorkspace", "subject", "activeId", "undefined", "Open", "onNavigation", "handleNavigation", "sync", "window", "addEventListener", "unlistenDeepLink", "isTauri", "tryPromise", "try", "getCurrent", "onOpenUrl", "launchUrls", "length", "urls", "url", "handleDeepLink", "catch", "error", "warn", "pipe", "catchAll", "void", "lastWorkspace", "lastActive", "unsubscribe", "subscribeAtom", "SimpleLayoutStateCapability", "state", "active", "path", "toUrlPath", "location", "history", "pushState", "search", "contributes", "Null", "removeEventListener", "isRedirectPath", "startsWith", "test", "navigate", "urlString", "URL"]
|
|
7
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
SimpleLayoutState
|
|
4
|
-
} from "./chunk-WMNTJ2MK.mjs";
|
|
5
|
-
|
|
6
|
-
// src/operations/state-access.ts
|
|
7
|
-
import * as Effect from "effect/Effect";
|
|
8
|
-
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
9
|
-
var layoutStateAccess = Effect.gen(function* () {
|
|
10
|
-
const registry = yield* Capability.get(Capabilities.AtomRegistry);
|
|
11
|
-
const stateAtom = yield* Capability.get(SimpleLayoutState);
|
|
12
|
-
return {
|
|
13
|
-
getState: () => registry.get(stateAtom),
|
|
14
|
-
updateState: (fn) => {
|
|
15
|
-
registry.set(stateAtom, fn(registry.get(stateAtom)));
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
export {
|
|
21
|
-
layoutStateAccess
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=chunk-27K22G6S.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/operations/state-access.ts"],
|
|
4
|
-
"sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\n\nimport { type SimpleLayoutState, SimpleLayoutState as SimpleLayoutStateCapability } from '../types';\n\nexport const layoutStateAccess = Effect.gen(function* () {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const stateAtom = yield* Capability.get(SimpleLayoutStateCapability);\n\n return {\n getState: () => registry.get(stateAtom),\n updateState: (fn: (current: SimpleLayoutState) => SimpleLayoutState) => {\n registry.set(stateAtom, fn(registry.get(stateAtom)));\n },\n };\n});\n"],
|
|
5
|
-
"mappings": ";;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AAIlC,IAAMC,oBAA2BC,WAAI,aAAA;AAC1C,QAAMC,WAAW,OAAOC,WAAWC,IAAIC,aAAaC,YAAY;AAChE,QAAMC,YAAY,OAAOJ,WAAWC,IAAII,iBAAAA;AAExC,SAAO;IACLC,UAAU,MAAMP,SAASE,IAAIG,SAAAA;IAC7BG,aAAa,CAACC,OAAAA;AACZT,eAASU,IAAIL,WAAWI,GAAGT,SAASE,IAAIG,SAAAA,CAAAA,CAAAA;IAC1C;EACF;AACF,CAAA;",
|
|
6
|
-
"names": ["Effect", "Capabilities", "Capability", "layoutStateAccess", "gen", "registry", "Capability", "get", "Capabilities", "AtomRegistry", "stateAtom", "SimpleLayoutStateCapability", "getState", "updateState", "fn", "set"]
|
|
7
|
-
}
|