@dxos/shell 0.6.14-main.8b352a0 → 0.6.14-staging.4b6f9cf

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 (64) hide show
  1. package/dist/bundle/shell.mjs +5168 -5065
  2. package/dist/bundle/shell.mjs.map +1 -1
  3. package/dist/bundle/shell.umd.js +57 -57
  4. package/dist/bundle/shell.umd.js.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 +50 -53
  8. package/dist/lib/browser/react.mjs.map +3 -3
  9. package/dist/lib/browser/testing/index.mjs +2 -0
  10. package/dist/lib/browser/testing/index.mjs.map +2 -2
  11. package/dist/lib/node/meta.json +1 -1
  12. package/dist/lib/node/react.cjs +34 -37
  13. package/dist/lib/node/react.cjs.map +3 -3
  14. package/dist/lib/node/testing/index.cjs +2 -0
  15. package/dist/lib/node/testing/index.cjs.map +2 -2
  16. package/dist/lib/node-esm/meta.json +1 -1
  17. package/dist/lib/node-esm/react.mjs +50 -53
  18. package/dist/lib/node-esm/react.mjs.map +3 -3
  19. package/dist/lib/node-esm/testing/index.mjs +2 -0
  20. package/dist/lib/node-esm/testing/index.mjs.map +2 -2
  21. package/dist/types/src/components/DeviceList/DeviceListItem.d.ts.map +1 -1
  22. package/dist/types/src/components/DeviceList/DeviceListItem.js +4 -10
  23. package/dist/types/src/components/DeviceList/DeviceListItem.js.map +1 -1
  24. package/dist/types/src/components/Panel/Action.d.ts +2 -0
  25. package/dist/types/src/components/Panel/Action.d.ts.map +1 -1
  26. package/dist/types/src/components/Panel/Action.js +16 -14
  27. package/dist/types/src/components/Panel/Action.js.map +1 -1
  28. package/dist/types/src/panels/IdentityPanel/IdentityPanel.d.ts.map +1 -1
  29. package/dist/types/src/panels/IdentityPanel/IdentityPanel.js +13 -6
  30. package/dist/types/src/panels/IdentityPanel/IdentityPanel.js.map +1 -1
  31. package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.d.ts +1 -0
  32. package/dist/types/src/panels/IdentityPanel/IdentityPanelProps.d.ts.map +1 -1
  33. package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.d.ts.map +1 -1
  34. package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.js +3 -3
  35. package/dist/types/src/panels/IdentityPanel/steps/IdentityActionChooser.js.map +1 -1
  36. package/dist/types/src/panels/IdentityPanel/useEdgeAgentsHandlers.d.ts.map +1 -1
  37. package/dist/types/src/panels/IdentityPanel/useEdgeAgentsHandlers.js +5 -0
  38. package/dist/types/src/panels/IdentityPanel/useEdgeAgentsHandlers.js.map +1 -1
  39. package/dist/types/src/panels/SpacePanel/SpacePanel.d.ts.map +1 -1
  40. package/dist/types/src/panels/SpacePanel/SpacePanel.js +2 -2
  41. package/dist/types/src/panels/SpacePanel/SpacePanel.js.map +1 -1
  42. package/dist/types/src/panels/SpacePanel/SpacePanelProps.d.ts +1 -0
  43. package/dist/types/src/panels/SpacePanel/SpacePanelProps.d.ts.map +1 -1
  44. package/dist/types/src/panels/SpacePanel/steps/SpaceManager.d.ts.map +1 -1
  45. package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js +5 -3
  46. package/dist/types/src/panels/SpacePanel/steps/SpaceManager.js.map +1 -1
  47. package/dist/types/src/playwright/invitations-manager.d.ts.map +1 -1
  48. package/dist/types/src/playwright/invitations-manager.js +9 -1
  49. package/dist/types/src/playwright/invitations-manager.js.map +1 -1
  50. package/dist/types/src/testing/shell-manager.d.ts.map +1 -1
  51. package/dist/types/src/testing/shell-manager.js +2 -0
  52. package/dist/types/src/testing/shell-manager.js.map +1 -1
  53. package/package.json +25 -25
  54. package/src/components/DeviceList/DeviceListItem.tsx +38 -42
  55. package/src/components/Panel/Action.tsx +40 -31
  56. package/src/panels/IdentityPanel/IdentityPanel.tsx +13 -3
  57. package/src/panels/IdentityPanel/IdentityPanelProps.ts +1 -0
  58. package/src/panels/IdentityPanel/steps/IdentityActionChooser.tsx +5 -3
  59. package/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts +7 -0
  60. package/src/panels/SpacePanel/SpacePanel.tsx +2 -1
  61. package/src/panels/SpacePanel/SpacePanelProps.ts +1 -0
  62. package/src/panels/SpacePanel/steps/SpaceManager.tsx +5 -3
  63. package/src/playwright/invitations-manager.ts +8 -1
  64. package/src/testing/shell-manager.ts +2 -0
@@ -225,6 +225,7 @@ var import_react_client4 = require("@dxos/react-client");
225
225
  var import_react41 = require("react");
226
226
  var import_invariant2 = require("@dxos/invariant");
227
227
  var import_services = require("@dxos/protocols/proto/dxos/client/services");
228
+ var import_metadata = require("@dxos/protocols/proto/dxos/echo/metadata");
228
229
  var import_react_client5 = require("@dxos/react-client");
229
230
  var import_react42 = require("react");
230
231
  var import_invariant3 = require("@dxos/invariant");
@@ -848,7 +849,7 @@ var iconProps = {
848
849
  x: 8,
849
850
  y: 8
850
851
  };
851
- var DeviceListItem = /* @__PURE__ */ (0, import_react17.forwardRef)(({ device, onClickAdd, onClickEdit, onClickReset, onClickRecover, onClickJoinExisting, classNames, connectionState, onAgentDestroy, ...props }, forwardedRef) => {
852
+ var DeviceListItem = /* @__PURE__ */ (0, import_react17.forwardRef)(({ device, onClickAdd, onClickEdit, onClickReset, onClickRecover, onClickJoinExisting, classNames, connectionState, onAgentDestroy: _, ...props }, forwardedRef) => {
852
853
  const { t } = (0, import_react_ui9.useTranslation)("os");
853
854
  const fallbackValue = (0, import_util2.keyToFallback)(device.deviceKey);
854
855
  const labelId = (0, import_react_ui9.useId)("identityListItem__label");
@@ -882,21 +883,7 @@ var DeviceListItem = /* @__PURE__ */ (0, import_react17.forwardRef)(({ device, o
882
883
  classNames: "flex-1 text-sm truncate"
883
884
  }, displayName), isCurrent && /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Tag, {
884
885
  color: "primary"
885
- }, t("current device tag label")), device.profile?.type === import_halo.DeviceType.AGENT_MANAGED ? /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Tooltip.Root, null, /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Tooltip.Trigger, {
886
- asChild: true
887
- }, /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Button, {
888
- variant: "ghost",
889
- classNames: "pli-0 is-[--rail-action] bs-[--rail-action]",
890
- "data-testid": "agent.destroy",
891
- onClick: onAgentDestroy
892
- }, /* @__PURE__ */ import_react17.default.createElement("span", {
893
- className: "sr-only"
894
- }, t("destroy agent label")), /* @__PURE__ */ import_react17.default.createElement(import_react16.Power, {
895
- className: (0, import_react_ui_theme9.getSize)(5)
896
- }))), /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Tooltip.Portal, null, /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Tooltip.Content, {
897
- side: "bottom",
898
- classNames: "z-50"
899
- }, t("destroy agent label")))) : device.kind === import_halo.DeviceKind.CURRENT && /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.DropdownMenu.Root, null, /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.DropdownMenu.Trigger, {
886
+ }, t("current device tag label")), device.kind === import_halo.DeviceKind.CURRENT && /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.DropdownMenu.Root, null, /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.DropdownMenu.Trigger, {
900
887
  asChild: true
901
888
  }, /* @__PURE__ */ import_react17.default.createElement(import_react_ui9.Button, {
902
889
  variant: "ghost",
@@ -1187,7 +1174,8 @@ var defaultActions = {
1187
1174
  }
1188
1175
  };
1189
1176
  var BifurcatedAction = /* @__PURE__ */ (0, import_react24.forwardRef)((props, forwardedRef) => {
1190
- const { classNames, variant, isFull = true, actions = defaultActions, activeAction: propsActiveAction, onChangeActiveAction, defaultActiveAction, ...rest } = props;
1177
+ const { classNames, variant, isFull = true, actions = defaultActions, activeAction: propsActiveAction, onChangeActiveAction, defaultActiveAction, "data-testid": testId, ...rest } = props;
1178
+ const dropdownTestId = testId && `${testId}.more`;
1191
1179
  const [activeActionKey2 = Object.keys(actions)[0], setActiveAction] = (0, import_react_use_controllable_state3.useControllableState)({
1192
1180
  prop: propsActiveAction,
1193
1181
  onChange: onChangeActiveAction,
@@ -1206,6 +1194,7 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react24.forwardRef)((props, fo
1206
1194
  ],
1207
1195
  ref: forwardedRef,
1208
1196
  variant,
1197
+ "data-testid": testId,
1209
1198
  onClick: activeAction.onClick
1210
1199
  }, activeAction.icon && /* @__PURE__ */ import_react24.default.createElement(activeAction.icon, {
1211
1200
  className: (0, import_react_ui_theme13.getSize)(5)
@@ -1215,19 +1204,21 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react24.forwardRef)((props, fo
1215
1204
  classNames: [
1216
1205
  "bs-11 flex-none rounded-is-none",
1217
1206
  classNames
1218
- ]
1207
+ ],
1208
+ "data-testid": dropdownTestId
1219
1209
  }, /* @__PURE__ */ import_react24.default.createElement("span", {
1220
1210
  className: "sr-only"
1221
1211
  }, t("invite options label")), /* @__PURE__ */ import_react24.default.createElement(import_react23.CaretDown, {
1222
1212
  className: (0, import_react_ui_theme13.getSize)(4)
1223
- }))), /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Content, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Viewport, null, Object.entries(actions).map(([id, action]) => {
1213
+ }))), /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Portal, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Content, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Viewport, null, Object.entries(actions).map(([id, action]) => {
1224
1214
  return /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.CheckboxItem, {
1225
1215
  key: id,
1226
1216
  "aria-labelledby": `${id}__label`,
1227
1217
  "aria-describedby": `${id}__description`,
1228
1218
  checked: activeActionKey2 === id,
1229
1219
  onCheckedChange: (checked) => checked && setActiveAction(id),
1230
- classNames: "gap-2"
1220
+ classNames: "gap-2",
1221
+ "data-testid": action.testId
1231
1222
  }, action.icon && /* @__PURE__ */ import_react24.default.createElement(action.icon, {
1232
1223
  className: (0, import_react_ui_theme13.getSize)(5)
1233
1224
  }), /* @__PURE__ */ import_react24.default.createElement("div", {
@@ -1244,7 +1235,7 @@ var BifurcatedAction = /* @__PURE__ */ (0, import_react24.forwardRef)((props, fo
1244
1235
  weight: "bold",
1245
1236
  className: (0, import_react_ui_theme13.getSize)(4)
1246
1237
  })));
1247
- })), /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Arrow, null))));
1238
+ })), /* @__PURE__ */ import_react24.default.createElement(import_react_ui12.DropdownMenu.Arrow, null)))));
1248
1239
  });
1249
1240
  var Action = /* @__PURE__ */ (0, import_react24.forwardRef)((props, forwardedRef) => {
1250
1241
  const { children, classNames, variant, isFull = true, ...rest } = props;
@@ -1573,7 +1564,7 @@ var IdentityActionChooser = (props) => {
1573
1564
  });
1574
1565
  };
1575
1566
  var IdentityActionChooserImpl = ({ devices, connectionState, agentHostingEnabled, onClickAdd, onClickJoinExisting, onClickRecover, onClickReset, ...agentProps }) => {
1576
- const managedDeviceAvailable = devices.find((device) => device.profile?.type === import_halo3.DeviceType.AGENT_MANAGED);
1567
+ const edgeDeviceAvailable = devices.find((device) => device.profile?.type === import_halo3.DeviceType.AGENT_MANAGED && device.profile?.os?.toUpperCase() === "EDGE");
1577
1568
  return /* @__PURE__ */ import_react39.default.createElement("div", {
1578
1569
  role: "none",
1579
1570
  className: "bs-40 grow overflow-y-auto overflow-x-hidden"
@@ -1582,10 +1573,10 @@ var IdentityActionChooserImpl = ({ devices, connectionState, agentHostingEnabled
1582
1573
  connectionState,
1583
1574
  onClickAdd,
1584
1575
  onClickJoinExisting,
1585
- onClickRecover,
1576
+ onClickRecover: agentProps.agentStatus === "created" ? onClickRecover : void 0,
1586
1577
  onClickReset,
1587
1578
  onAgentDestroy: agentProps.onAgentDestroy
1588
- }), !managedDeviceAvailable && agentHostingEnabled && /* @__PURE__ */ import_react39.default.createElement(AgentConfig, agentProps));
1579
+ }), !edgeDeviceAvailable && agentHostingEnabled && /* @__PURE__ */ import_react39.default.createElement(AgentConfig, agentProps));
1589
1580
  };
1590
1581
  var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/IdentityPanel/useEdgeAgentsHandlers.ts";
1591
1582
  var useEdgeAgentHandlers = ({ identity }) => {
@@ -1622,7 +1613,7 @@ var useEdgeAgentHandlers = ({ identity }) => {
1622
1613
  const onAgentCreate = async () => {
1623
1614
  (0, import_invariant2.invariant)(identity, "Identity not found", {
1624
1615
  F: __dxlog_file3,
1625
- L: 56,
1616
+ L: 58,
1626
1617
  S: void 0,
1627
1618
  A: [
1628
1619
  "identity",
@@ -1644,6 +1635,7 @@ var useEdgeAgentHandlers = ({ identity }) => {
1644
1635
  setValidationMessage("");
1645
1636
  try {
1646
1637
  await service.createAgent();
1638
+ await Promise.all(client.spaces.get().map((space) => space?.internal.setEdgeReplicationPreference(import_metadata.EdgeReplicationSetting.ENABLED)));
1647
1639
  setAgentStatus("created");
1648
1640
  } catch (err) {
1649
1641
  setAgentStatus("error");
@@ -1977,7 +1969,7 @@ var __dxlog_file6 = "/home/runner/work/dxos/dxos/packages/sdk/shell/src/panels/I
1977
1969
  var viewStyles = "pbs-1 pbe-3 pli-3";
1978
1970
  var getHueValue = (identity) => identity?.profile?.data?.hue || (0, import_util5.hexToHue)(identity?.identityKey.toHex() ?? "0");
1979
1971
  var getEmojiValue = (identity) => identity?.profile?.data?.emoji || (0, import_util5.hexToEmoji)(identity?.identityKey.toHex() ?? "0");
1980
- var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, connectionState, onChangeConnectionState }) => {
1972
+ var IdentityHeading = ({ titleId, title, identity, hideRecover, onDone, onUpdateProfile, connectionState, onChangeConnectionState }) => {
1981
1973
  const client = (0, import_react_client2.useClient)();
1982
1974
  const fallbackValue = (0, import_util5.keyToFallback)(identity.identityKey);
1983
1975
  const { t } = (0, import_react_ui18.useTranslation)("os");
@@ -2010,7 +2002,7 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
2010
2002
  const handleRecoveryCode = async () => {
2011
2003
  (0, import_invariant.invariant)(client.services.services.IdentityService, "IdentityService not available", {
2012
2004
  F: __dxlog_file6,
2013
- L: 76,
2005
+ L: 77,
2014
2006
  S: void 0,
2015
2007
  A: [
2016
2008
  "client.services.services.IdentityService",
@@ -2021,7 +2013,6 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
2021
2013
  void setTextValue(seedphrase);
2022
2014
  };
2023
2015
  const isConnected = connectionState === import_mesh2.ConnectionState.ONLINE;
2024
- const isProduction = client.config.values.runtime?.app?.env?.DX_ENVIRONMENT === "production";
2025
2016
  return /* @__PURE__ */ import_react37.default.createElement(Heading, {
2026
2017
  titleId,
2027
2018
  title,
@@ -2078,7 +2069,7 @@ var IdentityHeading = ({ titleId, title, identity, onDone, onUpdateProfile, conn
2078
2069
  }))), /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Portal, null, /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Content, {
2079
2070
  side: "bottom",
2080
2071
  classNames: "z-50"
2081
- }, t(publicKeyCopied ? "copy success label" : "copy self public key label"), /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Arrow, null)))), !isProduction && /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Root, null, /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Trigger, {
2072
+ }, t(publicKeyCopied ? "copy success label" : "copy self public key label"), /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Arrow, null)))), !hideRecover && /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Root, null, /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Tooltip.Trigger, {
2082
2073
  asChild: true
2083
2074
  }, /* @__PURE__ */ import_react37.default.createElement(import_react_ui18.Toolbar.Button, {
2084
2075
  classNames: "bs-[--rail-action]",
@@ -2122,10 +2113,12 @@ var IdentityPanelImpl = (props) => {
2122
2113
  t
2123
2114
  ]);
2124
2115
  const onCancelReset = () => rest.send?.("unchooseAction");
2116
+ const hideRecover = rest.agentStatus !== "created";
2125
2117
  return /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, /* @__PURE__ */ import_react37.default.createElement(IdentityHeading, {
2126
2118
  identity,
2127
2119
  titleId,
2128
2120
  title,
2121
+ hideRecover,
2129
2122
  onDone,
2130
2123
  onUpdateProfile,
2131
2124
  connectionState,
@@ -2195,7 +2188,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
2195
2188
  if (!identity) {
2196
2189
  import_log.log.error("IdentityPanel rendered with no active identity.", void 0, {
2197
2190
  F: __dxlog_file6,
2198
- L: 278,
2191
+ L: 288,
2199
2192
  S: void 0,
2200
2193
  C: (f, a) => f(...a)
2201
2194
  });
@@ -2212,7 +2205,7 @@ var IdentityPanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => co
2212
2205
  const subscription = identityService.subscribe((state) => {
2213
2206
  (0, import_log.log)("[state]", state, {
2214
2207
  F: __dxlog_file6,
2215
- L: 291,
2208
+ L: 301,
2216
2209
  S: void 0,
2217
2210
  C: (f, a) => f(...a)
2218
2211
  });
@@ -3792,6 +3785,7 @@ var SpaceManager = (props) => {
3792
3785
  label: t("invite one label"),
3793
3786
  description: t("invite one description"),
3794
3787
  icon: import_react63.UserPlus,
3788
+ testId: "spaces-panel.invite-one",
3795
3789
  onClick: (0, import_react64.useCallback)(() => {
3796
3790
  const invitation = space.share?.({
3797
3791
  type: import_invitations10.Invitation.Type.INTERACTIVE,
@@ -3803,13 +3797,15 @@ var SpaceManager = (props) => {
3803
3797
  const subscription = invitation.subscribe((invitation2) => handleInvitationEvent(invitation2, subscription));
3804
3798
  }
3805
3799
  }, [
3806
- space
3800
+ space,
3801
+ target
3807
3802
  ])
3808
3803
  },
3809
3804
  inviteMany: {
3810
3805
  label: t("invite many label"),
3811
3806
  description: t("invite many description"),
3812
3807
  icon: import_react63.UsersThree,
3808
+ testId: "spaces-panel.invite-many",
3813
3809
  onClick: (0, import_react64.useCallback)(() => {
3814
3810
  const invitation = space.share?.({
3815
3811
  type: import_invitations10.Invitation.Type.DELEGATED,
@@ -3821,7 +3817,8 @@ var SpaceManager = (props) => {
3821
3817
  const subscription = invitation.subscribe((invitation2) => handleInvitationEvent(invitation2, subscription));
3822
3818
  }
3823
3819
  }, [
3824
- space
3820
+ space,
3821
+ target
3825
3822
  ])
3826
3823
  }
3827
3824
  };
@@ -3844,7 +3841,7 @@ var SpaceManagerImpl = (props) => {
3844
3841
  }
3845
3842
  }
3846
3843
  };
3847
- const [activeAction, setInternalActiveAction] = (0, import_react64.useState)(localStorage.getItem(activeActionKey) ?? "inviteOne");
3844
+ const [activeAction, setInternalActiveAction] = (0, import_react64.useState)(localStorage.getItem(activeActionKey) ?? "inviteMany");
3848
3845
  const setActiveAction = (nextAction) => {
3849
3846
  setInternalActiveAction(nextAction);
3850
3847
  localStorage.setItem(activeActionKey, nextAction);
@@ -3901,8 +3898,8 @@ var SpacePanelHeading = ({ titleId, space, onDone }) => {
3901
3898
  }, name ?? space.key.truncate())));
3902
3899
  };
3903
3900
  var SpacePanelImpl = (props) => {
3904
- const { titleId, activeView, space, target, SpaceManager: SpaceManagerComponent = SpaceManager, InvitationManager: InvitationManagerComponent = InvitationManager, ...rest } = props;
3905
- return /* @__PURE__ */ import_react61.default.createElement(import_react61.default.Fragment, null, /* @__PURE__ */ import_react61.default.createElement(SpacePanelHeading, {
3901
+ const { titleId, activeView, space, hideHeading, target, SpaceManager: SpaceManagerComponent = SpaceManager, InvitationManager: InvitationManagerComponent = InvitationManager, ...rest } = props;
3902
+ return /* @__PURE__ */ import_react61.default.createElement(import_react61.default.Fragment, null, !hideHeading && /* @__PURE__ */ import_react61.default.createElement(SpacePanelHeading, {
3906
3903
  ...rest,
3907
3904
  titleId,
3908
3905
  space
@@ -3944,7 +3941,7 @@ var SpacePanel = ({ titleId: propsTitleId, createInvitationUrl = (code) => code,
3944
3941
  const subscription = spaceService.subscribe((state) => {
3945
3942
  (0, import_log11.log)("[state]", state, {
3946
3943
  F: __dxlog_file13,
3947
- L: 94,
3944
+ L: 95,
3948
3945
  S: void 0,
3949
3946
  C: (f, a) => f(...a)
3950
3947
  });