@dxos/shell 0.6.14-main.f49f251 → 0.6.14-staging.e15392e

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.
Files changed (48) hide show
  1. package/dist/bundle/shell.mjs +10 -10
  2. package/dist/bundle/shell.mjs.map +1 -1
  3. package/dist/bundle/shell.umd.js +1 -1
  4. package/dist/bundle/shell.umd.js.map +1 -1
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/testing/index.mjs +1 -39
  7. package/dist/lib/browser/testing/index.mjs.map +4 -4
  8. package/dist/lib/node/chunk-Q7SFCCGT.cjs +33 -0
  9. package/dist/lib/node/chunk-Q7SFCCGT.cjs.map +7 -0
  10. package/dist/lib/node/meta.json +1 -0
  11. package/dist/lib/node/react.cjs +4763 -0
  12. package/dist/lib/node/react.cjs.map +7 -0
  13. package/dist/lib/node/react.css +7 -0
  14. package/dist/lib/node/react.css.map +7 -0
  15. package/dist/lib/node/testing/index.cjs +181 -0
  16. package/dist/lib/node/testing/index.cjs.map +7 -0
  17. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  18. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  19. package/dist/lib/node-esm/meta.json +1 -0
  20. package/dist/lib/node-esm/react.css +7 -0
  21. package/dist/lib/node-esm/react.css.map +7 -0
  22. package/dist/lib/node-esm/react.mjs +4809 -0
  23. package/dist/lib/node-esm/react.mjs.map +7 -0
  24. package/dist/lib/node-esm/testing/index.mjs +161 -0
  25. package/dist/lib/node-esm/testing/index.mjs.map +7 -0
  26. package/dist/types/src/components/IdentityList/SpaceMemberList.stories.js +2 -2
  27. package/dist/types/src/components/IdentityList/SpaceMemberList.stories.js.map +1 -1
  28. package/dist/types/src/components/InvitationList/InvitationList.stories.js +10 -10
  29. package/dist/types/src/components/InvitationList/InvitationList.stories.js.map +1 -1
  30. package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js +15 -15
  31. package/dist/types/src/panels/SpacePanel/SpacePanel.stories.js.map +1 -1
  32. package/dist/types/src/playwright/invitations-manager.d.ts +1 -2
  33. package/dist/types/src/playwright/invitations-manager.d.ts.map +1 -1
  34. package/dist/types/src/playwright/invitations-manager.js +2 -3
  35. package/dist/types/src/playwright/invitations-manager.js.map +1 -1
  36. package/dist/types/src/playwright/invitations.spec.js +13 -9
  37. package/dist/types/src/playwright/invitations.spec.js.map +1 -1
  38. package/dist/types/src/testing/index.d.ts +0 -1
  39. package/dist/types/src/testing/index.d.ts.map +1 -1
  40. package/dist/types/src/testing/index.js +1 -1
  41. package/dist/types/src/testing/index.js.map +1 -1
  42. package/package.json +38 -27
  43. package/src/components/IdentityList/SpaceMemberList.stories.tsx +1 -1
  44. package/src/components/InvitationList/InvitationList.stories.tsx +1 -1
  45. package/src/panels/SpacePanel/SpacePanel.stories.tsx +1 -1
  46. package/src/playwright/invitations-manager.ts +2 -3
  47. package/src/playwright/invitations.spec.ts +14 -9
  48. package/src/testing/index.ts +2 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/testing/fixtures/identities.ts", "../../../../src/testing/fixtures/invitations.ts", "../../../../src/testing/scoped-shell-manager.ts", "../../../../src/testing/shell-manager.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { PublicKey } from '@dxos/react-client';\nimport { HaloSpaceMember, SpaceMember } from '@dxos/react-client/echo';\n\nexport const alice: SpaceMember = {\n role: HaloSpaceMember.Role.ADMIN,\n identity: {\n identityKey: PublicKey.random(),\n profile: {\n displayName: 'Alice',\n },\n },\n presence: SpaceMember.PresenceState.ONLINE,\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { PublicKey } from '@dxos/react-client';\nimport { Invitation, CancellableInvitationObservable } from '@dxos/react-client/invitations';\n\nexport const inviteWithState = (state: Invitation.State) =>\n new CancellableInvitationObservable({\n initialInvitation: {\n state,\n invitationId: Math.random().toString(16).slice(2),\n kind: Invitation.Kind.SPACE,\n authMethod: Invitation.AuthMethod.NONE,\n swarmKey: PublicKey.random(),\n type: Invitation.Type.INTERACTIVE,\n authCode: [Invitation.State.READY_FOR_AUTHENTICATION, Invitation.State.AUTHENTICATING].includes(state)\n ? '123456'\n : '',\n },\n subscriber: () => {},\n onCancel: async () => {},\n });\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { Locator, Page, FrameLocator } from '@playwright/test';\n\ntype Scope = Locator | FrameLocator | Page;\n\nexport class ScopedShellManager {\n page!: Page;\n\n authenticatorIsVisible(type: 'device' | 'space', scope?: Scope) {\n return (scope || this.page).getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).isVisible();\n }\n\n async invitationFailed(scope?: Scope, timeout = 3000) {\n const peer = scope || this.page;\n try {\n await peer.locator('[data-testid=invitation-rescuer-reset]:not([disabled])').waitFor({ timeout });\n return true;\n } catch {\n return false;\n }\n }\n\n async inputInvitation(type: 'device' | 'space', invitation: string, scope?: Scope) {\n await (scope || this.page).getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-input`).fill(invitation);\n await this.page.keyboard.press('Enter');\n }\n\n async invitationInputContinue(type: 'device' | 'space', scope?: Scope) {\n await (scope || this.page).getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-input-continue`).click();\n }\n\n async cancelInvitation(type: 'device' | 'space', kind: 'host' | 'guest', scope?: Scope) {\n if (kind === 'guest') {\n await (scope || this.page)\n .getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-authenticator-cancel`)\n .click();\n } else {\n await (scope || this.page).getByTestId('cancel-invitation').nth(0).click();\n }\n }\n\n async readyToAuthenticate(type: 'device' | 'space', scope?: Scope, timeout = 3000) {\n const peer = scope || this.page;\n try {\n await peer\n .locator(`[data-testid=${type === 'device' ? 'halo' : 'space'}-auth-code-input]:not([disabled])`)\n .waitFor({ timeout });\n return true;\n } catch {\n return false;\n }\n }\n\n async authenticateInvitation(type: 'device' | 'space', authCode: string, scope?: Scope) {\n const peer = scope || this.page;\n // TODO(wittjosiah): Update ids.\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).fill(authCode);\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-authenticator-next`).click();\n }\n\n async clearAuthCode(type: 'device' | 'space', scope?: Scope) {\n const peer = scope || this.page;\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).fill('');\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).focus();\n }\n\n async resetInvitation(scope?: Scope) {\n await (scope || this.page).getByTestId('invitation-rescuer-reset').click();\n }\n\n async doneInvitation(type: 'device' | 'space', scope?: Scope) {\n await (scope || this.page)\n .getByTestId(type === 'device' ? 'halo-invitation-accepted-done' : 'space-invitation-accepted-done')\n .click();\n }\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { ConsoleMessage, Page } from '@playwright/test';\n\nimport { sleep, Trigger } from '@dxos/async';\n\nimport { ScopedShellManager } from './scoped-shell-manager';\n\n// TODO(wittjosiah): Normalize data-testids between snake and camel case.\n\nconst CONFIRM_INPUT = 'RESET';\n\nexport class ShellManager extends ScopedShellManager {\n private _invitationCode = new Trigger<string>();\n private _authCode = new Trigger<string>();\n\n // prettier-ignore\n constructor(\n override readonly page: Page,\n readonly inIFrame = true,\n ) {\n super();\n this.page.on('console', (message) => this._onConsoleMessage(message));\n }\n\n get shell() {\n return this.inIFrame ? this.page.frameLocator('data-testid=dxos-shell') : this.page;\n }\n\n // Getters\n\n async getDisplayName(): Promise<string | null> {\n return this.shell.getByTestId('identityHeading.displayName').textContent();\n }\n\n async isCurrentSpaceViewVisible(): Promise<boolean> {\n return await this.shell.getByTestId('current-space-view').isVisible();\n }\n\n async isSpaceListViewVisible(): Promise<boolean> {\n return await this.shell.getByTestId('space-list-view').isVisible();\n }\n\n // Actions\n\n async createIdentity(name: string) {\n await this.shell.getByTestId('create-identity').click();\n await this.page.keyboard.type(name);\n await this.shell.getByTestId('create-identity-input-continue').click();\n await this.shell.getByTestId('halo-invitation-accepted-done').click();\n }\n\n async createDeviceInvitation(): Promise<string> {\n this._invitationCode = new Trigger<string>();\n this._authCode = new Trigger<string>();\n await this.shell.getByTestId('devices-panel.create-invitation').click();\n return await this._invitationCode.wait();\n }\n\n async resetDevice() {\n await this.shell.getByTestId('device-list-item-current.options').click();\n await this.shell.getByTestId('device-list-item-current.reset').click();\n await this.shell.getByTestId('reset-storage.reset-identity-input').fill(CONFIRM_INPUT);\n await this.shell.getByTestId('reset-storage.reset-identity-confirm').click();\n }\n\n async joinNewIdentity(invitationCode: string) {\n await this.shell.getByTestId('device-list-item-current.options').click();\n await this.shell.getByTestId('device-list-item-current.join-existing').click();\n await this.shell.getByTestId('join-new-identity.reset-identity-input').fill(CONFIRM_INPUT);\n await this.shell.getByTestId('join-new-identity.reset-identity-confirm').click();\n }\n\n async acceptDeviceInvitation(invitationCode: string) {\n await this.inputInvitation('device', invitationCode, this.shell);\n }\n\n async authenticateDevice(authCode: string, skipDone = true) {\n // Wait for focus to shift before typing.\n await sleep(1500);\n await this.authenticateInvitation('device', authCode, this.shell);\n // TODO(wittjosiah): When \"signing out\" and joinging a new identity, the done step seems to be skipped.\n if (!skipDone) {\n await this.doneInvitation('device', this.shell);\n }\n }\n\n async closeShell() {\n await this.page.keyboard.press('Escape');\n }\n\n async createSpaceInvitation(): Promise<string> {\n this._invitationCode = new Trigger<string>();\n this._authCode = new Trigger<string>();\n await this.shell.getByTestId('spaces-panel.create-invitation').click();\n return await this._invitationCode.wait();\n }\n\n async acceptSpaceInvitation(invitationCode: string) {\n await this.inputInvitation('space', invitationCode, this.shell);\n }\n\n async getAuthCode(): Promise<string> {\n return await this._authCode.wait();\n }\n\n async authenticate(authCode: string) {\n // Wait for focus to shift before typing.\n await sleep(1500);\n await this.authenticateInvitation('space', authCode, this.shell);\n }\n\n private async _onConsoleMessage(message: ConsoleMessage) {\n try {\n const text = message.text();\n const json = JSON.parse(text.slice(text.indexOf('{')));\n if (json.invitationCode) {\n this._invitationCode.wake(json.invitationCode);\n }\n if (json.authCode) {\n this._authCode.wake(json.authCode);\n }\n } catch {}\n }\n}\n"],
5
- "mappings": "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",
6
- "names": ["PublicKey", "HaloSpaceMember", "SpaceMember", "alice", "role", "HaloSpaceMember", "Role", "ADMIN", "identity", "identityKey", "PublicKey", "random", "profile", "displayName", "presence", "SpaceMember", "PresenceState", "ONLINE", "PublicKey", "Invitation", "CancellableInvitationObservable", "inviteWithState", "state", "CancellableInvitationObservable", "initialInvitation", "invitationId", "Math", "random", "toString", "slice", "kind", "Invitation", "Kind", "SPACE", "authMethod", "AuthMethod", "NONE", "swarmKey", "PublicKey", "type", "Type", "INTERACTIVE", "authCode", "State", "READY_FOR_AUTHENTICATION", "AUTHENTICATING", "includes", "subscriber", "onCancel", "ScopedShellManager", "authenticatorIsVisible", "type", "scope", "page", "getByTestId", "isVisible", "invitationFailed", "timeout", "peer", "locator", "waitFor", "inputInvitation", "invitation", "fill", "keyboard", "press", "invitationInputContinue", "click", "cancelInvitation", "kind", "nth", "readyToAuthenticate", "authenticateInvitation", "authCode", "clearAuthCode", "focus", "resetInvitation", "doneInvitation", "sleep", "Trigger", "CONFIRM_INPUT", "ShellManager", "ScopedShellManager", "constructor", "page", "inIFrame", "_invitationCode", "Trigger", "_authCode", "on", "message", "_onConsoleMessage", "shell", "frameLocator", "getDisplayName", "getByTestId", "textContent", "isCurrentSpaceViewVisible", "isVisible", "isSpaceListViewVisible", "createIdentity", "name", "click", "keyboard", "type", "createDeviceInvitation", "wait", "resetDevice", "fill", "joinNewIdentity", "invitationCode", "acceptDeviceInvitation", "inputInvitation", "authenticateDevice", "authCode", "skipDone", "sleep", "authenticateInvitation", "doneInvitation", "closeShell", "press", "createSpaceInvitation", "acceptSpaceInvitation", "getAuthCode", "authenticate", "text", "json", "JSON", "parse", "slice", "indexOf", "wake"]
3
+ "sources": ["../../../../src/testing/scoped-shell-manager.ts", "../../../../src/testing/shell-manager.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport type { Locator, Page, FrameLocator } from '@playwright/test';\n\ntype Scope = Locator | FrameLocator | Page;\n\nexport class ScopedShellManager {\n page!: Page;\n\n authenticatorIsVisible(type: 'device' | 'space', scope?: Scope) {\n return (scope || this.page).getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).isVisible();\n }\n\n async invitationFailed(scope?: Scope, timeout = 3000) {\n const peer = scope || this.page;\n try {\n await peer.locator('[data-testid=invitation-rescuer-reset]:not([disabled])').waitFor({ timeout });\n return true;\n } catch {\n return false;\n }\n }\n\n async inputInvitation(type: 'device' | 'space', invitation: string, scope?: Scope) {\n await (scope || this.page).getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-input`).fill(invitation);\n await this.page.keyboard.press('Enter');\n }\n\n async invitationInputContinue(type: 'device' | 'space', scope?: Scope) {\n await (scope || this.page).getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-input-continue`).click();\n }\n\n async cancelInvitation(type: 'device' | 'space', kind: 'host' | 'guest', scope?: Scope) {\n if (kind === 'guest') {\n await (scope || this.page)\n .getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-authenticator-cancel`)\n .click();\n } else {\n await (scope || this.page).getByTestId('cancel-invitation').nth(0).click();\n }\n }\n\n async readyToAuthenticate(type: 'device' | 'space', scope?: Scope, timeout = 3000) {\n const peer = scope || this.page;\n try {\n await peer\n .locator(`[data-testid=${type === 'device' ? 'halo' : 'space'}-auth-code-input]:not([disabled])`)\n .waitFor({ timeout });\n return true;\n } catch {\n return false;\n }\n }\n\n async authenticateInvitation(type: 'device' | 'space', authCode: string, scope?: Scope) {\n const peer = scope || this.page;\n // TODO(wittjosiah): Update ids.\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).fill(authCode);\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-invitation-authenticator-next`).click();\n }\n\n async clearAuthCode(type: 'device' | 'space', scope?: Scope) {\n const peer = scope || this.page;\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).fill('');\n await peer.getByTestId(`${type === 'device' ? 'halo' : 'space'}-auth-code-input`).focus();\n }\n\n async resetInvitation(scope?: Scope) {\n await (scope || this.page).getByTestId('invitation-rescuer-reset').click();\n }\n\n async doneInvitation(type: 'device' | 'space', scope?: Scope) {\n await (scope || this.page)\n .getByTestId(type === 'device' ? 'halo-invitation-accepted-done' : 'space-invitation-accepted-done')\n .click();\n }\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { ConsoleMessage, Page } from '@playwright/test';\n\nimport { sleep, Trigger } from '@dxos/async';\n\nimport { ScopedShellManager } from './scoped-shell-manager';\n\n// TODO(wittjosiah): Normalize data-testids between snake and camel case.\n\nconst CONFIRM_INPUT = 'RESET';\n\nexport class ShellManager extends ScopedShellManager {\n private _invitationCode = new Trigger<string>();\n private _authCode = new Trigger<string>();\n\n // prettier-ignore\n constructor(\n override readonly page: Page,\n readonly inIFrame = true,\n ) {\n super();\n this.page.on('console', (message) => this._onConsoleMessage(message));\n }\n\n get shell() {\n return this.inIFrame ? this.page.frameLocator('data-testid=dxos-shell') : this.page;\n }\n\n // Getters\n\n async getDisplayName(): Promise<string | null> {\n return this.shell.getByTestId('identityHeading.displayName').textContent();\n }\n\n async isCurrentSpaceViewVisible(): Promise<boolean> {\n return await this.shell.getByTestId('current-space-view').isVisible();\n }\n\n async isSpaceListViewVisible(): Promise<boolean> {\n return await this.shell.getByTestId('space-list-view').isVisible();\n }\n\n // Actions\n\n async createIdentity(name: string) {\n await this.shell.getByTestId('create-identity').click();\n await this.page.keyboard.type(name);\n await this.shell.getByTestId('create-identity-input-continue').click();\n await this.shell.getByTestId('halo-invitation-accepted-done').click();\n }\n\n async createDeviceInvitation(): Promise<string> {\n this._invitationCode = new Trigger<string>();\n this._authCode = new Trigger<string>();\n await this.shell.getByTestId('devices-panel.create-invitation').click();\n return await this._invitationCode.wait();\n }\n\n async resetDevice() {\n await this.shell.getByTestId('device-list-item-current.options').click();\n await this.shell.getByTestId('device-list-item-current.reset').click();\n await this.shell.getByTestId('reset-storage.reset-identity-input').fill(CONFIRM_INPUT);\n await this.shell.getByTestId('reset-storage.reset-identity-confirm').click();\n }\n\n async joinNewIdentity(invitationCode: string) {\n await this.shell.getByTestId('device-list-item-current.options').click();\n await this.shell.getByTestId('device-list-item-current.join-existing').click();\n await this.shell.getByTestId('join-new-identity.reset-identity-input').fill(CONFIRM_INPUT);\n await this.shell.getByTestId('join-new-identity.reset-identity-confirm').click();\n }\n\n async acceptDeviceInvitation(invitationCode: string) {\n await this.inputInvitation('device', invitationCode, this.shell);\n }\n\n async authenticateDevice(authCode: string, skipDone = true) {\n // Wait for focus to shift before typing.\n await sleep(1500);\n await this.authenticateInvitation('device', authCode, this.shell);\n // TODO(wittjosiah): When \"signing out\" and joinging a new identity, the done step seems to be skipped.\n if (!skipDone) {\n await this.doneInvitation('device', this.shell);\n }\n }\n\n async closeShell() {\n await this.page.keyboard.press('Escape');\n }\n\n async createSpaceInvitation(): Promise<string> {\n this._invitationCode = new Trigger<string>();\n this._authCode = new Trigger<string>();\n await this.shell.getByTestId('spaces-panel.create-invitation').click();\n return await this._invitationCode.wait();\n }\n\n async acceptSpaceInvitation(invitationCode: string) {\n await this.inputInvitation('space', invitationCode, this.shell);\n }\n\n async getAuthCode(): Promise<string> {\n return await this._authCode.wait();\n }\n\n async authenticate(authCode: string) {\n // Wait for focus to shift before typing.\n await sleep(1500);\n await this.authenticateInvitation('space', authCode, this.shell);\n }\n\n private async _onConsoleMessage(message: ConsoleMessage) {\n try {\n const text = message.text();\n const json = JSON.parse(text.slice(text.indexOf('{')));\n if (json.invitationCode) {\n this._invitationCode.wake(json.invitationCode);\n }\n if (json.authCode) {\n this._authCode.wake(json.authCode);\n }\n } catch {}\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["ScopedShellManager", "authenticatorIsVisible", "type", "scope", "page", "getByTestId", "isVisible", "invitationFailed", "timeout", "peer", "locator", "waitFor", "inputInvitation", "invitation", "fill", "keyboard", "press", "invitationInputContinue", "click", "cancelInvitation", "kind", "nth", "readyToAuthenticate", "authenticateInvitation", "authCode", "clearAuthCode", "focus", "resetInvitation", "doneInvitation", "sleep", "Trigger", "CONFIRM_INPUT", "ShellManager", "ScopedShellManager", "constructor", "page", "inIFrame", "_invitationCode", "Trigger", "_authCode", "on", "message", "_onConsoleMessage", "shell", "frameLocator", "getDisplayName", "getByTestId", "textContent", "isCurrentSpaceViewVisible", "isVisible", "isSpaceListViewVisible", "createIdentity", "name", "click", "keyboard", "type", "createDeviceInvitation", "wait", "resetDevice", "fill", "joinNewIdentity", "invitationCode", "acceptDeviceInvitation", "inputInvitation", "authenticateDevice", "authCode", "skipDone", "sleep", "authenticateInvitation", "doneInvitation", "closeShell", "press", "createSpaceInvitation", "acceptSpaceInvitation", "getAuthCode", "authenticate", "text", "json", "JSON", "parse", "slice", "indexOf", "wake"]
7
7
  }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var chunk_Q7SFCCGT_exports = {};
20
+ __export(chunk_Q7SFCCGT_exports, {
21
+ __export: () => __export2
22
+ });
23
+ module.exports = __toCommonJS(chunk_Q7SFCCGT_exports);
24
+ var __defProp2 = Object.defineProperty;
25
+ var __export2 = (target, all) => {
26
+ for (var name in all)
27
+ __defProp2(target, name, { get: all[name], enumerable: true });
28
+ };
29
+ // Annotate the CommonJS export names for ESM import in node:
30
+ 0 && (module.exports = {
31
+ __export
32
+ });
33
+ //# sourceMappingURL=chunk-Q7SFCCGT.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["chunk-Q7SFCCGT.cjs"],
4
+ "sourcesContent": ["var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\nexport {\n __export\n};\n//# sourceMappingURL=chunk-Q7SFCCGT.cjs.map\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,kBAAAA;AAAA;AAAA;AAAA,IAAIC,aAAY,OAAO;AACvB,IAAID,YAAW,CAAC,QAAQ,QAAQ;AAC9B,WAAS,QAAQ;AACf,IAAAC,WAAU,QAAQ,MAAM,EAAE,KAAK,IAAI,IAAI,GAAG,YAAY,KAAK,CAAC;AAChE;",
6
+ "names": ["__export", "__defProp"]
7
+ }
@@ -0,0 +1 @@
1
+ {"inputs":{"packages/sdk/shell/src/components/AgentConfig.tsx":{"bytes":14948,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Clipboard/ClipboardProvider.tsx":{"bytes":3294,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Clipboard/CopyButton.tsx":{"bytes":9501,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/Clipboard/ClipboardProvider.tsx","kind":"import-statement","original":"./ClipboardProvider"}],"format":"esm"},"packages/sdk/shell/src/components/Clipboard/index.ts":{"bytes":630,"imports":[{"path":"packages/sdk/shell/src/components/Clipboard/CopyButton.tsx","kind":"import-statement","original":"./CopyButton"},{"path":"packages/sdk/shell/src/components/Clipboard/ClipboardProvider.tsx","kind":"import-statement","original":"./ClipboardProvider"}],"format":"esm"},"packages/sdk/shell/src/components/CompoundButton/CompoundButton.tsx":{"bytes":7752,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/CompoundButton/index.ts":{"bytes":534,"imports":[{"path":"packages/sdk/shell/src/components/CompoundButton/CompoundButton.tsx","kind":"import-statement","original":"./CompoundButton"}],"format":"esm"},"packages/sdk/shell/src/components/emoji.css":{"bytes":783,"imports":[]},"packages/sdk/shell/src/components/EmojiPicker.tsx":{"bytes":19340,"imports":[{"path":"@emoji-mart/data","kind":"import-statement","external":true},{"path":"@emoji-mart/react","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/emoji.css","kind":"import-statement","original":"./emoji.css"}],"format":"esm"},"packages/sdk/shell/src/components/HuePicker.tsx":{"bytes":19963,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/IdentityList/IdentityListItem.tsx":{"bytes":6089,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/IdentityList/SpaceMemberList.tsx":{"bytes":7484,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/IdentityList/IdentityListItem.tsx","kind":"import-statement","original":"./IdentityListItem"}],"format":"esm"},"packages/sdk/shell/src/components/IdentityList/index.ts":{"bytes":645,"imports":[{"path":"packages/sdk/shell/src/components/IdentityList/IdentityListItem.tsx","kind":"import-statement","original":"./IdentityListItem"},{"path":"packages/sdk/shell/src/components/IdentityList/SpaceMemberList.tsx","kind":"import-statement","original":"./SpaceMemberList"}],"format":"esm"},"packages/sdk/shell/src/components/DeviceList/DeviceListItem.tsx":{"bytes":19607,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/DeviceList/DeviceList.tsx":{"bytes":6467,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/DeviceList/DeviceListItem.tsx","kind":"import-statement","original":"./DeviceListItem"}],"format":"esm"},"packages/sdk/shell/src/components/DeviceList/DeviceListProps.ts":{"bytes":1886,"imports":[],"format":"esm"},"packages/sdk/shell/src/components/DeviceList/index.ts":{"bytes":625,"imports":[{"path":"packages/sdk/shell/src/components/DeviceList/DeviceList.tsx","kind":"import-statement","original":"./DeviceList"},{"path":"packages/sdk/shell/src/components/DeviceList/DeviceListProps.ts","kind":"import-statement","original":"./DeviceListProps"}],"format":"esm"},"packages/sdk/shell/src/components/AuthCode.tsx":{"bytes":4503,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/InvitationList/InvitationListItem.tsx":{"bytes":27374,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"date-fns","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/AuthCode.tsx","kind":"import-statement","original":"../AuthCode"},{"path":"packages/sdk/shell/src/components/Clipboard/index.ts","kind":"import-statement","original":"../Clipboard"}],"format":"esm"},"packages/sdk/shell/src/components/InvitationList/InvitationList.tsx":{"bytes":3607,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/InvitationList/InvitationListItem.tsx","kind":"import-statement","original":"./InvitationListItem"}],"format":"esm"},"packages/sdk/shell/src/components/InvitationList/InvitationListContainer.tsx":{"bytes":3287,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/InvitationList/InvitationList.tsx","kind":"import-statement","original":"./InvitationList"}],"format":"esm"},"packages/sdk/shell/src/components/InvitationList/index.ts":{"bytes":775,"imports":[{"path":"packages/sdk/shell/src/components/InvitationList/InvitationListItem.tsx","kind":"import-statement","original":"./InvitationListItem"},{"path":"packages/sdk/shell/src/components/InvitationList/InvitationListContainer.tsx","kind":"import-statement","original":"./InvitationListContainer"},{"path":"packages/sdk/shell/src/components/InvitationList/InvitationList.tsx","kind":"import-statement","original":"./InvitationList"}],"format":"esm"},"packages/sdk/shell/src/components/Panel/Action.tsx":{"bytes":14147,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/Actions.tsx":{"bytes":2554,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/CloseButton.tsx":{"bytes":2776,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/Emoji.tsx":{"bytes":3588,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/Heading.tsx":{"bytes":3026,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/Label.tsx":{"bytes":1565,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/Input.tsx":{"bytes":2694,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/StepHeading.tsx":{"bytes":1869,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Panel/index.ts":{"bytes":1120,"imports":[{"path":"packages/sdk/shell/src/components/Panel/Action.tsx","kind":"import-statement","original":"./Action"},{"path":"packages/sdk/shell/src/components/Panel/Actions.tsx","kind":"import-statement","original":"./Actions"},{"path":"packages/sdk/shell/src/components/Panel/CloseButton.tsx","kind":"import-statement","original":"./CloseButton"},{"path":"packages/sdk/shell/src/components/Panel/Emoji.tsx","kind":"import-statement","original":"./Emoji"},{"path":"packages/sdk/shell/src/components/Panel/Heading.tsx","kind":"import-statement","original":"./Heading"},{"path":"packages/sdk/shell/src/components/Panel/Label.tsx","kind":"import-statement","original":"./Label"},{"path":"packages/sdk/shell/src/components/Panel/Input.tsx","kind":"import-statement","original":"./Input"},{"path":"packages/sdk/shell/src/components/Panel/StepHeading.tsx","kind":"import-statement","original":"./StepHeading"}],"format":"esm"},"packages/sdk/shell/src/components/Viewport/Viewport.tsx":{"bytes":11944,"imports":[{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/Viewport/index.tsx":{"bytes":511,"imports":[{"path":"packages/sdk/shell/src/components/Viewport/Viewport.tsx","kind":"import-statement","original":"./Viewport"}],"format":"esm"},"packages/sdk/shell/src/components/SpaceListItem.tsx":{"bytes":4098,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/components/index.ts":{"bytes":1565,"imports":[{"path":"packages/sdk/shell/src/components/AgentConfig.tsx","kind":"import-statement","original":"./AgentConfig"},{"path":"packages/sdk/shell/src/components/Clipboard/index.ts","kind":"import-statement","original":"./Clipboard"},{"path":"packages/sdk/shell/src/components/CompoundButton/index.ts","kind":"import-statement","original":"./CompoundButton"},{"path":"packages/sdk/shell/src/components/EmojiPicker.tsx","kind":"import-statement","original":"./EmojiPicker"},{"path":"packages/sdk/shell/src/components/HuePicker.tsx","kind":"import-statement","original":"./HuePicker"},{"path":"packages/sdk/shell/src/components/IdentityList/index.ts","kind":"import-statement","original":"./IdentityList"},{"path":"packages/sdk/shell/src/components/DeviceList/index.ts","kind":"import-statement","original":"./DeviceList"},{"path":"packages/sdk/shell/src/components/InvitationList/index.ts","kind":"import-statement","original":"./InvitationList"},{"path":"packages/sdk/shell/src/components/Panel/index.ts","kind":"import-statement","original":"./Panel"},{"path":"packages/sdk/shell/src/components/Viewport/index.tsx","kind":"import-statement","original":"./Viewport"},{"path":"packages/sdk/shell/src/components/AuthCode.tsx","kind":"import-statement","original":"./AuthCode"},{"path":"packages/sdk/shell/src/components/SpaceListItem.tsx","kind":"import-statement","original":"./SpaceListItem"}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/identityMachine.ts":{"bytes":12273,"imports":[{"path":"@xstate/react","kind":"import-statement","external":true},{"path":"xstate","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/steps/IdentityActionChooser.tsx":{"bytes":10498,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/steps/ProfileForm.tsx":{"bytes":15099,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/steps/index.ts":{"bytes":649,"imports":[{"path":"packages/sdk/shell/src/panels/IdentityPanel/steps/IdentityActionChooser.tsx","kind":"import-statement","original":"./IdentityActionChooser"},{"path":"packages/sdk/shell/src/panels/IdentityPanel/steps/ProfileForm.tsx","kind":"import-statement","original":"./ProfileForm"}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts":{"bytes":10057,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/useKubeAgentHandlers.ts":{"bytes":14557,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/useAgentHandlers.ts":{"bytes":2396,"imports":[{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts","kind":"import-statement","original":"./useEdgeAgentsHandlers"},{"path":"packages/sdk/shell/src/panels/IdentityPanel/useKubeAgentHandlers.ts","kind":"import-statement","original":"./useKubeAgentHandlers"}],"format":"esm"},"packages/sdk/shell/src/util/invitationStatusValue.ts":{"bytes":3164,"imports":[{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/util/index.ts":{"bytes":528,"imports":[{"path":"packages/sdk/shell/src/util/invitationStatusValue.ts","kind":"import-statement","original":"./invitationStatusValue"}],"format":"esm"},"packages/sdk/shell/src/steps/InvitationManager.tsx":{"bytes":12917,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-qr-rounded","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/sdk/shell/src/util/index.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"packages/sdk/shell/src/steps/StepProps.ts":{"bytes":1120,"imports":[],"format":"esm"},"packages/sdk/shell/src/steps/ConfirmReset.tsx":{"bytes":11862,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../components"}],"format":"esm"},"packages/sdk/shell/src/steps/index.ts":{"bytes":714,"imports":[{"path":"packages/sdk/shell/src/steps/InvitationManager.tsx","kind":"import-statement","original":"./InvitationManager"},{"path":"packages/sdk/shell/src/steps/StepProps.ts","kind":"import-statement","original":"./StepProps"},{"path":"packages/sdk/shell/src/steps/ConfirmReset.tsx","kind":"import-statement","original":"./ConfirmReset"}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/IdentityPanel.tsx":{"bytes":44028,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/panels/IdentityPanel/identityMachine.ts","kind":"import-statement","original":"./identityMachine"},{"path":"packages/sdk/shell/src/panels/IdentityPanel/steps/index.ts","kind":"import-statement","original":"./steps"},{"path":"packages/sdk/shell/src/panels/IdentityPanel/useAgentHandlers.ts","kind":"import-statement","original":"./useAgentHandlers"},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"packages/sdk/shell/src/steps/index.ts","kind":"import-statement","original":"../../steps"}],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/IdentityPanelProps.ts":{"bytes":3332,"imports":[],"format":"esm"},"packages/sdk/shell/src/panels/IdentityPanel/index.ts":{"bytes":642,"imports":[{"path":"packages/sdk/shell/src/panels/IdentityPanel/IdentityPanel.tsx","kind":"import-statement","original":"./IdentityPanel"},{"path":"packages/sdk/shell/src/panels/IdentityPanel/IdentityPanelProps.ts","kind":"import-statement","original":"./IdentityPanelProps"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/JoinHeading.tsx":{"bytes":5609,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/joinMachine.ts":{"bytes":66450,"imports":[{"path":"@xstate/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"xstate","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/AdditionMethodChooser.tsx":{"bytes":7443,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/IdentityAdded.tsx":{"bytes":8876,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/IdentityInput.tsx":{"bytes":11545,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationAccepted.tsx":{"bytes":4363,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationInput.tsx":{"bytes":10926,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationRescuer.tsx":{"bytes":9500,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationAuthenticator.tsx":{"bytes":12760,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/steps/index.ts":{"bytes":1217,"imports":[{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/AdditionMethodChooser.tsx","kind":"import-statement","original":"./AdditionMethodChooser"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/IdentityAdded.tsx","kind":"import-statement","original":"./IdentityAdded"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/IdentityInput.tsx","kind":"import-statement","original":"./IdentityInput"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationAccepted.tsx","kind":"import-statement","original":"./InvitationAccepted"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationInput.tsx","kind":"import-statement","original":"./InvitationInput"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationRescuer.tsx","kind":"import-statement","original":"./InvitationRescuer"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationAuthenticator.tsx","kind":"import-statement","original":"./InvitationAuthenticator"}],"format":"esm"},"packages/sdk/shell/src/styles/panelStyles.ts":{"bytes":590,"imports":[],"format":"esm"},"packages/sdk/shell/src/styles/invitationStatusStyles.ts":{"bytes":6763,"imports":[{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/styles/index.ts":{"bytes":630,"imports":[{"path":"packages/sdk/shell/src/styles/panelStyles.ts","kind":"import-statement","original":"./panelStyles"},{"path":"packages/sdk/shell/src/styles/invitationStatusStyles.ts","kind":"import-statement","original":"./invitationStatusStyles"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/JoinPanel.tsx":{"bytes":53686,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/panels/JoinPanel/JoinHeading.tsx","kind":"import-statement","original":"./JoinHeading"},{"path":"packages/sdk/shell/src/panels/JoinPanel/joinMachine.ts","kind":"import-statement","original":"./joinMachine"},{"path":"packages/sdk/shell/src/panels/JoinPanel/steps/index.ts","kind":"import-statement","original":"./steps"},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"packages/sdk/shell/src/steps/index.ts","kind":"import-statement","original":"../../steps"},{"path":"packages/sdk/shell/src/styles/index.ts","kind":"import-statement","original":"../../styles"}],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/JoinPanelProps.ts":{"bytes":6508,"imports":[],"format":"esm"},"packages/sdk/shell/src/panels/JoinPanel/index.ts":{"bytes":614,"imports":[{"path":"packages/sdk/shell/src/panels/JoinPanel/JoinPanel.tsx","kind":"import-statement","original":"./JoinPanel"},{"path":"packages/sdk/shell/src/panels/JoinPanel/JoinPanelProps.ts","kind":"import-statement","original":"./JoinPanelProps"}],"format":"esm"},"packages/sdk/shell/src/panels/SpacePanel/spaceMachine.ts":{"bytes":6259,"imports":[{"path":"@xstate/react","kind":"import-statement","external":true},{"path":"xstate","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/panels/SpacePanel/steps/SpaceManager.tsx":{"bytes":19829,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../../components"}],"format":"esm"},"packages/sdk/shell/src/panels/SpacePanel/steps/index.ts":{"bytes":526,"imports":[{"path":"packages/sdk/shell/src/panels/SpacePanel/steps/SpaceManager.tsx","kind":"import-statement","original":"./SpaceManager"}],"format":"esm"},"packages/sdk/shell/src/panels/SpacePanel/SpacePanel.tsx":{"bytes":14045,"imports":[{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/panels/SpacePanel/spaceMachine.ts","kind":"import-statement","original":"./spaceMachine"},{"path":"packages/sdk/shell/src/panels/SpacePanel/steps/index.ts","kind":"import-statement","original":"./steps"},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"packages/sdk/shell/src/steps/index.ts","kind":"import-statement","original":"../../steps"},{"path":"packages/sdk/shell/src/styles/index.ts","kind":"import-statement","original":"../../styles"}],"format":"esm"},"packages/sdk/shell/src/panels/SpacePanel/SpacePanelProps.ts":{"bytes":2262,"imports":[],"format":"esm"},"packages/sdk/shell/src/panels/SpacePanel/index.ts":{"bytes":621,"imports":[{"path":"packages/sdk/shell/src/panels/SpacePanel/SpacePanel.tsx","kind":"import-statement","original":"./SpacePanel"},{"path":"packages/sdk/shell/src/panels/SpacePanel/SpacePanelProps.ts","kind":"import-statement","original":"./SpacePanelProps"}],"format":"esm"},"packages/sdk/shell/src/panels/StatusPanel/StatusPanel.tsx":{"bytes":2091,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/panels/StatusPanel/index.ts":{"bytes":520,"imports":[{"path":"packages/sdk/shell/src/panels/StatusPanel/StatusPanel.tsx","kind":"import-statement","original":"./StatusPanel"}],"format":"esm"},"packages/sdk/shell/src/panels/index.ts":{"bytes":796,"imports":[{"path":"packages/sdk/shell/src/panels/IdentityPanel/index.ts","kind":"import-statement","original":"./IdentityPanel"},{"path":"packages/sdk/shell/src/panels/JoinPanel/index.ts","kind":"import-statement","original":"./JoinPanel"},{"path":"packages/sdk/shell/src/panels/SpacePanel/index.ts","kind":"import-statement","original":"./SpacePanel"},{"path":"packages/sdk/shell/src/panels/StatusPanel/index.ts","kind":"import-statement","original":"./StatusPanel"}],"format":"esm"},"packages/sdk/shell/src/composites/IdentityDialog/IdentityDialog.tsx":{"bytes":4041,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"packages/sdk/shell/src/panels/index.ts","kind":"import-statement","original":"../../panels"}],"format":"esm"},"packages/sdk/shell/src/composites/IdentityDialog/index.ts":{"bytes":534,"imports":[{"path":"packages/sdk/shell/src/composites/IdentityDialog/IdentityDialog.tsx","kind":"import-statement","original":"./IdentityDialog"}],"format":"esm"},"packages/sdk/shell/src/composites/JoinDialog/JoinDialog.tsx":{"bytes":4910,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/panels/index.ts","kind":"import-statement","original":"../../panels"}],"format":"esm"},"packages/sdk/shell/src/composites/JoinDialog/index.ts":{"bytes":518,"imports":[{"path":"packages/sdk/shell/src/composites/JoinDialog/JoinDialog.tsx","kind":"import-statement","original":"./JoinDialog"}],"format":"esm"},"packages/sdk/shell/src/composites/SpaceDialog/SpaceDialog.tsx":{"bytes":3754,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"packages/sdk/shell/src/panels/index.ts","kind":"import-statement","original":"../../panels"}],"format":"esm"},"packages/sdk/shell/src/composites/SpaceDialog/index.ts":{"bytes":524,"imports":[{"path":"packages/sdk/shell/src/composites/SpaceDialog/SpaceDialog.tsx","kind":"import-statement","original":"./SpaceDialog"}],"format":"esm"},"packages/sdk/shell/src/composites/StatusDialog/StatusDialog.tsx":{"bytes":2386,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/panels/index.ts","kind":"import-statement","original":"../../panels"}],"format":"esm"},"packages/sdk/shell/src/composites/StatusDialog/index.ts":{"bytes":526,"imports":[{"path":"packages/sdk/shell/src/composites/StatusDialog/StatusDialog.tsx","kind":"import-statement","original":"./StatusDialog"}],"format":"esm"},"packages/sdk/shell/src/composites/Shell/Shell.tsx":{"bytes":22885,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/composites/IdentityDialog/index.ts","kind":"import-statement","original":"../IdentityDialog"},{"path":"packages/sdk/shell/src/composites/JoinDialog/index.ts","kind":"import-statement","original":"../JoinDialog"},{"path":"packages/sdk/shell/src/composites/SpaceDialog/index.ts","kind":"import-statement","original":"../SpaceDialog"},{"path":"packages/sdk/shell/src/composites/StatusDialog/index.ts","kind":"import-statement","original":"../StatusDialog"}],"format":"esm"},"packages/sdk/shell/src/composites/Shell/shell-runtime.ts":{"bytes":13125,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client-protocol","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/iframe","kind":"import-statement","external":true},{"path":"@dxos/rpc","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/translations/locales/en-US.ts":{"bytes":21411,"imports":[],"format":"esm"},"packages/sdk/shell/src/translations/index.ts":{"bytes":761,"imports":[{"path":"packages/sdk/shell/src/translations/locales/en-US.ts","kind":"import-statement","original":"./locales/en-US"}],"format":"esm"},"packages/sdk/shell/src/composites/Shell/run-shell.tsx":{"bytes":9711,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-dom/client","kind":"import-statement","external":true},{"path":"@dxos/client-protocol","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/rpc-tunnel","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/composites/Shell/Shell.tsx","kind":"import-statement","original":"./Shell"},{"path":"packages/sdk/shell/src/composites/Shell/shell-runtime.ts","kind":"import-statement","original":"./shell-runtime"},{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"packages/sdk/shell/src/translations/index.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"packages/sdk/shell/src/composites/Shell/memory-shell-runtime.ts":{"bytes":7869,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/shell/src/composites/Shell/ShellContext.tsx":{"bytes":14772,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/composites/Shell/Shell.tsx","kind":"import-statement","original":"./Shell"},{"path":"packages/sdk/shell/src/composites/Shell/memory-shell-runtime.ts","kind":"import-statement","original":"./memory-shell-runtime"}],"format":"esm"},"packages/sdk/shell/src/composites/Shell/index.ts":{"bytes":693,"imports":[{"path":"packages/sdk/shell/src/composites/Shell/run-shell.tsx","kind":"import-statement","original":"./run-shell"},{"path":"packages/sdk/shell/src/composites/Shell/Shell.tsx","kind":"import-statement","original":"./Shell"},{"path":"packages/sdk/shell/src/composites/Shell/ShellContext.tsx","kind":"import-statement","original":"./ShellContext"}],"format":"esm"},"packages/sdk/shell/src/composites/index.ts":{"bytes":793,"imports":[{"path":"packages/sdk/shell/src/composites/IdentityDialog/index.ts","kind":"import-statement","original":"./IdentityDialog"},{"path":"packages/sdk/shell/src/composites/JoinDialog/index.ts","kind":"import-statement","original":"./JoinDialog"},{"path":"packages/sdk/shell/src/composites/Shell/index.ts","kind":"import-statement","original":"./Shell"},{"path":"packages/sdk/shell/src/composites/SpaceDialog/index.ts","kind":"import-statement","original":"./SpaceDialog"}],"format":"esm"},"packages/sdk/shell/src/react.ts":{"bytes":943,"imports":[{"path":"packages/sdk/shell/src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"packages/sdk/shell/src/composites/index.ts","kind":"import-statement","original":"./composites"},{"path":"packages/sdk/shell/src/panels/index.ts","kind":"import-statement","original":"./panels"},{"path":"packages/sdk/shell/src/steps/index.ts","kind":"import-statement","original":"./steps"},{"path":"packages/sdk/shell/src/styles/index.ts","kind":"import-statement","original":"./styles"},{"path":"packages/sdk/shell/src/translations/index.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/sdk/shell/src/testing/scoped-shell-manager.ts":{"bytes":10453,"imports":[],"format":"esm"},"packages/sdk/shell/src/testing/shell-manager.ts":{"bytes":15363,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"packages/sdk/shell/src/testing/scoped-shell-manager.ts","kind":"import-statement","original":"./scoped-shell-manager"}],"format":"esm"},"packages/sdk/shell/src/testing/index.ts":{"bytes":816,"imports":[{"path":"packages/sdk/shell/src/testing/scoped-shell-manager.ts","kind":"import-statement","original":"./scoped-shell-manager"},{"path":"packages/sdk/shell/src/testing/shell-manager.ts","kind":"import-statement","original":"./shell-manager"}],"format":"esm"}},"outputs":{"packages/sdk/shell/dist/lib/node/react.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":346102},"packages/sdk/shell/dist/lib/node/react.cjs":{"imports":[{"path":"packages/sdk/shell/dist/lib/node/chunk-Q7SFCCGT.cjs","kind":"import-statement"},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@emoji-mart/data","kind":"import-statement","external":true},{"path":"@emoji-mart/react","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"date-fns","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@fluentui/react-tabster","kind":"import-statement","external":true},{"path":"@radix-ui/react-context","kind":"import-statement","external":true},{"path":"@radix-ui/react-use-controllable-state","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@xstate/react","kind":"import-statement","external":true},{"path":"xstate","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-qr-rounded","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@xstate/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"xstate","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/display-name","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@xstate/react","kind":"import-statement","external":true},{"path":"xstate","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@phosphor-icons/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/invitations","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-dom/client","kind":"import-statement","external":true},{"path":"@dxos/client-protocol","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/rpc-tunnel","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client-protocol","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/iframe","kind":"import-statement","external":true},{"path":"@dxos/rpc","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["Action","Actions","AgentConfig","AuthCode","BifurcatedAction","Centered","ClipboardContext","ClipboardProvider","CloseButton","CompoundButton","ConfirmReset","ConfirmResetImpl","CopyButton","CopyButtonIconOnly","DeviceList","Emoji","EmojiPickerBlock","EmojiPickerToolbarButton","Heading","HuePickerBlock","HuePickerToolbarButton","IdentityDialog","IdentityListItem","IdentityPanel","IdentityPanelImpl","Input","InvitationList","InvitationListContainer","InvitationListItem","InvitationListItemImpl","InvitationManager","JoinDialog","JoinPanel","JoinPanelImpl","Label","Shell","ShellContext","ShellProvider","SpaceDialog","SpaceListItem","SpaceMemberList","SpaceMemberListImpl","SpacePanel","SpacePanelImpl","StatusPanel","StepHeading","Viewport","activeBgColor","activeStrokeColor","activeTextColor","cancelledBgColor","cancelledStrokeColor","cancelledTextColor","createViewportScope","errorBgColor","errorStrokeColor","errorTextColor","inactiveBgColor","inactiveStrokeColor","inactiveTextColor","osTranslations","resolvedBgColor","resolvedStrokeColor","resolvedTextColor","runShell","stepStyles","successBgColor","successStrokeColor","successTextColor","useClipboardContext","useShell","useViewportContext"],"entryPoint":"packages/sdk/shell/src/react.ts","cssBundle":"packages/sdk/shell/dist/lib/node/react.css","inputs":{"packages/sdk/shell/src/components/AgentConfig.tsx":{"bytesInOutput":4419},"packages/sdk/shell/src/components/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/Clipboard/CopyButton.tsx":{"bytesInOutput":2802},"packages/sdk/shell/src/components/Clipboard/ClipboardProvider.tsx":{"bytesInOutput":670},"packages/sdk/shell/src/components/Clipboard/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/CompoundButton/CompoundButton.tsx":{"bytesInOutput":1867},"packages/sdk/shell/src/components/CompoundButton/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/EmojiPicker.tsx":{"bytesInOutput":5358},"packages/sdk/shell/src/components/emoji.css":{"bytesInOutput":0},"packages/sdk/shell/src/components/HuePicker.tsx":{"bytesInOutput":5842},"packages/sdk/shell/src/components/IdentityList/IdentityListItem.tsx":{"bytesInOutput":1506},"packages/sdk/shell/src/components/IdentityList/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/IdentityList/SpaceMemberList.tsx":{"bytesInOutput":1750},"packages/sdk/shell/src/components/DeviceList/DeviceList.tsx":{"bytesInOutput":1794},"packages/sdk/shell/src/components/DeviceList/DeviceListItem.tsx":{"bytesInOutput":5366},"packages/sdk/shell/src/components/DeviceList/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/InvitationList/InvitationListItem.tsx":{"bytesInOutput":8037},"packages/sdk/shell/src/components/AuthCode.tsx":{"bytesInOutput":1010},"packages/sdk/shell/src/components/InvitationList/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/InvitationList/InvitationListContainer.tsx":{"bytesInOutput":576},"packages/sdk/shell/src/components/InvitationList/InvitationList.tsx":{"bytesInOutput":633},"packages/sdk/shell/src/components/Panel/Action.tsx":{"bytesInOutput":3864},"packages/sdk/shell/src/components/Panel/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/components/Panel/Actions.tsx":{"bytesInOutput":470},"packages/sdk/shell/src/components/Panel/CloseButton.tsx":{"bytesInOutput":729},"packages/sdk/shell/src/components/Panel/Emoji.tsx":{"bytesInOutput":889},"packages/sdk/shell/src/components/Panel/Heading.tsx":{"bytesInOutput":706},"packages/sdk/shell/src/components/Panel/Label.tsx":{"bytesInOutput":325},"packages/sdk/shell/src/components/Panel/Input.tsx":{"bytesInOutput":581},"packages/sdk/shell/src/components/Panel/StepHeading.tsx":{"bytesInOutput":402},"packages/sdk/shell/src/components/Viewport/Viewport.tsx":{"bytesInOutput":2709},"packages/sdk/shell/src/components/Viewport/index.tsx":{"bytesInOutput":0},"packages/sdk/shell/src/components/SpaceListItem.tsx":{"bytesInOutput":1041},"packages/sdk/shell/src/react.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/IdentityDialog/IdentityDialog.tsx":{"bytesInOutput":851},"packages/sdk/shell/src/panels/IdentityPanel/IdentityPanel.tsx":{"bytesInOutput":13064},"packages/sdk/shell/src/panels/IdentityPanel/identityMachine.ts":{"bytesInOutput":2600},"packages/sdk/shell/src/panels/IdentityPanel/steps/IdentityActionChooser.tsx":{"bytesInOutput":2647},"packages/sdk/shell/src/panels/IdentityPanel/steps/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/IdentityPanel/steps/ProfileForm.tsx":{"bytesInOutput":232},"packages/sdk/shell/src/panels/IdentityPanel/useAgentHandlers.ts":{"bytesInOutput":299},"packages/sdk/shell/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts":{"bytesInOutput":2751},"packages/sdk/shell/src/panels/IdentityPanel/useKubeAgentHandlers.ts":{"bytesInOutput":4176},"packages/sdk/shell/src/steps/InvitationManager.tsx":{"bytesInOutput":3666},"packages/sdk/shell/src/util/invitationStatusValue.ts":{"bytesInOutput":576},"packages/sdk/shell/src/util/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/steps/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/steps/ConfirmReset.tsx":{"bytesInOutput":3233},"packages/sdk/shell/src/panels/IdentityPanel/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/JoinPanel/JoinPanel.tsx":{"bytesInOutput":14984},"packages/sdk/shell/src/panels/JoinPanel/JoinHeading.tsx":{"bytesInOutput":1359},"packages/sdk/shell/src/panels/JoinPanel/joinMachine.ts":{"bytesInOutput":17557},"packages/sdk/shell/src/panels/JoinPanel/steps/AdditionMethodChooser.tsx":{"bytesInOutput":2146},"packages/sdk/shell/src/panels/JoinPanel/steps/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/JoinPanel/steps/IdentityAdded.tsx":{"bytesInOutput":2424},"packages/sdk/shell/src/panels/JoinPanel/steps/IdentityInput.tsx":{"bytesInOutput":3194},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationAccepted.tsx":{"bytesInOutput":133},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationInput.tsx":{"bytesInOutput":2921},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationRescuer.tsx":{"bytesInOutput":2794},"packages/sdk/shell/src/panels/JoinPanel/steps/InvitationAuthenticator.tsx":{"bytesInOutput":3411},"packages/sdk/shell/src/styles/panelStyles.ts":{"bytesInOutput":38},"packages/sdk/shell/src/styles/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/styles/invitationStatusStyles.ts":{"bytesInOutput":1669},"packages/sdk/shell/src/panels/JoinPanel/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/SpacePanel/SpacePanel.tsx":{"bytesInOutput":3915},"packages/sdk/shell/src/panels/SpacePanel/spaceMachine.ts":{"bytesInOutput":1339},"packages/sdk/shell/src/panels/SpacePanel/steps/SpaceManager.tsx":{"bytesInOutput":5347},"packages/sdk/shell/src/panels/SpacePanel/steps/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/SpacePanel/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/panels/StatusPanel/StatusPanel.tsx":{"bytesInOutput":534},"packages/sdk/shell/src/panels/StatusPanel/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/IdentityDialog/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/JoinDialog/JoinDialog.tsx":{"bytesInOutput":1114},"packages/sdk/shell/src/composites/JoinDialog/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/Shell/run-shell.tsx":{"bytesInOutput":2546},"packages/sdk/shell/src/composites/Shell/Shell.tsx":{"bytesInOutput":6213},"packages/sdk/shell/src/composites/SpaceDialog/SpaceDialog.tsx":{"bytesInOutput":827},"packages/sdk/shell/src/composites/SpaceDialog/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/StatusDialog/StatusDialog.tsx":{"bytesInOutput":581},"packages/sdk/shell/src/composites/StatusDialog/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/Shell/shell-runtime.ts":{"bytesInOutput":3159},"packages/sdk/shell/src/translations/locales/en-US.ts":{"bytesInOutput":7697},"packages/sdk/shell/src/translations/index.ts":{"bytesInOutput":51},"packages/sdk/shell/src/composites/Shell/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/composites/Shell/ShellContext.tsx":{"bytesInOutput":3554},"packages/sdk/shell/src/composites/Shell/memory-shell-runtime.ts":{"bytesInOutput":1636}},"bytes":184661},"packages/sdk/shell/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":12717},"packages/sdk/shell/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/sdk/shell/dist/lib/node/chunk-Q7SFCCGT.cjs","kind":"import-statement"},{"path":"@dxos/async","kind":"import-statement","external":true}],"exports":["ScopedShellManager","ShellManager"],"entryPoint":"packages/sdk/shell/src/testing/index.ts","inputs":{"packages/sdk/shell/src/testing/scoped-shell-manager.ts":{"bytesInOutput":2369},"packages/sdk/shell/src/testing/index.ts":{"bytesInOutput":0},"packages/sdk/shell/src/testing/shell-manager.ts":{"bytesInOutput":3495}},"bytes":6091},"packages/sdk/shell/dist/lib/node/chunk-Q7SFCCGT.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/shell/dist/lib/node/chunk-Q7SFCCGT.cjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":235},"packages/sdk/shell/dist/lib/node/react.css.map":{"imports":[],"exports":[],"inputs":{},"bytes":1017},"packages/sdk/shell/dist/lib/node/react.css":{"imports":[],"inputs":{"packages/sdk/shell/src/components/emoji.css":{"bytesInOutput":146}},"bytes":234}}}