@dxos/shell 0.7.5-main.ff8607b → 0.7.5-staging.b81e783
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} +8603 -8542
- 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 +36 -30
- package/dist/lib/browser/react.mjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/react.cjs +25 -19
- package/dist/lib/node/react.cjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/react.mjs +36 -30
- package/dist/lib/node-esm/react.mjs.map +3 -3
- 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 +17 -43
- 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 +5 -39
- 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 +2 -13
- package/dist/types/src/components/CompoundButton/CompoundButton.js.map +1 -1
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.d.ts +7 -8
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.d.ts.map +1 -1
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.js +9 -14
- package/dist/types/src/components/CompoundButton/CompoundButton.stories.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 +6 -16
- package/dist/types/src/components/DeviceList/DeviceList.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListItem.js +6 -58
- package/dist/types/src/components/DeviceList/DeviceListItem.js.map +1 -1
- package/dist/types/src/components/IdentityList/IdentityListItem.js +5 -41
- 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 +8 -41
- package/dist/types/src/components/IdentityList/SpaceMemberList.js.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.d.ts +2 -3
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.d.ts.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.js +4 -7
- package/dist/types/src/components/IdentityList/SpaceMemberList.stories.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 +5 -11
- package/dist/types/src/components/InvitationList/InvitationList.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationList.stories.d.ts +2 -3
- package/dist/types/src/components/InvitationList/InvitationList.stories.d.ts.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationList.stories.js +4 -7
- 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 +3 -35
- 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 +5 -67
- package/dist/types/src/components/InvitationList/InvitationListItem.js.map +1 -1
- package/dist/types/src/components/Panel/Action.js +8 -58
- package/dist/types/src/components/Panel/Action.js.map +1 -1
- package/dist/types/src/components/Panel/Actions.js +5 -37
- 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 +4 -9
- 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 +3 -11
- package/dist/types/src/components/Panel/Emoji.js.map +1 -1
- package/dist/types/src/components/Panel/Heading.js +5 -41
- 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 +2 -11
- 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 +2 -8
- package/dist/types/src/components/Panel/Label.js.map +1 -1
- package/dist/types/src/components/Panel/Panel.stories.d.ts +3 -4
- package/dist/types/src/components/Panel/Panel.stories.d.ts.map +1 -1
- package/dist/types/src/components/Panel/Panel.stories.js +5 -20
- package/dist/types/src/components/Panel/Panel.stories.js.map +1 -1
- package/dist/types/src/components/Panel/StepHeading.js +5 -37
- package/dist/types/src/components/Panel/StepHeading.js.map +1 -1
- package/dist/types/src/components/SpaceListItem.js +5 -41
- 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 +2 -11
- 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 +7 -40
- package/dist/types/src/components/Viewport/Viewport.js.map +1 -1
- package/dist/types/src/components/Viewport/Viewport.stories.d.ts +1 -2
- package/dist/types/src/components/Viewport/Viewport.stories.d.ts.map +1 -1
- package/dist/types/src/components/Viewport/Viewport.stories.js +5 -27
- package/dist/types/src/components/Viewport/Viewport.stories.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 +3 -14
- package/dist/types/src/composites/IdentityDialog/IdentityDialog.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 +4 -14
- package/dist/types/src/composites/JoinDialog/JoinDialog.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 +9 -41
- 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 +5 -40
- package/dist/types/src/composites/Shell/ShellContext.js.map +1 -1
- package/dist/types/src/composites/Shell/run-shell.js +7 -52
- package/dist/types/src/composites/Shell/run-shell.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 +3 -14
- package/dist/types/src/composites/SpaceDialog/SpaceDialog.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 +2 -12
- package/dist/types/src/composites/StatusDialog/StatusDialog.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 +18 -94
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.d.ts +10 -11
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.js +8 -10
- 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/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 +3 -11
- 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 +13 -55
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinHeading.js +6 -40
- 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 +6 -63
- package/dist/types/src/panels/JoinPanel/JoinPanel.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.d.ts +14 -15
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.js +17 -21
- package/dist/types/src/panels/JoinPanel/JoinPanel.stories.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 +5 -13
- 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 +6 -46
- 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 +7 -43
- 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 +6 -41
- 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 +16 -63
- 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 +12 -49
- 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 +8 -27
- package/dist/types/src/panels/JoinPanel/steps/InvitationRescuer.js.map +1 -1
- package/dist/types/src/panels/Panels.stories.d.ts +3 -3
- package/dist/types/src/panels/Panels.stories.d.ts.map +1 -1
- package/dist/types/src/panels/Panels.stories.js +6 -14
- 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 +8 -50
- package/dist/types/src/panels/SpacePanel/SpacePanel.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts +17 -18
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js +37 -43
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.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 +6 -49
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.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 +2 -10
- package/dist/types/src/panels/StatusPanel/StatusPanel.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 +12 -54
- 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 +6 -56
- package/dist/types/src/steps/InvitationManager.js.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.d.ts +1 -2
- package/dist/types/src/stories/Invitations.e2e-stories.d.ts.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.js +15 -75
- package/dist/types/src/stories/Invitations.e2e-stories.js.map +1 -1
- package/dist/types/src/testing/fixtures/identities.d.ts.map +1 -1
- package/dist/types/src/testing/fixtures/identities.js +2 -0
- package/dist/types/src/testing/fixtures/identities.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 +5 -1
- package/dist/types/src/translations/locales/en-US.js.map +1 -1
- package/package.json +28 -27
- package/src/panels/IdentityPanel/IdentityPanel.stories.tsx +3 -0
- package/src/panels/IdentityPanel/IdentityPanel.tsx +31 -29
- package/src/panels/IdentityPanel/IdentityPanelProps.ts +8 -1
- package/src/panels/IdentityPanel/steps/ProfileForm.tsx +2 -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 -1045
- package/dist/bundle/shell.umd.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/playwright/{playwright.config.ts → playwright.config.cts} +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import { IdentificationCard, Plugs, PlugsConnected } from '@phosphor-icons/react';
|
|
6
6
|
import React, { useEffect, useMemo, useState } from 'react';
|
|
7
7
|
|
|
8
8
|
import { generateName } from '@dxos/display-name';
|
|
@@ -12,9 +12,9 @@ import { type Identity, useIdentity, useDevices, useHaloInvitations } from '@dxo
|
|
|
12
12
|
import { useInvitationStatus } from '@dxos/react-client/invitations';
|
|
13
13
|
import { type CancellableInvitationObservable } from '@dxos/react-client/invitations';
|
|
14
14
|
import { useNetworkStatus, ConnectionState } from '@dxos/react-client/mesh';
|
|
15
|
-
import { Avatar, Input, Toolbar, Tooltip,
|
|
16
|
-
import { EmojiPickerToolbarButton,
|
|
17
|
-
import { getSize } from '@dxos/react-ui-theme';
|
|
15
|
+
import { Avatar, Clipboard, Input, Toolbar, Tooltip, useId, useTranslation } from '@dxos/react-ui';
|
|
16
|
+
import { EmojiPickerToolbarButton, HuePicker } from '@dxos/react-ui-pickers';
|
|
17
|
+
import { errorText, getSize } from '@dxos/react-ui-theme';
|
|
18
18
|
import { hexToEmoji, hexToHue, keyToFallback } from '@dxos/util';
|
|
19
19
|
|
|
20
20
|
import {
|
|
@@ -44,15 +44,13 @@ const IdentityHeading = ({
|
|
|
44
44
|
onUpdateProfile,
|
|
45
45
|
connectionState,
|
|
46
46
|
onChangeConnectionState,
|
|
47
|
+
onManageCredentials,
|
|
47
48
|
}: IdentityPanelHeadingProps) => {
|
|
48
49
|
const fallbackValue = keyToFallback(identity.identityKey);
|
|
49
50
|
const { t } = useTranslation('os');
|
|
50
51
|
const [displayName, setDisplayName] = useState(identity.profile?.displayName ?? '');
|
|
51
52
|
const [emoji, setEmojiDirectly] = useState<string>(getEmojiValue(identity));
|
|
52
53
|
const [hue, setHueDirectly] = useState<string>(getHueValue(identity));
|
|
53
|
-
const { textValue, setTextValue } = useClipboard();
|
|
54
|
-
const identityHex = identity.identityKey.toHex();
|
|
55
|
-
const publicKeyCopied = textValue === identityHex;
|
|
56
54
|
|
|
57
55
|
const setEmoji = (nextEmoji: string) => {
|
|
58
56
|
setEmojiDirectly(nextEmoji);
|
|
@@ -94,31 +92,33 @@ const IdentityHeading = ({
|
|
|
94
92
|
|
|
95
93
|
<Toolbar.Root classNames='flex justify-center items-center gap-1 pt-3'>
|
|
96
94
|
<EmojiPickerToolbarButton emoji={emoji} onChangeEmoji={setEmoji} classNames='bs-[--rail-action]' />
|
|
97
|
-
<
|
|
98
|
-
<
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
<Tooltip.
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
95
|
+
<HuePicker value={hue} onChange={setHue} classNames='bs-[--rail-action]' />
|
|
96
|
+
<Clipboard.IconButton
|
|
97
|
+
classNames='bs-[--rail-action]'
|
|
98
|
+
data-testid='update-profile-form-copy-key'
|
|
99
|
+
label={t('copy self did label')}
|
|
100
|
+
value={identity.did}
|
|
101
|
+
/>
|
|
102
|
+
{onManageCredentials && (
|
|
103
|
+
<Tooltip.Root>
|
|
104
|
+
<Tooltip.Trigger asChild>
|
|
105
|
+
<Toolbar.Button classNames='bs-[--rail-action]' onClick={onManageCredentials}>
|
|
106
|
+
<span className='sr-only'>{t('manage credentials label')}</span>
|
|
107
|
+
<IdentificationCard className={getSize(5)} />
|
|
108
|
+
</Toolbar.Button>
|
|
109
|
+
</Tooltip.Trigger>
|
|
110
|
+
<Tooltip.Portal>
|
|
111
|
+
<Tooltip.Content side='bottom'>
|
|
112
|
+
{t('manage credentials label')}
|
|
113
|
+
<Tooltip.Arrow />
|
|
114
|
+
</Tooltip.Content>
|
|
115
|
+
</Tooltip.Portal>
|
|
116
|
+
</Tooltip.Root>
|
|
117
|
+
)}
|
|
118
118
|
<Tooltip.Root>
|
|
119
119
|
<Tooltip.Trigger asChild>
|
|
120
120
|
<Toolbar.Button
|
|
121
|
-
classNames={['bs-[--rail-action]', !isConnected &&
|
|
121
|
+
classNames={['bs-[--rail-action]', !isConnected && errorText]}
|
|
122
122
|
onClick={() =>
|
|
123
123
|
onChangeConnectionState?.(isConnected ? ConnectionState.OFFLINE : ConnectionState.ONLINE)
|
|
124
124
|
}
|
|
@@ -154,6 +154,7 @@ export const IdentityPanelImpl = (props: IdentityPanelImplProps) => {
|
|
|
154
154
|
connectionState,
|
|
155
155
|
onChangeConnectionState,
|
|
156
156
|
onDone,
|
|
157
|
+
onManageCredentials,
|
|
157
158
|
...rest
|
|
158
159
|
} = props;
|
|
159
160
|
const { t } = useTranslation('os');
|
|
@@ -181,6 +182,7 @@ export const IdentityPanelImpl = (props: IdentityPanelImplProps) => {
|
|
|
181
182
|
onUpdateProfile,
|
|
182
183
|
connectionState,
|
|
183
184
|
onChangeConnectionState,
|
|
185
|
+
onManageCredentials,
|
|
184
186
|
}}
|
|
185
187
|
/>
|
|
186
188
|
<Viewport.Root activeView={activeView}>
|
|
@@ -29,6 +29,7 @@ export type IdentityPanelImplProps = {
|
|
|
29
29
|
connectionState?: ConnectionState;
|
|
30
30
|
onChangeConnectionState?: (nextState: ConnectionState) => Promise<void>;
|
|
31
31
|
onUpdateProfile?: (profile: NonNullable<Identity['profile']>) => Promise<void>;
|
|
32
|
+
onManageCredentials?: () => Promise<void>;
|
|
32
33
|
onResetStorage?: () => Promise<void>;
|
|
33
34
|
onRecover?: () => Promise<void>;
|
|
34
35
|
onJoinNewIdentity?: () => Promise<void>;
|
|
@@ -46,7 +47,13 @@ export type IdentityPanelProps = Partial<Omit<IdentityPanelImplProps, 'send' | '
|
|
|
46
47
|
|
|
47
48
|
export type IdentityPanelHeadingProps = Pick<
|
|
48
49
|
IdentityPanelImplProps,
|
|
49
|
-
|
|
50
|
+
| 'titleId'
|
|
51
|
+
| 'identity'
|
|
52
|
+
| 'onDone'
|
|
53
|
+
| 'onUpdateProfile'
|
|
54
|
+
| 'connectionState'
|
|
55
|
+
| 'onChangeConnectionState'
|
|
56
|
+
| 'onManageCredentials'
|
|
50
57
|
> & {
|
|
51
58
|
title: string;
|
|
52
59
|
};
|
|
@@ -8,7 +8,7 @@ import { type Event, type SingleOrArray } from 'xstate';
|
|
|
8
8
|
import { log } from '@dxos/log';
|
|
9
9
|
import { type Identity } from '@dxos/react-client/halo';
|
|
10
10
|
import { useClipboard, useTranslation } from '@dxos/react-ui';
|
|
11
|
-
import { EmojiPickerBlock,
|
|
11
|
+
import { EmojiPickerBlock, HuePicker } from '@dxos/react-ui-pickers';
|
|
12
12
|
import { hexToEmoji, hexToHue } from '@dxos/util';
|
|
13
13
|
|
|
14
14
|
import { Action, Actions, StepHeading, Input } from '../../../components';
|
|
@@ -75,12 +75,7 @@ const ProfileFormImpl = (props: ProfileFormImplProps) => {
|
|
|
75
75
|
disabled={disabled}
|
|
76
76
|
onClickClear={() => setEmoji(getEmojiValue(identity))}
|
|
77
77
|
/>
|
|
78
|
-
<
|
|
79
|
-
hue={hue}
|
|
80
|
-
onChangeHue={setHue}
|
|
81
|
-
disabled={disabled}
|
|
82
|
-
onClickClear={() => setHue(getHueValue(identity))}
|
|
83
|
-
/>
|
|
78
|
+
<HuePicker disabled={disabled} value={hue} onChange={setHue} onReset={() => setHue(getHueValue(identity))} />
|
|
84
79
|
</div>
|
|
85
80
|
</div>
|
|
86
81
|
<Actions>
|
|
@@ -31,7 +31,7 @@ export const IdentityInput = (props: IdentityInputProps) => {
|
|
|
31
31
|
const [validationMessage, setValidationMessage] = useState('');
|
|
32
32
|
const handleConfirm = async (value: string) => {
|
|
33
33
|
if (isRecover) {
|
|
34
|
-
await client.halo.recoverIdentity({
|
|
34
|
+
await client.halo.recoverIdentity({ recoveryCode: value }).then(
|
|
35
35
|
(identity) => {
|
|
36
36
|
send?.({ type: 'selectIdentity' as const, identity });
|
|
37
37
|
},
|
|
@@ -6,7 +6,7 @@ import '@dxos-theme';
|
|
|
6
6
|
|
|
7
7
|
import React from 'react';
|
|
8
8
|
|
|
9
|
-
import { PublicKey } from '@dxos/keys';
|
|
9
|
+
import { IdentityDid, PublicKey } from '@dxos/keys';
|
|
10
10
|
import { HaloSpaceMember, SpaceMember } from '@dxos/react-client/echo';
|
|
11
11
|
import { Invitation } from '@dxos/react-client/invitations';
|
|
12
12
|
import { withTheme } from '@dxos/storybook-utils';
|
|
@@ -179,6 +179,7 @@ export const SpaceManagerWithMember = () => {
|
|
|
179
179
|
presence: SpaceMember.PresenceState.ONLINE,
|
|
180
180
|
role: HaloSpaceMember.Role.ADMIN,
|
|
181
181
|
identity: {
|
|
182
|
+
did: IdentityDid.random(),
|
|
182
183
|
identityKey: PublicKey.random(),
|
|
183
184
|
},
|
|
184
185
|
},
|
|
@@ -212,6 +213,7 @@ export const SpaceManagerWithMembers = () => {
|
|
|
212
213
|
presence: SpaceMember.PresenceState.ONLINE,
|
|
213
214
|
role: HaloSpaceMember.Role.ADMIN,
|
|
214
215
|
identity: {
|
|
216
|
+
did: IdentityDid.random(),
|
|
215
217
|
identityKey: PublicKey.random(),
|
|
216
218
|
profile: {
|
|
217
219
|
displayName: 'John Doe',
|
|
@@ -252,6 +254,7 @@ export const SpaceManagerWithMoreMembers = () => {
|
|
|
252
254
|
presence: SpaceMember.PresenceState.ONLINE,
|
|
253
255
|
role: HaloSpaceMember.Role.ADMIN,
|
|
254
256
|
identity: {
|
|
257
|
+
did: IdentityDid.random(),
|
|
255
258
|
identityKey: PublicKey.random(),
|
|
256
259
|
profile: {
|
|
257
260
|
displayName: 'John Doe',
|
|
@@ -262,6 +265,7 @@ export const SpaceManagerWithMoreMembers = () => {
|
|
|
262
265
|
presence: SpaceMember.PresenceState.OFFLINE,
|
|
263
266
|
role: HaloSpaceMember.Role.ADMIN,
|
|
264
267
|
identity: {
|
|
268
|
+
did: IdentityDid.random(),
|
|
265
269
|
identityKey: PublicKey.random(),
|
|
266
270
|
profile: {
|
|
267
271
|
displayName: 'Alice Wong',
|
|
@@ -272,6 +276,7 @@ export const SpaceManagerWithMoreMembers = () => {
|
|
|
272
276
|
presence: SpaceMember.PresenceState.OFFLINE,
|
|
273
277
|
role: HaloSpaceMember.Role.ADMIN,
|
|
274
278
|
identity: {
|
|
279
|
+
did: IdentityDid.random(),
|
|
275
280
|
identityKey: PublicKey.random(),
|
|
276
281
|
profile: {
|
|
277
282
|
displayName: 'Steel Nickels',
|
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
import { IdentityDid } from '@dxos/keys';
|
|
5
6
|
import { PublicKey } from '@dxos/react-client';
|
|
6
7
|
import { HaloSpaceMember, SpaceMember } from '@dxos/react-client/echo';
|
|
7
8
|
|
|
8
9
|
export const alice: SpaceMember = {
|
|
9
10
|
role: HaloSpaceMember.Role.ADMIN,
|
|
10
11
|
identity: {
|
|
12
|
+
did: IdentityDid.random(),
|
|
11
13
|
identityKey: PublicKey.random(),
|
|
12
14
|
profile: {
|
|
13
15
|
displayName: 'Alice',
|
|
@@ -8,7 +8,7 @@ export const os = {
|
|
|
8
8
|
'sidebar label': 'DXOS sidebar',
|
|
9
9
|
'copy invitation code label': 'Copy URL',
|
|
10
10
|
'copy success label': 'Copied',
|
|
11
|
-
'copy self
|
|
11
|
+
'copy self did label': 'Copy DID',
|
|
12
12
|
'open share panel label': 'View QR code',
|
|
13
13
|
'joining space heading': 'Joining space',
|
|
14
14
|
'join space heading': 'Enter space invitation',
|
|
@@ -118,6 +118,8 @@ export const os = {
|
|
|
118
118
|
'select emoji label': 'Avatar emoji',
|
|
119
119
|
'select hue label': 'Avatar background color',
|
|
120
120
|
'resetting message': 'One moment while the device is reset…',
|
|
121
|
+
|
|
122
|
+
// TODO(burdon): Factor out.
|
|
121
123
|
'red label': 'Red',
|
|
122
124
|
'orange label': 'Orange',
|
|
123
125
|
'amber label': 'Amber',
|
|
@@ -135,6 +137,10 @@ export const os = {
|
|
|
135
137
|
'fuchsia label': 'Fuchsia',
|
|
136
138
|
'pink label': 'Pink',
|
|
137
139
|
'rose label': 'Rose',
|
|
140
|
+
|
|
141
|
+
'select a hue label': 'Select color',
|
|
142
|
+
'hue label': 'Hue',
|
|
143
|
+
'icon label': 'Icon',
|
|
138
144
|
'current device tag label': 'This device',
|
|
139
145
|
'device name placeholder': '{{platform}} on {{os}}',
|
|
140
146
|
'more options label': 'More options',
|