@dxos/shell 0.7.5-main.9d2a38b → 0.7.5-main.b19bfc8
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/dist/bundle/{shell.mjs → shell.js} +20855 -21879
- package/dist/bundle/shell.js.map +1 -0
- package/dist/bundle/shell.umd.cjs +1045 -0
- package/dist/bundle/shell.umd.cjs.map +1 -0
- package/dist/bundle/style.css +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react.mjs +552 -802
- package/dist/lib/browser/react.mjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/react.cjs +652 -902
- package/dist/lib/node/react.cjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/react.mjs +552 -802
- package/dist/lib/node-esm/react.mjs.map +4 -4
- package/dist/types/src/components/AgentConfig.d.ts +1 -2
- package/dist/types/src/components/AgentConfig.d.ts.map +1 -1
- package/dist/types/src/components/AgentConfig.js +20 -50
- package/dist/types/src/components/AgentConfig.js.map +1 -1
- package/dist/types/src/components/AuthCode.d.ts +2 -2
- package/dist/types/src/components/AuthCode.d.ts.map +1 -1
- package/dist/types/src/components/AuthCode.js +6 -44
- package/dist/types/src/components/AuthCode.js.map +1 -1
- package/dist/types/src/components/CompoundButton/CompoundButton.d.ts +2 -2
- package/dist/types/src/components/CompoundButton/CompoundButton.d.ts.map +1 -1
- package/dist/types/src/components/CompoundButton/CompoundButton.js +9 -24
- package/dist/types/src/components/CompoundButton/CompoundButton.js.map +1 -1
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.d.ts +8 -9
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.d.ts.map +1 -1
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.js +17 -25
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.js.map +1 -1
- package/dist/types/src/components/CompoundButton/index.js +1 -17
- package/dist/types/src/components/CompoundButton/index.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceList.d.ts +1 -2
- package/dist/types/src/components/DeviceList/DeviceList.d.ts.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceList.js +10 -24
- package/dist/types/src/components/DeviceList/DeviceList.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListItem.d.ts +1 -1
- package/dist/types/src/components/DeviceList/DeviceListItem.js +18 -73
- package/dist/types/src/components/DeviceList/DeviceListItem.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListProps.js +0 -2
- package/dist/types/src/components/DeviceList/DeviceListProps.js.map +1 -1
- package/dist/types/src/components/DeviceList/index.js +2 -18
- package/dist/types/src/components/DeviceList/index.js.map +1 -1
- package/dist/types/src/components/IdentityList/IdentityListItem.d.ts +1 -1
- package/dist/types/src/components/IdentityList/IdentityListItem.js +12 -51
- package/dist/types/src/components/IdentityList/IdentityListItem.js.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.d.ts +2 -3
- package/dist/types/src/components/IdentityList/SpaceMemberList.d.ts.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.js +17 -55
- package/dist/types/src/components/IdentityList/SpaceMemberList.js.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.d.ts +3 -4
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.d.ts.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.js +10 -17
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.js.map +1 -1
- package/dist/types/src/components/IdentityList/index.js +2 -18
- package/dist/types/src/components/IdentityList/index.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationList.d.ts +2 -2
- package/dist/types/src/components/InvitationList/InvitationList.d.ts.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationList.js +10 -20
- package/dist/types/src/components/InvitationList/InvitationList.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationList.stories.d.ts +3 -4
- package/dist/types/src/components/InvitationList/InvitationList.stories.d.ts.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationList.stories.js +20 -27
- package/dist/types/src/components/InvitationList/InvitationList.stories.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListContainer.d.ts +1 -2
- package/dist/types/src/components/InvitationList/InvitationListContainer.d.ts.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListContainer.js +9 -45
- package/dist/types/src/components/InvitationList/InvitationListContainer.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListItem.d.ts +3 -3
- package/dist/types/src/components/InvitationList/InvitationListItem.d.ts.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListItem.js +32 -99
- package/dist/types/src/components/InvitationList/InvitationListItem.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListProps.js +0 -2
- package/dist/types/src/components/InvitationList/index.js +3 -19
- package/dist/types/src/components/InvitationList/index.js.map +1 -1
- package/dist/types/src/components/Panel/Action.js +15 -68
- package/dist/types/src/components/Panel/Action.js.map +1 -1
- package/dist/types/src/components/Panel/Actions.js +6 -41
- package/dist/types/src/components/Panel/Actions.js.map +1 -1
- package/dist/types/src/components/Panel/CloseButton.d.ts +1 -2
- package/dist/types/src/components/Panel/CloseButton.d.ts.map +1 -1
- package/dist/types/src/components/Panel/CloseButton.js +7 -16
- package/dist/types/src/components/Panel/CloseButton.js.map +1 -1
- package/dist/types/src/components/Panel/Emoji.d.ts +3 -3
- package/dist/types/src/components/Panel/Emoji.d.ts.map +1 -1
- package/dist/types/src/components/Panel/Emoji.js +6 -19
- package/dist/types/src/components/Panel/Emoji.js.map +1 -1
- package/dist/types/src/components/Panel/Heading.js +5 -44
- package/dist/types/src/components/Panel/Heading.js.map +1 -1
- package/dist/types/src/components/Panel/Input.d.ts +2 -2
- package/dist/types/src/components/Panel/Input.d.ts.map +1 -1
- package/dist/types/src/components/Panel/Input.js +4 -17
- package/dist/types/src/components/Panel/Input.js.map +1 -1
- package/dist/types/src/components/Panel/Label.d.ts +2 -2
- package/dist/types/src/components/Panel/Label.d.ts.map +1 -1
- package/dist/types/src/components/Panel/Label.js +4 -14
- package/dist/types/src/components/Panel/Label.js.map +1 -1
- package/dist/types/src/components/Panel/Panel.stories.d.ts +4 -5
- package/dist/types/src/components/Panel/Panel.stories.d.ts.map +1 -1
- package/dist/types/src/components/Panel/Panel.stories.js +15 -35
- package/dist/types/src/components/Panel/Panel.stories.js.map +1 -1
- package/dist/types/src/components/Panel/StepHeading.js +5 -40
- package/dist/types/src/components/Panel/StepHeading.js.map +1 -1
- package/dist/types/src/components/Panel/index.js +8 -24
- package/dist/types/src/components/Panel/index.js.map +1 -1
- package/dist/types/src/components/SpaceListItem.js +10 -49
- package/dist/types/src/components/SpaceListItem.js.map +1 -1
- package/dist/types/src/components/StorybookDialog.d.ts +2 -2
- package/dist/types/src/components/StorybookDialog.d.ts.map +1 -1
- package/dist/types/src/components/StorybookDialog.js +5 -18
- package/dist/types/src/components/StorybookDialog.js.map +1 -1
- package/dist/types/src/components/Viewport/Viewport.d.ts +2 -2
- package/dist/types/src/components/Viewport/Viewport.js +18 -55
- package/dist/types/src/components/Viewport/Viewport.js.map +1 -1
- package/dist/types/src/components/Viewport/Viewport.stories.d.ts +2 -3
- package/dist/types/src/components/Viewport/Viewport.stories.d.ts.map +1 -1
- package/dist/types/src/components/Viewport/Viewport.stories.js +12 -37
- package/dist/types/src/components/Viewport/Viewport.stories.js.map +1 -1
- package/dist/types/src/components/Viewport/index.js +1 -17
- package/dist/types/src/components/Viewport/index.js.map +1 -1
- package/dist/types/src/components/index.d.ts +0 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/components/index.js +9 -27
- package/dist/types/src/components/index.js.map +1 -1
- package/dist/types/src/composites/IdentityDialog/IdentityDialog.d.ts +1 -2
- package/dist/types/src/composites/IdentityDialog/IdentityDialog.d.ts.map +1 -1
- package/dist/types/src/composites/IdentityDialog/IdentityDialog.js +7 -22
- package/dist/types/src/composites/IdentityDialog/IdentityDialog.js.map +1 -1
- package/dist/types/src/composites/IdentityDialog/index.js +1 -17
- package/dist/types/src/composites/IdentityDialog/index.js.map +1 -1
- package/dist/types/src/composites/JoinDialog/JoinDialog.d.ts +1 -2
- package/dist/types/src/composites/JoinDialog/JoinDialog.d.ts.map +1 -1
- package/dist/types/src/composites/JoinDialog/JoinDialog.js +9 -23
- package/dist/types/src/composites/JoinDialog/JoinDialog.js.map +1 -1
- package/dist/types/src/composites/JoinDialog/index.js +1 -17
- package/dist/types/src/composites/JoinDialog/index.js.map +1 -1
- package/dist/types/src/composites/Shell/Shell.d.ts +1 -2
- package/dist/types/src/composites/Shell/Shell.d.ts.map +1 -1
- package/dist/types/src/composites/Shell/Shell.js +54 -90
- package/dist/types/src/composites/Shell/Shell.js.map +1 -1
- package/dist/types/src/composites/Shell/ShellContext.d.ts +2 -2
- package/dist/types/src/composites/Shell/ShellContext.d.ts.map +1 -1
- package/dist/types/src/composites/Shell/ShellContext.js +32 -72
- package/dist/types/src/composites/Shell/ShellContext.js.map +1 -1
- package/dist/types/src/composites/Shell/index.js +3 -19
- package/dist/types/src/composites/Shell/index.js.map +1 -1
- package/dist/types/src/composites/Shell/memory-shell-runtime.js +7 -11
- package/dist/types/src/composites/Shell/memory-shell-runtime.js.map +1 -1
- package/dist/types/src/composites/Shell/run-shell.js +18 -67
- package/dist/types/src/composites/Shell/run-shell.js.map +1 -1
- package/dist/types/src/composites/Shell/shell-runtime.js +13 -17
- package/dist/types/src/composites/Shell/shell-runtime.js.map +1 -1
- package/dist/types/src/composites/SpaceDialog/SpaceDialog.d.ts +1 -2
- package/dist/types/src/composites/SpaceDialog/SpaceDialog.d.ts.map +1 -1
- package/dist/types/src/composites/SpaceDialog/SpaceDialog.js +7 -22
- package/dist/types/src/composites/SpaceDialog/SpaceDialog.js.map +1 -1
- package/dist/types/src/composites/SpaceDialog/index.js +1 -17
- package/dist/types/src/composites/SpaceDialog/index.js.map +1 -1
- package/dist/types/src/composites/StatusDialog/StatusDialog.d.ts +1 -2
- package/dist/types/src/composites/StatusDialog/StatusDialog.d.ts.map +1 -1
- package/dist/types/src/composites/StatusDialog/StatusDialog.js +6 -20
- package/dist/types/src/composites/StatusDialog/StatusDialog.js.map +1 -1
- package/dist/types/src/composites/StatusDialog/index.js +1 -17
- package/dist/types/src/composites/StatusDialog/index.js.map +1 -1
- package/dist/types/src/composites/index.js +4 -20
- package/dist/types/src/composites/index.js.map +1 -1
- package/dist/types/src/index.js +2 -6
- package/dist/types/src/index.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts +2 -3
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js +63 -137
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.d.ts +11 -12
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.js +39 -54
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.d.ts +2 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.js +0 -2
- package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/identityMachine.js +10 -14
- package/dist/types/src/panels/IdentityPanel/identityMachine.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/index.js +2 -18
- package/dist/types/src/panels/IdentityPanel/index.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.d.ts +2 -3
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.js +16 -29
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.d.ts +1 -2
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.js +27 -72
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/index.js +2 -18
- package/dist/types/src/panels/IdentityPanel/steps/index.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.js +7 -11
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useEdgeAgentsHandlers.js +19 -23
- package/dist/types/src/panels/IdentityPanel/useEdgeAgentsHandlers.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useKubeAgentHandlers.js +19 -23
- package/dist/types/src/panels/IdentityPanel/useKubeAgentHandlers.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinHeading.js +11 -48
- package/dist/types/src/panels/JoinPanel/JoinHeading.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.d.ts +2 -3
- package/dist/types/src/panels/JoinPanel/JoinPanel.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.js +38 -100
- package/dist/types/src/panels/JoinPanel/JoinPanel.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.d.ts +15 -16
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.js +25 -45
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanelProps.js +0 -2
- package/dist/types/src/panels/JoinPanel/JoinPanelProps.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/index.js +2 -18
- package/dist/types/src/panels/JoinPanel/index.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/joinMachine.js +49 -54
- package/dist/types/src/panels/JoinPanel/joinMachine.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/AdditionMethodChooser.d.ts +1 -2
- package/dist/types/src/panels/JoinPanel/steps/AdditionMethodChooser.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/AdditionMethodChooser.js +9 -21
- package/dist/types/src/panels/JoinPanel/steps/AdditionMethodChooser.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/IdentityAdded.d.ts +1 -2
- package/dist/types/src/panels/JoinPanel/steps/IdentityAdded.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/IdentityAdded.js +14 -58
- package/dist/types/src/panels/JoinPanel/steps/IdentityAdded.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/IdentityInput.d.ts +2 -3
- package/dist/types/src/panels/JoinPanel/steps/IdentityInput.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/IdentityInput.js +20 -61
- package/dist/types/src/panels/JoinPanel/steps/IdentityInput.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationAccepted.d.ts +2 -2
- package/dist/types/src/panels/JoinPanel/steps/InvitationAccepted.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationAccepted.js +8 -47
- package/dist/types/src/panels/JoinPanel/steps/InvitationAccepted.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationAuthenticator.d.ts +1 -2
- package/dist/types/src/panels/JoinPanel/steps/InvitationAuthenticator.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationAuthenticator.js +22 -73
- package/dist/types/src/panels/JoinPanel/steps/InvitationAuthenticator.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationInput.d.ts +1 -2
- package/dist/types/src/panels/JoinPanel/steps/InvitationInput.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationInput.js +18 -59
- package/dist/types/src/panels/JoinPanel/steps/InvitationInput.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationRescuer.d.ts +1 -2
- package/dist/types/src/panels/JoinPanel/steps/InvitationRescuer.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationRescuer.js +14 -37
- package/dist/types/src/panels/JoinPanel/steps/InvitationRescuer.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/index.js +7 -23
- package/dist/types/src/panels/JoinPanel/steps/index.js.map +1 -1
- package/dist/types/src/panels/Panels.stories.d.ts +4 -4
- package/dist/types/src/panels/Panels.stories.d.ts.map +1 -1
- package/dist/types/src/panels/Panels.stories.js +13 -58
- package/dist/types/src/panels/Panels.stories.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.d.ts +2 -3
- package/dist/types/src/panels/SpacePanel/SpacePanel.d.ts.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.js +25 -72
- package/dist/types/src/panels/SpacePanel/SpacePanel.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts +18 -19
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js +96 -121
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanelProps.js +0 -2
- package/dist/types/src/panels/SpacePanel/SpacePanelProps.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/index.js +2 -18
- package/dist/types/src/panels/SpacePanel/index.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/spaceMachine.js +9 -13
- package/dist/types/src/panels/SpacePanel/spaceMachine.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.d.ts +3 -3
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.d.ts.map +1 -1
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js +33 -81
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/steps/index.js +1 -17
- package/dist/types/src/panels/SpacePanel/steps/index.js.map +1 -1
- package/dist/types/src/panels/StatusPanel/StatusPanel.d.ts +1 -2
- package/dist/types/src/panels/StatusPanel/StatusPanel.d.ts.map +1 -1
- package/dist/types/src/panels/StatusPanel/StatusPanel.js +5 -17
- package/dist/types/src/panels/StatusPanel/StatusPanel.js.map +1 -1
- package/dist/types/src/panels/StatusPanel/index.js +1 -17
- package/dist/types/src/panels/StatusPanel/index.js.map +1 -1
- package/dist/types/src/panels/index.js +4 -20
- package/dist/types/src/panels/index.js.map +1 -1
- package/dist/types/src/playwright/invitations-manager.js +11 -15
- package/dist/types/src/playwright/invitations-manager.js.map +1 -1
- package/dist/types/src/playwright/invitations.spec.js +64 -66
- package/dist/types/src/playwright/invitations.spec.js.map +1 -1
- package/dist/types/src/react.js +6 -22
- package/dist/types/src/react.js.map +1 -1
- package/dist/types/src/steps/ConfirmReset.d.ts +2 -3
- package/dist/types/src/steps/ConfirmReset.d.ts.map +1 -1
- package/dist/types/src/steps/ConfirmReset.js +23 -70
- package/dist/types/src/steps/ConfirmReset.js.map +1 -1
- package/dist/types/src/steps/InvitationManager.d.ts +1 -2
- package/dist/types/src/steps/InvitationManager.d.ts.map +1 -1
- package/dist/types/src/steps/InvitationManager.js +17 -71
- package/dist/types/src/steps/InvitationManager.js.map +1 -1
- package/dist/types/src/steps/StepProps.js +0 -2
- package/dist/types/src/steps/StepProps.js.map +1 -1
- package/dist/types/src/steps/index.js +3 -19
- package/dist/types/src/steps/index.js.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.d.ts +2 -3
- package/dist/types/src/stories/Invitations.e2e-stories.d.ts.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.js +50 -113
- package/dist/types/src/stories/Invitations.e2e-stories.js.map +1 -1
- package/dist/types/src/styles/index.js +2 -18
- package/dist/types/src/styles/index.js.map +1 -1
- package/dist/types/src/styles/invitationStatusStyles.js +31 -37
- package/dist/types/src/styles/invitationStatusStyles.js.map +1 -1
- package/dist/types/src/styles/panelStyles.js +1 -4
- package/dist/types/src/styles/panelStyles.js.map +1 -1
- package/dist/types/src/testing/fixtures/identities.d.ts.map +1 -1
- package/dist/types/src/testing/fixtures/identities.js +8 -9
- package/dist/types/src/testing/fixtures/identities.js.map +1 -1
- package/dist/types/src/testing/fixtures/index.js +2 -18
- package/dist/types/src/testing/fixtures/index.js.map +1 -1
- package/dist/types/src/testing/fixtures/invitations.js +8 -12
- package/dist/types/src/testing/fixtures/invitations.js.map +1 -1
- package/dist/types/src/testing/index.js +2 -18
- package/dist/types/src/testing/index.js.map +1 -1
- package/dist/types/src/testing/scoped-shell-manager.js +1 -5
- package/dist/types/src/testing/scoped-shell-manager.js.map +1 -1
- package/dist/types/src/testing/shell-manager.js +11 -15
- package/dist/types/src/testing/shell-manager.js.map +1 -1
- package/dist/types/src/translations/index.js +2 -38
- package/dist/types/src/translations/index.js.map +1 -1
- package/dist/types/src/translations/locales/en-US.d.ts +4 -1
- package/dist/types/src/translations/locales/en-US.d.ts.map +1 -1
- package/dist/types/src/translations/locales/en-US.js +6 -5
- package/dist/types/src/translations/locales/en-US.js.map +1 -1
- package/dist/types/src/types/FailReason.js +0 -2
- package/dist/types/src/types/FailReason.js.map +1 -1
- package/dist/types/src/types/IInvitation.js +0 -2
- package/dist/types/src/types/IInvitation.js.map +1 -1
- package/dist/types/src/types/index.js +2 -18
- package/dist/types/src/types/index.js.map +1 -1
- package/dist/types/src/util/index.js +1 -17
- package/dist/types/src/util/index.js.map +1 -1
- package/dist/types/src/util/invitationStatusValue.js +11 -14
- package/dist/types/src/util/invitationStatusValue.js.map +1 -1
- package/package.json +36 -31
- package/src/components/AgentConfig.tsx +1 -1
- package/src/components/DeviceList/DeviceList.tsx +1 -1
- package/src/components/index.ts +0 -2
- package/src/panels/IdentityPanel/IdentityPanel.stories.tsx +3 -0
- package/src/panels/IdentityPanel/IdentityPanel.tsx +48 -31
- package/src/panels/IdentityPanel/IdentityPanelProps.ts +8 -1
- package/src/panels/IdentityPanel/steps/ProfileForm.tsx +3 -7
- package/src/panels/JoinPanel/steps/IdentityInput.tsx +1 -1
- package/src/panels/SpacePanel/SpacePanel.stories.tsx +6 -1
- package/src/testing/fixtures/identities.ts +2 -0
- package/src/translations/locales/en-US.ts +7 -1
- package/dist/bundle/shell.mjs.map +0 -1
- package/dist/bundle/shell.umd.js +0 -1043
- package/dist/bundle/shell.umd.js.map +0 -1
- package/dist/lib/browser/react.css +0 -7
- package/dist/lib/browser/react.css.map +0 -7
- package/dist/lib/node/react.css +0 -7
- package/dist/lib/node/react.css.map +0 -7
- package/dist/lib/node-esm/react.css +0 -7
- package/dist/lib/node-esm/react.css.map +0 -7
- package/dist/types/src/components/EmojiPicker.d.ts +0 -19
- package/dist/types/src/components/EmojiPicker.d.ts.map +0 -1
- package/dist/types/src/components/EmojiPicker.js +0 -146
- package/dist/types/src/components/EmojiPicker.js.map +0 -1
- package/dist/types/src/components/HuePicker.d.ts +0 -18
- package/dist/types/src/components/HuePicker.d.ts.map +0 -1
- package/dist/types/src/components/HuePicker.js +0 -133
- package/dist/types/src/components/HuePicker.js.map +0 -1
- package/dist/types/src/playwright/playwright.config.d.ts +0 -3
- package/dist/types/src/playwright/playwright.config.d.ts.map +0 -1
- package/dist/types/src/playwright/playwright.config.js +0 -18
- package/dist/types/src/playwright/playwright.config.js.map +0 -1
- package/src/components/EmojiPicker.tsx +0 -187
- package/src/components/HuePicker.tsx +0 -182
- package/src/components/emoji.css +0 -25
- /package/src/playwright/{playwright.config.ts → playwright.config.cts} +0 -0
package/dist/lib/node/react.cjs
CHANGED
|
@@ -40,11 +40,7 @@ __export(react_exports, {
|
|
|
40
40
|
ConfirmResetImpl: () => ConfirmResetImpl,
|
|
41
41
|
DeviceList: () => DeviceList,
|
|
42
42
|
Emoji: () => Emoji,
|
|
43
|
-
EmojiPickerBlock: () => EmojiPickerBlock,
|
|
44
|
-
EmojiPickerToolbarButton: () => EmojiPickerToolbarButton,
|
|
45
43
|
Heading: () => Heading,
|
|
46
|
-
HuePickerBlock: () => HuePickerBlock,
|
|
47
|
-
HuePickerToolbarButton: () => HuePickerToolbarButton,
|
|
48
44
|
IdentityDialog: () => IdentityDialog,
|
|
49
45
|
IdentityListItem: () => IdentityListItem,
|
|
50
46
|
IdentityPanel: () => IdentityPanel,
|
|
@@ -105,223 +101,214 @@ var import_react_ui_theme = require("@dxos/react-ui-theme");
|
|
|
105
101
|
var import_react3 = __toESM(require("react"));
|
|
106
102
|
var import_react_ui2 = require("@dxos/react-ui");
|
|
107
103
|
var import_react_ui_theme2 = require("@dxos/react-ui-theme");
|
|
108
|
-
var
|
|
109
|
-
var
|
|
110
|
-
var
|
|
111
|
-
var import_react_use_controllable_state = require("@radix-ui/react-use-controllable-state");
|
|
112
|
-
var import_react6 = __toESM(require("react"));
|
|
104
|
+
var import_react4 = __toESM(require("react"));
|
|
105
|
+
var import_display_name = require("@dxos/display-name");
|
|
106
|
+
var import_echo = require("@dxos/react-client/echo");
|
|
113
107
|
var import_react_ui3 = require("@dxos/react-ui");
|
|
114
108
|
var import_react_ui_theme3 = require("@dxos/react-ui-theme");
|
|
115
|
-
var
|
|
116
|
-
var
|
|
117
|
-
var
|
|
109
|
+
var import_util = require("@dxos/util");
|
|
110
|
+
var import_react5 = __toESM(require("react"));
|
|
111
|
+
var import_react_client = require("@dxos/react-client");
|
|
112
|
+
var import_echo2 = require("@dxos/react-client/echo");
|
|
118
113
|
var import_react_ui4 = require("@dxos/react-ui");
|
|
119
114
|
var import_react_ui_theme4 = require("@dxos/react-ui-theme");
|
|
120
|
-
var
|
|
121
|
-
var
|
|
122
|
-
var import_echo = require("@dxos/react-client/echo");
|
|
115
|
+
var import_react6 = require("@phosphor-icons/react");
|
|
116
|
+
var import_react7 = __toESM(require("react"));
|
|
123
117
|
var import_react_ui5 = require("@dxos/react-ui");
|
|
124
118
|
var import_react_ui_theme5 = require("@dxos/react-ui-theme");
|
|
125
|
-
var
|
|
126
|
-
var
|
|
127
|
-
var
|
|
128
|
-
var
|
|
119
|
+
var import_react8 = require("@phosphor-icons/react");
|
|
120
|
+
var import_react9 = __toESM(require("react"));
|
|
121
|
+
var import_display_name2 = require("@dxos/display-name");
|
|
122
|
+
var import_halo = require("@dxos/react-client/halo");
|
|
123
|
+
var import_mesh = require("@dxos/react-client/mesh");
|
|
129
124
|
var import_react_ui6 = require("@dxos/react-ui");
|
|
130
125
|
var import_react_ui_theme6 = require("@dxos/react-ui-theme");
|
|
131
|
-
var
|
|
132
|
-
var
|
|
126
|
+
var import_util2 = require("@dxos/util");
|
|
127
|
+
var import_react10 = require("@phosphor-icons/react");
|
|
128
|
+
var import_date_fns = require("date-fns");
|
|
129
|
+
var import_react11 = __toESM(require("react"));
|
|
130
|
+
var import_invitations = require("@dxos/react-client/invitations");
|
|
133
131
|
var import_react_ui7 = require("@dxos/react-ui");
|
|
134
132
|
var import_react_ui_theme7 = require("@dxos/react-ui-theme");
|
|
135
|
-
var
|
|
133
|
+
var import_util3 = require("@dxos/util");
|
|
134
|
+
var import_react12 = __toESM(require("react"));
|
|
135
|
+
var import_react_ui_theme8 = require("@dxos/react-ui-theme");
|
|
136
|
+
var import_react13 = __toESM(require("react"));
|
|
137
|
+
var import_echo3 = require("@dxos/react-client/echo");
|
|
136
138
|
var import_react14 = __toESM(require("react"));
|
|
137
|
-
var import_display_name2 = require("@dxos/display-name");
|
|
138
|
-
var import_halo = require("@dxos/react-client/halo");
|
|
139
|
-
var import_mesh = require("@dxos/react-client/mesh");
|
|
140
139
|
var import_react_ui8 = require("@dxos/react-ui");
|
|
141
|
-
var
|
|
142
|
-
var import_util2 = require("@dxos/util");
|
|
140
|
+
var import_react_ui_theme9 = require("@dxos/react-ui-theme");
|
|
143
141
|
var import_react15 = require("@phosphor-icons/react");
|
|
144
|
-
var
|
|
142
|
+
var import_react_use_controllable_state = require("@radix-ui/react-use-controllable-state");
|
|
145
143
|
var import_react16 = __toESM(require("react"));
|
|
146
|
-
var import_invitations = require("@dxos/react-client/invitations");
|
|
147
144
|
var import_react_ui9 = require("@dxos/react-ui");
|
|
148
|
-
var import_react_ui_theme9 = require("@dxos/react-ui-theme");
|
|
149
|
-
var import_util3 = require("@dxos/util");
|
|
150
|
-
var import_react17 = __toESM(require("react"));
|
|
151
145
|
var import_react_ui_theme10 = require("@dxos/react-ui-theme");
|
|
152
|
-
var
|
|
153
|
-
var
|
|
146
|
+
var import_react17 = __toESM(require("react"));
|
|
147
|
+
var import_react_ui_theme11 = require("@dxos/react-ui-theme");
|
|
148
|
+
var import_react18 = require("@phosphor-icons/react");
|
|
154
149
|
var import_react19 = __toESM(require("react"));
|
|
155
150
|
var import_react_ui10 = require("@dxos/react-ui");
|
|
156
|
-
var import_react_ui_theme11 = require("@dxos/react-ui-theme");
|
|
157
|
-
var import_react20 = require("@phosphor-icons/react");
|
|
158
|
-
var import_react_use_controllable_state3 = require("@radix-ui/react-use-controllable-state");
|
|
159
|
-
var import_react21 = __toESM(require("react"));
|
|
160
|
-
var import_react_ui11 = require("@dxos/react-ui");
|
|
161
151
|
var import_react_ui_theme12 = require("@dxos/react-ui-theme");
|
|
162
|
-
var
|
|
152
|
+
var import_react20 = __toESM(require("react"));
|
|
163
153
|
var import_react_ui_theme13 = require("@dxos/react-ui-theme");
|
|
164
|
-
var
|
|
165
|
-
var import_react24 = __toESM(require("react"));
|
|
166
|
-
var import_react_ui12 = require("@dxos/react-ui");
|
|
154
|
+
var import_react21 = __toESM(require("react"));
|
|
167
155
|
var import_react_ui_theme14 = require("@dxos/react-ui-theme");
|
|
168
|
-
var
|
|
156
|
+
var import_react22 = __toESM(require("react"));
|
|
169
157
|
var import_react_ui_theme15 = require("@dxos/react-ui-theme");
|
|
170
|
-
var
|
|
158
|
+
var import_react23 = __toESM(require("react"));
|
|
159
|
+
var import_react_ui11 = require("@dxos/react-ui");
|
|
160
|
+
var import_react24 = __toESM(require("react"));
|
|
171
161
|
var import_react_ui_theme16 = require("@dxos/react-ui-theme");
|
|
172
|
-
var
|
|
162
|
+
var import_react_tabster = require("@fluentui/react-tabster");
|
|
163
|
+
var import_react_context = require("@radix-ui/react-context");
|
|
164
|
+
var import_react_use_controllable_state2 = require("@radix-ui/react-use-controllable-state");
|
|
165
|
+
var import_react25 = __toESM(require("react"));
|
|
166
|
+
var import_react_ui12 = require("@dxos/react-ui");
|
|
173
167
|
var import_react_ui_theme17 = require("@dxos/react-ui-theme");
|
|
174
|
-
var
|
|
168
|
+
var import_react26 = __toESM(require("react"));
|
|
175
169
|
var import_react_ui13 = require("@dxos/react-ui");
|
|
176
|
-
var import_react29 = __toESM(require("react"));
|
|
177
170
|
var import_react_ui_theme18 = require("@dxos/react-ui-theme");
|
|
178
|
-
var import_react_tabster = require("@fluentui/react-tabster");
|
|
179
|
-
var import_react_context = require("@radix-ui/react-context");
|
|
180
|
-
var import_react_use_controllable_state4 = require("@radix-ui/react-use-controllable-state");
|
|
181
|
-
var import_react30 = __toESM(require("react"));
|
|
182
|
-
var import_react_ui14 = require("@dxos/react-ui");
|
|
183
|
-
var import_react_ui_theme19 = require("@dxos/react-ui-theme");
|
|
184
|
-
var import_react31 = __toESM(require("react"));
|
|
185
|
-
var import_react_ui15 = require("@dxos/react-ui");
|
|
186
|
-
var import_react_ui_theme20 = require("@dxos/react-ui-theme");
|
|
187
171
|
var import_util4 = require("@dxos/util");
|
|
188
|
-
var
|
|
189
|
-
var
|
|
190
|
-
var
|
|
191
|
-
var
|
|
172
|
+
var import_react27 = __toESM(require("react"));
|
|
173
|
+
var import_react_ui14 = require("@dxos/react-ui");
|
|
174
|
+
var import_react28 = require("@phosphor-icons/react");
|
|
175
|
+
var import_react29 = __toESM(require("react"));
|
|
176
|
+
var import_async = require("@dxos/async");
|
|
192
177
|
var import_display_name3 = require("@dxos/display-name");
|
|
193
178
|
var import_log = require("@dxos/log");
|
|
194
179
|
var import_react_client2 = require("@dxos/react-client");
|
|
195
180
|
var import_halo2 = require("@dxos/react-client/halo");
|
|
196
181
|
var import_invitations2 = require("@dxos/react-client/invitations");
|
|
197
182
|
var import_mesh2 = require("@dxos/react-client/mesh");
|
|
198
|
-
var
|
|
199
|
-
var
|
|
183
|
+
var import_react_ui15 = require("@dxos/react-ui");
|
|
184
|
+
var import_react_ui_pickers = require("@dxos/react-ui-pickers");
|
|
185
|
+
var import_react_ui_theme19 = require("@dxos/react-ui-theme");
|
|
200
186
|
var import_util5 = require("@dxos/util");
|
|
201
|
-
var
|
|
187
|
+
var import_react30 = require("@xstate/react");
|
|
202
188
|
var import_xstate = require("xstate");
|
|
203
189
|
var import_log2 = require("@dxos/log");
|
|
204
|
-
var
|
|
190
|
+
var import_react31 = __toESM(require("react"));
|
|
205
191
|
var import_log3 = require("@dxos/log");
|
|
206
192
|
var import_react_client3 = require("@dxos/react-client");
|
|
207
193
|
var import_halo3 = require("@dxos/react-client/halo");
|
|
208
194
|
var import_invitations3 = require("@dxos/react-client/invitations");
|
|
209
|
-
var
|
|
195
|
+
var import_react32 = __toESM(require("react"));
|
|
210
196
|
var import_log4 = require("@dxos/log");
|
|
211
|
-
var
|
|
197
|
+
var import_react_ui16 = require("@dxos/react-ui");
|
|
198
|
+
var import_react_ui_pickers2 = require("@dxos/react-ui-pickers");
|
|
212
199
|
var import_util6 = require("@dxos/util");
|
|
213
200
|
var import_react_client4 = require("@dxos/react-client");
|
|
214
|
-
var
|
|
201
|
+
var import_react33 = require("react");
|
|
215
202
|
var import_invariant = require("@dxos/invariant");
|
|
216
203
|
var import_log5 = require("@dxos/log");
|
|
217
204
|
var import_services = require("@dxos/protocols/proto/dxos/client/services");
|
|
218
205
|
var import_metadata = require("@dxos/protocols/proto/dxos/echo/metadata");
|
|
219
206
|
var import_react_client5 = require("@dxos/react-client");
|
|
220
|
-
var
|
|
207
|
+
var import_react34 = require("react");
|
|
221
208
|
var import_invariant2 = require("@dxos/invariant");
|
|
222
209
|
var import_log6 = require("@dxos/log");
|
|
223
210
|
var import_react_client6 = require("@dxos/react-client");
|
|
224
211
|
var import_invitations4 = require("@dxos/react-client/invitations");
|
|
225
|
-
var
|
|
226
|
-
var
|
|
212
|
+
var import_react35 = require("@phosphor-icons/react");
|
|
213
|
+
var import_react36 = __toESM(require("react"));
|
|
227
214
|
var import_react_qr_rounded = require("react-qr-rounded");
|
|
228
|
-
var
|
|
229
|
-
var
|
|
215
|
+
var import_react_ui17 = require("@dxos/react-ui");
|
|
216
|
+
var import_react_ui_theme20 = require("@dxos/react-ui-theme");
|
|
230
217
|
var import_util7 = require("@dxos/util");
|
|
231
218
|
var import_invitations5 = require("@dxos/react-client/invitations");
|
|
232
|
-
var
|
|
233
|
-
var
|
|
219
|
+
var import_react37 = require("@phosphor-icons/react");
|
|
220
|
+
var import_react38 = __toESM(require("react"));
|
|
234
221
|
var import_log7 = require("@dxos/log");
|
|
235
|
-
var
|
|
236
|
-
var
|
|
237
|
-
var
|
|
222
|
+
var import_react_ui18 = require("@dxos/react-ui");
|
|
223
|
+
var import_react_ui_theme21 = require("@dxos/react-ui-theme");
|
|
224
|
+
var import_react39 = __toESM(require("react"));
|
|
238
225
|
var import_log8 = require("@dxos/log");
|
|
239
226
|
var import_react_client7 = require("@dxos/react-client");
|
|
240
227
|
var import_halo4 = require("@dxos/react-client/halo");
|
|
241
|
-
var
|
|
242
|
-
var
|
|
243
|
-
var
|
|
244
|
-
var
|
|
245
|
-
var
|
|
246
|
-
var
|
|
247
|
-
var
|
|
228
|
+
var import_react_ui19 = require("@dxos/react-ui");
|
|
229
|
+
var import_react40 = require("@phosphor-icons/react");
|
|
230
|
+
var import_react41 = __toESM(require("react"));
|
|
231
|
+
var import_react_ui20 = require("@dxos/react-ui");
|
|
232
|
+
var import_react_ui_theme22 = require("@dxos/react-ui-theme");
|
|
233
|
+
var import_react42 = require("@xstate/react");
|
|
234
|
+
var import_react43 = require("react");
|
|
248
235
|
var import_xstate2 = require("xstate");
|
|
249
236
|
var import_log9 = require("@dxos/log");
|
|
250
237
|
var import_react_client8 = require("@dxos/react-client");
|
|
251
238
|
var import_invitations6 = require("@dxos/react-client/invitations");
|
|
252
|
-
var
|
|
253
|
-
var
|
|
254
|
-
var
|
|
255
|
-
var
|
|
256
|
-
var
|
|
239
|
+
var import_react44 = require("@phosphor-icons/react");
|
|
240
|
+
var import_react45 = __toESM(require("react"));
|
|
241
|
+
var import_react_ui21 = require("@dxos/react-ui");
|
|
242
|
+
var import_react_ui_theme23 = require("@dxos/react-ui-theme");
|
|
243
|
+
var import_react46 = __toESM(require("react"));
|
|
257
244
|
var import_display_name4 = require("@dxos/display-name");
|
|
258
|
-
var
|
|
259
|
-
var
|
|
245
|
+
var import_react_ui22 = require("@dxos/react-ui");
|
|
246
|
+
var import_react_ui_theme24 = require("@dxos/react-ui-theme");
|
|
260
247
|
var import_util8 = require("@dxos/util");
|
|
261
|
-
var
|
|
248
|
+
var import_react47 = __toESM(require("react"));
|
|
262
249
|
var import_log10 = require("@dxos/log");
|
|
263
250
|
var import_react_client9 = require("@dxos/react-client");
|
|
251
|
+
var import_react_ui23 = require("@dxos/react-ui");
|
|
252
|
+
var import_react48 = __toESM(require("react"));
|
|
253
|
+
var import_react_ui24 = require("@dxos/react-ui");
|
|
254
|
+
var import_react49 = __toESM(require("react"));
|
|
255
|
+
var import_log11 = require("@dxos/log");
|
|
264
256
|
var import_react_ui25 = require("@dxos/react-ui");
|
|
265
|
-
var
|
|
257
|
+
var import_react50 = __toESM(require("react"));
|
|
266
258
|
var import_react_ui26 = require("@dxos/react-ui");
|
|
267
|
-
var
|
|
268
|
-
var
|
|
269
|
-
var import_react_ui27 = require("@dxos/react-ui");
|
|
270
|
-
var import_react55 = __toESM(require("react"));
|
|
271
|
-
var import_react_ui28 = require("@dxos/react-ui");
|
|
272
|
-
var import_react_ui_theme27 = require("@dxos/react-ui-theme");
|
|
273
|
-
var import_react56 = __toESM(require("react"));
|
|
259
|
+
var import_react_ui_theme25 = require("@dxos/react-ui-theme");
|
|
260
|
+
var import_react51 = __toESM(require("react"));
|
|
274
261
|
var import_invitations7 = require("@dxos/react-client/invitations");
|
|
275
|
-
var
|
|
276
|
-
var
|
|
262
|
+
var import_react_ui27 = require("@dxos/react-ui");
|
|
263
|
+
var import_react_ui_theme26 = require("@dxos/react-ui-theme");
|
|
277
264
|
var import_util9 = require("@dxos/util");
|
|
278
265
|
var import_invitations8 = require("@dxos/react-client/invitations");
|
|
279
|
-
var
|
|
280
|
-
var
|
|
266
|
+
var import_react52 = require("@phosphor-icons/react");
|
|
267
|
+
var import_react53 = __toESM(require("react"));
|
|
281
268
|
var import_log12 = require("@dxos/log");
|
|
282
269
|
var import_invitations9 = require("@dxos/react-client/invitations");
|
|
283
|
-
var
|
|
284
|
-
var
|
|
270
|
+
var import_react_ui28 = require("@dxos/react-ui");
|
|
271
|
+
var import_react54 = require("@xstate/react");
|
|
285
272
|
var import_xstate3 = require("xstate");
|
|
286
273
|
var import_log13 = require("@dxos/log");
|
|
287
|
-
var
|
|
288
|
-
var
|
|
274
|
+
var import_react55 = require("@phosphor-icons/react");
|
|
275
|
+
var import_react56 = __toESM(require("react"));
|
|
289
276
|
var import_log14 = require("@dxos/log");
|
|
290
277
|
var import_react_client10 = require("@dxos/react-client");
|
|
291
278
|
var import_echo4 = require("@dxos/react-client/echo");
|
|
292
279
|
var import_invitations10 = require("@dxos/react-client/invitations");
|
|
280
|
+
var import_react_ui29 = require("@dxos/react-ui");
|
|
281
|
+
var import_react_ui_theme27 = require("@dxos/react-ui-theme");
|
|
282
|
+
var import_react57 = __toESM(require("react"));
|
|
283
|
+
var import_react_ui30 = require("@dxos/react-ui");
|
|
284
|
+
var import_react58 = __toESM(require("react"));
|
|
293
285
|
var import_react_ui31 = require("@dxos/react-ui");
|
|
294
|
-
var
|
|
295
|
-
var import_react62 = __toESM(require("react"));
|
|
296
|
-
var import_react_ui32 = require("@dxos/react-ui");
|
|
297
|
-
var import_react63 = __toESM(require("react"));
|
|
298
|
-
var import_react_ui33 = require("@dxos/react-ui");
|
|
299
|
-
var import_react64 = __toESM(require("react"));
|
|
286
|
+
var import_react59 = __toESM(require("react"));
|
|
300
287
|
var import_client = require("react-dom/client");
|
|
301
288
|
var import_client_protocol = require("@dxos/client-protocol");
|
|
302
289
|
var import_react_client11 = require("@dxos/react-client");
|
|
303
|
-
var
|
|
304
|
-
var
|
|
290
|
+
var import_react_ui32 = require("@dxos/react-ui");
|
|
291
|
+
var import_react_ui_theme28 = require("@dxos/react-ui-theme");
|
|
305
292
|
var import_rpc_tunnel = require("@dxos/rpc-tunnel");
|
|
306
|
-
var
|
|
293
|
+
var import_react60 = __toESM(require("react"));
|
|
307
294
|
var import_log15 = require("@dxos/log");
|
|
308
295
|
var import_react_client12 = require("@dxos/react-client");
|
|
309
296
|
var import_react_client13 = require("@dxos/react-client");
|
|
310
297
|
var import_echo5 = require("@dxos/react-client/echo");
|
|
311
|
-
var
|
|
312
|
-
var
|
|
313
|
-
var
|
|
314
|
-
var
|
|
315
|
-
var
|
|
298
|
+
var import_react61 = __toESM(require("react"));
|
|
299
|
+
var import_react_ui33 = require("@dxos/react-ui");
|
|
300
|
+
var import_react62 = __toESM(require("react"));
|
|
301
|
+
var import_react_ui34 = require("@dxos/react-ui");
|
|
302
|
+
var import_async2 = require("@dxos/async");
|
|
316
303
|
var import_client_protocol2 = require("@dxos/client-protocol");
|
|
317
304
|
var import_invariant3 = require("@dxos/invariant");
|
|
318
305
|
var import_iframe = require("@dxos/protocols/proto/dxos/iframe");
|
|
319
306
|
var import_rpc = require("@dxos/rpc");
|
|
320
|
-
var
|
|
307
|
+
var import_react63 = __toESM(require("react"));
|
|
321
308
|
var import_react_client14 = require("@dxos/react-client");
|
|
322
309
|
var import_halo5 = require("@dxos/react-client/halo");
|
|
323
|
-
var
|
|
324
|
-
var
|
|
310
|
+
var import_react_ui_theme29 = require("@dxos/react-ui-theme");
|
|
311
|
+
var import_async3 = require("@dxos/async");
|
|
325
312
|
var import_react_client15 = require("@dxos/react-client");
|
|
326
313
|
var AgentConfig = ({ agentStatus, validationMessage, onAgentDestroy, onAgentCreate, onAgentRefresh }) => {
|
|
327
314
|
const { t } = (0, import_react_ui.useTranslation)("os");
|
|
@@ -371,7 +358,7 @@ var AgentConfig = ({ agentStatus, validationMessage, onAgentDestroy, onAgentCrea
|
|
|
371
358
|
className: (0, import_react_ui_theme.mx)(import_react_ui_theme.descriptionText, "mlb-2")
|
|
372
359
|
}, t("agent requested description"))) : /* @__PURE__ */ import_react2.default.createElement(import_react2.default.Fragment, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui.Button, {
|
|
373
360
|
variant: "ghost",
|
|
374
|
-
classNames: "mlb-2 is-full justify-start gap-2
|
|
361
|
+
classNames: "mlb-2 is-full justify-start gap-2 pis-0 pie-3",
|
|
375
362
|
"data-testid": agentStatus === "creatable" ? "devices-panel.create-agent" : "devices-panel.agent-error",
|
|
376
363
|
onClick: agentStatus === "creatable" ? onAgentCreate : onAgentRefresh,
|
|
377
364
|
"aria-describedby": "devices-panel.create-agent.description"
|
|
@@ -445,304 +432,58 @@ var CompoundButton = ({ children, description, before, after, variant = "default
|
|
|
445
432
|
className: "grow-0"
|
|
446
433
|
}, after));
|
|
447
434
|
};
|
|
448
|
-
var
|
|
449
|
-
const { t } = (0, import_react_ui3.useTranslation)("os");
|
|
450
|
-
const { themeMode } = (0, import_react_ui3.useThemeContext)();
|
|
451
|
-
const [_emojiValue, setEmojiValue] = (0, import_react_use_controllable_state.useControllableState)({
|
|
452
|
-
prop: emoji,
|
|
453
|
-
onChange: onChangeEmoji,
|
|
454
|
-
defaultProp: defaultEmoji
|
|
455
|
-
});
|
|
456
|
-
const [emojiPickerOpen, setEmojiPickerOpen] = (0, import_react6.useState)(false);
|
|
457
|
-
const suppressNextTooltip = (0, import_react6.useRef)(false);
|
|
458
|
-
const [triggerTooltipOpen, setTriggerTooltipOpen] = (0, import_react6.useState)(false);
|
|
459
|
-
return /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Root, {
|
|
460
|
-
open: triggerTooltipOpen,
|
|
461
|
-
onOpenChange: (nextOpen) => {
|
|
462
|
-
if (suppressNextTooltip.current) {
|
|
463
|
-
setTriggerTooltipOpen(false);
|
|
464
|
-
suppressNextTooltip.current = false;
|
|
465
|
-
} else {
|
|
466
|
-
setTriggerTooltipOpen(nextOpen);
|
|
467
|
-
}
|
|
468
|
-
}
|
|
469
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Root, {
|
|
470
|
-
open: emojiPickerOpen,
|
|
471
|
-
onOpenChange: (nextOpen) => {
|
|
472
|
-
setEmojiPickerOpen(nextOpen);
|
|
473
|
-
suppressNextTooltip.current = true;
|
|
474
|
-
}
|
|
475
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Trigger, {
|
|
476
|
-
asChild: true
|
|
477
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Trigger, {
|
|
478
|
-
asChild: true
|
|
479
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Toolbar.Button, {
|
|
480
|
-
classNames: [
|
|
481
|
-
"gap-2 text-2xl plb-1",
|
|
482
|
-
classNames
|
|
483
|
-
],
|
|
484
|
-
disabled
|
|
485
|
-
}, /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
486
|
-
className: "sr-only"
|
|
487
|
-
}, t("select emoji label")), /* @__PURE__ */ import_react6.default.createElement(import_react5.UserCircle, {
|
|
488
|
-
className: (0, import_react_ui_theme3.getSize)(5)
|
|
489
|
-
})))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Portal, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Content, {
|
|
490
|
-
side: "bottom"
|
|
491
|
-
}, t("select emoji label"), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Arrow, null))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Content, {
|
|
492
|
-
side: "bottom",
|
|
493
|
-
onKeyDownCapture: (event) => {
|
|
494
|
-
if (event.key === "Escape") {
|
|
495
|
-
event.stopPropagation();
|
|
496
|
-
setEmojiPickerOpen(false);
|
|
497
|
-
suppressNextTooltip.current = true;
|
|
498
|
-
}
|
|
499
|
-
}
|
|
500
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react4.default, {
|
|
501
|
-
data: import_data.default,
|
|
502
|
-
onEmojiSelect: ({ native }) => {
|
|
503
|
-
if (native) {
|
|
504
|
-
setEmojiValue(native);
|
|
505
|
-
setEmojiPickerOpen(false);
|
|
506
|
-
}
|
|
507
|
-
},
|
|
508
|
-
autoFocus: true,
|
|
509
|
-
maxFrequentRows: 0,
|
|
510
|
-
noCountryFlags: true,
|
|
511
|
-
theme: themeMode
|
|
512
|
-
}), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Arrow, null))));
|
|
513
|
-
};
|
|
514
|
-
var EmojiPickerBlock = ({ disabled, defaultEmoji, emoji, onChangeEmoji, onClickClear }) => {
|
|
515
|
-
const { t } = (0, import_react_ui3.useTranslation)("os");
|
|
516
|
-
const [isMd] = (0, import_react_ui3.useMediaQuery)("md", {
|
|
517
|
-
ssr: false
|
|
518
|
-
});
|
|
519
|
-
const [emojiValue, setEmojiValue] = (0, import_react_use_controllable_state.useControllableState)({
|
|
520
|
-
prop: emoji,
|
|
521
|
-
onChange: onChangeEmoji,
|
|
522
|
-
defaultProp: defaultEmoji
|
|
523
|
-
});
|
|
524
|
-
const [emojiPickerOpen, setEmojiPickerOpen] = (0, import_react6.useState)(false);
|
|
525
|
-
return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Root, {
|
|
526
|
-
open: emojiPickerOpen,
|
|
527
|
-
onOpenChange: setEmojiPickerOpen
|
|
528
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Trigger, {
|
|
529
|
-
asChild: true
|
|
530
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Button, {
|
|
531
|
-
variant: "ghost",
|
|
532
|
-
classNames: "gap-2 text-2xl plb-1",
|
|
533
|
-
disabled
|
|
534
|
-
}, /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
535
|
-
className: "sr-only"
|
|
536
|
-
}, t("select emoji label")), /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
537
|
-
className: "grow pis-14"
|
|
538
|
-
}, emojiValue), /* @__PURE__ */ import_react6.default.createElement(import_react5.CaretDown, {
|
|
539
|
-
className: (0, import_react_ui_theme3.getSize)(4)
|
|
540
|
-
}))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Content, {
|
|
541
|
-
side: "right",
|
|
542
|
-
sideOffset: isMd ? 0 : -310,
|
|
543
|
-
onKeyDownCapture: (event) => {
|
|
544
|
-
if (event.key === "Escape") {
|
|
545
|
-
event.stopPropagation();
|
|
546
|
-
setEmojiPickerOpen(false);
|
|
547
|
-
}
|
|
548
|
-
}
|
|
549
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react4.default, {
|
|
550
|
-
data: import_data.default,
|
|
551
|
-
onEmojiSelect: ({ native }) => {
|
|
552
|
-
if (native) {
|
|
553
|
-
setEmojiValue(native);
|
|
554
|
-
setEmojiPickerOpen(false);
|
|
555
|
-
}
|
|
556
|
-
},
|
|
557
|
-
autoFocus: true,
|
|
558
|
-
maxFrequentRows: 0,
|
|
559
|
-
noCountryFlags: true
|
|
560
|
-
}), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Arrow, null))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Root, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Trigger, {
|
|
561
|
-
asChild: true
|
|
562
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Button, {
|
|
563
|
-
variant: "ghost",
|
|
564
|
-
onClick: onClickClear,
|
|
565
|
-
disabled
|
|
566
|
-
}, /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
567
|
-
className: "sr-only"
|
|
568
|
-
}, t("clear label")), /* @__PURE__ */ import_react6.default.createElement(import_react5.ArrowCounterClockwise, null))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Portal, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Content, {
|
|
569
|
-
side: "right"
|
|
570
|
-
}, t("clear label"), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Arrow, null)))));
|
|
571
|
-
};
|
|
572
|
-
var HuePreview = ({ hue }) => {
|
|
573
|
-
const { tx } = (0, import_react_ui4.useThemeContext)();
|
|
574
|
-
const size = 20;
|
|
575
|
-
return /* @__PURE__ */ import_react8.default.createElement("svg", {
|
|
576
|
-
width: size,
|
|
577
|
-
height: size,
|
|
578
|
-
viewBox: `0 0 ${size} ${size}`
|
|
579
|
-
}, /* @__PURE__ */ import_react8.default.createElement("rect", {
|
|
580
|
-
x: 0,
|
|
581
|
-
y: 0,
|
|
582
|
-
width: size,
|
|
583
|
-
height: size,
|
|
584
|
-
className: tx("hue.fill", "select--hue__preview", {
|
|
585
|
-
hue
|
|
586
|
-
})
|
|
587
|
-
}));
|
|
588
|
-
};
|
|
589
|
-
var hueTokens = Object.keys(import_react_ui_theme4.hueTokenThemes).slice(0, 16);
|
|
590
|
-
var HuePickerToolbarButton = ({ disabled, hue, onChangeHue, classNames, defaultHue }) => {
|
|
591
|
-
const { t } = (0, import_react_ui4.useTranslation)("os");
|
|
592
|
-
const [hueValue, setHueValue] = (0, import_react_use_controllable_state2.useControllableState)({
|
|
593
|
-
prop: hue,
|
|
594
|
-
onChange: onChangeHue,
|
|
595
|
-
defaultProp: defaultHue
|
|
596
|
-
});
|
|
597
|
-
const [huePickerOpen, setHuePickerOpen] = (0, import_react8.useState)(false);
|
|
598
|
-
const suppressNextTooltip = (0, import_react8.useRef)(false);
|
|
599
|
-
const [triggerTooltipOpen, setTriggerTooltipOpen] = (0, import_react8.useState)(false);
|
|
600
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Root, {
|
|
601
|
-
open: triggerTooltipOpen,
|
|
602
|
-
onOpenChange: (nextOpen) => {
|
|
603
|
-
if (suppressNextTooltip.current) {
|
|
604
|
-
setTriggerTooltipOpen(false);
|
|
605
|
-
suppressNextTooltip.current = false;
|
|
606
|
-
} else {
|
|
607
|
-
setTriggerTooltipOpen(nextOpen);
|
|
608
|
-
}
|
|
609
|
-
}
|
|
610
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Root, {
|
|
611
|
-
modal: false,
|
|
612
|
-
open: huePickerOpen,
|
|
613
|
-
onOpenChange: (nextOpen) => {
|
|
614
|
-
setHuePickerOpen(nextOpen);
|
|
615
|
-
suppressNextTooltip.current = true;
|
|
616
|
-
}
|
|
617
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Trigger, {
|
|
618
|
-
asChild: true
|
|
619
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Trigger, {
|
|
620
|
-
asChild: true
|
|
621
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Toolbar.Button, {
|
|
622
|
-
classNames: (0, import_react_ui_theme4.mx)("gap-2 plb-1", classNames),
|
|
623
|
-
disabled
|
|
624
|
-
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
625
|
-
className: "sr-only"
|
|
626
|
-
}, t("select hue label")), /* @__PURE__ */ import_react8.default.createElement(import_react7.Palette, {
|
|
627
|
-
className: (0, import_react_ui_theme4.getSize)(5)
|
|
628
|
-
})))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Portal, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Content, {
|
|
629
|
-
side: "bottom"
|
|
630
|
-
}, t("select hue label"), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Arrow, null))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Content, {
|
|
631
|
-
side: "bottom",
|
|
632
|
-
classNames: "!w-40"
|
|
633
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Viewport, {
|
|
634
|
-
classNames: "grid grid-cols-4"
|
|
635
|
-
}, hueTokens.map((hue2) => {
|
|
636
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.CheckboxItem, {
|
|
637
|
-
key: hue2,
|
|
638
|
-
checked: hue2 === hueValue,
|
|
639
|
-
onCheckedChange: () => setHueValue(hue2),
|
|
640
|
-
classNames: "px-0 py-2 items-center justify-center"
|
|
641
|
-
}, /* @__PURE__ */ import_react8.default.createElement(HuePreview, {
|
|
642
|
-
hue: hue2
|
|
643
|
-
}));
|
|
644
|
-
})))));
|
|
645
|
-
};
|
|
646
|
-
var HuePickerBlock = ({ disabled, hue, onChangeHue, defaultHue, onClickClear }) => {
|
|
647
|
-
const { t } = (0, import_react_ui4.useTranslation)("os");
|
|
648
|
-
const [hueValue, setHueValue] = (0, import_react_use_controllable_state2.useControllableState)({
|
|
649
|
-
prop: hue,
|
|
650
|
-
onChange: onChangeHue,
|
|
651
|
-
defaultProp: defaultHue
|
|
652
|
-
});
|
|
653
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Root, {
|
|
654
|
-
modal: false
|
|
655
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Trigger, {
|
|
656
|
-
asChild: true
|
|
657
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Button, {
|
|
658
|
-
variant: "ghost",
|
|
659
|
-
classNames: "gap-2 plb-1",
|
|
660
|
-
disabled
|
|
661
|
-
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
662
|
-
className: "sr-only"
|
|
663
|
-
}, t("select hue label")), /* @__PURE__ */ import_react8.default.createElement("div", {
|
|
664
|
-
role: "none",
|
|
665
|
-
className: "pis-14 grow flex items-center justify-center gap-2"
|
|
666
|
-
}, /* @__PURE__ */ import_react8.default.createElement(HuePreview, {
|
|
667
|
-
hue: hueValue
|
|
668
|
-
}), /* @__PURE__ */ import_react8.default.createElement("span", null, t(`${hueValue} label`))), /* @__PURE__ */ import_react8.default.createElement(import_react7.CaretDown, {
|
|
669
|
-
className: (0, import_react_ui_theme4.getSize)(4)
|
|
670
|
-
}))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Content, {
|
|
671
|
-
side: "right"
|
|
672
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Viewport, null, Object.keys(import_react_ui_theme4.hueTokenThemes).map((hue2) => {
|
|
673
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.CheckboxItem, {
|
|
674
|
-
key: hue2,
|
|
675
|
-
checked: hue2 === hueValue,
|
|
676
|
-
onCheckedChange: () => setHueValue(hue2)
|
|
677
|
-
}, /* @__PURE__ */ import_react8.default.createElement(HuePreview, {
|
|
678
|
-
hue: hue2
|
|
679
|
-
}), /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
680
|
-
className: "grow"
|
|
681
|
-
}, t(`${hue2} label`)), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.ItemIndicator, null, /* @__PURE__ */ import_react8.default.createElement(import_react7.Check, null)));
|
|
682
|
-
})), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Arrow, null))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Root, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Trigger, {
|
|
683
|
-
asChild: true
|
|
684
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Button, {
|
|
685
|
-
variant: "ghost",
|
|
686
|
-
onClick: onClickClear,
|
|
687
|
-
disabled
|
|
688
|
-
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
689
|
-
className: "sr-only"
|
|
690
|
-
}, t("clear label")), /* @__PURE__ */ import_react8.default.createElement(import_react7.ArrowCounterClockwise, null))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Portal, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Content, {
|
|
691
|
-
side: "right"
|
|
692
|
-
}, t("clear label"), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Arrow, null)))));
|
|
693
|
-
};
|
|
694
|
-
var IdentityListItem = /* @__PURE__ */ (0, import_react9.forwardRef)(({ identity, presence, onClick, classNames, ...props }, forwardedRef) => {
|
|
435
|
+
var IdentityListItem = /* @__PURE__ */ (0, import_react4.forwardRef)(({ identity, presence, onClick, classNames, ...props }, forwardedRef) => {
|
|
695
436
|
const fallbackValue = (0, import_util.keyToFallback)(identity.identityKey);
|
|
696
|
-
const labelId = (0,
|
|
437
|
+
const labelId = (0, import_react_ui3.useId)("identityListItem__label");
|
|
697
438
|
const displayName = identity.profile?.displayName ?? (0, import_display_name.generateName)(identity.identityKey.toHex());
|
|
698
|
-
return /* @__PURE__ */
|
|
439
|
+
return /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.ListItem.Root, {
|
|
699
440
|
...props,
|
|
700
|
-
classNames: (0,
|
|
441
|
+
classNames: (0, import_react_ui_theme3.mx)("flex gap-2 pis-3 pie-1 items-center", onClick && "cursor-pointer", classNames),
|
|
701
442
|
onClick: () => onClick?.(),
|
|
702
443
|
"data-testid": "identity-list-item",
|
|
703
444
|
labelId,
|
|
704
445
|
ref: forwardedRef
|
|
705
|
-
}, /* @__PURE__ */
|
|
446
|
+
}, /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Root, {
|
|
706
447
|
status: presence === import_echo.SpaceMember.PresenceState.ONLINE ? "active" : "inactive",
|
|
707
448
|
labelId,
|
|
708
449
|
hue: identity.profile?.data?.hue || fallbackValue.hue
|
|
709
|
-
}, /* @__PURE__ */
|
|
450
|
+
}, /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Frame, {
|
|
710
451
|
classNames: "place-self-center"
|
|
711
|
-
}, /* @__PURE__ */
|
|
452
|
+
}, /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Fallback, {
|
|
712
453
|
text: identity.profile?.data?.emoji || fallbackValue.emoji
|
|
713
|
-
})), /* @__PURE__ */
|
|
454
|
+
})), /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Label, {
|
|
714
455
|
classNames: "text-sm truncate pli-2"
|
|
715
456
|
}, displayName)));
|
|
716
457
|
});
|
|
717
458
|
var SpaceMemberList = ({ spaceKey, includeSelf, onSelect }) => {
|
|
718
459
|
const client = (0, import_react_client.useClient)();
|
|
719
460
|
const allUnsortedMembers = (0, import_echo2.useMembers)(spaceKey);
|
|
720
|
-
const members = (0,
|
|
461
|
+
const members = (0, import_react5.useMemo)(() => includeSelf ? allUnsortedMembers.sort((member) => member.identity.identityKey.equals(client.halo.identity.get().identityKey) ? -1 : 1) : allUnsortedMembers.filter((member) => !member.identity.identityKey.equals(client.halo.identity.get().identityKey)), [
|
|
721
462
|
allUnsortedMembers
|
|
722
463
|
]);
|
|
723
|
-
return /* @__PURE__ */
|
|
464
|
+
return /* @__PURE__ */ import_react5.default.createElement(SpaceMemberListImpl, {
|
|
724
465
|
members,
|
|
725
466
|
onSelect
|
|
726
467
|
});
|
|
727
468
|
};
|
|
728
469
|
var SpaceMemberListImpl = ({ members, onSelect }) => {
|
|
729
|
-
const { t } = (0,
|
|
470
|
+
const { t } = (0, import_react_ui4.useTranslation)("os");
|
|
730
471
|
const visibleMembers = members.filter((member) => member.identity);
|
|
731
|
-
return visibleMembers.length > 0 ? /* @__PURE__ */
|
|
472
|
+
return visibleMembers.length > 0 ? /* @__PURE__ */ import_react5.default.createElement(import_react_ui4.List, {
|
|
732
473
|
classNames: "flex flex-col gap-2",
|
|
733
474
|
"data-testid": "space-members-list"
|
|
734
475
|
}, visibleMembers.map((member) => {
|
|
735
|
-
return /* @__PURE__ */
|
|
476
|
+
return /* @__PURE__ */ import_react5.default.createElement(IdentityListItem, {
|
|
736
477
|
key: member.identity.identityKey.toHex(),
|
|
737
478
|
identity: member.identity,
|
|
738
479
|
presence: member.presence,
|
|
739
480
|
onClick: onSelect && (() => onSelect(member))
|
|
740
481
|
});
|
|
741
|
-
})) : /* @__PURE__ */
|
|
482
|
+
})) : /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
742
483
|
role: "none",
|
|
743
484
|
className: "grow flex items-center p-2"
|
|
744
|
-
}, /* @__PURE__ */
|
|
745
|
-
className: (0,
|
|
485
|
+
}, /* @__PURE__ */ import_react5.default.createElement("p", {
|
|
486
|
+
className: (0, import_react_ui_theme4.mx)(import_react_ui_theme4.descriptionText, "text-center is-full mlb-2")
|
|
746
487
|
}, t("empty space members message")));
|
|
747
488
|
};
|
|
748
489
|
var iconProps = {
|
|
@@ -752,16 +493,16 @@ var iconProps = {
|
|
|
752
493
|
x: 8,
|
|
753
494
|
y: 8
|
|
754
495
|
};
|
|
755
|
-
var DeviceListItem = /* @__PURE__ */ (0,
|
|
756
|
-
const { t } = (0,
|
|
496
|
+
var DeviceListItem = /* @__PURE__ */ (0, import_react9.forwardRef)(({ device, onClickAdd, onClickEdit, onClickReset, onClickRecover, onClickJoinExisting, classNames, connectionState, onAgentDestroy: _, ...props }, forwardedRef) => {
|
|
497
|
+
const { t } = (0, import_react_ui6.useTranslation)("os");
|
|
757
498
|
const fallbackValue = (0, import_util2.keyToFallback)(device.deviceKey);
|
|
758
|
-
const labelId = (0,
|
|
499
|
+
const labelId = (0, import_react_ui6.useId)("identityListItem__label");
|
|
759
500
|
const displayName = device.profile ? t("device name placeholder", {
|
|
760
501
|
os: device.profile.os,
|
|
761
502
|
platform: device.profile.platform
|
|
762
503
|
}) : (0, import_display_name2.generateName)(device.deviceKey.toHex());
|
|
763
504
|
const isCurrent = device.kind === import_halo.DeviceKind.CURRENT;
|
|
764
|
-
return /* @__PURE__ */
|
|
505
|
+
return /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.ListItem.Root, {
|
|
765
506
|
...props,
|
|
766
507
|
classNames: [
|
|
767
508
|
"flex gap-2 items-center mlb-2",
|
|
@@ -770,58 +511,58 @@ var DeviceListItem = /* @__PURE__ */ (0, import_react14.forwardRef)(({ device, o
|
|
|
770
511
|
"data-testid": `device-list-item${isCurrent ? "-current" : ""}`,
|
|
771
512
|
labelId,
|
|
772
513
|
ref: forwardedRef
|
|
773
|
-
}, /* @__PURE__ */
|
|
514
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Root, {
|
|
774
515
|
status: isCurrent && connectionState === import_mesh.ConnectionState.OFFLINE ? "error" : device.presence === import_halo.Device.PresenceState.ONLINE ? "active" : "inactive",
|
|
775
516
|
labelId,
|
|
776
517
|
hue: fallbackValue.hue,
|
|
777
518
|
variant: "square"
|
|
778
|
-
}, /* @__PURE__ */
|
|
519
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Frame, {
|
|
779
520
|
classNames: "place-self-center"
|
|
780
|
-
}, device.profile?.type ? device.profile.type === import_halo.DeviceType.AGENT_MANAGED ? /* @__PURE__ */
|
|
521
|
+
}, device.profile?.type ? device.profile.type === import_halo.DeviceType.AGENT_MANAGED ? /* @__PURE__ */ import_react9.default.createElement(import_react8.Database, iconProps) : device.profile.type === import_halo.DeviceType.BROWSER ? /* @__PURE__ */ import_react9.default.createElement(import_react8.Compass, iconProps) : device.profile.type === import_halo.DeviceType.NATIVE ? /* @__PURE__ */ import_react9.default.createElement(import_react8.Desktop, iconProps) : [
|
|
781
522
|
import_halo.DeviceType.AGENT,
|
|
782
523
|
import_halo.DeviceType.AGENT_MANAGED
|
|
783
|
-
].includes(device.profile.type) ? /* @__PURE__ */
|
|
524
|
+
].includes(device.profile.type) ? /* @__PURE__ */ import_react9.default.createElement(import_react8.Robot, iconProps) : device.profile.type === import_halo.DeviceType.MOBILE ? /* @__PURE__ */ import_react9.default.createElement(import_react8.DeviceMobile, iconProps) : /* @__PURE__ */ import_react9.default.createElement(import_react8.Devices, iconProps) : /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Fallback, {
|
|
784
525
|
text: fallbackValue.emoji
|
|
785
|
-
})), /* @__PURE__ */
|
|
526
|
+
})), /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Label, {
|
|
786
527
|
classNames: "flex-1 text-sm truncate"
|
|
787
|
-
}, displayName), isCurrent && /* @__PURE__ */
|
|
528
|
+
}, displayName), isCurrent && /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Tag, {
|
|
788
529
|
color: "primary"
|
|
789
|
-
}, t("current device tag label")), device.kind === import_halo.DeviceKind.CURRENT && /* @__PURE__ */
|
|
530
|
+
}, t("current device tag label")), device.kind === import_halo.DeviceKind.CURRENT && /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Root, null, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Trigger, {
|
|
790
531
|
asChild: true
|
|
791
|
-
}, /* @__PURE__ */
|
|
532
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Button, {
|
|
792
533
|
variant: "ghost",
|
|
793
534
|
classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
|
|
794
535
|
"data-testid": `device-list-item${isCurrent ? "-current" : ""}.options`
|
|
795
|
-
}, /* @__PURE__ */
|
|
536
|
+
}, /* @__PURE__ */ import_react9.default.createElement("span", {
|
|
796
537
|
className: "sr-only"
|
|
797
|
-
}, t("more options label")), /* @__PURE__ */
|
|
798
|
-
className: (0,
|
|
799
|
-
}))), /* @__PURE__ */
|
|
538
|
+
}, t("more options label")), /* @__PURE__ */ import_react9.default.createElement(import_react8.DotsThree, {
|
|
539
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
540
|
+
}))), /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Content, null, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Viewport, null, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Item, {
|
|
800
541
|
"data-testid": "device-list-item-current.join-existing",
|
|
801
542
|
onClick: onClickJoinExisting
|
|
802
|
-
}, /* @__PURE__ */
|
|
803
|
-
className: (0,
|
|
804
|
-
}), t("choose join new identity label")), onClickRecover && /* @__PURE__ */
|
|
543
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react8.ShareFat, {
|
|
544
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
545
|
+
}), t("choose join new identity label")), onClickRecover && /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Item, {
|
|
805
546
|
"data-testid": "device-list-item-current.recover",
|
|
806
547
|
onClick: onClickRecover
|
|
807
|
-
}, /* @__PURE__ */
|
|
808
|
-
className: (0,
|
|
809
|
-
}), t("choose recover identity label")), /* @__PURE__ */
|
|
548
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react8.FirstAidKit, {
|
|
549
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
550
|
+
}), t("choose recover identity label")), /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Item, {
|
|
810
551
|
"data-testid": "device-list-item-current.reset",
|
|
811
552
|
onClick: onClickReset
|
|
812
|
-
}, /* @__PURE__ */
|
|
813
|
-
className: (0,
|
|
553
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react8.Power, {
|
|
554
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
814
555
|
}), t("reset device label")))))));
|
|
815
556
|
});
|
|
816
557
|
var DeviceList = ({ devices, connectionState, onClickAdd, onClickEdit, onClickReset, onClickRecover, onClickJoinExisting, onAgentDestroy }) => {
|
|
817
|
-
const { t } = (0,
|
|
818
|
-
return /* @__PURE__ */
|
|
558
|
+
const { t } = (0, import_react_ui5.useTranslation)("os");
|
|
559
|
+
return /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
819
560
|
role: "none",
|
|
820
561
|
className: "p-1"
|
|
821
|
-
}, /* @__PURE__ */
|
|
822
|
-
className: (0,
|
|
823
|
-
}, t("devices heading")), devices.length > 0 && /* @__PURE__ */
|
|
824
|
-
return /* @__PURE__ */
|
|
562
|
+
}, /* @__PURE__ */ import_react7.default.createElement("h2", {
|
|
563
|
+
className: (0, import_react_ui_theme5.mx)(import_react_ui_theme5.descriptionText, "text-center mbs-2")
|
|
564
|
+
}, t("devices heading")), devices.length > 0 && /* @__PURE__ */ import_react7.default.createElement(import_react_ui5.List, null, devices.map((device) => {
|
|
565
|
+
return /* @__PURE__ */ import_react7.default.createElement(DeviceListItem, {
|
|
825
566
|
key: device.deviceKey.toHex(),
|
|
826
567
|
device,
|
|
827
568
|
onClickEdit: () => onClickEdit?.(device),
|
|
@@ -831,22 +572,22 @@ var DeviceList = ({ devices, connectionState, onClickAdd, onClickEdit, onClickRe
|
|
|
831
572
|
connectionState,
|
|
832
573
|
onAgentDestroy
|
|
833
574
|
});
|
|
834
|
-
})), /* @__PURE__ */
|
|
575
|
+
})), /* @__PURE__ */ import_react7.default.createElement(import_react_ui5.Button, {
|
|
835
576
|
variant: "ghost",
|
|
836
|
-
classNames: "justify-start gap-2
|
|
577
|
+
classNames: "justify-start gap-2 pis-0 pie-3 is-full",
|
|
837
578
|
"data-testid": "devices-panel.create-invitation",
|
|
838
579
|
onClick: onClickAdd
|
|
839
|
-
}, /* @__PURE__ */
|
|
580
|
+
}, /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
840
581
|
role: "img",
|
|
841
|
-
className: (0,
|
|
842
|
-
}, /* @__PURE__ */
|
|
582
|
+
className: (0, import_react_ui_theme5.mx)((0, import_react_ui_theme5.getSize)(8), "m-1 rounded-sm bg-input grid place-items-center")
|
|
583
|
+
}, /* @__PURE__ */ import_react7.default.createElement(import_react6.Plus, {
|
|
843
584
|
weight: "light",
|
|
844
|
-
className: (0,
|
|
845
|
-
})), /* @__PURE__ */
|
|
585
|
+
className: (0, import_react_ui_theme5.getSize)(6)
|
|
586
|
+
})), /* @__PURE__ */ import_react7.default.createElement("span", {
|
|
846
587
|
className: "grow font-medium text-start"
|
|
847
|
-
}, t("choose add device label")), /* @__PURE__ */
|
|
588
|
+
}, t("choose add device label")), /* @__PURE__ */ import_react7.default.createElement(import_react6.CaretRight, {
|
|
848
589
|
weight: "bold",
|
|
849
|
-
className: (0,
|
|
590
|
+
className: (0, import_react_ui_theme5.getSize)(4)
|
|
850
591
|
})));
|
|
851
592
|
};
|
|
852
593
|
var AuthCode = (props) => {
|
|
@@ -854,7 +595,7 @@ var AuthCode = (props) => {
|
|
|
854
595
|
const l = code?.length ?? 0;
|
|
855
596
|
const left = code?.slice(0, l / 2);
|
|
856
597
|
const right = code?.slice(l / 2);
|
|
857
|
-
const codeRef = (0,
|
|
598
|
+
const codeRef = (0, import_react12.useRef)(null);
|
|
858
599
|
const handleClick = () => {
|
|
859
600
|
if (codeRef.current) {
|
|
860
601
|
const selection = window.getSelection();
|
|
@@ -865,18 +606,18 @@ var AuthCode = (props) => {
|
|
|
865
606
|
}
|
|
866
607
|
void navigator.clipboard.writeText(code ?? "");
|
|
867
608
|
};
|
|
868
|
-
return /* @__PURE__ */
|
|
869
|
-
className: (0,
|
|
609
|
+
return /* @__PURE__ */ import_react12.default.createElement("span", {
|
|
610
|
+
className: (0, import_react_ui_theme8.mx)(large ? "text-6xl" : "text-2xl", "font-mono pli-2.5 rounded cursor-pointer", classNames),
|
|
870
611
|
onClick: handleClick,
|
|
871
612
|
ref: codeRef
|
|
872
|
-
}, /* @__PURE__ */
|
|
613
|
+
}, /* @__PURE__ */ import_react12.default.createElement("span", {
|
|
873
614
|
className: "mie-[0.4em]"
|
|
874
|
-
}, left), /* @__PURE__ */
|
|
615
|
+
}, left), /* @__PURE__ */ import_react12.default.createElement("span", null, right));
|
|
875
616
|
};
|
|
876
617
|
var InvitationListItem = (props) => {
|
|
877
618
|
const { invitation } = props;
|
|
878
619
|
const invitationStatus = (0, import_invitations.useInvitationStatus)(invitation);
|
|
879
|
-
return /* @__PURE__ */
|
|
620
|
+
return /* @__PURE__ */ import_react11.default.createElement(InvitationListItemImpl, {
|
|
880
621
|
...props,
|
|
881
622
|
invitationStatus
|
|
882
623
|
});
|
|
@@ -886,11 +627,11 @@ var avatarProps = {
|
|
|
886
627
|
variant: "circle"
|
|
887
628
|
};
|
|
888
629
|
var AvatarStackEffect = ({ animation, status, reverseEffects }) => {
|
|
889
|
-
const { tx } = (0,
|
|
890
|
-
return /* @__PURE__ */
|
|
630
|
+
const { tx } = (0, import_react_ui7.useThemeContext)();
|
|
631
|
+
return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
891
632
|
role: "none",
|
|
892
|
-
className: (0,
|
|
893
|
-
}, /* @__PURE__ */
|
|
633
|
+
className: (0, import_react_ui_theme7.mx)("absolute inline-end-auto opacity-20", reverseEffects ? "inline-start-3" : "inline-start-1", (0, import_react_ui_theme7.getSize)(avatarProps.size))
|
|
634
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
894
635
|
role: "none",
|
|
895
636
|
className: tx("avatar.ring", "avatar__ring", {
|
|
896
637
|
...avatarProps,
|
|
@@ -900,10 +641,10 @@ var AvatarStackEffect = ({ animation, status, reverseEffects }) => {
|
|
|
900
641
|
style: {
|
|
901
642
|
animationDelay: "400ms"
|
|
902
643
|
}
|
|
903
|
-
})), /* @__PURE__ */
|
|
644
|
+
})), /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
904
645
|
role: "none",
|
|
905
|
-
className: (0,
|
|
906
|
-
}, /* @__PURE__ */
|
|
646
|
+
className: (0, import_react_ui_theme7.mx)("absolute inline-end-auto opacity-50", reverseEffects ? "inline-start-2" : "inline-start-2", (0, import_react_ui_theme7.getSize)(avatarProps.size))
|
|
647
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
907
648
|
role: "none",
|
|
908
649
|
className: tx("avatar.ring", "avatar__ring", {
|
|
909
650
|
...avatarProps,
|
|
@@ -916,7 +657,7 @@ var AvatarStackEffect = ({ animation, status, reverseEffects }) => {
|
|
|
916
657
|
})));
|
|
917
658
|
};
|
|
918
659
|
var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationStatus, send, onClickRemove, createInvitationUrl, reverseEffects, ...props }) => {
|
|
919
|
-
const { t } = (0,
|
|
660
|
+
const { t } = (0, import_react_ui7.useTranslation)("os");
|
|
920
661
|
const { cancel, status: invitationStatus, invitationCode, authCode, multiUse, shareable } = propsInvitationStatus;
|
|
921
662
|
const isCancellable = !([
|
|
922
663
|
import_invitations.Invitation.State.ERROR,
|
|
@@ -929,7 +670,7 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
|
|
|
929
670
|
import_invitations.Invitation.State.CONNECTED
|
|
930
671
|
].indexOf(invitationStatus) >= 0);
|
|
931
672
|
const showAuthCode = invitationStatus === import_invitations.Invitation.State.READY_FOR_AUTHENTICATION;
|
|
932
|
-
const handleClickRemove = (0,
|
|
673
|
+
const handleClickRemove = (0, import_react11.useCallback)(() => onClickRemove?.(invitation), [
|
|
933
674
|
invitation,
|
|
934
675
|
onClickRemove
|
|
935
676
|
]);
|
|
@@ -958,38 +699,38 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
|
|
|
958
699
|
import_invitations.Invitation.State.SUCCESS
|
|
959
700
|
].includes(invitationStatus);
|
|
960
701
|
const avatarStatus = avatarError ? "error" : avatarGreen ? "active" : "inactive";
|
|
961
|
-
return /* @__PURE__ */
|
|
702
|
+
return /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.ListItem.Root, {
|
|
962
703
|
id: invitationCode,
|
|
963
704
|
...props,
|
|
964
705
|
classNames: [
|
|
965
706
|
"flex gap-2 pis-3 pie-1 items-center relative",
|
|
966
707
|
props.classNames
|
|
967
708
|
]
|
|
968
|
-
}, /* @__PURE__ */
|
|
709
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.ListItem.Heading, {
|
|
969
710
|
classNames: "sr-only"
|
|
970
|
-
}, t(multiUse ? "invite many list item label" : "invite one list item label")), multiUse && /* @__PURE__ */
|
|
711
|
+
}, t(multiUse ? "invite many list item label" : "invite one list item label")), multiUse && /* @__PURE__ */ import_react11.default.createElement(AvatarStackEffect, {
|
|
971
712
|
status: avatarStatus,
|
|
972
713
|
animation: avatarAnimation,
|
|
973
714
|
reverseEffects
|
|
974
|
-
}), /* @__PURE__ */
|
|
715
|
+
}), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Root, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Avatar.Root, {
|
|
975
716
|
...avatarProps,
|
|
976
717
|
animation: avatarAnimation,
|
|
977
718
|
status: avatarStatus
|
|
978
|
-
}, /* @__PURE__ */
|
|
719
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Trigger, {
|
|
979
720
|
asChild: true
|
|
980
|
-
}, /* @__PURE__ */
|
|
721
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Avatar.Frame, {
|
|
981
722
|
tabIndex: 0,
|
|
982
723
|
classNames: [
|
|
983
|
-
|
|
724
|
+
import_react_ui_theme7.focusRing,
|
|
984
725
|
"relative rounded-full place-self-center"
|
|
985
726
|
]
|
|
986
|
-
}, /* @__PURE__ */
|
|
727
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Avatar.Fallback, {
|
|
987
728
|
text: (0, import_util3.hexToEmoji)(invitationId)
|
|
988
|
-
})))), /* @__PURE__ */
|
|
729
|
+
})))), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Portal, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Content, {
|
|
989
730
|
side: "left"
|
|
990
|
-
}, t(multiUse ? "invite many qr label" : "invite one qr label"), /* @__PURE__ */
|
|
731
|
+
}, t(multiUse ? "invite many qr label" : "invite one qr label"), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Arrow, null)))), showShare && invitationUrl ? /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Root, null, /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Trigger, {
|
|
991
732
|
asChild: true
|
|
992
|
-
}, /* @__PURE__ */
|
|
733
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Button, {
|
|
993
734
|
variant: "ghost",
|
|
994
735
|
classNames: "grow justify-start font-medium",
|
|
995
736
|
onClick: () => send({
|
|
@@ -997,55 +738,55 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
|
|
|
997
738
|
invitation
|
|
998
739
|
}),
|
|
999
740
|
"data-testid": "show-qrcode"
|
|
1000
|
-
}, /* @__PURE__ */
|
|
741
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", null, t("open share panel label")))), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Clipboard.IconButton, {
|
|
1001
742
|
variant: "ghost",
|
|
1002
743
|
value: invitationUrl
|
|
1003
|
-
})), /* @__PURE__ */
|
|
744
|
+
})), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Portal, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Content, {
|
|
1004
745
|
side: "left"
|
|
1005
|
-
}, invitationHasLifetime && /* @__PURE__ */
|
|
746
|
+
}, invitationHasLifetime && /* @__PURE__ */ import_react11.default.createElement("span", null, "Expires ", invitationTimeLeft)))) : showAuthCode ? /* @__PURE__ */ import_react11.default.createElement(AuthCode, {
|
|
1006
747
|
code: authCode,
|
|
1007
748
|
classNames: "grow"
|
|
1008
|
-
}) : invitationStatus === import_invitations.Invitation.State.CONNECTING ? /* @__PURE__ */
|
|
749
|
+
}) : invitationStatus === import_invitations.Invitation.State.CONNECTING ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1009
750
|
className: "pli-2 grow text-neutral-500"
|
|
1010
|
-
}, "Connecting...") : invitationStatus === import_invitations.Invitation.State.AUTHENTICATING ? /* @__PURE__ */
|
|
751
|
+
}, "Connecting...") : invitationStatus === import_invitations.Invitation.State.AUTHENTICATING ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1011
752
|
className: "pli-2 grow text-neutral-500"
|
|
1012
|
-
}, "Authenticating...") : invitationStatus === import_invitations.Invitation.State.ERROR || invitationStatus === import_invitations.Invitation.State.TIMEOUT ? /* @__PURE__ */
|
|
753
|
+
}, "Authenticating...") : invitationStatus === import_invitations.Invitation.State.ERROR || invitationStatus === import_invitations.Invitation.State.TIMEOUT ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1013
754
|
className: "pli-2 grow text-neutral-500"
|
|
1014
|
-
}, "Failed") : invitationStatus === import_invitations.Invitation.State.CANCELLED ? /* @__PURE__ */
|
|
755
|
+
}, "Failed") : invitationStatus === import_invitations.Invitation.State.CANCELLED ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1015
756
|
className: "pli-2 grow text-neutral-500"
|
|
1016
|
-
}, "Cancelled") : invitationStatus === import_invitations.Invitation.State.SUCCESS ? /* @__PURE__ */
|
|
757
|
+
}, "Cancelled") : invitationStatus === import_invitations.Invitation.State.SUCCESS ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1017
758
|
className: "pli-2 grow truncate"
|
|
1018
|
-
}, "User joined") : !shareable ? /* @__PURE__ */
|
|
759
|
+
}, "User joined") : !shareable ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1019
760
|
className: "pli-2 grow text-neutral-500"
|
|
1020
|
-
}, "Pending Invitation") : /* @__PURE__ */
|
|
761
|
+
}, "Pending Invitation") : /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1021
762
|
className: "grow"
|
|
1022
|
-
}, " "), isCancellable ? /* @__PURE__ */
|
|
763
|
+
}, " "), isCancellable ? /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Button, {
|
|
1023
764
|
variant: "ghost",
|
|
1024
765
|
classNames: "flex gap-1 pli-0",
|
|
1025
766
|
onClick: cancel,
|
|
1026
767
|
"data-testid": "cancel-invitation"
|
|
1027
|
-
}, /* @__PURE__ */
|
|
768
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1028
769
|
className: "sr-only"
|
|
1029
|
-
}, t("cancel invitation label")), /* @__PURE__ */
|
|
1030
|
-
className: (0,
|
|
1031
|
-
})) : /* @__PURE__ */
|
|
770
|
+
}, t("cancel invitation label")), /* @__PURE__ */ import_react11.default.createElement(import_react10.X, {
|
|
771
|
+
className: (0, import_react_ui_theme7.getSize)(4)
|
|
772
|
+
})) : /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Button, {
|
|
1032
773
|
variant: "ghost",
|
|
1033
774
|
classNames: "flex gap-1 pli-0",
|
|
1034
775
|
onClick: handleClickRemove,
|
|
1035
776
|
"data-testid": "remove-invitation"
|
|
1036
|
-
}, /* @__PURE__ */
|
|
777
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1037
778
|
className: "sr-only"
|
|
1038
|
-
}, t("remove invitation label")), /* @__PURE__ */
|
|
1039
|
-
className: (0,
|
|
779
|
+
}, t("remove invitation label")), /* @__PURE__ */ import_react11.default.createElement(import_react10.X, {
|
|
780
|
+
className: (0, import_react_ui_theme7.getSize)(4)
|
|
1040
781
|
})));
|
|
1041
782
|
};
|
|
1042
783
|
var InvitationList = ({ invitations, send, ...invitationProps }) => {
|
|
1043
784
|
const { className, InvitationListItem: Item = InvitationListItem } = invitationProps;
|
|
1044
|
-
return /* @__PURE__ */
|
|
1045
|
-
classNames: (0,
|
|
785
|
+
return /* @__PURE__ */ import_react14.default.createElement(import_react_ui8.List, {
|
|
786
|
+
classNames: (0, import_react_ui_theme9.mx)("flex flex-col gap-2", className)
|
|
1046
787
|
}, invitations.map((invitation) => {
|
|
1047
788
|
const value = invitation.get().invitationId;
|
|
1048
|
-
return /* @__PURE__ */
|
|
789
|
+
return /* @__PURE__ */ import_react14.default.createElement(Item, {
|
|
1049
790
|
key: value,
|
|
1050
791
|
send,
|
|
1051
792
|
invitation,
|
|
@@ -1056,12 +797,12 @@ var InvitationList = ({ invitations, send, ...invitationProps }) => {
|
|
|
1056
797
|
var InvitationListContainer = ({ spaceKey, createInvitationUrl, send }) => {
|
|
1057
798
|
const space = (0, import_echo3.useSpace)(spaceKey);
|
|
1058
799
|
const invitations = (0, import_echo3.useSpaceInvitations)(spaceKey);
|
|
1059
|
-
const handleClickRemove = (0,
|
|
800
|
+
const handleClickRemove = (0, import_react13.useCallback)((invitation) => {
|
|
1060
801
|
void invitation.cancel();
|
|
1061
802
|
}, [
|
|
1062
803
|
space
|
|
1063
804
|
]);
|
|
1064
|
-
return /* @__PURE__ */
|
|
805
|
+
return /* @__PURE__ */ import_react13.default.createElement(InvitationList, {
|
|
1065
806
|
invitations,
|
|
1066
807
|
onClickRemove: handleClickRemove,
|
|
1067
808
|
createInvitationUrl,
|
|
@@ -1072,25 +813,25 @@ var defaultActions = {
|
|
|
1072
813
|
noopAction: {
|
|
1073
814
|
label: "No-op",
|
|
1074
815
|
description: "",
|
|
1075
|
-
icon:
|
|
816
|
+
icon: import_react15.Placeholder,
|
|
1076
817
|
onClick: () => {
|
|
1077
818
|
}
|
|
1078
819
|
}
|
|
1079
820
|
};
|
|
1080
|
-
var BifurcatedAction = /* @__PURE__ */ (0,
|
|
821
|
+
var BifurcatedAction = /* @__PURE__ */ (0, import_react16.forwardRef)((props, forwardedRef) => {
|
|
1081
822
|
const { classNames, variant, isFull = true, actions = defaultActions, activeAction: propsActiveAction, onChangeActiveAction, defaultActiveAction, "data-testid": testId, ...rest } = props;
|
|
1082
823
|
const dropdownTestId = testId && `${testId}.more`;
|
|
1083
|
-
const [activeActionKey2 = Object.keys(actions)[0], setActiveAction] = (0,
|
|
824
|
+
const [activeActionKey2 = Object.keys(actions)[0], setActiveAction] = (0, import_react_use_controllable_state.useControllableState)({
|
|
1084
825
|
prop: propsActiveAction,
|
|
1085
826
|
onChange: onChangeActiveAction,
|
|
1086
827
|
defaultProp: defaultActiveAction
|
|
1087
828
|
});
|
|
1088
829
|
const activeAction = actions[activeActionKey2] ?? {};
|
|
1089
|
-
const { t } = (0,
|
|
1090
|
-
return /* @__PURE__ */
|
|
830
|
+
const { t } = (0, import_react_ui9.useTranslation)("os");
|
|
831
|
+
return /* @__PURE__ */ import_react16.default.createElement("div", {
|
|
1091
832
|
role: "none",
|
|
1092
|
-
className: (0,
|
|
1093
|
-
}, /* @__PURE__ */
|
|
833
|
+
className: (0, import_react_ui_theme10.mx)("mbs-2 flex gap-px items-center", isFull && "is-full")
|
|
834
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Button, {
|
|
1094
835
|
...rest,
|
|
1095
836
|
classNames: [
|
|
1096
837
|
"bs-11 flex-1 min-is-0 flex gap-2 rounded-ie-none",
|
|
@@ -1100,22 +841,22 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react21.forwardRef)((props, fo
|
|
|
1100
841
|
variant,
|
|
1101
842
|
"data-testid": testId,
|
|
1102
843
|
onClick: activeAction.onClick
|
|
1103
|
-
}, activeAction.icon && /* @__PURE__ */
|
|
1104
|
-
className: (0,
|
|
1105
|
-
}), /* @__PURE__ */
|
|
844
|
+
}, activeAction.icon && /* @__PURE__ */ import_react16.default.createElement(activeAction.icon, {
|
|
845
|
+
className: (0, import_react_ui_theme10.getSize)(5)
|
|
846
|
+
}), /* @__PURE__ */ import_react16.default.createElement("span", null, activeAction.label)), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Root, null, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Trigger, {
|
|
1106
847
|
asChild: true
|
|
1107
|
-
}, /* @__PURE__ */
|
|
848
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Button, {
|
|
1108
849
|
classNames: [
|
|
1109
850
|
"bs-11 flex-none rounded-is-none",
|
|
1110
851
|
classNames
|
|
1111
852
|
],
|
|
1112
853
|
"data-testid": dropdownTestId
|
|
1113
|
-
}, /* @__PURE__ */
|
|
854
|
+
}, /* @__PURE__ */ import_react16.default.createElement("span", {
|
|
1114
855
|
className: "sr-only"
|
|
1115
|
-
}, t("invite options label")), /* @__PURE__ */
|
|
1116
|
-
className: (0,
|
|
1117
|
-
}))), /* @__PURE__ */
|
|
1118
|
-
return /* @__PURE__ */
|
|
856
|
+
}, t("invite options label")), /* @__PURE__ */ import_react16.default.createElement(import_react15.CaretDown, {
|
|
857
|
+
className: (0, import_react_ui_theme10.getSize)(4)
|
|
858
|
+
}))), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Portal, null, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Content, null, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Viewport, null, Object.entries(actions).map(([id, action]) => {
|
|
859
|
+
return /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.CheckboxItem, {
|
|
1119
860
|
key: id,
|
|
1120
861
|
"aria-labelledby": `${id}__label`,
|
|
1121
862
|
"aria-describedby": `${id}__description`,
|
|
@@ -1123,27 +864,27 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react21.forwardRef)((props, fo
|
|
|
1123
864
|
onCheckedChange: (checked) => checked && setActiveAction(id),
|
|
1124
865
|
classNames: "gap-2",
|
|
1125
866
|
"data-testid": action.testId
|
|
1126
|
-
}, action.icon && /* @__PURE__ */
|
|
1127
|
-
className: (0,
|
|
1128
|
-
}), /* @__PURE__ */
|
|
867
|
+
}, action.icon && /* @__PURE__ */ import_react16.default.createElement(action.icon, {
|
|
868
|
+
className: (0, import_react_ui_theme10.getSize)(5)
|
|
869
|
+
}), /* @__PURE__ */ import_react16.default.createElement("div", {
|
|
1129
870
|
role: "none",
|
|
1130
871
|
className: "flex-1 min-is-0 space-b-1"
|
|
1131
|
-
}, /* @__PURE__ */
|
|
872
|
+
}, /* @__PURE__ */ import_react16.default.createElement("p", {
|
|
1132
873
|
id: `${id}__label`
|
|
1133
|
-
}, action.label), action.description && /* @__PURE__ */
|
|
874
|
+
}, action.label), action.description && /* @__PURE__ */ import_react16.default.createElement("p", {
|
|
1134
875
|
id: `${id}__description`,
|
|
1135
|
-
className:
|
|
1136
|
-
}, action.description)), /* @__PURE__ */
|
|
876
|
+
className: import_react_ui_theme10.descriptionText
|
|
877
|
+
}, action.description)), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.ItemIndicator, {
|
|
1137
878
|
asChild: true
|
|
1138
|
-
}, /* @__PURE__ */
|
|
879
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react15.Check, {
|
|
1139
880
|
weight: "bold",
|
|
1140
|
-
className: (0,
|
|
881
|
+
className: (0, import_react_ui_theme10.getSize)(4)
|
|
1141
882
|
})));
|
|
1142
|
-
})), /* @__PURE__ */
|
|
883
|
+
})), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Arrow, null)))));
|
|
1143
884
|
});
|
|
1144
|
-
var Action = /* @__PURE__ */ (0,
|
|
885
|
+
var Action = /* @__PURE__ */ (0, import_react16.forwardRef)((props, forwardedRef) => {
|
|
1145
886
|
const { children, classNames, variant, isFull = true, ...rest } = props;
|
|
1146
|
-
return /* @__PURE__ */
|
|
887
|
+
return /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Button, {
|
|
1147
888
|
...rest,
|
|
1148
889
|
classNames: [
|
|
1149
890
|
isFull && "is-full",
|
|
@@ -1154,37 +895,37 @@ var Action = /* @__PURE__ */ (0, import_react21.forwardRef)((props, forwardedRef
|
|
|
1154
895
|
variant
|
|
1155
896
|
}, children);
|
|
1156
897
|
});
|
|
1157
|
-
var Actions = /* @__PURE__ */ (0,
|
|
1158
|
-
return /* @__PURE__ */
|
|
898
|
+
var Actions = /* @__PURE__ */ (0, import_react17.forwardRef)(({ classNames, children, ...props }, forwardedRef) => {
|
|
899
|
+
return /* @__PURE__ */ import_react17.default.createElement("div", {
|
|
1159
900
|
...props,
|
|
1160
|
-
className: (0,
|
|
901
|
+
className: (0, import_react_ui_theme11.mx)("flex flex-col gap-2 mbs-2", Array.isArray(children) && children.length > 1 ? "justify-between" : "justify-center", classNames),
|
|
1161
902
|
ref: forwardedRef
|
|
1162
903
|
}, children);
|
|
1163
904
|
});
|
|
1164
905
|
var CloseButton = ({ onDone, ...props }) => {
|
|
1165
|
-
const { t } = (0,
|
|
1166
|
-
return /* @__PURE__ */
|
|
906
|
+
const { t } = (0, import_react_ui10.useTranslation)("os");
|
|
907
|
+
return /* @__PURE__ */ import_react19.default.createElement(import_react_ui10.Button, {
|
|
1167
908
|
variant: "ghost",
|
|
1168
|
-
classNames: (0,
|
|
909
|
+
classNames: (0, import_react_ui_theme12.mx)("plb-0 pli-2 absolute block-start-0 inline-end-0 z-[1]"),
|
|
1169
910
|
onClick: () => onDone?.(),
|
|
1170
911
|
...props
|
|
1171
|
-
}, /* @__PURE__ */
|
|
912
|
+
}, /* @__PURE__ */ import_react19.default.createElement(import_react18.X, {
|
|
1172
913
|
weight: "bold",
|
|
1173
|
-
className: (0,
|
|
1174
|
-
}), /* @__PURE__ */
|
|
914
|
+
className: (0, import_react_ui_theme12.getSize)(4)
|
|
915
|
+
}), /* @__PURE__ */ import_react19.default.createElement("span", {
|
|
1175
916
|
className: "sr-only"
|
|
1176
917
|
}, t("exit label")));
|
|
1177
918
|
};
|
|
1178
919
|
var Emoji = ({ text, className }) => {
|
|
1179
920
|
const size = 14;
|
|
1180
|
-
return /* @__PURE__ */
|
|
921
|
+
return /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1181
922
|
role: "none",
|
|
1182
|
-
className: (0,
|
|
1183
|
-
}, /* @__PURE__ */
|
|
923
|
+
className: (0, import_react_ui_theme13.mx)((0, import_react_ui_theme13.getSize)(size), "rounded relative pointer-events-none", className)
|
|
924
|
+
}, /* @__PURE__ */ import_react20.default.createElement("svg", {
|
|
1184
925
|
viewBox: `0 0 ${size * 4} ${size * 4}`,
|
|
1185
926
|
width: size * 4,
|
|
1186
927
|
height: size * 4
|
|
1187
|
-
}, /* @__PURE__ */
|
|
928
|
+
}, /* @__PURE__ */ import_react20.default.createElement("text", {
|
|
1188
929
|
x: "50%",
|
|
1189
930
|
y: "50%",
|
|
1190
931
|
textAnchor: "middle",
|
|
@@ -1195,41 +936,41 @@ var Emoji = ({ text, className }) => {
|
|
|
1195
936
|
};
|
|
1196
937
|
var Centered = (props) => {
|
|
1197
938
|
const { children } = props;
|
|
1198
|
-
return /* @__PURE__ */
|
|
939
|
+
return /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1199
940
|
role: "none",
|
|
1200
941
|
className: "absolute inset-0 flex items-center justify-center"
|
|
1201
942
|
}, children);
|
|
1202
943
|
};
|
|
1203
|
-
var Heading = /* @__PURE__ */ (0,
|
|
1204
|
-
return /* @__PURE__ */
|
|
944
|
+
var Heading = /* @__PURE__ */ (0, import_react21.forwardRef)(({ titleId, title, titleSrOnly, children, corner }, forwardedRef) => {
|
|
945
|
+
return /* @__PURE__ */ import_react21.default.createElement("div", {
|
|
1205
946
|
role: "none",
|
|
1206
947
|
className: "pbe-2 relative",
|
|
1207
948
|
ref: forwardedRef
|
|
1208
|
-
}, corner, /* @__PURE__ */
|
|
949
|
+
}, corner, /* @__PURE__ */ import_react21.default.createElement("h1", {
|
|
1209
950
|
...!titleSrOnly && {
|
|
1210
951
|
id: titleId
|
|
1211
952
|
},
|
|
1212
|
-
className: (0,
|
|
1213
|
-
}, title), titleSrOnly && /* @__PURE__ */
|
|
953
|
+
className: (0, import_react_ui_theme14.mx)(import_react_ui_theme14.descriptionText, "text-center mlb-2", titleSrOnly && "invisible")
|
|
954
|
+
}, title), titleSrOnly && /* @__PURE__ */ import_react21.default.createElement("span", {
|
|
1214
955
|
id: titleId
|
|
1215
956
|
}, title), children);
|
|
1216
957
|
});
|
|
1217
958
|
var Label = (props) => {
|
|
1218
959
|
const { children } = props;
|
|
1219
|
-
return /* @__PURE__ */
|
|
1220
|
-
className: (0,
|
|
960
|
+
return /* @__PURE__ */ import_react22.default.createElement("span", {
|
|
961
|
+
className: (0, import_react_ui_theme15.mx)(import_react_ui_theme15.descriptionText, "text-center mli-6 whitespace-normal")
|
|
1221
962
|
}, children);
|
|
1222
963
|
};
|
|
1223
964
|
var Input = ({ validationMessage, label, ...props }) => {
|
|
1224
|
-
return /* @__PURE__ */
|
|
965
|
+
return /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.Root, null, /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.Label, null, label), /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.TextInput, {
|
|
1225
966
|
...props,
|
|
1226
967
|
classNames: "plb-3 mbs-2 text-center"
|
|
1227
|
-
}), /* @__PURE__ */
|
|
968
|
+
}), /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.DescriptionAndValidation, null, validationMessage && /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.Validation, null, validationMessage)));
|
|
1228
969
|
};
|
|
1229
|
-
var StepHeading = /* @__PURE__ */ (0,
|
|
1230
|
-
return /* @__PURE__ */
|
|
970
|
+
var StepHeading = /* @__PURE__ */ (0, import_react24.forwardRef)(({ children, className, ...props }, forwardedRef) => {
|
|
971
|
+
return /* @__PURE__ */ import_react24.default.createElement("h2", {
|
|
1231
972
|
...props,
|
|
1232
|
-
className: (0,
|
|
973
|
+
className: (0, import_react_ui_theme16.mx)("font-normal text-sm mbe-4 mli-1 text-center", className),
|
|
1233
974
|
ref: forwardedRef
|
|
1234
975
|
}, children);
|
|
1235
976
|
});
|
|
@@ -1239,21 +980,21 @@ var VIEW_NAME = "ViewportView";
|
|
|
1239
980
|
var [createViewportContext, createViewportScope] = (0, import_react_context.createContextScope)(VIEWPORT_NAME, []);
|
|
1240
981
|
var [ViewportProvider, useViewportContext] = createViewportContext(VIEWPORT_NAME);
|
|
1241
982
|
var ViewportRoot = ({ __viewportScope, classNames, children, defaultActiveView, activeView: propsActiveView, focusManaged = false, onActiveViewChange, ...props }) => {
|
|
1242
|
-
const [activeView = "never", setActiveView] = (0,
|
|
983
|
+
const [activeView = "never", setActiveView] = (0, import_react_use_controllable_state2.useControllableState)({
|
|
1243
984
|
prop: propsActiveView,
|
|
1244
985
|
defaultProp: defaultActiveView,
|
|
1245
986
|
onChange: onActiveViewChange
|
|
1246
987
|
});
|
|
1247
|
-
return /* @__PURE__ */
|
|
988
|
+
return /* @__PURE__ */ import_react25.default.createElement(ViewportProvider, {
|
|
1248
989
|
focusManaged,
|
|
1249
990
|
activeView,
|
|
1250
991
|
setActiveView,
|
|
1251
992
|
scope: __viewportScope
|
|
1252
|
-
}, /* @__PURE__ */
|
|
993
|
+
}, /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1253
994
|
role: "region",
|
|
1254
995
|
"aria-live": "polite",
|
|
1255
996
|
...props,
|
|
1256
|
-
className: (0,
|
|
997
|
+
className: (0, import_react_ui_theme17.mx)("is-full overflow-hidden", classNames)
|
|
1257
998
|
}, children));
|
|
1258
999
|
};
|
|
1259
1000
|
ViewportRoot.displayName = VIEWPORT_NAME;
|
|
@@ -1261,20 +1002,20 @@ var ViewportViews = ({ classNames, children, ...props }) => {
|
|
|
1261
1002
|
const size = {
|
|
1262
1003
|
inlineSize: `${Math.ceil(children.length) * 100}%`
|
|
1263
1004
|
};
|
|
1264
|
-
return /* @__PURE__ */
|
|
1005
|
+
return /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1265
1006
|
role: "none",
|
|
1266
1007
|
style: size,
|
|
1267
1008
|
...props,
|
|
1268
|
-
className: (0,
|
|
1009
|
+
className: (0, import_react_ui_theme17.mx)("flex", classNames)
|
|
1269
1010
|
}, children);
|
|
1270
1011
|
};
|
|
1271
1012
|
ViewportViews.displayName = VIEWS_NAME;
|
|
1272
|
-
var ViewportView = /* @__PURE__ */ (0,
|
|
1013
|
+
var ViewportView = /* @__PURE__ */ (0, import_react25.forwardRef)(({ __viewportScope, classNames, children, id, ...props }, forwardedRef) => {
|
|
1273
1014
|
const { activeView, focusManaged } = useViewportContext(VIEW_NAME, __viewportScope);
|
|
1274
1015
|
const isActive = id === activeView;
|
|
1275
|
-
const ref = (0,
|
|
1016
|
+
const ref = (0, import_react_ui12.useForwardedRef)(forwardedRef);
|
|
1276
1017
|
const { findFirstFocusable } = (0, import_react_tabster.useFocusFinders)();
|
|
1277
|
-
(0,
|
|
1018
|
+
(0, import_react25.useEffect)(() => {
|
|
1278
1019
|
if (!focusManaged && isActive && document.body.hasAttribute("data-is-keyboard") && ref.current) {
|
|
1279
1020
|
findFirstFocusable(ref.current)?.focus();
|
|
1280
1021
|
}
|
|
@@ -1283,12 +1024,12 @@ var ViewportView = /* @__PURE__ */ (0, import_react30.forwardRef)(({ __viewportS
|
|
|
1283
1024
|
ref.current,
|
|
1284
1025
|
isActive
|
|
1285
1026
|
]);
|
|
1286
|
-
return /* @__PURE__ */
|
|
1027
|
+
return /* @__PURE__ */ import_react25.default.createElement("section", {
|
|
1287
1028
|
...props,
|
|
1288
1029
|
...!isActive && {
|
|
1289
1030
|
"aria-hidden": true
|
|
1290
1031
|
},
|
|
1291
|
-
className: (0,
|
|
1032
|
+
className: (0, import_react_ui_theme17.mx)("min-is-0 flex-1 flex flex-col", isActive ? "order-2" : "order-4 invisible", classNames),
|
|
1292
1033
|
ref
|
|
1293
1034
|
}, children);
|
|
1294
1035
|
});
|
|
@@ -1298,20 +1039,20 @@ var Viewport = {
|
|
|
1298
1039
|
Views: ViewportViews,
|
|
1299
1040
|
View: ViewportView
|
|
1300
1041
|
};
|
|
1301
|
-
var SpaceListItem = /* @__PURE__ */ (0,
|
|
1042
|
+
var SpaceListItem = /* @__PURE__ */ (0, import_react26.forwardRef)(({ space, onClick }, ref) => {
|
|
1302
1043
|
const fallbackValue = (0, import_util4.keyToEmoji)(space.key);
|
|
1303
|
-
const labelId = (0,
|
|
1044
|
+
const labelId = (0, import_react_ui13.useId)("identityListItem__label");
|
|
1304
1045
|
const displayName = space.properties.name ?? (0, import_util4.humanize)(space.key.toHex());
|
|
1305
|
-
return /* @__PURE__ */
|
|
1306
|
-
className: (0,
|
|
1046
|
+
return /* @__PURE__ */ import_react26.default.createElement("li", {
|
|
1047
|
+
className: (0, import_react_ui_theme18.mx)("flex gap-2 items-center mbe-2", onClick && "cursor-pointer"),
|
|
1307
1048
|
onClick: () => onClick?.(),
|
|
1308
1049
|
ref,
|
|
1309
1050
|
"data-testid": "space-list-item"
|
|
1310
|
-
}, /* @__PURE__ */
|
|
1051
|
+
}, /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Root, {
|
|
1311
1052
|
labelId
|
|
1312
|
-
}, /* @__PURE__ */
|
|
1053
|
+
}, /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Frame, null, /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Fallback, {
|
|
1313
1054
|
text: fallbackValue
|
|
1314
|
-
})), /* @__PURE__ */
|
|
1055
|
+
})), /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Label, {
|
|
1315
1056
|
classNames: "text-sm truncate"
|
|
1316
1057
|
}, displayName)));
|
|
1317
1058
|
});
|
|
@@ -1410,7 +1151,7 @@ var identityMachine = (0, import_xstate.createMachine)({
|
|
|
1410
1151
|
}
|
|
1411
1152
|
});
|
|
1412
1153
|
var useIdentityMachine = (client, options) => {
|
|
1413
|
-
return (0,
|
|
1154
|
+
return (0, import_react30.useMachine)(identityMachine, {
|
|
1414
1155
|
...options,
|
|
1415
1156
|
context: {
|
|
1416
1157
|
...options?.context,
|
|
@@ -1453,7 +1194,7 @@ var IdentityActionChooser = (props) => {
|
|
|
1453
1194
|
});
|
|
1454
1195
|
};
|
|
1455
1196
|
const isProduction = client.config.values.runtime?.app?.env?.DX_ENVIRONMENT === "production";
|
|
1456
|
-
return /* @__PURE__ */
|
|
1197
|
+
return /* @__PURE__ */ import_react31.default.createElement(IdentityActionChooserImpl, {
|
|
1457
1198
|
...props,
|
|
1458
1199
|
onClickAdd: createInvitation,
|
|
1459
1200
|
onClickJoinExisting: () => send?.({
|
|
@@ -1469,10 +1210,10 @@ var IdentityActionChooser = (props) => {
|
|
|
1469
1210
|
};
|
|
1470
1211
|
var IdentityActionChooserImpl = ({ devices, connectionState, agentHostingEnabled, onClickAdd, onClickJoinExisting, onClickRecover, onClickReset, ...agentProps }) => {
|
|
1471
1212
|
const edgeDeviceAvailable = devices.find((device) => device.profile?.type === import_halo3.DeviceType.AGENT_MANAGED && device.profile?.os?.toUpperCase() === "EDGE");
|
|
1472
|
-
return /* @__PURE__ */
|
|
1213
|
+
return /* @__PURE__ */ import_react31.default.createElement("div", {
|
|
1473
1214
|
role: "none",
|
|
1474
1215
|
className: "bs-40 grow overflow-y-auto"
|
|
1475
|
-
}, /* @__PURE__ */
|
|
1216
|
+
}, /* @__PURE__ */ import_react31.default.createElement(DeviceList, {
|
|
1476
1217
|
devices,
|
|
1477
1218
|
connectionState,
|
|
1478
1219
|
onClickAdd,
|
|
@@ -1480,13 +1221,13 @@ var IdentityActionChooserImpl = ({ devices, connectionState, agentHostingEnabled
|
|
|
1480
1221
|
onClickRecover: agentProps.agentStatus === "created" ? onClickRecover : void 0,
|
|
1481
1222
|
onClickReset,
|
|
1482
1223
|
onAgentDestroy: agentProps.onAgentDestroy
|
|
1483
|
-
}), !edgeDeviceAvailable && agentHostingEnabled && /* @__PURE__ */
|
|
1224
|
+
}), !edgeDeviceAvailable && agentHostingEnabled && /* @__PURE__ */ import_react31.default.createElement(AgentConfig, agentProps));
|
|
1484
1225
|
};
|
|
1485
1226
|
var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts";
|
|
1486
1227
|
var useEdgeAgentHandlers = ({ identity }) => {
|
|
1487
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
1488
|
-
const [lastReceivedStatus, setLastReceivedStatus] = (0,
|
|
1489
|
-
const [agentStatus, setAgentStatus] = (0,
|
|
1228
|
+
const [validationMessage, setValidationMessage] = (0, import_react33.useState)("");
|
|
1229
|
+
const [lastReceivedStatus, setLastReceivedStatus] = (0, import_react33.useState)(import_services.QueryAgentStatusResponse.AgentStatus.UNKNOWN);
|
|
1230
|
+
const [agentStatus, setAgentStatus] = (0, import_react33.useState)("getting");
|
|
1490
1231
|
const client = (0, import_react_client5.useClient)();
|
|
1491
1232
|
const agentHostingEnabled = Boolean(client.config.values.runtime?.client?.edgeFeatures?.agents);
|
|
1492
1233
|
const handleStatus = (status) => {
|
|
@@ -1503,7 +1244,7 @@ var useEdgeAgentHandlers = ({ identity }) => {
|
|
|
1503
1244
|
break;
|
|
1504
1245
|
}
|
|
1505
1246
|
};
|
|
1506
|
-
(0,
|
|
1247
|
+
(0, import_react33.useEffect)(() => {
|
|
1507
1248
|
const stream = client.services.services.EdgeAgentService?.queryAgentStatus();
|
|
1508
1249
|
stream?.subscribe(({ status }) => {
|
|
1509
1250
|
setLastReceivedStatus(status);
|
|
@@ -1572,8 +1313,8 @@ var useEdgeAgentHandlers = ({ identity }) => {
|
|
|
1572
1313
|
};
|
|
1573
1314
|
var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/IdentityPanel/useKubeAgentHandlers.ts";
|
|
1574
1315
|
var useKubeAgentHandlers = ({ invitations, identity }) => {
|
|
1575
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
1576
|
-
const [agentStatus, setAgentStatus] = (0,
|
|
1316
|
+
const [validationMessage, setValidationMessage] = (0, import_react34.useState)("");
|
|
1317
|
+
const [agentStatus, setAgentStatus] = (0, import_react34.useState)("getting");
|
|
1577
1318
|
const agentHostingProviderClient = (0, import_react_client6.useAgentHostingClient)();
|
|
1578
1319
|
const client = (0, import_react_client6.useClient)();
|
|
1579
1320
|
const updateAgentStatus = async () => {
|
|
@@ -1650,10 +1391,10 @@ var useKubeAgentHandlers = ({ invitations, identity }) => {
|
|
|
1650
1391
|
setValidationMessage("No agent provider configured.");
|
|
1651
1392
|
}
|
|
1652
1393
|
};
|
|
1653
|
-
(0,
|
|
1394
|
+
(0, import_react34.useEffect)(() => {
|
|
1654
1395
|
void updateAgentStatus();
|
|
1655
1396
|
}, []);
|
|
1656
|
-
const handleAgentCreate = (0,
|
|
1397
|
+
const handleAgentCreate = (0, import_react34.useCallback)(async (invitation) => {
|
|
1657
1398
|
const invitationCode = import_invitations4.InvitationEncoder.encode(invitation);
|
|
1658
1399
|
if (invitation.state === import_invitations4.Invitation.State.CONNECTING) {
|
|
1659
1400
|
import_log6.log.info(JSON.stringify({
|
|
@@ -1737,18 +1478,18 @@ var invitationStatusValue = /* @__PURE__ */ new Map([
|
|
|
1737
1478
|
]
|
|
1738
1479
|
]);
|
|
1739
1480
|
var InvitationManagerView = ({ children, ...props }) => {
|
|
1740
|
-
return /* @__PURE__ */
|
|
1481
|
+
return /* @__PURE__ */ import_react36.default.createElement(Viewport.View, {
|
|
1741
1482
|
...props,
|
|
1742
1483
|
classNames: "grow flex flex-col justify-around items-center"
|
|
1743
1484
|
}, children);
|
|
1744
1485
|
};
|
|
1745
1486
|
var InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCode, id = "0" }) => {
|
|
1746
|
-
const { t } = (0,
|
|
1747
|
-
const qrLabel = (0,
|
|
1487
|
+
const { t } = (0, import_react_ui17.useTranslation)("os");
|
|
1488
|
+
const qrLabel = (0, import_react_ui17.useId)("invitation-manager__qr-code");
|
|
1748
1489
|
const statusValue = multiUse ? 0 : invitationStatusValue.get(status) ?? 0;
|
|
1749
1490
|
const showAuthCode = statusValue === 3;
|
|
1750
1491
|
const emoji = (0, import_util7.hexToEmoji)(id);
|
|
1751
|
-
const activeView = (0,
|
|
1492
|
+
const activeView = (0, import_react36.useMemo)(() => {
|
|
1752
1493
|
if (multiUse) {
|
|
1753
1494
|
return "showing qr";
|
|
1754
1495
|
}
|
|
@@ -1764,50 +1505,50 @@ var InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCo
|
|
|
1764
1505
|
}, [
|
|
1765
1506
|
statusValue
|
|
1766
1507
|
]);
|
|
1767
|
-
return /* @__PURE__ */
|
|
1508
|
+
return /* @__PURE__ */ import_react36.default.createElement(import_react36.default.Fragment, null, /* @__PURE__ */ import_react36.default.createElement(Viewport.Root, {
|
|
1768
1509
|
activeView,
|
|
1769
1510
|
classNames: "grow plb-1"
|
|
1770
|
-
}, /* @__PURE__ */
|
|
1511
|
+
}, /* @__PURE__ */ import_react36.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react36.default.createElement(InvitationManagerView, {
|
|
1771
1512
|
id: "showing qr",
|
|
1772
1513
|
emoji
|
|
1773
|
-
}, /* @__PURE__ */
|
|
1514
|
+
}, /* @__PURE__ */ import_react36.default.createElement("p", {
|
|
1774
1515
|
className: "text-sm mlb-1 font-normal text-center"
|
|
1775
|
-
}, t(multiUse ? "invite many qr label" : "invite one qr label")), /* @__PURE__ */
|
|
1516
|
+
}, t(multiUse ? "invite many qr label" : "invite one qr label")), /* @__PURE__ */ import_react36.default.createElement("div", {
|
|
1776
1517
|
role: "none",
|
|
1777
|
-
className: (0,
|
|
1778
|
-
}, /* @__PURE__ */
|
|
1518
|
+
className: (0, import_react_ui_theme20.mx)(import_react_ui_theme20.descriptionText, "is-full max-is-[14rem] relative")
|
|
1519
|
+
}, /* @__PURE__ */ import_react36.default.createElement(import_react_qr_rounded.QR, {
|
|
1779
1520
|
rounding: 100,
|
|
1780
1521
|
backgroundColor: "transparent",
|
|
1781
1522
|
color: "currentColor",
|
|
1782
|
-
className: (0,
|
|
1523
|
+
className: (0, import_react_ui_theme20.mx)("is-full bs-full p-2", showAuthCode && "invisible"),
|
|
1783
1524
|
"aria-labelledby": qrLabel,
|
|
1784
1525
|
errorCorrectionLevel: "Q",
|
|
1785
1526
|
cutout: true
|
|
1786
|
-
}, invitationUrl ?? "never"), /* @__PURE__ */
|
|
1527
|
+
}, invitationUrl ?? "never"), /* @__PURE__ */ import_react36.default.createElement(Centered, null, /* @__PURE__ */ import_react36.default.createElement(Emoji, {
|
|
1787
1528
|
text: emoji
|
|
1788
|
-
}))), /* @__PURE__ */
|
|
1529
|
+
}))), /* @__PURE__ */ import_react36.default.createElement("span", {
|
|
1789
1530
|
id: qrLabel,
|
|
1790
1531
|
className: "sr-only"
|
|
1791
|
-
}, t("qr label")), /* @__PURE__ */
|
|
1532
|
+
}, t("qr label")), /* @__PURE__ */ import_react36.default.createElement(import_react_ui17.Clipboard.Button, {
|
|
1792
1533
|
variant: "ghost",
|
|
1793
1534
|
value: invitationUrl ?? "never"
|
|
1794
|
-
})), /* @__PURE__ */
|
|
1535
|
+
})), /* @__PURE__ */ import_react36.default.createElement(InvitationManagerView, {
|
|
1795
1536
|
id: "showing auth code"
|
|
1796
|
-
}, /* @__PURE__ */
|
|
1537
|
+
}, /* @__PURE__ */ import_react36.default.createElement(Label, null, t("auth code message")), /* @__PURE__ */ import_react36.default.createElement(AuthCode, {
|
|
1797
1538
|
code: authCode,
|
|
1798
1539
|
large: true,
|
|
1799
1540
|
classNames: "text-black dark:text-white"
|
|
1800
|
-
}), /* @__PURE__ */
|
|
1541
|
+
}), /* @__PURE__ */ import_react36.default.createElement(Label, null, t("auth other device emoji message")), emoji && /* @__PURE__ */ import_react36.default.createElement(Emoji, {
|
|
1801
1542
|
text: emoji
|
|
1802
|
-
})), /* @__PURE__ */
|
|
1543
|
+
})), /* @__PURE__ */ import_react36.default.createElement(InvitationManagerView, {
|
|
1803
1544
|
id: "showing final"
|
|
1804
|
-
}, statusValue > 0 ? /* @__PURE__ */
|
|
1805
|
-
className: (0,
|
|
1806
|
-
}) : /* @__PURE__ */
|
|
1807
|
-
className: (0,
|
|
1808
|
-
})))), /* @__PURE__ */
|
|
1545
|
+
}, statusValue > 0 ? /* @__PURE__ */ import_react36.default.createElement(import_react35.Check, {
|
|
1546
|
+
className: (0, import_react_ui_theme20.mx)("m-1.5", (0, import_react_ui_theme20.getSize)(6))
|
|
1547
|
+
}) : /* @__PURE__ */ import_react36.default.createElement(import_react35.X, {
|
|
1548
|
+
className: (0, import_react_ui_theme20.mx)("m-1.5", (0, import_react_ui_theme20.getSize)(6))
|
|
1549
|
+
})))), /* @__PURE__ */ import_react36.default.createElement(Actions, {
|
|
1809
1550
|
classNames: "mbs-4"
|
|
1810
|
-
}, /* @__PURE__ */
|
|
1551
|
+
}, /* @__PURE__ */ import_react36.default.createElement(Action, {
|
|
1811
1552
|
disabled: !active,
|
|
1812
1553
|
onClick: () => send?.({
|
|
1813
1554
|
type: "deselectInvitation"
|
|
@@ -1816,9 +1557,9 @@ var InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCo
|
|
|
1816
1557
|
};
|
|
1817
1558
|
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/steps/ConfirmReset.tsx";
|
|
1818
1559
|
var ConfirmReset = ({ active, onCancel, onConfirm, mode }) => {
|
|
1819
|
-
const { t } = (0,
|
|
1820
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
1821
|
-
const [pending, setPending] = (0,
|
|
1560
|
+
const { t } = (0, import_react_ui18.useTranslation)("os");
|
|
1561
|
+
const [validationMessage, setValidationMessage] = (0, import_react38.useState)("");
|
|
1562
|
+
const [pending, setPending] = (0, import_react38.useState)(false);
|
|
1822
1563
|
const processReset = async () => {
|
|
1823
1564
|
setPending(true);
|
|
1824
1565
|
return onConfirm?.().then(() => setPending(false), (error) => {
|
|
@@ -1832,7 +1573,7 @@ var ConfirmReset = ({ active, onCancel, onConfirm, mode }) => {
|
|
|
1832
1573
|
setPending(false);
|
|
1833
1574
|
});
|
|
1834
1575
|
};
|
|
1835
|
-
return /* @__PURE__ */
|
|
1576
|
+
return /* @__PURE__ */ import_react38.default.createElement(ConfirmResetImpl, {
|
|
1836
1577
|
disabled: !active,
|
|
1837
1578
|
pending,
|
|
1838
1579
|
validationMessage,
|
|
@@ -1842,20 +1583,20 @@ var ConfirmReset = ({ active, onCancel, onConfirm, mode }) => {
|
|
|
1842
1583
|
});
|
|
1843
1584
|
};
|
|
1844
1585
|
var ConfirmResetImpl = ({ disabled, pending, validationMessage, onConfirm, onCancel, mode }) => {
|
|
1845
|
-
const { t } = (0,
|
|
1586
|
+
const { t } = (0, import_react_ui18.useTranslation)("os");
|
|
1846
1587
|
const confirmationValue = t("confirmation value");
|
|
1847
|
-
const [inputValue, setInputValue] = (0,
|
|
1588
|
+
const [inputValue, setInputValue] = (0, import_react38.useState)("");
|
|
1848
1589
|
const testIdAffix = mode === "join new identity" ? "join-new-identity" : mode === "recover" ? "recover" : "reset-storage";
|
|
1849
|
-
return /* @__PURE__ */
|
|
1590
|
+
return /* @__PURE__ */ import_react38.default.createElement(import_react38.default.Fragment, null, /* @__PURE__ */ import_react38.default.createElement("div", {
|
|
1850
1591
|
role: "none",
|
|
1851
1592
|
className: "grow flex flex-col gap-2 justify-center"
|
|
1852
|
-
}, /* @__PURE__ */
|
|
1593
|
+
}, /* @__PURE__ */ import_react38.default.createElement(import_react_ui18.Message.Root, {
|
|
1853
1594
|
valence: "error"
|
|
1854
|
-
}, /* @__PURE__ */
|
|
1855
|
-
className: (0,
|
|
1856
|
-
}), t("sign out chooser title")), /* @__PURE__ */
|
|
1595
|
+
}, /* @__PURE__ */ import_react38.default.createElement(import_react_ui18.Message.Title, null, /* @__PURE__ */ import_react38.default.createElement(import_react37.Warning, {
|
|
1596
|
+
className: (0, import_react_ui_theme21.mx)((0, import_react_ui_theme21.getSize)(6), "inline mie-2")
|
|
1597
|
+
}), t("sign out chooser title")), /* @__PURE__ */ import_react38.default.createElement(import_react_ui18.Message.Body, null, t("sign out chooser message"))), /* @__PURE__ */ import_react38.default.createElement(Input, {
|
|
1857
1598
|
validationMessage,
|
|
1858
|
-
label: /* @__PURE__ */
|
|
1599
|
+
label: /* @__PURE__ */ import_react38.default.createElement(StepHeading, {
|
|
1859
1600
|
className: "text-start mlb-2"
|
|
1860
1601
|
}, t(mode === "join new identity" ? "join new identity input label" : mode === "recover" ? "recover reset input label" : "reset storage input label", {
|
|
1861
1602
|
confirmationValue
|
|
@@ -1866,11 +1607,11 @@ var ConfirmResetImpl = ({ disabled, pending, validationMessage, onConfirm, onCan
|
|
|
1866
1607
|
confirmationValue
|
|
1867
1608
|
}),
|
|
1868
1609
|
onChange: ({ target: { value } }) => setInputValue(value)
|
|
1869
|
-
})), /* @__PURE__ */
|
|
1610
|
+
})), /* @__PURE__ */ import_react38.default.createElement(Actions, null, onCancel && /* @__PURE__ */ import_react38.default.createElement(Action, {
|
|
1870
1611
|
disabled,
|
|
1871
1612
|
onClick: onCancel,
|
|
1872
1613
|
"data-testid": `${testIdAffix}.reset-identity-cancel`
|
|
1873
|
-
}, t("cancel label")), onConfirm && /* @__PURE__ */
|
|
1614
|
+
}, t("cancel label")), onConfirm && /* @__PURE__ */ import_react38.default.createElement(Action, {
|
|
1874
1615
|
variant: "destructive",
|
|
1875
1616
|
disabled: disabled || pending || inputValue !== confirmationValue,
|
|
1876
1617
|
onClick: onConfirm,
|
|
@@ -1881,15 +1622,23 @@ var __dxlog_file6 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/I
|
|
|
1881
1622
|
var viewStyles = "pbs-1 pbe-3 pli-3";
|
|
1882
1623
|
var getHueValue = (identity) => identity?.profile?.data?.hue || (0, import_util5.hexToHue)(identity?.identityKey.toHex() ?? "0");
|
|
1883
1624
|
var getEmojiValue = (identity) => identity?.profile?.data?.emoji || (0, import_util5.hexToEmoji)(identity?.identityKey.toHex() ?? "0");
|
|
1884
|
-
var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, connectionState, onChangeConnectionState }) => {
|
|
1625
|
+
var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, connectionState, onChangeConnectionState, onManageCredentials }) => {
|
|
1885
1626
|
const fallbackValue = (0, import_util5.keyToFallback)(identity.identityKey);
|
|
1886
|
-
const { t } = (0,
|
|
1887
|
-
const [displayName,
|
|
1888
|
-
const [emoji, setEmojiDirectly] = (0,
|
|
1889
|
-
const [hue, setHueDirectly] = (0,
|
|
1890
|
-
const
|
|
1891
|
-
|
|
1892
|
-
|
|
1627
|
+
const { t } = (0, import_react_ui15.useTranslation)("os");
|
|
1628
|
+
const [displayName, setDisplayNameDirectly] = (0, import_react29.useState)(identity.profile?.displayName ?? "");
|
|
1629
|
+
const [emoji, setEmojiDirectly] = (0, import_react29.useState)(getEmojiValue(identity));
|
|
1630
|
+
const [hue, setHueDirectly] = (0, import_react29.useState)(getHueValue(identity));
|
|
1631
|
+
const updateDisplayName = (0, import_react29.useMemo)(() => (0, import_async.debounce)((nextDisplayName) => onUpdateProfile?.({
|
|
1632
|
+
...identity.profile,
|
|
1633
|
+
displayName: nextDisplayName
|
|
1634
|
+
}), 3e3), [
|
|
1635
|
+
onUpdateProfile,
|
|
1636
|
+
identity.profile
|
|
1637
|
+
]);
|
|
1638
|
+
const setDisplayName = (nextDisplayName) => {
|
|
1639
|
+
setDisplayNameDirectly(nextDisplayName);
|
|
1640
|
+
updateDisplayName(nextDisplayName);
|
|
1641
|
+
};
|
|
1893
1642
|
const setEmoji = (nextEmoji) => {
|
|
1894
1643
|
setEmojiDirectly(nextEmoji);
|
|
1895
1644
|
void onUpdateProfile?.({
|
|
@@ -1911,83 +1660,83 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
|
|
|
1911
1660
|
});
|
|
1912
1661
|
};
|
|
1913
1662
|
const isConnected = connectionState === import_mesh2.ConnectionState.ONLINE;
|
|
1914
|
-
return /* @__PURE__ */
|
|
1663
|
+
return /* @__PURE__ */ import_react29.default.createElement(Heading, {
|
|
1915
1664
|
titleId,
|
|
1916
1665
|
title,
|
|
1917
|
-
corner: /* @__PURE__ */
|
|
1666
|
+
corner: /* @__PURE__ */ import_react29.default.createElement(CloseButton, {
|
|
1918
1667
|
onDone
|
|
1919
1668
|
})
|
|
1920
|
-
}, /* @__PURE__ */
|
|
1669
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Root, {
|
|
1921
1670
|
size: 16,
|
|
1922
1671
|
variant: "circle",
|
|
1923
1672
|
status: isConnected ? "active" : "error",
|
|
1924
1673
|
hue: hue || fallbackValue.hue
|
|
1925
|
-
}, /* @__PURE__ */
|
|
1674
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Root, {
|
|
1926
1675
|
classNames: "flex justify-center"
|
|
1927
|
-
}, /* @__PURE__ */
|
|
1676
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Frame, {
|
|
1928
1677
|
classNames: "relative z-[2] -mli-4 chromatic-ignore"
|
|
1929
|
-
}, /* @__PURE__ */
|
|
1678
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Fallback, {
|
|
1930
1679
|
text: emoji || fallbackValue.emoji
|
|
1931
|
-
}))), /* @__PURE__ */
|
|
1680
|
+
}))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Label, {
|
|
1932
1681
|
classNames: "sr-only",
|
|
1933
1682
|
"data-testid": "identityHeading.displayName"
|
|
1934
|
-
}, identity.profile?.displayName ?? (0, import_display_name3.generateName)(identity.identityKey.toHex())), /* @__PURE__ */
|
|
1683
|
+
}, identity.profile?.displayName ?? (0, import_display_name3.generateName)(identity.identityKey.toHex())), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Input.Root, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Input.Label, {
|
|
1935
1684
|
srOnly: true
|
|
1936
|
-
}, t("display name input label")), /* @__PURE__ */
|
|
1685
|
+
}, t("display name input label")), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Input.TextInput, {
|
|
1937
1686
|
variant: "subdued",
|
|
1938
1687
|
"data-testid": "display-name-input",
|
|
1939
1688
|
placeholder: t("display name input placeholder"),
|
|
1940
1689
|
classNames: "mbs-2 text-center font-light text-xl",
|
|
1941
1690
|
value: displayName,
|
|
1942
|
-
onChange: ({ target: { value } }) => setDisplayName(value)
|
|
1943
|
-
|
|
1944
|
-
...identity.profile,
|
|
1945
|
-
displayName: value
|
|
1946
|
-
})
|
|
1947
|
-
})), /* @__PURE__ */ import_react34.default.createElement(import_react_ui17.Toolbar.Root, {
|
|
1691
|
+
onChange: ({ target: { value } }) => setDisplayName(value)
|
|
1692
|
+
})), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Root, {
|
|
1948
1693
|
classNames: "flex justify-center items-center gap-1 pt-3"
|
|
1949
|
-
}, /* @__PURE__ */
|
|
1694
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui_pickers.EmojiPickerToolbarButton, {
|
|
1950
1695
|
emoji,
|
|
1951
1696
|
onChangeEmoji: setEmoji,
|
|
1952
1697
|
classNames: "bs-[--rail-action]"
|
|
1953
|
-
}), /* @__PURE__ */
|
|
1954
|
-
hue,
|
|
1955
|
-
|
|
1698
|
+
}), /* @__PURE__ */ import_react29.default.createElement(import_react_ui_pickers.HuePicker, {
|
|
1699
|
+
value: hue,
|
|
1700
|
+
onChange: setHue,
|
|
1956
1701
|
classNames: "bs-[--rail-action]"
|
|
1957
|
-
}), /* @__PURE__ */
|
|
1958
|
-
asChild: true
|
|
1959
|
-
}, /* @__PURE__ */ import_react34.default.createElement(import_react_ui17.Toolbar.Button, {
|
|
1702
|
+
}), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Clipboard.IconButton, {
|
|
1960
1703
|
classNames: "bs-[--rail-action]",
|
|
1961
1704
|
"data-testid": "update-profile-form-copy-key",
|
|
1962
|
-
|
|
1963
|
-
|
|
1705
|
+
label: t("copy self did label"),
|
|
1706
|
+
value: identity.did
|
|
1707
|
+
}), onManageCredentials && /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Root, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Trigger, {
|
|
1708
|
+
asChild: true
|
|
1709
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Button, {
|
|
1710
|
+
classNames: "bs-[--rail-action]",
|
|
1711
|
+
onClick: onManageCredentials
|
|
1712
|
+
}, /* @__PURE__ */ import_react29.default.createElement("span", {
|
|
1964
1713
|
className: "sr-only"
|
|
1965
|
-
}, t(
|
|
1966
|
-
className: (0,
|
|
1967
|
-
}))), /* @__PURE__ */
|
|
1714
|
+
}, t("manage credentials label")), /* @__PURE__ */ import_react29.default.createElement(import_react28.IdentificationCard, {
|
|
1715
|
+
className: (0, import_react_ui_theme19.getSize)(5)
|
|
1716
|
+
}))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Portal, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Content, {
|
|
1968
1717
|
side: "bottom"
|
|
1969
|
-
}, t(
|
|
1718
|
+
}, t("manage credentials label"), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Arrow, null)))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Root, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Trigger, {
|
|
1970
1719
|
asChild: true
|
|
1971
|
-
}, /* @__PURE__ */
|
|
1720
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Button, {
|
|
1972
1721
|
classNames: [
|
|
1973
1722
|
"bs-[--rail-action]",
|
|
1974
|
-
!isConnected &&
|
|
1723
|
+
!isConnected && import_react_ui_theme19.errorText
|
|
1975
1724
|
],
|
|
1976
1725
|
onClick: () => onChangeConnectionState?.(isConnected ? import_mesh2.ConnectionState.OFFLINE : import_mesh2.ConnectionState.ONLINE)
|
|
1977
|
-
}, /* @__PURE__ */
|
|
1726
|
+
}, /* @__PURE__ */ import_react29.default.createElement("span", {
|
|
1978
1727
|
className: "sr-only"
|
|
1979
|
-
}, t(isConnected ? "disconnect label" : "connect label")), isConnected ? /* @__PURE__ */
|
|
1980
|
-
className: (0,
|
|
1981
|
-
}) : /* @__PURE__ */
|
|
1982
|
-
className: (0,
|
|
1983
|
-
}))), /* @__PURE__ */
|
|
1728
|
+
}, t(isConnected ? "disconnect label" : "connect label")), isConnected ? /* @__PURE__ */ import_react29.default.createElement(import_react28.PlugsConnected, {
|
|
1729
|
+
className: (0, import_react_ui_theme19.getSize)(5)
|
|
1730
|
+
}) : /* @__PURE__ */ import_react29.default.createElement(import_react28.Plugs, {
|
|
1731
|
+
className: (0, import_react_ui_theme19.getSize)(5)
|
|
1732
|
+
}))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Portal, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Content, {
|
|
1984
1733
|
side: "bottom"
|
|
1985
|
-
}, t(isConnected ? "disconnect label" : "connect label"), /* @__PURE__ */
|
|
1734
|
+
}, t(isConnected ? "disconnect label" : "connect label"), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Arrow, null)))))));
|
|
1986
1735
|
};
|
|
1987
1736
|
var IdentityPanelImpl = (props) => {
|
|
1988
|
-
const { identity, titleId, activeView, onUpdateProfile, onResetStorage, onRecover, onJoinNewIdentity, IdentityActionChooser: IdentityActionChooserComponent = IdentityActionChooser, InvitationManager: InvitationManagerComponent = InvitationManager, connectionState, onChangeConnectionState, onDone, ...rest } = props;
|
|
1989
|
-
const { t } = (0,
|
|
1990
|
-
const title = (0,
|
|
1737
|
+
const { identity, titleId, activeView, onUpdateProfile, onResetStorage, onRecover, onJoinNewIdentity, IdentityActionChooser: IdentityActionChooserComponent = IdentityActionChooser, InvitationManager: InvitationManagerComponent = InvitationManager, connectionState, onChangeConnectionState, onDone, onManageCredentials, ...rest } = props;
|
|
1738
|
+
const { t } = (0, import_react_ui15.useTranslation)("os");
|
|
1739
|
+
const title = (0, import_react29.useMemo)(() => {
|
|
1991
1740
|
switch (activeView) {
|
|
1992
1741
|
case "device invitation manager":
|
|
1993
1742
|
return t("choose add device label");
|
|
@@ -2000,7 +1749,7 @@ var IdentityPanelImpl = (props) => {
|
|
|
2000
1749
|
]);
|
|
2001
1750
|
const onCancelReset = () => rest.send?.("unchooseAction");
|
|
2002
1751
|
const hideRecover = rest.agentStatus !== "created";
|
|
2003
|
-
return /* @__PURE__ */
|
|
1752
|
+
return /* @__PURE__ */ import_react29.default.createElement(import_react29.default.Fragment, null, /* @__PURE__ */ import_react29.default.createElement(IdentityHeading, {
|
|
2004
1753
|
identity,
|
|
2005
1754
|
titleId,
|
|
2006
1755
|
title,
|
|
@@ -2008,45 +1757,46 @@ var IdentityPanelImpl = (props) => {
|
|
|
2008
1757
|
onDone,
|
|
2009
1758
|
onUpdateProfile,
|
|
2010
1759
|
connectionState,
|
|
2011
|
-
onChangeConnectionState
|
|
2012
|
-
|
|
1760
|
+
onChangeConnectionState,
|
|
1761
|
+
onManageCredentials
|
|
1762
|
+
}), /* @__PURE__ */ import_react29.default.createElement(Viewport.Root, {
|
|
2013
1763
|
activeView
|
|
2014
|
-
}, /* @__PURE__ */
|
|
1764
|
+
}, /* @__PURE__ */ import_react29.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2015
1765
|
id: "identity action chooser",
|
|
2016
1766
|
classNames: viewStyles
|
|
2017
|
-
}, /* @__PURE__ */
|
|
1767
|
+
}, /* @__PURE__ */ import_react29.default.createElement(IdentityActionChooserComponent, {
|
|
2018
1768
|
active: activeView === "identity action chooser",
|
|
2019
1769
|
...rest,
|
|
2020
1770
|
connectionState
|
|
2021
|
-
})), /* @__PURE__ */
|
|
1771
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2022
1772
|
id: "device invitation manager",
|
|
2023
1773
|
classNames: viewStyles
|
|
2024
|
-
}, /* @__PURE__ */
|
|
1774
|
+
}, /* @__PURE__ */ import_react29.default.createElement(InvitationManagerComponent, {
|
|
2025
1775
|
active: activeView === "device invitation manager",
|
|
2026
1776
|
...rest,
|
|
2027
1777
|
invitationUrl: rest.createInvitationUrl(rest.invitationCode)
|
|
2028
|
-
})), /* @__PURE__ */
|
|
1778
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2029
1779
|
classNames: viewStyles,
|
|
2030
1780
|
id: "confirm join new identity"
|
|
2031
|
-
}, /* @__PURE__ */
|
|
1781
|
+
}, /* @__PURE__ */ import_react29.default.createElement(ConfirmReset, {
|
|
2032
1782
|
active: activeView === "confirm join new identity",
|
|
2033
1783
|
...rest,
|
|
2034
1784
|
mode: "join new identity",
|
|
2035
1785
|
onConfirm: onJoinNewIdentity,
|
|
2036
1786
|
onCancel: onCancelReset
|
|
2037
|
-
})), /* @__PURE__ */
|
|
1787
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2038
1788
|
classNames: viewStyles,
|
|
2039
1789
|
id: "confirm recover"
|
|
2040
|
-
}, /* @__PURE__ */
|
|
1790
|
+
}, /* @__PURE__ */ import_react29.default.createElement(ConfirmReset, {
|
|
2041
1791
|
active: activeView === "confirm recover",
|
|
2042
1792
|
...rest,
|
|
2043
1793
|
mode: "recover",
|
|
2044
1794
|
onConfirm: onRecover,
|
|
2045
1795
|
onCancel: onCancelReset
|
|
2046
|
-
})), /* @__PURE__ */
|
|
1796
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2047
1797
|
classNames: viewStyles,
|
|
2048
1798
|
id: "confirm reset storage"
|
|
2049
|
-
}, /* @__PURE__ */
|
|
1799
|
+
}, /* @__PURE__ */ import_react29.default.createElement(ConfirmReset, {
|
|
2050
1800
|
active: activeView === "confirm reset storage",
|
|
2051
1801
|
...rest,
|
|
2052
1802
|
mode: "reset storage",
|
|
@@ -2056,13 +1806,13 @@ var IdentityPanelImpl = (props) => {
|
|
|
2056
1806
|
};
|
|
2057
1807
|
var IdentityPanelWithInvitationImpl = ({ invitation, ...props }) => {
|
|
2058
1808
|
const invitationStatus = (0, import_invitations2.useInvitationStatus)(invitation);
|
|
2059
|
-
return /* @__PURE__ */
|
|
1809
|
+
return /* @__PURE__ */ import_react29.default.createElement(IdentityPanelImpl, {
|
|
2060
1810
|
...props,
|
|
2061
1811
|
...invitationStatus
|
|
2062
1812
|
});
|
|
2063
1813
|
};
|
|
2064
1814
|
var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code, initialDisposition = "default", ...props }) => {
|
|
2065
|
-
const titleId = (0,
|
|
1815
|
+
const titleId = (0, import_react_ui15.useId)("identityPanel__heading", propsTitleId);
|
|
2066
1816
|
const client = (0, import_react_client2.useClient)();
|
|
2067
1817
|
const devices = (0, import_halo2.useDevices)();
|
|
2068
1818
|
const identity = (0, import_halo2.useIdentity)();
|
|
@@ -2074,7 +1824,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2074
1824
|
if (!identity) {
|
|
2075
1825
|
import_log.log.error("IdentityPanel rendered with no active identity.", void 0, {
|
|
2076
1826
|
F: __dxlog_file6,
|
|
2077
|
-
L:
|
|
1827
|
+
L: 272,
|
|
2078
1828
|
S: void 0,
|
|
2079
1829
|
C: (f, a) => f(...a)
|
|
2080
1830
|
});
|
|
@@ -2087,11 +1837,11 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2087
1837
|
});
|
|
2088
1838
|
const { swarm: connectionState } = (0, import_mesh2.useNetworkStatus)();
|
|
2089
1839
|
const handleChangeConnectionState = async (nextState) => client?.mesh.updateConfig(nextState);
|
|
2090
|
-
(0,
|
|
1840
|
+
(0, import_react29.useEffect)(() => {
|
|
2091
1841
|
const subscription = identityService.subscribe((state) => {
|
|
2092
1842
|
(0, import_log.log)("[state]", state, {
|
|
2093
1843
|
F: __dxlog_file6,
|
|
2094
|
-
L:
|
|
1844
|
+
L: 285,
|
|
2095
1845
|
S: void 0,
|
|
2096
1846
|
C: (f, a) => f(...a)
|
|
2097
1847
|
});
|
|
@@ -2100,7 +1850,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2100
1850
|
}, [
|
|
2101
1851
|
identityService
|
|
2102
1852
|
]);
|
|
2103
|
-
const activeView = (0,
|
|
1853
|
+
const activeView = (0, import_react29.useMemo)(() => {
|
|
2104
1854
|
switch (true) {
|
|
2105
1855
|
case identityState.matches("choosingAction"):
|
|
2106
1856
|
return "identity action chooser";
|
|
@@ -2137,34 +1887,34 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2137
1887
|
onChangeConnectionState: handleChangeConnectionState,
|
|
2138
1888
|
...agentProps
|
|
2139
1889
|
};
|
|
2140
|
-
return identityState.context.invitation ? /* @__PURE__ */
|
|
1890
|
+
return identityState.context.invitation ? /* @__PURE__ */ import_react29.default.createElement(IdentityPanelWithInvitationImpl, {
|
|
2141
1891
|
...implProps,
|
|
2142
1892
|
invitation: identityState.context.invitation
|
|
2143
|
-
}) : /* @__PURE__ */
|
|
1893
|
+
}) : /* @__PURE__ */ import_react29.default.createElement(IdentityPanelImpl, implProps);
|
|
2144
1894
|
};
|
|
2145
|
-
var JoinHeading = /* @__PURE__ */ (0,
|
|
2146
|
-
const { t } = (0,
|
|
2147
|
-
const exitButton = /* @__PURE__ */
|
|
1895
|
+
var JoinHeading = /* @__PURE__ */ (0, import_react41.forwardRef)(({ mode, titleId, exitActionParent, onExit }, forwardedRef) => {
|
|
1896
|
+
const { t } = (0, import_react_ui20.useTranslation)("os");
|
|
1897
|
+
const exitButton = /* @__PURE__ */ import_react41.default.createElement(import_react_ui20.Button, {
|
|
2148
1898
|
variant: "ghost",
|
|
2149
1899
|
...onExit && {
|
|
2150
1900
|
onClick: onExit
|
|
2151
1901
|
},
|
|
2152
|
-
classNames: (0,
|
|
1902
|
+
classNames: (0, import_react_ui_theme22.mx)(import_react_ui_theme22.descriptionText, "plb-0 pli-2 absolute block-start-0 inline-end-0 z-[1]"),
|
|
2153
1903
|
"data-testid": "join-exit"
|
|
2154
|
-
}, /* @__PURE__ */
|
|
1904
|
+
}, /* @__PURE__ */ import_react41.default.createElement(import_react40.X, {
|
|
2155
1905
|
weight: "bold",
|
|
2156
|
-
className: (0,
|
|
2157
|
-
}), /* @__PURE__ */
|
|
1906
|
+
className: (0, import_react_ui_theme22.getSize)(4)
|
|
1907
|
+
}), /* @__PURE__ */ import_react41.default.createElement("span", {
|
|
2158
1908
|
className: "sr-only"
|
|
2159
1909
|
}, t("exit label")));
|
|
2160
|
-
return /* @__PURE__ */
|
|
1910
|
+
return /* @__PURE__ */ import_react41.default.createElement(Heading, {
|
|
2161
1911
|
ref: forwardedRef,
|
|
2162
1912
|
titleId,
|
|
2163
1913
|
title: t(mode === "halo-only" ? "selecting identity heading" : "joining space heading"),
|
|
2164
1914
|
...mode === "halo-only" ? {
|
|
2165
1915
|
titleSrOnly: true
|
|
2166
1916
|
} : {
|
|
2167
|
-
corner: exitActionParent ? /* @__PURE__ */ (0,
|
|
1917
|
+
corner: exitActionParent ? /* @__PURE__ */ (0, import_react41.cloneElement)(exitActionParent, {}, exitButton) : exitButton
|
|
2168
1918
|
},
|
|
2169
1919
|
titleSrOnly: mode === "halo-only"
|
|
2170
1920
|
});
|
|
@@ -2669,7 +2419,7 @@ var defaultCodeFromUrl = (invitationType, text) => {
|
|
|
2669
2419
|
}
|
|
2670
2420
|
};
|
|
2671
2421
|
var useJoinMachine = (client, options) => {
|
|
2672
|
-
const redeemHaloInvitationCode = (0,
|
|
2422
|
+
const redeemHaloInvitationCode = (0, import_react43.useCallback)(({ halo }) => {
|
|
2673
2423
|
if (halo.unredeemedCode) {
|
|
2674
2424
|
try {
|
|
2675
2425
|
const invitation = import_invitations6.InvitationEncoder.decode(defaultCodeFromUrl("halo", halo.unredeemedCode));
|
|
@@ -2694,7 +2444,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2694
2444
|
}, [
|
|
2695
2445
|
client
|
|
2696
2446
|
]);
|
|
2697
|
-
const redeemSpaceInvitationCode = (0,
|
|
2447
|
+
const redeemSpaceInvitationCode = (0, import_react43.useCallback)(({ space }) => {
|
|
2698
2448
|
if (space.unredeemedCode) {
|
|
2699
2449
|
try {
|
|
2700
2450
|
const invitation = import_invitations6.InvitationEncoder.decode(defaultCodeFromUrl("space", space.unredeemedCode));
|
|
@@ -2719,7 +2469,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2719
2469
|
}, [
|
|
2720
2470
|
client
|
|
2721
2471
|
]);
|
|
2722
|
-
const invalidateHaloInvitationCode = (0,
|
|
2472
|
+
const invalidateHaloInvitationCode = (0, import_react43.useCallback)(({ halo }) => {
|
|
2723
2473
|
if (halo.unredeemedCode) {
|
|
2724
2474
|
options?.onInvalidateInvitationCode?.(halo.unredeemedCode);
|
|
2725
2475
|
return {
|
|
@@ -2732,7 +2482,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2732
2482
|
}, [
|
|
2733
2483
|
options?.onInvalidateInvitationCode
|
|
2734
2484
|
]);
|
|
2735
|
-
const invalidateSpaceInvitationCode = (0,
|
|
2485
|
+
const invalidateSpaceInvitationCode = (0, import_react43.useCallback)(({ space }) => {
|
|
2736
2486
|
if (space.unredeemedCode) {
|
|
2737
2487
|
options?.onInvalidateInvitationCode?.(space.unredeemedCode);
|
|
2738
2488
|
return {
|
|
@@ -2745,7 +2495,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2745
2495
|
}, [
|
|
2746
2496
|
options?.onInvalidateInvitationCode
|
|
2747
2497
|
]);
|
|
2748
|
-
return (0,
|
|
2498
|
+
return (0, import_react42.useMachine)(joinMachine, {
|
|
2749
2499
|
...options,
|
|
2750
2500
|
actions: {
|
|
2751
2501
|
...options?.actions,
|
|
@@ -2767,11 +2517,11 @@ var useJoinMachine = (client, options) => {
|
|
|
2767
2517
|
var AdditionMethodChooser = (viewStateProps) => {
|
|
2768
2518
|
const disabled = !viewStateProps.active;
|
|
2769
2519
|
const { send } = viewStateProps;
|
|
2770
|
-
const { t } = (0,
|
|
2520
|
+
const { t } = (0, import_react_ui21.useTranslation)("os");
|
|
2771
2521
|
const sharedButtonProps = {
|
|
2772
2522
|
disabled,
|
|
2773
|
-
after: /* @__PURE__ */
|
|
2774
|
-
className: (0,
|
|
2523
|
+
after: /* @__PURE__ */ import_react45.default.createElement(import_react44.CaretRight, {
|
|
2524
|
+
className: (0, import_react_ui_theme23.getSize)(4),
|
|
2775
2525
|
weight: "bold"
|
|
2776
2526
|
}),
|
|
2777
2527
|
slots: {
|
|
@@ -2780,35 +2530,35 @@ var AdditionMethodChooser = (viewStateProps) => {
|
|
|
2780
2530
|
}
|
|
2781
2531
|
}
|
|
2782
2532
|
};
|
|
2783
|
-
return /* @__PURE__ */
|
|
2533
|
+
return /* @__PURE__ */ import_react45.default.createElement(import_react45.default.Fragment, null, /* @__PURE__ */ import_react45.default.createElement(StepHeading, null, t("addition method chooser title")), /* @__PURE__ */ import_react45.default.createElement("div", {
|
|
2784
2534
|
role: "none",
|
|
2785
2535
|
className: "flex flex-col gap-1 grow"
|
|
2786
|
-
}, /* @__PURE__ */
|
|
2536
|
+
}, /* @__PURE__ */ import_react45.default.createElement(CompoundButton, {
|
|
2787
2537
|
...sharedButtonProps,
|
|
2788
2538
|
description: t("create identity description"),
|
|
2789
|
-
before: /* @__PURE__ */
|
|
2790
|
-
className: (0,
|
|
2539
|
+
before: /* @__PURE__ */ import_react45.default.createElement(import_react44.Plus, {
|
|
2540
|
+
className: (0, import_react_ui_theme23.getSize)(6)
|
|
2791
2541
|
}),
|
|
2792
2542
|
onClick: () => send({
|
|
2793
2543
|
type: "createIdentity"
|
|
2794
2544
|
}),
|
|
2795
2545
|
"data-autofocus": "choosingAuthMethod",
|
|
2796
2546
|
"data-testid": "identity-chooser.create-identity"
|
|
2797
|
-
}, t("create identity label")), /* @__PURE__ */
|
|
2547
|
+
}, t("create identity label")), /* @__PURE__ */ import_react45.default.createElement(CompoundButton, {
|
|
2798
2548
|
...sharedButtonProps,
|
|
2799
2549
|
description: t("join identity description"),
|
|
2800
|
-
before: /* @__PURE__ */
|
|
2801
|
-
className: (0,
|
|
2550
|
+
before: /* @__PURE__ */ import_react45.default.createElement(import_react44.QrCode, {
|
|
2551
|
+
className: (0, import_react_ui_theme23.getSize)(6)
|
|
2802
2552
|
}),
|
|
2803
2553
|
onClick: () => send({
|
|
2804
2554
|
type: "acceptHaloInvitation"
|
|
2805
2555
|
}),
|
|
2806
2556
|
"data-testid": "identity-chooser.join-identity"
|
|
2807
|
-
}, t("join identity label")), /* @__PURE__ */
|
|
2557
|
+
}, t("join identity label")), /* @__PURE__ */ import_react45.default.createElement(CompoundButton, {
|
|
2808
2558
|
...sharedButtonProps,
|
|
2809
2559
|
description: t("recover identity description"),
|
|
2810
|
-
before: /* @__PURE__ */
|
|
2811
|
-
className: (0,
|
|
2560
|
+
before: /* @__PURE__ */ import_react45.default.createElement(import_react44.Textbox, {
|
|
2561
|
+
className: (0, import_react_ui_theme23.getSize)(6)
|
|
2812
2562
|
}),
|
|
2813
2563
|
onClick: () => send({
|
|
2814
2564
|
type: "recoverIdentity"
|
|
@@ -2819,31 +2569,31 @@ var AdditionMethodChooser = (viewStateProps) => {
|
|
|
2819
2569
|
var IdentityAdded = (props) => {
|
|
2820
2570
|
const { mode, addedIdentity, active, send, onDone, doneActionParent } = props;
|
|
2821
2571
|
const disabled = !active;
|
|
2822
|
-
const { t } = (0,
|
|
2572
|
+
const { t } = (0, import_react_ui22.useTranslation)("os");
|
|
2823
2573
|
const addedIdentityHex = addedIdentity?.identityKey.toHex() ?? "0";
|
|
2824
2574
|
const fallbackValue = (0, import_util8.hexToFallback)(addedIdentityHex);
|
|
2825
|
-
const labelId = (0,
|
|
2575
|
+
const labelId = (0, import_react_ui22.useId)("identityListItem__label");
|
|
2826
2576
|
const displayName = addedIdentity?.profile?.displayName ?? (addedIdentity && (0, import_display_name4.generateName)(addedIdentityHex));
|
|
2827
|
-
const doneAction = /* @__PURE__ */
|
|
2577
|
+
const doneAction = /* @__PURE__ */ import_react46.default.createElement(Action, {
|
|
2828
2578
|
...onDone && {
|
|
2829
2579
|
onClick: () => onDone(null)
|
|
2830
2580
|
},
|
|
2831
2581
|
disabled,
|
|
2832
2582
|
"data-autofocus": "confirmingAddedIdentity",
|
|
2833
2583
|
"data-testid": "identity-added-done"
|
|
2834
|
-
}, /* @__PURE__ */
|
|
2835
|
-
return /* @__PURE__ */
|
|
2584
|
+
}, /* @__PURE__ */ import_react46.default.createElement("span", null, t("done label")));
|
|
2585
|
+
return /* @__PURE__ */ import_react46.default.createElement(import_react46.default.Fragment, null, /* @__PURE__ */ import_react46.default.createElement(StepHeading, null, t("identity added label")), /* @__PURE__ */ import_react46.default.createElement("div", {
|
|
2836
2586
|
role: "none",
|
|
2837
2587
|
className: "grow flex flex-col items-center justify-center text-center gap-2"
|
|
2838
|
-
}, /* @__PURE__ */
|
|
2588
|
+
}, /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Root, {
|
|
2839
2589
|
status: "active",
|
|
2840
2590
|
labelId,
|
|
2841
2591
|
hue: addedIdentity?.profile?.data?.hue || fallbackValue.hue
|
|
2842
|
-
}, /* @__PURE__ */
|
|
2592
|
+
}, /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Frame, null, /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Fallback, {
|
|
2843
2593
|
text: addedIdentity?.profile?.data?.emoji || fallbackValue.emoji
|
|
2844
|
-
})), /* @__PURE__ */
|
|
2845
|
-
classNames: (0,
|
|
2846
|
-
}, displayName))), /* @__PURE__ */
|
|
2594
|
+
})), /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Label, {
|
|
2595
|
+
classNames: (0, import_react_ui_theme24.mx)("text-lg truncate", !addedIdentity?.profile?.displayName && "font-mono")
|
|
2596
|
+
}, displayName))), /* @__PURE__ */ import_react46.default.createElement(Actions, null, mode === "halo-only" ? doneActionParent ? /* @__PURE__ */ (0, import_react46.cloneElement)(doneActionParent, {}, doneAction) : doneAction : /* @__PURE__ */ import_react46.default.createElement(Action, {
|
|
2847
2597
|
variant: "primary",
|
|
2848
2598
|
disabled: disabled || !addedIdentity,
|
|
2849
2599
|
onClick: () => addedIdentity && send({
|
|
@@ -2858,12 +2608,12 @@ var IdentityInput = (props) => {
|
|
|
2858
2608
|
const { send, method } = props;
|
|
2859
2609
|
const isRecover = method === "recover identity";
|
|
2860
2610
|
const client = (0, import_react_client9.useClient)();
|
|
2861
|
-
const { t } = (0,
|
|
2862
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
2611
|
+
const { t } = (0, import_react_ui23.useTranslation)("os");
|
|
2612
|
+
const [validationMessage, setValidationMessage] = (0, import_react47.useState)("");
|
|
2863
2613
|
const handleConfirm = async (value) => {
|
|
2864
2614
|
if (isRecover) {
|
|
2865
2615
|
await client.halo.recoverIdentity({
|
|
2866
|
-
|
|
2616
|
+
recoveryCode: value
|
|
2867
2617
|
}).then((identity) => {
|
|
2868
2618
|
send?.({
|
|
2869
2619
|
type: "selectIdentity",
|
|
@@ -2897,7 +2647,7 @@ var IdentityInput = (props) => {
|
|
|
2897
2647
|
});
|
|
2898
2648
|
}
|
|
2899
2649
|
};
|
|
2900
|
-
return /* @__PURE__ */
|
|
2650
|
+
return /* @__PURE__ */ import_react47.default.createElement(IdentityInputImpl, {
|
|
2901
2651
|
...props,
|
|
2902
2652
|
onConfirm: handleConfirm,
|
|
2903
2653
|
validationMessage
|
|
@@ -2905,12 +2655,12 @@ var IdentityInput = (props) => {
|
|
|
2905
2655
|
};
|
|
2906
2656
|
var IdentityInputImpl = (props) => {
|
|
2907
2657
|
const { method, active, onConfirm, validationMessage } = props;
|
|
2908
|
-
const { t } = (0,
|
|
2909
|
-
const [inputValue, setInputValue] = (0,
|
|
2910
|
-
const [pending, setPending] = (0,
|
|
2658
|
+
const { t } = (0, import_react_ui23.useTranslation)("os");
|
|
2659
|
+
const [inputValue, setInputValue] = (0, import_react47.useState)("");
|
|
2660
|
+
const [pending, setPending] = (0, import_react47.useState)(false);
|
|
2911
2661
|
const disabled = !active || pending;
|
|
2912
2662
|
const isRecover = method === "recover identity";
|
|
2913
|
-
const handleConfirm = (0,
|
|
2663
|
+
const handleConfirm = (0, import_react47.useCallback)(async () => {
|
|
2914
2664
|
setPending(true);
|
|
2915
2665
|
await onConfirm?.(inputValue);
|
|
2916
2666
|
setPending(false);
|
|
@@ -2918,17 +2668,17 @@ var IdentityInputImpl = (props) => {
|
|
|
2918
2668
|
onConfirm,
|
|
2919
2669
|
inputValue
|
|
2920
2670
|
]);
|
|
2921
|
-
return /* @__PURE__ */
|
|
2671
|
+
return /* @__PURE__ */ import_react47.default.createElement(import_react47.default.Fragment, null, /* @__PURE__ */ import_react47.default.createElement("div", {
|
|
2922
2672
|
role: "none",
|
|
2923
2673
|
className: "grow flex flex-col justify-center"
|
|
2924
|
-
}, /* @__PURE__ */
|
|
2674
|
+
}, /* @__PURE__ */ import_react47.default.createElement(Input, {
|
|
2925
2675
|
validationMessage,
|
|
2926
|
-
label: /* @__PURE__ */
|
|
2676
|
+
label: /* @__PURE__ */ import_react47.default.createElement(StepHeading, null, t(isRecover ? "recover identity input label" : "new identity input label")),
|
|
2927
2677
|
disabled,
|
|
2928
2678
|
"data-testid": "identity-input",
|
|
2929
2679
|
placeholder: isRecover ? t("recovery code placeholder") : t("display name placeholder"),
|
|
2930
2680
|
onChange: ({ target: { value } }) => setInputValue(value)
|
|
2931
|
-
})), /* @__PURE__ */
|
|
2681
|
+
})), /* @__PURE__ */ import_react47.default.createElement(Actions, null, /* @__PURE__ */ import_react47.default.createElement(Action, {
|
|
2932
2682
|
variant: "primary",
|
|
2933
2683
|
disabled: disabled || inputValue.trim().length === 0,
|
|
2934
2684
|
onClick: handleConfirm,
|
|
@@ -2954,9 +2704,9 @@ var invitationCodeFromUrl = (text) => {
|
|
|
2954
2704
|
var InvitationInput = (props) => {
|
|
2955
2705
|
const { Kind, active, send, unredeemedCode, onExit, exitActionParent, onDone, doneActionParent, succeededKeys } = props;
|
|
2956
2706
|
const disabled = !active;
|
|
2957
|
-
const { t } = (0,
|
|
2958
|
-
const [inputValue, setInputValue] = (0,
|
|
2959
|
-
(0,
|
|
2707
|
+
const { t } = (0, import_react_ui25.useTranslation)("os");
|
|
2708
|
+
const [inputValue, setInputValue] = (0, import_react49.useState)(unredeemedCode ?? "");
|
|
2709
|
+
(0, import_react49.useEffect)(() => {
|
|
2960
2710
|
unredeemedCode && setInputValue(unredeemedCode ?? "");
|
|
2961
2711
|
}, [
|
|
2962
2712
|
unredeemedCode
|
|
@@ -2973,7 +2723,7 @@ var InvitationInput = (props) => {
|
|
|
2973
2723
|
}
|
|
2974
2724
|
});
|
|
2975
2725
|
};
|
|
2976
|
-
const exitAction = /* @__PURE__ */
|
|
2726
|
+
const exitAction = /* @__PURE__ */ import_react49.default.createElement(Action, {
|
|
2977
2727
|
variant: "ghost",
|
|
2978
2728
|
disabled,
|
|
2979
2729
|
...onExit ? {
|
|
@@ -2983,11 +2733,11 @@ var InvitationInput = (props) => {
|
|
|
2983
2733
|
},
|
|
2984
2734
|
"data-testid": "join-exit"
|
|
2985
2735
|
}, t("cancel label"));
|
|
2986
|
-
return /* @__PURE__ */
|
|
2736
|
+
return /* @__PURE__ */ import_react49.default.createElement(import_react49.default.Fragment, null, /* @__PURE__ */ import_react49.default.createElement("div", {
|
|
2987
2737
|
role: "none",
|
|
2988
2738
|
className: "grow flex flex-col justify-center"
|
|
2989
|
-
}, /* @__PURE__ */
|
|
2990
|
-
label: /* @__PURE__ */
|
|
2739
|
+
}, /* @__PURE__ */ import_react49.default.createElement(Input, {
|
|
2740
|
+
label: /* @__PURE__ */ import_react49.default.createElement(StepHeading, null, t("invitation input label")),
|
|
2991
2741
|
placeholder: t("invitation input placeholder"),
|
|
2992
2742
|
disabled,
|
|
2993
2743
|
value: inputValue,
|
|
@@ -2995,7 +2745,7 @@ var InvitationInput = (props) => {
|
|
|
2995
2745
|
"data-autofocus": `inputting${Kind}InvitationCode`,
|
|
2996
2746
|
"data-testid": `${Kind.toLowerCase()}-invitation-input`,
|
|
2997
2747
|
onKeyUp: ({ key }) => key === "Enter" && handleNext()
|
|
2998
|
-
})), /* @__PURE__ */
|
|
2748
|
+
})), /* @__PURE__ */ import_react49.default.createElement(Actions, null, Kind === "Halo" ? null : exitActionParent ? /* @__PURE__ */ (0, import_react49.cloneElement)(exitActionParent, {}, exitAction) : doneActionParent ? /* @__PURE__ */ (0, import_react49.cloneElement)(doneActionParent, {}, exitAction) : exitAction, /* @__PURE__ */ import_react49.default.createElement(Action, {
|
|
2999
2749
|
variant: "primary",
|
|
3000
2750
|
disabled: disabled || inputValue.trim().length === 0,
|
|
3001
2751
|
onClick: handleNext,
|
|
@@ -3012,14 +2762,14 @@ var InvitationActions = ({
|
|
|
3012
2762
|
Kind,
|
|
3013
2763
|
failReason
|
|
3014
2764
|
}) => {
|
|
3015
|
-
const { t } = (0,
|
|
2765
|
+
const { t } = (0, import_react_ui26.useTranslation)("os");
|
|
3016
2766
|
if (failReason) {
|
|
3017
|
-
return /* @__PURE__ */
|
|
3018
|
-
className:
|
|
3019
|
-
}, t(failReason === "timeout" ? "timeout status label" : failReason === "cancelled" ? "cancelled status label" : "error status label")), /* @__PURE__ */
|
|
2767
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, /* @__PURE__ */ import_react50.default.createElement(StepHeading, {
|
|
2768
|
+
className: import_react_ui_theme25.descriptionText
|
|
2769
|
+
}, t(failReason === "timeout" ? "timeout status label" : failReason === "cancelled" ? "cancelled status label" : "error status label")), /* @__PURE__ */ import_react50.default.createElement("div", {
|
|
3020
2770
|
role: "none",
|
|
3021
2771
|
className: "grow"
|
|
3022
|
-
}), /* @__PURE__ */
|
|
2772
|
+
}), /* @__PURE__ */ import_react50.default.createElement(Actions, null, /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3023
2773
|
disabled: !active,
|
|
3024
2774
|
onClick: () => send({
|
|
3025
2775
|
type: `reset${Kind}Invitation`
|
|
@@ -3027,16 +2777,16 @@ var InvitationActions = ({
|
|
|
3027
2777
|
"data-testid": "invitation-rescuer-reset"
|
|
3028
2778
|
}, t("reset label"))));
|
|
3029
2779
|
} else {
|
|
3030
|
-
return /* @__PURE__ */
|
|
3031
|
-
className:
|
|
3032
|
-
}, t("connecting status label")), /* @__PURE__ */
|
|
2780
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, /* @__PURE__ */ import_react50.default.createElement(StepHeading, {
|
|
2781
|
+
className: import_react_ui_theme25.descriptionText
|
|
2782
|
+
}, t("connecting status label")), /* @__PURE__ */ import_react50.default.createElement("div", {
|
|
3033
2783
|
role: "none",
|
|
3034
2784
|
className: "grow"
|
|
3035
|
-
}), /* @__PURE__ */
|
|
2785
|
+
}), /* @__PURE__ */ import_react50.default.createElement(Actions, null, /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3036
2786
|
disabled: true,
|
|
3037
2787
|
classNames: "order-2",
|
|
3038
2788
|
"data-testid": "next"
|
|
3039
|
-
}, t("next label")), /* @__PURE__ */
|
|
2789
|
+
}, t("next label")), /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3040
2790
|
disabled: !active,
|
|
3041
2791
|
onClick: onInvitationCancel,
|
|
3042
2792
|
"data-testid": "invitation-rescuer-cancel"
|
|
@@ -3045,45 +2795,45 @@ var InvitationActions = ({
|
|
|
3045
2795
|
};
|
|
3046
2796
|
var InvitationRescuer = (props) => {
|
|
3047
2797
|
const { Kind, invitationState, active, send } = props;
|
|
3048
|
-
const { t } = (0,
|
|
3049
|
-
return /* @__PURE__ */
|
|
2798
|
+
const { t } = (0, import_react_ui26.useTranslation)("os");
|
|
2799
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, typeof invitationState === "undefined" ? /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, /* @__PURE__ */ import_react50.default.createElement("div", {
|
|
3050
2800
|
role: "none",
|
|
3051
2801
|
className: "grow flex flex-col justify-center"
|
|
3052
|
-
}, /* @__PURE__ */
|
|
3053
|
-
className:
|
|
3054
|
-
}, "There was a problem joining the space")), /* @__PURE__ */
|
|
2802
|
+
}, /* @__PURE__ */ import_react50.default.createElement(StepHeading, {
|
|
2803
|
+
className: import_react_ui_theme25.descriptionText
|
|
2804
|
+
}, "There was a problem joining the space")), /* @__PURE__ */ import_react50.default.createElement(Actions, null, /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3055
2805
|
disabled: !active,
|
|
3056
2806
|
"data-testid": "invitation-rescuer-blank-reset",
|
|
3057
2807
|
onClick: () => send({
|
|
3058
2808
|
type: `reset${Kind}Invitation`
|
|
3059
2809
|
})
|
|
3060
|
-
}, t("reset label")))) : /* @__PURE__ */
|
|
2810
|
+
}, t("reset label")))) : /* @__PURE__ */ import_react50.default.createElement(InvitationActions, props));
|
|
3061
2811
|
};
|
|
3062
2812
|
var pinLength = 6;
|
|
3063
2813
|
var InvitationAuthenticator = ({ failed, Kind, authMethod, active, pending, invitationId, onInvitationAuthenticate, onInvitationCancel }) => {
|
|
3064
2814
|
const disabled = !active || pending;
|
|
3065
|
-
const { t } = (0,
|
|
2815
|
+
const { t } = (0, import_react_ui27.useTranslation)("os");
|
|
3066
2816
|
const invitationType = Kind.toLowerCase();
|
|
3067
|
-
const [authCode, setAuthCode] = (0,
|
|
2817
|
+
const [authCode, setAuthCode] = (0, import_react51.useState)("");
|
|
3068
2818
|
const onChange = ({ target: { value } }) => {
|
|
3069
2819
|
setAuthCode(value);
|
|
3070
2820
|
if (value.length === pinLength) {
|
|
3071
2821
|
document.querySelector(`[data-autofocus-pinlength="${invitationType}"]`)?.focus();
|
|
3072
2822
|
}
|
|
3073
2823
|
};
|
|
3074
|
-
return /* @__PURE__ */
|
|
2824
|
+
return /* @__PURE__ */ import_react51.default.createElement(import_react51.default.Fragment, null, /* @__PURE__ */ import_react51.default.createElement("div", {
|
|
3075
2825
|
role: "none",
|
|
3076
2826
|
className: "grow flex flex-col justify-center gap-4"
|
|
3077
|
-
}, /* @__PURE__ */
|
|
2827
|
+
}, /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.Root, failed && {
|
|
3078
2828
|
validationValence: "error"
|
|
3079
|
-
}, /* @__PURE__ */
|
|
2829
|
+
}, /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.Label, {
|
|
3080
2830
|
asChild: true
|
|
3081
|
-
}, authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET ? /* @__PURE__ */
|
|
3082
|
-
className:
|
|
3083
|
-
}, t("authenticating label")), /* @__PURE__ */
|
|
2831
|
+
}, authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET ? /* @__PURE__ */ import_react51.default.createElement(StepHeading, null, t("auth code input label")) : /* @__PURE__ */ import_react51.default.createElement(import_react51.default.Fragment, null, /* @__PURE__ */ import_react51.default.createElement(StepHeading, {
|
|
2832
|
+
className: import_react_ui_theme26.descriptionText
|
|
2833
|
+
}, t("authenticating label")), /* @__PURE__ */ import_react51.default.createElement("div", {
|
|
3084
2834
|
role: "none",
|
|
3085
2835
|
className: "grow"
|
|
3086
|
-
}))), authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET && /* @__PURE__ */
|
|
2836
|
+
}))), authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET && /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.PinInput, {
|
|
3087
2837
|
disabled,
|
|
3088
2838
|
length: pinLength,
|
|
3089
2839
|
onChange,
|
|
@@ -3094,18 +2844,18 @@ var InvitationAuthenticator = ({ failed, Kind, authMethod, active, pending, invi
|
|
|
3094
2844
|
"data-prevent-ios-autofocus": true,
|
|
3095
2845
|
"data-testid": `${invitationType}-auth-code-input`,
|
|
3096
2846
|
"data-1p-ignore": true
|
|
3097
|
-
}), failed && /* @__PURE__ */
|
|
2847
|
+
}), failed && /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.DescriptionAndValidation, {
|
|
3098
2848
|
classNames: "text-center"
|
|
3099
|
-
}, /* @__PURE__ */
|
|
2849
|
+
}, /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.Validation, null, t("failed to authenticate message")))), invitationId && authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET && /* @__PURE__ */ import_react51.default.createElement(import_react51.default.Fragment, null, /* @__PURE__ */ import_react51.default.createElement(Label, null, t("auth other device emoji message")), /* @__PURE__ */ import_react51.default.createElement("div", {
|
|
3100
2850
|
className: "flex justify-center"
|
|
3101
|
-
}, /* @__PURE__ */
|
|
2851
|
+
}, /* @__PURE__ */ import_react51.default.createElement(Emoji, {
|
|
3102
2852
|
text: (0, import_util9.hexToEmoji)(invitationId)
|
|
3103
|
-
})))), /* @__PURE__ */
|
|
2853
|
+
})))), /* @__PURE__ */ import_react51.default.createElement(Actions, null, /* @__PURE__ */ import_react51.default.createElement(Action, {
|
|
3104
2854
|
variant: "ghost",
|
|
3105
2855
|
disabled,
|
|
3106
2856
|
onClick: () => onInvitationCancel?.(),
|
|
3107
2857
|
"data-testid": `${invitationType}-invitation-authenticator-cancel`
|
|
3108
|
-
}, t("cancel label")), /* @__PURE__ */
|
|
2858
|
+
}, t("cancel label")), /* @__PURE__ */ import_react51.default.createElement(Action, {
|
|
3109
2859
|
variant: "primary",
|
|
3110
2860
|
disabled,
|
|
3111
2861
|
onClick: () => onInvitationAuthenticate?.(authCode),
|
|
@@ -3160,46 +2910,46 @@ var JoinPanelImpl = (props) => {
|
|
|
3160
2910
|
IdentityInput: IdentityInputComponent = IdentityInput,
|
|
3161
2911
|
ConfirmReset: ConfirmResetComponent = ConfirmReset
|
|
3162
2912
|
} = props;
|
|
3163
|
-
return /* @__PURE__ */
|
|
2913
|
+
return /* @__PURE__ */ import_react39.default.createElement(import_react39.default.Fragment, null, mode !== "halo-only" && /* @__PURE__ */ import_react39.default.createElement(JoinHeading, {
|
|
3164
2914
|
titleId,
|
|
3165
2915
|
mode,
|
|
3166
2916
|
onExit,
|
|
3167
2917
|
exitActionParent
|
|
3168
|
-
}), /* @__PURE__ */
|
|
2918
|
+
}), /* @__PURE__ */ import_react39.default.createElement(Viewport.Root, {
|
|
3169
2919
|
focusManaged: true,
|
|
3170
2920
|
activeView
|
|
3171
|
-
}, /* @__PURE__ */
|
|
2921
|
+
}, /* @__PURE__ */ import_react39.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3172
2922
|
classNames: stepStyles,
|
|
3173
2923
|
id: "addition method chooser"
|
|
3174
|
-
}, /* @__PURE__ */
|
|
2924
|
+
}, /* @__PURE__ */ import_react39.default.createElement(AdditionMethodChooser, {
|
|
3175
2925
|
send,
|
|
3176
2926
|
active: activeView === "addition method chooser"
|
|
3177
|
-
})), /* @__PURE__ */
|
|
2927
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3178
2928
|
classNames: stepStyles,
|
|
3179
2929
|
id: "reset storage confirmation"
|
|
3180
|
-
}, /* @__PURE__ */
|
|
2930
|
+
}, /* @__PURE__ */ import_react39.default.createElement(ConfirmResetComponent, {
|
|
3181
2931
|
send,
|
|
3182
2932
|
active: activeView === "reset storage confirmation",
|
|
3183
2933
|
onCancel: onCancelResetStorage,
|
|
3184
2934
|
onConfirm: onConfirmResetStorage
|
|
3185
|
-
})), /* @__PURE__ */
|
|
2935
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3186
2936
|
classNames: stepStyles,
|
|
3187
2937
|
id: "create identity input"
|
|
3188
|
-
}, /* @__PURE__ */
|
|
2938
|
+
}, /* @__PURE__ */ import_react39.default.createElement(IdentityInputComponent, {
|
|
3189
2939
|
send,
|
|
3190
2940
|
method: "create identity",
|
|
3191
2941
|
active: activeView === "create identity input"
|
|
3192
|
-
})), /* @__PURE__ */
|
|
2942
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3193
2943
|
classNames: stepStyles,
|
|
3194
2944
|
id: "recover identity input"
|
|
3195
|
-
}, /* @__PURE__ */
|
|
2945
|
+
}, /* @__PURE__ */ import_react39.default.createElement(IdentityInputComponent, {
|
|
3196
2946
|
send,
|
|
3197
2947
|
method: "recover identity",
|
|
3198
2948
|
active: activeView === "recover identity input"
|
|
3199
|
-
})), /* @__PURE__ */
|
|
2949
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3200
2950
|
classNames: stepStyles,
|
|
3201
2951
|
id: "halo invitation input"
|
|
3202
|
-
}, /* @__PURE__ */
|
|
2952
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationInput, {
|
|
3203
2953
|
send,
|
|
3204
2954
|
Kind: "Halo",
|
|
3205
2955
|
active: activeView === "halo invitation input",
|
|
@@ -3209,20 +2959,20 @@ var JoinPanelImpl = (props) => {
|
|
|
3209
2959
|
...succeededKeys?.Halo && {
|
|
3210
2960
|
succeededKeys: succeededKeys.Halo
|
|
3211
2961
|
}
|
|
3212
|
-
})), /* @__PURE__ */
|
|
2962
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3213
2963
|
classNames: stepStyles,
|
|
3214
2964
|
id: "halo invitation rescuer"
|
|
3215
|
-
}, /* @__PURE__ */
|
|
2965
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationRescuer, {
|
|
3216
2966
|
send,
|
|
3217
2967
|
Kind: "Halo",
|
|
3218
2968
|
active: activeView === "halo invitation rescuer",
|
|
3219
2969
|
invitationState: invitationStates?.Halo,
|
|
3220
2970
|
onInvitationCancel: onHaloInvitationCancel,
|
|
3221
2971
|
failReason: failReasons?.Halo
|
|
3222
|
-
})), /* @__PURE__ */
|
|
2972
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3223
2973
|
classNames: stepStyles,
|
|
3224
2974
|
id: "halo invitation authenticator"
|
|
3225
|
-
}, /* @__PURE__ */
|
|
2975
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationAuthenticator, {
|
|
3226
2976
|
send,
|
|
3227
2977
|
Kind: "Halo",
|
|
3228
2978
|
invitationId: invitationIds?.Halo,
|
|
@@ -3233,19 +2983,19 @@ var JoinPanelImpl = (props) => {
|
|
|
3233
2983
|
...failed.has("Halo") && {
|
|
3234
2984
|
failed: true
|
|
3235
2985
|
}
|
|
3236
|
-
})), /* @__PURE__ */
|
|
2986
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3237
2987
|
classNames: stepStyles,
|
|
3238
2988
|
id: "identity added"
|
|
3239
|
-
}, /* @__PURE__ */
|
|
2989
|
+
}, /* @__PURE__ */ import_react39.default.createElement(IdentityAdded, {
|
|
3240
2990
|
send,
|
|
3241
2991
|
mode,
|
|
3242
2992
|
active: activeView === "identity added",
|
|
3243
2993
|
doneActionParent,
|
|
3244
2994
|
onDone: onHaloDone
|
|
3245
|
-
})), /* @__PURE__ */
|
|
2995
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3246
2996
|
classNames: stepStyles,
|
|
3247
2997
|
id: "space invitation input"
|
|
3248
|
-
}, /* @__PURE__ */
|
|
2998
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationInput, {
|
|
3249
2999
|
send,
|
|
3250
3000
|
Kind: "Space",
|
|
3251
3001
|
active: activeView === "space invitation input",
|
|
@@ -3257,20 +3007,20 @@ var JoinPanelImpl = (props) => {
|
|
|
3257
3007
|
},
|
|
3258
3008
|
onExit,
|
|
3259
3009
|
exitActionParent
|
|
3260
|
-
})), /* @__PURE__ */
|
|
3010
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3261
3011
|
classNames: stepStyles,
|
|
3262
3012
|
id: "space invitation rescuer"
|
|
3263
|
-
}, /* @__PURE__ */
|
|
3013
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationRescuer, {
|
|
3264
3014
|
send,
|
|
3265
3015
|
Kind: "Space",
|
|
3266
3016
|
active: activeView === "space invitation rescuer",
|
|
3267
3017
|
invitationState: invitationStates?.Space,
|
|
3268
3018
|
onInvitationCancel: onSpaceInvitationCancel,
|
|
3269
3019
|
failReason: failReasons?.Space
|
|
3270
|
-
})), /* @__PURE__ */
|
|
3020
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3271
3021
|
classNames: stepStyles,
|
|
3272
3022
|
id: "space invitation authenticator"
|
|
3273
|
-
}, /* @__PURE__ */
|
|
3023
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationAuthenticator, {
|
|
3274
3024
|
send,
|
|
3275
3025
|
Kind: "Space",
|
|
3276
3026
|
invitationId: invitationIds?.Space,
|
|
@@ -3286,8 +3036,8 @@ var JoinPanelImpl = (props) => {
|
|
|
3286
3036
|
var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition = "default", initialInvitationCode, exitActionParent, onExit, doneActionParent, onDone: propsOnDone, onCancelResetStorage }) => {
|
|
3287
3037
|
const client = (0, import_react_client7.useClient)();
|
|
3288
3038
|
const identity = (0, import_halo4.useIdentity)();
|
|
3289
|
-
const { hasIosKeyboard } = (0,
|
|
3290
|
-
const titleId = (0,
|
|
3039
|
+
const { hasIosKeyboard } = (0, import_react_ui19.useThemeContext)();
|
|
3040
|
+
const titleId = (0, import_react_ui19.useId)("joinPanel__heading", propsTitleId);
|
|
3291
3041
|
const [joinState, joinSend, joinService] = useJoinMachine(client, {
|
|
3292
3042
|
context: {
|
|
3293
3043
|
mode,
|
|
@@ -3300,7 +3050,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3300
3050
|
}
|
|
3301
3051
|
}
|
|
3302
3052
|
});
|
|
3303
|
-
(0,
|
|
3053
|
+
(0, import_react39.useEffect)(() => {
|
|
3304
3054
|
const subscription = joinService.subscribe((state) => {
|
|
3305
3055
|
(0, import_log8.log)("[state]", state, {
|
|
3306
3056
|
F: __dxlog_file10,
|
|
@@ -3313,7 +3063,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3313
3063
|
}, [
|
|
3314
3064
|
joinService
|
|
3315
3065
|
]);
|
|
3316
|
-
(0,
|
|
3066
|
+
(0, import_react39.useEffect)(() => {
|
|
3317
3067
|
const stateStack = joinState.configuration[0].id.split(".");
|
|
3318
3068
|
const innermostState = stateStack[stateStack.length - 1];
|
|
3319
3069
|
const autoFocusValue = innermostState === "finishingJoining" ? "successSpaceInvitation" : innermostState;
|
|
@@ -3325,7 +3075,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3325
3075
|
joinState.value,
|
|
3326
3076
|
hasIosKeyboard
|
|
3327
3077
|
]);
|
|
3328
|
-
const activeView = (0,
|
|
3078
|
+
const activeView = (0, import_react39.useMemo)(() => {
|
|
3329
3079
|
switch (true) {
|
|
3330
3080
|
case joinState.matches({
|
|
3331
3081
|
choosingIdentity: "choosingAuthMethod"
|
|
@@ -3446,7 +3196,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3446
3196
|
}, [
|
|
3447
3197
|
joinState
|
|
3448
3198
|
]);
|
|
3449
|
-
(0,
|
|
3199
|
+
(0, import_react39.useEffect)(() => {
|
|
3450
3200
|
switch (activeView) {
|
|
3451
3201
|
case "halo invitation accepted":
|
|
3452
3202
|
onHaloDone();
|
|
@@ -3458,7 +3208,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3458
3208
|
}, [
|
|
3459
3209
|
activeView
|
|
3460
3210
|
]);
|
|
3461
|
-
const failed = (0,
|
|
3211
|
+
const failed = (0, import_react39.useMemo)(() => {
|
|
3462
3212
|
const result = /* @__PURE__ */ new Set();
|
|
3463
3213
|
switch (true) {
|
|
3464
3214
|
case joinState.matches({
|
|
@@ -3482,43 +3232,43 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3482
3232
|
}, [
|
|
3483
3233
|
joinState
|
|
3484
3234
|
]);
|
|
3485
|
-
const unredeemedCodes = (0,
|
|
3235
|
+
const unredeemedCodes = (0, import_react39.useMemo)(() => ({
|
|
3486
3236
|
Halo: joinState.context.halo.unredeemedCode,
|
|
3487
3237
|
Space: joinState.context.space.unredeemedCode
|
|
3488
3238
|
}), [
|
|
3489
3239
|
joinState
|
|
3490
3240
|
]);
|
|
3491
3241
|
const spaces = (0, import_react_client7.useMulticastObservable)(client.spaces);
|
|
3492
|
-
const succeededKeys = (0,
|
|
3242
|
+
const succeededKeys = (0, import_react39.useMemo)(() => ({
|
|
3493
3243
|
Space: spaces ? new Set(spaces.map(({ key }) => key.toHex())) : void 0
|
|
3494
3244
|
}), [
|
|
3495
3245
|
spaces
|
|
3496
3246
|
]);
|
|
3497
|
-
const invitationStates = (0,
|
|
3247
|
+
const invitationStates = (0, import_react39.useMemo)(() => ({
|
|
3498
3248
|
Halo: joinState.context.halo.invitationObservable?.get().state,
|
|
3499
3249
|
Space: joinState.context.space.invitationObservable?.get().state
|
|
3500
3250
|
}), [
|
|
3501
3251
|
joinState
|
|
3502
3252
|
]);
|
|
3503
|
-
const invitationAuthMethods = (0,
|
|
3253
|
+
const invitationAuthMethods = (0, import_react39.useMemo)(() => ({
|
|
3504
3254
|
Halo: joinState.context.halo.invitationObservable?.get().authMethod,
|
|
3505
3255
|
Space: joinState.context.space.invitationObservable?.get().authMethod
|
|
3506
3256
|
}), [
|
|
3507
3257
|
joinState
|
|
3508
3258
|
]);
|
|
3509
|
-
const invitationIds = (0,
|
|
3259
|
+
const invitationIds = (0, import_react39.useMemo)(() => ({
|
|
3510
3260
|
Halo: joinState.context.halo.invitationObservable?.get().invitationId,
|
|
3511
3261
|
Space: joinState.context.space.invitationObservable?.get().invitationId
|
|
3512
3262
|
}), [
|
|
3513
3263
|
joinState
|
|
3514
3264
|
]);
|
|
3515
|
-
const failReasons = (0,
|
|
3265
|
+
const failReasons = (0, import_react39.useMemo)(() => ({
|
|
3516
3266
|
Halo: joinState.context.halo.failReason,
|
|
3517
3267
|
Space: joinState.context.space.failReason
|
|
3518
3268
|
}), [
|
|
3519
3269
|
joinState
|
|
3520
3270
|
]);
|
|
3521
|
-
const onHaloDone = (0,
|
|
3271
|
+
const onHaloDone = (0, import_react39.useCallback)(() => {
|
|
3522
3272
|
propsOnDone?.({
|
|
3523
3273
|
identityKey: joinState.context.identity?.identityKey ?? joinState.context.halo.invitation?.identityKey ?? null,
|
|
3524
3274
|
swarmKey: joinState.context.halo.invitation?.swarmKey ?? null,
|
|
@@ -3529,7 +3279,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3529
3279
|
joinState,
|
|
3530
3280
|
propsOnDone
|
|
3531
3281
|
]);
|
|
3532
|
-
const onSpaceDone = (0,
|
|
3282
|
+
const onSpaceDone = (0, import_react39.useCallback)(() => {
|
|
3533
3283
|
propsOnDone?.({
|
|
3534
3284
|
identityKey: joinState.context.space.invitation?.identityKey ?? null,
|
|
3535
3285
|
swarmKey: joinState.context.space.invitation?.swarmKey ?? null,
|
|
@@ -3540,7 +3290,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3540
3290
|
joinState,
|
|
3541
3291
|
propsOnDone
|
|
3542
3292
|
]);
|
|
3543
|
-
const onConfirmResetStorage = (0,
|
|
3293
|
+
const onConfirmResetStorage = (0, import_react39.useCallback)(() => client.reset().then(() => {
|
|
3544
3294
|
joinSend({
|
|
3545
3295
|
type: "resetIdentity"
|
|
3546
3296
|
});
|
|
@@ -3548,7 +3298,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3548
3298
|
client,
|
|
3549
3299
|
joinSend
|
|
3550
3300
|
]);
|
|
3551
|
-
return /* @__PURE__ */
|
|
3301
|
+
return /* @__PURE__ */ import_react39.default.createElement(JoinPanelImpl, {
|
|
3552
3302
|
titleId,
|
|
3553
3303
|
mode,
|
|
3554
3304
|
send: joinSend,
|
|
@@ -3638,7 +3388,7 @@ var spaceMachine = (0, import_xstate3.createMachine)({
|
|
|
3638
3388
|
}
|
|
3639
3389
|
});
|
|
3640
3390
|
var useSpaceMachine = (options) => {
|
|
3641
|
-
return (0,
|
|
3391
|
+
return (0, import_react54.useMachine)(spaceMachine, {
|
|
3642
3392
|
...options,
|
|
3643
3393
|
context: {
|
|
3644
3394
|
...options?.context
|
|
@@ -3664,16 +3414,16 @@ var handleInvitationEvent = (invitation, subscription) => {
|
|
|
3664
3414
|
};
|
|
3665
3415
|
var SpaceManager = (props) => {
|
|
3666
3416
|
const { space, target } = props;
|
|
3667
|
-
const { t } = (0,
|
|
3417
|
+
const { t } = (0, import_react_ui29.useTranslation)("os");
|
|
3668
3418
|
const config = (0, import_react_client10.useConfig)();
|
|
3669
3419
|
const invitations = (0, import_echo4.useSpaceInvitations)(space?.key);
|
|
3670
3420
|
const inviteActions = {
|
|
3671
3421
|
inviteOne: {
|
|
3672
3422
|
label: t("invite one label"),
|
|
3673
3423
|
description: t("invite one description"),
|
|
3674
|
-
icon:
|
|
3424
|
+
icon: import_react55.UserPlus,
|
|
3675
3425
|
testId: "spaces-panel.invite-one",
|
|
3676
|
-
onClick: (0,
|
|
3426
|
+
onClick: (0, import_react56.useCallback)(() => {
|
|
3677
3427
|
const invitation = space.share?.({
|
|
3678
3428
|
type: import_invitations10.Invitation.Type.INTERACTIVE,
|
|
3679
3429
|
authMethod: import_invitations10.Invitation.AuthMethod.SHARED_SECRET,
|
|
@@ -3691,9 +3441,9 @@ var SpaceManager = (props) => {
|
|
|
3691
3441
|
inviteMany: {
|
|
3692
3442
|
label: t("invite many label"),
|
|
3693
3443
|
description: t("invite many description"),
|
|
3694
|
-
icon:
|
|
3444
|
+
icon: import_react55.UsersThree,
|
|
3695
3445
|
testId: "spaces-panel.invite-many",
|
|
3696
|
-
onClick: (0,
|
|
3446
|
+
onClick: (0, import_react56.useCallback)(() => {
|
|
3697
3447
|
const invitation = space.share?.({
|
|
3698
3448
|
type: import_invitations10.Invitation.Type.DELEGATED,
|
|
3699
3449
|
authMethod: import_invitations10.Invitation.AuthMethod.KNOWN_PUBLIC_KEY,
|
|
@@ -3709,7 +3459,7 @@ var SpaceManager = (props) => {
|
|
|
3709
3459
|
])
|
|
3710
3460
|
}
|
|
3711
3461
|
};
|
|
3712
|
-
return /* @__PURE__ */
|
|
3462
|
+
return /* @__PURE__ */ import_react56.default.createElement(SpaceManagerImpl, {
|
|
3713
3463
|
...props,
|
|
3714
3464
|
invitations,
|
|
3715
3465
|
inviteActions
|
|
@@ -3718,17 +3468,17 @@ var SpaceManager = (props) => {
|
|
|
3718
3468
|
var headingFragment = "pis-3 pie-1 plb-1 mbe-1 font-medium";
|
|
3719
3469
|
var SpaceManagerImpl = (props) => {
|
|
3720
3470
|
const { active, space, createInvitationUrl, send, inviteActions: propsInviteActions, invitations, showInactiveInvitations, SpaceMemberList: SpaceMemberListComponent = SpaceMemberList, InvitationList: InvitationListComponent = InvitationList } = props;
|
|
3721
|
-
const { t } = (0,
|
|
3471
|
+
const { t } = (0, import_react_ui29.useTranslation)("os");
|
|
3722
3472
|
const inviteActions = propsInviteActions ?? {
|
|
3723
3473
|
noopInvite: {
|
|
3724
3474
|
label: t("create space invitation label"),
|
|
3725
3475
|
description: "",
|
|
3726
|
-
icon:
|
|
3476
|
+
icon: import_react55.Placeholder,
|
|
3727
3477
|
onClick: () => {
|
|
3728
3478
|
}
|
|
3729
3479
|
}
|
|
3730
3480
|
};
|
|
3731
|
-
const [activeAction, setInternalActiveAction] = (0,
|
|
3481
|
+
const [activeAction, setInternalActiveAction] = (0, import_react56.useState)(localStorage.getItem(activeActionKey) ?? "inviteMany");
|
|
3732
3482
|
const setActiveAction = (nextAction) => {
|
|
3733
3483
|
setInternalActiveAction(nextAction);
|
|
3734
3484
|
localStorage.setItem(activeActionKey, nextAction);
|
|
@@ -3736,26 +3486,26 @@ var SpaceManagerImpl = (props) => {
|
|
|
3736
3486
|
const visibleInvitations = showInactiveInvitations ? invitations : invitations?.filter((invitation) => ![
|
|
3737
3487
|
import_invitations10.Invitation.State.CANCELLED
|
|
3738
3488
|
].includes(invitation.get().state));
|
|
3739
|
-
return /* @__PURE__ */
|
|
3489
|
+
return /* @__PURE__ */ import_react56.default.createElement(import_react56.default.Fragment, null, /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Root, {
|
|
3740
3490
|
classNames: "grow shrink basis-28 -mli-2"
|
|
3741
|
-
}, /* @__PURE__ */
|
|
3491
|
+
}, /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Viewport, {
|
|
3742
3492
|
classNames: "is-full pie-2"
|
|
3743
|
-
}, !!visibleInvitations?.length && /* @__PURE__ */
|
|
3744
|
-
className: (0,
|
|
3745
|
-
}, t("invitation list heading")), /* @__PURE__ */
|
|
3493
|
+
}, !!visibleInvitations?.length && /* @__PURE__ */ import_react56.default.createElement(import_react56.default.Fragment, null, /* @__PURE__ */ import_react56.default.createElement("h3", {
|
|
3494
|
+
className: (0, import_react_ui_theme27.mx)(headingFragment, import_react_ui_theme27.descriptionText)
|
|
3495
|
+
}, t("invitation list heading")), /* @__PURE__ */ import_react56.default.createElement(InvitationListComponent, {
|
|
3746
3496
|
className: "mb-2",
|
|
3747
3497
|
send,
|
|
3748
3498
|
invitations: visibleInvitations ?? [],
|
|
3749
3499
|
onClickRemove: (invitation) => invitation.cancel(),
|
|
3750
3500
|
createInvitationUrl
|
|
3751
|
-
}), /* @__PURE__ */
|
|
3752
|
-
className: (0,
|
|
3753
|
-
}, t("space member list heading"))), /* @__PURE__ */
|
|
3501
|
+
}), /* @__PURE__ */ import_react56.default.createElement("h3", {
|
|
3502
|
+
className: (0, import_react_ui_theme27.mx)(headingFragment, import_react_ui_theme27.descriptionText, "mbs-2")
|
|
3503
|
+
}, t("space member list heading"))), /* @__PURE__ */ import_react56.default.createElement(SpaceMemberListComponent, {
|
|
3754
3504
|
spaceKey: space.key,
|
|
3755
3505
|
includeSelf: true
|
|
3756
|
-
})), /* @__PURE__ */
|
|
3506
|
+
})), /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Scrollbar, {
|
|
3757
3507
|
orientation: "vertical"
|
|
3758
|
-
}, /* @__PURE__ */
|
|
3508
|
+
}, /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Thumb, null))), /* @__PURE__ */ import_react56.default.createElement(Actions, null, /* @__PURE__ */ import_react56.default.createElement(BifurcatedAction, {
|
|
3759
3509
|
disabled: !active,
|
|
3760
3510
|
actions: inviteActions,
|
|
3761
3511
|
activeAction,
|
|
@@ -3765,45 +3515,45 @@ var SpaceManagerImpl = (props) => {
|
|
|
3765
3515
|
};
|
|
3766
3516
|
var __dxlog_file13 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/SpacePanel/SpacePanel.tsx";
|
|
3767
3517
|
var SpacePanelHeading = ({ titleId, space, onDone }) => {
|
|
3768
|
-
const { t } = (0,
|
|
3518
|
+
const { t } = (0, import_react_ui28.useTranslation)("os");
|
|
3769
3519
|
const name = space.properties.name;
|
|
3770
|
-
return /* @__PURE__ */
|
|
3520
|
+
return /* @__PURE__ */ import_react53.default.createElement(Heading, {
|
|
3771
3521
|
titleId,
|
|
3772
3522
|
title: t("space panel heading"),
|
|
3773
|
-
corner: /* @__PURE__ */
|
|
3523
|
+
corner: /* @__PURE__ */ import_react53.default.createElement(CloseButton, {
|
|
3774
3524
|
"data-testid": "identity-panel-done",
|
|
3775
3525
|
onDone
|
|
3776
3526
|
})
|
|
3777
|
-
}, /* @__PURE__ */
|
|
3527
|
+
}, /* @__PURE__ */ import_react53.default.createElement("div", {
|
|
3778
3528
|
role: "none",
|
|
3779
3529
|
className: "flex gap-4 items-center justify-center mlb-4"
|
|
3780
|
-
}, /* @__PURE__ */
|
|
3530
|
+
}, /* @__PURE__ */ import_react53.default.createElement(import_react52.Planet, {
|
|
3781
3531
|
size: 32,
|
|
3782
3532
|
weight: "light"
|
|
3783
|
-
}), /* @__PURE__ */
|
|
3533
|
+
}), /* @__PURE__ */ import_react53.default.createElement("div", {
|
|
3784
3534
|
className: "block text-start font-light text-xl"
|
|
3785
3535
|
}, name ?? space.key.truncate())));
|
|
3786
3536
|
};
|
|
3787
3537
|
var SpacePanelImpl = (props) => {
|
|
3788
3538
|
const { titleId, activeView, space, hideHeading, target, SpaceManager: SpaceManagerComponent = SpaceManager, InvitationManager: InvitationManagerComponent = InvitationManager, ...rest } = props;
|
|
3789
|
-
return /* @__PURE__ */
|
|
3539
|
+
return /* @__PURE__ */ import_react53.default.createElement(import_react53.default.Fragment, null, !hideHeading && /* @__PURE__ */ import_react53.default.createElement(SpacePanelHeading, {
|
|
3790
3540
|
...rest,
|
|
3791
3541
|
titleId,
|
|
3792
3542
|
space
|
|
3793
|
-
}), /* @__PURE__ */
|
|
3543
|
+
}), /* @__PURE__ */ import_react53.default.createElement(Viewport.Root, {
|
|
3794
3544
|
activeView
|
|
3795
|
-
}, /* @__PURE__ */
|
|
3545
|
+
}, /* @__PURE__ */ import_react53.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react53.default.createElement(Viewport.View, {
|
|
3796
3546
|
id: "space manager",
|
|
3797
3547
|
classNames: stepStyles
|
|
3798
|
-
}, /* @__PURE__ */
|
|
3548
|
+
}, /* @__PURE__ */ import_react53.default.createElement(SpaceManagerComponent, {
|
|
3799
3549
|
active: activeView === "space manager",
|
|
3800
3550
|
space,
|
|
3801
3551
|
target,
|
|
3802
3552
|
...rest
|
|
3803
|
-
})), /* @__PURE__ */
|
|
3553
|
+
})), /* @__PURE__ */ import_react53.default.createElement(Viewport.View, {
|
|
3804
3554
|
id: "space invitation manager",
|
|
3805
3555
|
classNames: stepStyles
|
|
3806
|
-
}, /* @__PURE__ */
|
|
3556
|
+
}, /* @__PURE__ */ import_react53.default.createElement(InvitationManagerComponent, {
|
|
3807
3557
|
active: activeView === "space invitation manager",
|
|
3808
3558
|
...rest,
|
|
3809
3559
|
invitationUrl: props.invitationUrl
|
|
@@ -3811,20 +3561,20 @@ var SpacePanelImpl = (props) => {
|
|
|
3811
3561
|
};
|
|
3812
3562
|
var SpacePanelWithInvitationImpl = ({ invitation, ...props }) => {
|
|
3813
3563
|
const invitationStatus = (0, import_invitations9.useInvitationStatus)(invitation);
|
|
3814
|
-
return /* @__PURE__ */
|
|
3564
|
+
return /* @__PURE__ */ import_react53.default.createElement(SpacePanelImpl, {
|
|
3815
3565
|
...props,
|
|
3816
3566
|
...invitationStatus,
|
|
3817
3567
|
invitationUrl: props.createInvitationUrl(invitationStatus.invitationCode)
|
|
3818
3568
|
});
|
|
3819
3569
|
};
|
|
3820
3570
|
var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code, ...props }) => {
|
|
3821
|
-
const titleId = (0,
|
|
3571
|
+
const titleId = (0, import_react_ui28.useId)("spacePanel__heading", propsTitleId);
|
|
3822
3572
|
const [spaceState, spaceSend, spaceService] = useSpaceMachine({
|
|
3823
3573
|
context: {
|
|
3824
3574
|
space: props.space
|
|
3825
3575
|
}
|
|
3826
3576
|
});
|
|
3827
|
-
(0,
|
|
3577
|
+
(0, import_react53.useEffect)(() => {
|
|
3828
3578
|
const subscription = spaceService.subscribe((state) => {
|
|
3829
3579
|
(0, import_log12.log)("[state]", state, {
|
|
3830
3580
|
F: __dxlog_file13,
|
|
@@ -3837,7 +3587,7 @@ var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code,
|
|
|
3837
3587
|
}, [
|
|
3838
3588
|
spaceService
|
|
3839
3589
|
]);
|
|
3840
|
-
const activeView = (0,
|
|
3590
|
+
const activeView = (0, import_react53.useMemo)(() => {
|
|
3841
3591
|
switch (true) {
|
|
3842
3592
|
case spaceState.matches("managingSpace"):
|
|
3843
3593
|
return "space manager";
|
|
@@ -3858,101 +3608,101 @@ var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code,
|
|
|
3858
3608
|
};
|
|
3859
3609
|
return spaceState.context.invitation ? (
|
|
3860
3610
|
// TODO(wittjosiah): Unused? Remove?
|
|
3861
|
-
/* @__PURE__ */
|
|
3611
|
+
/* @__PURE__ */ import_react53.default.createElement(SpacePanelWithInvitationImpl, {
|
|
3862
3612
|
...implProps,
|
|
3863
3613
|
invitation: spaceState.context.invitation
|
|
3864
3614
|
})
|
|
3865
|
-
) : /* @__PURE__ */
|
|
3615
|
+
) : /* @__PURE__ */ import_react53.default.createElement(SpacePanelImpl, implProps);
|
|
3866
3616
|
};
|
|
3867
3617
|
var StatusPanel = ({ titleId }) => {
|
|
3868
|
-
const { t } = (0,
|
|
3869
|
-
return /* @__PURE__ */
|
|
3618
|
+
const { t } = (0, import_react_ui30.useTranslation)("os");
|
|
3619
|
+
return /* @__PURE__ */ import_react57.default.createElement("div", {
|
|
3870
3620
|
className: "grid place-items-center p-2 gap-2"
|
|
3871
|
-
}, /* @__PURE__ */
|
|
3621
|
+
}, /* @__PURE__ */ import_react57.default.createElement("p", {
|
|
3872
3622
|
id: titleId,
|
|
3873
3623
|
className: "font-medium text-center"
|
|
3874
|
-
}, t("resetting message")), /* @__PURE__ */
|
|
3624
|
+
}, t("resetting message")), /* @__PURE__ */ import_react57.default.createElement(import_react_ui30.Status, {
|
|
3875
3625
|
indeterminate: true
|
|
3876
3626
|
}, t("resetting message")));
|
|
3877
3627
|
};
|
|
3878
3628
|
var IdentityDialog = (props) => {
|
|
3879
|
-
const titleId = (0,
|
|
3880
|
-
return /* @__PURE__ */
|
|
3629
|
+
const titleId = (0, import_react_ui14.useId)("identityDialog__title", props.title);
|
|
3630
|
+
return /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Root, {
|
|
3881
3631
|
defaultOpen: true,
|
|
3882
3632
|
onOpenChange: (open) => open || props.onDone?.()
|
|
3883
|
-
}, /* @__PURE__ */
|
|
3633
|
+
}, /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Portal, null, /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Overlay, null, /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Content, {
|
|
3884
3634
|
"aria-labelledby": titleId,
|
|
3885
3635
|
onOpenAutoFocus: (e) => e.preventDefault()
|
|
3886
|
-
}, /* @__PURE__ */
|
|
3636
|
+
}, /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Clipboard.Provider, null, /* @__PURE__ */ import_react27.default.createElement(IdentityPanel, {
|
|
3887
3637
|
...props,
|
|
3888
3638
|
titleId,
|
|
3889
|
-
doneActionParent: /* @__PURE__ */
|
|
3639
|
+
doneActionParent: /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Close, {
|
|
3890
3640
|
asChild: true
|
|
3891
3641
|
})
|
|
3892
3642
|
}))))));
|
|
3893
3643
|
};
|
|
3894
3644
|
var JoinDialog = (joinPanelProps) => {
|
|
3895
|
-
const titleId = (0,
|
|
3896
|
-
const { height } = (0,
|
|
3897
|
-
return /* @__PURE__ */
|
|
3645
|
+
const titleId = (0, import_react_ui31.useId)("joinDialog__title");
|
|
3646
|
+
const { height } = (0, import_react_ui31.useVisualViewport)();
|
|
3647
|
+
return /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Root, {
|
|
3898
3648
|
defaultOpen: true,
|
|
3899
3649
|
onOpenChange: (open) => open || (joinPanelProps.onExit ? joinPanelProps.onExit() : joinPanelProps.onDone?.(null))
|
|
3900
|
-
}, /* @__PURE__ */
|
|
3650
|
+
}, /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Portal, null, /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Overlay, {
|
|
3901
3651
|
classNames: "backdrop-blur",
|
|
3902
3652
|
...height && {
|
|
3903
3653
|
style: {
|
|
3904
3654
|
blockSize: `${height}px`
|
|
3905
3655
|
}
|
|
3906
3656
|
}
|
|
3907
|
-
}, /* @__PURE__ */
|
|
3657
|
+
}, /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Content, {
|
|
3908
3658
|
"aria-labelledby": titleId
|
|
3909
|
-
}, /* @__PURE__ */
|
|
3659
|
+
}, /* @__PURE__ */ import_react58.default.createElement(JoinPanel, {
|
|
3910
3660
|
...joinPanelProps,
|
|
3911
3661
|
titleId,
|
|
3912
|
-
exitActionParent: /* @__PURE__ */
|
|
3662
|
+
exitActionParent: /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Cancel, {
|
|
3913
3663
|
asChild: true
|
|
3914
3664
|
}),
|
|
3915
|
-
doneActionParent: /* @__PURE__ */
|
|
3665
|
+
doneActionParent: /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Action, {
|
|
3916
3666
|
asChild: true
|
|
3917
3667
|
})
|
|
3918
3668
|
})))));
|
|
3919
3669
|
};
|
|
3920
3670
|
var SpaceDialog = (spacePanelProps) => {
|
|
3921
|
-
const titleId = (0,
|
|
3922
|
-
return /* @__PURE__ */
|
|
3671
|
+
const titleId = (0, import_react_ui33.useId)("spaceDialog__title");
|
|
3672
|
+
return /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Root, {
|
|
3923
3673
|
defaultOpen: true,
|
|
3924
3674
|
onOpenChange: (open) => open || spacePanelProps.onDone?.()
|
|
3925
|
-
}, /* @__PURE__ */
|
|
3675
|
+
}, /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Portal, null, /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Overlay, null, /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Content, {
|
|
3926
3676
|
"aria-labelledby": titleId
|
|
3927
|
-
}, /* @__PURE__ */
|
|
3677
|
+
}, /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Clipboard.Provider, null, /* @__PURE__ */ import_react61.default.createElement(SpacePanel, {
|
|
3928
3678
|
...spacePanelProps,
|
|
3929
3679
|
titleId,
|
|
3930
|
-
doneActionParent: /* @__PURE__ */
|
|
3680
|
+
doneActionParent: /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Close, {
|
|
3931
3681
|
asChild: true
|
|
3932
3682
|
})
|
|
3933
3683
|
}))))));
|
|
3934
3684
|
};
|
|
3935
3685
|
var StatusDialog = () => {
|
|
3936
|
-
const titleId = (0,
|
|
3937
|
-
return /* @__PURE__ */
|
|
3686
|
+
const titleId = (0, import_react_ui34.useId)("statusDialog__title");
|
|
3687
|
+
return /* @__PURE__ */ import_react62.default.createElement(import_react_ui34.AlertDialog.Root, {
|
|
3938
3688
|
open: true
|
|
3939
|
-
}, /* @__PURE__ */
|
|
3689
|
+
}, /* @__PURE__ */ import_react62.default.createElement(import_react_ui34.AlertDialog.Portal, null, /* @__PURE__ */ import_react62.default.createElement(import_react_ui34.AlertDialog.Overlay, null, /* @__PURE__ */ import_react62.default.createElement(import_react_ui34.AlertDialog.Content, {
|
|
3940
3690
|
"aria-labelledby": titleId
|
|
3941
|
-
}, /* @__PURE__ */
|
|
3691
|
+
}, /* @__PURE__ */ import_react62.default.createElement(StatusPanel, {
|
|
3942
3692
|
titleId
|
|
3943
3693
|
})))));
|
|
3944
3694
|
};
|
|
3945
3695
|
var __dxlog_file14 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/composites/Shell/Shell.tsx";
|
|
3946
3696
|
var blurActiveElement = () => document.activeElement?.blur?.();
|
|
3947
3697
|
var Shell = ({ runtime }) => {
|
|
3948
|
-
const [{ layout, invitationCode, spaceKey, spaceId, target }, setLayout] = (0,
|
|
3698
|
+
const [{ layout, invitationCode, spaceKey, spaceId, target }, setLayout] = (0, import_react60.useState)({
|
|
3949
3699
|
layout: runtime.layout,
|
|
3950
3700
|
invitationCode: runtime.invitationCode,
|
|
3951
3701
|
spaceKey: runtime.spaceKey,
|
|
3952
3702
|
spaceId: runtime.spaceId,
|
|
3953
3703
|
target: runtime.target
|
|
3954
3704
|
});
|
|
3955
|
-
const [{ invitationUrl, deviceInvitationParam, spaceInvitationParam }, setInvitationUrl] = (0,
|
|
3705
|
+
const [{ invitationUrl, deviceInvitationParam, spaceInvitationParam }, setInvitationUrl] = (0, import_react60.useState)({
|
|
3956
3706
|
invitationUrl: runtime.invitationUrl,
|
|
3957
3707
|
deviceInvitationParam: runtime.deviceInvitationParam,
|
|
3958
3708
|
spaceInvitationParam: runtime.spaceInvitationParam
|
|
@@ -3969,7 +3719,7 @@ var Shell = ({ runtime }) => {
|
|
|
3969
3719
|
baseUrl.searchParams.set(spaceInvitationParam, invitationCode2);
|
|
3970
3720
|
return baseUrl.toString();
|
|
3971
3721
|
};
|
|
3972
|
-
(0,
|
|
3722
|
+
(0, import_react60.useEffect)(() => {
|
|
3973
3723
|
const unsubscribeLayout = runtime.layoutUpdate.on((request) => setLayout(request));
|
|
3974
3724
|
const unsubscribeInvitationUrl = runtime.invitationUrlUpdate.on((request) => setInvitationUrl(request));
|
|
3975
3725
|
return () => {
|
|
@@ -3979,7 +3729,7 @@ var Shell = ({ runtime }) => {
|
|
|
3979
3729
|
}, [
|
|
3980
3730
|
runtime
|
|
3981
3731
|
]);
|
|
3982
|
-
(0,
|
|
3732
|
+
(0, import_react60.useEffect)(() => {
|
|
3983
3733
|
if (layout === import_react_client13.ShellLayout.SPACE && !space) {
|
|
3984
3734
|
import_log15.log.warn("No space found for shell space invitations.", void 0, {
|
|
3985
3735
|
F: __dxlog_file14,
|
|
@@ -4004,11 +3754,11 @@ var Shell = ({ runtime }) => {
|
|
|
4004
3754
|
]);
|
|
4005
3755
|
switch (layout) {
|
|
4006
3756
|
case import_react_client13.ShellLayout.STATUS:
|
|
4007
|
-
return /* @__PURE__ */
|
|
3757
|
+
return /* @__PURE__ */ import_react60.default.createElement(StatusDialog, null);
|
|
4008
3758
|
case import_react_client13.ShellLayout.INITIALIZE_IDENTITY:
|
|
4009
3759
|
case import_react_client13.ShellLayout.INITIALIZE_IDENTITY_FROM_INVITATION:
|
|
4010
3760
|
case import_react_client13.ShellLayout.INITIALIZE_IDENTITY_FROM_RECOVERY:
|
|
4011
|
-
return /* @__PURE__ */
|
|
3761
|
+
return /* @__PURE__ */ import_react60.default.createElement(JoinDialog, {
|
|
4012
3762
|
mode: "halo-only",
|
|
4013
3763
|
initialDisposition: layout === import_react_client13.ShellLayout.INITIALIZE_IDENTITY_FROM_RECOVERY ? "recover-identity" : layout === import_react_client13.ShellLayout.INITIALIZE_IDENTITY_FROM_INVITATION ? "accept-halo-invitation" : "default",
|
|
4014
3764
|
initialInvitationCode: invitationCode,
|
|
@@ -4028,7 +3778,7 @@ var Shell = ({ runtime }) => {
|
|
|
4028
3778
|
case import_react_client13.ShellLayout.IDENTITY:
|
|
4029
3779
|
case import_react_client13.ShellLayout.SHARE_IDENTITY:
|
|
4030
3780
|
case import_react_client13.ShellLayout.EDIT_PROFILE:
|
|
4031
|
-
return /* @__PURE__ */
|
|
3781
|
+
return /* @__PURE__ */ import_react60.default.createElement(IdentityDialog, {
|
|
4032
3782
|
createInvitationUrl: createDeviceInvitationUrl,
|
|
4033
3783
|
onResetStorage: async () => {
|
|
4034
3784
|
runtime.setLayout({
|
|
@@ -4074,7 +3824,7 @@ var Shell = ({ runtime }) => {
|
|
|
4074
3824
|
initialDisposition: layout === import_react_client13.ShellLayout.SHARE_IDENTITY ? "manage-device-invitation" : "default"
|
|
4075
3825
|
});
|
|
4076
3826
|
case import_react_client13.ShellLayout.SPACE:
|
|
4077
|
-
return space ? /* @__PURE__ */
|
|
3827
|
+
return space ? /* @__PURE__ */ import_react60.default.createElement(SpaceDialog, {
|
|
4078
3828
|
space,
|
|
4079
3829
|
target,
|
|
4080
3830
|
createInvitationUrl: createSpaceInvitationUrl,
|
|
@@ -4089,7 +3839,7 @@ var Shell = ({ runtime }) => {
|
|
|
4089
3839
|
}
|
|
4090
3840
|
}) : null;
|
|
4091
3841
|
case import_react_client13.ShellLayout.JOIN_SPACE:
|
|
4092
|
-
return /* @__PURE__ */
|
|
3842
|
+
return /* @__PURE__ */ import_react60.default.createElement(JoinDialog, {
|
|
4093
3843
|
initialInvitationCode: invitationCode,
|
|
4094
3844
|
onDone: async (result) => {
|
|
4095
3845
|
blurActiveElement();
|
|
@@ -4121,8 +3871,8 @@ var __dxlog_file15 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/composi
|
|
|
4121
3871
|
var ShellRuntimeImpl = class {
|
|
4122
3872
|
constructor(_port) {
|
|
4123
3873
|
this._port = _port;
|
|
4124
|
-
this.layoutUpdate = new
|
|
4125
|
-
this.invitationUrlUpdate = new
|
|
3874
|
+
this.layoutUpdate = new import_async2.Event();
|
|
3875
|
+
this.invitationUrlUpdate = new import_async2.Event();
|
|
4126
3876
|
this._layout = import_iframe.ShellLayout.DEFAULT;
|
|
4127
3877
|
this._invitationUrl = typeof window !== "undefined" ? window.location.origin : void 0;
|
|
4128
3878
|
this._deviceInvitationParam = "deviceInvitationCode";
|
|
@@ -4224,7 +3974,7 @@ var os = {
|
|
|
4224
3974
|
"sidebar label": "DXOS sidebar",
|
|
4225
3975
|
"copy invitation code label": "Copy URL",
|
|
4226
3976
|
"copy success label": "Copied",
|
|
4227
|
-
"copy self
|
|
3977
|
+
"copy self did label": "Copy DID",
|
|
4228
3978
|
"open share panel label": "View QR code",
|
|
4229
3979
|
"joining space heading": "Joining space",
|
|
4230
3980
|
"join space heading": "Enter space invitation",
|
|
@@ -4332,6 +4082,7 @@ var os = {
|
|
|
4332
4082
|
"select emoji label": "Avatar emoji",
|
|
4333
4083
|
"select hue label": "Avatar background color",
|
|
4334
4084
|
"resetting message": "One moment while the device is reset\u2026",
|
|
4085
|
+
// TODO(burdon): Factor out.
|
|
4335
4086
|
"red label": "Red",
|
|
4336
4087
|
"orange label": "Orange",
|
|
4337
4088
|
"amber label": "Amber",
|
|
@@ -4349,6 +4100,9 @@ var os = {
|
|
|
4349
4100
|
"fuchsia label": "Fuchsia",
|
|
4350
4101
|
"pink label": "Pink",
|
|
4351
4102
|
"rose label": "Rose",
|
|
4103
|
+
"select a hue label": "Select color",
|
|
4104
|
+
"hue label": "Hue",
|
|
4105
|
+
"icon label": "Icon",
|
|
4352
4106
|
"current device tag label": "This device",
|
|
4353
4107
|
"device name placeholder": "{{platform}} on {{os}}",
|
|
4354
4108
|
"more options label": "More options",
|
|
@@ -4383,25 +4137,25 @@ var runShell = async (config = new import_react_client11.Config()) => {
|
|
|
4383
4137
|
const services = new import_react_client11.ClientServicesProxy((0, import_rpc_tunnel.createIFramePort)({
|
|
4384
4138
|
channel: import_client_protocol.DEFAULT_CLIENT_CHANNEL
|
|
4385
4139
|
}));
|
|
4386
|
-
(0, import_client.createRoot)(document.getElementById("root")).render(/* @__PURE__ */
|
|
4387
|
-
tx:
|
|
4140
|
+
(0, import_client.createRoot)(document.getElementById("root")).render(/* @__PURE__ */ import_react59.default.createElement(import_react59.StrictMode, null, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.ThemeProvider, {
|
|
4141
|
+
tx: import_react_ui_theme28.defaultTx,
|
|
4388
4142
|
resourceExtensions: [
|
|
4389
4143
|
osTranslations
|
|
4390
4144
|
]
|
|
4391
|
-
}, /* @__PURE__ */
|
|
4145
|
+
}, /* @__PURE__ */ import_react59.default.createElement(import_react_client11.ClientProvider, {
|
|
4392
4146
|
config,
|
|
4393
4147
|
services,
|
|
4394
4148
|
noBanner: true
|
|
4395
|
-
}, /* @__PURE__ */
|
|
4149
|
+
}, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Clipboard.Provider, null, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Tooltip.Provider, null, /* @__PURE__ */ import_react59.default.createElement(import_react_client11.AgentHostingProvider, null, /* @__PURE__ */ import_react59.default.createElement(Shell, {
|
|
4396
4150
|
runtime
|
|
4397
4151
|
}))))))));
|
|
4398
4152
|
} catch {
|
|
4399
|
-
(0, import_client.createRoot)(document.getElementById("root")).render(/* @__PURE__ */
|
|
4400
|
-
tx:
|
|
4153
|
+
(0, import_client.createRoot)(document.getElementById("root")).render(/* @__PURE__ */ import_react59.default.createElement(import_react59.StrictMode, null, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.ThemeProvider, {
|
|
4154
|
+
tx: import_react_ui_theme28.defaultTx,
|
|
4401
4155
|
resourceExtensions: [
|
|
4402
4156
|
osTranslations
|
|
4403
4157
|
]
|
|
4404
|
-
}, /* @__PURE__ */
|
|
4158
|
+
}, /* @__PURE__ */ import_react59.default.createElement(Fallback, {
|
|
4405
4159
|
onClose: () => runtime.setAppContext({
|
|
4406
4160
|
display: import_react_client11.ShellDisplay.NONE
|
|
4407
4161
|
})
|
|
@@ -4409,23 +4163,23 @@ var runShell = async (config = new import_react_client11.Config()) => {
|
|
|
4409
4163
|
}
|
|
4410
4164
|
};
|
|
4411
4165
|
var Fallback = ({ onClose }) => {
|
|
4412
|
-
const { t } = (0,
|
|
4413
|
-
return /* @__PURE__ */
|
|
4166
|
+
const { t } = (0, import_react_ui32.useTranslation)("os");
|
|
4167
|
+
return /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Dialog.Root, {
|
|
4414
4168
|
modal: true,
|
|
4415
4169
|
open: true,
|
|
4416
4170
|
onOpenChange: () => onClose?.()
|
|
4417
|
-
}, /* @__PURE__ */
|
|
4171
|
+
}, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Dialog.Overlay, null, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Dialog.Content, null, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Dialog.Title, null, t("shell fallback title")), /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Dialog.Close, {
|
|
4418
4172
|
asChild: true,
|
|
4419
4173
|
onClick: () => onClose?.()
|
|
4420
|
-
}, /* @__PURE__ */
|
|
4174
|
+
}, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Button, {
|
|
4421
4175
|
variant: "primary"
|
|
4422
4176
|
}, t("close label"))))));
|
|
4423
4177
|
};
|
|
4424
4178
|
var MemoryShellRuntime = class {
|
|
4425
4179
|
constructor({ layout, invitationCode, spaceKey, invitationUrl, deviceInvitationParam, spaceInvitationParam } = {}) {
|
|
4426
|
-
this.layoutUpdate = new
|
|
4427
|
-
this.invitationUrlUpdate = new
|
|
4428
|
-
this.contextUpdate = new
|
|
4180
|
+
this.layoutUpdate = new import_async3.Event();
|
|
4181
|
+
this.invitationUrlUpdate = new import_async3.Event();
|
|
4182
|
+
this.contextUpdate = new import_async3.Event();
|
|
4429
4183
|
this._layout = layout ?? import_react_client15.ShellLayout.DEFAULT;
|
|
4430
4184
|
this._invitationCode = invitationCode;
|
|
4431
4185
|
this._spaceKey = spaceKey;
|
|
@@ -4467,10 +4221,10 @@ var MemoryShellRuntime = class {
|
|
|
4467
4221
|
this.contextUpdate.emit(context);
|
|
4468
4222
|
}
|
|
4469
4223
|
};
|
|
4470
|
-
var ShellContext = /* @__PURE__ */ (0,
|
|
4224
|
+
var ShellContext = /* @__PURE__ */ (0, import_react63.createContext)({});
|
|
4471
4225
|
var useShell = () => {
|
|
4472
4226
|
const client = (0, import_react_client14.useClient)();
|
|
4473
|
-
const { runtime, setDisplay } = (0,
|
|
4227
|
+
const { runtime, setDisplay } = (0, import_react63.useContext)(ShellContext);
|
|
4474
4228
|
const setLayout = async (layout, options) => {
|
|
4475
4229
|
if (runtime) {
|
|
4476
4230
|
if (layout === import_react_client14.ShellLayout.DEFAULT) {
|
|
@@ -4492,8 +4246,8 @@ var useShell = () => {
|
|
|
4492
4246
|
var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoinedSpace, children }) => {
|
|
4493
4247
|
const client = (0, import_react_client14.useClient)();
|
|
4494
4248
|
const identity = (0, import_halo5.useIdentity)();
|
|
4495
|
-
const [display, setDisplay] = (0,
|
|
4496
|
-
const shellRuntime = (0,
|
|
4249
|
+
const [display, setDisplay] = (0, import_react63.useState)(!identity || spaceInvitationCode || deviceInvitationCode ? import_react_client14.ShellDisplay.FULLSCREEN : import_react_client14.ShellDisplay.NONE);
|
|
4250
|
+
const shellRuntime = (0, import_react63.useMemo)(() => {
|
|
4497
4251
|
if (client.config.get("runtime.app.env.DX_VAULT") !== "false") {
|
|
4498
4252
|
return;
|
|
4499
4253
|
}
|
|
@@ -4518,7 +4272,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4518
4272
|
spaceInvitationCode,
|
|
4519
4273
|
deviceInvitationCode
|
|
4520
4274
|
]);
|
|
4521
|
-
const handleKeyDown = (0,
|
|
4275
|
+
const handleKeyDown = (0, import_react63.useCallback)((event) => {
|
|
4522
4276
|
if (!space || !shellRuntime) {
|
|
4523
4277
|
return;
|
|
4524
4278
|
}
|
|
@@ -4539,7 +4293,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4539
4293
|
space,
|
|
4540
4294
|
shellRuntime
|
|
4541
4295
|
]);
|
|
4542
|
-
(0,
|
|
4296
|
+
(0, import_react63.useEffect)(() => {
|
|
4543
4297
|
if (!shellRuntime) {
|
|
4544
4298
|
return;
|
|
4545
4299
|
}
|
|
@@ -4549,7 +4303,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4549
4303
|
shellRuntime,
|
|
4550
4304
|
handleKeyDown
|
|
4551
4305
|
]);
|
|
4552
|
-
(0,
|
|
4306
|
+
(0, import_react63.useEffect)(() => {
|
|
4553
4307
|
if (!shellRuntime) {
|
|
4554
4308
|
return;
|
|
4555
4309
|
}
|
|
@@ -4562,11 +4316,11 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4562
4316
|
}, [
|
|
4563
4317
|
shellRuntime
|
|
4564
4318
|
]);
|
|
4565
|
-
return /* @__PURE__ */
|
|
4566
|
-
className: (0,
|
|
4567
|
-
}, /* @__PURE__ */
|
|
4319
|
+
return /* @__PURE__ */ import_react63.default.createElement(import_react63.default.Fragment, null, shellRuntime && /* @__PURE__ */ import_react63.default.createElement("div", {
|
|
4320
|
+
className: (0, import_react_ui_theme29.mx)(display === import_react_client14.ShellDisplay.NONE ? "hidden" : "")
|
|
4321
|
+
}, /* @__PURE__ */ import_react63.default.createElement(Shell, {
|
|
4568
4322
|
runtime: shellRuntime
|
|
4569
|
-
})), /* @__PURE__ */
|
|
4323
|
+
})), /* @__PURE__ */ import_react63.default.createElement(ShellContext.Provider, {
|
|
4570
4324
|
value: {
|
|
4571
4325
|
runtime: shellRuntime,
|
|
4572
4326
|
setDisplay
|
|
@@ -4587,11 +4341,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4587
4341
|
ConfirmResetImpl,
|
|
4588
4342
|
DeviceList,
|
|
4589
4343
|
Emoji,
|
|
4590
|
-
EmojiPickerBlock,
|
|
4591
|
-
EmojiPickerToolbarButton,
|
|
4592
4344
|
Heading,
|
|
4593
|
-
HuePickerBlock,
|
|
4594
|
-
HuePickerToolbarButton,
|
|
4595
4345
|
IdentityDialog,
|
|
4596
4346
|
IdentityListItem,
|
|
4597
4347
|
IdentityPanel,
|