@dxos/shell 0.7.4 → 0.7.5-labs.071a3e2
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 +17886 -21578
- package/dist/bundle/shell.mjs.map +1 -1
- package/dist/bundle/shell.umd.js +139 -137
- package/dist/bundle/shell.umd.js.map +1 -1
- package/dist/bundle/style.css +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react.mjs +523 -800
- package/dist/lib/browser/react.mjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/react.cjs +620 -897
- 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 +523 -800
- package/dist/lib/node-esm/react.mjs.map +4 -4
- package/dist/types/src/components/AgentConfig.d.ts.map +1 -1
- package/dist/types/src/components/AgentConfig.js +2 -2
- package/dist/types/src/components/AgentConfig.js.map +1 -1
- package/dist/types/src/components/AuthCode.js +17 -7
- package/dist/types/src/components/AuthCode.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceList.js +1 -1
- package/dist/types/src/components/DeviceList/DeviceList.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListItem.js +17 -7
- package/dist/types/src/components/DeviceList/DeviceListItem.js.map +1 -1
- package/dist/types/src/components/IdentityList/IdentityListItem.js +17 -7
- package/dist/types/src/components/IdentityList/IdentityListItem.js.map +1 -1
- package/dist/types/src/components/IdentityList/SpaceMemberList.js +17 -7
- package/dist/types/src/components/IdentityList/SpaceMemberList.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListContainer.js +17 -7
- package/dist/types/src/components/InvitationList/InvitationListContainer.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListItem.js +19 -9
- package/dist/types/src/components/InvitationList/InvitationListItem.js.map +1 -1
- package/dist/types/src/components/Panel/Action.js +17 -7
- package/dist/types/src/components/Panel/Action.js.map +1 -1
- package/dist/types/src/components/Panel/Actions.js +17 -7
- package/dist/types/src/components/Panel/Actions.js.map +1 -1
- package/dist/types/src/components/Panel/Heading.js +17 -7
- package/dist/types/src/components/Panel/Heading.js.map +1 -1
- package/dist/types/src/components/Panel/StepHeading.js +17 -7
- package/dist/types/src/components/Panel/StepHeading.js.map +1 -1
- package/dist/types/src/components/SpaceListItem.js +17 -7
- package/dist/types/src/components/SpaceListItem.js.map +1 -1
- package/dist/types/src/components/StorybookDialog.js +1 -1
- package/dist/types/src/components/Viewport/Viewport.js +17 -7
- package/dist/types/src/components/Viewport/Viewport.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 +0 -2
- package/dist/types/src/components/index.js.map +1 -1
- package/dist/types/src/composites/Shell/Shell.js +17 -7
- package/dist/types/src/composites/Shell/Shell.js.map +1 -1
- package/dist/types/src/composites/Shell/ShellContext.js +17 -7
- package/dist/types/src/composites/Shell/ShellContext.js.map +1 -1
- package/dist/types/src/composites/Shell/run-shell.js +17 -7
- package/dist/types/src/composites/Shell/run-shell.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js +22 -11
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.js +2 -0
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.stories.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.js +20 -9
- package/dist/types/src/panels/IdentityPanel/steps/ProfileForm.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinHeading.js +17 -7
- package/dist/types/src/panels/JoinPanel/JoinHeading.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/JoinPanel.js +17 -7
- package/dist/types/src/panels/JoinPanel/JoinPanel.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/IdentityAdded.js +17 -7
- package/dist/types/src/panels/JoinPanel/steps/IdentityAdded.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/IdentityInput.js +18 -8
- package/dist/types/src/panels/JoinPanel/steps/IdentityInput.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationAccepted.js +17 -7
- package/dist/types/src/panels/JoinPanel/steps/InvitationAccepted.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationAuthenticator.js +17 -7
- package/dist/types/src/panels/JoinPanel/steps/InvitationAuthenticator.js.map +1 -1
- package/dist/types/src/panels/JoinPanel/steps/InvitationInput.js +17 -7
- package/dist/types/src/panels/JoinPanel/steps/InvitationInput.js.map +1 -1
- package/dist/types/src/panels/Panels.stories.js +17 -7
- package/dist/types/src/panels/Panels.stories.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.js +17 -7
- package/dist/types/src/panels/SpacePanel/SpacePanel.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.d.ts.map +1 -1
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js +5 -0
- package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js +17 -7
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js.map +1 -1
- package/dist/types/src/steps/ConfirmReset.js +17 -7
- package/dist/types/src/steps/ConfirmReset.js.map +1 -1
- package/dist/types/src/steps/InvitationManager.js +17 -7
- package/dist/types/src/steps/InvitationManager.js.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.js +17 -7
- 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/index.js +17 -7
- package/dist/types/src/translations/index.js.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +31 -30
- package/src/components/AgentConfig.tsx +2 -4
- package/src/components/DeviceList/DeviceList.tsx +1 -1
- package/src/components/InvitationList/InvitationListItem.tsx +2 -2
- package/src/components/StorybookDialog.tsx +1 -1
- package/src/components/index.ts +0 -2
- package/src/panels/IdentityPanel/IdentityPanel.stories.tsx +2 -0
- package/src/panels/IdentityPanel/IdentityPanel.tsx +4 -3
- package/src/panels/IdentityPanel/steps/ProfileForm.tsx +2 -1
- 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/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 -136
- 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 -123
- package/dist/types/src/components/HuePicker.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/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,222 +101,212 @@ 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"));
|
|
192
176
|
var import_display_name3 = require("@dxos/display-name");
|
|
193
177
|
var import_log = require("@dxos/log");
|
|
194
178
|
var import_react_client2 = require("@dxos/react-client");
|
|
195
179
|
var import_halo2 = require("@dxos/react-client/halo");
|
|
196
180
|
var import_invitations2 = require("@dxos/react-client/invitations");
|
|
197
181
|
var import_mesh2 = require("@dxos/react-client/mesh");
|
|
198
|
-
var
|
|
199
|
-
var
|
|
182
|
+
var import_react_ui15 = require("@dxos/react-ui");
|
|
183
|
+
var import_react_ui_pickers = require("@dxos/react-ui-pickers");
|
|
184
|
+
var import_react_ui_theme19 = require("@dxos/react-ui-theme");
|
|
200
185
|
var import_util5 = require("@dxos/util");
|
|
201
|
-
var
|
|
186
|
+
var import_react30 = require("@xstate/react");
|
|
202
187
|
var import_xstate = require("xstate");
|
|
203
188
|
var import_log2 = require("@dxos/log");
|
|
204
|
-
var
|
|
189
|
+
var import_react31 = __toESM(require("react"));
|
|
205
190
|
var import_log3 = require("@dxos/log");
|
|
206
191
|
var import_react_client3 = require("@dxos/react-client");
|
|
207
192
|
var import_halo3 = require("@dxos/react-client/halo");
|
|
208
193
|
var import_invitations3 = require("@dxos/react-client/invitations");
|
|
209
|
-
var
|
|
194
|
+
var import_react32 = __toESM(require("react"));
|
|
210
195
|
var import_log4 = require("@dxos/log");
|
|
211
|
-
var
|
|
196
|
+
var import_react_ui16 = require("@dxos/react-ui");
|
|
197
|
+
var import_react_ui_pickers2 = require("@dxos/react-ui-pickers");
|
|
212
198
|
var import_util6 = require("@dxos/util");
|
|
213
199
|
var import_react_client4 = require("@dxos/react-client");
|
|
214
|
-
var
|
|
200
|
+
var import_react33 = require("react");
|
|
215
201
|
var import_invariant = require("@dxos/invariant");
|
|
216
202
|
var import_log5 = require("@dxos/log");
|
|
217
203
|
var import_services = require("@dxos/protocols/proto/dxos/client/services");
|
|
218
204
|
var import_metadata = require("@dxos/protocols/proto/dxos/echo/metadata");
|
|
219
205
|
var import_react_client5 = require("@dxos/react-client");
|
|
220
|
-
var
|
|
206
|
+
var import_react34 = require("react");
|
|
221
207
|
var import_invariant2 = require("@dxos/invariant");
|
|
222
208
|
var import_log6 = require("@dxos/log");
|
|
223
209
|
var import_react_client6 = require("@dxos/react-client");
|
|
224
210
|
var import_invitations4 = require("@dxos/react-client/invitations");
|
|
225
|
-
var
|
|
226
|
-
var
|
|
211
|
+
var import_react35 = require("@phosphor-icons/react");
|
|
212
|
+
var import_react36 = __toESM(require("react"));
|
|
227
213
|
var import_react_qr_rounded = require("react-qr-rounded");
|
|
228
|
-
var
|
|
229
|
-
var
|
|
214
|
+
var import_react_ui17 = require("@dxos/react-ui");
|
|
215
|
+
var import_react_ui_theme20 = require("@dxos/react-ui-theme");
|
|
230
216
|
var import_util7 = require("@dxos/util");
|
|
231
217
|
var import_invitations5 = require("@dxos/react-client/invitations");
|
|
232
|
-
var
|
|
233
|
-
var
|
|
218
|
+
var import_react37 = require("@phosphor-icons/react");
|
|
219
|
+
var import_react38 = __toESM(require("react"));
|
|
234
220
|
var import_log7 = require("@dxos/log");
|
|
235
|
-
var
|
|
236
|
-
var
|
|
237
|
-
var
|
|
221
|
+
var import_react_ui18 = require("@dxos/react-ui");
|
|
222
|
+
var import_react_ui_theme21 = require("@dxos/react-ui-theme");
|
|
223
|
+
var import_react39 = __toESM(require("react"));
|
|
238
224
|
var import_log8 = require("@dxos/log");
|
|
239
225
|
var import_react_client7 = require("@dxos/react-client");
|
|
240
226
|
var import_halo4 = require("@dxos/react-client/halo");
|
|
241
|
-
var
|
|
242
|
-
var
|
|
243
|
-
var
|
|
244
|
-
var
|
|
245
|
-
var
|
|
246
|
-
var
|
|
247
|
-
var
|
|
227
|
+
var import_react_ui19 = require("@dxos/react-ui");
|
|
228
|
+
var import_react40 = require("@phosphor-icons/react");
|
|
229
|
+
var import_react41 = __toESM(require("react"));
|
|
230
|
+
var import_react_ui20 = require("@dxos/react-ui");
|
|
231
|
+
var import_react_ui_theme22 = require("@dxos/react-ui-theme");
|
|
232
|
+
var import_react42 = require("@xstate/react");
|
|
233
|
+
var import_react43 = require("react");
|
|
248
234
|
var import_xstate2 = require("xstate");
|
|
249
235
|
var import_log9 = require("@dxos/log");
|
|
250
236
|
var import_react_client8 = require("@dxos/react-client");
|
|
251
237
|
var import_invitations6 = require("@dxos/react-client/invitations");
|
|
252
|
-
var
|
|
253
|
-
var
|
|
254
|
-
var
|
|
255
|
-
var
|
|
256
|
-
var
|
|
238
|
+
var import_react44 = require("@phosphor-icons/react");
|
|
239
|
+
var import_react45 = __toESM(require("react"));
|
|
240
|
+
var import_react_ui21 = require("@dxos/react-ui");
|
|
241
|
+
var import_react_ui_theme23 = require("@dxos/react-ui-theme");
|
|
242
|
+
var import_react46 = __toESM(require("react"));
|
|
257
243
|
var import_display_name4 = require("@dxos/display-name");
|
|
258
|
-
var
|
|
259
|
-
var
|
|
244
|
+
var import_react_ui22 = require("@dxos/react-ui");
|
|
245
|
+
var import_react_ui_theme24 = require("@dxos/react-ui-theme");
|
|
260
246
|
var import_util8 = require("@dxos/util");
|
|
261
|
-
var
|
|
247
|
+
var import_react47 = __toESM(require("react"));
|
|
262
248
|
var import_log10 = require("@dxos/log");
|
|
263
249
|
var import_react_client9 = require("@dxos/react-client");
|
|
250
|
+
var import_react_ui23 = require("@dxos/react-ui");
|
|
251
|
+
var import_react48 = __toESM(require("react"));
|
|
252
|
+
var import_react_ui24 = require("@dxos/react-ui");
|
|
253
|
+
var import_react49 = __toESM(require("react"));
|
|
254
|
+
var import_log11 = require("@dxos/log");
|
|
264
255
|
var import_react_ui25 = require("@dxos/react-ui");
|
|
265
|
-
var
|
|
256
|
+
var import_react50 = __toESM(require("react"));
|
|
266
257
|
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"));
|
|
258
|
+
var import_react_ui_theme25 = require("@dxos/react-ui-theme");
|
|
259
|
+
var import_react51 = __toESM(require("react"));
|
|
274
260
|
var import_invitations7 = require("@dxos/react-client/invitations");
|
|
275
|
-
var
|
|
276
|
-
var
|
|
261
|
+
var import_react_ui27 = require("@dxos/react-ui");
|
|
262
|
+
var import_react_ui_theme26 = require("@dxos/react-ui-theme");
|
|
277
263
|
var import_util9 = require("@dxos/util");
|
|
278
264
|
var import_invitations8 = require("@dxos/react-client/invitations");
|
|
279
|
-
var
|
|
280
|
-
var
|
|
265
|
+
var import_react52 = require("@phosphor-icons/react");
|
|
266
|
+
var import_react53 = __toESM(require("react"));
|
|
281
267
|
var import_log12 = require("@dxos/log");
|
|
282
268
|
var import_invitations9 = require("@dxos/react-client/invitations");
|
|
283
|
-
var
|
|
284
|
-
var
|
|
269
|
+
var import_react_ui28 = require("@dxos/react-ui");
|
|
270
|
+
var import_react54 = require("@xstate/react");
|
|
285
271
|
var import_xstate3 = require("xstate");
|
|
286
272
|
var import_log13 = require("@dxos/log");
|
|
287
|
-
var
|
|
288
|
-
var
|
|
273
|
+
var import_react55 = require("@phosphor-icons/react");
|
|
274
|
+
var import_react56 = __toESM(require("react"));
|
|
289
275
|
var import_log14 = require("@dxos/log");
|
|
290
276
|
var import_react_client10 = require("@dxos/react-client");
|
|
291
277
|
var import_echo4 = require("@dxos/react-client/echo");
|
|
292
278
|
var import_invitations10 = require("@dxos/react-client/invitations");
|
|
279
|
+
var import_react_ui29 = require("@dxos/react-ui");
|
|
280
|
+
var import_react_ui_theme27 = require("@dxos/react-ui-theme");
|
|
281
|
+
var import_react57 = __toESM(require("react"));
|
|
282
|
+
var import_react_ui30 = require("@dxos/react-ui");
|
|
283
|
+
var import_react58 = __toESM(require("react"));
|
|
293
284
|
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"));
|
|
285
|
+
var import_react59 = __toESM(require("react"));
|
|
300
286
|
var import_client = require("react-dom/client");
|
|
301
287
|
var import_client_protocol = require("@dxos/client-protocol");
|
|
302
288
|
var import_react_client11 = require("@dxos/react-client");
|
|
303
|
-
var
|
|
304
|
-
var
|
|
289
|
+
var import_react_ui32 = require("@dxos/react-ui");
|
|
290
|
+
var import_react_ui_theme28 = require("@dxos/react-ui-theme");
|
|
305
291
|
var import_rpc_tunnel = require("@dxos/rpc-tunnel");
|
|
306
|
-
var
|
|
292
|
+
var import_react60 = __toESM(require("react"));
|
|
307
293
|
var import_log15 = require("@dxos/log");
|
|
308
294
|
var import_react_client12 = require("@dxos/react-client");
|
|
309
295
|
var import_react_client13 = require("@dxos/react-client");
|
|
310
296
|
var import_echo5 = require("@dxos/react-client/echo");
|
|
311
|
-
var
|
|
312
|
-
var
|
|
313
|
-
var
|
|
314
|
-
var
|
|
297
|
+
var import_react61 = __toESM(require("react"));
|
|
298
|
+
var import_react_ui33 = require("@dxos/react-ui");
|
|
299
|
+
var import_react62 = __toESM(require("react"));
|
|
300
|
+
var import_react_ui34 = require("@dxos/react-ui");
|
|
315
301
|
var import_async = require("@dxos/async");
|
|
316
302
|
var import_client_protocol2 = require("@dxos/client-protocol");
|
|
317
303
|
var import_invariant3 = require("@dxos/invariant");
|
|
318
304
|
var import_iframe = require("@dxos/protocols/proto/dxos/iframe");
|
|
319
305
|
var import_rpc = require("@dxos/rpc");
|
|
320
|
-
var
|
|
306
|
+
var import_react63 = __toESM(require("react"));
|
|
321
307
|
var import_react_client14 = require("@dxos/react-client");
|
|
322
308
|
var import_halo5 = require("@dxos/react-client/halo");
|
|
323
|
-
var
|
|
309
|
+
var import_react_ui_theme29 = require("@dxos/react-ui-theme");
|
|
324
310
|
var import_async2 = require("@dxos/async");
|
|
325
311
|
var import_react_client15 = require("@dxos/react-client");
|
|
326
312
|
var AgentConfig = ({ agentStatus, validationMessage, onAgentDestroy, onAgentCreate, onAgentRefresh }) => {
|
|
@@ -365,14 +351,13 @@ var AgentConfig = ({ agentStatus, validationMessage, onAgentDestroy, onAgentCrea
|
|
|
365
351
|
}, t("destroy agent label")), /* @__PURE__ */ import_react2.default.createElement(import_react.Power, {
|
|
366
352
|
className: (0, import_react_ui_theme.getSize)(5)
|
|
367
353
|
}))), /* @__PURE__ */ import_react2.default.createElement(import_react_ui.Tooltip.Portal, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui.Tooltip.Content, {
|
|
368
|
-
side: "bottom"
|
|
369
|
-
classNames: "z-50"
|
|
354
|
+
side: "bottom"
|
|
370
355
|
}, t("destroy agent label"))))), agentStatus === "created" && /* @__PURE__ */ import_react2.default.createElement("p", {
|
|
371
356
|
id: "devices-panel.create-agent.description",
|
|
372
357
|
className: (0, import_react_ui_theme.mx)(import_react_ui_theme.descriptionText, "mlb-2")
|
|
373
358
|
}, t("agent requested description"))) : /* @__PURE__ */ import_react2.default.createElement(import_react2.default.Fragment, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui.Button, {
|
|
374
359
|
variant: "ghost",
|
|
375
|
-
classNames: "mlb-2 is-full justify-start gap-2
|
|
360
|
+
classNames: "mlb-2 is-full justify-start gap-2 pis-0 pie-3",
|
|
376
361
|
"data-testid": agentStatus === "creatable" ? "devices-panel.create-agent" : "devices-panel.agent-error",
|
|
377
362
|
onClick: agentStatus === "creatable" ? onAgentCreate : onAgentRefresh,
|
|
378
363
|
"aria-describedby": "devices-panel.create-agent.description"
|
|
@@ -446,312 +431,58 @@ var CompoundButton = ({ children, description, before, after, variant = "default
|
|
|
446
431
|
className: "grow-0"
|
|
447
432
|
}, after));
|
|
448
433
|
};
|
|
449
|
-
var
|
|
450
|
-
const { t } = (0, import_react_ui3.useTranslation)("os");
|
|
451
|
-
const { themeMode } = (0, import_react_ui3.useThemeContext)();
|
|
452
|
-
const [_emojiValue, setEmojiValue] = (0, import_react_use_controllable_state.useControllableState)({
|
|
453
|
-
prop: emoji,
|
|
454
|
-
onChange: onChangeEmoji,
|
|
455
|
-
defaultProp: defaultEmoji
|
|
456
|
-
});
|
|
457
|
-
const [emojiPickerOpen, setEmojiPickerOpen] = (0, import_react6.useState)(false);
|
|
458
|
-
const suppressNextTooltip = (0, import_react6.useRef)(false);
|
|
459
|
-
const [triggerTooltipOpen, setTriggerTooltipOpen] = (0, import_react6.useState)(false);
|
|
460
|
-
return /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Root, {
|
|
461
|
-
open: triggerTooltipOpen,
|
|
462
|
-
onOpenChange: (nextOpen) => {
|
|
463
|
-
if (suppressNextTooltip.current) {
|
|
464
|
-
setTriggerTooltipOpen(false);
|
|
465
|
-
suppressNextTooltip.current = false;
|
|
466
|
-
} else {
|
|
467
|
-
setTriggerTooltipOpen(nextOpen);
|
|
468
|
-
}
|
|
469
|
-
}
|
|
470
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Root, {
|
|
471
|
-
open: emojiPickerOpen,
|
|
472
|
-
onOpenChange: (nextOpen) => {
|
|
473
|
-
setEmojiPickerOpen(nextOpen);
|
|
474
|
-
suppressNextTooltip.current = true;
|
|
475
|
-
}
|
|
476
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Trigger, {
|
|
477
|
-
asChild: true
|
|
478
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Trigger, {
|
|
479
|
-
asChild: true
|
|
480
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Toolbar.Button, {
|
|
481
|
-
classNames: [
|
|
482
|
-
"gap-2 text-2xl plb-1",
|
|
483
|
-
classNames
|
|
484
|
-
],
|
|
485
|
-
disabled
|
|
486
|
-
}, /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
487
|
-
className: "sr-only"
|
|
488
|
-
}, t("select emoji label")), /* @__PURE__ */ import_react6.default.createElement(import_react5.UserCircle, {
|
|
489
|
-
className: (0, import_react_ui_theme3.getSize)(5)
|
|
490
|
-
})))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Portal, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Content, {
|
|
491
|
-
side: "bottom",
|
|
492
|
-
classNames: "z-50"
|
|
493
|
-
}, 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, {
|
|
494
|
-
side: "bottom",
|
|
495
|
-
onKeyDownCapture: (event) => {
|
|
496
|
-
if (event.key === "Escape") {
|
|
497
|
-
event.stopPropagation();
|
|
498
|
-
setEmojiPickerOpen(false);
|
|
499
|
-
suppressNextTooltip.current = true;
|
|
500
|
-
}
|
|
501
|
-
}
|
|
502
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react4.default, {
|
|
503
|
-
data: import_data.default,
|
|
504
|
-
onEmojiSelect: ({ native }) => {
|
|
505
|
-
if (native) {
|
|
506
|
-
setEmojiValue(native);
|
|
507
|
-
setEmojiPickerOpen(false);
|
|
508
|
-
}
|
|
509
|
-
},
|
|
510
|
-
autoFocus: true,
|
|
511
|
-
maxFrequentRows: 0,
|
|
512
|
-
noCountryFlags: true,
|
|
513
|
-
theme: themeMode
|
|
514
|
-
}), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Arrow, null))));
|
|
515
|
-
};
|
|
516
|
-
var EmojiPickerBlock = ({ disabled, defaultEmoji, emoji, onChangeEmoji, onClickClear }) => {
|
|
517
|
-
const { t } = (0, import_react_ui3.useTranslation)("os");
|
|
518
|
-
const [isMd] = (0, import_react_ui3.useMediaQuery)("md", {
|
|
519
|
-
ssr: false
|
|
520
|
-
});
|
|
521
|
-
const [emojiValue, setEmojiValue] = (0, import_react_use_controllable_state.useControllableState)({
|
|
522
|
-
prop: emoji,
|
|
523
|
-
onChange: onChangeEmoji,
|
|
524
|
-
defaultProp: defaultEmoji
|
|
525
|
-
});
|
|
526
|
-
const [emojiPickerOpen, setEmojiPickerOpen] = (0, import_react6.useState)(false);
|
|
527
|
-
return /* @__PURE__ */ import_react6.default.createElement(import_react6.default.Fragment, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Root, {
|
|
528
|
-
open: emojiPickerOpen,
|
|
529
|
-
onOpenChange: setEmojiPickerOpen
|
|
530
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Trigger, {
|
|
531
|
-
asChild: true
|
|
532
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Button, {
|
|
533
|
-
variant: "ghost",
|
|
534
|
-
classNames: "gap-2 text-2xl plb-1",
|
|
535
|
-
disabled
|
|
536
|
-
}, /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
537
|
-
className: "sr-only"
|
|
538
|
-
}, t("select emoji label")), /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
539
|
-
className: "grow pis-14"
|
|
540
|
-
}, emojiValue), /* @__PURE__ */ import_react6.default.createElement(import_react5.CaretDown, {
|
|
541
|
-
className: (0, import_react_ui_theme3.getSize)(4)
|
|
542
|
-
}))), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Popover.Content, {
|
|
543
|
-
side: "right",
|
|
544
|
-
sideOffset: isMd ? 0 : -310,
|
|
545
|
-
onKeyDownCapture: (event) => {
|
|
546
|
-
if (event.key === "Escape") {
|
|
547
|
-
event.stopPropagation();
|
|
548
|
-
setEmojiPickerOpen(false);
|
|
549
|
-
}
|
|
550
|
-
}
|
|
551
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react4.default, {
|
|
552
|
-
data: import_data.default,
|
|
553
|
-
onEmojiSelect: ({ native }) => {
|
|
554
|
-
if (native) {
|
|
555
|
-
setEmojiValue(native);
|
|
556
|
-
setEmojiPickerOpen(false);
|
|
557
|
-
}
|
|
558
|
-
},
|
|
559
|
-
autoFocus: true,
|
|
560
|
-
maxFrequentRows: 0,
|
|
561
|
-
noCountryFlags: true
|
|
562
|
-
}), /* @__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, {
|
|
563
|
-
asChild: true
|
|
564
|
-
}, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Button, {
|
|
565
|
-
variant: "ghost",
|
|
566
|
-
onClick: onClickClear,
|
|
567
|
-
disabled
|
|
568
|
-
}, /* @__PURE__ */ import_react6.default.createElement("span", {
|
|
569
|
-
className: "sr-only"
|
|
570
|
-
}, 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, {
|
|
571
|
-
style: {
|
|
572
|
-
zIndex: 70
|
|
573
|
-
},
|
|
574
|
-
side: "right"
|
|
575
|
-
}, t("clear label"), /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Tooltip.Arrow, null)))));
|
|
576
|
-
};
|
|
577
|
-
var HuePreview = ({ hue }) => {
|
|
578
|
-
const { tx } = (0, import_react_ui4.useThemeContext)();
|
|
579
|
-
const size = 20;
|
|
580
|
-
return /* @__PURE__ */ import_react8.default.createElement("svg", {
|
|
581
|
-
width: size,
|
|
582
|
-
height: size,
|
|
583
|
-
viewBox: `0 0 ${size} ${size}`
|
|
584
|
-
}, /* @__PURE__ */ import_react8.default.createElement("rect", {
|
|
585
|
-
x: 0,
|
|
586
|
-
y: 0,
|
|
587
|
-
width: size,
|
|
588
|
-
height: size,
|
|
589
|
-
className: tx("hue.fill", "select--hue__preview", {
|
|
590
|
-
hue
|
|
591
|
-
})
|
|
592
|
-
}));
|
|
593
|
-
};
|
|
594
|
-
var hueTokens = Object.keys(import_react_ui_theme4.hueTokenThemes).slice(0, 16);
|
|
595
|
-
var HuePickerToolbarButton = ({ disabled, hue, onChangeHue, classNames, defaultHue }) => {
|
|
596
|
-
const { t } = (0, import_react_ui4.useTranslation)("os");
|
|
597
|
-
const [hueValue, setHueValue] = (0, import_react_use_controllable_state2.useControllableState)({
|
|
598
|
-
prop: hue,
|
|
599
|
-
onChange: onChangeHue,
|
|
600
|
-
defaultProp: defaultHue
|
|
601
|
-
});
|
|
602
|
-
const [huePickerOpen, setHuePickerOpen] = (0, import_react8.useState)(false);
|
|
603
|
-
const suppressNextTooltip = (0, import_react8.useRef)(false);
|
|
604
|
-
const [triggerTooltipOpen, setTriggerTooltipOpen] = (0, import_react8.useState)(false);
|
|
605
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Root, {
|
|
606
|
-
open: triggerTooltipOpen,
|
|
607
|
-
onOpenChange: (nextOpen) => {
|
|
608
|
-
if (suppressNextTooltip.current) {
|
|
609
|
-
setTriggerTooltipOpen(false);
|
|
610
|
-
suppressNextTooltip.current = false;
|
|
611
|
-
} else {
|
|
612
|
-
setTriggerTooltipOpen(nextOpen);
|
|
613
|
-
}
|
|
614
|
-
}
|
|
615
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Root, {
|
|
616
|
-
modal: false,
|
|
617
|
-
open: huePickerOpen,
|
|
618
|
-
onOpenChange: (nextOpen) => {
|
|
619
|
-
setHuePickerOpen(nextOpen);
|
|
620
|
-
suppressNextTooltip.current = true;
|
|
621
|
-
}
|
|
622
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Trigger, {
|
|
623
|
-
asChild: true
|
|
624
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Trigger, {
|
|
625
|
-
asChild: true
|
|
626
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Toolbar.Button, {
|
|
627
|
-
classNames: (0, import_react_ui_theme4.mx)("gap-2 plb-1", classNames),
|
|
628
|
-
disabled
|
|
629
|
-
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
630
|
-
className: "sr-only"
|
|
631
|
-
}, t("select hue label")), /* @__PURE__ */ import_react8.default.createElement(import_react7.Palette, {
|
|
632
|
-
className: (0, import_react_ui_theme4.getSize)(5)
|
|
633
|
-
})))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Portal, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Content, {
|
|
634
|
-
side: "bottom",
|
|
635
|
-
classNames: "z-50"
|
|
636
|
-
}, 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, {
|
|
637
|
-
side: "bottom",
|
|
638
|
-
classNames: "!w-40"
|
|
639
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Viewport, {
|
|
640
|
-
classNames: "grid grid-cols-4"
|
|
641
|
-
}, hueTokens.map((hue2) => {
|
|
642
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.CheckboxItem, {
|
|
643
|
-
key: hue2,
|
|
644
|
-
checked: hue2 === hueValue,
|
|
645
|
-
onCheckedChange: () => setHueValue(hue2),
|
|
646
|
-
classNames: "px-0 py-2 items-center justify-center"
|
|
647
|
-
}, /* @__PURE__ */ import_react8.default.createElement(HuePreview, {
|
|
648
|
-
hue: hue2
|
|
649
|
-
}));
|
|
650
|
-
})))));
|
|
651
|
-
};
|
|
652
|
-
var HuePickerBlock = ({ disabled, hue, onChangeHue, defaultHue, onClickClear }) => {
|
|
653
|
-
const { t } = (0, import_react_ui4.useTranslation)("os");
|
|
654
|
-
const [hueValue, setHueValue] = (0, import_react_use_controllable_state2.useControllableState)({
|
|
655
|
-
prop: hue,
|
|
656
|
-
onChange: onChangeHue,
|
|
657
|
-
defaultProp: defaultHue
|
|
658
|
-
});
|
|
659
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react8.default.Fragment, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Root, {
|
|
660
|
-
modal: false
|
|
661
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Trigger, {
|
|
662
|
-
asChild: true
|
|
663
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Button, {
|
|
664
|
-
variant: "ghost",
|
|
665
|
-
classNames: "gap-2 plb-1",
|
|
666
|
-
disabled
|
|
667
|
-
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
668
|
-
className: "sr-only"
|
|
669
|
-
}, t("select hue label")), /* @__PURE__ */ import_react8.default.createElement("div", {
|
|
670
|
-
role: "none",
|
|
671
|
-
className: "pis-14 grow flex items-center justify-center gap-2"
|
|
672
|
-
}, /* @__PURE__ */ import_react8.default.createElement(HuePreview, {
|
|
673
|
-
hue: hueValue
|
|
674
|
-
}), /* @__PURE__ */ import_react8.default.createElement("span", null, t(`${hueValue} label`))), /* @__PURE__ */ import_react8.default.createElement(import_react7.CaretDown, {
|
|
675
|
-
className: (0, import_react_ui_theme4.getSize)(4)
|
|
676
|
-
}))), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Content, {
|
|
677
|
-
side: "right"
|
|
678
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.Viewport, null, Object.keys(import_react_ui_theme4.hueTokenThemes).map((hue2) => {
|
|
679
|
-
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.CheckboxItem, {
|
|
680
|
-
key: hue2,
|
|
681
|
-
checked: hue2 === hueValue,
|
|
682
|
-
onCheckedChange: () => setHueValue(hue2)
|
|
683
|
-
}, /* @__PURE__ */ import_react8.default.createElement(HuePreview, {
|
|
684
|
-
hue: hue2
|
|
685
|
-
}), /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
686
|
-
className: "grow"
|
|
687
|
-
}, t(`${hue2} label`)), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.DropdownMenu.ItemIndicator, null, /* @__PURE__ */ import_react8.default.createElement(import_react7.Check, null)));
|
|
688
|
-
})), /* @__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, {
|
|
689
|
-
asChild: true
|
|
690
|
-
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Button, {
|
|
691
|
-
variant: "ghost",
|
|
692
|
-
onClick: onClickClear,
|
|
693
|
-
disabled
|
|
694
|
-
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
695
|
-
className: "sr-only"
|
|
696
|
-
}, 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, {
|
|
697
|
-
style: {
|
|
698
|
-
zIndex: 70
|
|
699
|
-
},
|
|
700
|
-
side: "right"
|
|
701
|
-
}, t("clear label"), /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Tooltip.Arrow, null)))));
|
|
702
|
-
};
|
|
703
|
-
var IdentityListItem = /* @__PURE__ */ (0, import_react9.forwardRef)(({ identity, presence, onClick, classNames, ...props }, forwardedRef) => {
|
|
434
|
+
var IdentityListItem = /* @__PURE__ */ (0, import_react4.forwardRef)(({ identity, presence, onClick, classNames, ...props }, forwardedRef) => {
|
|
704
435
|
const fallbackValue = (0, import_util.keyToFallback)(identity.identityKey);
|
|
705
|
-
const labelId = (0,
|
|
436
|
+
const labelId = (0, import_react_ui3.useId)("identityListItem__label");
|
|
706
437
|
const displayName = identity.profile?.displayName ?? (0, import_display_name.generateName)(identity.identityKey.toHex());
|
|
707
|
-
return /* @__PURE__ */
|
|
438
|
+
return /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.ListItem.Root, {
|
|
708
439
|
...props,
|
|
709
|
-
classNames: (0,
|
|
440
|
+
classNames: (0, import_react_ui_theme3.mx)("flex gap-2 pis-3 pie-1 items-center", onClick && "cursor-pointer", classNames),
|
|
710
441
|
onClick: () => onClick?.(),
|
|
711
442
|
"data-testid": "identity-list-item",
|
|
712
443
|
labelId,
|
|
713
444
|
ref: forwardedRef
|
|
714
|
-
}, /* @__PURE__ */
|
|
445
|
+
}, /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Root, {
|
|
715
446
|
status: presence === import_echo.SpaceMember.PresenceState.ONLINE ? "active" : "inactive",
|
|
716
447
|
labelId,
|
|
717
448
|
hue: identity.profile?.data?.hue || fallbackValue.hue
|
|
718
|
-
}, /* @__PURE__ */
|
|
449
|
+
}, /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Frame, {
|
|
719
450
|
classNames: "place-self-center"
|
|
720
|
-
}, /* @__PURE__ */
|
|
451
|
+
}, /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Fallback, {
|
|
721
452
|
text: identity.profile?.data?.emoji || fallbackValue.emoji
|
|
722
|
-
})), /* @__PURE__ */
|
|
453
|
+
})), /* @__PURE__ */ import_react4.default.createElement(import_react_ui3.Avatar.Label, {
|
|
723
454
|
classNames: "text-sm truncate pli-2"
|
|
724
455
|
}, displayName)));
|
|
725
456
|
});
|
|
726
457
|
var SpaceMemberList = ({ spaceKey, includeSelf, onSelect }) => {
|
|
727
458
|
const client = (0, import_react_client.useClient)();
|
|
728
459
|
const allUnsortedMembers = (0, import_echo2.useMembers)(spaceKey);
|
|
729
|
-
const members = (0,
|
|
460
|
+
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)), [
|
|
730
461
|
allUnsortedMembers
|
|
731
462
|
]);
|
|
732
|
-
return /* @__PURE__ */
|
|
463
|
+
return /* @__PURE__ */ import_react5.default.createElement(SpaceMemberListImpl, {
|
|
733
464
|
members,
|
|
734
465
|
onSelect
|
|
735
466
|
});
|
|
736
467
|
};
|
|
737
468
|
var SpaceMemberListImpl = ({ members, onSelect }) => {
|
|
738
|
-
const { t } = (0,
|
|
469
|
+
const { t } = (0, import_react_ui4.useTranslation)("os");
|
|
739
470
|
const visibleMembers = members.filter((member) => member.identity);
|
|
740
|
-
return visibleMembers.length > 0 ? /* @__PURE__ */
|
|
471
|
+
return visibleMembers.length > 0 ? /* @__PURE__ */ import_react5.default.createElement(import_react_ui4.List, {
|
|
741
472
|
classNames: "flex flex-col gap-2",
|
|
742
473
|
"data-testid": "space-members-list"
|
|
743
474
|
}, visibleMembers.map((member) => {
|
|
744
|
-
return /* @__PURE__ */
|
|
475
|
+
return /* @__PURE__ */ import_react5.default.createElement(IdentityListItem, {
|
|
745
476
|
key: member.identity.identityKey.toHex(),
|
|
746
477
|
identity: member.identity,
|
|
747
478
|
presence: member.presence,
|
|
748
479
|
onClick: onSelect && (() => onSelect(member))
|
|
749
480
|
});
|
|
750
|
-
})) : /* @__PURE__ */
|
|
481
|
+
})) : /* @__PURE__ */ import_react5.default.createElement("div", {
|
|
751
482
|
role: "none",
|
|
752
483
|
className: "grow flex items-center p-2"
|
|
753
|
-
}, /* @__PURE__ */
|
|
754
|
-
className: (0,
|
|
484
|
+
}, /* @__PURE__ */ import_react5.default.createElement("p", {
|
|
485
|
+
className: (0, import_react_ui_theme4.mx)(import_react_ui_theme4.descriptionText, "text-center is-full mlb-2")
|
|
755
486
|
}, t("empty space members message")));
|
|
756
487
|
};
|
|
757
488
|
var iconProps = {
|
|
@@ -761,16 +492,16 @@ var iconProps = {
|
|
|
761
492
|
x: 8,
|
|
762
493
|
y: 8
|
|
763
494
|
};
|
|
764
|
-
var DeviceListItem = /* @__PURE__ */ (0,
|
|
765
|
-
const { t } = (0,
|
|
495
|
+
var DeviceListItem = /* @__PURE__ */ (0, import_react9.forwardRef)(({ device, onClickAdd, onClickEdit, onClickReset, onClickRecover, onClickJoinExisting, classNames, connectionState, onAgentDestroy: _, ...props }, forwardedRef) => {
|
|
496
|
+
const { t } = (0, import_react_ui6.useTranslation)("os");
|
|
766
497
|
const fallbackValue = (0, import_util2.keyToFallback)(device.deviceKey);
|
|
767
|
-
const labelId = (0,
|
|
498
|
+
const labelId = (0, import_react_ui6.useId)("identityListItem__label");
|
|
768
499
|
const displayName = device.profile ? t("device name placeholder", {
|
|
769
500
|
os: device.profile.os,
|
|
770
501
|
platform: device.profile.platform
|
|
771
502
|
}) : (0, import_display_name2.generateName)(device.deviceKey.toHex());
|
|
772
503
|
const isCurrent = device.kind === import_halo.DeviceKind.CURRENT;
|
|
773
|
-
return /* @__PURE__ */
|
|
504
|
+
return /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.ListItem.Root, {
|
|
774
505
|
...props,
|
|
775
506
|
classNames: [
|
|
776
507
|
"flex gap-2 items-center mlb-2",
|
|
@@ -779,58 +510,58 @@ var DeviceListItem = /* @__PURE__ */ (0, import_react14.forwardRef)(({ device, o
|
|
|
779
510
|
"data-testid": `device-list-item${isCurrent ? "-current" : ""}`,
|
|
780
511
|
labelId,
|
|
781
512
|
ref: forwardedRef
|
|
782
|
-
}, /* @__PURE__ */
|
|
513
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Root, {
|
|
783
514
|
status: isCurrent && connectionState === import_mesh.ConnectionState.OFFLINE ? "error" : device.presence === import_halo.Device.PresenceState.ONLINE ? "active" : "inactive",
|
|
784
515
|
labelId,
|
|
785
516
|
hue: fallbackValue.hue,
|
|
786
517
|
variant: "square"
|
|
787
|
-
}, /* @__PURE__ */
|
|
518
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Frame, {
|
|
788
519
|
classNames: "place-self-center"
|
|
789
|
-
}, device.profile?.type ? device.profile.type === import_halo.DeviceType.AGENT_MANAGED ? /* @__PURE__ */
|
|
520
|
+
}, 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) : [
|
|
790
521
|
import_halo.DeviceType.AGENT,
|
|
791
522
|
import_halo.DeviceType.AGENT_MANAGED
|
|
792
|
-
].includes(device.profile.type) ? /* @__PURE__ */
|
|
523
|
+
].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, {
|
|
793
524
|
text: fallbackValue.emoji
|
|
794
|
-
})), /* @__PURE__ */
|
|
525
|
+
})), /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Avatar.Label, {
|
|
795
526
|
classNames: "flex-1 text-sm truncate"
|
|
796
|
-
}, displayName), isCurrent && /* @__PURE__ */
|
|
527
|
+
}, displayName), isCurrent && /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Tag, {
|
|
797
528
|
color: "primary"
|
|
798
|
-
}, t("current device tag label")), device.kind === import_halo.DeviceKind.CURRENT && /* @__PURE__ */
|
|
529
|
+
}, 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, {
|
|
799
530
|
asChild: true
|
|
800
|
-
}, /* @__PURE__ */
|
|
531
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.Button, {
|
|
801
532
|
variant: "ghost",
|
|
802
533
|
classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
|
|
803
534
|
"data-testid": `device-list-item${isCurrent ? "-current" : ""}.options`
|
|
804
|
-
}, /* @__PURE__ */
|
|
535
|
+
}, /* @__PURE__ */ import_react9.default.createElement("span", {
|
|
805
536
|
className: "sr-only"
|
|
806
|
-
}, t("more options label")), /* @__PURE__ */
|
|
807
|
-
className: (0,
|
|
808
|
-
}))), /* @__PURE__ */
|
|
537
|
+
}, t("more options label")), /* @__PURE__ */ import_react9.default.createElement(import_react8.DotsThree, {
|
|
538
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
539
|
+
}))), /* @__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, {
|
|
809
540
|
"data-testid": "device-list-item-current.join-existing",
|
|
810
541
|
onClick: onClickJoinExisting
|
|
811
|
-
}, /* @__PURE__ */
|
|
812
|
-
className: (0,
|
|
813
|
-
}), t("choose join new identity label")), onClickRecover && /* @__PURE__ */
|
|
542
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react8.ShareFat, {
|
|
543
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
544
|
+
}), t("choose join new identity label")), onClickRecover && /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Item, {
|
|
814
545
|
"data-testid": "device-list-item-current.recover",
|
|
815
546
|
onClick: onClickRecover
|
|
816
|
-
}, /* @__PURE__ */
|
|
817
|
-
className: (0,
|
|
818
|
-
}), t("choose recover identity label")), /* @__PURE__ */
|
|
547
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react8.FirstAidKit, {
|
|
548
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
549
|
+
}), t("choose recover identity label")), /* @__PURE__ */ import_react9.default.createElement(import_react_ui6.DropdownMenu.Item, {
|
|
819
550
|
"data-testid": "device-list-item-current.reset",
|
|
820
551
|
onClick: onClickReset
|
|
821
|
-
}, /* @__PURE__ */
|
|
822
|
-
className: (0,
|
|
552
|
+
}, /* @__PURE__ */ import_react9.default.createElement(import_react8.Power, {
|
|
553
|
+
className: (0, import_react_ui_theme6.getSize)(5)
|
|
823
554
|
}), t("reset device label")))))));
|
|
824
555
|
});
|
|
825
556
|
var DeviceList = ({ devices, connectionState, onClickAdd, onClickEdit, onClickReset, onClickRecover, onClickJoinExisting, onAgentDestroy }) => {
|
|
826
|
-
const { t } = (0,
|
|
827
|
-
return /* @__PURE__ */
|
|
557
|
+
const { t } = (0, import_react_ui5.useTranslation)("os");
|
|
558
|
+
return /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
828
559
|
role: "none",
|
|
829
560
|
className: "p-1"
|
|
830
|
-
}, /* @__PURE__ */
|
|
831
|
-
className: (0,
|
|
832
|
-
}, t("devices heading")), devices.length > 0 && /* @__PURE__ */
|
|
833
|
-
return /* @__PURE__ */
|
|
561
|
+
}, /* @__PURE__ */ import_react7.default.createElement("h2", {
|
|
562
|
+
className: (0, import_react_ui_theme5.mx)(import_react_ui_theme5.descriptionText, "text-center mbs-2")
|
|
563
|
+
}, t("devices heading")), devices.length > 0 && /* @__PURE__ */ import_react7.default.createElement(import_react_ui5.List, null, devices.map((device) => {
|
|
564
|
+
return /* @__PURE__ */ import_react7.default.createElement(DeviceListItem, {
|
|
834
565
|
key: device.deviceKey.toHex(),
|
|
835
566
|
device,
|
|
836
567
|
onClickEdit: () => onClickEdit?.(device),
|
|
@@ -840,22 +571,22 @@ var DeviceList = ({ devices, connectionState, onClickAdd, onClickEdit, onClickRe
|
|
|
840
571
|
connectionState,
|
|
841
572
|
onAgentDestroy
|
|
842
573
|
});
|
|
843
|
-
})), /* @__PURE__ */
|
|
574
|
+
})), /* @__PURE__ */ import_react7.default.createElement(import_react_ui5.Button, {
|
|
844
575
|
variant: "ghost",
|
|
845
|
-
classNames: "justify-start gap-2
|
|
576
|
+
classNames: "justify-start gap-2 pis-0 pie-3 is-full",
|
|
846
577
|
"data-testid": "devices-panel.create-invitation",
|
|
847
578
|
onClick: onClickAdd
|
|
848
|
-
}, /* @__PURE__ */
|
|
579
|
+
}, /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
849
580
|
role: "img",
|
|
850
|
-
className: (0,
|
|
851
|
-
}, /* @__PURE__ */
|
|
581
|
+
className: (0, import_react_ui_theme5.mx)((0, import_react_ui_theme5.getSize)(8), "m-1 rounded-sm bg-input grid place-items-center")
|
|
582
|
+
}, /* @__PURE__ */ import_react7.default.createElement(import_react6.Plus, {
|
|
852
583
|
weight: "light",
|
|
853
|
-
className: (0,
|
|
854
|
-
})), /* @__PURE__ */
|
|
584
|
+
className: (0, import_react_ui_theme5.getSize)(6)
|
|
585
|
+
})), /* @__PURE__ */ import_react7.default.createElement("span", {
|
|
855
586
|
className: "grow font-medium text-start"
|
|
856
|
-
}, t("choose add device label")), /* @__PURE__ */
|
|
587
|
+
}, t("choose add device label")), /* @__PURE__ */ import_react7.default.createElement(import_react6.CaretRight, {
|
|
857
588
|
weight: "bold",
|
|
858
|
-
className: (0,
|
|
589
|
+
className: (0, import_react_ui_theme5.getSize)(4)
|
|
859
590
|
})));
|
|
860
591
|
};
|
|
861
592
|
var AuthCode = (props) => {
|
|
@@ -863,7 +594,7 @@ var AuthCode = (props) => {
|
|
|
863
594
|
const l = code?.length ?? 0;
|
|
864
595
|
const left = code?.slice(0, l / 2);
|
|
865
596
|
const right = code?.slice(l / 2);
|
|
866
|
-
const codeRef = (0,
|
|
597
|
+
const codeRef = (0, import_react12.useRef)(null);
|
|
867
598
|
const handleClick = () => {
|
|
868
599
|
if (codeRef.current) {
|
|
869
600
|
const selection = window.getSelection();
|
|
@@ -874,18 +605,18 @@ var AuthCode = (props) => {
|
|
|
874
605
|
}
|
|
875
606
|
void navigator.clipboard.writeText(code ?? "");
|
|
876
607
|
};
|
|
877
|
-
return /* @__PURE__ */
|
|
878
|
-
className: (0,
|
|
608
|
+
return /* @__PURE__ */ import_react12.default.createElement("span", {
|
|
609
|
+
className: (0, import_react_ui_theme8.mx)(large ? "text-6xl" : "text-2xl", "font-mono pli-2.5 rounded cursor-pointer", classNames),
|
|
879
610
|
onClick: handleClick,
|
|
880
611
|
ref: codeRef
|
|
881
|
-
}, /* @__PURE__ */
|
|
612
|
+
}, /* @__PURE__ */ import_react12.default.createElement("span", {
|
|
882
613
|
className: "mie-[0.4em]"
|
|
883
|
-
}, left), /* @__PURE__ */
|
|
614
|
+
}, left), /* @__PURE__ */ import_react12.default.createElement("span", null, right));
|
|
884
615
|
};
|
|
885
616
|
var InvitationListItem = (props) => {
|
|
886
617
|
const { invitation } = props;
|
|
887
618
|
const invitationStatus = (0, import_invitations.useInvitationStatus)(invitation);
|
|
888
|
-
return /* @__PURE__ */
|
|
619
|
+
return /* @__PURE__ */ import_react11.default.createElement(InvitationListItemImpl, {
|
|
889
620
|
...props,
|
|
890
621
|
invitationStatus
|
|
891
622
|
});
|
|
@@ -895,11 +626,11 @@ var avatarProps = {
|
|
|
895
626
|
variant: "circle"
|
|
896
627
|
};
|
|
897
628
|
var AvatarStackEffect = ({ animation, status, reverseEffects }) => {
|
|
898
|
-
const { tx } = (0,
|
|
899
|
-
return /* @__PURE__ */
|
|
629
|
+
const { tx } = (0, import_react_ui7.useThemeContext)();
|
|
630
|
+
return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
900
631
|
role: "none",
|
|
901
|
-
className: (0,
|
|
902
|
-
}, /* @__PURE__ */
|
|
632
|
+
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))
|
|
633
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
903
634
|
role: "none",
|
|
904
635
|
className: tx("avatar.ring", "avatar__ring", {
|
|
905
636
|
...avatarProps,
|
|
@@ -909,10 +640,10 @@ var AvatarStackEffect = ({ animation, status, reverseEffects }) => {
|
|
|
909
640
|
style: {
|
|
910
641
|
animationDelay: "400ms"
|
|
911
642
|
}
|
|
912
|
-
})), /* @__PURE__ */
|
|
643
|
+
})), /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
913
644
|
role: "none",
|
|
914
|
-
className: (0,
|
|
915
|
-
}, /* @__PURE__ */
|
|
645
|
+
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))
|
|
646
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
916
647
|
role: "none",
|
|
917
648
|
className: tx("avatar.ring", "avatar__ring", {
|
|
918
649
|
...avatarProps,
|
|
@@ -925,7 +656,7 @@ var AvatarStackEffect = ({ animation, status, reverseEffects }) => {
|
|
|
925
656
|
})));
|
|
926
657
|
};
|
|
927
658
|
var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationStatus, send, onClickRemove, createInvitationUrl, reverseEffects, ...props }) => {
|
|
928
|
-
const { t } = (0,
|
|
659
|
+
const { t } = (0, import_react_ui7.useTranslation)("os");
|
|
929
660
|
const { cancel, status: invitationStatus, invitationCode, authCode, multiUse, shareable } = propsInvitationStatus;
|
|
930
661
|
const isCancellable = !([
|
|
931
662
|
import_invitations.Invitation.State.ERROR,
|
|
@@ -938,7 +669,7 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
|
|
|
938
669
|
import_invitations.Invitation.State.CONNECTED
|
|
939
670
|
].indexOf(invitationStatus) >= 0);
|
|
940
671
|
const showAuthCode = invitationStatus === import_invitations.Invitation.State.READY_FOR_AUTHENTICATION;
|
|
941
|
-
const handleClickRemove = (0,
|
|
672
|
+
const handleClickRemove = (0, import_react11.useCallback)(() => onClickRemove?.(invitation), [
|
|
942
673
|
invitation,
|
|
943
674
|
onClickRemove
|
|
944
675
|
]);
|
|
@@ -967,39 +698,38 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
|
|
|
967
698
|
import_invitations.Invitation.State.SUCCESS
|
|
968
699
|
].includes(invitationStatus);
|
|
969
700
|
const avatarStatus = avatarError ? "error" : avatarGreen ? "active" : "inactive";
|
|
970
|
-
return /* @__PURE__ */
|
|
701
|
+
return /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.ListItem.Root, {
|
|
971
702
|
id: invitationCode,
|
|
972
703
|
...props,
|
|
973
704
|
classNames: [
|
|
974
705
|
"flex gap-2 pis-3 pie-1 items-center relative",
|
|
975
706
|
props.classNames
|
|
976
707
|
]
|
|
977
|
-
}, /* @__PURE__ */
|
|
708
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.ListItem.Heading, {
|
|
978
709
|
classNames: "sr-only"
|
|
979
|
-
}, t(multiUse ? "invite many list item label" : "invite one list item label")), multiUse && /* @__PURE__ */
|
|
710
|
+
}, t(multiUse ? "invite many list item label" : "invite one list item label")), multiUse && /* @__PURE__ */ import_react11.default.createElement(AvatarStackEffect, {
|
|
980
711
|
status: avatarStatus,
|
|
981
712
|
animation: avatarAnimation,
|
|
982
713
|
reverseEffects
|
|
983
|
-
}), /* @__PURE__ */
|
|
714
|
+
}), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Root, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Avatar.Root, {
|
|
984
715
|
...avatarProps,
|
|
985
716
|
animation: avatarAnimation,
|
|
986
717
|
status: avatarStatus
|
|
987
|
-
}, /* @__PURE__ */
|
|
718
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Trigger, {
|
|
988
719
|
asChild: true
|
|
989
|
-
}, /* @__PURE__ */
|
|
720
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Avatar.Frame, {
|
|
990
721
|
tabIndex: 0,
|
|
991
722
|
classNames: [
|
|
992
|
-
|
|
723
|
+
import_react_ui_theme7.focusRing,
|
|
993
724
|
"relative rounded-full place-self-center"
|
|
994
725
|
]
|
|
995
|
-
}, /* @__PURE__ */
|
|
726
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Avatar.Fallback, {
|
|
996
727
|
text: (0, import_util3.hexToEmoji)(invitationId)
|
|
997
|
-
})))), /* @__PURE__ */
|
|
998
|
-
side: "left"
|
|
999
|
-
|
|
1000
|
-
}, t(multiUse ? "invite many qr label" : "invite one qr label"), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Tooltip.Arrow, null)))), showShare && invitationUrl ? /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Tooltip.Root, null, /* @__PURE__ */ import_react16.default.createElement(import_react16.default.Fragment, null, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Tooltip.Trigger, {
|
|
728
|
+
})))), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Portal, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Content, {
|
|
729
|
+
side: "left"
|
|
730
|
+
}, 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, {
|
|
1001
731
|
asChild: true
|
|
1002
|
-
}, /* @__PURE__ */
|
|
732
|
+
}, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Button, {
|
|
1003
733
|
variant: "ghost",
|
|
1004
734
|
classNames: "grow justify-start font-medium",
|
|
1005
735
|
onClick: () => send({
|
|
@@ -1007,56 +737,55 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
|
|
|
1007
737
|
invitation
|
|
1008
738
|
}),
|
|
1009
739
|
"data-testid": "show-qrcode"
|
|
1010
|
-
}, /* @__PURE__ */
|
|
740
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", null, t("open share panel label")))), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Clipboard.IconButton, {
|
|
1011
741
|
variant: "ghost",
|
|
1012
742
|
value: invitationUrl
|
|
1013
|
-
})), /* @__PURE__ */
|
|
1014
|
-
side: "left"
|
|
1015
|
-
|
|
1016
|
-
}, invitationHasLifetime && /* @__PURE__ */ import_react16.default.createElement("span", null, "Expires ", invitationTimeLeft)))) : showAuthCode ? /* @__PURE__ */ import_react16.default.createElement(AuthCode, {
|
|
743
|
+
})), /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Portal, null, /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Tooltip.Content, {
|
|
744
|
+
side: "left"
|
|
745
|
+
}, invitationHasLifetime && /* @__PURE__ */ import_react11.default.createElement("span", null, "Expires ", invitationTimeLeft)))) : showAuthCode ? /* @__PURE__ */ import_react11.default.createElement(AuthCode, {
|
|
1017
746
|
code: authCode,
|
|
1018
747
|
classNames: "grow"
|
|
1019
|
-
}) : invitationStatus === import_invitations.Invitation.State.CONNECTING ? /* @__PURE__ */
|
|
748
|
+
}) : invitationStatus === import_invitations.Invitation.State.CONNECTING ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1020
749
|
className: "pli-2 grow text-neutral-500"
|
|
1021
|
-
}, "Connecting...") : invitationStatus === import_invitations.Invitation.State.AUTHENTICATING ? /* @__PURE__ */
|
|
750
|
+
}, "Connecting...") : invitationStatus === import_invitations.Invitation.State.AUTHENTICATING ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1022
751
|
className: "pli-2 grow text-neutral-500"
|
|
1023
|
-
}, "Authenticating...") : invitationStatus === import_invitations.Invitation.State.ERROR || invitationStatus === import_invitations.Invitation.State.TIMEOUT ? /* @__PURE__ */
|
|
752
|
+
}, "Authenticating...") : invitationStatus === import_invitations.Invitation.State.ERROR || invitationStatus === import_invitations.Invitation.State.TIMEOUT ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1024
753
|
className: "pli-2 grow text-neutral-500"
|
|
1025
|
-
}, "Failed") : invitationStatus === import_invitations.Invitation.State.CANCELLED ? /* @__PURE__ */
|
|
754
|
+
}, "Failed") : invitationStatus === import_invitations.Invitation.State.CANCELLED ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1026
755
|
className: "pli-2 grow text-neutral-500"
|
|
1027
|
-
}, "Cancelled") : invitationStatus === import_invitations.Invitation.State.SUCCESS ? /* @__PURE__ */
|
|
756
|
+
}, "Cancelled") : invitationStatus === import_invitations.Invitation.State.SUCCESS ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1028
757
|
className: "pli-2 grow truncate"
|
|
1029
|
-
}, "User joined") : !shareable ? /* @__PURE__ */
|
|
758
|
+
}, "User joined") : !shareable ? /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1030
759
|
className: "pli-2 grow text-neutral-500"
|
|
1031
|
-
}, "Pending Invitation") : /* @__PURE__ */
|
|
760
|
+
}, "Pending Invitation") : /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1032
761
|
className: "grow"
|
|
1033
|
-
}, " "), isCancellable ? /* @__PURE__ */
|
|
762
|
+
}, " "), isCancellable ? /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Button, {
|
|
1034
763
|
variant: "ghost",
|
|
1035
764
|
classNames: "flex gap-1 pli-0",
|
|
1036
765
|
onClick: cancel,
|
|
1037
766
|
"data-testid": "cancel-invitation"
|
|
1038
|
-
}, /* @__PURE__ */
|
|
767
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1039
768
|
className: "sr-only"
|
|
1040
|
-
}, t("cancel invitation label")), /* @__PURE__ */
|
|
1041
|
-
className: (0,
|
|
1042
|
-
})) : /* @__PURE__ */
|
|
769
|
+
}, t("cancel invitation label")), /* @__PURE__ */ import_react11.default.createElement(import_react10.X, {
|
|
770
|
+
className: (0, import_react_ui_theme7.getSize)(4)
|
|
771
|
+
})) : /* @__PURE__ */ import_react11.default.createElement(import_react_ui7.Button, {
|
|
1043
772
|
variant: "ghost",
|
|
1044
773
|
classNames: "flex gap-1 pli-0",
|
|
1045
774
|
onClick: handleClickRemove,
|
|
1046
775
|
"data-testid": "remove-invitation"
|
|
1047
|
-
}, /* @__PURE__ */
|
|
776
|
+
}, /* @__PURE__ */ import_react11.default.createElement("span", {
|
|
1048
777
|
className: "sr-only"
|
|
1049
|
-
}, t("remove invitation label")), /* @__PURE__ */
|
|
1050
|
-
className: (0,
|
|
778
|
+
}, t("remove invitation label")), /* @__PURE__ */ import_react11.default.createElement(import_react10.X, {
|
|
779
|
+
className: (0, import_react_ui_theme7.getSize)(4)
|
|
1051
780
|
})));
|
|
1052
781
|
};
|
|
1053
782
|
var InvitationList = ({ invitations, send, ...invitationProps }) => {
|
|
1054
783
|
const { className, InvitationListItem: Item = InvitationListItem } = invitationProps;
|
|
1055
|
-
return /* @__PURE__ */
|
|
1056
|
-
classNames: (0,
|
|
784
|
+
return /* @__PURE__ */ import_react14.default.createElement(import_react_ui8.List, {
|
|
785
|
+
classNames: (0, import_react_ui_theme9.mx)("flex flex-col gap-2", className)
|
|
1057
786
|
}, invitations.map((invitation) => {
|
|
1058
787
|
const value = invitation.get().invitationId;
|
|
1059
|
-
return /* @__PURE__ */
|
|
788
|
+
return /* @__PURE__ */ import_react14.default.createElement(Item, {
|
|
1060
789
|
key: value,
|
|
1061
790
|
send,
|
|
1062
791
|
invitation,
|
|
@@ -1067,12 +796,12 @@ var InvitationList = ({ invitations, send, ...invitationProps }) => {
|
|
|
1067
796
|
var InvitationListContainer = ({ spaceKey, createInvitationUrl, send }) => {
|
|
1068
797
|
const space = (0, import_echo3.useSpace)(spaceKey);
|
|
1069
798
|
const invitations = (0, import_echo3.useSpaceInvitations)(spaceKey);
|
|
1070
|
-
const handleClickRemove = (0,
|
|
799
|
+
const handleClickRemove = (0, import_react13.useCallback)((invitation) => {
|
|
1071
800
|
void invitation.cancel();
|
|
1072
801
|
}, [
|
|
1073
802
|
space
|
|
1074
803
|
]);
|
|
1075
|
-
return /* @__PURE__ */
|
|
804
|
+
return /* @__PURE__ */ import_react13.default.createElement(InvitationList, {
|
|
1076
805
|
invitations,
|
|
1077
806
|
onClickRemove: handleClickRemove,
|
|
1078
807
|
createInvitationUrl,
|
|
@@ -1083,25 +812,25 @@ var defaultActions = {
|
|
|
1083
812
|
noopAction: {
|
|
1084
813
|
label: "No-op",
|
|
1085
814
|
description: "",
|
|
1086
|
-
icon:
|
|
815
|
+
icon: import_react15.Placeholder,
|
|
1087
816
|
onClick: () => {
|
|
1088
817
|
}
|
|
1089
818
|
}
|
|
1090
819
|
};
|
|
1091
|
-
var BifurcatedAction = /* @__PURE__ */ (0,
|
|
820
|
+
var BifurcatedAction = /* @__PURE__ */ (0, import_react16.forwardRef)((props, forwardedRef) => {
|
|
1092
821
|
const { classNames, variant, isFull = true, actions = defaultActions, activeAction: propsActiveAction, onChangeActiveAction, defaultActiveAction, "data-testid": testId, ...rest } = props;
|
|
1093
822
|
const dropdownTestId = testId && `${testId}.more`;
|
|
1094
|
-
const [activeActionKey2 = Object.keys(actions)[0], setActiveAction] = (0,
|
|
823
|
+
const [activeActionKey2 = Object.keys(actions)[0], setActiveAction] = (0, import_react_use_controllable_state.useControllableState)({
|
|
1095
824
|
prop: propsActiveAction,
|
|
1096
825
|
onChange: onChangeActiveAction,
|
|
1097
826
|
defaultProp: defaultActiveAction
|
|
1098
827
|
});
|
|
1099
828
|
const activeAction = actions[activeActionKey2] ?? {};
|
|
1100
|
-
const { t } = (0,
|
|
1101
|
-
return /* @__PURE__ */
|
|
829
|
+
const { t } = (0, import_react_ui9.useTranslation)("os");
|
|
830
|
+
return /* @__PURE__ */ import_react16.default.createElement("div", {
|
|
1102
831
|
role: "none",
|
|
1103
|
-
className: (0,
|
|
1104
|
-
}, /* @__PURE__ */
|
|
832
|
+
className: (0, import_react_ui_theme10.mx)("mbs-2 flex gap-px items-center", isFull && "is-full")
|
|
833
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Button, {
|
|
1105
834
|
...rest,
|
|
1106
835
|
classNames: [
|
|
1107
836
|
"bs-11 flex-1 min-is-0 flex gap-2 rounded-ie-none",
|
|
@@ -1111,22 +840,22 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react21.forwardRef)((props, fo
|
|
|
1111
840
|
variant,
|
|
1112
841
|
"data-testid": testId,
|
|
1113
842
|
onClick: activeAction.onClick
|
|
1114
|
-
}, activeAction.icon && /* @__PURE__ */
|
|
1115
|
-
className: (0,
|
|
1116
|
-
}), /* @__PURE__ */
|
|
843
|
+
}, activeAction.icon && /* @__PURE__ */ import_react16.default.createElement(activeAction.icon, {
|
|
844
|
+
className: (0, import_react_ui_theme10.getSize)(5)
|
|
845
|
+
}), /* @__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, {
|
|
1117
846
|
asChild: true
|
|
1118
|
-
}, /* @__PURE__ */
|
|
847
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Button, {
|
|
1119
848
|
classNames: [
|
|
1120
849
|
"bs-11 flex-none rounded-is-none",
|
|
1121
850
|
classNames
|
|
1122
851
|
],
|
|
1123
852
|
"data-testid": dropdownTestId
|
|
1124
|
-
}, /* @__PURE__ */
|
|
853
|
+
}, /* @__PURE__ */ import_react16.default.createElement("span", {
|
|
1125
854
|
className: "sr-only"
|
|
1126
|
-
}, t("invite options label")), /* @__PURE__ */
|
|
1127
|
-
className: (0,
|
|
1128
|
-
}))), /* @__PURE__ */
|
|
1129
|
-
return /* @__PURE__ */
|
|
855
|
+
}, t("invite options label")), /* @__PURE__ */ import_react16.default.createElement(import_react15.CaretDown, {
|
|
856
|
+
className: (0, import_react_ui_theme10.getSize)(4)
|
|
857
|
+
}))), /* @__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]) => {
|
|
858
|
+
return /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.CheckboxItem, {
|
|
1130
859
|
key: id,
|
|
1131
860
|
"aria-labelledby": `${id}__label`,
|
|
1132
861
|
"aria-describedby": `${id}__description`,
|
|
@@ -1134,27 +863,27 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react21.forwardRef)((props, fo
|
|
|
1134
863
|
onCheckedChange: (checked) => checked && setActiveAction(id),
|
|
1135
864
|
classNames: "gap-2",
|
|
1136
865
|
"data-testid": action.testId
|
|
1137
|
-
}, action.icon && /* @__PURE__ */
|
|
1138
|
-
className: (0,
|
|
1139
|
-
}), /* @__PURE__ */
|
|
866
|
+
}, action.icon && /* @__PURE__ */ import_react16.default.createElement(action.icon, {
|
|
867
|
+
className: (0, import_react_ui_theme10.getSize)(5)
|
|
868
|
+
}), /* @__PURE__ */ import_react16.default.createElement("div", {
|
|
1140
869
|
role: "none",
|
|
1141
870
|
className: "flex-1 min-is-0 space-b-1"
|
|
1142
|
-
}, /* @__PURE__ */
|
|
871
|
+
}, /* @__PURE__ */ import_react16.default.createElement("p", {
|
|
1143
872
|
id: `${id}__label`
|
|
1144
|
-
}, action.label), action.description && /* @__PURE__ */
|
|
873
|
+
}, action.label), action.description && /* @__PURE__ */ import_react16.default.createElement("p", {
|
|
1145
874
|
id: `${id}__description`,
|
|
1146
|
-
className:
|
|
1147
|
-
}, action.description)), /* @__PURE__ */
|
|
875
|
+
className: import_react_ui_theme10.descriptionText
|
|
876
|
+
}, action.description)), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.ItemIndicator, {
|
|
1148
877
|
asChild: true
|
|
1149
|
-
}, /* @__PURE__ */
|
|
878
|
+
}, /* @__PURE__ */ import_react16.default.createElement(import_react15.Check, {
|
|
1150
879
|
weight: "bold",
|
|
1151
|
-
className: (0,
|
|
880
|
+
className: (0, import_react_ui_theme10.getSize)(4)
|
|
1152
881
|
})));
|
|
1153
|
-
})), /* @__PURE__ */
|
|
882
|
+
})), /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.DropdownMenu.Arrow, null)))));
|
|
1154
883
|
});
|
|
1155
|
-
var Action = /* @__PURE__ */ (0,
|
|
884
|
+
var Action = /* @__PURE__ */ (0, import_react16.forwardRef)((props, forwardedRef) => {
|
|
1156
885
|
const { children, classNames, variant, isFull = true, ...rest } = props;
|
|
1157
|
-
return /* @__PURE__ */
|
|
886
|
+
return /* @__PURE__ */ import_react16.default.createElement(import_react_ui9.Button, {
|
|
1158
887
|
...rest,
|
|
1159
888
|
classNames: [
|
|
1160
889
|
isFull && "is-full",
|
|
@@ -1165,37 +894,37 @@ var Action = /* @__PURE__ */ (0, import_react21.forwardRef)((props, forwardedRef
|
|
|
1165
894
|
variant
|
|
1166
895
|
}, children);
|
|
1167
896
|
});
|
|
1168
|
-
var Actions = /* @__PURE__ */ (0,
|
|
1169
|
-
return /* @__PURE__ */
|
|
897
|
+
var Actions = /* @__PURE__ */ (0, import_react17.forwardRef)(({ classNames, children, ...props }, forwardedRef) => {
|
|
898
|
+
return /* @__PURE__ */ import_react17.default.createElement("div", {
|
|
1170
899
|
...props,
|
|
1171
|
-
className: (0,
|
|
900
|
+
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),
|
|
1172
901
|
ref: forwardedRef
|
|
1173
902
|
}, children);
|
|
1174
903
|
});
|
|
1175
904
|
var CloseButton = ({ onDone, ...props }) => {
|
|
1176
|
-
const { t } = (0,
|
|
1177
|
-
return /* @__PURE__ */
|
|
905
|
+
const { t } = (0, import_react_ui10.useTranslation)("os");
|
|
906
|
+
return /* @__PURE__ */ import_react19.default.createElement(import_react_ui10.Button, {
|
|
1178
907
|
variant: "ghost",
|
|
1179
|
-
classNames: (0,
|
|
908
|
+
classNames: (0, import_react_ui_theme12.mx)("plb-0 pli-2 absolute block-start-0 inline-end-0 z-[1]"),
|
|
1180
909
|
onClick: () => onDone?.(),
|
|
1181
910
|
...props
|
|
1182
|
-
}, /* @__PURE__ */
|
|
911
|
+
}, /* @__PURE__ */ import_react19.default.createElement(import_react18.X, {
|
|
1183
912
|
weight: "bold",
|
|
1184
|
-
className: (0,
|
|
1185
|
-
}), /* @__PURE__ */
|
|
913
|
+
className: (0, import_react_ui_theme12.getSize)(4)
|
|
914
|
+
}), /* @__PURE__ */ import_react19.default.createElement("span", {
|
|
1186
915
|
className: "sr-only"
|
|
1187
916
|
}, t("exit label")));
|
|
1188
917
|
};
|
|
1189
918
|
var Emoji = ({ text, className }) => {
|
|
1190
919
|
const size = 14;
|
|
1191
|
-
return /* @__PURE__ */
|
|
920
|
+
return /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1192
921
|
role: "none",
|
|
1193
|
-
className: (0,
|
|
1194
|
-
}, /* @__PURE__ */
|
|
922
|
+
className: (0, import_react_ui_theme13.mx)((0, import_react_ui_theme13.getSize)(size), "rounded relative pointer-events-none", className)
|
|
923
|
+
}, /* @__PURE__ */ import_react20.default.createElement("svg", {
|
|
1195
924
|
viewBox: `0 0 ${size * 4} ${size * 4}`,
|
|
1196
925
|
width: size * 4,
|
|
1197
926
|
height: size * 4
|
|
1198
|
-
}, /* @__PURE__ */
|
|
927
|
+
}, /* @__PURE__ */ import_react20.default.createElement("text", {
|
|
1199
928
|
x: "50%",
|
|
1200
929
|
y: "50%",
|
|
1201
930
|
textAnchor: "middle",
|
|
@@ -1206,41 +935,41 @@ var Emoji = ({ text, className }) => {
|
|
|
1206
935
|
};
|
|
1207
936
|
var Centered = (props) => {
|
|
1208
937
|
const { children } = props;
|
|
1209
|
-
return /* @__PURE__ */
|
|
938
|
+
return /* @__PURE__ */ import_react20.default.createElement("div", {
|
|
1210
939
|
role: "none",
|
|
1211
940
|
className: "absolute inset-0 flex items-center justify-center"
|
|
1212
941
|
}, children);
|
|
1213
942
|
};
|
|
1214
|
-
var Heading = /* @__PURE__ */ (0,
|
|
1215
|
-
return /* @__PURE__ */
|
|
943
|
+
var Heading = /* @__PURE__ */ (0, import_react21.forwardRef)(({ titleId, title, titleSrOnly, children, corner }, forwardedRef) => {
|
|
944
|
+
return /* @__PURE__ */ import_react21.default.createElement("div", {
|
|
1216
945
|
role: "none",
|
|
1217
946
|
className: "pbe-2 relative",
|
|
1218
947
|
ref: forwardedRef
|
|
1219
|
-
}, corner, /* @__PURE__ */
|
|
948
|
+
}, corner, /* @__PURE__ */ import_react21.default.createElement("h1", {
|
|
1220
949
|
...!titleSrOnly && {
|
|
1221
950
|
id: titleId
|
|
1222
951
|
},
|
|
1223
|
-
className: (0,
|
|
1224
|
-
}, title), titleSrOnly && /* @__PURE__ */
|
|
952
|
+
className: (0, import_react_ui_theme14.mx)(import_react_ui_theme14.descriptionText, "text-center mlb-2", titleSrOnly && "invisible")
|
|
953
|
+
}, title), titleSrOnly && /* @__PURE__ */ import_react21.default.createElement("span", {
|
|
1225
954
|
id: titleId
|
|
1226
955
|
}, title), children);
|
|
1227
956
|
});
|
|
1228
957
|
var Label = (props) => {
|
|
1229
958
|
const { children } = props;
|
|
1230
|
-
return /* @__PURE__ */
|
|
1231
|
-
className: (0,
|
|
959
|
+
return /* @__PURE__ */ import_react22.default.createElement("span", {
|
|
960
|
+
className: (0, import_react_ui_theme15.mx)(import_react_ui_theme15.descriptionText, "text-center mli-6 whitespace-normal")
|
|
1232
961
|
}, children);
|
|
1233
962
|
};
|
|
1234
963
|
var Input = ({ validationMessage, label, ...props }) => {
|
|
1235
|
-
return /* @__PURE__ */
|
|
964
|
+
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, {
|
|
1236
965
|
...props,
|
|
1237
966
|
classNames: "plb-3 mbs-2 text-center"
|
|
1238
|
-
}), /* @__PURE__ */
|
|
967
|
+
}), /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.DescriptionAndValidation, null, validationMessage && /* @__PURE__ */ import_react23.default.createElement(import_react_ui11.Input.Validation, null, validationMessage)));
|
|
1239
968
|
};
|
|
1240
|
-
var StepHeading = /* @__PURE__ */ (0,
|
|
1241
|
-
return /* @__PURE__ */
|
|
969
|
+
var StepHeading = /* @__PURE__ */ (0, import_react24.forwardRef)(({ children, className, ...props }, forwardedRef) => {
|
|
970
|
+
return /* @__PURE__ */ import_react24.default.createElement("h2", {
|
|
1242
971
|
...props,
|
|
1243
|
-
className: (0,
|
|
972
|
+
className: (0, import_react_ui_theme16.mx)("font-normal text-sm mbe-4 mli-1 text-center", className),
|
|
1244
973
|
ref: forwardedRef
|
|
1245
974
|
}, children);
|
|
1246
975
|
});
|
|
@@ -1250,21 +979,21 @@ var VIEW_NAME = "ViewportView";
|
|
|
1250
979
|
var [createViewportContext, createViewportScope] = (0, import_react_context.createContextScope)(VIEWPORT_NAME, []);
|
|
1251
980
|
var [ViewportProvider, useViewportContext] = createViewportContext(VIEWPORT_NAME);
|
|
1252
981
|
var ViewportRoot = ({ __viewportScope, classNames, children, defaultActiveView, activeView: propsActiveView, focusManaged = false, onActiveViewChange, ...props }) => {
|
|
1253
|
-
const [activeView = "never", setActiveView] = (0,
|
|
982
|
+
const [activeView = "never", setActiveView] = (0, import_react_use_controllable_state2.useControllableState)({
|
|
1254
983
|
prop: propsActiveView,
|
|
1255
984
|
defaultProp: defaultActiveView,
|
|
1256
985
|
onChange: onActiveViewChange
|
|
1257
986
|
});
|
|
1258
|
-
return /* @__PURE__ */
|
|
987
|
+
return /* @__PURE__ */ import_react25.default.createElement(ViewportProvider, {
|
|
1259
988
|
focusManaged,
|
|
1260
989
|
activeView,
|
|
1261
990
|
setActiveView,
|
|
1262
991
|
scope: __viewportScope
|
|
1263
|
-
}, /* @__PURE__ */
|
|
992
|
+
}, /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1264
993
|
role: "region",
|
|
1265
994
|
"aria-live": "polite",
|
|
1266
995
|
...props,
|
|
1267
|
-
className: (0,
|
|
996
|
+
className: (0, import_react_ui_theme17.mx)("is-full overflow-hidden", classNames)
|
|
1268
997
|
}, children));
|
|
1269
998
|
};
|
|
1270
999
|
ViewportRoot.displayName = VIEWPORT_NAME;
|
|
@@ -1272,20 +1001,20 @@ var ViewportViews = ({ classNames, children, ...props }) => {
|
|
|
1272
1001
|
const size = {
|
|
1273
1002
|
inlineSize: `${Math.ceil(children.length) * 100}%`
|
|
1274
1003
|
};
|
|
1275
|
-
return /* @__PURE__ */
|
|
1004
|
+
return /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1276
1005
|
role: "none",
|
|
1277
1006
|
style: size,
|
|
1278
1007
|
...props,
|
|
1279
|
-
className: (0,
|
|
1008
|
+
className: (0, import_react_ui_theme17.mx)("flex", classNames)
|
|
1280
1009
|
}, children);
|
|
1281
1010
|
};
|
|
1282
1011
|
ViewportViews.displayName = VIEWS_NAME;
|
|
1283
|
-
var ViewportView = /* @__PURE__ */ (0,
|
|
1012
|
+
var ViewportView = /* @__PURE__ */ (0, import_react25.forwardRef)(({ __viewportScope, classNames, children, id, ...props }, forwardedRef) => {
|
|
1284
1013
|
const { activeView, focusManaged } = useViewportContext(VIEW_NAME, __viewportScope);
|
|
1285
1014
|
const isActive = id === activeView;
|
|
1286
|
-
const ref = (0,
|
|
1015
|
+
const ref = (0, import_react_ui12.useForwardedRef)(forwardedRef);
|
|
1287
1016
|
const { findFirstFocusable } = (0, import_react_tabster.useFocusFinders)();
|
|
1288
|
-
(0,
|
|
1017
|
+
(0, import_react25.useEffect)(() => {
|
|
1289
1018
|
if (!focusManaged && isActive && document.body.hasAttribute("data-is-keyboard") && ref.current) {
|
|
1290
1019
|
findFirstFocusable(ref.current)?.focus();
|
|
1291
1020
|
}
|
|
@@ -1294,12 +1023,12 @@ var ViewportView = /* @__PURE__ */ (0, import_react30.forwardRef)(({ __viewportS
|
|
|
1294
1023
|
ref.current,
|
|
1295
1024
|
isActive
|
|
1296
1025
|
]);
|
|
1297
|
-
return /* @__PURE__ */
|
|
1026
|
+
return /* @__PURE__ */ import_react25.default.createElement("section", {
|
|
1298
1027
|
...props,
|
|
1299
1028
|
...!isActive && {
|
|
1300
1029
|
"aria-hidden": true
|
|
1301
1030
|
},
|
|
1302
|
-
className: (0,
|
|
1031
|
+
className: (0, import_react_ui_theme17.mx)("min-is-0 flex-1 flex flex-col", isActive ? "order-2" : "order-4 invisible", classNames),
|
|
1303
1032
|
ref
|
|
1304
1033
|
}, children);
|
|
1305
1034
|
});
|
|
@@ -1309,20 +1038,20 @@ var Viewport = {
|
|
|
1309
1038
|
Views: ViewportViews,
|
|
1310
1039
|
View: ViewportView
|
|
1311
1040
|
};
|
|
1312
|
-
var SpaceListItem = /* @__PURE__ */ (0,
|
|
1041
|
+
var SpaceListItem = /* @__PURE__ */ (0, import_react26.forwardRef)(({ space, onClick }, ref) => {
|
|
1313
1042
|
const fallbackValue = (0, import_util4.keyToEmoji)(space.key);
|
|
1314
|
-
const labelId = (0,
|
|
1043
|
+
const labelId = (0, import_react_ui13.useId)("identityListItem__label");
|
|
1315
1044
|
const displayName = space.properties.name ?? (0, import_util4.humanize)(space.key.toHex());
|
|
1316
|
-
return /* @__PURE__ */
|
|
1317
|
-
className: (0,
|
|
1045
|
+
return /* @__PURE__ */ import_react26.default.createElement("li", {
|
|
1046
|
+
className: (0, import_react_ui_theme18.mx)("flex gap-2 items-center mbe-2", onClick && "cursor-pointer"),
|
|
1318
1047
|
onClick: () => onClick?.(),
|
|
1319
1048
|
ref,
|
|
1320
1049
|
"data-testid": "space-list-item"
|
|
1321
|
-
}, /* @__PURE__ */
|
|
1050
|
+
}, /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Root, {
|
|
1322
1051
|
labelId
|
|
1323
|
-
}, /* @__PURE__ */
|
|
1052
|
+
}, /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Frame, null, /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Fallback, {
|
|
1324
1053
|
text: fallbackValue
|
|
1325
|
-
})), /* @__PURE__ */
|
|
1054
|
+
})), /* @__PURE__ */ import_react26.default.createElement(import_react_ui13.Avatar.Label, {
|
|
1326
1055
|
classNames: "text-sm truncate"
|
|
1327
1056
|
}, displayName)));
|
|
1328
1057
|
});
|
|
@@ -1421,7 +1150,7 @@ var identityMachine = (0, import_xstate.createMachine)({
|
|
|
1421
1150
|
}
|
|
1422
1151
|
});
|
|
1423
1152
|
var useIdentityMachine = (client, options) => {
|
|
1424
|
-
return (0,
|
|
1153
|
+
return (0, import_react30.useMachine)(identityMachine, {
|
|
1425
1154
|
...options,
|
|
1426
1155
|
context: {
|
|
1427
1156
|
...options?.context,
|
|
@@ -1464,7 +1193,7 @@ var IdentityActionChooser = (props) => {
|
|
|
1464
1193
|
});
|
|
1465
1194
|
};
|
|
1466
1195
|
const isProduction = client.config.values.runtime?.app?.env?.DX_ENVIRONMENT === "production";
|
|
1467
|
-
return /* @__PURE__ */
|
|
1196
|
+
return /* @__PURE__ */ import_react31.default.createElement(IdentityActionChooserImpl, {
|
|
1468
1197
|
...props,
|
|
1469
1198
|
onClickAdd: createInvitation,
|
|
1470
1199
|
onClickJoinExisting: () => send?.({
|
|
@@ -1480,10 +1209,10 @@ var IdentityActionChooser = (props) => {
|
|
|
1480
1209
|
};
|
|
1481
1210
|
var IdentityActionChooserImpl = ({ devices, connectionState, agentHostingEnabled, onClickAdd, onClickJoinExisting, onClickRecover, onClickReset, ...agentProps }) => {
|
|
1482
1211
|
const edgeDeviceAvailable = devices.find((device) => device.profile?.type === import_halo3.DeviceType.AGENT_MANAGED && device.profile?.os?.toUpperCase() === "EDGE");
|
|
1483
|
-
return /* @__PURE__ */
|
|
1212
|
+
return /* @__PURE__ */ import_react31.default.createElement("div", {
|
|
1484
1213
|
role: "none",
|
|
1485
1214
|
className: "bs-40 grow overflow-y-auto"
|
|
1486
|
-
}, /* @__PURE__ */
|
|
1215
|
+
}, /* @__PURE__ */ import_react31.default.createElement(DeviceList, {
|
|
1487
1216
|
devices,
|
|
1488
1217
|
connectionState,
|
|
1489
1218
|
onClickAdd,
|
|
@@ -1491,13 +1220,13 @@ var IdentityActionChooserImpl = ({ devices, connectionState, agentHostingEnabled
|
|
|
1491
1220
|
onClickRecover: agentProps.agentStatus === "created" ? onClickRecover : void 0,
|
|
1492
1221
|
onClickReset,
|
|
1493
1222
|
onAgentDestroy: agentProps.onAgentDestroy
|
|
1494
|
-
}), !edgeDeviceAvailable && agentHostingEnabled && /* @__PURE__ */
|
|
1223
|
+
}), !edgeDeviceAvailable && agentHostingEnabled && /* @__PURE__ */ import_react31.default.createElement(AgentConfig, agentProps));
|
|
1495
1224
|
};
|
|
1496
1225
|
var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts";
|
|
1497
1226
|
var useEdgeAgentHandlers = ({ identity }) => {
|
|
1498
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
1499
|
-
const [lastReceivedStatus, setLastReceivedStatus] = (0,
|
|
1500
|
-
const [agentStatus, setAgentStatus] = (0,
|
|
1227
|
+
const [validationMessage, setValidationMessage] = (0, import_react33.useState)("");
|
|
1228
|
+
const [lastReceivedStatus, setLastReceivedStatus] = (0, import_react33.useState)(import_services.QueryAgentStatusResponse.AgentStatus.UNKNOWN);
|
|
1229
|
+
const [agentStatus, setAgentStatus] = (0, import_react33.useState)("getting");
|
|
1501
1230
|
const client = (0, import_react_client5.useClient)();
|
|
1502
1231
|
const agentHostingEnabled = Boolean(client.config.values.runtime?.client?.edgeFeatures?.agents);
|
|
1503
1232
|
const handleStatus = (status) => {
|
|
@@ -1514,7 +1243,7 @@ var useEdgeAgentHandlers = ({ identity }) => {
|
|
|
1514
1243
|
break;
|
|
1515
1244
|
}
|
|
1516
1245
|
};
|
|
1517
|
-
(0,
|
|
1246
|
+
(0, import_react33.useEffect)(() => {
|
|
1518
1247
|
const stream = client.services.services.EdgeAgentService?.queryAgentStatus();
|
|
1519
1248
|
stream?.subscribe(({ status }) => {
|
|
1520
1249
|
setLastReceivedStatus(status);
|
|
@@ -1583,8 +1312,8 @@ var useEdgeAgentHandlers = ({ identity }) => {
|
|
|
1583
1312
|
};
|
|
1584
1313
|
var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/IdentityPanel/useKubeAgentHandlers.ts";
|
|
1585
1314
|
var useKubeAgentHandlers = ({ invitations, identity }) => {
|
|
1586
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
1587
|
-
const [agentStatus, setAgentStatus] = (0,
|
|
1315
|
+
const [validationMessage, setValidationMessage] = (0, import_react34.useState)("");
|
|
1316
|
+
const [agentStatus, setAgentStatus] = (0, import_react34.useState)("getting");
|
|
1588
1317
|
const agentHostingProviderClient = (0, import_react_client6.useAgentHostingClient)();
|
|
1589
1318
|
const client = (0, import_react_client6.useClient)();
|
|
1590
1319
|
const updateAgentStatus = async () => {
|
|
@@ -1661,10 +1390,10 @@ var useKubeAgentHandlers = ({ invitations, identity }) => {
|
|
|
1661
1390
|
setValidationMessage("No agent provider configured.");
|
|
1662
1391
|
}
|
|
1663
1392
|
};
|
|
1664
|
-
(0,
|
|
1393
|
+
(0, import_react34.useEffect)(() => {
|
|
1665
1394
|
void updateAgentStatus();
|
|
1666
1395
|
}, []);
|
|
1667
|
-
const handleAgentCreate = (0,
|
|
1396
|
+
const handleAgentCreate = (0, import_react34.useCallback)(async (invitation) => {
|
|
1668
1397
|
const invitationCode = import_invitations4.InvitationEncoder.encode(invitation);
|
|
1669
1398
|
if (invitation.state === import_invitations4.Invitation.State.CONNECTING) {
|
|
1670
1399
|
import_log6.log.info(JSON.stringify({
|
|
@@ -1748,18 +1477,18 @@ var invitationStatusValue = /* @__PURE__ */ new Map([
|
|
|
1748
1477
|
]
|
|
1749
1478
|
]);
|
|
1750
1479
|
var InvitationManagerView = ({ children, ...props }) => {
|
|
1751
|
-
return /* @__PURE__ */
|
|
1480
|
+
return /* @__PURE__ */ import_react36.default.createElement(Viewport.View, {
|
|
1752
1481
|
...props,
|
|
1753
1482
|
classNames: "grow flex flex-col justify-around items-center"
|
|
1754
1483
|
}, children);
|
|
1755
1484
|
};
|
|
1756
1485
|
var InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCode, id = "0" }) => {
|
|
1757
|
-
const { t } = (0,
|
|
1758
|
-
const qrLabel = (0,
|
|
1486
|
+
const { t } = (0, import_react_ui17.useTranslation)("os");
|
|
1487
|
+
const qrLabel = (0, import_react_ui17.useId)("invitation-manager__qr-code");
|
|
1759
1488
|
const statusValue = multiUse ? 0 : invitationStatusValue.get(status) ?? 0;
|
|
1760
1489
|
const showAuthCode = statusValue === 3;
|
|
1761
1490
|
const emoji = (0, import_util7.hexToEmoji)(id);
|
|
1762
|
-
const activeView = (0,
|
|
1491
|
+
const activeView = (0, import_react36.useMemo)(() => {
|
|
1763
1492
|
if (multiUse) {
|
|
1764
1493
|
return "showing qr";
|
|
1765
1494
|
}
|
|
@@ -1775,50 +1504,50 @@ var InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCo
|
|
|
1775
1504
|
}, [
|
|
1776
1505
|
statusValue
|
|
1777
1506
|
]);
|
|
1778
|
-
return /* @__PURE__ */
|
|
1507
|
+
return /* @__PURE__ */ import_react36.default.createElement(import_react36.default.Fragment, null, /* @__PURE__ */ import_react36.default.createElement(Viewport.Root, {
|
|
1779
1508
|
activeView,
|
|
1780
1509
|
classNames: "grow plb-1"
|
|
1781
|
-
}, /* @__PURE__ */
|
|
1510
|
+
}, /* @__PURE__ */ import_react36.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react36.default.createElement(InvitationManagerView, {
|
|
1782
1511
|
id: "showing qr",
|
|
1783
1512
|
emoji
|
|
1784
|
-
}, /* @__PURE__ */
|
|
1513
|
+
}, /* @__PURE__ */ import_react36.default.createElement("p", {
|
|
1785
1514
|
className: "text-sm mlb-1 font-normal text-center"
|
|
1786
|
-
}, t(multiUse ? "invite many qr label" : "invite one qr label")), /* @__PURE__ */
|
|
1515
|
+
}, t(multiUse ? "invite many qr label" : "invite one qr label")), /* @__PURE__ */ import_react36.default.createElement("div", {
|
|
1787
1516
|
role: "none",
|
|
1788
|
-
className: (0,
|
|
1789
|
-
}, /* @__PURE__ */
|
|
1517
|
+
className: (0, import_react_ui_theme20.mx)(import_react_ui_theme20.descriptionText, "is-full max-is-[14rem] relative")
|
|
1518
|
+
}, /* @__PURE__ */ import_react36.default.createElement(import_react_qr_rounded.QR, {
|
|
1790
1519
|
rounding: 100,
|
|
1791
1520
|
backgroundColor: "transparent",
|
|
1792
1521
|
color: "currentColor",
|
|
1793
|
-
className: (0,
|
|
1522
|
+
className: (0, import_react_ui_theme20.mx)("is-full bs-full p-2", showAuthCode && "invisible"),
|
|
1794
1523
|
"aria-labelledby": qrLabel,
|
|
1795
1524
|
errorCorrectionLevel: "Q",
|
|
1796
1525
|
cutout: true
|
|
1797
|
-
}, invitationUrl ?? "never"), /* @__PURE__ */
|
|
1526
|
+
}, invitationUrl ?? "never"), /* @__PURE__ */ import_react36.default.createElement(Centered, null, /* @__PURE__ */ import_react36.default.createElement(Emoji, {
|
|
1798
1527
|
text: emoji
|
|
1799
|
-
}))), /* @__PURE__ */
|
|
1528
|
+
}))), /* @__PURE__ */ import_react36.default.createElement("span", {
|
|
1800
1529
|
id: qrLabel,
|
|
1801
1530
|
className: "sr-only"
|
|
1802
|
-
}, t("qr label")), /* @__PURE__ */
|
|
1531
|
+
}, t("qr label")), /* @__PURE__ */ import_react36.default.createElement(import_react_ui17.Clipboard.Button, {
|
|
1803
1532
|
variant: "ghost",
|
|
1804
1533
|
value: invitationUrl ?? "never"
|
|
1805
|
-
})), /* @__PURE__ */
|
|
1534
|
+
})), /* @__PURE__ */ import_react36.default.createElement(InvitationManagerView, {
|
|
1806
1535
|
id: "showing auth code"
|
|
1807
|
-
}, /* @__PURE__ */
|
|
1536
|
+
}, /* @__PURE__ */ import_react36.default.createElement(Label, null, t("auth code message")), /* @__PURE__ */ import_react36.default.createElement(AuthCode, {
|
|
1808
1537
|
code: authCode,
|
|
1809
1538
|
large: true,
|
|
1810
1539
|
classNames: "text-black dark:text-white"
|
|
1811
|
-
}), /* @__PURE__ */
|
|
1540
|
+
}), /* @__PURE__ */ import_react36.default.createElement(Label, null, t("auth other device emoji message")), emoji && /* @__PURE__ */ import_react36.default.createElement(Emoji, {
|
|
1812
1541
|
text: emoji
|
|
1813
|
-
})), /* @__PURE__ */
|
|
1542
|
+
})), /* @__PURE__ */ import_react36.default.createElement(InvitationManagerView, {
|
|
1814
1543
|
id: "showing final"
|
|
1815
|
-
}, statusValue > 0 ? /* @__PURE__ */
|
|
1816
|
-
className: (0,
|
|
1817
|
-
}) : /* @__PURE__ */
|
|
1818
|
-
className: (0,
|
|
1819
|
-
})))), /* @__PURE__ */
|
|
1544
|
+
}, statusValue > 0 ? /* @__PURE__ */ import_react36.default.createElement(import_react35.Check, {
|
|
1545
|
+
className: (0, import_react_ui_theme20.mx)("m-1.5", (0, import_react_ui_theme20.getSize)(6))
|
|
1546
|
+
}) : /* @__PURE__ */ import_react36.default.createElement(import_react35.X, {
|
|
1547
|
+
className: (0, import_react_ui_theme20.mx)("m-1.5", (0, import_react_ui_theme20.getSize)(6))
|
|
1548
|
+
})))), /* @__PURE__ */ import_react36.default.createElement(Actions, {
|
|
1820
1549
|
classNames: "mbs-4"
|
|
1821
|
-
}, /* @__PURE__ */
|
|
1550
|
+
}, /* @__PURE__ */ import_react36.default.createElement(Action, {
|
|
1822
1551
|
disabled: !active,
|
|
1823
1552
|
onClick: () => send?.({
|
|
1824
1553
|
type: "deselectInvitation"
|
|
@@ -1827,9 +1556,9 @@ var InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCo
|
|
|
1827
1556
|
};
|
|
1828
1557
|
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/steps/ConfirmReset.tsx";
|
|
1829
1558
|
var ConfirmReset = ({ active, onCancel, onConfirm, mode }) => {
|
|
1830
|
-
const { t } = (0,
|
|
1831
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
1832
|
-
const [pending, setPending] = (0,
|
|
1559
|
+
const { t } = (0, import_react_ui18.useTranslation)("os");
|
|
1560
|
+
const [validationMessage, setValidationMessage] = (0, import_react38.useState)("");
|
|
1561
|
+
const [pending, setPending] = (0, import_react38.useState)(false);
|
|
1833
1562
|
const processReset = async () => {
|
|
1834
1563
|
setPending(true);
|
|
1835
1564
|
return onConfirm?.().then(() => setPending(false), (error) => {
|
|
@@ -1843,7 +1572,7 @@ var ConfirmReset = ({ active, onCancel, onConfirm, mode }) => {
|
|
|
1843
1572
|
setPending(false);
|
|
1844
1573
|
});
|
|
1845
1574
|
};
|
|
1846
|
-
return /* @__PURE__ */
|
|
1575
|
+
return /* @__PURE__ */ import_react38.default.createElement(ConfirmResetImpl, {
|
|
1847
1576
|
disabled: !active,
|
|
1848
1577
|
pending,
|
|
1849
1578
|
validationMessage,
|
|
@@ -1853,20 +1582,20 @@ var ConfirmReset = ({ active, onCancel, onConfirm, mode }) => {
|
|
|
1853
1582
|
});
|
|
1854
1583
|
};
|
|
1855
1584
|
var ConfirmResetImpl = ({ disabled, pending, validationMessage, onConfirm, onCancel, mode }) => {
|
|
1856
|
-
const { t } = (0,
|
|
1585
|
+
const { t } = (0, import_react_ui18.useTranslation)("os");
|
|
1857
1586
|
const confirmationValue = t("confirmation value");
|
|
1858
|
-
const [inputValue, setInputValue] = (0,
|
|
1587
|
+
const [inputValue, setInputValue] = (0, import_react38.useState)("");
|
|
1859
1588
|
const testIdAffix = mode === "join new identity" ? "join-new-identity" : mode === "recover" ? "recover" : "reset-storage";
|
|
1860
|
-
return /* @__PURE__ */
|
|
1589
|
+
return /* @__PURE__ */ import_react38.default.createElement(import_react38.default.Fragment, null, /* @__PURE__ */ import_react38.default.createElement("div", {
|
|
1861
1590
|
role: "none",
|
|
1862
1591
|
className: "grow flex flex-col gap-2 justify-center"
|
|
1863
|
-
}, /* @__PURE__ */
|
|
1592
|
+
}, /* @__PURE__ */ import_react38.default.createElement(import_react_ui18.Message.Root, {
|
|
1864
1593
|
valence: "error"
|
|
1865
|
-
}, /* @__PURE__ */
|
|
1866
|
-
className: (0,
|
|
1867
|
-
}), t("sign out chooser title")), /* @__PURE__ */
|
|
1594
|
+
}, /* @__PURE__ */ import_react38.default.createElement(import_react_ui18.Message.Title, null, /* @__PURE__ */ import_react38.default.createElement(import_react37.Warning, {
|
|
1595
|
+
className: (0, import_react_ui_theme21.mx)((0, import_react_ui_theme21.getSize)(6), "inline mie-2")
|
|
1596
|
+
}), 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, {
|
|
1868
1597
|
validationMessage,
|
|
1869
|
-
label: /* @__PURE__ */
|
|
1598
|
+
label: /* @__PURE__ */ import_react38.default.createElement(StepHeading, {
|
|
1870
1599
|
className: "text-start mlb-2"
|
|
1871
1600
|
}, t(mode === "join new identity" ? "join new identity input label" : mode === "recover" ? "recover reset input label" : "reset storage input label", {
|
|
1872
1601
|
confirmationValue
|
|
@@ -1877,11 +1606,11 @@ var ConfirmResetImpl = ({ disabled, pending, validationMessage, onConfirm, onCan
|
|
|
1877
1606
|
confirmationValue
|
|
1878
1607
|
}),
|
|
1879
1608
|
onChange: ({ target: { value } }) => setInputValue(value)
|
|
1880
|
-
})), /* @__PURE__ */
|
|
1609
|
+
})), /* @__PURE__ */ import_react38.default.createElement(Actions, null, onCancel && /* @__PURE__ */ import_react38.default.createElement(Action, {
|
|
1881
1610
|
disabled,
|
|
1882
1611
|
onClick: onCancel,
|
|
1883
1612
|
"data-testid": `${testIdAffix}.reset-identity-cancel`
|
|
1884
|
-
}, t("cancel label")), onConfirm && /* @__PURE__ */
|
|
1613
|
+
}, t("cancel label")), onConfirm && /* @__PURE__ */ import_react38.default.createElement(Action, {
|
|
1885
1614
|
variant: "destructive",
|
|
1886
1615
|
disabled: disabled || pending || inputValue !== confirmationValue,
|
|
1887
1616
|
onClick: onConfirm,
|
|
@@ -1894,11 +1623,11 @@ var getHueValue = (identity) => identity?.profile?.data?.hue || (0, import_util5
|
|
|
1894
1623
|
var getEmojiValue = (identity) => identity?.profile?.data?.emoji || (0, import_util5.hexToEmoji)(identity?.identityKey.toHex() ?? "0");
|
|
1895
1624
|
var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, connectionState, onChangeConnectionState }) => {
|
|
1896
1625
|
const fallbackValue = (0, import_util5.keyToFallback)(identity.identityKey);
|
|
1897
|
-
const { t } = (0,
|
|
1898
|
-
const [displayName, setDisplayName] = (0,
|
|
1899
|
-
const [emoji, setEmojiDirectly] = (0,
|
|
1900
|
-
const [hue, setHueDirectly] = (0,
|
|
1901
|
-
const { textValue, setTextValue } = (0,
|
|
1626
|
+
const { t } = (0, import_react_ui15.useTranslation)("os");
|
|
1627
|
+
const [displayName, setDisplayName] = (0, import_react29.useState)(identity.profile?.displayName ?? "");
|
|
1628
|
+
const [emoji, setEmojiDirectly] = (0, import_react29.useState)(getEmojiValue(identity));
|
|
1629
|
+
const [hue, setHueDirectly] = (0, import_react29.useState)(getHueValue(identity));
|
|
1630
|
+
const { textValue, setTextValue } = (0, import_react_ui15.useClipboard)();
|
|
1902
1631
|
const identityHex = identity.identityKey.toHex();
|
|
1903
1632
|
const publicKeyCopied = textValue === identityHex;
|
|
1904
1633
|
const setEmoji = (nextEmoji) => {
|
|
@@ -1922,29 +1651,29 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
|
|
|
1922
1651
|
});
|
|
1923
1652
|
};
|
|
1924
1653
|
const isConnected = connectionState === import_mesh2.ConnectionState.ONLINE;
|
|
1925
|
-
return /* @__PURE__ */
|
|
1654
|
+
return /* @__PURE__ */ import_react29.default.createElement(Heading, {
|
|
1926
1655
|
titleId,
|
|
1927
1656
|
title,
|
|
1928
|
-
corner: /* @__PURE__ */
|
|
1657
|
+
corner: /* @__PURE__ */ import_react29.default.createElement(CloseButton, {
|
|
1929
1658
|
onDone
|
|
1930
1659
|
})
|
|
1931
|
-
}, /* @__PURE__ */
|
|
1660
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Root, {
|
|
1932
1661
|
size: 16,
|
|
1933
1662
|
variant: "circle",
|
|
1934
1663
|
status: isConnected ? "active" : "error",
|
|
1935
1664
|
hue: hue || fallbackValue.hue
|
|
1936
|
-
}, /* @__PURE__ */
|
|
1665
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Root, {
|
|
1937
1666
|
classNames: "flex justify-center"
|
|
1938
|
-
}, /* @__PURE__ */
|
|
1667
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Frame, {
|
|
1939
1668
|
classNames: "relative z-[2] -mli-4 chromatic-ignore"
|
|
1940
|
-
}, /* @__PURE__ */
|
|
1669
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Fallback, {
|
|
1941
1670
|
text: emoji || fallbackValue.emoji
|
|
1942
|
-
}))), /* @__PURE__ */
|
|
1671
|
+
}))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Avatar.Label, {
|
|
1943
1672
|
classNames: "sr-only",
|
|
1944
1673
|
"data-testid": "identityHeading.displayName"
|
|
1945
|
-
}, identity.profile?.displayName ?? (0, import_display_name3.generateName)(identity.identityKey.toHex())), /* @__PURE__ */
|
|
1674
|
+
}, 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, {
|
|
1946
1675
|
srOnly: true
|
|
1947
|
-
}, t("display name input label")), /* @__PURE__ */
|
|
1676
|
+
}, t("display name input label")), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Input.TextInput, {
|
|
1948
1677
|
variant: "subdued",
|
|
1949
1678
|
"data-testid": "display-name-input",
|
|
1950
1679
|
placeholder: t("display name input placeholder"),
|
|
@@ -1955,52 +1684,50 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
|
|
|
1955
1684
|
...identity.profile,
|
|
1956
1685
|
displayName: value
|
|
1957
1686
|
})
|
|
1958
|
-
})), /* @__PURE__ */
|
|
1687
|
+
})), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Root, {
|
|
1959
1688
|
classNames: "flex justify-center items-center gap-1 pt-3"
|
|
1960
|
-
}, /* @__PURE__ */
|
|
1689
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui_pickers.EmojiPickerToolbarButton, {
|
|
1961
1690
|
emoji,
|
|
1962
1691
|
onChangeEmoji: setEmoji,
|
|
1963
1692
|
classNames: "bs-[--rail-action]"
|
|
1964
|
-
}), /* @__PURE__ */
|
|
1693
|
+
}), /* @__PURE__ */ import_react29.default.createElement(import_react_ui_pickers.HuePickerToolbarButton, {
|
|
1965
1694
|
hue,
|
|
1966
1695
|
onChangeHue: setHue,
|
|
1967
1696
|
classNames: "bs-[--rail-action]"
|
|
1968
|
-
}), /* @__PURE__ */
|
|
1697
|
+
}), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Root, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Trigger, {
|
|
1969
1698
|
asChild: true
|
|
1970
|
-
}, /* @__PURE__ */
|
|
1699
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Button, {
|
|
1971
1700
|
classNames: "bs-[--rail-action]",
|
|
1972
1701
|
"data-testid": "update-profile-form-copy-key",
|
|
1973
1702
|
onClick: () => setTextValue(identityHex)
|
|
1974
|
-
}, /* @__PURE__ */
|
|
1703
|
+
}, /* @__PURE__ */ import_react29.default.createElement("span", {
|
|
1975
1704
|
className: "sr-only"
|
|
1976
|
-
}, t(publicKeyCopied ? "copy success label" : "copy self public key label")), /* @__PURE__ */
|
|
1977
|
-
className: (0,
|
|
1978
|
-
}))), /* @__PURE__ */
|
|
1979
|
-
side: "bottom"
|
|
1980
|
-
|
|
1981
|
-
}, t(publicKeyCopied ? "copy success label" : "copy self public key label"), /* @__PURE__ */ import_react34.default.createElement(import_react_ui17.Tooltip.Arrow, null)))), /* @__PURE__ */ import_react34.default.createElement(import_react_ui17.Tooltip.Root, null, /* @__PURE__ */ import_react34.default.createElement(import_react_ui17.Tooltip.Trigger, {
|
|
1705
|
+
}, t(publicKeyCopied ? "copy success label" : "copy self public key label")), /* @__PURE__ */ import_react29.default.createElement(import_react28.Key, {
|
|
1706
|
+
className: (0, import_react_ui_theme19.getSize)(5)
|
|
1707
|
+
}))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Portal, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Content, {
|
|
1708
|
+
side: "bottom"
|
|
1709
|
+
}, t(publicKeyCopied ? "copy success label" : "copy self public key 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, {
|
|
1982
1710
|
asChild: true
|
|
1983
|
-
}, /* @__PURE__ */
|
|
1711
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Toolbar.Button, {
|
|
1984
1712
|
classNames: [
|
|
1985
1713
|
"bs-[--rail-action]",
|
|
1986
1714
|
!isConnected && "text-error-500"
|
|
1987
1715
|
],
|
|
1988
1716
|
onClick: () => onChangeConnectionState?.(isConnected ? import_mesh2.ConnectionState.OFFLINE : import_mesh2.ConnectionState.ONLINE)
|
|
1989
|
-
}, /* @__PURE__ */
|
|
1717
|
+
}, /* @__PURE__ */ import_react29.default.createElement("span", {
|
|
1990
1718
|
className: "sr-only"
|
|
1991
|
-
}, t(isConnected ? "disconnect label" : "connect label")), isConnected ? /* @__PURE__ */
|
|
1992
|
-
className: (0,
|
|
1993
|
-
}) : /* @__PURE__ */
|
|
1994
|
-
className: (0,
|
|
1995
|
-
}))), /* @__PURE__ */
|
|
1996
|
-
side: "bottom"
|
|
1997
|
-
|
|
1998
|
-
}, t(isConnected ? "disconnect label" : "connect label"), /* @__PURE__ */ import_react34.default.createElement(import_react_ui17.Tooltip.Arrow, null)))))));
|
|
1719
|
+
}, t(isConnected ? "disconnect label" : "connect label")), isConnected ? /* @__PURE__ */ import_react29.default.createElement(import_react28.PlugsConnected, {
|
|
1720
|
+
className: (0, import_react_ui_theme19.getSize)(5)
|
|
1721
|
+
}) : /* @__PURE__ */ import_react29.default.createElement(import_react28.Plugs, {
|
|
1722
|
+
className: (0, import_react_ui_theme19.getSize)(5)
|
|
1723
|
+
}))), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Portal, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Content, {
|
|
1724
|
+
side: "bottom"
|
|
1725
|
+
}, t(isConnected ? "disconnect label" : "connect label"), /* @__PURE__ */ import_react29.default.createElement(import_react_ui15.Tooltip.Arrow, null)))))));
|
|
1999
1726
|
};
|
|
2000
1727
|
var IdentityPanelImpl = (props) => {
|
|
2001
1728
|
const { identity, titleId, activeView, onUpdateProfile, onResetStorage, onRecover, onJoinNewIdentity, IdentityActionChooser: IdentityActionChooserComponent = IdentityActionChooser, InvitationManager: InvitationManagerComponent = InvitationManager, connectionState, onChangeConnectionState, onDone, ...rest } = props;
|
|
2002
|
-
const { t } = (0,
|
|
2003
|
-
const title = (0,
|
|
1729
|
+
const { t } = (0, import_react_ui15.useTranslation)("os");
|
|
1730
|
+
const title = (0, import_react29.useMemo)(() => {
|
|
2004
1731
|
switch (activeView) {
|
|
2005
1732
|
case "device invitation manager":
|
|
2006
1733
|
return t("choose add device label");
|
|
@@ -2013,7 +1740,7 @@ var IdentityPanelImpl = (props) => {
|
|
|
2013
1740
|
]);
|
|
2014
1741
|
const onCancelReset = () => rest.send?.("unchooseAction");
|
|
2015
1742
|
const hideRecover = rest.agentStatus !== "created";
|
|
2016
|
-
return /* @__PURE__ */
|
|
1743
|
+
return /* @__PURE__ */ import_react29.default.createElement(import_react29.default.Fragment, null, /* @__PURE__ */ import_react29.default.createElement(IdentityHeading, {
|
|
2017
1744
|
identity,
|
|
2018
1745
|
titleId,
|
|
2019
1746
|
title,
|
|
@@ -2022,44 +1749,44 @@ var IdentityPanelImpl = (props) => {
|
|
|
2022
1749
|
onUpdateProfile,
|
|
2023
1750
|
connectionState,
|
|
2024
1751
|
onChangeConnectionState
|
|
2025
|
-
}), /* @__PURE__ */
|
|
1752
|
+
}), /* @__PURE__ */ import_react29.default.createElement(Viewport.Root, {
|
|
2026
1753
|
activeView
|
|
2027
|
-
}, /* @__PURE__ */
|
|
1754
|
+
}, /* @__PURE__ */ import_react29.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2028
1755
|
id: "identity action chooser",
|
|
2029
1756
|
classNames: viewStyles
|
|
2030
|
-
}, /* @__PURE__ */
|
|
1757
|
+
}, /* @__PURE__ */ import_react29.default.createElement(IdentityActionChooserComponent, {
|
|
2031
1758
|
active: activeView === "identity action chooser",
|
|
2032
1759
|
...rest,
|
|
2033
1760
|
connectionState
|
|
2034
|
-
})), /* @__PURE__ */
|
|
1761
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2035
1762
|
id: "device invitation manager",
|
|
2036
1763
|
classNames: viewStyles
|
|
2037
|
-
}, /* @__PURE__ */
|
|
1764
|
+
}, /* @__PURE__ */ import_react29.default.createElement(InvitationManagerComponent, {
|
|
2038
1765
|
active: activeView === "device invitation manager",
|
|
2039
1766
|
...rest,
|
|
2040
1767
|
invitationUrl: rest.createInvitationUrl(rest.invitationCode)
|
|
2041
|
-
})), /* @__PURE__ */
|
|
1768
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2042
1769
|
classNames: viewStyles,
|
|
2043
1770
|
id: "confirm join new identity"
|
|
2044
|
-
}, /* @__PURE__ */
|
|
1771
|
+
}, /* @__PURE__ */ import_react29.default.createElement(ConfirmReset, {
|
|
2045
1772
|
active: activeView === "confirm join new identity",
|
|
2046
1773
|
...rest,
|
|
2047
1774
|
mode: "join new identity",
|
|
2048
1775
|
onConfirm: onJoinNewIdentity,
|
|
2049
1776
|
onCancel: onCancelReset
|
|
2050
|
-
})), /* @__PURE__ */
|
|
1777
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2051
1778
|
classNames: viewStyles,
|
|
2052
1779
|
id: "confirm recover"
|
|
2053
|
-
}, /* @__PURE__ */
|
|
1780
|
+
}, /* @__PURE__ */ import_react29.default.createElement(ConfirmReset, {
|
|
2054
1781
|
active: activeView === "confirm recover",
|
|
2055
1782
|
...rest,
|
|
2056
1783
|
mode: "recover",
|
|
2057
1784
|
onConfirm: onRecover,
|
|
2058
1785
|
onCancel: onCancelReset
|
|
2059
|
-
})), /* @__PURE__ */
|
|
1786
|
+
})), /* @__PURE__ */ import_react29.default.createElement(Viewport.View, {
|
|
2060
1787
|
classNames: viewStyles,
|
|
2061
1788
|
id: "confirm reset storage"
|
|
2062
|
-
}, /* @__PURE__ */
|
|
1789
|
+
}, /* @__PURE__ */ import_react29.default.createElement(ConfirmReset, {
|
|
2063
1790
|
active: activeView === "confirm reset storage",
|
|
2064
1791
|
...rest,
|
|
2065
1792
|
mode: "reset storage",
|
|
@@ -2069,13 +1796,13 @@ var IdentityPanelImpl = (props) => {
|
|
|
2069
1796
|
};
|
|
2070
1797
|
var IdentityPanelWithInvitationImpl = ({ invitation, ...props }) => {
|
|
2071
1798
|
const invitationStatus = (0, import_invitations2.useInvitationStatus)(invitation);
|
|
2072
|
-
return /* @__PURE__ */
|
|
1799
|
+
return /* @__PURE__ */ import_react29.default.createElement(IdentityPanelImpl, {
|
|
2073
1800
|
...props,
|
|
2074
1801
|
...invitationStatus
|
|
2075
1802
|
});
|
|
2076
1803
|
};
|
|
2077
1804
|
var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code, initialDisposition = "default", ...props }) => {
|
|
2078
|
-
const titleId = (0,
|
|
1805
|
+
const titleId = (0, import_react_ui15.useId)("identityPanel__heading", propsTitleId);
|
|
2079
1806
|
const client = (0, import_react_client2.useClient)();
|
|
2080
1807
|
const devices = (0, import_halo2.useDevices)();
|
|
2081
1808
|
const identity = (0, import_halo2.useIdentity)();
|
|
@@ -2087,7 +1814,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2087
1814
|
if (!identity) {
|
|
2088
1815
|
import_log.log.error("IdentityPanel rendered with no active identity.", void 0, {
|
|
2089
1816
|
F: __dxlog_file6,
|
|
2090
|
-
L:
|
|
1817
|
+
L: 256,
|
|
2091
1818
|
S: void 0,
|
|
2092
1819
|
C: (f, a) => f(...a)
|
|
2093
1820
|
});
|
|
@@ -2100,11 +1827,11 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2100
1827
|
});
|
|
2101
1828
|
const { swarm: connectionState } = (0, import_mesh2.useNetworkStatus)();
|
|
2102
1829
|
const handleChangeConnectionState = async (nextState) => client?.mesh.updateConfig(nextState);
|
|
2103
|
-
(0,
|
|
1830
|
+
(0, import_react29.useEffect)(() => {
|
|
2104
1831
|
const subscription = identityService.subscribe((state) => {
|
|
2105
1832
|
(0, import_log.log)("[state]", state, {
|
|
2106
1833
|
F: __dxlog_file6,
|
|
2107
|
-
L:
|
|
1834
|
+
L: 269,
|
|
2108
1835
|
S: void 0,
|
|
2109
1836
|
C: (f, a) => f(...a)
|
|
2110
1837
|
});
|
|
@@ -2113,7 +1840,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2113
1840
|
}, [
|
|
2114
1841
|
identityService
|
|
2115
1842
|
]);
|
|
2116
|
-
const activeView = (0,
|
|
1843
|
+
const activeView = (0, import_react29.useMemo)(() => {
|
|
2117
1844
|
switch (true) {
|
|
2118
1845
|
case identityState.matches("choosingAction"):
|
|
2119
1846
|
return "identity action chooser";
|
|
@@ -2150,34 +1877,34 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
|
|
|
2150
1877
|
onChangeConnectionState: handleChangeConnectionState,
|
|
2151
1878
|
...agentProps
|
|
2152
1879
|
};
|
|
2153
|
-
return identityState.context.invitation ? /* @__PURE__ */
|
|
1880
|
+
return identityState.context.invitation ? /* @__PURE__ */ import_react29.default.createElement(IdentityPanelWithInvitationImpl, {
|
|
2154
1881
|
...implProps,
|
|
2155
1882
|
invitation: identityState.context.invitation
|
|
2156
|
-
}) : /* @__PURE__ */
|
|
1883
|
+
}) : /* @__PURE__ */ import_react29.default.createElement(IdentityPanelImpl, implProps);
|
|
2157
1884
|
};
|
|
2158
|
-
var JoinHeading = /* @__PURE__ */ (0,
|
|
2159
|
-
const { t } = (0,
|
|
2160
|
-
const exitButton = /* @__PURE__ */
|
|
1885
|
+
var JoinHeading = /* @__PURE__ */ (0, import_react41.forwardRef)(({ mode, titleId, exitActionParent, onExit }, forwardedRef) => {
|
|
1886
|
+
const { t } = (0, import_react_ui20.useTranslation)("os");
|
|
1887
|
+
const exitButton = /* @__PURE__ */ import_react41.default.createElement(import_react_ui20.Button, {
|
|
2161
1888
|
variant: "ghost",
|
|
2162
1889
|
...onExit && {
|
|
2163
1890
|
onClick: onExit
|
|
2164
1891
|
},
|
|
2165
|
-
classNames: (0,
|
|
1892
|
+
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]"),
|
|
2166
1893
|
"data-testid": "join-exit"
|
|
2167
|
-
}, /* @__PURE__ */
|
|
1894
|
+
}, /* @__PURE__ */ import_react41.default.createElement(import_react40.X, {
|
|
2168
1895
|
weight: "bold",
|
|
2169
|
-
className: (0,
|
|
2170
|
-
}), /* @__PURE__ */
|
|
1896
|
+
className: (0, import_react_ui_theme22.getSize)(4)
|
|
1897
|
+
}), /* @__PURE__ */ import_react41.default.createElement("span", {
|
|
2171
1898
|
className: "sr-only"
|
|
2172
1899
|
}, t("exit label")));
|
|
2173
|
-
return /* @__PURE__ */
|
|
1900
|
+
return /* @__PURE__ */ import_react41.default.createElement(Heading, {
|
|
2174
1901
|
ref: forwardedRef,
|
|
2175
1902
|
titleId,
|
|
2176
1903
|
title: t(mode === "halo-only" ? "selecting identity heading" : "joining space heading"),
|
|
2177
1904
|
...mode === "halo-only" ? {
|
|
2178
1905
|
titleSrOnly: true
|
|
2179
1906
|
} : {
|
|
2180
|
-
corner: exitActionParent ? /* @__PURE__ */ (0,
|
|
1907
|
+
corner: exitActionParent ? /* @__PURE__ */ (0, import_react41.cloneElement)(exitActionParent, {}, exitButton) : exitButton
|
|
2181
1908
|
},
|
|
2182
1909
|
titleSrOnly: mode === "halo-only"
|
|
2183
1910
|
});
|
|
@@ -2682,7 +2409,7 @@ var defaultCodeFromUrl = (invitationType, text) => {
|
|
|
2682
2409
|
}
|
|
2683
2410
|
};
|
|
2684
2411
|
var useJoinMachine = (client, options) => {
|
|
2685
|
-
const redeemHaloInvitationCode = (0,
|
|
2412
|
+
const redeemHaloInvitationCode = (0, import_react43.useCallback)(({ halo }) => {
|
|
2686
2413
|
if (halo.unredeemedCode) {
|
|
2687
2414
|
try {
|
|
2688
2415
|
const invitation = import_invitations6.InvitationEncoder.decode(defaultCodeFromUrl("halo", halo.unredeemedCode));
|
|
@@ -2707,7 +2434,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2707
2434
|
}, [
|
|
2708
2435
|
client
|
|
2709
2436
|
]);
|
|
2710
|
-
const redeemSpaceInvitationCode = (0,
|
|
2437
|
+
const redeemSpaceInvitationCode = (0, import_react43.useCallback)(({ space }) => {
|
|
2711
2438
|
if (space.unredeemedCode) {
|
|
2712
2439
|
try {
|
|
2713
2440
|
const invitation = import_invitations6.InvitationEncoder.decode(defaultCodeFromUrl("space", space.unredeemedCode));
|
|
@@ -2732,7 +2459,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2732
2459
|
}, [
|
|
2733
2460
|
client
|
|
2734
2461
|
]);
|
|
2735
|
-
const invalidateHaloInvitationCode = (0,
|
|
2462
|
+
const invalidateHaloInvitationCode = (0, import_react43.useCallback)(({ halo }) => {
|
|
2736
2463
|
if (halo.unredeemedCode) {
|
|
2737
2464
|
options?.onInvalidateInvitationCode?.(halo.unredeemedCode);
|
|
2738
2465
|
return {
|
|
@@ -2745,7 +2472,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2745
2472
|
}, [
|
|
2746
2473
|
options?.onInvalidateInvitationCode
|
|
2747
2474
|
]);
|
|
2748
|
-
const invalidateSpaceInvitationCode = (0,
|
|
2475
|
+
const invalidateSpaceInvitationCode = (0, import_react43.useCallback)(({ space }) => {
|
|
2749
2476
|
if (space.unredeemedCode) {
|
|
2750
2477
|
options?.onInvalidateInvitationCode?.(space.unredeemedCode);
|
|
2751
2478
|
return {
|
|
@@ -2758,7 +2485,7 @@ var useJoinMachine = (client, options) => {
|
|
|
2758
2485
|
}, [
|
|
2759
2486
|
options?.onInvalidateInvitationCode
|
|
2760
2487
|
]);
|
|
2761
|
-
return (0,
|
|
2488
|
+
return (0, import_react42.useMachine)(joinMachine, {
|
|
2762
2489
|
...options,
|
|
2763
2490
|
actions: {
|
|
2764
2491
|
...options?.actions,
|
|
@@ -2780,11 +2507,11 @@ var useJoinMachine = (client, options) => {
|
|
|
2780
2507
|
var AdditionMethodChooser = (viewStateProps) => {
|
|
2781
2508
|
const disabled = !viewStateProps.active;
|
|
2782
2509
|
const { send } = viewStateProps;
|
|
2783
|
-
const { t } = (0,
|
|
2510
|
+
const { t } = (0, import_react_ui21.useTranslation)("os");
|
|
2784
2511
|
const sharedButtonProps = {
|
|
2785
2512
|
disabled,
|
|
2786
|
-
after: /* @__PURE__ */
|
|
2787
|
-
className: (0,
|
|
2513
|
+
after: /* @__PURE__ */ import_react45.default.createElement(import_react44.CaretRight, {
|
|
2514
|
+
className: (0, import_react_ui_theme23.getSize)(4),
|
|
2788
2515
|
weight: "bold"
|
|
2789
2516
|
}),
|
|
2790
2517
|
slots: {
|
|
@@ -2793,35 +2520,35 @@ var AdditionMethodChooser = (viewStateProps) => {
|
|
|
2793
2520
|
}
|
|
2794
2521
|
}
|
|
2795
2522
|
};
|
|
2796
|
-
return /* @__PURE__ */
|
|
2523
|
+
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", {
|
|
2797
2524
|
role: "none",
|
|
2798
2525
|
className: "flex flex-col gap-1 grow"
|
|
2799
|
-
}, /* @__PURE__ */
|
|
2526
|
+
}, /* @__PURE__ */ import_react45.default.createElement(CompoundButton, {
|
|
2800
2527
|
...sharedButtonProps,
|
|
2801
2528
|
description: t("create identity description"),
|
|
2802
|
-
before: /* @__PURE__ */
|
|
2803
|
-
className: (0,
|
|
2529
|
+
before: /* @__PURE__ */ import_react45.default.createElement(import_react44.Plus, {
|
|
2530
|
+
className: (0, import_react_ui_theme23.getSize)(6)
|
|
2804
2531
|
}),
|
|
2805
2532
|
onClick: () => send({
|
|
2806
2533
|
type: "createIdentity"
|
|
2807
2534
|
}),
|
|
2808
2535
|
"data-autofocus": "choosingAuthMethod",
|
|
2809
2536
|
"data-testid": "identity-chooser.create-identity"
|
|
2810
|
-
}, t("create identity label")), /* @__PURE__ */
|
|
2537
|
+
}, t("create identity label")), /* @__PURE__ */ import_react45.default.createElement(CompoundButton, {
|
|
2811
2538
|
...sharedButtonProps,
|
|
2812
2539
|
description: t("join identity description"),
|
|
2813
|
-
before: /* @__PURE__ */
|
|
2814
|
-
className: (0,
|
|
2540
|
+
before: /* @__PURE__ */ import_react45.default.createElement(import_react44.QrCode, {
|
|
2541
|
+
className: (0, import_react_ui_theme23.getSize)(6)
|
|
2815
2542
|
}),
|
|
2816
2543
|
onClick: () => send({
|
|
2817
2544
|
type: "acceptHaloInvitation"
|
|
2818
2545
|
}),
|
|
2819
2546
|
"data-testid": "identity-chooser.join-identity"
|
|
2820
|
-
}, t("join identity label")), /* @__PURE__ */
|
|
2547
|
+
}, t("join identity label")), /* @__PURE__ */ import_react45.default.createElement(CompoundButton, {
|
|
2821
2548
|
...sharedButtonProps,
|
|
2822
2549
|
description: t("recover identity description"),
|
|
2823
|
-
before: /* @__PURE__ */
|
|
2824
|
-
className: (0,
|
|
2550
|
+
before: /* @__PURE__ */ import_react45.default.createElement(import_react44.Textbox, {
|
|
2551
|
+
className: (0, import_react_ui_theme23.getSize)(6)
|
|
2825
2552
|
}),
|
|
2826
2553
|
onClick: () => send({
|
|
2827
2554
|
type: "recoverIdentity"
|
|
@@ -2832,31 +2559,31 @@ var AdditionMethodChooser = (viewStateProps) => {
|
|
|
2832
2559
|
var IdentityAdded = (props) => {
|
|
2833
2560
|
const { mode, addedIdentity, active, send, onDone, doneActionParent } = props;
|
|
2834
2561
|
const disabled = !active;
|
|
2835
|
-
const { t } = (0,
|
|
2562
|
+
const { t } = (0, import_react_ui22.useTranslation)("os");
|
|
2836
2563
|
const addedIdentityHex = addedIdentity?.identityKey.toHex() ?? "0";
|
|
2837
2564
|
const fallbackValue = (0, import_util8.hexToFallback)(addedIdentityHex);
|
|
2838
|
-
const labelId = (0,
|
|
2565
|
+
const labelId = (0, import_react_ui22.useId)("identityListItem__label");
|
|
2839
2566
|
const displayName = addedIdentity?.profile?.displayName ?? (addedIdentity && (0, import_display_name4.generateName)(addedIdentityHex));
|
|
2840
|
-
const doneAction = /* @__PURE__ */
|
|
2567
|
+
const doneAction = /* @__PURE__ */ import_react46.default.createElement(Action, {
|
|
2841
2568
|
...onDone && {
|
|
2842
2569
|
onClick: () => onDone(null)
|
|
2843
2570
|
},
|
|
2844
2571
|
disabled,
|
|
2845
2572
|
"data-autofocus": "confirmingAddedIdentity",
|
|
2846
2573
|
"data-testid": "identity-added-done"
|
|
2847
|
-
}, /* @__PURE__ */
|
|
2848
|
-
return /* @__PURE__ */
|
|
2574
|
+
}, /* @__PURE__ */ import_react46.default.createElement("span", null, t("done label")));
|
|
2575
|
+
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", {
|
|
2849
2576
|
role: "none",
|
|
2850
2577
|
className: "grow flex flex-col items-center justify-center text-center gap-2"
|
|
2851
|
-
}, /* @__PURE__ */
|
|
2578
|
+
}, /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Root, {
|
|
2852
2579
|
status: "active",
|
|
2853
2580
|
labelId,
|
|
2854
2581
|
hue: addedIdentity?.profile?.data?.hue || fallbackValue.hue
|
|
2855
|
-
}, /* @__PURE__ */
|
|
2582
|
+
}, /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Frame, null, /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Fallback, {
|
|
2856
2583
|
text: addedIdentity?.profile?.data?.emoji || fallbackValue.emoji
|
|
2857
|
-
})), /* @__PURE__ */
|
|
2858
|
-
classNames: (0,
|
|
2859
|
-
}, displayName))), /* @__PURE__ */
|
|
2584
|
+
})), /* @__PURE__ */ import_react46.default.createElement(import_react_ui22.Avatar.Label, {
|
|
2585
|
+
classNames: (0, import_react_ui_theme24.mx)("text-lg truncate", !addedIdentity?.profile?.displayName && "font-mono")
|
|
2586
|
+
}, 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, {
|
|
2860
2587
|
variant: "primary",
|
|
2861
2588
|
disabled: disabled || !addedIdentity,
|
|
2862
2589
|
onClick: () => addedIdentity && send({
|
|
@@ -2871,12 +2598,12 @@ var IdentityInput = (props) => {
|
|
|
2871
2598
|
const { send, method } = props;
|
|
2872
2599
|
const isRecover = method === "recover identity";
|
|
2873
2600
|
const client = (0, import_react_client9.useClient)();
|
|
2874
|
-
const { t } = (0,
|
|
2875
|
-
const [validationMessage, setValidationMessage] = (0,
|
|
2601
|
+
const { t } = (0, import_react_ui23.useTranslation)("os");
|
|
2602
|
+
const [validationMessage, setValidationMessage] = (0, import_react47.useState)("");
|
|
2876
2603
|
const handleConfirm = async (value) => {
|
|
2877
2604
|
if (isRecover) {
|
|
2878
2605
|
await client.halo.recoverIdentity({
|
|
2879
|
-
|
|
2606
|
+
recoveryCode: value
|
|
2880
2607
|
}).then((identity) => {
|
|
2881
2608
|
send?.({
|
|
2882
2609
|
type: "selectIdentity",
|
|
@@ -2910,7 +2637,7 @@ var IdentityInput = (props) => {
|
|
|
2910
2637
|
});
|
|
2911
2638
|
}
|
|
2912
2639
|
};
|
|
2913
|
-
return /* @__PURE__ */
|
|
2640
|
+
return /* @__PURE__ */ import_react47.default.createElement(IdentityInputImpl, {
|
|
2914
2641
|
...props,
|
|
2915
2642
|
onConfirm: handleConfirm,
|
|
2916
2643
|
validationMessage
|
|
@@ -2918,12 +2645,12 @@ var IdentityInput = (props) => {
|
|
|
2918
2645
|
};
|
|
2919
2646
|
var IdentityInputImpl = (props) => {
|
|
2920
2647
|
const { method, active, onConfirm, validationMessage } = props;
|
|
2921
|
-
const { t } = (0,
|
|
2922
|
-
const [inputValue, setInputValue] = (0,
|
|
2923
|
-
const [pending, setPending] = (0,
|
|
2648
|
+
const { t } = (0, import_react_ui23.useTranslation)("os");
|
|
2649
|
+
const [inputValue, setInputValue] = (0, import_react47.useState)("");
|
|
2650
|
+
const [pending, setPending] = (0, import_react47.useState)(false);
|
|
2924
2651
|
const disabled = !active || pending;
|
|
2925
2652
|
const isRecover = method === "recover identity";
|
|
2926
|
-
const handleConfirm = (0,
|
|
2653
|
+
const handleConfirm = (0, import_react47.useCallback)(async () => {
|
|
2927
2654
|
setPending(true);
|
|
2928
2655
|
await onConfirm?.(inputValue);
|
|
2929
2656
|
setPending(false);
|
|
@@ -2931,17 +2658,17 @@ var IdentityInputImpl = (props) => {
|
|
|
2931
2658
|
onConfirm,
|
|
2932
2659
|
inputValue
|
|
2933
2660
|
]);
|
|
2934
|
-
return /* @__PURE__ */
|
|
2661
|
+
return /* @__PURE__ */ import_react47.default.createElement(import_react47.default.Fragment, null, /* @__PURE__ */ import_react47.default.createElement("div", {
|
|
2935
2662
|
role: "none",
|
|
2936
2663
|
className: "grow flex flex-col justify-center"
|
|
2937
|
-
}, /* @__PURE__ */
|
|
2664
|
+
}, /* @__PURE__ */ import_react47.default.createElement(Input, {
|
|
2938
2665
|
validationMessage,
|
|
2939
|
-
label: /* @__PURE__ */
|
|
2666
|
+
label: /* @__PURE__ */ import_react47.default.createElement(StepHeading, null, t(isRecover ? "recover identity input label" : "new identity input label")),
|
|
2940
2667
|
disabled,
|
|
2941
2668
|
"data-testid": "identity-input",
|
|
2942
2669
|
placeholder: isRecover ? t("recovery code placeholder") : t("display name placeholder"),
|
|
2943
2670
|
onChange: ({ target: { value } }) => setInputValue(value)
|
|
2944
|
-
})), /* @__PURE__ */
|
|
2671
|
+
})), /* @__PURE__ */ import_react47.default.createElement(Actions, null, /* @__PURE__ */ import_react47.default.createElement(Action, {
|
|
2945
2672
|
variant: "primary",
|
|
2946
2673
|
disabled: disabled || inputValue.trim().length === 0,
|
|
2947
2674
|
onClick: handleConfirm,
|
|
@@ -2967,9 +2694,9 @@ var invitationCodeFromUrl = (text) => {
|
|
|
2967
2694
|
var InvitationInput = (props) => {
|
|
2968
2695
|
const { Kind, active, send, unredeemedCode, onExit, exitActionParent, onDone, doneActionParent, succeededKeys } = props;
|
|
2969
2696
|
const disabled = !active;
|
|
2970
|
-
const { t } = (0,
|
|
2971
|
-
const [inputValue, setInputValue] = (0,
|
|
2972
|
-
(0,
|
|
2697
|
+
const { t } = (0, import_react_ui25.useTranslation)("os");
|
|
2698
|
+
const [inputValue, setInputValue] = (0, import_react49.useState)(unredeemedCode ?? "");
|
|
2699
|
+
(0, import_react49.useEffect)(() => {
|
|
2973
2700
|
unredeemedCode && setInputValue(unredeemedCode ?? "");
|
|
2974
2701
|
}, [
|
|
2975
2702
|
unredeemedCode
|
|
@@ -2986,7 +2713,7 @@ var InvitationInput = (props) => {
|
|
|
2986
2713
|
}
|
|
2987
2714
|
});
|
|
2988
2715
|
};
|
|
2989
|
-
const exitAction = /* @__PURE__ */
|
|
2716
|
+
const exitAction = /* @__PURE__ */ import_react49.default.createElement(Action, {
|
|
2990
2717
|
variant: "ghost",
|
|
2991
2718
|
disabled,
|
|
2992
2719
|
...onExit ? {
|
|
@@ -2996,11 +2723,11 @@ var InvitationInput = (props) => {
|
|
|
2996
2723
|
},
|
|
2997
2724
|
"data-testid": "join-exit"
|
|
2998
2725
|
}, t("cancel label"));
|
|
2999
|
-
return /* @__PURE__ */
|
|
2726
|
+
return /* @__PURE__ */ import_react49.default.createElement(import_react49.default.Fragment, null, /* @__PURE__ */ import_react49.default.createElement("div", {
|
|
3000
2727
|
role: "none",
|
|
3001
2728
|
className: "grow flex flex-col justify-center"
|
|
3002
|
-
}, /* @__PURE__ */
|
|
3003
|
-
label: /* @__PURE__ */
|
|
2729
|
+
}, /* @__PURE__ */ import_react49.default.createElement(Input, {
|
|
2730
|
+
label: /* @__PURE__ */ import_react49.default.createElement(StepHeading, null, t("invitation input label")),
|
|
3004
2731
|
placeholder: t("invitation input placeholder"),
|
|
3005
2732
|
disabled,
|
|
3006
2733
|
value: inputValue,
|
|
@@ -3008,7 +2735,7 @@ var InvitationInput = (props) => {
|
|
|
3008
2735
|
"data-autofocus": `inputting${Kind}InvitationCode`,
|
|
3009
2736
|
"data-testid": `${Kind.toLowerCase()}-invitation-input`,
|
|
3010
2737
|
onKeyUp: ({ key }) => key === "Enter" && handleNext()
|
|
3011
|
-
})), /* @__PURE__ */
|
|
2738
|
+
})), /* @__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, {
|
|
3012
2739
|
variant: "primary",
|
|
3013
2740
|
disabled: disabled || inputValue.trim().length === 0,
|
|
3014
2741
|
onClick: handleNext,
|
|
@@ -3025,14 +2752,14 @@ var InvitationActions = ({
|
|
|
3025
2752
|
Kind,
|
|
3026
2753
|
failReason
|
|
3027
2754
|
}) => {
|
|
3028
|
-
const { t } = (0,
|
|
2755
|
+
const { t } = (0, import_react_ui26.useTranslation)("os");
|
|
3029
2756
|
if (failReason) {
|
|
3030
|
-
return /* @__PURE__ */
|
|
3031
|
-
className:
|
|
3032
|
-
}, t(failReason === "timeout" ? "timeout status label" : failReason === "cancelled" ? "cancelled status label" : "error status label")), /* @__PURE__ */
|
|
2757
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, /* @__PURE__ */ import_react50.default.createElement(StepHeading, {
|
|
2758
|
+
className: import_react_ui_theme25.descriptionText
|
|
2759
|
+
}, t(failReason === "timeout" ? "timeout status label" : failReason === "cancelled" ? "cancelled status label" : "error status label")), /* @__PURE__ */ import_react50.default.createElement("div", {
|
|
3033
2760
|
role: "none",
|
|
3034
2761
|
className: "grow"
|
|
3035
|
-
}), /* @__PURE__ */
|
|
2762
|
+
}), /* @__PURE__ */ import_react50.default.createElement(Actions, null, /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3036
2763
|
disabled: !active,
|
|
3037
2764
|
onClick: () => send({
|
|
3038
2765
|
type: `reset${Kind}Invitation`
|
|
@@ -3040,16 +2767,16 @@ var InvitationActions = ({
|
|
|
3040
2767
|
"data-testid": "invitation-rescuer-reset"
|
|
3041
2768
|
}, t("reset label"))));
|
|
3042
2769
|
} else {
|
|
3043
|
-
return /* @__PURE__ */
|
|
3044
|
-
className:
|
|
3045
|
-
}, t("connecting status label")), /* @__PURE__ */
|
|
2770
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, /* @__PURE__ */ import_react50.default.createElement(StepHeading, {
|
|
2771
|
+
className: import_react_ui_theme25.descriptionText
|
|
2772
|
+
}, t("connecting status label")), /* @__PURE__ */ import_react50.default.createElement("div", {
|
|
3046
2773
|
role: "none",
|
|
3047
2774
|
className: "grow"
|
|
3048
|
-
}), /* @__PURE__ */
|
|
2775
|
+
}), /* @__PURE__ */ import_react50.default.createElement(Actions, null, /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3049
2776
|
disabled: true,
|
|
3050
2777
|
classNames: "order-2",
|
|
3051
2778
|
"data-testid": "next"
|
|
3052
|
-
}, t("next label")), /* @__PURE__ */
|
|
2779
|
+
}, t("next label")), /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3053
2780
|
disabled: !active,
|
|
3054
2781
|
onClick: onInvitationCancel,
|
|
3055
2782
|
"data-testid": "invitation-rescuer-cancel"
|
|
@@ -3058,45 +2785,45 @@ var InvitationActions = ({
|
|
|
3058
2785
|
};
|
|
3059
2786
|
var InvitationRescuer = (props) => {
|
|
3060
2787
|
const { Kind, invitationState, active, send } = props;
|
|
3061
|
-
const { t } = (0,
|
|
3062
|
-
return /* @__PURE__ */
|
|
2788
|
+
const { t } = (0, import_react_ui26.useTranslation)("os");
|
|
2789
|
+
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", {
|
|
3063
2790
|
role: "none",
|
|
3064
2791
|
className: "grow flex flex-col justify-center"
|
|
3065
|
-
}, /* @__PURE__ */
|
|
3066
|
-
className:
|
|
3067
|
-
}, "There was a problem joining the space")), /* @__PURE__ */
|
|
2792
|
+
}, /* @__PURE__ */ import_react50.default.createElement(StepHeading, {
|
|
2793
|
+
className: import_react_ui_theme25.descriptionText
|
|
2794
|
+
}, "There was a problem joining the space")), /* @__PURE__ */ import_react50.default.createElement(Actions, null, /* @__PURE__ */ import_react50.default.createElement(Action, {
|
|
3068
2795
|
disabled: !active,
|
|
3069
2796
|
"data-testid": "invitation-rescuer-blank-reset",
|
|
3070
2797
|
onClick: () => send({
|
|
3071
2798
|
type: `reset${Kind}Invitation`
|
|
3072
2799
|
})
|
|
3073
|
-
}, t("reset label")))) : /* @__PURE__ */
|
|
2800
|
+
}, t("reset label")))) : /* @__PURE__ */ import_react50.default.createElement(InvitationActions, props));
|
|
3074
2801
|
};
|
|
3075
2802
|
var pinLength = 6;
|
|
3076
2803
|
var InvitationAuthenticator = ({ failed, Kind, authMethod, active, pending, invitationId, onInvitationAuthenticate, onInvitationCancel }) => {
|
|
3077
2804
|
const disabled = !active || pending;
|
|
3078
|
-
const { t } = (0,
|
|
2805
|
+
const { t } = (0, import_react_ui27.useTranslation)("os");
|
|
3079
2806
|
const invitationType = Kind.toLowerCase();
|
|
3080
|
-
const [authCode, setAuthCode] = (0,
|
|
2807
|
+
const [authCode, setAuthCode] = (0, import_react51.useState)("");
|
|
3081
2808
|
const onChange = ({ target: { value } }) => {
|
|
3082
2809
|
setAuthCode(value);
|
|
3083
2810
|
if (value.length === pinLength) {
|
|
3084
2811
|
document.querySelector(`[data-autofocus-pinlength="${invitationType}"]`)?.focus();
|
|
3085
2812
|
}
|
|
3086
2813
|
};
|
|
3087
|
-
return /* @__PURE__ */
|
|
2814
|
+
return /* @__PURE__ */ import_react51.default.createElement(import_react51.default.Fragment, null, /* @__PURE__ */ import_react51.default.createElement("div", {
|
|
3088
2815
|
role: "none",
|
|
3089
2816
|
className: "grow flex flex-col justify-center gap-4"
|
|
3090
|
-
}, /* @__PURE__ */
|
|
2817
|
+
}, /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.Root, failed && {
|
|
3091
2818
|
validationValence: "error"
|
|
3092
|
-
}, /* @__PURE__ */
|
|
2819
|
+
}, /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.Label, {
|
|
3093
2820
|
asChild: true
|
|
3094
|
-
}, authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET ? /* @__PURE__ */
|
|
3095
|
-
className:
|
|
3096
|
-
}, t("authenticating label")), /* @__PURE__ */
|
|
2821
|
+
}, 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, {
|
|
2822
|
+
className: import_react_ui_theme26.descriptionText
|
|
2823
|
+
}, t("authenticating label")), /* @__PURE__ */ import_react51.default.createElement("div", {
|
|
3097
2824
|
role: "none",
|
|
3098
2825
|
className: "grow"
|
|
3099
|
-
}))), authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET && /* @__PURE__ */
|
|
2826
|
+
}))), authMethod === import_invitations7.Invitation.AuthMethod.SHARED_SECRET && /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.PinInput, {
|
|
3100
2827
|
disabled,
|
|
3101
2828
|
length: pinLength,
|
|
3102
2829
|
onChange,
|
|
@@ -3107,18 +2834,18 @@ var InvitationAuthenticator = ({ failed, Kind, authMethod, active, pending, invi
|
|
|
3107
2834
|
"data-prevent-ios-autofocus": true,
|
|
3108
2835
|
"data-testid": `${invitationType}-auth-code-input`,
|
|
3109
2836
|
"data-1p-ignore": true
|
|
3110
|
-
}), failed && /* @__PURE__ */
|
|
2837
|
+
}), failed && /* @__PURE__ */ import_react51.default.createElement(import_react_ui27.Input.DescriptionAndValidation, {
|
|
3111
2838
|
classNames: "text-center"
|
|
3112
|
-
}, /* @__PURE__ */
|
|
2839
|
+
}, /* @__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", {
|
|
3113
2840
|
className: "flex justify-center"
|
|
3114
|
-
}, /* @__PURE__ */
|
|
2841
|
+
}, /* @__PURE__ */ import_react51.default.createElement(Emoji, {
|
|
3115
2842
|
text: (0, import_util9.hexToEmoji)(invitationId)
|
|
3116
|
-
})))), /* @__PURE__ */
|
|
2843
|
+
})))), /* @__PURE__ */ import_react51.default.createElement(Actions, null, /* @__PURE__ */ import_react51.default.createElement(Action, {
|
|
3117
2844
|
variant: "ghost",
|
|
3118
2845
|
disabled,
|
|
3119
2846
|
onClick: () => onInvitationCancel?.(),
|
|
3120
2847
|
"data-testid": `${invitationType}-invitation-authenticator-cancel`
|
|
3121
|
-
}, t("cancel label")), /* @__PURE__ */
|
|
2848
|
+
}, t("cancel label")), /* @__PURE__ */ import_react51.default.createElement(Action, {
|
|
3122
2849
|
variant: "primary",
|
|
3123
2850
|
disabled,
|
|
3124
2851
|
onClick: () => onInvitationAuthenticate?.(authCode),
|
|
@@ -3173,46 +2900,46 @@ var JoinPanelImpl = (props) => {
|
|
|
3173
2900
|
IdentityInput: IdentityInputComponent = IdentityInput,
|
|
3174
2901
|
ConfirmReset: ConfirmResetComponent = ConfirmReset
|
|
3175
2902
|
} = props;
|
|
3176
|
-
return /* @__PURE__ */
|
|
2903
|
+
return /* @__PURE__ */ import_react39.default.createElement(import_react39.default.Fragment, null, mode !== "halo-only" && /* @__PURE__ */ import_react39.default.createElement(JoinHeading, {
|
|
3177
2904
|
titleId,
|
|
3178
2905
|
mode,
|
|
3179
2906
|
onExit,
|
|
3180
2907
|
exitActionParent
|
|
3181
|
-
}), /* @__PURE__ */
|
|
2908
|
+
}), /* @__PURE__ */ import_react39.default.createElement(Viewport.Root, {
|
|
3182
2909
|
focusManaged: true,
|
|
3183
2910
|
activeView
|
|
3184
|
-
}, /* @__PURE__ */
|
|
2911
|
+
}, /* @__PURE__ */ import_react39.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3185
2912
|
classNames: stepStyles,
|
|
3186
2913
|
id: "addition method chooser"
|
|
3187
|
-
}, /* @__PURE__ */
|
|
2914
|
+
}, /* @__PURE__ */ import_react39.default.createElement(AdditionMethodChooser, {
|
|
3188
2915
|
send,
|
|
3189
2916
|
active: activeView === "addition method chooser"
|
|
3190
|
-
})), /* @__PURE__ */
|
|
2917
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3191
2918
|
classNames: stepStyles,
|
|
3192
2919
|
id: "reset storage confirmation"
|
|
3193
|
-
}, /* @__PURE__ */
|
|
2920
|
+
}, /* @__PURE__ */ import_react39.default.createElement(ConfirmResetComponent, {
|
|
3194
2921
|
send,
|
|
3195
2922
|
active: activeView === "reset storage confirmation",
|
|
3196
2923
|
onCancel: onCancelResetStorage,
|
|
3197
2924
|
onConfirm: onConfirmResetStorage
|
|
3198
|
-
})), /* @__PURE__ */
|
|
2925
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3199
2926
|
classNames: stepStyles,
|
|
3200
2927
|
id: "create identity input"
|
|
3201
|
-
}, /* @__PURE__ */
|
|
2928
|
+
}, /* @__PURE__ */ import_react39.default.createElement(IdentityInputComponent, {
|
|
3202
2929
|
send,
|
|
3203
2930
|
method: "create identity",
|
|
3204
2931
|
active: activeView === "create identity input"
|
|
3205
|
-
})), /* @__PURE__ */
|
|
2932
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3206
2933
|
classNames: stepStyles,
|
|
3207
2934
|
id: "recover identity input"
|
|
3208
|
-
}, /* @__PURE__ */
|
|
2935
|
+
}, /* @__PURE__ */ import_react39.default.createElement(IdentityInputComponent, {
|
|
3209
2936
|
send,
|
|
3210
2937
|
method: "recover identity",
|
|
3211
2938
|
active: activeView === "recover identity input"
|
|
3212
|
-
})), /* @__PURE__ */
|
|
2939
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3213
2940
|
classNames: stepStyles,
|
|
3214
2941
|
id: "halo invitation input"
|
|
3215
|
-
}, /* @__PURE__ */
|
|
2942
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationInput, {
|
|
3216
2943
|
send,
|
|
3217
2944
|
Kind: "Halo",
|
|
3218
2945
|
active: activeView === "halo invitation input",
|
|
@@ -3222,20 +2949,20 @@ var JoinPanelImpl = (props) => {
|
|
|
3222
2949
|
...succeededKeys?.Halo && {
|
|
3223
2950
|
succeededKeys: succeededKeys.Halo
|
|
3224
2951
|
}
|
|
3225
|
-
})), /* @__PURE__ */
|
|
2952
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3226
2953
|
classNames: stepStyles,
|
|
3227
2954
|
id: "halo invitation rescuer"
|
|
3228
|
-
}, /* @__PURE__ */
|
|
2955
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationRescuer, {
|
|
3229
2956
|
send,
|
|
3230
2957
|
Kind: "Halo",
|
|
3231
2958
|
active: activeView === "halo invitation rescuer",
|
|
3232
2959
|
invitationState: invitationStates?.Halo,
|
|
3233
2960
|
onInvitationCancel: onHaloInvitationCancel,
|
|
3234
2961
|
failReason: failReasons?.Halo
|
|
3235
|
-
})), /* @__PURE__ */
|
|
2962
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3236
2963
|
classNames: stepStyles,
|
|
3237
2964
|
id: "halo invitation authenticator"
|
|
3238
|
-
}, /* @__PURE__ */
|
|
2965
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationAuthenticator, {
|
|
3239
2966
|
send,
|
|
3240
2967
|
Kind: "Halo",
|
|
3241
2968
|
invitationId: invitationIds?.Halo,
|
|
@@ -3246,19 +2973,19 @@ var JoinPanelImpl = (props) => {
|
|
|
3246
2973
|
...failed.has("Halo") && {
|
|
3247
2974
|
failed: true
|
|
3248
2975
|
}
|
|
3249
|
-
})), /* @__PURE__ */
|
|
2976
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3250
2977
|
classNames: stepStyles,
|
|
3251
2978
|
id: "identity added"
|
|
3252
|
-
}, /* @__PURE__ */
|
|
2979
|
+
}, /* @__PURE__ */ import_react39.default.createElement(IdentityAdded, {
|
|
3253
2980
|
send,
|
|
3254
2981
|
mode,
|
|
3255
2982
|
active: activeView === "identity added",
|
|
3256
2983
|
doneActionParent,
|
|
3257
2984
|
onDone: onHaloDone
|
|
3258
|
-
})), /* @__PURE__ */
|
|
2985
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3259
2986
|
classNames: stepStyles,
|
|
3260
2987
|
id: "space invitation input"
|
|
3261
|
-
}, /* @__PURE__ */
|
|
2988
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationInput, {
|
|
3262
2989
|
send,
|
|
3263
2990
|
Kind: "Space",
|
|
3264
2991
|
active: activeView === "space invitation input",
|
|
@@ -3270,20 +2997,20 @@ var JoinPanelImpl = (props) => {
|
|
|
3270
2997
|
},
|
|
3271
2998
|
onExit,
|
|
3272
2999
|
exitActionParent
|
|
3273
|
-
})), /* @__PURE__ */
|
|
3000
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3274
3001
|
classNames: stepStyles,
|
|
3275
3002
|
id: "space invitation rescuer"
|
|
3276
|
-
}, /* @__PURE__ */
|
|
3003
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationRescuer, {
|
|
3277
3004
|
send,
|
|
3278
3005
|
Kind: "Space",
|
|
3279
3006
|
active: activeView === "space invitation rescuer",
|
|
3280
3007
|
invitationState: invitationStates?.Space,
|
|
3281
3008
|
onInvitationCancel: onSpaceInvitationCancel,
|
|
3282
3009
|
failReason: failReasons?.Space
|
|
3283
|
-
})), /* @__PURE__ */
|
|
3010
|
+
})), /* @__PURE__ */ import_react39.default.createElement(Viewport.View, {
|
|
3284
3011
|
classNames: stepStyles,
|
|
3285
3012
|
id: "space invitation authenticator"
|
|
3286
|
-
}, /* @__PURE__ */
|
|
3013
|
+
}, /* @__PURE__ */ import_react39.default.createElement(InvitationAuthenticator, {
|
|
3287
3014
|
send,
|
|
3288
3015
|
Kind: "Space",
|
|
3289
3016
|
invitationId: invitationIds?.Space,
|
|
@@ -3299,8 +3026,8 @@ var JoinPanelImpl = (props) => {
|
|
|
3299
3026
|
var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition = "default", initialInvitationCode, exitActionParent, onExit, doneActionParent, onDone: propsOnDone, onCancelResetStorage }) => {
|
|
3300
3027
|
const client = (0, import_react_client7.useClient)();
|
|
3301
3028
|
const identity = (0, import_halo4.useIdentity)();
|
|
3302
|
-
const { hasIosKeyboard } = (0,
|
|
3303
|
-
const titleId = (0,
|
|
3029
|
+
const { hasIosKeyboard } = (0, import_react_ui19.useThemeContext)();
|
|
3030
|
+
const titleId = (0, import_react_ui19.useId)("joinPanel__heading", propsTitleId);
|
|
3304
3031
|
const [joinState, joinSend, joinService] = useJoinMachine(client, {
|
|
3305
3032
|
context: {
|
|
3306
3033
|
mode,
|
|
@@ -3313,7 +3040,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3313
3040
|
}
|
|
3314
3041
|
}
|
|
3315
3042
|
});
|
|
3316
|
-
(0,
|
|
3043
|
+
(0, import_react39.useEffect)(() => {
|
|
3317
3044
|
const subscription = joinService.subscribe((state) => {
|
|
3318
3045
|
(0, import_log8.log)("[state]", state, {
|
|
3319
3046
|
F: __dxlog_file10,
|
|
@@ -3326,7 +3053,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3326
3053
|
}, [
|
|
3327
3054
|
joinService
|
|
3328
3055
|
]);
|
|
3329
|
-
(0,
|
|
3056
|
+
(0, import_react39.useEffect)(() => {
|
|
3330
3057
|
const stateStack = joinState.configuration[0].id.split(".");
|
|
3331
3058
|
const innermostState = stateStack[stateStack.length - 1];
|
|
3332
3059
|
const autoFocusValue = innermostState === "finishingJoining" ? "successSpaceInvitation" : innermostState;
|
|
@@ -3338,7 +3065,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3338
3065
|
joinState.value,
|
|
3339
3066
|
hasIosKeyboard
|
|
3340
3067
|
]);
|
|
3341
|
-
const activeView = (0,
|
|
3068
|
+
const activeView = (0, import_react39.useMemo)(() => {
|
|
3342
3069
|
switch (true) {
|
|
3343
3070
|
case joinState.matches({
|
|
3344
3071
|
choosingIdentity: "choosingAuthMethod"
|
|
@@ -3459,7 +3186,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3459
3186
|
}, [
|
|
3460
3187
|
joinState
|
|
3461
3188
|
]);
|
|
3462
|
-
(0,
|
|
3189
|
+
(0, import_react39.useEffect)(() => {
|
|
3463
3190
|
switch (activeView) {
|
|
3464
3191
|
case "halo invitation accepted":
|
|
3465
3192
|
onHaloDone();
|
|
@@ -3471,7 +3198,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3471
3198
|
}, [
|
|
3472
3199
|
activeView
|
|
3473
3200
|
]);
|
|
3474
|
-
const failed = (0,
|
|
3201
|
+
const failed = (0, import_react39.useMemo)(() => {
|
|
3475
3202
|
const result = /* @__PURE__ */ new Set();
|
|
3476
3203
|
switch (true) {
|
|
3477
3204
|
case joinState.matches({
|
|
@@ -3495,43 +3222,43 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3495
3222
|
}, [
|
|
3496
3223
|
joinState
|
|
3497
3224
|
]);
|
|
3498
|
-
const unredeemedCodes = (0,
|
|
3225
|
+
const unredeemedCodes = (0, import_react39.useMemo)(() => ({
|
|
3499
3226
|
Halo: joinState.context.halo.unredeemedCode,
|
|
3500
3227
|
Space: joinState.context.space.unredeemedCode
|
|
3501
3228
|
}), [
|
|
3502
3229
|
joinState
|
|
3503
3230
|
]);
|
|
3504
3231
|
const spaces = (0, import_react_client7.useMulticastObservable)(client.spaces);
|
|
3505
|
-
const succeededKeys = (0,
|
|
3232
|
+
const succeededKeys = (0, import_react39.useMemo)(() => ({
|
|
3506
3233
|
Space: spaces ? new Set(spaces.map(({ key }) => key.toHex())) : void 0
|
|
3507
3234
|
}), [
|
|
3508
3235
|
spaces
|
|
3509
3236
|
]);
|
|
3510
|
-
const invitationStates = (0,
|
|
3237
|
+
const invitationStates = (0, import_react39.useMemo)(() => ({
|
|
3511
3238
|
Halo: joinState.context.halo.invitationObservable?.get().state,
|
|
3512
3239
|
Space: joinState.context.space.invitationObservable?.get().state
|
|
3513
3240
|
}), [
|
|
3514
3241
|
joinState
|
|
3515
3242
|
]);
|
|
3516
|
-
const invitationAuthMethods = (0,
|
|
3243
|
+
const invitationAuthMethods = (0, import_react39.useMemo)(() => ({
|
|
3517
3244
|
Halo: joinState.context.halo.invitationObservable?.get().authMethod,
|
|
3518
3245
|
Space: joinState.context.space.invitationObservable?.get().authMethod
|
|
3519
3246
|
}), [
|
|
3520
3247
|
joinState
|
|
3521
3248
|
]);
|
|
3522
|
-
const invitationIds = (0,
|
|
3249
|
+
const invitationIds = (0, import_react39.useMemo)(() => ({
|
|
3523
3250
|
Halo: joinState.context.halo.invitationObservable?.get().invitationId,
|
|
3524
3251
|
Space: joinState.context.space.invitationObservable?.get().invitationId
|
|
3525
3252
|
}), [
|
|
3526
3253
|
joinState
|
|
3527
3254
|
]);
|
|
3528
|
-
const failReasons = (0,
|
|
3255
|
+
const failReasons = (0, import_react39.useMemo)(() => ({
|
|
3529
3256
|
Halo: joinState.context.halo.failReason,
|
|
3530
3257
|
Space: joinState.context.space.failReason
|
|
3531
3258
|
}), [
|
|
3532
3259
|
joinState
|
|
3533
3260
|
]);
|
|
3534
|
-
const onHaloDone = (0,
|
|
3261
|
+
const onHaloDone = (0, import_react39.useCallback)(() => {
|
|
3535
3262
|
propsOnDone?.({
|
|
3536
3263
|
identityKey: joinState.context.identity?.identityKey ?? joinState.context.halo.invitation?.identityKey ?? null,
|
|
3537
3264
|
swarmKey: joinState.context.halo.invitation?.swarmKey ?? null,
|
|
@@ -3542,7 +3269,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3542
3269
|
joinState,
|
|
3543
3270
|
propsOnDone
|
|
3544
3271
|
]);
|
|
3545
|
-
const onSpaceDone = (0,
|
|
3272
|
+
const onSpaceDone = (0, import_react39.useCallback)(() => {
|
|
3546
3273
|
propsOnDone?.({
|
|
3547
3274
|
identityKey: joinState.context.space.invitation?.identityKey ?? null,
|
|
3548
3275
|
swarmKey: joinState.context.space.invitation?.swarmKey ?? null,
|
|
@@ -3553,7 +3280,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3553
3280
|
joinState,
|
|
3554
3281
|
propsOnDone
|
|
3555
3282
|
]);
|
|
3556
|
-
const onConfirmResetStorage = (0,
|
|
3283
|
+
const onConfirmResetStorage = (0, import_react39.useCallback)(() => client.reset().then(() => {
|
|
3557
3284
|
joinSend({
|
|
3558
3285
|
type: "resetIdentity"
|
|
3559
3286
|
});
|
|
@@ -3561,7 +3288,7 @@ var JoinPanel = ({ titleId: propsTitleId, mode = "default", initialDisposition =
|
|
|
3561
3288
|
client,
|
|
3562
3289
|
joinSend
|
|
3563
3290
|
]);
|
|
3564
|
-
return /* @__PURE__ */
|
|
3291
|
+
return /* @__PURE__ */ import_react39.default.createElement(JoinPanelImpl, {
|
|
3565
3292
|
titleId,
|
|
3566
3293
|
mode,
|
|
3567
3294
|
send: joinSend,
|
|
@@ -3651,7 +3378,7 @@ var spaceMachine = (0, import_xstate3.createMachine)({
|
|
|
3651
3378
|
}
|
|
3652
3379
|
});
|
|
3653
3380
|
var useSpaceMachine = (options) => {
|
|
3654
|
-
return (0,
|
|
3381
|
+
return (0, import_react54.useMachine)(spaceMachine, {
|
|
3655
3382
|
...options,
|
|
3656
3383
|
context: {
|
|
3657
3384
|
...options?.context
|
|
@@ -3677,16 +3404,16 @@ var handleInvitationEvent = (invitation, subscription) => {
|
|
|
3677
3404
|
};
|
|
3678
3405
|
var SpaceManager = (props) => {
|
|
3679
3406
|
const { space, target } = props;
|
|
3680
|
-
const { t } = (0,
|
|
3407
|
+
const { t } = (0, import_react_ui29.useTranslation)("os");
|
|
3681
3408
|
const config = (0, import_react_client10.useConfig)();
|
|
3682
3409
|
const invitations = (0, import_echo4.useSpaceInvitations)(space?.key);
|
|
3683
3410
|
const inviteActions = {
|
|
3684
3411
|
inviteOne: {
|
|
3685
3412
|
label: t("invite one label"),
|
|
3686
3413
|
description: t("invite one description"),
|
|
3687
|
-
icon:
|
|
3414
|
+
icon: import_react55.UserPlus,
|
|
3688
3415
|
testId: "spaces-panel.invite-one",
|
|
3689
|
-
onClick: (0,
|
|
3416
|
+
onClick: (0, import_react56.useCallback)(() => {
|
|
3690
3417
|
const invitation = space.share?.({
|
|
3691
3418
|
type: import_invitations10.Invitation.Type.INTERACTIVE,
|
|
3692
3419
|
authMethod: import_invitations10.Invitation.AuthMethod.SHARED_SECRET,
|
|
@@ -3704,9 +3431,9 @@ var SpaceManager = (props) => {
|
|
|
3704
3431
|
inviteMany: {
|
|
3705
3432
|
label: t("invite many label"),
|
|
3706
3433
|
description: t("invite many description"),
|
|
3707
|
-
icon:
|
|
3434
|
+
icon: import_react55.UsersThree,
|
|
3708
3435
|
testId: "spaces-panel.invite-many",
|
|
3709
|
-
onClick: (0,
|
|
3436
|
+
onClick: (0, import_react56.useCallback)(() => {
|
|
3710
3437
|
const invitation = space.share?.({
|
|
3711
3438
|
type: import_invitations10.Invitation.Type.DELEGATED,
|
|
3712
3439
|
authMethod: import_invitations10.Invitation.AuthMethod.KNOWN_PUBLIC_KEY,
|
|
@@ -3722,7 +3449,7 @@ var SpaceManager = (props) => {
|
|
|
3722
3449
|
])
|
|
3723
3450
|
}
|
|
3724
3451
|
};
|
|
3725
|
-
return /* @__PURE__ */
|
|
3452
|
+
return /* @__PURE__ */ import_react56.default.createElement(SpaceManagerImpl, {
|
|
3726
3453
|
...props,
|
|
3727
3454
|
invitations,
|
|
3728
3455
|
inviteActions
|
|
@@ -3731,17 +3458,17 @@ var SpaceManager = (props) => {
|
|
|
3731
3458
|
var headingFragment = "pis-3 pie-1 plb-1 mbe-1 font-medium";
|
|
3732
3459
|
var SpaceManagerImpl = (props) => {
|
|
3733
3460
|
const { active, space, createInvitationUrl, send, inviteActions: propsInviteActions, invitations, showInactiveInvitations, SpaceMemberList: SpaceMemberListComponent = SpaceMemberList, InvitationList: InvitationListComponent = InvitationList } = props;
|
|
3734
|
-
const { t } = (0,
|
|
3461
|
+
const { t } = (0, import_react_ui29.useTranslation)("os");
|
|
3735
3462
|
const inviteActions = propsInviteActions ?? {
|
|
3736
3463
|
noopInvite: {
|
|
3737
3464
|
label: t("create space invitation label"),
|
|
3738
3465
|
description: "",
|
|
3739
|
-
icon:
|
|
3466
|
+
icon: import_react55.Placeholder,
|
|
3740
3467
|
onClick: () => {
|
|
3741
3468
|
}
|
|
3742
3469
|
}
|
|
3743
3470
|
};
|
|
3744
|
-
const [activeAction, setInternalActiveAction] = (0,
|
|
3471
|
+
const [activeAction, setInternalActiveAction] = (0, import_react56.useState)(localStorage.getItem(activeActionKey) ?? "inviteMany");
|
|
3745
3472
|
const setActiveAction = (nextAction) => {
|
|
3746
3473
|
setInternalActiveAction(nextAction);
|
|
3747
3474
|
localStorage.setItem(activeActionKey, nextAction);
|
|
@@ -3749,26 +3476,26 @@ var SpaceManagerImpl = (props) => {
|
|
|
3749
3476
|
const visibleInvitations = showInactiveInvitations ? invitations : invitations?.filter((invitation) => ![
|
|
3750
3477
|
import_invitations10.Invitation.State.CANCELLED
|
|
3751
3478
|
].includes(invitation.get().state));
|
|
3752
|
-
return /* @__PURE__ */
|
|
3479
|
+
return /* @__PURE__ */ import_react56.default.createElement(import_react56.default.Fragment, null, /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Root, {
|
|
3753
3480
|
classNames: "grow shrink basis-28 -mli-2"
|
|
3754
|
-
}, /* @__PURE__ */
|
|
3481
|
+
}, /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Viewport, {
|
|
3755
3482
|
classNames: "is-full pie-2"
|
|
3756
|
-
}, !!visibleInvitations?.length && /* @__PURE__ */
|
|
3757
|
-
className: (0,
|
|
3758
|
-
}, t("invitation list heading")), /* @__PURE__ */
|
|
3483
|
+
}, !!visibleInvitations?.length && /* @__PURE__ */ import_react56.default.createElement(import_react56.default.Fragment, null, /* @__PURE__ */ import_react56.default.createElement("h3", {
|
|
3484
|
+
className: (0, import_react_ui_theme27.mx)(headingFragment, import_react_ui_theme27.descriptionText)
|
|
3485
|
+
}, t("invitation list heading")), /* @__PURE__ */ import_react56.default.createElement(InvitationListComponent, {
|
|
3759
3486
|
className: "mb-2",
|
|
3760
3487
|
send,
|
|
3761
3488
|
invitations: visibleInvitations ?? [],
|
|
3762
3489
|
onClickRemove: (invitation) => invitation.cancel(),
|
|
3763
3490
|
createInvitationUrl
|
|
3764
|
-
}), /* @__PURE__ */
|
|
3765
|
-
className: (0,
|
|
3766
|
-
}, t("space member list heading"))), /* @__PURE__ */
|
|
3491
|
+
}), /* @__PURE__ */ import_react56.default.createElement("h3", {
|
|
3492
|
+
className: (0, import_react_ui_theme27.mx)(headingFragment, import_react_ui_theme27.descriptionText, "mbs-2")
|
|
3493
|
+
}, t("space member list heading"))), /* @__PURE__ */ import_react56.default.createElement(SpaceMemberListComponent, {
|
|
3767
3494
|
spaceKey: space.key,
|
|
3768
3495
|
includeSelf: true
|
|
3769
|
-
})), /* @__PURE__ */
|
|
3496
|
+
})), /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Scrollbar, {
|
|
3770
3497
|
orientation: "vertical"
|
|
3771
|
-
}, /* @__PURE__ */
|
|
3498
|
+
}, /* @__PURE__ */ import_react56.default.createElement(import_react_ui29.ScrollArea.Thumb, null))), /* @__PURE__ */ import_react56.default.createElement(Actions, null, /* @__PURE__ */ import_react56.default.createElement(BifurcatedAction, {
|
|
3772
3499
|
disabled: !active,
|
|
3773
3500
|
actions: inviteActions,
|
|
3774
3501
|
activeAction,
|
|
@@ -3778,45 +3505,45 @@ var SpaceManagerImpl = (props) => {
|
|
|
3778
3505
|
};
|
|
3779
3506
|
var __dxlog_file13 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/SpacePanel/SpacePanel.tsx";
|
|
3780
3507
|
var SpacePanelHeading = ({ titleId, space, onDone }) => {
|
|
3781
|
-
const { t } = (0,
|
|
3508
|
+
const { t } = (0, import_react_ui28.useTranslation)("os");
|
|
3782
3509
|
const name = space.properties.name;
|
|
3783
|
-
return /* @__PURE__ */
|
|
3510
|
+
return /* @__PURE__ */ import_react53.default.createElement(Heading, {
|
|
3784
3511
|
titleId,
|
|
3785
3512
|
title: t("space panel heading"),
|
|
3786
|
-
corner: /* @__PURE__ */
|
|
3513
|
+
corner: /* @__PURE__ */ import_react53.default.createElement(CloseButton, {
|
|
3787
3514
|
"data-testid": "identity-panel-done",
|
|
3788
3515
|
onDone
|
|
3789
3516
|
})
|
|
3790
|
-
}, /* @__PURE__ */
|
|
3517
|
+
}, /* @__PURE__ */ import_react53.default.createElement("div", {
|
|
3791
3518
|
role: "none",
|
|
3792
3519
|
className: "flex gap-4 items-center justify-center mlb-4"
|
|
3793
|
-
}, /* @__PURE__ */
|
|
3520
|
+
}, /* @__PURE__ */ import_react53.default.createElement(import_react52.Planet, {
|
|
3794
3521
|
size: 32,
|
|
3795
3522
|
weight: "light"
|
|
3796
|
-
}), /* @__PURE__ */
|
|
3523
|
+
}), /* @__PURE__ */ import_react53.default.createElement("div", {
|
|
3797
3524
|
className: "block text-start font-light text-xl"
|
|
3798
3525
|
}, name ?? space.key.truncate())));
|
|
3799
3526
|
};
|
|
3800
3527
|
var SpacePanelImpl = (props) => {
|
|
3801
3528
|
const { titleId, activeView, space, hideHeading, target, SpaceManager: SpaceManagerComponent = SpaceManager, InvitationManager: InvitationManagerComponent = InvitationManager, ...rest } = props;
|
|
3802
|
-
return /* @__PURE__ */
|
|
3529
|
+
return /* @__PURE__ */ import_react53.default.createElement(import_react53.default.Fragment, null, !hideHeading && /* @__PURE__ */ import_react53.default.createElement(SpacePanelHeading, {
|
|
3803
3530
|
...rest,
|
|
3804
3531
|
titleId,
|
|
3805
3532
|
space
|
|
3806
|
-
}), /* @__PURE__ */
|
|
3533
|
+
}), /* @__PURE__ */ import_react53.default.createElement(Viewport.Root, {
|
|
3807
3534
|
activeView
|
|
3808
|
-
}, /* @__PURE__ */
|
|
3535
|
+
}, /* @__PURE__ */ import_react53.default.createElement(Viewport.Views, null, /* @__PURE__ */ import_react53.default.createElement(Viewport.View, {
|
|
3809
3536
|
id: "space manager",
|
|
3810
3537
|
classNames: stepStyles
|
|
3811
|
-
}, /* @__PURE__ */
|
|
3538
|
+
}, /* @__PURE__ */ import_react53.default.createElement(SpaceManagerComponent, {
|
|
3812
3539
|
active: activeView === "space manager",
|
|
3813
3540
|
space,
|
|
3814
3541
|
target,
|
|
3815
3542
|
...rest
|
|
3816
|
-
})), /* @__PURE__ */
|
|
3543
|
+
})), /* @__PURE__ */ import_react53.default.createElement(Viewport.View, {
|
|
3817
3544
|
id: "space invitation manager",
|
|
3818
3545
|
classNames: stepStyles
|
|
3819
|
-
}, /* @__PURE__ */
|
|
3546
|
+
}, /* @__PURE__ */ import_react53.default.createElement(InvitationManagerComponent, {
|
|
3820
3547
|
active: activeView === "space invitation manager",
|
|
3821
3548
|
...rest,
|
|
3822
3549
|
invitationUrl: props.invitationUrl
|
|
@@ -3824,20 +3551,20 @@ var SpacePanelImpl = (props) => {
|
|
|
3824
3551
|
};
|
|
3825
3552
|
var SpacePanelWithInvitationImpl = ({ invitation, ...props }) => {
|
|
3826
3553
|
const invitationStatus = (0, import_invitations9.useInvitationStatus)(invitation);
|
|
3827
|
-
return /* @__PURE__ */
|
|
3554
|
+
return /* @__PURE__ */ import_react53.default.createElement(SpacePanelImpl, {
|
|
3828
3555
|
...props,
|
|
3829
3556
|
...invitationStatus,
|
|
3830
3557
|
invitationUrl: props.createInvitationUrl(invitationStatus.invitationCode)
|
|
3831
3558
|
});
|
|
3832
3559
|
};
|
|
3833
3560
|
var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code, ...props }) => {
|
|
3834
|
-
const titleId = (0,
|
|
3561
|
+
const titleId = (0, import_react_ui28.useId)("spacePanel__heading", propsTitleId);
|
|
3835
3562
|
const [spaceState, spaceSend, spaceService] = useSpaceMachine({
|
|
3836
3563
|
context: {
|
|
3837
3564
|
space: props.space
|
|
3838
3565
|
}
|
|
3839
3566
|
});
|
|
3840
|
-
(0,
|
|
3567
|
+
(0, import_react53.useEffect)(() => {
|
|
3841
3568
|
const subscription = spaceService.subscribe((state) => {
|
|
3842
3569
|
(0, import_log12.log)("[state]", state, {
|
|
3843
3570
|
F: __dxlog_file13,
|
|
@@ -3850,7 +3577,7 @@ var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code,
|
|
|
3850
3577
|
}, [
|
|
3851
3578
|
spaceService
|
|
3852
3579
|
]);
|
|
3853
|
-
const activeView = (0,
|
|
3580
|
+
const activeView = (0, import_react53.useMemo)(() => {
|
|
3854
3581
|
switch (true) {
|
|
3855
3582
|
case spaceState.matches("managingSpace"):
|
|
3856
3583
|
return "space manager";
|
|
@@ -3871,101 +3598,101 @@ var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code,
|
|
|
3871
3598
|
};
|
|
3872
3599
|
return spaceState.context.invitation ? (
|
|
3873
3600
|
// TODO(wittjosiah): Unused? Remove?
|
|
3874
|
-
/* @__PURE__ */
|
|
3601
|
+
/* @__PURE__ */ import_react53.default.createElement(SpacePanelWithInvitationImpl, {
|
|
3875
3602
|
...implProps,
|
|
3876
3603
|
invitation: spaceState.context.invitation
|
|
3877
3604
|
})
|
|
3878
|
-
) : /* @__PURE__ */
|
|
3605
|
+
) : /* @__PURE__ */ import_react53.default.createElement(SpacePanelImpl, implProps);
|
|
3879
3606
|
};
|
|
3880
3607
|
var StatusPanel = ({ titleId }) => {
|
|
3881
|
-
const { t } = (0,
|
|
3882
|
-
return /* @__PURE__ */
|
|
3608
|
+
const { t } = (0, import_react_ui30.useTranslation)("os");
|
|
3609
|
+
return /* @__PURE__ */ import_react57.default.createElement("div", {
|
|
3883
3610
|
className: "grid place-items-center p-2 gap-2"
|
|
3884
|
-
}, /* @__PURE__ */
|
|
3611
|
+
}, /* @__PURE__ */ import_react57.default.createElement("p", {
|
|
3885
3612
|
id: titleId,
|
|
3886
3613
|
className: "font-medium text-center"
|
|
3887
|
-
}, t("resetting message")), /* @__PURE__ */
|
|
3614
|
+
}, t("resetting message")), /* @__PURE__ */ import_react57.default.createElement(import_react_ui30.Status, {
|
|
3888
3615
|
indeterminate: true
|
|
3889
3616
|
}, t("resetting message")));
|
|
3890
3617
|
};
|
|
3891
3618
|
var IdentityDialog = (props) => {
|
|
3892
|
-
const titleId = (0,
|
|
3893
|
-
return /* @__PURE__ */
|
|
3619
|
+
const titleId = (0, import_react_ui14.useId)("identityDialog__title", props.title);
|
|
3620
|
+
return /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Root, {
|
|
3894
3621
|
defaultOpen: true,
|
|
3895
3622
|
onOpenChange: (open) => open || props.onDone?.()
|
|
3896
|
-
}, /* @__PURE__ */
|
|
3623
|
+
}, /* @__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, {
|
|
3897
3624
|
"aria-labelledby": titleId,
|
|
3898
3625
|
onOpenAutoFocus: (e) => e.preventDefault()
|
|
3899
|
-
}, /* @__PURE__ */
|
|
3626
|
+
}, /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Clipboard.Provider, null, /* @__PURE__ */ import_react27.default.createElement(IdentityPanel, {
|
|
3900
3627
|
...props,
|
|
3901
3628
|
titleId,
|
|
3902
|
-
doneActionParent: /* @__PURE__ */
|
|
3629
|
+
doneActionParent: /* @__PURE__ */ import_react27.default.createElement(import_react_ui14.Dialog.Close, {
|
|
3903
3630
|
asChild: true
|
|
3904
3631
|
})
|
|
3905
3632
|
}))))));
|
|
3906
3633
|
};
|
|
3907
3634
|
var JoinDialog = (joinPanelProps) => {
|
|
3908
|
-
const titleId = (0,
|
|
3909
|
-
const { height } = (0,
|
|
3910
|
-
return /* @__PURE__ */
|
|
3635
|
+
const titleId = (0, import_react_ui31.useId)("joinDialog__title");
|
|
3636
|
+
const { height } = (0, import_react_ui31.useVisualViewport)();
|
|
3637
|
+
return /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Root, {
|
|
3911
3638
|
defaultOpen: true,
|
|
3912
3639
|
onOpenChange: (open) => open || (joinPanelProps.onExit ? joinPanelProps.onExit() : joinPanelProps.onDone?.(null))
|
|
3913
|
-
}, /* @__PURE__ */
|
|
3640
|
+
}, /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Portal, null, /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Overlay, {
|
|
3914
3641
|
classNames: "backdrop-blur",
|
|
3915
3642
|
...height && {
|
|
3916
3643
|
style: {
|
|
3917
3644
|
blockSize: `${height}px`
|
|
3918
3645
|
}
|
|
3919
3646
|
}
|
|
3920
|
-
}, /* @__PURE__ */
|
|
3647
|
+
}, /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Content, {
|
|
3921
3648
|
"aria-labelledby": titleId
|
|
3922
|
-
}, /* @__PURE__ */
|
|
3649
|
+
}, /* @__PURE__ */ import_react58.default.createElement(JoinPanel, {
|
|
3923
3650
|
...joinPanelProps,
|
|
3924
3651
|
titleId,
|
|
3925
|
-
exitActionParent: /* @__PURE__ */
|
|
3652
|
+
exitActionParent: /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Cancel, {
|
|
3926
3653
|
asChild: true
|
|
3927
3654
|
}),
|
|
3928
|
-
doneActionParent: /* @__PURE__ */
|
|
3655
|
+
doneActionParent: /* @__PURE__ */ import_react58.default.createElement(import_react_ui31.AlertDialog.Action, {
|
|
3929
3656
|
asChild: true
|
|
3930
3657
|
})
|
|
3931
3658
|
})))));
|
|
3932
3659
|
};
|
|
3933
3660
|
var SpaceDialog = (spacePanelProps) => {
|
|
3934
|
-
const titleId = (0,
|
|
3935
|
-
return /* @__PURE__ */
|
|
3661
|
+
const titleId = (0, import_react_ui33.useId)("spaceDialog__title");
|
|
3662
|
+
return /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Root, {
|
|
3936
3663
|
defaultOpen: true,
|
|
3937
3664
|
onOpenChange: (open) => open || spacePanelProps.onDone?.()
|
|
3938
|
-
}, /* @__PURE__ */
|
|
3665
|
+
}, /* @__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, {
|
|
3939
3666
|
"aria-labelledby": titleId
|
|
3940
|
-
}, /* @__PURE__ */
|
|
3667
|
+
}, /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Clipboard.Provider, null, /* @__PURE__ */ import_react61.default.createElement(SpacePanel, {
|
|
3941
3668
|
...spacePanelProps,
|
|
3942
3669
|
titleId,
|
|
3943
|
-
doneActionParent: /* @__PURE__ */
|
|
3670
|
+
doneActionParent: /* @__PURE__ */ import_react61.default.createElement(import_react_ui33.Dialog.Close, {
|
|
3944
3671
|
asChild: true
|
|
3945
3672
|
})
|
|
3946
3673
|
}))))));
|
|
3947
3674
|
};
|
|
3948
3675
|
var StatusDialog = () => {
|
|
3949
|
-
const titleId = (0,
|
|
3950
|
-
return /* @__PURE__ */
|
|
3676
|
+
const titleId = (0, import_react_ui34.useId)("statusDialog__title");
|
|
3677
|
+
return /* @__PURE__ */ import_react62.default.createElement(import_react_ui34.AlertDialog.Root, {
|
|
3951
3678
|
open: true
|
|
3952
|
-
}, /* @__PURE__ */
|
|
3679
|
+
}, /* @__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, {
|
|
3953
3680
|
"aria-labelledby": titleId
|
|
3954
|
-
}, /* @__PURE__ */
|
|
3681
|
+
}, /* @__PURE__ */ import_react62.default.createElement(StatusPanel, {
|
|
3955
3682
|
titleId
|
|
3956
3683
|
})))));
|
|
3957
3684
|
};
|
|
3958
3685
|
var __dxlog_file14 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/composites/Shell/Shell.tsx";
|
|
3959
3686
|
var blurActiveElement = () => document.activeElement?.blur?.();
|
|
3960
3687
|
var Shell = ({ runtime }) => {
|
|
3961
|
-
const [{ layout, invitationCode, spaceKey, spaceId, target }, setLayout] = (0,
|
|
3688
|
+
const [{ layout, invitationCode, spaceKey, spaceId, target }, setLayout] = (0, import_react60.useState)({
|
|
3962
3689
|
layout: runtime.layout,
|
|
3963
3690
|
invitationCode: runtime.invitationCode,
|
|
3964
3691
|
spaceKey: runtime.spaceKey,
|
|
3965
3692
|
spaceId: runtime.spaceId,
|
|
3966
3693
|
target: runtime.target
|
|
3967
3694
|
});
|
|
3968
|
-
const [{ invitationUrl, deviceInvitationParam, spaceInvitationParam }, setInvitationUrl] = (0,
|
|
3695
|
+
const [{ invitationUrl, deviceInvitationParam, spaceInvitationParam }, setInvitationUrl] = (0, import_react60.useState)({
|
|
3969
3696
|
invitationUrl: runtime.invitationUrl,
|
|
3970
3697
|
deviceInvitationParam: runtime.deviceInvitationParam,
|
|
3971
3698
|
spaceInvitationParam: runtime.spaceInvitationParam
|
|
@@ -3982,7 +3709,7 @@ var Shell = ({ runtime }) => {
|
|
|
3982
3709
|
baseUrl.searchParams.set(spaceInvitationParam, invitationCode2);
|
|
3983
3710
|
return baseUrl.toString();
|
|
3984
3711
|
};
|
|
3985
|
-
(0,
|
|
3712
|
+
(0, import_react60.useEffect)(() => {
|
|
3986
3713
|
const unsubscribeLayout = runtime.layoutUpdate.on((request) => setLayout(request));
|
|
3987
3714
|
const unsubscribeInvitationUrl = runtime.invitationUrlUpdate.on((request) => setInvitationUrl(request));
|
|
3988
3715
|
return () => {
|
|
@@ -3992,7 +3719,7 @@ var Shell = ({ runtime }) => {
|
|
|
3992
3719
|
}, [
|
|
3993
3720
|
runtime
|
|
3994
3721
|
]);
|
|
3995
|
-
(0,
|
|
3722
|
+
(0, import_react60.useEffect)(() => {
|
|
3996
3723
|
if (layout === import_react_client13.ShellLayout.SPACE && !space) {
|
|
3997
3724
|
import_log15.log.warn("No space found for shell space invitations.", void 0, {
|
|
3998
3725
|
F: __dxlog_file14,
|
|
@@ -4017,11 +3744,11 @@ var Shell = ({ runtime }) => {
|
|
|
4017
3744
|
]);
|
|
4018
3745
|
switch (layout) {
|
|
4019
3746
|
case import_react_client13.ShellLayout.STATUS:
|
|
4020
|
-
return /* @__PURE__ */
|
|
3747
|
+
return /* @__PURE__ */ import_react60.default.createElement(StatusDialog, null);
|
|
4021
3748
|
case import_react_client13.ShellLayout.INITIALIZE_IDENTITY:
|
|
4022
3749
|
case import_react_client13.ShellLayout.INITIALIZE_IDENTITY_FROM_INVITATION:
|
|
4023
3750
|
case import_react_client13.ShellLayout.INITIALIZE_IDENTITY_FROM_RECOVERY:
|
|
4024
|
-
return /* @__PURE__ */
|
|
3751
|
+
return /* @__PURE__ */ import_react60.default.createElement(JoinDialog, {
|
|
4025
3752
|
mode: "halo-only",
|
|
4026
3753
|
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",
|
|
4027
3754
|
initialInvitationCode: invitationCode,
|
|
@@ -4041,7 +3768,7 @@ var Shell = ({ runtime }) => {
|
|
|
4041
3768
|
case import_react_client13.ShellLayout.IDENTITY:
|
|
4042
3769
|
case import_react_client13.ShellLayout.SHARE_IDENTITY:
|
|
4043
3770
|
case import_react_client13.ShellLayout.EDIT_PROFILE:
|
|
4044
|
-
return /* @__PURE__ */
|
|
3771
|
+
return /* @__PURE__ */ import_react60.default.createElement(IdentityDialog, {
|
|
4045
3772
|
createInvitationUrl: createDeviceInvitationUrl,
|
|
4046
3773
|
onResetStorage: async () => {
|
|
4047
3774
|
runtime.setLayout({
|
|
@@ -4087,7 +3814,7 @@ var Shell = ({ runtime }) => {
|
|
|
4087
3814
|
initialDisposition: layout === import_react_client13.ShellLayout.SHARE_IDENTITY ? "manage-device-invitation" : "default"
|
|
4088
3815
|
});
|
|
4089
3816
|
case import_react_client13.ShellLayout.SPACE:
|
|
4090
|
-
return space ? /* @__PURE__ */
|
|
3817
|
+
return space ? /* @__PURE__ */ import_react60.default.createElement(SpaceDialog, {
|
|
4091
3818
|
space,
|
|
4092
3819
|
target,
|
|
4093
3820
|
createInvitationUrl: createSpaceInvitationUrl,
|
|
@@ -4102,7 +3829,7 @@ var Shell = ({ runtime }) => {
|
|
|
4102
3829
|
}
|
|
4103
3830
|
}) : null;
|
|
4104
3831
|
case import_react_client13.ShellLayout.JOIN_SPACE:
|
|
4105
|
-
return /* @__PURE__ */
|
|
3832
|
+
return /* @__PURE__ */ import_react60.default.createElement(JoinDialog, {
|
|
4106
3833
|
initialInvitationCode: invitationCode,
|
|
4107
3834
|
onDone: async (result) => {
|
|
4108
3835
|
blurActiveElement();
|
|
@@ -4396,25 +4123,25 @@ var runShell = async (config = new import_react_client11.Config()) => {
|
|
|
4396
4123
|
const services = new import_react_client11.ClientServicesProxy((0, import_rpc_tunnel.createIFramePort)({
|
|
4397
4124
|
channel: import_client_protocol.DEFAULT_CLIENT_CHANNEL
|
|
4398
4125
|
}));
|
|
4399
|
-
(0, import_client.createRoot)(document.getElementById("root")).render(/* @__PURE__ */
|
|
4400
|
-
tx:
|
|
4126
|
+
(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, {
|
|
4127
|
+
tx: import_react_ui_theme28.defaultTx,
|
|
4401
4128
|
resourceExtensions: [
|
|
4402
4129
|
osTranslations
|
|
4403
4130
|
]
|
|
4404
|
-
}, /* @__PURE__ */
|
|
4131
|
+
}, /* @__PURE__ */ import_react59.default.createElement(import_react_client11.ClientProvider, {
|
|
4405
4132
|
config,
|
|
4406
4133
|
services,
|
|
4407
4134
|
noBanner: true
|
|
4408
|
-
}, /* @__PURE__ */
|
|
4135
|
+
}, /* @__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, {
|
|
4409
4136
|
runtime
|
|
4410
4137
|
}))))))));
|
|
4411
4138
|
} catch {
|
|
4412
|
-
(0, import_client.createRoot)(document.getElementById("root")).render(/* @__PURE__ */
|
|
4413
|
-
tx:
|
|
4139
|
+
(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, {
|
|
4140
|
+
tx: import_react_ui_theme28.defaultTx,
|
|
4414
4141
|
resourceExtensions: [
|
|
4415
4142
|
osTranslations
|
|
4416
4143
|
]
|
|
4417
|
-
}, /* @__PURE__ */
|
|
4144
|
+
}, /* @__PURE__ */ import_react59.default.createElement(Fallback, {
|
|
4418
4145
|
onClose: () => runtime.setAppContext({
|
|
4419
4146
|
display: import_react_client11.ShellDisplay.NONE
|
|
4420
4147
|
})
|
|
@@ -4422,15 +4149,15 @@ var runShell = async (config = new import_react_client11.Config()) => {
|
|
|
4422
4149
|
}
|
|
4423
4150
|
};
|
|
4424
4151
|
var Fallback = ({ onClose }) => {
|
|
4425
|
-
const { t } = (0,
|
|
4426
|
-
return /* @__PURE__ */
|
|
4152
|
+
const { t } = (0, import_react_ui32.useTranslation)("os");
|
|
4153
|
+
return /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Dialog.Root, {
|
|
4427
4154
|
modal: true,
|
|
4428
4155
|
open: true,
|
|
4429
4156
|
onOpenChange: () => onClose?.()
|
|
4430
|
-
}, /* @__PURE__ */
|
|
4157
|
+
}, /* @__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, {
|
|
4431
4158
|
asChild: true,
|
|
4432
4159
|
onClick: () => onClose?.()
|
|
4433
|
-
}, /* @__PURE__ */
|
|
4160
|
+
}, /* @__PURE__ */ import_react59.default.createElement(import_react_ui32.Button, {
|
|
4434
4161
|
variant: "primary"
|
|
4435
4162
|
}, t("close label"))))));
|
|
4436
4163
|
};
|
|
@@ -4480,10 +4207,10 @@ var MemoryShellRuntime = class {
|
|
|
4480
4207
|
this.contextUpdate.emit(context);
|
|
4481
4208
|
}
|
|
4482
4209
|
};
|
|
4483
|
-
var ShellContext = /* @__PURE__ */ (0,
|
|
4210
|
+
var ShellContext = /* @__PURE__ */ (0, import_react63.createContext)({});
|
|
4484
4211
|
var useShell = () => {
|
|
4485
4212
|
const client = (0, import_react_client14.useClient)();
|
|
4486
|
-
const { runtime, setDisplay } = (0,
|
|
4213
|
+
const { runtime, setDisplay } = (0, import_react63.useContext)(ShellContext);
|
|
4487
4214
|
const setLayout = async (layout, options) => {
|
|
4488
4215
|
if (runtime) {
|
|
4489
4216
|
if (layout === import_react_client14.ShellLayout.DEFAULT) {
|
|
@@ -4505,8 +4232,8 @@ var useShell = () => {
|
|
|
4505
4232
|
var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoinedSpace, children }) => {
|
|
4506
4233
|
const client = (0, import_react_client14.useClient)();
|
|
4507
4234
|
const identity = (0, import_halo5.useIdentity)();
|
|
4508
|
-
const [display, setDisplay] = (0,
|
|
4509
|
-
const shellRuntime = (0,
|
|
4235
|
+
const [display, setDisplay] = (0, import_react63.useState)(!identity || spaceInvitationCode || deviceInvitationCode ? import_react_client14.ShellDisplay.FULLSCREEN : import_react_client14.ShellDisplay.NONE);
|
|
4236
|
+
const shellRuntime = (0, import_react63.useMemo)(() => {
|
|
4510
4237
|
if (client.config.get("runtime.app.env.DX_VAULT") !== "false") {
|
|
4511
4238
|
return;
|
|
4512
4239
|
}
|
|
@@ -4531,7 +4258,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4531
4258
|
spaceInvitationCode,
|
|
4532
4259
|
deviceInvitationCode
|
|
4533
4260
|
]);
|
|
4534
|
-
const handleKeyDown = (0,
|
|
4261
|
+
const handleKeyDown = (0, import_react63.useCallback)((event) => {
|
|
4535
4262
|
if (!space || !shellRuntime) {
|
|
4536
4263
|
return;
|
|
4537
4264
|
}
|
|
@@ -4552,7 +4279,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4552
4279
|
space,
|
|
4553
4280
|
shellRuntime
|
|
4554
4281
|
]);
|
|
4555
|
-
(0,
|
|
4282
|
+
(0, import_react63.useEffect)(() => {
|
|
4556
4283
|
if (!shellRuntime) {
|
|
4557
4284
|
return;
|
|
4558
4285
|
}
|
|
@@ -4562,7 +4289,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4562
4289
|
shellRuntime,
|
|
4563
4290
|
handleKeyDown
|
|
4564
4291
|
]);
|
|
4565
|
-
(0,
|
|
4292
|
+
(0, import_react63.useEffect)(() => {
|
|
4566
4293
|
if (!shellRuntime) {
|
|
4567
4294
|
return;
|
|
4568
4295
|
}
|
|
@@ -4575,11 +4302,11 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4575
4302
|
}, [
|
|
4576
4303
|
shellRuntime
|
|
4577
4304
|
]);
|
|
4578
|
-
return /* @__PURE__ */
|
|
4579
|
-
className: (0,
|
|
4580
|
-
}, /* @__PURE__ */
|
|
4305
|
+
return /* @__PURE__ */ import_react63.default.createElement(import_react63.default.Fragment, null, shellRuntime && /* @__PURE__ */ import_react63.default.createElement("div", {
|
|
4306
|
+
className: (0, import_react_ui_theme29.mx)(display === import_react_client14.ShellDisplay.NONE ? "hidden" : "")
|
|
4307
|
+
}, /* @__PURE__ */ import_react63.default.createElement(Shell, {
|
|
4581
4308
|
runtime: shellRuntime
|
|
4582
|
-
})), /* @__PURE__ */
|
|
4309
|
+
})), /* @__PURE__ */ import_react63.default.createElement(ShellContext.Provider, {
|
|
4583
4310
|
value: {
|
|
4584
4311
|
runtime: shellRuntime,
|
|
4585
4312
|
setDisplay
|
|
@@ -4600,11 +4327,7 @@ var ShellProvider = ({ space, deviceInvitationCode, spaceInvitationCode, onJoine
|
|
|
4600
4327
|
ConfirmResetImpl,
|
|
4601
4328
|
DeviceList,
|
|
4602
4329
|
Emoji,
|
|
4603
|
-
EmojiPickerBlock,
|
|
4604
|
-
EmojiPickerToolbarButton,
|
|
4605
4330
|
Heading,
|
|
4606
|
-
HuePickerBlock,
|
|
4607
|
-
HuePickerToolbarButton,
|
|
4608
4331
|
IdentityDialog,
|
|
4609
4332
|
IdentityListItem,
|
|
4610
4333
|
IdentityPanel,
|