@dxos/shell 0.4.10-main.c42bfdb → 0.4.10-main.c61b011
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/{index-CnChDHv2.mjs → index-BCJk2O_p.mjs} +1211 -1136
- package/dist/bundle/index-BCJk2O_p.mjs.map +1 -0
- package/dist/bundle/{index-Ba36DtoM.mjs → index-CwQjVyu5.mjs} +38 -22
- package/dist/bundle/index-CwQjVyu5.mjs.map +1 -0
- package/dist/bundle/shell.mjs +2 -3
- package/dist/bundle/shell.mjs.map +1 -1
- package/dist/bundle/shell.umd.js +43 -43
- 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 +44 -40
- package/dist/lib/browser/react.mjs.map +3 -3
- package/dist/lib/browser/testing/index.mjs +3 -2
- package/dist/lib/browser/testing/index.mjs.map +3 -3
- package/dist/types/src/components/EmojiPicker.d.ts +1 -2
- package/dist/types/src/components/EmojiPicker.d.ts.map +1 -1
- package/dist/types/src/components/EmojiPicker.js.map +1 -1
- package/dist/types/src/components/HuePicker.d.ts +1 -2
- package/dist/types/src/components/HuePicker.d.ts.map +1 -1
- package/dist/types/src/components/HuePicker.js.map +1 -1
- package/dist/types/src/components/InvitationList/InvitationListItem.js +5 -5
- package/dist/types/src/components/InvitationList/InvitationListItem.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js +9 -4
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.js +5 -1
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.js.map +1 -1
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.d.ts.map +1 -1
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js +3 -1
- package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js.map +1 -1
- package/dist/types/src/playwright/invitations.spec.js +3 -1
- package/dist/types/src/playwright/invitations.spec.js.map +1 -1
- package/dist/types/src/steps/InvitationManager.d.ts +1 -1
- package/dist/types/src/steps/InvitationManager.d.ts.map +1 -1
- package/dist/types/src/steps/InvitationManager.js +3 -4
- package/dist/types/src/steps/InvitationManager.js.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.d.ts.map +1 -1
- package/dist/types/src/stories/Invitations.e2e-stories.js +5 -2
- package/dist/types/src/stories/Invitations.e2e-stories.js.map +1 -1
- package/dist/types/src/testing/shell-manager.d.ts.map +1 -1
- package/dist/types/src/testing/shell-manager.js +3 -2
- package/dist/types/src/testing/shell-manager.js.map +1 -1
- package/package.json +23 -22
- package/src/components/EmojiPicker.tsx +2 -2
- package/src/components/HuePicker.tsx +2 -2
- package/src/components/InvitationList/InvitationListItem.tsx +5 -5
- package/src/panels/IdentityPanel/IdentityPanel.tsx +10 -4
- package/src/panels/IdentityPanel/useAgentHandlers.ts +5 -1
- package/src/panels/SpacePanel/steps/SpaceManager.tsx +3 -1
- package/src/playwright/invitations.spec.ts +3 -1
- package/src/steps/InvitationManager.tsx +4 -4
- package/src/stories/Invitations.e2e-stories.tsx +6 -3
- package/src/testing/shell-manager.ts +3 -2
- package/dist/bundle/index-Ba36DtoM.mjs.map +0 -1
- package/dist/bundle/index-CnChDHv2.mjs.map +0 -1
|
@@ -30,7 +30,6 @@ exports.InvitationManager = void 0;
|
|
|
30
30
|
const react_1 = require("@phosphor-icons/react");
|
|
31
31
|
const react_2 = __importStar(require("react"));
|
|
32
32
|
const react_qr_rounded_1 = require("react-qr-rounded");
|
|
33
|
-
const invitations_1 = require("@dxos/react-client/invitations");
|
|
34
33
|
const react_ui_1 = require("@dxos/react-ui");
|
|
35
34
|
const react_ui_theme_1 = require("@dxos/react-ui-theme");
|
|
36
35
|
const util_1 = require("@dxos/util");
|
|
@@ -39,11 +38,11 @@ const util_2 = require("../util");
|
|
|
39
38
|
const InvitationManagerView = ({ children, ...props }) => {
|
|
40
39
|
return (react_2.default.createElement(components_1.Viewport.View, { ...props, classNames: 'grow flex flex-col justify-around items-center' }, children));
|
|
41
40
|
};
|
|
42
|
-
const InvitationManager = ({ invitationUrl, active, send, status,
|
|
41
|
+
const InvitationManager = ({ invitationUrl, active, send, status, multiUse, authCode, id = '0', }) => {
|
|
43
42
|
var _a;
|
|
44
43
|
const { t } = (0, react_ui_1.useTranslation)('os');
|
|
45
44
|
const qrLabel = (0, react_ui_1.useId)('invitation-manager__qr-code');
|
|
46
|
-
const statusValue =
|
|
45
|
+
const statusValue = multiUse ? 0 : (_a = util_2.invitationStatusValue.get(status)) !== null && _a !== void 0 ? _a : 0;
|
|
47
46
|
const showAuthCode = statusValue === 3;
|
|
48
47
|
const emoji = (0, util_1.hexToEmoji)(id);
|
|
49
48
|
const activeView = (0, react_2.useMemo)(() => {
|
|
@@ -61,7 +60,7 @@ const InvitationManager = ({ invitationUrl, active, send, status, type, authCode
|
|
|
61
60
|
react_2.default.createElement(components_1.Viewport.Root, { activeView: activeView, classNames: 'grow plb-1' },
|
|
62
61
|
react_2.default.createElement(components_1.Viewport.Views, null,
|
|
63
62
|
react_2.default.createElement(InvitationManagerView, { id: 'showing qr', emoji: emoji },
|
|
64
|
-
react_2.default.createElement("p", { className: 'text-sm mlb-1 font-normal text-center' }, t(
|
|
63
|
+
react_2.default.createElement("p", { className: 'text-sm mlb-1 font-normal text-center' }, t(multiUse ? 'invite many qr label' : 'invite one qr label')),
|
|
65
64
|
react_2.default.createElement("div", { role: 'none', className: (0, react_ui_theme_1.mx)(react_ui_theme_1.descriptionText, 'is-full max-is-[14rem] relative') },
|
|
66
65
|
react_2.default.createElement(react_qr_rounded_1.QR, { rounding: 100, backgroundColor: 'transparent', color: 'currentColor', className: (0, react_ui_theme_1.mx)('is-full bs-full p-2', showAuthCode && 'invisible'), "aria-labelledby": qrLabel, errorCorrectionLevel: 'Q', cutout: true }, invitationUrl !== null && invitationUrl !== void 0 ? invitationUrl : 'never'),
|
|
67
66
|
react_2.default.createElement(components_1.Centered, null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvitationManager.js","sourceRoot":"","sources":["../../../../src/steps/InvitationManager.tsx"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,iDAAiD;AACjD,+CAAuC;AACvC,uDAAsC;
|
|
1
|
+
{"version":3,"file":"InvitationManager.js","sourceRoot":"","sources":["../../../../src/steps/InvitationManager.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invitations.e2e-stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/Invitations.e2e-stories.tsx"],"names":[],"mappings":"AAIA,OAAO,YAAY,CAAC;AAQpB,OAAO,EAAE,KAAK,KAAK,
|
|
1
|
+
{"version":3,"file":"Invitations.e2e-stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/Invitations.e2e-stories.tsx"],"names":[],"mappings":"AAIA,OAAO,YAAY,CAAC;AAQpB,OAAO,EAAE,KAAK,KAAK,EAA+B,MAAM,yBAAyB,CAAC;;;;AAalF,wBAEE;AAEF,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;AAgMhE,eAAO,MAAM,OAAO;mBACH;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;CAY9B,CAAC"}
|
|
@@ -52,7 +52,7 @@ const Panel = ({ id, panel, setPanel }) => {
|
|
|
52
52
|
const client = (0, react_client_1.useClient)();
|
|
53
53
|
const spaces = (0, echo_1.useSpaces)();
|
|
54
54
|
(0, react_2.useMemo)(() => {
|
|
55
|
-
if (panel
|
|
55
|
+
if (panel && typeof panel !== 'string') {
|
|
56
56
|
window[`peer${id}CreateSpaceInvitation`] = (options) => {
|
|
57
57
|
const invitation = panel.share(options);
|
|
58
58
|
invitation.subscribe((invitation) => {
|
|
@@ -64,7 +64,7 @@ const Panel = ({ id, panel, setPanel }) => {
|
|
|
64
64
|
};
|
|
65
65
|
}
|
|
66
66
|
}, [panel]);
|
|
67
|
-
if (panel
|
|
67
|
+
if (panel && typeof panel !== 'string') {
|
|
68
68
|
return react_2.default.createElement(panels_1.SpacePanel, { space: panel, createInvitationUrl: createInvitationUrl });
|
|
69
69
|
}
|
|
70
70
|
switch (panel) {
|
|
@@ -134,6 +134,9 @@ const Invitations = (args) => {
|
|
|
134
134
|
identity || panel ? (react_2.default.createElement("div", { className: `${react_ui_theme_1.groupSurface} rounded p-2` },
|
|
135
135
|
react_2.default.createElement(Panel, { id: id, panel: panel, setPanel: setPanel }))) : null));
|
|
136
136
|
};
|
|
137
|
+
// TODO(wittjosiah): This story fails to start in Safari/Webkit.
|
|
138
|
+
// The issue appears to be related to dynamic imports during client initialization.
|
|
139
|
+
// This does not seem to be a problem in other browsers nor in Safari in the app.
|
|
137
140
|
exports.Default = {
|
|
138
141
|
render: (args) => (react_2.default.createElement(components_1.ClipboardProvider, null,
|
|
139
142
|
react_2.default.createElement(react_ui_1.Tooltip.Provider, null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Invitations.e2e-stories.js","sourceRoot":"","sources":["../../../../src/stories/Invitations.e2e-stories.tsx"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,sBAAoB;AAEpB,iDAA8G;AAC9G,+CAAiD;AAEjD,mCAAgC;AAChC,yCAAqC;AACrC,qDAA+C;AAC/C,
|
|
1
|
+
{"version":3,"file":"Invitations.e2e-stories.js","sourceRoot":"","sources":["../../../../src/stories/Invitations.e2e-stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-manager.d.ts","sourceRoot":"","sources":["../../../../src/testing/shell-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA0B,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAIrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAI5D,qBAAa,YAAa,SAAQ,kBAAkB;aAM9B,IAAI,EAAE,IAAI;IAC5B,QAAQ,CAAC,QAAQ;IANnB,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,SAAS,CAAyB;gBAItB,IAAI,EAAE,IAAI,EACnB,QAAQ,UAAO;IAM1B,IAAI,KAAK,mDAER;IAIK,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIxC,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7C,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAM1C,cAAc,CAAC,IAAI,EAAE,MAAM;IAO3B,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOzC,WAAW;IAcX,eAAe,CAAC,cAAc,EAAE,MAAM;IAQtC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,UAAO;IAUpD,UAAU;IAIV,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOxC,qBAAqB,CAAC,cAAc,EAAE,MAAM;IAI5C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,YAAY,CAAC,QAAQ,EAAE,MAAM;YAOrB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"shell-manager.d.ts","sourceRoot":"","sources":["../../../../src/testing/shell-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA0B,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAIrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAI5D,qBAAa,YAAa,SAAQ,kBAAkB;aAM9B,IAAI,EAAE,IAAI;IAC5B,QAAQ,CAAC,QAAQ;IANnB,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,SAAS,CAAyB;gBAItB,IAAI,EAAE,IAAI,EACnB,QAAQ,UAAO;IAM1B,IAAI,KAAK,mDAER;IAIK,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIxC,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7C,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAM1C,cAAc,CAAC,IAAI,EAAE,MAAM;IAO3B,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOzC,WAAW;IAcX,eAAe,CAAC,cAAc,EAAE,MAAM;IAQtC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,UAAO;IAUpD,UAAU;IAIV,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOxC,qBAAqB,CAAC,cAAc,EAAE,MAAM;IAI5C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,YAAY,CAAC,QAAQ,EAAE,MAAM;YAOrB,iBAAiB;CAYhC"}
|
|
@@ -59,7 +59,7 @@ class ShellManager extends scoped_shell_manager_1.ScopedShellManager {
|
|
|
59
59
|
await this.shell.getByTestId('device-list-item-current.options').click();
|
|
60
60
|
await this.shell.getByTestId('device-list-item-current.join-existing').click();
|
|
61
61
|
await this.shell.getByTestId('join-new-identity.reset-identity-input').fill('CONFIRM');
|
|
62
|
-
await this.shell.getByTestId('join-new-identity.reset-identity-
|
|
62
|
+
await this.shell.getByTestId('join-new-identity.reset-identity-confirm').click();
|
|
63
63
|
await this.inputInvitation('device', invitationCode, this.shell);
|
|
64
64
|
}
|
|
65
65
|
async authenticateDevice(authCode, skipDone = true) {
|
|
@@ -94,7 +94,8 @@ class ShellManager extends scoped_shell_manager_1.ScopedShellManager {
|
|
|
94
94
|
}
|
|
95
95
|
async _onConsoleMessage(message) {
|
|
96
96
|
try {
|
|
97
|
-
const
|
|
97
|
+
const text = message.text();
|
|
98
|
+
const json = JSON.parse(text.slice(text.indexOf('{')));
|
|
98
99
|
if (json.invitationCode) {
|
|
99
100
|
this._invitationCode.wake(json.invitationCode);
|
|
100
101
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-manager.js","sourceRoot":"","sources":["../../../../src/testing/shell-manager.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAIF,uCAA6C;AAE7C,iEAA4D;AAE5D,yEAAyE;AAEzE,MAAa,YAAa,SAAQ,yCAAkB;IAIlD,kBAAkB;IAClB,YACoB,IAAU,EACnB,WAAW,IAAI;QAExB,KAAK,EAAE,CAAC;QAHU,SAAI,GAAJ,IAAI,CAAM;QACnB,aAAQ,GAAR,QAAQ,CAAO;QANlB,oBAAe,GAAG,IAAI,eAAO,EAAU,CAAC;QACxC,cAAS,GAAG,IAAI,eAAO,EAAU,CAAC;QAQxC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACtF,CAAC;IAED,UAAU;IAEV,KAAK,CAAC,cAAc;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,6BAA6B,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,yBAAyB;QAC7B,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,SAAS,EAAE,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,SAAS,EAAE,CAAC;IACrE,CAAC;IAED,UAAU;IAEV,KAAK,CAAC,cAAc,CAAC,IAAY;QAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;QACxD,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC,KAAK,EAAE,CAAC;QACvE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC,KAAK,EAAE,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,eAAO,EAAU,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,eAAO,EAAU,CAAC;QACvC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,iCAAiC,CAAC,CAAC,KAAK,EAAE,CAAC;QACxE,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,YAAY,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;YAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,SAAS,EAAE;gBAC/B,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;aACvB;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACrC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC,KAAK,EAAE,CAAC;QACzE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC,KAAK,EAAE,CAAC;QACvE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,oCAAoC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnF,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,cAAsB;QAC1C,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC,KAAK,EAAE,CAAC;QACzE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/E,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvF,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"shell-manager.js","sourceRoot":"","sources":["../../../../src/testing/shell-manager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/shell",
|
|
3
|
-
"version": "0.4.10-main.
|
|
3
|
+
"version": "0.4.10-main.c61b011",
|
|
4
4
|
"description": "DXOS’s OS experiences",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -42,37 +42,38 @@
|
|
|
42
42
|
"react-qr-rounded": "^1.0.0",
|
|
43
43
|
"url-join": "^5.0.0",
|
|
44
44
|
"xstate": "^4.37.0",
|
|
45
|
-
"@dxos/async": "0.4.10-main.
|
|
46
|
-
"@dxos/client-
|
|
47
|
-
"@dxos/
|
|
48
|
-
"@dxos/
|
|
49
|
-
"@dxos/
|
|
50
|
-
"@dxos/
|
|
51
|
-
"@dxos/
|
|
52
|
-
"@dxos/react-client": "0.4.10-main.
|
|
53
|
-
"@dxos/react-ui": "0.4.10-main.
|
|
54
|
-
"@dxos/react-ui-theme": "0.4.10-main.
|
|
55
|
-
"@dxos/react-ui-types": "0.4.10-main.
|
|
56
|
-
"@dxos/rpc-tunnel": "0.4.10-main.
|
|
57
|
-
"@dxos/util": "0.4.10-main.
|
|
45
|
+
"@dxos/async": "0.4.10-main.c61b011",
|
|
46
|
+
"@dxos/client-services": "0.4.10-main.c61b011",
|
|
47
|
+
"@dxos/debug": "0.4.10-main.c61b011",
|
|
48
|
+
"@dxos/client-protocol": "0.4.10-main.c61b011",
|
|
49
|
+
"@dxos/invariant": "0.4.10-main.c61b011",
|
|
50
|
+
"@dxos/log": "0.4.10-main.c61b011",
|
|
51
|
+
"@dxos/display-name": "0.4.10-main.c61b011",
|
|
52
|
+
"@dxos/react-client": "0.4.10-main.c61b011",
|
|
53
|
+
"@dxos/react-ui": "0.4.10-main.c61b011",
|
|
54
|
+
"@dxos/react-ui-theme": "0.4.10-main.c61b011",
|
|
55
|
+
"@dxos/react-ui-types": "0.4.10-main.c61b011",
|
|
56
|
+
"@dxos/rpc-tunnel": "0.4.10-main.c61b011",
|
|
57
|
+
"@dxos/util": "0.4.10-main.c61b011"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
|
-
"@phosphor-icons/react": "^2.
|
|
60
|
+
"@phosphor-icons/react": "^2.1.5",
|
|
61
61
|
"@types/react": "^18.0.21",
|
|
62
62
|
"@types/react-dom": "^18.0.6",
|
|
63
63
|
"@vitejs/plugin-react": "^4.2.1",
|
|
64
64
|
"react": "^18.2.0",
|
|
65
65
|
"react-dom": "^18.2.0",
|
|
66
|
-
"vite": "^5.
|
|
66
|
+
"vite": "^5.2.9",
|
|
67
67
|
"vite-plugin-turbosnap": "^1.0.2",
|
|
68
|
-
"@dxos/
|
|
69
|
-
"@dxos/
|
|
70
|
-
"@dxos/react-async": "0.4.10-main.
|
|
71
|
-
"@dxos/
|
|
72
|
-
"@dxos/
|
|
68
|
+
"@dxos/protocols": "0.4.10-main.c61b011",
|
|
69
|
+
"@dxos/random": "0.4.10-main.c61b011",
|
|
70
|
+
"@dxos/react-async": "0.4.10-main.c61b011",
|
|
71
|
+
"@dxos/storybook-utils": "0.4.10-main.c61b011",
|
|
72
|
+
"@dxos/config": "0.4.10-main.c61b011",
|
|
73
|
+
"@dxos/react-ui-theme": "0.4.10-main.c61b011"
|
|
73
74
|
},
|
|
74
75
|
"peerDependencies": {
|
|
75
|
-
"@phosphor-icons/react": "^2.
|
|
76
|
+
"@phosphor-icons/react": "^2.1.5",
|
|
76
77
|
"react": "^18.2.0",
|
|
77
78
|
"react-dom": "^18.2.0"
|
|
78
79
|
},
|
|
@@ -5,7 +5,7 @@ import emojiData from '@emoji-mart/data';
|
|
|
5
5
|
import EmojiMart from '@emoji-mart/react';
|
|
6
6
|
import { ArrowCounterClockwise, CaretDown, ImageSquare } from '@phosphor-icons/react';
|
|
7
7
|
import { useControllableState } from '@radix-ui/react-use-controllable-state';
|
|
8
|
-
import React, {
|
|
8
|
+
import React, { useRef, useState } from 'react';
|
|
9
9
|
|
|
10
10
|
import {
|
|
11
11
|
Button,
|
|
@@ -23,7 +23,7 @@ export type EmojiPickerProps = {
|
|
|
23
23
|
disabled?: boolean;
|
|
24
24
|
defaultEmoji?: string;
|
|
25
25
|
emoji?: string;
|
|
26
|
-
onChangeEmoji?:
|
|
26
|
+
onChangeEmoji?: (nextEmoji: string) => void;
|
|
27
27
|
onClickClear?: ButtonProps['onClick'];
|
|
28
28
|
};
|
|
29
29
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
//
|
|
4
4
|
import { ArrowCounterClockwise, CaretDown, Check, Palette } from '@phosphor-icons/react';
|
|
5
5
|
import { useControllableState } from '@radix-ui/react-use-controllable-state';
|
|
6
|
-
import React, {
|
|
6
|
+
import React, { useRef, useState } from 'react';
|
|
7
7
|
|
|
8
8
|
import {
|
|
9
9
|
Button,
|
|
@@ -30,7 +30,7 @@ export type HuePickerProps = {
|
|
|
30
30
|
disabled?: boolean;
|
|
31
31
|
defaultHue?: string;
|
|
32
32
|
hue?: string;
|
|
33
|
-
onChangeHue?:
|
|
33
|
+
onChangeHue?: (nextHue: string) => void;
|
|
34
34
|
onClickClear?: ButtonProps['onClick'];
|
|
35
35
|
};
|
|
36
36
|
|
|
@@ -96,14 +96,14 @@ export const InvitationListItemImpl = ({
|
|
|
96
96
|
...props
|
|
97
97
|
}: InvitationListItemImplProps) => {
|
|
98
98
|
const { t } = useTranslation('os');
|
|
99
|
-
const { cancel, status: invitationStatus, invitationCode, authCode,
|
|
99
|
+
const { cancel, status: invitationStatus, invitationCode, authCode, multiUse } = propsInvitationStatus;
|
|
100
100
|
|
|
101
101
|
const isCancellable = !(
|
|
102
102
|
[Invitation.State.ERROR, Invitation.State.TIMEOUT, Invitation.State.CANCELLED].indexOf(invitationStatus) >= 0
|
|
103
103
|
);
|
|
104
104
|
|
|
105
105
|
const showShare =
|
|
106
|
-
|
|
106
|
+
multiUse ||
|
|
107
107
|
[Invitation.State.INIT, Invitation.State.CONNECTING, Invitation.State.CONNECTED].indexOf(invitationStatus) >= 0;
|
|
108
108
|
|
|
109
109
|
const showAuthCode = invitationStatus === Invitation.State.READY_FOR_AUTHENTICATION;
|
|
@@ -147,9 +147,9 @@ export const InvitationListItemImpl = ({
|
|
|
147
147
|
classNames={['flex gap-2 pis-3 pie-1 items-center relative', props.classNames]}
|
|
148
148
|
>
|
|
149
149
|
<ListItem.Heading classNames='sr-only'>
|
|
150
|
-
{t(
|
|
150
|
+
{t(multiUse ? 'invite many list item label' : 'invite one list item label')}
|
|
151
151
|
</ListItem.Heading>
|
|
152
|
-
{
|
|
152
|
+
{multiUse && (
|
|
153
153
|
<AvatarStackEffect status={avatarStatus} animation={avatarAnimation} reverseEffects={reverseEffects} />
|
|
154
154
|
)}
|
|
155
155
|
<Tooltip.Root>
|
|
@@ -162,7 +162,7 @@ export const InvitationListItemImpl = ({
|
|
|
162
162
|
</Avatar.Root>
|
|
163
163
|
<Tooltip.Portal>
|
|
164
164
|
<Tooltip.Content side='left' classNames='z-[70]'>
|
|
165
|
-
{t(
|
|
165
|
+
{t(multiUse ? 'invite many qr label' : 'invite one qr label')}
|
|
166
166
|
<Tooltip.Arrow />
|
|
167
167
|
</Tooltip.Content>
|
|
168
168
|
</Tooltip.Portal>
|
|
@@ -53,8 +53,8 @@ const IdentityHeading = ({
|
|
|
53
53
|
const fallbackValue = keyToFallback(identity.identityKey);
|
|
54
54
|
const { t } = useTranslation('os');
|
|
55
55
|
const [displayName, setDisplayName] = useState(identity.profile?.displayName ?? '');
|
|
56
|
-
const [emoji,
|
|
57
|
-
const [hue,
|
|
56
|
+
const [emoji, setEmojiDirectly] = useState<string>(getEmojiValue(identity));
|
|
57
|
+
const [hue, setHueDirectly] = useState<string>(getHueValue(identity));
|
|
58
58
|
const { textValue, setTextValue } = useClipboardContext();
|
|
59
59
|
const identityHex = identity.identityKey.toHex();
|
|
60
60
|
const copied = textValue === identityHex;
|
|
@@ -67,9 +67,15 @@ const IdentityHeading = ({
|
|
|
67
67
|
return onUpdateProfile?.(nextProfile);
|
|
68
68
|
};
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
const setEmoji = (nextEmoji: string) => {
|
|
71
|
+
setEmojiDirectly(nextEmoji);
|
|
71
72
|
void handleUpdateProfile();
|
|
72
|
-
}
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const setHue = (nextHue: string) => {
|
|
76
|
+
setHueDirectly(nextHue);
|
|
77
|
+
void handleUpdateProfile();
|
|
78
|
+
};
|
|
73
79
|
|
|
74
80
|
const isConnected = connectionState === ConnectionState.ONLINE;
|
|
75
81
|
|
|
@@ -67,7 +67,11 @@ export const useAgentHandlers = ({
|
|
|
67
67
|
invitations.forEach((invitation) => invitation.cancel());
|
|
68
68
|
|
|
69
69
|
// TODO(nf): do this work in the hosting provider client?
|
|
70
|
-
const invitation = client.halo.share({
|
|
70
|
+
const invitation = client.halo.share({
|
|
71
|
+
type: Invitation.Type.INTERACTIVE,
|
|
72
|
+
authMethod: Invitation.AuthMethod.NONE,
|
|
73
|
+
multiUse: true,
|
|
74
|
+
});
|
|
71
75
|
|
|
72
76
|
invitation.subscribe(handleAgentCreate);
|
|
73
77
|
};
|
|
@@ -59,6 +59,7 @@ export const SpaceManager = (props: SpaceManagerProps) => {
|
|
|
59
59
|
const invitation = space.share?.({
|
|
60
60
|
type: Invitation.Type.INTERACTIVE,
|
|
61
61
|
authMethod: Invitation.AuthMethod.SHARED_SECRET,
|
|
62
|
+
multiUse: false,
|
|
62
63
|
target,
|
|
63
64
|
});
|
|
64
65
|
if (invitation && config.values.runtime?.app?.env?.DX_ENVIRONMENT !== 'production') {
|
|
@@ -72,8 +73,9 @@ export const SpaceManager = (props: SpaceManagerProps) => {
|
|
|
72
73
|
icon: UsersThree,
|
|
73
74
|
onClick: useCallback(() => {
|
|
74
75
|
const invitation = space.share?.({
|
|
75
|
-
type: Invitation.Type.
|
|
76
|
+
type: Invitation.Type.INTERACTIVE,
|
|
76
77
|
authMethod: Invitation.AuthMethod.NONE,
|
|
78
|
+
multiUse: true,
|
|
77
79
|
target,
|
|
78
80
|
});
|
|
79
81
|
if (invitation && config.values.runtime?.app?.env?.DX_ENVIRONMENT !== 'production') {
|
|
@@ -15,7 +15,9 @@ test.describe('Invitations', () => {
|
|
|
15
15
|
let manager: InvitationsManager;
|
|
16
16
|
|
|
17
17
|
// TODO(wittjosiah): Storybook takes a bit to be ready for testing against.
|
|
18
|
-
test.beforeAll(async ({ browser }) => {
|
|
18
|
+
test.beforeAll(async ({ browser, browserName }) => {
|
|
19
|
+
// TODO(wittjosiah): Storybook is broken in Safari/Webkit.
|
|
20
|
+
test.skip(browserName === 'webkit');
|
|
19
21
|
test.setTimeout(60_000);
|
|
20
22
|
manager = new InvitationsManager(browser);
|
|
21
23
|
await manager.init();
|
|
@@ -6,7 +6,7 @@ import { Check, X } from '@phosphor-icons/react';
|
|
|
6
6
|
import React, { useMemo } from 'react';
|
|
7
7
|
import { QR } from 'react-qr-rounded';
|
|
8
8
|
|
|
9
|
-
import { type InvitationStatus
|
|
9
|
+
import { type InvitationStatus } from '@dxos/react-client/invitations';
|
|
10
10
|
import { useId, useTranslation } from '@dxos/react-ui';
|
|
11
11
|
import { descriptionText, getSize, mx } from '@dxos/react-ui-theme';
|
|
12
12
|
import { hexToEmoji } from '@dxos/util';
|
|
@@ -43,13 +43,13 @@ export const InvitationManager = ({
|
|
|
43
43
|
active,
|
|
44
44
|
send,
|
|
45
45
|
status,
|
|
46
|
-
|
|
46
|
+
multiUse,
|
|
47
47
|
authCode,
|
|
48
48
|
id = '0',
|
|
49
49
|
}: InvitationManagerProps) => {
|
|
50
50
|
const { t } = useTranslation('os');
|
|
51
51
|
const qrLabel = useId('invitation-manager__qr-code');
|
|
52
|
-
const statusValue =
|
|
52
|
+
const statusValue = multiUse ? 0 : invitationStatusValue.get(status!) ?? 0;
|
|
53
53
|
const showAuthCode = statusValue === 3;
|
|
54
54
|
const emoji = hexToEmoji(id);
|
|
55
55
|
const activeView = useMemo(() => {
|
|
@@ -69,7 +69,7 @@ export const InvitationManager = ({
|
|
|
69
69
|
<Viewport.Views>
|
|
70
70
|
<InvitationManagerView id='showing qr' emoji={emoji}>
|
|
71
71
|
<p className='text-sm mlb-1 font-normal text-center'>
|
|
72
|
-
{t(
|
|
72
|
+
{t(multiUse ? 'invite many qr label' : 'invite one qr label')}
|
|
73
73
|
</p>
|
|
74
74
|
<div role='none' className={mx(descriptionText, 'is-full max-is-[14rem] relative')}>
|
|
75
75
|
<QR
|
|
@@ -10,7 +10,7 @@ import React, { useMemo, useState } from 'react';
|
|
|
10
10
|
import { log } from '@dxos/log';
|
|
11
11
|
import { faker } from '@dxos/random';
|
|
12
12
|
import { useClient } from '@dxos/react-client';
|
|
13
|
-
import { type Space, type SpaceMember,
|
|
13
|
+
import { type Space, type SpaceMember, useSpaces } from '@dxos/react-client/echo';
|
|
14
14
|
import { useIdentity } from '@dxos/react-client/halo';
|
|
15
15
|
import { Invitation, InvitationEncoder } from '@dxos/react-client/invitations';
|
|
16
16
|
import { ConnectionState, useNetworkStatus } from '@dxos/react-client/mesh';
|
|
@@ -36,7 +36,7 @@ const Panel = ({ id, panel, setPanel }: { id: number; panel?: PanelType; setPane
|
|
|
36
36
|
const spaces = useSpaces();
|
|
37
37
|
|
|
38
38
|
useMemo(() => {
|
|
39
|
-
if (panel
|
|
39
|
+
if (panel && typeof panel !== 'string') {
|
|
40
40
|
(window as any)[`peer${id}CreateSpaceInvitation`] = (options?: Partial<Invitation>) => {
|
|
41
41
|
const invitation = panel.share(options);
|
|
42
42
|
|
|
@@ -50,7 +50,7 @@ const Panel = ({ id, panel, setPanel }: { id: number; panel?: PanelType; setPane
|
|
|
50
50
|
}
|
|
51
51
|
}, [panel]);
|
|
52
52
|
|
|
53
|
-
if (panel
|
|
53
|
+
if (panel && typeof panel !== 'string') {
|
|
54
54
|
return <SpacePanel space={panel} createInvitationUrl={createInvitationUrl} />;
|
|
55
55
|
}
|
|
56
56
|
|
|
@@ -216,6 +216,9 @@ const Invitations = (args: { id: number; count: number }) => {
|
|
|
216
216
|
);
|
|
217
217
|
};
|
|
218
218
|
|
|
219
|
+
// TODO(wittjosiah): This story fails to start in Safari/Webkit.
|
|
220
|
+
// The issue appears to be related to dynamic imports during client initialization.
|
|
221
|
+
// This does not seem to be a problem in other browsers nor in Safari in the app.
|
|
219
222
|
export const Default = {
|
|
220
223
|
render: (args: { id: number }) => (
|
|
221
224
|
<ClipboardProvider>
|
|
@@ -75,7 +75,7 @@ export class ShellManager extends ScopedShellManager {
|
|
|
75
75
|
await this.shell.getByTestId('device-list-item-current.options').click();
|
|
76
76
|
await this.shell.getByTestId('device-list-item-current.join-existing').click();
|
|
77
77
|
await this.shell.getByTestId('join-new-identity.reset-identity-input').fill('CONFIRM');
|
|
78
|
-
await this.shell.getByTestId('join-new-identity.reset-identity-
|
|
78
|
+
await this.shell.getByTestId('join-new-identity.reset-identity-confirm').click();
|
|
79
79
|
await this.inputInvitation('device', invitationCode, this.shell);
|
|
80
80
|
}
|
|
81
81
|
|
|
@@ -117,7 +117,8 @@ export class ShellManager extends ScopedShellManager {
|
|
|
117
117
|
|
|
118
118
|
private async _onConsoleMessage(message: ConsoleMessage) {
|
|
119
119
|
try {
|
|
120
|
-
const
|
|
120
|
+
const text = message.text();
|
|
121
|
+
const json = JSON.parse(text.slice(text.indexOf('{')));
|
|
121
122
|
if (json.invitationCode) {
|
|
122
123
|
this._invitationCode.wake(json.invitationCode);
|
|
123
124
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-Ba36DtoM.mjs","sources":["../../../../core/mesh/websocket-rpc/dist/lib/browser/index.mjs"],"sourcesContent":["import \"@dxos/node-std/globals\";\n\n// inject-globals:@inject-globals\nimport {\n global,\n Buffer,\n process\n} from \"@dxos/node-std/inject-globals\";\n\n// packages/core/mesh/websocket-rpc/src/client.ts\nimport WebSocket from \"isomorphic-ws\";\nimport { Event, Trigger } from \"@dxos/async\";\nimport { log, logInfo } from \"@dxos/log\";\nimport { createProtoRpcPeer } from \"@dxos/rpc\";\nfunction _ts_decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\")\n r = Reflect.decorate(decorators, target, key, desc);\n else\n for (var i = decorators.length - 1; i >= 0; i--)\n if (d = decorators[i])\n r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\nvar __dxlog_file = \"/home/runner/work/dxos/dxos/packages/core/mesh/websocket-rpc/src/client.ts\";\nvar WebsocketRpcClient = class {\n constructor(_params) {\n this._params = _params;\n this._connectTrigger = new Trigger();\n this.connected = new Event();\n this.disconnected = new Event();\n this.error = new Event();\n this._rpc = createProtoRpcPeer({\n requested: this._params.requested,\n exposed: this._params.exposed,\n handlers: this._params.handlers,\n port: {\n send: (msg) => {\n this._socket.send(msg);\n },\n subscribe: (cb) => {\n this._socket.onmessage = async (msg) => {\n if (typeof Blob !== \"undefined\" && msg.data instanceof Blob) {\n cb(Buffer.from(await msg.data.arrayBuffer()));\n } else {\n cb(msg.data);\n }\n };\n }\n }\n });\n }\n get url() {\n return this._params.url;\n }\n async open() {\n this._socket = new WebSocket(this._params.url);\n this._socket.onopen = async () => {\n log(\"Socket open\", void 0, {\n F: __dxlog_file,\n L: 55,\n S: this,\n C: (f, a) => f(...a)\n });\n try {\n await this._rpc.open();\n log(`RPC open ${this._params.url}`, void 0, {\n F: __dxlog_file,\n L: 58,\n S: this,\n C: (f, a) => f(...a)\n });\n this.connected.emit();\n this._connectTrigger.wake();\n } catch (err) {\n this.error.emit(err);\n }\n };\n this._socket.onclose = async () => {\n log(`Disconnected ${this._params.url}`, void 0, {\n F: __dxlog_file,\n L: 67,\n S: this,\n C: (f, a) => f(...a)\n });\n this.disconnected.emit();\n await this.close();\n };\n this._socket.onerror = (event) => {\n log.error(event.message ?? \"Socket error\", {\n url: this._params.url\n }, {\n F: __dxlog_file,\n L: 73,\n S: this,\n C: (f, a) => f(...a)\n });\n const error = event.error ?? new Error(event.message);\n this.error.emit(error);\n this._connectTrigger.throw(error);\n };\n await this._connectTrigger.wait();\n }\n async close() {\n try {\n await this._rpc?.close();\n } catch (err) {\n log.catch(err, void 0, {\n F: __dxlog_file,\n L: 86,\n S: this,\n C: (f, a) => f(...a)\n });\n }\n this._socket?.close();\n }\n get rpc() {\n return this._rpc.rpc;\n }\n};\n_ts_decorate([\n logInfo\n], WebsocketRpcClient.prototype, \"url\", null);\n\n// packages/core/mesh/websocket-rpc/src/server.ts\nimport WebSocket2 from \"isomorphic-ws\";\nimport { log as log2 } from \"@dxos/log\";\nimport { createProtoRpcPeer as createProtoRpcPeer2 } from \"@dxos/rpc\";\nvar __dxlog_file2 = \"/home/runner/work/dxos/dxos/packages/core/mesh/websocket-rpc/src/server.ts\";\nvar WebsocketRpcServer = class {\n constructor(_params) {\n this._params = _params;\n }\n async open() {\n this._server = new WebSocket2.Server({\n ...this._params\n });\n this._server.on(\"connection\", async (socket, request) => {\n log2(\"connection\", {\n request\n }, {\n F: __dxlog_file2,\n L: 34,\n S: this,\n C: (f, a) => f(...a)\n });\n const info = {\n request\n };\n const { onOpen, onClose, ...options } = await this._params.onConnection(info);\n const rpc = createProtoRpcPeer2({\n ...options,\n port: {\n send: (msg) => {\n socket.send(msg);\n },\n subscribe: (cb) => {\n socket.onmessage = async (msg) => {\n if (typeof Blob !== \"undefined\" && msg.data instanceof Blob) {\n cb(Buffer.from(await msg.data.arrayBuffer()));\n } else {\n cb(msg.data);\n }\n };\n }\n }\n });\n await rpc.open();\n await onOpen?.(rpc);\n socket.onclose = async () => {\n await onClose?.(rpc);\n await rpc.close();\n };\n });\n }\n async close() {\n this._server?.close();\n }\n};\nexport {\n WebsocketRpcClient,\n WebsocketRpcServer\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["_ts_decorate","decorators","target","key","desc","r","d","i","__dxlog_file","WebsocketRpcClient","_params","Trigger","Event","createProtoRpcPeer","msg","cb","Buffer","WebSocket","log","f","a","err","event","error","_a","_b","logInfo"],"mappings":"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"}
|