@dxos/shell 0.8.2-main.5ca3450 → 0.8.2-main.600d381

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 (39) hide show
  1. package/dist/bundle/shell.js +3771 -3730
  2. package/dist/bundle/shell.js.map +1 -1
  3. package/dist/bundle/shell.umd.cjs +28 -28
  4. package/dist/bundle/shell.umd.cjs.map +1 -1
  5. package/dist/bundle/style.css +1 -1
  6. package/dist/lib/browser/meta.json +1 -1
  7. package/dist/lib/browser/react.mjs +36 -33
  8. package/dist/lib/browser/react.mjs.map +3 -3
  9. package/dist/lib/node/meta.json +1 -1
  10. package/dist/lib/node/react.cjs +32 -29
  11. package/dist/lib/node/react.cjs.map +3 -3
  12. package/dist/lib/node-esm/meta.json +1 -1
  13. package/dist/lib/node-esm/react.mjs +36 -33
  14. package/dist/lib/node-esm/react.mjs.map +3 -3
  15. package/dist/types/src/components/AgentConfig.d.ts.map +1 -1
  16. package/dist/types/src/components/AgentConfig.js +4 -9
  17. package/dist/types/src/components/AgentConfig.js.map +1 -1
  18. package/dist/types/src/components/InvitationList/InvitationList.stories.js +1 -1
  19. package/dist/types/src/components/InvitationList/InvitationList.stories.js.map +1 -1
  20. package/dist/types/src/components/InvitationList/InvitationListItem.d.ts.map +1 -1
  21. package/dist/types/src/components/InvitationList/InvitationListItem.js +8 -18
  22. package/dist/types/src/components/InvitationList/InvitationListItem.js.map +1 -1
  23. package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +1 -1
  24. package/dist/types/src/panels/IdentityPanel/IdentityPanel.js +8 -18
  25. package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
  26. package/dist/types/src/stories/Invitations.e2e-stories.d.ts.map +1 -1
  27. package/dist/types/src/stories/Invitations.e2e-stories.js +1 -5
  28. package/dist/types/src/stories/Invitations.e2e-stories.js.map +1 -1
  29. package/dist/types/src/translations/locales/en-US.d.ts +2 -0
  30. package/dist/types/src/translations/locales/en-US.d.ts.map +1 -1
  31. package/dist/types/src/translations/locales/en-US.js +2 -0
  32. package/dist/types/src/translations/locales/en-US.js.map +1 -1
  33. package/package.json +26 -26
  34. package/src/components/AgentConfig.tsx +14 -18
  35. package/src/components/InvitationList/InvitationList.stories.tsx +1 -1
  36. package/src/components/InvitationList/InvitationListItem.tsx +30 -40
  37. package/src/panels/IdentityPanel/IdentityPanel.tsx +14 -32
  38. package/src/stories/Invitations.e2e-stories.tsx +1 -5
  39. package/src/translations/locales/en-US.ts +2 -0
@@ -3,9 +3,9 @@ import {
3
3
  } from "./chunk-J5LGTIGS.mjs";
4
4
 
5
5
  // packages/sdk/shell/src/components/AgentConfig.tsx
6
- import { ArrowsClockwise, Plus, Power } from "@phosphor-icons/react";
6
+ import { ArrowsClockwise, Plus } from "@phosphor-icons/react";
7
7
  import React from "react";
8
- import { Avatar, Button, Link, Tooltip, Trans, useTranslation } from "@dxos/react-ui";
8
+ import { Avatar, Button, IconButton, Link, Tooltip, Trans, useTranslation } from "@dxos/react-ui";
9
9
  import { descriptionText, getSize, mx, valenceColorText } from "@dxos/react-ui-theme";
10
10
  var AgentConfig = ({ agentStatus, validationMessage, onAgentDestroy, onAgentCreate, onAgentRefresh }) => {
11
11
  const { t } = useTranslation("os");
@@ -31,20 +31,20 @@ var AgentConfig = ({ agentStatus, validationMessage, onAgentDestroy, onAgentCrea
31
31
  icon: "ph--database--duotone"
32
32
  }), /* @__PURE__ */ React.createElement(Avatar.Label, {
33
33
  classNames: "flex-1 text-sm truncate"
34
- }, t(agentStatus === "created" ? "agent requested label" : agentStatus === "creating" ? "creating agent label" : agentStatus === "destroying" ? "destroying agent label" : "getting agent label"))), agentStatus === "created" && /* @__PURE__ */ React.createElement(Tooltip.Root, null, /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
35
- asChild: true
36
- }, /* @__PURE__ */ React.createElement(Button, {
34
+ }, t(agentStatus === "created" ? "agent requested label" : agentStatus === "creating" ? "creating agent label" : agentStatus === "destroying" ? "destroying agent label" : "getting agent label"))), agentStatus === "created" && /* @__PURE__ */ React.createElement(Tooltip.Trigger, {
35
+ asChild: true,
36
+ content: t("destroy agent label"),
37
+ side: "bottom"
38
+ }, /* @__PURE__ */ React.createElement(IconButton, {
39
+ iconOnly: true,
37
40
  variant: "ghost",
38
41
  classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
39
42
  "data-testid": "agent.destroy",
43
+ label: t("destroy agent label"),
44
+ icon: "ph--power--regular",
45
+ size: 5,
40
46
  onClick: onAgentDestroy
41
- }, /* @__PURE__ */ React.createElement("span", {
42
- className: "sr-only"
43
- }, t("destroy agent label")), /* @__PURE__ */ React.createElement(Power, {
44
- className: getSize(5)
45
- }))), /* @__PURE__ */ React.createElement(Tooltip.Portal, null, /* @__PURE__ */ React.createElement(Tooltip.Content, {
46
- side: "bottom"
47
- }, t("destroy agent label"))))), agentStatus === "created" && /* @__PURE__ */ React.createElement("p", {
47
+ }))), agentStatus === "created" && /* @__PURE__ */ React.createElement("p", {
48
48
  id: "devices-panel.create-agent.description",
49
49
  className: mx(descriptionText, "mlb-2")
50
50
  }, t("agent requested description"))) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Button, {
@@ -204,7 +204,7 @@ import { Button as Button3, List as List2, useTranslation as useTranslation4 } f
204
204
  import { descriptionText as descriptionText4, getSize as getSize3, mx as mx5 } from "@dxos/react-ui-theme";
205
205
 
206
206
  // packages/sdk/shell/src/components/DeviceList/DeviceListItem.tsx
207
- import { DotsThree, ShareFat, Power as Power2, FirstAidKit } from "@phosphor-icons/react";
207
+ import { DotsThree, ShareFat, Power, FirstAidKit } from "@phosphor-icons/react";
208
208
  import React5, { forwardRef as forwardRef2 } from "react";
209
209
  import { generateName as generateName2 } from "@dxos/display-name";
210
210
  import { Device, DeviceType, DeviceKind } from "@dxos/react-client/halo";
@@ -272,7 +272,7 @@ var DeviceListItem = /* @__PURE__ */ forwardRef2(({ device, onClickAdd, onClickE
272
272
  }), t("choose recover identity label")), onClickReset && /* @__PURE__ */ React5.createElement(DropdownMenu.Item, {
273
273
  "data-testid": "device-list-item-current.reset",
274
274
  onClick: onClickReset
275
- }, /* @__PURE__ */ React5.createElement(Power2, {
275
+ }, /* @__PURE__ */ React5.createElement(Power, {
276
276
  className: getSize2(5)
277
277
  }), t("reset device label")))))));
278
278
  });
@@ -451,8 +451,10 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
451
451
  status: avatarStatus,
452
452
  animation: avatarAnimation,
453
453
  reverseEffects
454
- }), /* @__PURE__ */ React8.createElement(Tooltip2.Root, null, /* @__PURE__ */ React8.createElement(Avatar4.Root, null, /* @__PURE__ */ React8.createElement(Tooltip2.Trigger, {
455
- asChild: true
454
+ }), /* @__PURE__ */ React8.createElement(Avatar4.Root, null, /* @__PURE__ */ React8.createElement(Tooltip2.Trigger, {
455
+ asChild: true,
456
+ content: t(multiUse ? "invite many qr label" : "invite one qr label"),
457
+ side: "left"
456
458
  }, /* @__PURE__ */ React8.createElement(Avatar4.Content, {
457
459
  ...avatarProps,
458
460
  animation: avatarAnimation,
@@ -463,10 +465,11 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
463
465
  focusRing,
464
466
  "relative rounded-full place-self-center"
465
467
  ]
466
- }))), /* @__PURE__ */ React8.createElement(Tooltip2.Portal, null, /* @__PURE__ */ React8.createElement(Tooltip2.Content, {
467
- side: "left"
468
- }, t(multiUse ? "invite many qr label" : "invite one qr label"), /* @__PURE__ */ React8.createElement(Tooltip2.Arrow, null)))), showShare && invitationUrl ? /* @__PURE__ */ React8.createElement(Tooltip2.Root, null, /* @__PURE__ */ React8.createElement(React8.Fragment, null, /* @__PURE__ */ React8.createElement(Tooltip2.Trigger, {
469
- asChild: true
468
+ }))), showShare && invitationUrl ? /* @__PURE__ */ React8.createElement(React8.Fragment, null, /* @__PURE__ */ React8.createElement(Tooltip2.Trigger, {
469
+ asChild: true,
470
+ content: invitationHasLifetime ? t("expires label", {
471
+ timeLeft: invitationTimeLeft
472
+ }) : t("no expiration label")
470
473
  }, /* @__PURE__ */ React8.createElement(Button4, {
471
474
  variant: "ghost",
472
475
  classNames: "grow justify-start font-medium",
@@ -478,9 +481,7 @@ var InvitationListItemImpl = ({ invitation, invitationStatus: propsInvitationSta
478
481
  }, /* @__PURE__ */ React8.createElement("span", null, t("open share panel label")))), /* @__PURE__ */ React8.createElement(Clipboard.IconButton, {
479
482
  variant: "ghost",
480
483
  value: invitationUrl
481
- })), /* @__PURE__ */ React8.createElement(Tooltip2.Portal, null, /* @__PURE__ */ React8.createElement(Tooltip2.Content, {
482
- side: "left"
483
- }, invitationHasLifetime && /* @__PURE__ */ React8.createElement("span", null, "Expires ", invitationTimeLeft)))) : showAuthCode ? /* @__PURE__ */ React8.createElement(AuthCode, {
484
+ })) : showAuthCode ? /* @__PURE__ */ React8.createElement(AuthCode, {
484
485
  code: authCode,
485
486
  classNames: "grow"
486
487
  }) : invitationStatus === Invitation.State.CONNECTING ? /* @__PURE__ */ React8.createElement("span", {
@@ -1583,8 +1584,10 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
1583
1584
  "data-testid": "update-profile-form-copy-key",
1584
1585
  label: t("copy self did label"),
1585
1586
  value: identity.did
1586
- }), onManageCredentials && /* @__PURE__ */ React25.createElement(Tooltip3.Root, null, /* @__PURE__ */ React25.createElement(Tooltip3.Trigger, {
1587
- asChild: true
1587
+ }), onManageCredentials && /* @__PURE__ */ React25.createElement(Tooltip3.Trigger, {
1588
+ asChild: true,
1589
+ content: t("manage credentials label"),
1590
+ side: "bottom"
1588
1591
  }, /* @__PURE__ */ React25.createElement(Toolbar.Button, {
1589
1592
  classNames: "bs-[--rail-action]",
1590
1593
  onClick: onManageCredentials
@@ -1592,10 +1595,10 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
1592
1595
  className: "sr-only"
1593
1596
  }, t("manage credentials label")), /* @__PURE__ */ React25.createElement(IdentificationCard, {
1594
1597
  className: getSize10(5)
1595
- }))), /* @__PURE__ */ React25.createElement(Tooltip3.Portal, null, /* @__PURE__ */ React25.createElement(Tooltip3.Content, {
1598
+ }))), /* @__PURE__ */ React25.createElement(Tooltip3.Trigger, {
1599
+ asChild: true,
1600
+ content: t(isConnected ? "disconnect label" : "connect label"),
1596
1601
  side: "bottom"
1597
- }, t("manage credentials label"), /* @__PURE__ */ React25.createElement(Tooltip3.Arrow, null)))), /* @__PURE__ */ React25.createElement(Tooltip3.Root, null, /* @__PURE__ */ React25.createElement(Tooltip3.Trigger, {
1598
- asChild: true
1599
1602
  }, /* @__PURE__ */ React25.createElement(Toolbar.Button, {
1600
1603
  classNames: [
1601
1604
  "bs-[--rail-action]",
@@ -1608,9 +1611,7 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
1608
1611
  className: getSize10(5)
1609
1612
  }) : /* @__PURE__ */ React25.createElement(Plugs, {
1610
1613
  className: getSize10(5)
1611
- }))), /* @__PURE__ */ React25.createElement(Tooltip3.Portal, null, /* @__PURE__ */ React25.createElement(Tooltip3.Content, {
1612
- side: "bottom"
1613
- }, t(isConnected ? "disconnect label" : "connect label"), /* @__PURE__ */ React25.createElement(Tooltip3.Arrow, null)))))));
1614
+ }))))));
1614
1615
  };
1615
1616
  var IdentityPanelImpl = (props) => {
1616
1617
  const { identity, titleId, activeView, onUpdateProfile, onResetStorage, onRecover, onJoinNewIdentity, IdentityActionChooser: IdentityActionChooserComponent = IdentityActionChooser, InvitationManager: InvitationManagerComponent = InvitationManager, connectionState, onChangeConnectionState, onDone, onManageCredentials, ...rest } = props;
@@ -1703,7 +1704,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
1703
1704
  if (!identity) {
1704
1705
  log7.error("IdentityPanel rendered with no active identity.", void 0, {
1705
1706
  F: __dxlog_file6,
1706
- L: 283,
1707
+ L: 265,
1707
1708
  S: void 0,
1708
1709
  C: (f, a) => f(...a)
1709
1710
  });
@@ -1720,7 +1721,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
1720
1721
  const subscription = identityService.subscribe((state) => {
1721
1722
  log7("[state]", state, {
1722
1723
  F: __dxlog_file6,
1723
- L: 296,
1724
+ L: 278,
1724
1725
  S: void 0,
1725
1726
  C: (f, a) => f(...a)
1726
1727
  });
@@ -4099,6 +4100,8 @@ var os = {
4099
4100
  "select emoji label": "Avatar emoji",
4100
4101
  "select hue label": "Avatar background color",
4101
4102
  "resetting message": "One moment while the device is reset\u2026",
4103
+ "expires label": "Expires {{timeLeft}}",
4104
+ "no expiration label": "Doesn\u2019t expire",
4102
4105
  // TODO(burdon): Factor out.
4103
4106
  "red label": "Red",
4104
4107
  "orange label": "Orange",