@dxos/shell 0.6.1-main.e05b43b → 0.6.1-main.ff751ec
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle/shell.mjs +188 -111
- package/dist/bundle/shell.mjs.map +1 -1
- package/dist/bundle/shell.umd.js +5 -5
- package/dist/bundle/shell.umd.js.map +1 -1
- package/dist/bundle/style.css +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react.mjs +171 -115
- package/dist/lib/browser/react.mjs.map +3 -3
- package/dist/types/src/components/AgentConfig.d.ts +1 -1
- package/dist/types/src/components/AgentConfig.d.ts.map +1 -1
- package/dist/types/src/components/AgentConfig.js +36 -24
- package/dist/types/src/components/AgentConfig.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceList.d.ts +2 -2
- package/dist/types/src/components/DeviceList/DeviceList.d.ts.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceList.js +2 -2
- package/dist/types/src/components/DeviceList/DeviceList.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListItem.d.ts +2 -2
- package/dist/types/src/components/DeviceList/DeviceListItem.d.ts.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListItem.js +11 -5
- package/dist/types/src/components/DeviceList/DeviceListItem.js.map +1 -1
- package/dist/types/src/components/DeviceList/DeviceListProps.d.ts +6 -7
- package/dist/types/src/components/DeviceList/DeviceListProps.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js +2 -5
- package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.d.ts +0 -1
- package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.d.ts +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.js +5 -5
- package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.js.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.d.ts +2 -7
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.d.ts.map +1 -1
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.js +78 -43
- package/dist/types/src/panels/IdentityPanel/useAgentHandlers.js.map +1 -1
- package/dist/types/src/translations/locales/en-US.d.ts +5 -0
- package/dist/types/src/translations/locales/en-US.d.ts.map +1 -1
- package/dist/types/src/translations/locales/en-US.js +5 -0
- package/dist/types/src/translations/locales/en-US.js.map +1 -1
- package/package.json +23 -23
- package/src/components/AgentConfig.tsx +100 -48
- package/src/components/DeviceList/DeviceList.tsx +4 -3
- package/src/components/DeviceList/DeviceListItem.tsx +66 -28
- package/src/components/DeviceList/DeviceListProps.ts +6 -7
- package/src/panels/IdentityPanel/IdentityPanel.tsx +2 -5
- package/src/panels/IdentityPanel/IdentityPanelProps.ts +0 -1
- package/src/panels/IdentityPanel/steps/IdentityActionChooser.tsx +7 -15
- package/src/panels/IdentityPanel/useAgentHandlers.ts +77 -41
- package/src/translations/locales/en-US.ts +6 -0
package/dist/bundle/shell.mjs
CHANGED
|
@@ -11,7 +11,7 @@ import * as React from "react";
|
|
|
11
11
|
import React__default, { createContext, useContext, createElement, isValidElement, cloneElement, useState, useRef, useEffect, useMemo, useCallback, forwardRef, Children, Fragment, useLayoutEffect, useReducer, Suspense, StrictMode } from "react";
|
|
12
12
|
import * as $7SXl2$reactdom from "react-dom";
|
|
13
13
|
import $7SXl2$reactdom__default, { flushSync } from "react-dom";
|
|
14
|
-
import { CaretDown, CaretRight, Minus, Check, Database, Power, Plus, Copy, UserCircle, Palette, Compass, Desktop, Robot, DeviceMobile, Devices, DotsThree, ShareFat, X, Placeholder, Warning, Key, PlugsConnected, Plugs, QrCode, Textbox, UserPlus, UsersThree, Planet } from "@phosphor-icons/react";
|
|
14
|
+
import { CaretDown, CaretRight, Minus, Check, Database, Power, Plus, ArrowsClockwise, Copy, UserCircle, Palette, Compass, Desktop, Robot, DeviceMobile, Devices, DotsThree, ShareFat, X, Placeholder, Warning, Key, PlugsConnected, Plugs, QrCode, Textbox, UserPlus, UsersThree, Planet } from "@phosphor-icons/react";
|
|
15
15
|
import { SpaceMember as SpaceMember$1, useMembers, useSpaceInvitations, useSpace } from "@dxos/react-client/echo";
|
|
16
16
|
import { useClient, useAgentHostingClient, AlreadyJoinedError, useMulticastObservable, useConfig, ShellLayout as ShellLayout$1, ShellDisplay as ShellDisplay$1, ClientServicesProxy, Client, ClientContext, SystemStatus as SystemStatus$1, AgentHostingProvider, Config } from "@dxos/react-client";
|
|
17
17
|
import { DeviceKind as DeviceKind$1, Device as Device$1, DeviceType, useHaloInvitations, useDevices, useIdentity } from "@dxos/react-client/halo";
|
|
@@ -25857,39 +25857,66 @@ var hueTheme = {
|
|
|
25857
25857
|
const q = get$1(_, $);
|
|
25858
25858
|
return typeof q == "function" ? q(j, ...U) : I;
|
|
25859
25859
|
}, defaultTx = bindTheme(defaultTheme);
|
|
25860
|
-
const AgentConfig = ({
|
|
25861
|
-
|
|
25862
|
-
|
|
25863
|
-
|
|
25860
|
+
const AgentConfig = ({
|
|
25861
|
+
agentStatus: _,
|
|
25862
|
+
validationMessage: $,
|
|
25863
|
+
onAgentDestroy: I,
|
|
25864
|
+
onAgentCreate: j,
|
|
25865
|
+
onAgentRefresh: U
|
|
25866
|
+
}) => {
|
|
25867
|
+
const { t: q } = useTranslation("os");
|
|
25868
|
+
return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("h2", { className: mx(descriptionText, "text-center mbs-4") }, q("agent heading")), $ && /* @__PURE__ */ React__default.createElement("p", { role: "alert", className: mx(valenceColorText("error"), "mlb-2") }, $), _ === "created" || _ === "creating" || _ === "getting" || _ === "destroying" ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(
|
|
25869
|
+
"div",
|
|
25864
25870
|
{
|
|
25865
|
-
|
|
25866
|
-
|
|
25867
|
-
"
|
|
25868
|
-
onClick: I
|
|
25871
|
+
role: "group",
|
|
25872
|
+
className: "mlb-2 flex gap-2 items-center",
|
|
25873
|
+
"aria-describedby": "devices-panel.create-agent.description"
|
|
25869
25874
|
},
|
|
25870
|
-
/* @__PURE__ */ React__default.createElement("
|
|
25871
|
-
|
|
25872
|
-
|
|
25875
|
+
/* @__PURE__ */ React__default.createElement(Avatar.Root, { status: _ === "created" ? "warning" : "inactive", variant: "square" }, /* @__PURE__ */ React__default.createElement(Avatar.Frame, { classNames: "place-self-center" }, /* @__PURE__ */ React__default.createElement(
|
|
25876
|
+
Database,
|
|
25877
|
+
{
|
|
25878
|
+
weight: "duotone",
|
|
25879
|
+
width: 24,
|
|
25880
|
+
height: 24,
|
|
25881
|
+
x: 8,
|
|
25882
|
+
y: 8,
|
|
25883
|
+
..._ !== "created" && { className: "opacity-50" }
|
|
25884
|
+
}
|
|
25885
|
+
)), /* @__PURE__ */ React__default.createElement(Avatar.Label, { classNames: "flex-1 text-sm truncate" }, q(
|
|
25886
|
+
_ === "created" ? "agent requested label" : _ === "creating" ? "creating agent label" : _ === "destroying" ? "destroying agent label" : "getting agent label"
|
|
25887
|
+
))),
|
|
25888
|
+
_ === "created" && /* @__PURE__ */ React__default.createElement(Tooltip.Root, null, /* @__PURE__ */ React__default.createElement(Tooltip.Trigger, { asChild: !0 }, /* @__PURE__ */ React__default.createElement(
|
|
25889
|
+
Button,
|
|
25890
|
+
{
|
|
25891
|
+
variant: "ghost",
|
|
25892
|
+
classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
|
|
25893
|
+
"data-testid": "agent.destroy",
|
|
25894
|
+
onClick: I
|
|
25895
|
+
},
|
|
25896
|
+
/* @__PURE__ */ React__default.createElement("span", { className: "sr-only" }, q("destroy agent label")),
|
|
25897
|
+
/* @__PURE__ */ React__default.createElement(Power, { className: getSize(5) })
|
|
25898
|
+
)), /* @__PURE__ */ React__default.createElement(Tooltip.Portal, null, /* @__PURE__ */ React__default.createElement(Tooltip.Content, { side: "bottom", classNames: "z-50" }, q("destroy agent label"))))
|
|
25899
|
+
), _ === "created" && /* @__PURE__ */ React__default.createElement("p", { id: "devices-panel.create-agent.description", className: mx(descriptionText, "mlb-2") }, q("agent requested description"))) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(
|
|
25873
25900
|
Button,
|
|
25874
25901
|
{
|
|
25875
25902
|
variant: "ghost",
|
|
25876
25903
|
classNames: "mlb-2 is-full justify-start gap-2 !pis-0 !pie-3",
|
|
25877
|
-
"data-testid": "devices-panel.create-agent",
|
|
25878
|
-
onClick: j,
|
|
25904
|
+
"data-testid": _ === "creatable" ? "devices-panel.create-agent" : "devices-panel.agent-error",
|
|
25905
|
+
onClick: _ === "creatable" ? j : U,
|
|
25879
25906
|
"aria-describedby": "devices-panel.create-agent.description"
|
|
25880
25907
|
},
|
|
25881
|
-
/* @__PURE__ */ React__default.createElement("div", { role: "img", className: mx(getSize(8), "m-1 rounded-sm surface-input grid place-items-center") }, /* @__PURE__ */ React__default.createElement(Plus, { weight: "light", className: getSize(6) })),
|
|
25882
|
-
/* @__PURE__ */ React__default.createElement("span", { className: "grow font-medium text-start" },
|
|
25883
|
-
), /* @__PURE__ */ React__default.createElement("
|
|
25908
|
+
/* @__PURE__ */ React__default.createElement("div", { role: "img", className: mx(getSize(8), "m-1 rounded-sm surface-input grid place-items-center") }, _ === "creatable" ? /* @__PURE__ */ React__default.createElement(Plus, { weight: "light", className: getSize(6) }) : /* @__PURE__ */ React__default.createElement(ArrowsClockwise, { weight: "light", className: getSize(6) })),
|
|
25909
|
+
/* @__PURE__ */ React__default.createElement("span", { className: "grow font-medium text-start" }, q(_ === "creatable" ? "create agent label" : ""))
|
|
25910
|
+
), _ === "creatable" && /* @__PURE__ */ React__default.createElement("div", { role: "none", className: "space-y-2", id: "devices-panel.create-agent.description" }, /* @__PURE__ */ React__default.createElement("p", { className: descriptionText }, /* @__PURE__ */ React__default.createElement(
|
|
25884
25911
|
Trans,
|
|
25885
25912
|
{
|
|
25886
|
-
t:
|
|
25913
|
+
t: q,
|
|
25887
25914
|
i18nKey: "create agent clickwrap",
|
|
25888
25915
|
components: {
|
|
25889
25916
|
tosLink: /* @__PURE__ */ React__default.createElement(Link, { target: "_blank", rel: "noreferrer" })
|
|
25890
25917
|
}
|
|
25891
25918
|
}
|
|
25892
|
-
)), /* @__PURE__ */ React__default.createElement("p", {
|
|
25919
|
+
)), /* @__PURE__ */ React__default.createElement("p", { className: descriptionText }, q("create agent description")))));
|
|
25893
25920
|
}, ClipboardContext = createContext({
|
|
25894
25921
|
textValue: "",
|
|
25895
25922
|
setTextValue: async (_) => {
|
|
@@ -69864,39 +69891,67 @@ const IdentityListItem = forwardRef(({ identity: _, presence: $, onClick: I, cla
|
|
|
69864
69891
|
x: 8,
|
|
69865
69892
|
y: 8
|
|
69866
69893
|
}, DeviceListItem = forwardRef(
|
|
69867
|
-
({
|
|
69868
|
-
|
|
69869
|
-
|
|
69894
|
+
({
|
|
69895
|
+
device: _,
|
|
69896
|
+
onClickAdd: $,
|
|
69897
|
+
onClickEdit: I,
|
|
69898
|
+
onClickReset: j,
|
|
69899
|
+
onClickJoinExisting: U,
|
|
69900
|
+
classNames: q,
|
|
69901
|
+
connectionState: G,
|
|
69902
|
+
onAgentDestroy: K,
|
|
69903
|
+
...Y
|
|
69904
|
+
}, J) => {
|
|
69905
|
+
var ae, se;
|
|
69906
|
+
const { t: Z } = useTranslation("os"), Q = keyToFallback(_.deviceKey), ee = useId("identityListItem__label"), te = _.profile ? Z("device name placeholder", { os: _.profile.os, platform: _.profile.platform }) : generateName(_.deviceKey.toHex()), re = _.kind === DeviceKind$1.CURRENT;
|
|
69870
69907
|
return /* @__PURE__ */ React__default.createElement(
|
|
69871
69908
|
ListItem.Root,
|
|
69872
69909
|
{
|
|
69873
|
-
...
|
|
69910
|
+
...Y,
|
|
69874
69911
|
classNames: ["flex gap-2 items-center mlb-2", q],
|
|
69875
|
-
"data-testid": `device-list-item${
|
|
69876
|
-
labelId:
|
|
69877
|
-
ref:
|
|
69912
|
+
"data-testid": `device-list-item${re ? "-current" : ""}`,
|
|
69913
|
+
labelId: ee,
|
|
69914
|
+
ref: J
|
|
69878
69915
|
},
|
|
69879
69916
|
/* @__PURE__ */ React__default.createElement(
|
|
69880
69917
|
Avatar.Root,
|
|
69881
69918
|
{
|
|
69882
|
-
status:
|
|
69883
|
-
labelId:
|
|
69884
|
-
hue:
|
|
69919
|
+
status: re && G === ConnectionState$1.OFFLINE ? "error" : _.presence === Device$1.PresenceState.ONLINE ? "active" : "inactive",
|
|
69920
|
+
labelId: ee,
|
|
69921
|
+
hue: Q.hue,
|
|
69885
69922
|
variant: "square"
|
|
69886
69923
|
},
|
|
69887
|
-
/* @__PURE__ */ React__default.createElement(Avatar.Frame, { classNames: "place-self-center" }, (
|
|
69888
|
-
/* @__PURE__ */ React__default.createElement(Avatar.Label, { classNames: "flex-1 text-sm truncate" },
|
|
69889
|
-
|
|
69890
|
-
_.
|
|
69924
|
+
/* @__PURE__ */ React__default.createElement(Avatar.Frame, { classNames: "place-self-center" }, (ae = _.profile) != null && ae.type ? _.profile.type === DeviceType.AGENT_MANAGED ? /* @__PURE__ */ React__default.createElement(Database, { ...iconProps }) : _.profile.type === DeviceType.BROWSER ? /* @__PURE__ */ React__default.createElement(Compass, { ...iconProps }) : _.profile.type === DeviceType.NATIVE ? /* @__PURE__ */ React__default.createElement(Desktop, { ...iconProps }) : [DeviceType.AGENT, DeviceType.AGENT_MANAGED].includes(_.profile.type) ? /* @__PURE__ */ React__default.createElement(Robot, { ...iconProps }) : _.profile.type === DeviceType.MOBILE ? /* @__PURE__ */ React__default.createElement(DeviceMobile, { ...iconProps }) : /* @__PURE__ */ React__default.createElement(Devices, { ...iconProps }) : /* @__PURE__ */ React__default.createElement(Avatar.Fallback, { text: Q.emoji })),
|
|
69925
|
+
/* @__PURE__ */ React__default.createElement(Avatar.Label, { classNames: "flex-1 text-sm truncate" }, te),
|
|
69926
|
+
re && /* @__PURE__ */ React__default.createElement(Tag, { color: "primary" }, Z("current device tag label")),
|
|
69927
|
+
((se = _.profile) == null ? void 0 : se.type) === DeviceType.AGENT_MANAGED ? /* @__PURE__ */ React__default.createElement(Tooltip.Root, null, /* @__PURE__ */ React__default.createElement(Tooltip.Trigger, { asChild: !0 }, /* @__PURE__ */ React__default.createElement(
|
|
69891
69928
|
Button,
|
|
69892
69929
|
{
|
|
69893
69930
|
variant: "ghost",
|
|
69894
69931
|
classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
|
|
69895
|
-
"data-testid":
|
|
69932
|
+
"data-testid": "agent.destroy",
|
|
69933
|
+
onClick: K
|
|
69896
69934
|
},
|
|
69897
|
-
/* @__PURE__ */ React__default.createElement("span", { className: "sr-only" },
|
|
69935
|
+
/* @__PURE__ */ React__default.createElement("span", { className: "sr-only" }, Z("destroy agent label")),
|
|
69936
|
+
/* @__PURE__ */ React__default.createElement(Power, { className: getSize(5) })
|
|
69937
|
+
)), /* @__PURE__ */ React__default.createElement(Tooltip.Portal, null, /* @__PURE__ */ React__default.createElement(Tooltip.Content, { side: "bottom", classNames: "z-50" }, Z("destroy agent label")))) : _.kind === DeviceKind$1.CURRENT && /* @__PURE__ */ React__default.createElement(DropdownMenu2.Root, null, /* @__PURE__ */ React__default.createElement(DropdownMenu2.Trigger, { asChild: !0 }, /* @__PURE__ */ React__default.createElement(
|
|
69938
|
+
Button,
|
|
69939
|
+
{
|
|
69940
|
+
variant: "ghost",
|
|
69941
|
+
classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
|
|
69942
|
+
"data-testid": `device-list-item${re ? "-current" : ""}.options`
|
|
69943
|
+
},
|
|
69944
|
+
/* @__PURE__ */ React__default.createElement("span", { className: "sr-only" }, Z("more options label")),
|
|
69898
69945
|
/* @__PURE__ */ React__default.createElement(DotsThree, { className: getSize(5) })
|
|
69899
|
-
)), /* @__PURE__ */ React__default.createElement(DropdownMenu2.Content, null, /* @__PURE__ */ React__default.createElement(DropdownMenu2.Viewport, null, /* @__PURE__ */ React__default.createElement(
|
|
69946
|
+
)), /* @__PURE__ */ React__default.createElement(DropdownMenu2.Content, null, /* @__PURE__ */ React__default.createElement(DropdownMenu2.Viewport, null, /* @__PURE__ */ React__default.createElement(
|
|
69947
|
+
DropdownMenu2.Item,
|
|
69948
|
+
{
|
|
69949
|
+
"data-testid": "device-list-item-current.join-existing",
|
|
69950
|
+
onClick: U
|
|
69951
|
+
},
|
|
69952
|
+
/* @__PURE__ */ React__default.createElement(ShareFat, { className: getSize(5) }),
|
|
69953
|
+
Z("choose join new identity label")
|
|
69954
|
+
), /* @__PURE__ */ React__default.createElement(DropdownMenu2.Item, { "data-testid": "device-list-item-current.reset", onClick: j }, /* @__PURE__ */ React__default.createElement(Power, { className: getSize(5) }), Z("reset device label")))))
|
|
69900
69955
|
)
|
|
69901
69956
|
);
|
|
69902
69957
|
}
|
|
@@ -69906,18 +69961,20 @@ const IdentityListItem = forwardRef(({ identity: _, presence: $, onClick: I, cla
|
|
|
69906
69961
|
onClickAdd: I,
|
|
69907
69962
|
onClickEdit: j,
|
|
69908
69963
|
onClickReset: U,
|
|
69909
|
-
onClickJoinExisting: q
|
|
69964
|
+
onClickJoinExisting: q,
|
|
69965
|
+
onAgentDestroy: G
|
|
69910
69966
|
}) => {
|
|
69911
|
-
const { t:
|
|
69912
|
-
return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("h2", { className: mx(descriptionText, "text-center mbs-4") },
|
|
69967
|
+
const { t: K } = useTranslation("os");
|
|
69968
|
+
return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("h2", { className: mx(descriptionText, "text-center mbs-4") }, K("devices heading")), _.length > 0 && /* @__PURE__ */ React__default.createElement(List, null, _.map((Y) => /* @__PURE__ */ React__default.createElement(
|
|
69913
69969
|
DeviceListItem,
|
|
69914
69970
|
{
|
|
69915
|
-
key:
|
|
69916
|
-
device:
|
|
69917
|
-
onClickEdit: () => j == null ? void 0 : j(
|
|
69971
|
+
key: Y.deviceKey.toHex(),
|
|
69972
|
+
device: Y,
|
|
69973
|
+
onClickEdit: () => j == null ? void 0 : j(Y),
|
|
69918
69974
|
onClickReset: U,
|
|
69919
69975
|
onClickJoinExisting: q,
|
|
69920
|
-
connectionState:
|
|
69976
|
+
connectionState: $,
|
|
69977
|
+
onAgentDestroy: G
|
|
69921
69978
|
}
|
|
69922
69979
|
))), /* @__PURE__ */ React__default.createElement(
|
|
69923
69980
|
Button,
|
|
@@ -69928,7 +69985,7 @@ const IdentityListItem = forwardRef(({ identity: _, presence: $, onClick: I, cla
|
|
|
69928
69985
|
onClick: I
|
|
69929
69986
|
},
|
|
69930
69987
|
/* @__PURE__ */ React__default.createElement("div", { role: "img", className: mx(getSize(8), "m-1 rounded-sm surface-input grid place-items-center") }, /* @__PURE__ */ React__default.createElement(Plus, { weight: "light", className: getSize(6) })),
|
|
69931
|
-
/* @__PURE__ */ React__default.createElement("span", { className: "grow font-medium text-start" },
|
|
69988
|
+
/* @__PURE__ */ React__default.createElement("span", { className: "grow font-medium text-start" }, K("choose add device label")),
|
|
69932
69989
|
/* @__PURE__ */ React__default.createElement(CaretRight, { weight: "bold", className: getSize(4) })
|
|
69933
69990
|
));
|
|
69934
69991
|
}, minutesInMonth = 43200, minutesInDay = 1440;
|
|
@@ -79262,80 +79319,98 @@ const identityMachine = createMachine(
|
|
|
79262
79319
|
}))
|
|
79263
79320
|
}
|
|
79264
79321
|
}), IdentityActionChooser = (_) => {
|
|
79265
|
-
const { send: $ } = _, I = useClient(), j = useHaloInvitations(), U =
|
|
79266
|
-
const
|
|
79267
|
-
|
|
79268
|
-
}, []),
|
|
79269
|
-
j.forEach((
|
|
79270
|
-
const
|
|
79271
|
-
process.env.NODE_ENV !== "production" &&
|
|
79322
|
+
const { send: $ } = _, I = useClient(), j = useHaloInvitations(), U = useCallback((G) => {
|
|
79323
|
+
const K = InvitationEncoder.encode(G);
|
|
79324
|
+
G.state === Invitation.State.CONNECTING && log$2.info(JSON.stringify({ invitationCode: K, authCode: G.authCode }));
|
|
79325
|
+
}, []), q = () => {
|
|
79326
|
+
j.forEach((K) => K.cancel());
|
|
79327
|
+
const G = I.halo.share();
|
|
79328
|
+
process.env.NODE_ENV !== "production" && G.subscribe(U), $ == null || $({ type: "selectInvitation", invitation: G });
|
|
79272
79329
|
};
|
|
79273
|
-
return /* @__PURE__ */ React__default.createElement(
|
|
79274
|
-
IdentityActionChooserImpl,
|
|
79275
|
-
{
|
|
79276
|
-
..._,
|
|
79277
|
-
onCreateInvitationClick: G,
|
|
79278
|
-
agentHostingEnabled: !!U
|
|
79279
|
-
}
|
|
79280
|
-
);
|
|
79330
|
+
return /* @__PURE__ */ React__default.createElement(IdentityActionChooserImpl, { ..._, onCreateInvitationClick: q });
|
|
79281
79331
|
}, IdentityActionChooserImpl = ({
|
|
79282
79332
|
send: _,
|
|
79283
79333
|
onCreateInvitationClick: $,
|
|
79284
79334
|
devices: I,
|
|
79285
79335
|
connectionState: j,
|
|
79286
|
-
|
|
79287
|
-
|
|
79288
|
-
|
|
79289
|
-
|
|
79290
|
-
|
|
79291
|
-
|
|
79292
|
-
|
|
79293
|
-
{
|
|
79294
|
-
|
|
79295
|
-
|
|
79296
|
-
|
|
79297
|
-
|
|
79298
|
-
|
|
79299
|
-
|
|
79300
|
-
)
|
|
79336
|
+
agentHostingEnabled: U,
|
|
79337
|
+
...q
|
|
79338
|
+
}) => {
|
|
79339
|
+
const G = I.find((K) => {
|
|
79340
|
+
var Y;
|
|
79341
|
+
return ((Y = K.profile) == null ? void 0 : Y.type) === DeviceType.AGENT_MANAGED;
|
|
79342
|
+
});
|
|
79343
|
+
return /* @__PURE__ */ React__default.createElement("div", { role: "none", className: "bs-40 grow overflow-y-auto overflow-x-hidden" }, /* @__PURE__ */ React__default.createElement(
|
|
79344
|
+
DeviceList,
|
|
79345
|
+
{
|
|
79346
|
+
devices: I,
|
|
79347
|
+
connectionState: j,
|
|
79348
|
+
onClickAdd: $,
|
|
79349
|
+
onClickJoinExisting: () => _ == null ? void 0 : _({ type: "chooseJoinNewIdentity" }),
|
|
79350
|
+
onClickReset: () => _ == null ? void 0 : _({ type: "chooseResetStorage" }),
|
|
79351
|
+
onAgentDestroy: q.onAgentDestroy
|
|
79352
|
+
}
|
|
79353
|
+
), !G && U && /* @__PURE__ */ React__default.createElement(AgentConfig, { ...q }));
|
|
79354
|
+
}, useAgentHandlers = ({
|
|
79301
79355
|
invitations: _,
|
|
79302
79356
|
identity: $
|
|
79303
79357
|
}) => {
|
|
79304
|
-
const [I, j] = useState(""), [U, q] = useState(""),
|
|
79305
|
-
|
|
79306
|
-
|
|
79307
|
-
|
|
79308
|
-
const re = await (
|
|
79309
|
-
|
|
79310
|
-
}
|
|
79311
|
-
|
|
79312
|
-
|
|
79313
|
-
|
|
79314
|
-
|
|
79315
|
-
|
|
79316
|
-
if (
|
|
79358
|
+
const [I, j] = useState(""), [U, q] = useState("getting"), G = useAgentHostingClient(), K = useClient(), Y = async () => {
|
|
79359
|
+
if (G) {
|
|
79360
|
+
q("getting");
|
|
79361
|
+
try {
|
|
79362
|
+
const re = await (G == null ? void 0 : G.getAgent(($ == null ? void 0 : $.identityKey.truncate()) ?? "never"));
|
|
79363
|
+
q(re ? "created" : "creatable");
|
|
79364
|
+
} catch (re) {
|
|
79365
|
+
q("error"), j(`Couldn’t check agent status: ${re.message}`);
|
|
79366
|
+
}
|
|
79367
|
+
} else
|
|
79368
|
+
q("error"), j("No agent provider configured.");
|
|
79369
|
+
}, J = async (re) => {
|
|
79370
|
+
if (invariant($, "Identity not found"), G) {
|
|
79371
|
+
q("creating"), j("");
|
|
79317
79372
|
try {
|
|
79318
|
-
|
|
79319
|
-
q(ae), K(!0), j("");
|
|
79373
|
+
await (G == null ? void 0 : G.createAgent(re, $.identityKey.truncate())) ? q("created") : (q("creatable"), j("Error creating agent."));
|
|
79320
79374
|
} catch (ae) {
|
|
79321
|
-
j(`
|
|
79375
|
+
return j(`Error creating agent: ${ae.message}`), Y();
|
|
79322
79376
|
}
|
|
79377
|
+
} else
|
|
79378
|
+
q("error"), j("No agent provider configured.");
|
|
79379
|
+
}, Z = async () => {
|
|
79380
|
+
if (invariant($, "Identity not found"), G) {
|
|
79381
|
+
q("destroying"), j("");
|
|
79382
|
+
try {
|
|
79383
|
+
await (G == null ? void 0 : G.destroyAgent($.identityKey.truncate())), q("creatable");
|
|
79384
|
+
} catch (re) {
|
|
79385
|
+
return j(`Error destroying agent: ${re.message}`), Y();
|
|
79386
|
+
}
|
|
79387
|
+
} else
|
|
79388
|
+
q("error"), j("No agent provider configured.");
|
|
79389
|
+
};
|
|
79390
|
+
useEffect(() => {
|
|
79391
|
+
Y();
|
|
79323
79392
|
}, []);
|
|
79324
|
-
|
|
79325
|
-
|
|
79326
|
-
|
|
79327
|
-
|
|
79328
|
-
|
|
79329
|
-
|
|
79330
|
-
|
|
79331
|
-
|
|
79332
|
-
|
|
79333
|
-
|
|
79334
|
-
|
|
79335
|
-
|
|
79336
|
-
|
|
79337
|
-
|
|
79338
|
-
|
|
79393
|
+
const Q = useCallback(async (re) => {
|
|
79394
|
+
const ae = InvitationEncoder.encode(re);
|
|
79395
|
+
if (re.state === Invitation.State.CONNECTING)
|
|
79396
|
+
return log$2.info(JSON.stringify({ invitationCode: ae, authCode: re.authCode })), J(ae);
|
|
79397
|
+
}, []);
|
|
79398
|
+
return {
|
|
79399
|
+
onAgentCreate: async () => {
|
|
79400
|
+
_.forEach((ae) => ae.cancel()), K.halo.share({
|
|
79401
|
+
type: Invitation.Type.INTERACTIVE,
|
|
79402
|
+
authMethod: Invitation.AuthMethod.NONE,
|
|
79403
|
+
multiUse: !0
|
|
79404
|
+
}).subscribe(Q);
|
|
79405
|
+
},
|
|
79406
|
+
onAgentDestroy: Z,
|
|
79407
|
+
onAgentRefresh: async () => {
|
|
79408
|
+
j(""), await Y();
|
|
79409
|
+
},
|
|
79410
|
+
validationMessage: I,
|
|
79411
|
+
agentStatus: U,
|
|
79412
|
+
agentHostingEnabled: !!G
|
|
79413
|
+
};
|
|
79339
79414
|
};
|
|
79340
79415
|
var qrcode = { exports: {} };
|
|
79341
79416
|
(function(_, $) {
|
|
@@ -80632,7 +80707,7 @@ const invitationStatusValue = /* @__PURE__ */ new Map([
|
|
|
80632
80707
|
)), /* @__PURE__ */ React__default.createElement(Toolbar.Root, { classNames: "flex justify-center items-center gap-1 pt-3" }, /* @__PURE__ */ React__default.createElement(EmojiPickerToolbarButton, { emoji: Q, onChangeEmoji: le, classNames: "bs-[--rail-action]" }), /* @__PURE__ */ React__default.createElement(HuePickerToolbarButton, { hue: te, onChangeHue: de, classNames: "bs-[--rail-action]" }), /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Tooltip.Root, null, /* @__PURE__ */ React__default.createElement(Tooltip.Trigger, { asChild: !0 }, /* @__PURE__ */ React__default.createElement(
|
|
80633
80708
|
Toolbar.Button,
|
|
80634
80709
|
{
|
|
80635
|
-
classNames: "bs-[--rail-action]
|
|
80710
|
+
classNames: "bs-[--rail-action]",
|
|
80636
80711
|
"data-testid": "update-profile-form-copy-key",
|
|
80637
80712
|
onClick: () => se(fe)
|
|
80638
80713
|
},
|
|
@@ -80641,10 +80716,7 @@ const invitationStatusValue = /* @__PURE__ */ new Map([
|
|
|
80641
80716
|
)), /* @__PURE__ */ React__default.createElement(Tooltip.Portal, null, /* @__PURE__ */ React__default.createElement(Tooltip.Content, { side: "bottom", classNames: "z-50" }, Y(oe ? "copy success label" : "copy self public key label"), /* @__PURE__ */ React__default.createElement(Tooltip.Arrow, null))), /* @__PURE__ */ React__default.createElement(Tooltip.Root, null, /* @__PURE__ */ React__default.createElement(Tooltip.Trigger, { asChild: !0 }, /* @__PURE__ */ React__default.createElement(
|
|
80642
80717
|
Toolbar.Button,
|
|
80643
80718
|
{
|
|
80644
|
-
classNames: [
|
|
80645
|
-
"bs-[--rail-action] is-[--rail-action] justify-self-end",
|
|
80646
|
-
!he && "text-error-500"
|
|
80647
|
-
],
|
|
80719
|
+
classNames: ["bs-[--rail-action]", !he && "text-error-500"],
|
|
80648
80720
|
onClick: () => G == null ? void 0 : G(he ? ConnectionState$1.OFFLINE : ConnectionState$1.ONLINE)
|
|
80649
80721
|
},
|
|
80650
80722
|
/* @__PURE__ */ React__default.createElement("span", { className: "sr-only" }, Y(he ? "disconnect label" : "connect label")),
|
|
@@ -88290,7 +88362,12 @@ const os = {
|
|
|
88290
88362
|
"create agent label": "Start an agent",
|
|
88291
88363
|
"destroy agent label": "Shut down agent",
|
|
88292
88364
|
"agent device label": "Your agent",
|
|
88293
|
-
"shell fallback title": "Shell failed to connect"
|
|
88365
|
+
"shell fallback title": "Shell failed to connect",
|
|
88366
|
+
"creating agent label": "Starting agent…",
|
|
88367
|
+
"destroying agent label": "Stopping agent…",
|
|
88368
|
+
"getting agent label": "Checking agent status…",
|
|
88369
|
+
"agent requested label": "Agent requested",
|
|
88370
|
+
"agent requested description": "The agent service is creating an agent for you. Once the agent connects, it will display in the devices list."
|
|
88294
88371
|
}, enUS = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
88295
88372
|
__proto__: null,
|
|
88296
88373
|
os
|