@dxos/plugin-client 0.8.1 → 0.8.2-main.12df754

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 (34) hide show
  1. package/dist/lib/browser/{chunk-XZ4TQC56.mjs → chunk-XNV35HZK.mjs} +14 -14
  2. package/dist/lib/browser/chunk-XNV35HZK.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +2 -2
  4. package/dist/lib/browser/{intent-resolver-NCISOZW4.mjs → intent-resolver-Y5GTS7CW.mjs} +2 -2
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/{react-surface-J7SZR2J6.mjs → react-surface-AUZGNKC5.mjs} +2 -2
  7. package/dist/lib/node/{chunk-3JE5BFCT.cjs → chunk-QNZIRU35.cjs} +14 -14
  8. package/dist/lib/node/chunk-QNZIRU35.cjs.map +7 -0
  9. package/dist/lib/node/index.cjs +2 -2
  10. package/dist/lib/node/{intent-resolver-U2576ALY.cjs → intent-resolver-ZFYETGJI.cjs} +9 -9
  11. package/dist/lib/node/meta.json +1 -1
  12. package/dist/lib/node/{react-surface-BSTIXMER.cjs → react-surface-GBPBVXLE.cjs} +17 -17
  13. package/dist/lib/node-esm/{chunk-LZN2UNN7.mjs → chunk-6G43BNMU.mjs} +14 -14
  14. package/dist/lib/node-esm/chunk-6G43BNMU.mjs.map +7 -0
  15. package/dist/lib/node-esm/index.mjs +2 -2
  16. package/dist/lib/node-esm/{intent-resolver-G25U4UGI.mjs → intent-resolver-OVG4QCHK.mjs} +2 -2
  17. package/dist/lib/node-esm/meta.json +1 -1
  18. package/dist/lib/node-esm/{react-surface-ZPI7T4EM.mjs → react-surface-SMPVSOTA.mjs} +2 -2
  19. package/dist/types/src/components/DevicesContainer.d.ts.map +1 -1
  20. package/dist/types/src/components/ProfileContainer.d.ts.map +1 -1
  21. package/dist/types/src/components/RecoveryCredentialsContainer.d.ts.map +1 -1
  22. package/package.json +23 -23
  23. package/src/components/DevicesContainer.tsx +69 -52
  24. package/src/components/ProfileContainer.tsx +23 -14
  25. package/src/components/RecoveryCredentialsContainer.tsx +48 -46
  26. package/dist/lib/browser/chunk-XZ4TQC56.mjs.map +0 -7
  27. package/dist/lib/node/chunk-3JE5BFCT.cjs.map +0 -7
  28. package/dist/lib/node-esm/chunk-LZN2UNN7.mjs.map +0 -7
  29. /package/dist/lib/browser/{intent-resolver-NCISOZW4.mjs.map → intent-resolver-Y5GTS7CW.mjs.map} +0 -0
  30. /package/dist/lib/browser/{react-surface-J7SZR2J6.mjs.map → react-surface-AUZGNKC5.mjs.map} +0 -0
  31. /package/dist/lib/node/{intent-resolver-U2576ALY.cjs.map → intent-resolver-ZFYETGJI.cjs.map} +0 -0
  32. /package/dist/lib/node/{react-surface-BSTIXMER.cjs.map → react-surface-GBPBVXLE.cjs.map} +0 -0
  33. /package/dist/lib/node-esm/{intent-resolver-G25U4UGI.mjs.map → intent-resolver-OVG4QCHK.mjs.map} +0 -0
  34. /package/dist/lib/node-esm/{react-surface-ZPI7T4EM.mjs.map → react-surface-SMPVSOTA.mjs.map} +0 -0
@@ -16,7 +16,7 @@ import { useDevices } from "@dxos/react-client/halo";
16
16
  import { Invitation, InvitationEncoder } from "@dxos/react-client/invitations";
17
17
  import { useNetworkStatus } from "@dxos/react-client/mesh";
18
18
  import { Button, Clipboard, IconButton, List, useId, useTranslation } from "@dxos/react-ui";
19
- import { ControlFrame, ControlFrameItem, ControlGroup, ControlItem, ControlSection } from "@dxos/react-ui-form";
19
+ import { ControlFrame, ControlFrameItem, ControlGroup, ControlItem, ControlPage, ControlSection } from "@dxos/react-ui-form";
20
20
  import { StackItem } from "@dxos/react-ui-stack";
21
21
  import { getSize, mx } from "@dxos/react-ui-theme";
22
22
  import { AuthCode, Centered, DeviceListItem, Emoji, Viewport } from "@dxos/shell/react";
@@ -41,8 +41,8 @@ var DevicesContainer = ({ createInvitationUrl }) => {
41
41
  dispatch
42
42
  ]);
43
43
  return /* @__PURE__ */ React.createElement(Clipboard.Provider, null, /* @__PURE__ */ React.createElement(StackItem.Content, {
44
- classNames: "p-2 block overflow-y-auto"
45
- }, /* @__PURE__ */ React.createElement(ControlSection, {
44
+ classNames: "block overflow-y-auto"
45
+ }, /* @__PURE__ */ React.createElement(ControlPage, null, /* @__PURE__ */ React.createElement(ControlSection, {
46
46
  title: t("devices verbose label", {
47
47
  ns: CLIENT_PLUGIN
48
48
  }),
@@ -97,7 +97,7 @@ var DevicesContainer = ({ createInvitationUrl }) => {
97
97
  variant: "destructive",
98
98
  onClick: handleJoinNewIdentity,
99
99
  "data-testid": "devicesContainer.joinExisting"
100
- }, t("join new identity label")))))));
100
+ }, t("join new identity label"))))))));
101
101
  };
102
102
  var DeviceInvitation = (props) => {
103
103
  const client = useClient();
@@ -113,7 +113,7 @@ var DeviceInvitation = (props) => {
113
113
  authCode: invitation3.authCode
114
114
  }), void 0, {
115
115
  F: __dxlog_file,
116
- L: 122,
116
+ L: 139,
117
117
  S: void 0,
118
118
  C: (f, a) => f(...a)
119
119
  });
@@ -311,7 +311,7 @@ import { debounce } from "@dxos/async";
311
311
  import { useClient as useClient2 } from "@dxos/react-client";
312
312
  import { useIdentity } from "@dxos/react-client/halo";
313
313
  import { ButtonGroup, Clipboard as Clipboard2, Input, useTranslation as useTranslation3 } from "@dxos/react-ui";
314
- import { Form, ControlItem as ControlItem2, ControlItemInput, ControlSection as ControlSection2 } from "@dxos/react-ui-form";
314
+ import { Form, ControlItem as ControlItem2, ControlItemInput, ControlSection as ControlSection2, ControlPage as ControlPage2 } from "@dxos/react-ui-form";
315
315
  import { EmojiPickerBlock, HuePicker } from "@dxos/react-ui-pickers";
316
316
  import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
317
317
  import { hexToHue, hexToEmoji as hexToEmoji2 } from "@dxos/util";
@@ -424,8 +424,8 @@ var ProfileContainer = () => {
424
424
  t
425
425
  ]);
426
426
  return /* @__PURE__ */ React3.createElement(StackItem2.Content, {
427
- classNames: "p-2 block overflow-y-auto"
428
- }, /* @__PURE__ */ React3.createElement(Clipboard2.Provider, null, /* @__PURE__ */ React3.createElement(ControlSection2, {
427
+ classNames: "block overflow-y-auto"
428
+ }, /* @__PURE__ */ React3.createElement(ControlPage2, null, /* @__PURE__ */ React3.createElement(Clipboard2.Provider, null, /* @__PURE__ */ React3.createElement(ControlSection2, {
429
429
  title: t("profile label"),
430
430
  description: t("profile description")
431
431
  }, /* @__PURE__ */ React3.createElement(Form, {
@@ -435,7 +435,7 @@ var ProfileContainer = () => {
435
435
  onSave: handleSave,
436
436
  Custom: customElements,
437
437
  classNames: 'p-0 container-max-width [&_[role="form"]]:grid [&_[role="form"]]:grid-cols-1 md:[&_[role="form"]]:grid-cols-[1fr_min-content] [&_[role="form"]]:gap-4'
438
- }))));
438
+ })))));
439
439
  };
440
440
  var ProfileSchema = S.Struct({
441
441
  displayName: S.String.annotations({
@@ -508,7 +508,7 @@ import React5 from "react";
508
508
  import { createIntent as createIntent3, useIntentDispatcher as useIntentDispatcher3 } from "@dxos/app-framework";
509
509
  import { useCredentials } from "@dxos/react-client/halo";
510
510
  import { Icon, IconButton as IconButton2, List as List2, ListItem, useTranslation as useTranslation5, Message } from "@dxos/react-ui";
511
- import { ControlGroup as ControlGroup2, ControlItem as ControlItem3, ControlSection as ControlSection3 } from "@dxos/react-ui-form";
511
+ import { ControlGroup as ControlGroup2, ControlItem as ControlItem3, ControlPage as ControlPage3, ControlSection as ControlSection3 } from "@dxos/react-ui-form";
512
512
  import { StackItem as StackItem3 } from "@dxos/react-ui-stack";
513
513
  var MANAGE_CREDENTIALS_DIALOG = `${CLIENT_PLUGIN}/ManageCredentialsDialog`;
514
514
  var RecoveryCredentialsContainer = () => {
@@ -517,8 +517,8 @@ var RecoveryCredentialsContainer = () => {
517
517
  const credentials = useCredentials();
518
518
  const recoveryCredentials = credentials.filter((credential) => credential.subject.assertion["@type"] === "dxos.halo.credentials.IdentityRecovery");
519
519
  return /* @__PURE__ */ React5.createElement(StackItem3.Content, {
520
- classNames: "p-2 block overflow-y-auto"
521
- }, /* @__PURE__ */ React5.createElement(ControlSection3, {
520
+ classNames: "block overflow-y-auto"
521
+ }, /* @__PURE__ */ React5.createElement(ControlPage3, null, /* @__PURE__ */ React5.createElement(ControlSection3, {
522
522
  title: t("recovery setup dialog title"),
523
523
  description: t("recovery setup dialog description")
524
524
  }, /* @__PURE__ */ React5.createElement(ControlGroup2, null, /* @__PURE__ */ React5.createElement(ControlItem3, {
@@ -555,7 +555,7 @@ var RecoveryCredentialsContainer = () => {
555
555
  }, /* @__PURE__ */ React5.createElement(ListItem.Endcap, null, /* @__PURE__ */ React5.createElement(Icon, {
556
556
  icon: "ph--key--regular",
557
557
  size: 5
558
- })), /* @__PURE__ */ React5.createElement(ListItem.Heading, null, credential.issuanceDate.toLocaleString()))))));
558
+ })), /* @__PURE__ */ React5.createElement(ListItem.Heading, null, credential.issuanceDate.toLocaleString())))))));
559
559
  };
560
560
 
561
561
  // packages/plugins/plugin-client/src/components/ResetDialog.tsx
@@ -616,4 +616,4 @@ export {
616
616
  RESET_DIALOG,
617
617
  ResetDialog
618
618
  };
619
- //# sourceMappingURL=chunk-XZ4TQC56.mjs.map
619
+ //# sourceMappingURL=chunk-XNV35HZK.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/DevicesContainer.tsx", "../../../src/components/JoinDialog.tsx", "../../../src/components/ProfileContainer.tsx", "../../../src/components/RecoveryCodeDialog.tsx", "../../../src/components/RecoveryCredentialsContainer.tsx", "../../../src/components/ResetDialog.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Check, X } from '@phosphor-icons/react';\nimport React, { useCallback, useEffect, useState } from 'react';\nimport { QR } from 'react-qr-rounded';\n\nimport { createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { log } from '@dxos/log';\nimport { useClient, useMulticastObservable } from '@dxos/react-client';\nimport { type Device, useDevices } from '@dxos/react-client/halo';\nimport { type CancellableInvitationObservable, Invitation, InvitationEncoder } from '@dxos/react-client/invitations';\nimport { useNetworkStatus } from '@dxos/react-client/mesh';\nimport { Button, Clipboard, IconButton, List, useId, useTranslation } from '@dxos/react-ui';\nimport {\n ControlFrame,\n ControlFrameItem,\n ControlGroup,\n ControlItem,\n ControlPage,\n ControlSection,\n} from '@dxos/react-ui-form';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { getSize, mx } from '@dxos/react-ui-theme';\nimport { AuthCode, Centered, DeviceListItem, Emoji, Viewport } from '@dxos/shell/react';\nimport { hexToEmoji } from '@dxos/util';\n\nimport { CLIENT_PLUGIN } from '../meta';\nimport { ClientAction } from '../types';\n\nexport const DevicesContainer = ({\n createInvitationUrl,\n}: {\n createInvitationUrl: (invitationCode: string) => string;\n}) => {\n const { t } = useTranslation('os');\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const devices = useDevices();\n const { swarm: connectionState } = useNetworkStatus();\n\n const handleResetStorage = useCallback(() => dispatch(createIntent(ClientAction.ResetStorage)), [dispatch]);\n\n const handleRecover = useCallback(\n () => dispatch(createIntent(ClientAction.ResetStorage, { mode: 'recover' })),\n [dispatch],\n );\n\n const handleJoinNewIdentity = useCallback(\n () => dispatch(createIntent(ClientAction.ResetStorage, { mode: 'join new identity' })),\n [dispatch],\n );\n\n return (\n <Clipboard.Provider>\n <StackItem.Content classNames='block overflow-y-auto'>\n <ControlPage>\n <ControlSection\n title={t('devices verbose label', { ns: CLIENT_PLUGIN })}\n description={t('devices description', { ns: CLIENT_PLUGIN })}\n >\n <ControlFrame>\n <ControlFrameItem title={t('devices label', { ns: CLIENT_PLUGIN })}>\n <List>\n {devices.map((device: Device) => {\n return (\n <DeviceListItem\n key={device.deviceKey.toHex()}\n device={device}\n connectionState={connectionState}\n />\n );\n })}\n </List>\n </ControlFrameItem>\n <ControlFrameItem title='Add device'>\n <DeviceInvitation createInvitationUrl={createInvitationUrl} />\n </ControlFrameItem>\n </ControlFrame>\n </ControlSection>\n <ControlSection\n title={t('danger zone title', { ns: CLIENT_PLUGIN })}\n description={t('danger zone description', { ns: CLIENT_PLUGIN })}\n >\n <ControlGroup>\n <ControlItem\n title={t('reset device label')}\n description={t('reset device description', { ns: CLIENT_PLUGIN })}\n >\n <Button variant='destructive' onClick={handleResetStorage} data-testid='devicesContainer.reset'>\n {t('reset device label')}\n </Button>\n </ControlItem>\n <ControlItem\n title={t('recover identity label')}\n description={t('recover identity description', { ns: CLIENT_PLUGIN })}\n >\n <Button variant='destructive' onClick={handleRecover} data-testid='devicesContainer.recover'>\n {t('recover identity label')}\n </Button>\n </ControlItem>\n <ControlItem\n title={t('join new identity label')}\n description={t('join new identity description', { ns: CLIENT_PLUGIN })}\n >\n <Button\n variant='destructive'\n onClick={handleJoinNewIdentity}\n data-testid='devicesContainer.joinExisting'\n >\n {t('join new identity label')}\n </Button>\n </ControlItem>\n </ControlGroup>\n </ControlSection>\n </ControlPage>\n </StackItem.Content>\n </Clipboard.Provider>\n );\n};\n\ntype DeviceInvitationProps = {\n invitation?: CancellableInvitationObservable;\n createInvitationUrl: (invitationCode: string) => string;\n onInvitationDone: () => void;\n onInvitationCreate: () => void;\n};\n\nconst DeviceInvitation = (props: Pick<DeviceInvitationProps, 'createInvitationUrl'>) => {\n const client = useClient();\n const [invitation, setInvitation] = useState<CancellableInvitationObservable>();\n\n const onInvitationCreate = useCallback(() => {\n const invitation = client.halo.share();\n if (client.config.values.runtime?.app?.env?.DX_ENVIRONMENT !== 'production') {\n const subscription = invitation.subscribe((invitation: Invitation) => {\n const invitationCode = InvitationEncoder.encode(invitation);\n if (invitation.state === Invitation.State.CONNECTING) {\n log.info(JSON.stringify({ invitationCode, authCode: invitation.authCode }));\n subscription.unsubscribe();\n }\n });\n }\n setInvitation(invitation);\n }, [client]);\n\n const onInvitationDone = useCallback(() => {\n setInvitation(undefined);\n }, []);\n\n if (invitation) {\n return <DeviceInvitationImpl {...props} {...{ invitation, onInvitationCreate, onInvitationDone }} />;\n } else {\n return <InvitationSection {...props} {...{ onInvitationCreate, onInvitationDone }} />;\n }\n};\n\nconst DeviceInvitationImpl = ({\n invitation: invitationObservable,\n createInvitationUrl,\n onInvitationDone,\n onInvitationCreate,\n}: DeviceInvitationProps) => {\n const invitation = useMulticastObservable(invitationObservable!);\n const url = createInvitationUrl(InvitationEncoder.encode(invitation));\n\n useEffect(() => {\n if (invitation.state >= Invitation.State.SUCCESS) {\n onInvitationDone();\n }\n }, [invitation.state]);\n\n return <InvitationSection {...invitation} {...{ url, onInvitationDone, onInvitationCreate }} />;\n};\n\ntype InvitationComponentProps = Partial<\n Pick<Invitation, 'authCode' | 'invitationId'> &\n Pick<DeviceInvitationProps, 'onInvitationDone' | 'onInvitationCreate'> & {\n state: number;\n url: string;\n }\n>;\n\nconst InvitationSection = ({\n state = -1,\n authCode,\n invitationId = 'never',\n url = 'never',\n onInvitationDone = () => {},\n onInvitationCreate = () => {},\n}: InvitationComponentProps) => {\n const { t } = useTranslation(CLIENT_PLUGIN);\n const activeView =\n state < 0\n ? 'init'\n : state >= Invitation.State.CANCELLED\n ? 'complete'\n : state >= Invitation.State.READY_FOR_AUTHENTICATION && authCode\n ? 'auth-code'\n : 'qr-code';\n return activeView === 'init' ? (\n <>\n <p className='text-description mbe-2'>{t('add device description')}</p>\n <IconButton\n icon='ph--plus--regular'\n label={t('create device invitation label')}\n disabled={state >= 0}\n classNames='is-full'\n data-testid='devicesContainer.createInvitation'\n onClick={onInvitationCreate}\n />\n </>\n ) : (\n <Viewport.Root activeView={activeView}>\n <Viewport.Views>\n <Viewport.View id='init'>\n {/* This view intentionally left blank while conditionally rendering the viewport. */}\n </Viewport.View>\n <Viewport.View id='complete'>\n <InvitationComplete statusValue={state} />\n </Viewport.View>\n <Viewport.View id='auth-code'>\n <InvitationAuthCode id={invitationId} code={authCode ?? 'never'} onCancel={onInvitationDone} />\n </Viewport.View>\n <Viewport.View id='qr-code'>\n <InvitationQR id={invitationId} url={url} onCancel={onInvitationDone} />\n </Viewport.View>\n </Viewport.Views>\n </Viewport.Root>\n );\n};\n\nconst InvitationQR = ({ id, url, onCancel }: { id: string; url: string; onCancel: () => void }) => {\n const { t } = useTranslation('os');\n const qrLabel = useId('devices-container__qr-code');\n const emoji = hexToEmoji(id);\n return (\n <>\n <p className='text-description'>{t('qr code description', { ns: CLIENT_PLUGIN })}</p>\n <div role='group' className='grid grid-cols-[1fr_min-content] mlb-2 gap-2'>\n <div role='none' className='is-full aspect-square relative text-description'>\n <QR\n rounding={100}\n backgroundColor='transparent'\n color='currentColor'\n aria-labelledby={qrLabel}\n errorCorrectionLevel='Q'\n cutout={true}\n >\n {url ?? 'never'}\n </QR>\n <Centered>\n <Emoji text={emoji} />\n </Centered>\n </div>\n <span id={qrLabel} className='sr-only'>\n {t('qr label')}\n </span>\n <Clipboard.Button value={url ?? 'never'} />\n </div>\n <Button variant='ghost' onClick={onCancel}>\n {t('cancel label')}\n </Button>\n </>\n );\n};\n\nconst InvitationAuthCode = ({ id, code, onCancel }: { id: string; code: string; onCancel: () => void }) => {\n const { t } = useTranslation('os');\n const emoji = hexToEmoji(id);\n\n return (\n <>\n <p className='text-description'>{t('auth other device emoji message')}</p>\n {emoji && <Emoji text={emoji} className='mli-auto mlb-2 text-center' />}\n <p className='text-description'>{t('auth code message')}</p>\n <AuthCode code={code} large classNames='mli-auto mlb-2 text-center grow' />\n <Button variant='ghost' onClick={onCancel}>\n {t('cancel label')}\n </Button>\n </>\n );\n};\n\nconst InvitationComplete = ({ statusValue }: { statusValue: number }) => {\n return statusValue > 0 ? <Check className={mx('m-1.5', getSize(6))} /> : <X className={mx('m-1.5', getSize(6))} />;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { type InvitationResult } from '@dxos/react-client/invitations';\nimport { Dialog, useTranslation } from '@dxos/react-ui';\nimport { JoinPanel, type JoinPanelProps } from '@dxos/shell/react';\n\nimport { CLIENT_PLUGIN } from '../meta';\nimport { ClientAction } from '../types';\n\nexport const JOIN_DIALOG = `${CLIENT_PLUGIN}/JoinDialog`;\n\nexport const JoinDialog = (props: JoinPanelProps) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const { t } = useTranslation(CLIENT_PLUGIN);\n\n const handleCancelResetStorage = useCallback(() => dispatch(createIntent(ClientAction.ShareIdentity)), [dispatch]);\n\n const handleDone = useCallback(\n async (result: InvitationResult | null) => {\n if (result?.identityKey) {\n await Promise.all([\n dispatch(createIntent(LayoutAction.UpdateDialog, { part: 'dialog', options: { state: false } })),\n dispatch(\n createIntent(ObservabilityAction.SendEvent, {\n name: props.initialDisposition === 'recover-identity' ? 'identity.recover' : 'identity.join',\n }),\n ),\n ]);\n }\n },\n [dispatch],\n );\n\n return (\n <Dialog.Content>\n <Dialog.Title classNames='sr-only'>{t('join space label', { ns: 'os' })}</Dialog.Title>\n <JoinPanel\n mode='halo-only'\n {...props}\n exitActionParent={<Dialog.Close asChild />}\n doneActionParent={<Dialog.Close asChild />}\n onCancelResetStorage={handleCancelResetStorage}\n onDone={handleDone}\n />\n </Dialog.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema as S } from 'effect';\nimport React, { type ChangeEvent, useCallback, useMemo, useState } from 'react';\n\nimport { debounce } from '@dxos/async';\nimport { useClient } from '@dxos/react-client';\nimport { type Identity, useIdentity } from '@dxos/react-client/halo';\nimport { ButtonGroup, Clipboard, Input, useTranslation } from '@dxos/react-ui';\nimport {\n Form,\n type InputComponent,\n ControlItem,\n ControlItemInput,\n ControlSection,\n ControlPage,\n} from '@dxos/react-ui-form';\nimport { EmojiPickerBlock, HuePicker } from '@dxos/react-ui-pickers';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { hexToHue, hexToEmoji } from '@dxos/util';\n\nimport { CLIENT_PLUGIN } from '../meta';\n\n// TODO(thure): Factor out?\nconst getDefaultHueValue = (identity: Identity | null) => hexToHue(identity?.identityKey.toHex() ?? '0');\nconst getDefaultEmojiValue = (identity: Identity | null) => hexToEmoji(identity?.identityKey.toHex() ?? '0');\nconst getHueValue = (identity: Identity | null) => identity?.profile?.data?.hue || getDefaultHueValue(identity);\nconst getEmojiValue = (identity: Identity | null) => identity?.profile?.data?.emoji || getDefaultEmojiValue(identity);\n\nexport const ProfileContainer = () => {\n const { t } = useTranslation(CLIENT_PLUGIN);\n const client = useClient();\n const identity = useIdentity();\n const [displayName, setDisplayNameDirectly] = useState(identity?.profile?.displayName ?? '');\n const [emoji, setEmojiDirectly] = useState<string>(getEmojiValue(identity));\n const [hue, setHueDirectly] = useState<string>(getHueValue(identity));\n\n const updateProfile = useMemo(\n () =>\n debounce(\n (profile: Partial<Profile>) =>\n client.halo.updateProfile({\n displayName: profile.displayName,\n data: {\n emoji: profile.emoji,\n hue: profile.hue,\n },\n }),\n 2_000,\n ),\n [],\n );\n\n const handleSave = useCallback(\n (profile: Profile) => {\n setDisplayNameDirectly(profile.displayName);\n setEmojiDirectly(profile.emoji);\n setHueDirectly(profile.hue);\n updateProfile(profile);\n },\n [identity],\n );\n\n const values = useMemo(\n () => ({\n displayName,\n emoji,\n hue,\n did: identity?.did,\n }),\n [identity, displayName, emoji, hue],\n );\n\n // TODO(wittjosiah): Integrate descriptions with the form schema.\n const customElements: Partial<Record<string, InputComponent>> = useMemo(\n () => ({\n displayName: ({ type, label, getValue, onValueChange }) => {\n const handleChange = useCallback(\n ({ target: { value } }: ChangeEvent<HTMLInputElement>) => onValueChange(type, value),\n [onValueChange, type],\n );\n return (\n <ControlItemInput title={label} description={t('display name description')}>\n <Input.TextInput\n value={getValue()}\n onChange={handleChange}\n placeholder={t('display name input placeholder')}\n classNames='min-is-64'\n />\n </ControlItemInput>\n );\n },\n emoji: ({ type, label, getValue, onValueChange }) => {\n const handleChange = useCallback((nextEmoji: string) => onValueChange(type, nextEmoji), [onValueChange, type]);\n const handleEmojiReset = useCallback(\n () => onValueChange(type, getDefaultEmojiValue(identity)),\n [onValueChange, type],\n );\n return (\n <ControlItem title={label} description={t('icon description')}>\n <EmojiPickerBlock\n triggerVariant='default'\n emoji={getValue()}\n onChangeEmoji={handleChange}\n onClickClear={handleEmojiReset}\n classNames='justify-self-end'\n />\n </ControlItem>\n );\n },\n hue: ({ type, label, getValue, onValueChange }) => {\n const handleChange = useCallback((nextHue: string) => onValueChange(type, nextHue), [onValueChange, type]);\n const handleHueReset = useCallback(\n () => onValueChange(type, getDefaultHueValue(identity)),\n [onValueChange, type],\n );\n return (\n <ControlItem title={label} description={t('hue description')}>\n <HuePicker\n value={getValue()}\n onChange={handleChange}\n onReset={handleHueReset}\n classNames='[--hue-preview-size:1.5rem] justify-self-end'\n />\n </ControlItem>\n );\n },\n // TODO(wittjosiah): We need text input annotations for disabled and copyable.\n did: ({ label, getValue }) => {\n return (\n <ControlItemInput title={label} description={t('did description')}>\n <ButtonGroup>\n <Input.TextInput value={getValue()} disabled classNames='min-is-64' />\n <Clipboard.IconButton value={getValue() ?? ''} />\n </ButtonGroup>\n </ControlItemInput>\n );\n },\n }),\n [t],\n );\n\n return (\n <StackItem.Content classNames='block overflow-y-auto'>\n <ControlPage>\n <Clipboard.Provider>\n <ControlSection title={t('profile label')} description={t('profile description')}>\n <Form\n schema={ProfileSchema}\n values={values}\n autoSave\n onSave={handleSave}\n Custom={customElements}\n classNames='p-0 container-max-width [&_[role=\"form\"]]:grid [&_[role=\"form\"]]:grid-cols-1 md:[&_[role=\"form\"]]:grid-cols-[1fr_min-content] [&_[role=\"form\"]]:gap-4'\n />\n </ControlSection>\n </Clipboard.Provider>\n </ControlPage>\n </StackItem.Content>\n );\n};\n\n// TODO(wittjosiah): Integrate annotations with translations.\nconst ProfileSchema = S.Struct({\n displayName: S.String.annotations({ title: 'Display name' }),\n emoji: S.String.annotations({ title: 'Avatar' }),\n hue: S.String.annotations({ title: 'Color' }),\n did: S.String.annotations({ title: 'DID' }),\n});\ntype Profile = S.Schema.Type<typeof ProfileSchema>;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback, useState } from 'react';\n\nimport { AlertDialog, Button, Clipboard, Input, useTranslation } from '@dxos/react-ui';\n\nimport { CLIENT_PLUGIN } from '../meta';\n\nexport const RECOVERY_CODE_DIALOG = `${CLIENT_PLUGIN}/RecoveryCodeDialog`;\n\nexport type RecoveryCodeDialogProps = {\n code: string;\n};\n\nexport const RecoveryCodeDialog = ({ code }: RecoveryCodeDialogProps) => {\n const { t } = useTranslation(CLIENT_PLUGIN);\n const [confirmation, setConfirmation] = useState(false);\n\n const handleConfirmation = useCallback((checked: boolean) => setConfirmation(checked), []);\n\n return (\n <AlertDialog.Content classNames='bs-content min-bs-[15rem] max-bs-full md:max-is-[40rem] overflow-hidden'>\n <AlertDialog.Title>{t('recovery code dialog title')}</AlertDialog.Title>\n <p className='py-4'>{t('recovery code dialog description')}</p>\n <Clipboard.Provider>\n <Code code={code} />\n </Clipboard.Provider>\n <div className='flex flex-col py-4 gap-2'>\n <p>{t('recovery code dialog warning 1')}</p>\n <p>{t('recovery code dialog warning 2')}</p>\n </div>\n <div className='flex items-center gap-2 pbe-4'>\n <Input.Root>\n <Input.Checkbox\n data-testid='recoveryCode.confirm'\n checked={confirmation}\n onCheckedChange={handleConfirmation}\n />\n <Input.Label>{t('recovery code confirmation label')}</Input.Label>\n </Input.Root>\n </div>\n <div className='flex justify-end'>\n <AlertDialog.Action asChild>\n <Button data-testid='recoveryCode.continue' variant='primary' disabled={!confirmation}>\n {t('continue label')}\n </Button>\n </AlertDialog.Action>\n </div>\n </AlertDialog.Content>\n );\n};\n\nconst Code = ({ code }: { code: string }) => {\n const words = code.split(' ');\n return (\n <div className='relative p-2 border border-separator rounded group'>\n <Clipboard.IconButton value={code} classNames='absolute top-2 right-2 invisible group-hover:visible' />\n <div className='grid grid-cols-4'>\n {words.map((word, i) => (\n <div key={i} className='flex items-center p-2 gap-2'>\n <div className='w-4 text-xs text-center text-subdued'>{i + 1}</div>\n <div className='text-sm'>{word}</div>\n </div>\n ))}\n </div>\n </div>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { useCredentials } from '@dxos/react-client/halo';\nimport { Icon, IconButton, List, ListItem, useTranslation, Message } from '@dxos/react-ui';\nimport { ControlGroup, ControlItem, ControlPage, ControlSection } from '@dxos/react-ui-form';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { CLIENT_PLUGIN } from '../meta';\nimport { ClientAction } from '../types';\n\nexport const MANAGE_CREDENTIALS_DIALOG = `${CLIENT_PLUGIN}/ManageCredentialsDialog`;\n\nexport const RecoveryCredentialsContainer = () => {\n const { t } = useTranslation(CLIENT_PLUGIN);\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const credentials = useCredentials();\n const recoveryCredentials = credentials.filter(\n (credential) => credential.subject.assertion['@type'] === 'dxos.halo.credentials.IdentityRecovery',\n );\n\n return (\n <StackItem.Content classNames='block overflow-y-auto'>\n <ControlPage>\n <ControlSection title={t('recovery setup dialog title')} description={t('recovery setup dialog description')}>\n <ControlGroup>\n <ControlItem title={t('create passkey label')} description={t('create passkey description')}>\n <IconButton\n label={t('create passkey label')}\n icon='ph--key--duotone'\n variant='primary'\n size={5}\n onClick={() => dispatch(createIntent(ClientAction.CreatePasskey))}\n />\n </ControlItem>\n <ControlItem title={t('create recovery code label')} description={t('create recovery code description')}>\n <IconButton\n label={t('create recovery code label')}\n icon='ph--receipt--duotone'\n variant='default'\n size={5}\n onClick={() => dispatch(createIntent(ClientAction.CreateRecoveryCode))}\n />\n </ControlItem>\n </ControlGroup>\n </ControlSection>\n <ControlSection title={t('credentials list label')}>\n {recoveryCredentials.length < 1 ? (\n <Message.Root valence='error' className='container-max-width'>\n <Message.Title>\n <Icon icon='ph--shield-warning--duotone' size={5} classNames='inline-block align-top mbs-px mie-1' />\n {t('no credentials title')}\n </Message.Title>\n <Message.Body>{t('no credentials message')}</Message.Body>\n </Message.Root>\n ) : (\n <List classNames='container-max-width pli-2'>\n {recoveryCredentials.map((credential) => (\n <ListItem.Root key={credential.id?.toHex()}>\n <ListItem.Endcap>\n <Icon icon='ph--key--regular' size={5} />\n </ListItem.Endcap>\n <ListItem.Heading>{credential.issuanceDate.toLocaleString()}</ListItem.Heading>\n </ListItem.Root>\n ))}\n </List>\n )}\n </ControlSection>\n </ControlPage>\n </StackItem.Content>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { createIntent, LayoutAction, useIntentDispatcher } from '@dxos/app-framework';\nimport { useClient } from '@dxos/react-client';\nimport { Dialog, useTranslation } from '@dxos/react-ui';\nimport { ConfirmReset, type ConfirmResetProps } from '@dxos/shell/react';\n\nimport { CLIENT_PLUGIN } from '../meta';\nimport { type ClientPluginOptions } from '../types';\n\nexport const RESET_DIALOG = `${CLIENT_PLUGIN}/ResetDialog`;\n\nexport type ResetDialogProps = Pick<ConfirmResetProps, 'mode'> & Pick<ClientPluginOptions, 'onReset'>;\n\nexport const ResetDialog = ({ mode, onReset }: ResetDialogProps) => {\n const { t } = useTranslation(CLIENT_PLUGIN);\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const client = useClient();\n\n const handleReset = useCallback(async () => {\n await client.reset();\n const target =\n mode === 'join new identity' ? 'deviceInvitation' : mode === 'recover' ? 'recoverIdentity' : undefined;\n await onReset?.({ target });\n }, [dispatch, client, mode, onReset]);\n\n const handleCancel = useCallback(() => {\n void dispatch(\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n options: { state: false },\n }),\n );\n }, [dispatch]);\n\n // TODO(wittjosiah): Add the sr-only translations.\n // TODO(wittjosiah): Add missing descriptions to other dialogs.\n return (\n <Dialog.Content classNames='bs-content min-bs-[15rem] max-bs-full md:max-is-[40rem] overflow-hidden'>\n <Dialog.Title classNames='sr-only'>{t('reset dialog title')}</Dialog.Title>\n <Dialog.Description classNames='sr-only'>{t('reset dialog description')}</Dialog.Description>\n <ConfirmReset active mode={mode} onConfirm={handleReset} onCancel={handleCancel} />\n </Dialog.Content>\n );\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Check", "X", "React", "useCallback", "useEffect", "useState", "QR", "createIntent", "useIntentDispatcher", "log", "useClient", "useMulticastObservable", "useDevices", "Invitation", "InvitationEncoder", "useNetworkStatus", "Button", "Clipboard", "IconButton", "List", "useId", "useTranslation", "ControlFrame", "ControlFrameItem", "ControlGroup", "ControlItem", "ControlPage", "ControlSection", "StackItem", "getSize", "mx", "AuthCode", "Centered", "DeviceListItem", "Emoji", "Viewport", "hexToEmoji", "DevicesContainer", "createInvitationUrl", "t", "useTranslation", "dispatchPromise", "dispatch", "useIntentDispatcher", "devices", "useDevices", "swarm", "connectionState", "useNetworkStatus", "handleResetStorage", "useCallback", "createIntent", "ClientAction", "ResetStorage", "handleRecover", "mode", "handleJoinNewIdentity", "Clipboard", "Provider", "StackItem", "Content", "classNames", "ControlPage", "ControlSection", "title", "ns", "CLIENT_PLUGIN", "description", "ControlFrame", "ControlFrameItem", "List", "map", "device", "DeviceListItem", "key", "deviceKey", "toHex", "DeviceInvitation", "ControlGroup", "ControlItem", "Button", "variant", "onClick", "data-testid", "props", "client", "useClient", "invitation", "setInvitation", "useState", "onInvitationCreate", "halo", "share", "config", "values", "runtime", "app", "env", "DX_ENVIRONMENT", "subscription", "subscribe", "invitationCode", "InvitationEncoder", "encode", "state", "Invitation", "State", "CONNECTING", "log", "info", "JSON", "stringify", "authCode", "unsubscribe", "onInvitationDone", "undefined", "DeviceInvitationImpl", "InvitationSection", "invitationObservable", "useMulticastObservable", "url", "useEffect", "SUCCESS", "invitationId", "activeView", "CANCELLED", "READY_FOR_AUTHENTICATION", "p", "className", "IconButton", "icon", "label", "disabled", "Viewport", "Root", "Views", "View", "id", "InvitationComplete", "statusValue", "InvitationAuthCode", "code", "onCancel", "InvitationQR", "qrLabel", "useId", "emoji", "hexToEmoji", "div", "role", "QR", "rounding", "backgroundColor", "color", "aria-labelledby", "errorCorrectionLevel", "cutout", "Centered", "Emoji", "text", "span", "value", "AuthCode", "large", "Check", "mx", "getSize", "X", "React", "useCallback", "createIntent", "LayoutAction", "useIntentDispatcher", "ObservabilityAction", "Dialog", "useTranslation", "JoinPanel", "JOIN_DIALOG", "CLIENT_PLUGIN", "JoinDialog", "props", "dispatchPromise", "dispatch", "useIntentDispatcher", "t", "useTranslation", "handleCancelResetStorage", "useCallback", "createIntent", "ClientAction", "ShareIdentity", "handleDone", "result", "identityKey", "Promise", "all", "LayoutAction", "UpdateDialog", "part", "options", "state", "ObservabilityAction", "SendEvent", "name", "initialDisposition", "React", "Dialog", "Content", "Title", "classNames", "ns", "JoinPanel", "mode", "exitActionParent", "Close", "asChild", "doneActionParent", "onCancelResetStorage", "onDone", "Schema", "S", "React", "useCallback", "useMemo", "useState", "debounce", "useClient", "useIdentity", "ButtonGroup", "Clipboard", "Input", "useTranslation", "Form", "ControlItem", "ControlItemInput", "ControlSection", "ControlPage", "EmojiPickerBlock", "HuePicker", "StackItem", "hexToHue", "hexToEmoji", "getDefaultHueValue", "identity", "hexToHue", "identityKey", "toHex", "getDefaultEmojiValue", "hexToEmoji", "getHueValue", "profile", "data", "hue", "getEmojiValue", "emoji", "ProfileContainer", "t", "useTranslation", "CLIENT_PLUGIN", "client", "useClient", "useIdentity", "displayName", "setDisplayNameDirectly", "useState", "setEmojiDirectly", "setHueDirectly", "updateProfile", "useMemo", "debounce", "halo", "handleSave", "useCallback", "values", "did", "customElements", "type", "label", "getValue", "onValueChange", "handleChange", "target", "value", "React", "ControlItemInput", "title", "description", "Input", "TextInput", "onChange", "placeholder", "classNames", "nextEmoji", "handleEmojiReset", "ControlItem", "EmojiPickerBlock", "triggerVariant", "onChangeEmoji", "onClickClear", "nextHue", "handleHueReset", "HuePicker", "onReset", "ButtonGroup", "disabled", "Clipboard", "IconButton", "StackItem", "Content", "ControlPage", "Provider", "ControlSection", "Form", "schema", "ProfileSchema", "autoSave", "onSave", "Custom", "S", "Struct", "String", "annotations", "React", "useCallback", "useState", "AlertDialog", "Button", "Clipboard", "Input", "useTranslation", "RECOVERY_CODE_DIALOG", "CLIENT_PLUGIN", "RecoveryCodeDialog", "code", "t", "useTranslation", "confirmation", "setConfirmation", "useState", "handleConfirmation", "useCallback", "checked", "React", "AlertDialog", "Content", "classNames", "Title", "p", "className", "Clipboard", "Provider", "Code", "div", "Input", "Root", "Checkbox", "data-testid", "onCheckedChange", "Label", "Action", "asChild", "Button", "variant", "disabled", "words", "split", "IconButton", "value", "map", "word", "i", "key", "React", "createIntent", "useIntentDispatcher", "useCredentials", "Icon", "IconButton", "List", "ListItem", "useTranslation", "Message", "ControlGroup", "ControlItem", "ControlPage", "ControlSection", "StackItem", "MANAGE_CREDENTIALS_DIALOG", "CLIENT_PLUGIN", "RecoveryCredentialsContainer", "t", "useTranslation", "dispatchPromise", "dispatch", "useIntentDispatcher", "credentials", "useCredentials", "recoveryCredentials", "filter", "credential", "subject", "assertion", "React", "StackItem", "Content", "classNames", "ControlPage", "ControlSection", "title", "description", "ControlGroup", "ControlItem", "IconButton", "label", "icon", "variant", "size", "onClick", "createIntent", "ClientAction", "CreatePasskey", "CreateRecoveryCode", "length", "Message", "Root", "valence", "className", "Title", "Icon", "Body", "List", "map", "ListItem", "key", "id", "toHex", "Endcap", "Heading", "issuanceDate", "toLocaleString", "React", "useCallback", "createIntent", "LayoutAction", "useIntentDispatcher", "useClient", "Dialog", "useTranslation", "ConfirmReset", "RESET_DIALOG", "CLIENT_PLUGIN", "ResetDialog", "mode", "onReset", "t", "useTranslation", "dispatchPromise", "dispatch", "useIntentDispatcher", "client", "useClient", "handleReset", "useCallback", "reset", "target", "undefined", "handleCancel", "createIntent", "LayoutAction", "UpdateDialog", "part", "options", "state", "React", "Dialog", "Content", "classNames", "Title", "Description", "ConfirmReset", "active", "onConfirm", "onCancel"]
7
+ }
@@ -16,10 +16,10 @@ import { Capabilities, contributes, defineModule, definePlugin, Events, oneOf }
16
16
  import { lazy } from "@dxos/app-framework";
17
17
  var AppGraphBuilder = lazy(async () => import("./app-graph-builder-WAS4YZNA.mjs"));
18
18
  var Client = lazy(async () => import("./client-LV67Q3R7.mjs"));
19
- var IntentResolver = lazy(async () => import("./intent-resolver-NCISOZW4.mjs"));
19
+ var IntentResolver = lazy(async () => import("./intent-resolver-Y5GTS7CW.mjs"));
20
20
  var Migrations = lazy(async () => import("./migrations-3DWFOL5Q.mjs"));
21
21
  var ReactContext = lazy(async () => import("./react-context-WEH7SL4I.mjs"));
22
- var ReactSurface = lazy(async () => import("./react-surface-J7SZR2J6.mjs"));
22
+ var ReactSurface = lazy(async () => import("./react-surface-AUZGNKC5.mjs"));
23
23
  var Schema = lazy(async () => import("./schema-JQAT6Q7S.mjs"));
24
24
 
25
25
  // packages/plugins/plugin-client/src/translations.ts
@@ -8,7 +8,7 @@ import {
8
8
  JOIN_DIALOG,
9
9
  RECOVERY_CODE_DIALOG,
10
10
  RESET_DIALOG
11
- } from "./chunk-XZ4TQC56.mjs";
11
+ } from "./chunk-XNV35HZK.mjs";
12
12
  import {
13
13
  Account,
14
14
  ClientAction
@@ -302,4 +302,4 @@ var intent_resolver_default = ({ context, appName = "Composer" }) => contributes
302
302
  export {
303
303
  intent_resolver_default as default
304
304
  };
305
- //# sourceMappingURL=intent-resolver-NCISOZW4.mjs.map
305
+ //# sourceMappingURL=intent-resolver-Y5GTS7CW.mjs.map
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytes":963,"imports":[],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytes":2504,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/types.ts":{"bytes":12574,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytes":13237,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/events.ts":{"bytes":2375,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytes":4501,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"}],"format":"esm"},"packages/plugins/plugin-client/src/components/DevicesContainer.tsx":{"bytes":33995,"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/app-framework","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-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytes":6974,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/ProfileContainer.tsx":{"bytes":21191,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-pickers","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytes":8945,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoveryCredentialsContainer.tsx":{"bytes":10689,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/ResetDialog.tsx":{"bytes":6658,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/index.ts":{"bytes":1092,"imports":[{"path":"packages/plugins/plugin-client/src/components/DevicesContainer.tsx","kind":"import-statement","original":"./DevicesContainer"},{"path":"packages/plugins/plugin-client/src/components/JoinDialog.tsx","kind":"import-statement","original":"./JoinDialog"},{"path":"packages/plugins/plugin-client/src/components/ProfileContainer.tsx","kind":"import-statement","original":"./ProfileContainer"},{"path":"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx","kind":"import-statement","original":"./RecoveryCodeDialog"},{"path":"packages/plugins/plugin-client/src/components/RecoveryCredentialsContainer.tsx","kind":"import-statement","original":"./RecoveryCredentialsContainer"},{"path":"packages/plugins/plugin-client/src/components/ResetDialog.tsx","kind":"import-statement","original":"./ResetDialog"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytes":33443,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/migrations.ts":{"bytes":3142,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytes":2461,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytes":7673,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/schema.ts":{"bytes":3522,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytes":2428,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"packages/plugins/plugin-client/src/capabilities/client.ts","kind":"dynamic-import","original":"./client"},{"path":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-client/src/capabilities/migrations.ts","kind":"dynamic-import","original":"./migrations"},{"path":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","kind":"dynamic-import","original":"./react-context"},{"path":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-client/src/capabilities/schema.ts","kind":"dynamic-import","original":"./schema"}],"format":"esm"},"packages/plugins/plugin-client/src/translations.ts":{"bytes":11488,"imports":[{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytes":9414,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/plugins/plugin-client/src/index.ts":{"bytes":944,"imports":[{"path":"packages/plugins/plugin-client/src/ClientPlugin.ts","kind":"import-statement","original":"./ClientPlugin"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-client/dist/lib/browser/schema-JQAT6Q7S.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1855},"packages/plugins/plugin-client/dist/lib/browser/schema-JQAT6Q7S.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/schema.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/schema.ts":{"bytesInOutput":594}},"bytes":833},"packages/plugins/plugin-client/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10504},"packages/plugins/plugin-client/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/client-LV67Q3R7.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/intent-resolver-NCISOZW4.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/migrations-3DWFOL5Q.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/react-context-WEH7SL4I.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/react-surface-J7SZR2J6.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/schema-JQAT6Q7S.mjs","kind":"dynamic-import"}],"exports":["CLIENT_PLUGIN","ClientCapabilities","ClientEvents","ClientPlugin","meta"],"entryPoint":"packages/plugins/plugin-client/src/index.ts","inputs":{"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytesInOutput":2045},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytesInOutput":563},"packages/plugins/plugin-client/src/translations.ts":{"bytesInOutput":4069},"packages/plugins/plugin-client/src/index.ts":{"bytesInOutput":0}},"bytes":7208},"packages/plugins/plugin-client/dist/lib/browser/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-client/dist/lib/browser/types.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"}],"exports":["Account","ClientAction"],"entryPoint":"packages/plugins/plugin-client/src/types.ts","inputs":{},"bytes":170},"packages/plugins/plugin-client/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5884},"packages/plugins/plugin-client/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytesInOutput":3175}},"bytes":3538},"packages/plugins/plugin-client/dist/lib/browser/client-LV67Q3R7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2357},"packages/plugins/plugin-client/dist/lib/browser/client-LV67Q3R7.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/client.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytesInOutput":780}},"bytes":1074},"packages/plugins/plugin-client/dist/lib/browser/intent-resolver-NCISOZW4.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14780},"packages/plugins/plugin-client/dist/lib/browser/intent-resolver-NCISOZW4.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-XZ4TQC56.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytesInOutput":8682}},"bytes":9163},"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1124},"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientEvents"],"inputs":{"packages/plugins/plugin-client/src/events.ts":{"bytesInOutput":561}},"bytes":738},"packages/plugins/plugin-client/dist/lib/browser/migrations-3DWFOL5Q.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1669},"packages/plugins/plugin-client/dist/lib/browser/migrations-3DWFOL5Q.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/migrations.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/migrations.ts":{"bytesInOutput":568}},"bytes":819},"packages/plugins/plugin-client/dist/lib/browser/react-context-WEH7SL4I.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1225},"packages/plugins/plugin-client/dist/lib/browser/react-context-WEH7SL4I.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytesInOutput":452}},"bytes":738},"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1253},"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientCapabilities"],"inputs":{"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytesInOutput":539}},"bytes":741},"packages/plugins/plugin-client/dist/lib/browser/react-surface-J7SZR2J6.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3827},"packages/plugins/plugin-client/dist/lib/browser/react-surface-J7SZR2J6.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-XZ4TQC56.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytesInOutput":1574}},"bytes":2041},"packages/plugins/plugin-client/dist/lib/browser/chunk-XZ4TQC56.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":46482},"packages/plugins/plugin-client/dist/lib/browser/chunk-XZ4TQC56.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"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/app-framework","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-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-pickers","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","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":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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/shell/react","kind":"import-statement","external":true}],"exports":["DevicesContainer","JOIN_DIALOG","JoinDialog","ProfileContainer","RECOVERY_CODE_DIALOG","RESET_DIALOG","RecoveryCodeDialog","RecoveryCredentialsContainer","ResetDialog"],"inputs":{"packages/plugins/plugin-client/src/components/DevicesContainer.tsx":{"bytesInOutput":9953},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytesInOutput":1766},"packages/plugins/plugin-client/src/components/ProfileContainer.tsx":{"bytesInOutput":5655},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytesInOutput":2821},"packages/plugins/plugin-client/src/components/RecoveryCredentialsContainer.tsx":{"bytesInOutput":3155},"packages/plugins/plugin-client/src/components/ResetDialog.tsx":{"bytesInOutput":1690},"packages/plugins/plugin-client/src/components/index.ts":{"bytesInOutput":0}},"bytes":25814},"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6406},"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["Account","ClientAction"],"inputs":{"packages/plugins/plugin-client/src/types.ts":{"bytesInOutput":2789}},"bytes":2976},"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":454},"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs":{"imports":[],"exports":["CLIENT_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytesInOutput":100}},"bytes":227}}}
1
+ {"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytes":963,"imports":[],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytes":2504,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/types.ts":{"bytes":12574,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytes":13237,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/events.ts":{"bytes":2375,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytes":4501,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"}],"format":"esm"},"packages/plugins/plugin-client/src/components/DevicesContainer.tsx":{"bytes":34578,"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/app-framework","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-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytes":6974,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/ProfileContainer.tsx":{"bytes":21434,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-pickers","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytes":8945,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/RecoveryCredentialsContainer.tsx":{"bytes":10988,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/components/ResetDialog.tsx":{"bytes":6658,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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/shell/react","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/components/index.ts":{"bytes":1092,"imports":[{"path":"packages/plugins/plugin-client/src/components/DevicesContainer.tsx","kind":"import-statement","original":"./DevicesContainer"},{"path":"packages/plugins/plugin-client/src/components/JoinDialog.tsx","kind":"import-statement","original":"./JoinDialog"},{"path":"packages/plugins/plugin-client/src/components/ProfileContainer.tsx","kind":"import-statement","original":"./ProfileContainer"},{"path":"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx","kind":"import-statement","original":"./RecoveryCodeDialog"},{"path":"packages/plugins/plugin-client/src/components/RecoveryCredentialsContainer.tsx","kind":"import-statement","original":"./RecoveryCredentialsContainer"},{"path":"packages/plugins/plugin-client/src/components/ResetDialog.tsx","kind":"import-statement","original":"./ResetDialog"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytes":33443,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"../events"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/migrations.ts":{"bytes":3142,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytes":2461,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytes":7673,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-client/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/schema.ts":{"bytes":3522,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytes":2428,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"packages/plugins/plugin-client/src/capabilities/client.ts","kind":"dynamic-import","original":"./client"},{"path":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-client/src/capabilities/migrations.ts","kind":"dynamic-import","original":"./migrations"},{"path":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","kind":"dynamic-import","original":"./react-context"},{"path":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"packages/plugins/plugin-client/src/capabilities/schema.ts","kind":"dynamic-import","original":"./schema"}],"format":"esm"},"packages/plugins/plugin-client/src/translations.ts":{"bytes":11488,"imports":[{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytes":9414,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"packages/plugins/plugin-client/src/index.ts":{"bytes":944,"imports":[{"path":"packages/plugins/plugin-client/src/ClientPlugin.ts","kind":"import-statement","original":"./ClientPlugin"},{"path":"packages/plugins/plugin-client/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-client/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-client/src/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-client/dist/lib/browser/schema-JQAT6Q7S.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1855},"packages/plugins/plugin-client/dist/lib/browser/schema-JQAT6Q7S.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/schema.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/schema.ts":{"bytesInOutput":594}},"bytes":833},"packages/plugins/plugin-client/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10504},"packages/plugins/plugin-client/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-client/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/client-LV67Q3R7.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/intent-resolver-Y5GTS7CW.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/migrations-3DWFOL5Q.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/react-context-WEH7SL4I.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/react-surface-AUZGNKC5.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-client/dist/lib/browser/schema-JQAT6Q7S.mjs","kind":"dynamic-import"}],"exports":["CLIENT_PLUGIN","ClientCapabilities","ClientEvents","ClientPlugin","meta"],"entryPoint":"packages/plugins/plugin-client/src/index.ts","inputs":{"packages/plugins/plugin-client/src/ClientPlugin.ts":{"bytesInOutput":2045},"packages/plugins/plugin-client/src/capabilities/index.ts":{"bytesInOutput":563},"packages/plugins/plugin-client/src/translations.ts":{"bytesInOutput":4069},"packages/plugins/plugin-client/src/index.ts":{"bytesInOutput":0}},"bytes":7208},"packages/plugins/plugin-client/dist/lib/browser/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-client/dist/lib/browser/types.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"}],"exports":["Account","ClientAction"],"entryPoint":"packages/plugins/plugin-client/src/types.ts","inputs":{},"bytes":170},"packages/plugins/plugin-client/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5884},"packages/plugins/plugin-client/dist/lib/browser/app-graph-builder-WAS4YZNA.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-client/mesh","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/app-graph-builder.ts":{"bytesInOutput":3175}},"bytes":3538},"packages/plugins/plugin-client/dist/lib/browser/client-LV67Q3R7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2357},"packages/plugins/plugin-client/dist/lib/browser/client-LV67Q3R7.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/client.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/client.ts":{"bytesInOutput":780}},"bytes":1074},"packages/plugins/plugin-client/dist/lib/browser/intent-resolver-Y5GTS7CW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14780},"packages/plugins/plugin-client/dist/lib/browser/intent-resolver-Y5GTS7CW.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-XNV35HZK.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/intent-resolver.ts":{"bytesInOutput":8682}},"bytes":9163},"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1124},"packages/plugins/plugin-client/dist/lib/browser/chunk-4PLF3BEB.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientEvents"],"inputs":{"packages/plugins/plugin-client/src/events.ts":{"bytesInOutput":561}},"bytes":738},"packages/plugins/plugin-client/dist/lib/browser/migrations-3DWFOL5Q.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1669},"packages/plugins/plugin-client/dist/lib/browser/migrations-3DWFOL5Q.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/migrations.ts","inputs":{"packages/plugins/plugin-client/src/capabilities/migrations.ts":{"bytesInOutput":568}},"bytes":819},"packages/plugins/plugin-client/dist/lib/browser/react-context-WEH7SL4I.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1225},"packages/plugins/plugin-client/dist/lib/browser/react-context-WEH7SL4I.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-context.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-context.tsx":{"bytesInOutput":452}},"bytes":738},"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1253},"packages/plugins/plugin-client/dist/lib/browser/chunk-BGY6BSUC.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["ClientCapabilities"],"inputs":{"packages/plugins/plugin-client/src/capabilities/capabilities.ts":{"bytesInOutput":539}},"bytes":741},"packages/plugins/plugin-client/dist/lib/browser/react-surface-AUZGNKC5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3827},"packages/plugins/plugin-client/dist/lib/browser/react-surface-AUZGNKC5.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-XNV35HZK.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-client/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-client/src/capabilities/react-surface.tsx":{"bytesInOutput":1574}},"bytes":2041},"packages/plugins/plugin-client/dist/lib/browser/chunk-XNV35HZK.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":47271},"packages/plugins/plugin-client/dist/lib/browser/chunk-XNV35HZK.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"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/app-framework","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-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-observability/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/shell/react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-pickers","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","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":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","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/shell/react","kind":"import-statement","external":true}],"exports":["DevicesContainer","JOIN_DIALOG","JoinDialog","ProfileContainer","RECOVERY_CODE_DIALOG","RESET_DIALOG","RecoveryCodeDialog","RecoveryCredentialsContainer","ResetDialog"],"inputs":{"packages/plugins/plugin-client/src/components/DevicesContainer.tsx":{"bytesInOutput":10018},"packages/plugins/plugin-client/src/components/JoinDialog.tsx":{"bytesInOutput":1766},"packages/plugins/plugin-client/src/components/ProfileContainer.tsx":{"bytesInOutput":5738},"packages/plugins/plugin-client/src/components/RecoveryCodeDialog.tsx":{"bytesInOutput":2821},"packages/plugins/plugin-client/src/components/RecoveryCredentialsContainer.tsx":{"bytesInOutput":3238},"packages/plugins/plugin-client/src/components/ResetDialog.tsx":{"bytesInOutput":1690},"packages/plugins/plugin-client/src/components/index.ts":{"bytesInOutput":0}},"bytes":26045},"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6406},"packages/plugins/plugin-client/dist/lib/browser/chunk-AN7FJKIJ.mjs":{"imports":[{"path":"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true}],"exports":["Account","ClientAction"],"inputs":{"packages/plugins/plugin-client/src/types.ts":{"bytesInOutput":2789}},"bytes":2976},"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":454},"packages/plugins/plugin-client/dist/lib/browser/chunk-MCEXD5XH.mjs":{"imports":[],"exports":["CLIENT_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-client/src/meta.ts":{"bytesInOutput":100}},"bytes":227}}}
@@ -8,7 +8,7 @@ import {
8
8
  RecoveryCodeDialog,
9
9
  RecoveryCredentialsContainer,
10
10
  ResetDialog
11
- } from "./chunk-XZ4TQC56.mjs";
11
+ } from "./chunk-XNV35HZK.mjs";
12
12
  import {
13
13
  Account
14
14
  } from "./chunk-AN7FJKIJ.mjs";
@@ -63,4 +63,4 @@ var react_surface_default = ({ createInvitationUrl, onReset }) => contributes(Ca
63
63
  export {
64
64
  react_surface_default as default
65
65
  };
66
- //# sourceMappingURL=react-surface-J7SZR2J6.mjs.map
66
+ //# sourceMappingURL=react-surface-AUZGNKC5.mjs.map
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_3JE5BFCT_exports = {};
30
- __export(chunk_3JE5BFCT_exports, {
29
+ var chunk_QNZIRU35_exports = {};
30
+ __export(chunk_QNZIRU35_exports, {
31
31
  DevicesContainer: () => DevicesContainer,
32
32
  JOIN_DIALOG: () => JOIN_DIALOG,
33
33
  JoinDialog: () => JoinDialog,
@@ -38,7 +38,7 @@ __export(chunk_3JE5BFCT_exports, {
38
38
  RecoveryCredentialsContainer: () => RecoveryCredentialsContainer,
39
39
  ResetDialog: () => ResetDialog
40
40
  });
41
- module.exports = __toCommonJS(chunk_3JE5BFCT_exports);
41
+ module.exports = __toCommonJS(chunk_QNZIRU35_exports);
42
42
  var import_chunk_FROKBEVH = require("./chunk-FROKBEVH.cjs");
43
43
  var import_chunk_DJKWB5L6 = require("./chunk-DJKWB5L6.cjs");
44
44
  var import_react = require("@phosphor-icons/react");
@@ -104,8 +104,8 @@ var DevicesContainer = ({ createInvitationUrl }) => {
104
104
  dispatch
105
105
  ]);
106
106
  return /* @__PURE__ */ import_react2.default.createElement(import_react_ui.Clipboard.Provider, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_stack.StackItem.Content, {
107
- classNames: "p-2 block overflow-y-auto"
108
- }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.ControlSection, {
107
+ classNames: "block overflow-y-auto"
108
+ }, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.ControlPage, null, /* @__PURE__ */ import_react2.default.createElement(import_react_ui_form.ControlSection, {
109
109
  title: t("devices verbose label", {
110
110
  ns: import_chunk_DJKWB5L6.CLIENT_PLUGIN
111
111
  }),
@@ -160,7 +160,7 @@ var DevicesContainer = ({ createInvitationUrl }) => {
160
160
  variant: "destructive",
161
161
  onClick: handleJoinNewIdentity,
162
162
  "data-testid": "devicesContainer.joinExisting"
163
- }, t("join new identity label")))))));
163
+ }, t("join new identity label"))))))));
164
164
  };
165
165
  var DeviceInvitation = (props) => {
166
166
  const client = (0, import_react_client.useClient)();
@@ -176,7 +176,7 @@ var DeviceInvitation = (props) => {
176
176
  authCode: invitation3.authCode
177
177
  }), void 0, {
178
178
  F: __dxlog_file,
179
- L: 122,
179
+ L: 139,
180
180
  S: void 0,
181
181
  C: (f, a) => f(...a)
182
182
  });
@@ -468,8 +468,8 @@ var ProfileContainer = () => {
468
468
  t
469
469
  ]);
470
470
  return /* @__PURE__ */ import_react6.default.createElement(import_react_ui_stack2.StackItem.Content, {
471
- classNames: "p-2 block overflow-y-auto"
472
- }, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Clipboard.Provider, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui_form2.ControlSection, {
471
+ classNames: "block overflow-y-auto"
472
+ }, /* @__PURE__ */ import_react6.default.createElement(import_react_ui_form2.ControlPage, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui3.Clipboard.Provider, null, /* @__PURE__ */ import_react6.default.createElement(import_react_ui_form2.ControlSection, {
473
473
  title: t("profile label"),
474
474
  description: t("profile description")
475
475
  }, /* @__PURE__ */ import_react6.default.createElement(import_react_ui_form2.Form, {
@@ -479,7 +479,7 @@ var ProfileContainer = () => {
479
479
  onSave: handleSave,
480
480
  Custom: customElements,
481
481
  classNames: 'p-0 container-max-width [&_[role="form"]]:grid [&_[role="form"]]:grid-cols-1 md:[&_[role="form"]]:grid-cols-[1fr_min-content] [&_[role="form"]]:gap-4'
482
- }))));
482
+ })))));
483
483
  };
484
484
  var ProfileSchema = import_effect.Schema.Struct({
485
485
  displayName: import_effect.Schema.String.annotations({
@@ -549,8 +549,8 @@ var RecoveryCredentialsContainer = () => {
549
549
  const credentials = (0, import_halo3.useCredentials)();
550
550
  const recoveryCredentials = credentials.filter((credential) => credential.subject.assertion["@type"] === "dxos.halo.credentials.IdentityRecovery");
551
551
  return /* @__PURE__ */ import_react8.default.createElement(import_react_ui_stack3.StackItem.Content, {
552
- classNames: "p-2 block overflow-y-auto"
553
- }, /* @__PURE__ */ import_react8.default.createElement(import_react_ui_form3.ControlSection, {
552
+ classNames: "block overflow-y-auto"
553
+ }, /* @__PURE__ */ import_react8.default.createElement(import_react_ui_form3.ControlPage, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui_form3.ControlSection, {
554
554
  title: t("recovery setup dialog title"),
555
555
  description: t("recovery setup dialog description")
556
556
  }, /* @__PURE__ */ import_react8.default.createElement(import_react_ui_form3.ControlGroup, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui_form3.ControlItem, {
@@ -587,7 +587,7 @@ var RecoveryCredentialsContainer = () => {
587
587
  }, /* @__PURE__ */ import_react8.default.createElement(import_react_ui5.ListItem.Endcap, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui5.Icon, {
588
588
  icon: "ph--key--regular",
589
589
  size: 5
590
- })), /* @__PURE__ */ import_react8.default.createElement(import_react_ui5.ListItem.Heading, null, credential.issuanceDate.toLocaleString()))))));
590
+ })), /* @__PURE__ */ import_react8.default.createElement(import_react_ui5.ListItem.Heading, null, credential.issuanceDate.toLocaleString())))))));
591
591
  };
592
592
  var RESET_DIALOG = `${import_chunk_DJKWB5L6.CLIENT_PLUGIN}/ResetDialog`;
593
593
  var ResetDialog = ({ mode, onReset }) => {
@@ -641,4 +641,4 @@ var ResetDialog = ({ mode, onReset }) => {
641
641
  RecoveryCredentialsContainer,
642
642
  ResetDialog
643
643
  });
644
- //# sourceMappingURL=chunk-3JE5BFCT.cjs.map
644
+ //# sourceMappingURL=chunk-QNZIRU35.cjs.map