@devframes/hub 0.9.0-beta.2 → 0.9.0-beta.4

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.
@@ -1,7 +1,7 @@
1
- import { E as DevframeMessagesClient, x as DevframeMessageEntryInput } from "../context-Dz0j8Eyg.mjs";
2
- import { D as DevframeViewIframe, M as RemoteConnectionInfo, b as DevframeDockUserEntry, f as ClientScriptEntry, h as DevframeDockEntry, i as DevframeCommandEntry, j as NavTarget, m as DevframeDockEntriesGrouped, o as DevframeCommandKeybinding, t as DevframeClientCommand, v as DevframeDockEntryIcon } from "../commands-CAcTUSlj.mjs";
3
- import { t as DevframeDocksUserSettings } from "../settings-B1qJ47d5.mjs";
4
- import "../index-p4BktGvQ.mjs";
1
+ import { E as DevframeMessagesClient, x as DevframeMessageEntryInput } from "../context-C9Itl_OA.mjs";
2
+ import { M as NavTarget, N as RemoteConnectionInfo, O as DevframeViewIframe, f as ClientScriptEntry, g as DevframeDockEntry, h as DevframeDockEntriesGrouped, i as DevframeCommandEntry, o as DevframeCommandKeybinding, t as DevframeClientCommand, x as DevframeDockUserEntry, y as DevframeDockEntryIcon } from "../commands-CpkDWufe.mjs";
3
+ import { t as DevframeDocksUserSettings } from "../settings-CVQyYXhv.mjs";
4
+ import "../index-CZT5a0Rr.mjs";
5
5
  import { DevframeClientRpcHost, DevframeConnection, DevframeConnectionStatus, DevframeRpcClient, DevframeRpcClientOptions, DevframeRpcContext, RpcClientEvents, RpcClientEvents as RpcClientEvents$1 } from "devframe/client";
6
6
  import { EventEmitter } from "devframe/types";
7
7
  import { SharedState } from "devframe/utils/shared-state";
@@ -207,6 +207,14 @@ interface DocksEntriesContext {
207
207
  entries: DevframeDockEntry[];
208
208
  entryToStateMap: Map<string, DockEntryState>;
209
209
  groupedEntries: DevframeDockEntriesGrouped;
210
+ /**
211
+ * The resolved top-level category ordering — `DEFAULT_CATEGORIES_ORDER`,
212
+ * overridden by every installed devframe's own `dock.categoryOrder`
213
+ * (`ConnectionMeta.configs.dock.categoryOrder`), overridden again by the
214
+ * host page's own `createDevframeClientHost({ categoryOrder })`. Fixed
215
+ * for the life of the session — resolved once at boot.
216
+ */
217
+ readonly categoryOrder: Record<string, number>;
210
218
  settings: SharedState<DevframeDocksUserSettings>;
211
219
  /**
212
220
  * Get the state of a dock entry by its ID
@@ -504,7 +512,7 @@ interface DevframeClientHostOptions {
504
512
  *
505
513
  * Keys are merged over `DEFAULT_CATEGORIES_ORDER`, so the host app only
506
514
  * lists the categories it wants to move; any category absent from the map
507
- * keeps its default weight (falling back to `0`).
515
+ * keeps its default weight.
508
516
  *
509
517
  * @example
510
518
  * ```ts
@@ -445,6 +445,10 @@ async function createDevframeClientHost(options = {}) {
445
445
  const clientDocks = /* @__PURE__ */ new Map();
446
446
  const frameNavAdapters = /* @__PURE__ */ new Map();
447
447
  const loadScriptsEnabled = options.loadClientScripts ?? true;
448
+ const categoryOrder = {
449
+ ...DEFAULT_CATEGORIES_ORDER,
450
+ ...options.categoryOrder
451
+ };
448
452
  const panel = createPanelContext(clientType);
449
453
  const docks = createDocksContext();
450
454
  const commands = createCommandsContext();
@@ -579,7 +583,7 @@ async function createDevframeClientHost(options = {}) {
579
583
  }
580
584
  }
581
585
  docks.entries = entries;
582
- docks.groupedEntries = groupByCategory(entries);
586
+ docks.groupedEntries = groupByCategory(entries, categoryOrder);
583
587
  if (selectedId && !entryToStateMap.has(selectedId)) selectedId = null;
584
588
  }
585
589
  function createDocksContext() {
@@ -596,6 +600,7 @@ async function createDevframeClientHost(options = {}) {
596
600
  entries: [],
597
601
  entryToStateMap,
598
602
  groupedEntries: [],
603
+ categoryOrder,
599
604
  settings,
600
605
  getStateById: (id) => entryToStateMap.get(id),
601
606
  switchEntry,
@@ -741,7 +746,7 @@ function createPanelContext(clientType) {
741
746
  }
742
747
  };
743
748
  }
744
- function groupByCategory(entries) {
749
+ function groupByCategory(entries, categoryOrder) {
745
750
  const groupsById = /* @__PURE__ */ new Map();
746
751
  for (const entry of entries) if (entry.type === "group") groupsById.set(entry.id, entry);
747
752
  const groups = /* @__PURE__ */ new Map();
@@ -755,7 +760,7 @@ function groupByCategory(entries) {
755
760
  }
756
761
  list.push(entry);
757
762
  }
758
- return [...groups.entries()].sort(([a], [b]) => (DEFAULT_CATEGORIES_ORDER[a] ?? 0) - (DEFAULT_CATEGORIES_ORDER[b] ?? 0));
763
+ return [...groups.entries()].sort(([a], [b]) => (categoryOrder[a] ?? 0) - (categoryOrder[b] ?? 0));
759
764
  }
760
765
  //#endregion
761
766
  //#region src/client/remote.ts
@@ -50,6 +50,8 @@ type DevframeDockEntryIcon = string | {
50
50
  light: string;
51
51
  dark: string;
52
52
  };
53
+ /** Color for a dock-bar entry's {@link DevframeDockEntryBase.badge} — mirrors json-render's `TabDescriptor.badgeVariant`. */
54
+ type DevframeDockBadgeVariant = 'default' | 'info' | 'success' | 'warning' | 'danger';
53
55
  interface DevframeDockEntryBase {
54
56
  id: string;
55
57
  title: string;
@@ -114,6 +116,11 @@ interface DevframeDockEntryBase {
114
116
  * Badge text to display on the dock icon (e.g., unread count)
115
117
  */
116
118
  badge?: string;
119
+ /**
120
+ * Colors {@link badge}. Omitted (or `'default'`) keeps the existing neutral
121
+ * fill, so every pre-existing badge consumer keeps its current look.
122
+ */
123
+ badgeVariant?: DevframeDockBadgeVariant;
117
124
  /**
118
125
  * Id of the group this entry belongs to. When set, hosts collapse this entry
119
126
  * under the matching group's button instead of showing it directly on the
@@ -460,9 +467,6 @@ interface DevframeCommandBase {
460
467
  * `when` clauses are evaluated client-side only and are **not** enforced for
461
468
  * agent calls — opt in a `when`-gated command only if running it outside its
462
469
  * UI context is safe.
463
- *
464
- * @experimental The agent-native surface is experimental and may change
465
- * without a major version bump until it stabilizes.
466
470
  */
467
471
  interface DevframeCommandAgentOptions {
468
472
  /**
@@ -499,8 +503,6 @@ interface DevframeServerCommandInput extends DevframeCommandBase {
499
503
  /**
500
504
  * Opt this command in to the agent surface (`ctx.agent` → MCP). Requires a
501
505
  * `handler`. See {@link DevframeCommandAgentOptions}.
502
- *
503
- * @experimental
504
506
  */
505
507
  agent?: DevframeCommandAgentOptions;
506
508
  /**
@@ -572,4 +574,4 @@ interface DevframeCommandShortcutOverrides {
572
574
  [commandId: string]: DevframeCommandKeybinding[];
573
575
  }
574
576
  //#endregion
575
- export { FrameSubTabsConfig as A, DevframeViewAction as C, DevframeViewIframe as D, DevframeViewGroup as E, RemoteConnectionInfo as M, RemoteDockOptions as N, DevframeViewLauncher as O, DevframeDocksHost as S, DevframeViewCustomRender as T, DevframeDockEntryCategory as _, DevframeCommandHandle as a, DevframeDockUserEntry as b, DevframeCommandsHost as c, DevframeServerCommandInput as d, ClientScriptEntry as f, DevframeDockEntryBase as g, DevframeDockEntry as h, DevframeCommandEntry as i, NavTarget as j, DevframeViewLauncherStatus as k, DevframeCommandsHostEvents as l, DevframeDockEntriesGrouped as m, DevframeCommandAgentOptions as n, DevframeCommandKeybinding as o, DevframeDockActivation as p, DevframeCommandBase as r, DevframeCommandShortcutOverrides as s, DevframeClientCommand as t, DevframeServerCommandEntry as u, DevframeDockEntryIcon as v, DevframeViewBuiltin as w, DevframeDocksActiveState as x, DevframeDockEntryRegistry as y };
577
+ export { DevframeViewLauncherStatus as A, DevframeDocksHost as C, DevframeViewGroup as D, DevframeViewCustomRender as E, NavTarget as M, RemoteConnectionInfo as N, DevframeViewIframe as O, RemoteDockOptions as P, DevframeDocksActiveState as S, DevframeViewBuiltin as T, DevframeDockEntryBase as _, DevframeCommandHandle as a, DevframeDockEntryRegistry as b, DevframeCommandsHost as c, DevframeServerCommandInput as d, ClientScriptEntry as f, DevframeDockEntry as g, DevframeDockEntriesGrouped as h, DevframeCommandEntry as i, FrameSubTabsConfig as j, DevframeViewLauncher as k, DevframeCommandsHostEvents as l, DevframeDockBadgeVariant as m, DevframeCommandAgentOptions as n, DevframeCommandKeybinding as o, DevframeDockActivation as p, DevframeCommandBase as r, DevframeCommandShortcutOverrides as s, DevframeClientCommand as t, DevframeServerCommandEntry as u, DevframeDockEntryCategory as v, DevframeViewAction as w, DevframeDockUserEntry as x, DevframeDockEntryIcon as y };
@@ -1,4 +1,4 @@
1
- import { t as DevframeDocksUserSettings } from "./settings-B1qJ47d5.mjs";
1
+ import { t as DevframeDocksUserSettings } from "./settings-CVQyYXhv.mjs";
2
2
  export * from "devframe/constants";
3
3
  //#region src/constants.d.ts
4
4
  /**
@@ -34,8 +34,6 @@ const DEFAULT_STATE_USER_SETTINGS = () => ({
34
34
  docksCategoriesHidden: [],
35
35
  docksPinned: [],
36
36
  docksCustomOrder: {},
37
- showIframeAddressBar: false,
38
- closeOnOutsideClick: false,
39
37
  commandShortcuts: {}
40
38
  });
41
39
  //#endregion
@@ -3,12 +3,12 @@ import { DEFAULT_STATE_USER_SETTINGS } from "./constants.mjs";
3
3
  import { t as buildRemoteConnectionUrl } from "./remote-url-KVXtKP47.mjs";
4
4
  import { createEventEmitter } from "devframe/utils/events";
5
5
  import { createHostContext, createStorage } from "devframe/node";
6
+ import { getInternalContext, resolveBasePath } from "devframe/node/hub-internals";
6
7
  import { debounce } from "perfect-debounce";
7
8
  import { coerceAgentPositionalArgs } from "devframe/internal";
8
9
  import { defineDiagnostics } from "nostics";
9
10
  import { colors } from "devframe/utils/colors";
10
11
  import { ansiFormatter } from "nostics/formatters/ansi";
11
- import { getInternalContext, resolveBasePath } from "devframe/node/hub-internals";
12
12
  import { join, resolve } from "pathe";
13
13
  import { nanoid } from "devframe/utils/nanoid";
14
14
  import process from "node:process";
@@ -1146,6 +1146,7 @@ async function createHubContext(options) {
1146
1146
  docksSharedState.mutate(() => docks.values());
1147
1147
  }, debounceMs);
1148
1148
  docks.events.on("dock:entry:updated", refreshDocks);
1149
+ getInternalContext(context).onWsEndpointChange(refreshDocks);
1149
1150
  docksSharedState.mutate(() => docks.values());
1150
1151
  const activeDockSharedState = await context.rpc.sharedState.get("devframe:docks:active", { initialValue: { activation: null } });
1151
1152
  docks.events.on("dock:activate", (activation) => {
@@ -1,4 +1,4 @@
1
- import { D as DevframeViewIframe, S as DevframeDocksHost, c as DevframeCommandsHost, p as DevframeDockActivation, v as DevframeDockEntryIcon } from "./commands-CAcTUSlj.mjs";
1
+ import { C as DevframeDocksHost, O as DevframeViewIframe, c as DevframeCommandsHost, p as DevframeDockActivation, y as DevframeDockEntryIcon } from "./commands-CpkDWufe.mjs";
2
2
  import { CreateHostContextOptions } from "devframe/node";
3
3
  import { DevframeDefinition, DevframeHost, DevframeNodeContext, EventEmitter } from "devframe/types";
4
4
  import { ChildProcess } from "node:child_process";
@@ -1,6 +1,6 @@
1
- import "./context-Dz0j8Eyg.mjs";
2
- import "./commands-CAcTUSlj.mjs";
3
- import "./settings-B1qJ47d5.mjs";
1
+ import "./context-C9Itl_OA.mjs";
2
+ import "./commands-CpkDWufe.mjs";
3
+ import "./settings-CVQyYXhv.mjs";
4
4
  import { RpcDefinitionsFilter, RpcDefinitionsToFunctions } from "devframe/rpc";
5
5
  import { ConnectionMeta as ConnectionMeta$1, DevframeCapabilities, DevframeDiagnosticsDefinition, DevframeDiagnosticsHost, DevframeDiagnosticsLogger, DevframeHost as DevframeHost$1, DevframeNodeRpcSession, DevframeRpcClientFunctions, DevframeRpcServerFunctions, DevframeRpcSharedStates, DevframeViewHost, EntriesToObject, EventEmitter as EventEmitter$1, EventUnsubscribe, EventsMap, PartialWithoutId, RpcBroadcastOptions, RpcFunctionsHost, RpcSharedStateGetOptions, RpcSharedStateHost, RpcStreamingChannel, RpcStreamingChannelOptions, RpcStreamingHost, Thenable } from "devframe/types";
6
6
  export { RpcStreamingChannel as C, Thenable as E, RpcSharedStateHost as S, RpcStreamingHost as T, RpcBroadcastOptions as _, DevframeDiagnosticsLogger as a, RpcFunctionsHost as b, DevframeRpcClientFunctions as c, DevframeViewHost as d, EntriesToObject as f, PartialWithoutId as g, EventsMap as h, DevframeDiagnosticsHost as i, DevframeRpcServerFunctions as l, EventUnsubscribe as m, DevframeCapabilities as n, DevframeHost$1 as o, EventEmitter$1 as p, DevframeDiagnosticsDefinition as r, DevframeNodeRpcSession as s, ConnectionMeta$1 as t, DevframeRpcSharedStates as u, RpcDefinitionsFilter as v, RpcStreamingChannelOptions as w, RpcSharedStateGetOptions as x, RpcDefinitionsToFunctions as y };
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- import { C as DevframeMessageHandle, D as DevframeMessagesHost, E as DevframeMessagesClient, O as DevframeMessagesLevelShortcuts, S as DevframeMessageFilePosition, T as DevframeMessageShortcutInput, _ as DevframeMessageCommandAction, a as DevframeChildProcessExecuteOptions, b as DevframeMessageEntryFrom, c as DevframeChildProcessTerminalSession, d as DevframeTerminalSession, f as DevframeTerminalSessionBase, g as DevframeMessageActivateAction, h as DevframeMessageAction, k as DevframeMessagesListDelta, l as DevframePtyExecuteOptions, m as DevframeTerminalsHost, n as DevframeHubContext, o as DevframeChildProcessOutput, p as DevframeTerminalStatus, s as DevframeChildProcessResult, t as CreateHubContextOptions, u as DevframePtyTerminalSession, v as DevframeMessageElementPosition, w as DevframeMessageLevel, x as DevframeMessageEntryInput, y as DevframeMessageEntry } from "./context-Dz0j8Eyg.mjs";
2
- import { A as FrameSubTabsConfig, C as DevframeViewAction, D as DevframeViewIframe, E as DevframeViewGroup, M as RemoteConnectionInfo, N as RemoteDockOptions, O as DevframeViewLauncher, S as DevframeDocksHost, T as DevframeViewCustomRender, _ as DevframeDockEntryCategory, a as DevframeCommandHandle, b as DevframeDockUserEntry, c as DevframeCommandsHost, d as DevframeServerCommandInput, f as ClientScriptEntry, g as DevframeDockEntryBase, h as DevframeDockEntry, i as DevframeCommandEntry, j as NavTarget, k as DevframeViewLauncherStatus, l as DevframeCommandsHostEvents, m as DevframeDockEntriesGrouped, n as DevframeCommandAgentOptions, o as DevframeCommandKeybinding, p as DevframeDockActivation, r as DevframeCommandBase, s as DevframeCommandShortcutOverrides, t as DevframeClientCommand, u as DevframeServerCommandEntry, v as DevframeDockEntryIcon, w as DevframeViewBuiltin, x as DevframeDocksActiveState, y as DevframeDockEntryRegistry } from "./commands-CAcTUSlj.mjs";
3
- import { t as DevframeDocksUserSettings } from "./settings-B1qJ47d5.mjs";
4
- import { C as RpcStreamingChannel, E as Thenable, S as RpcSharedStateHost, T as RpcStreamingHost, _ as RpcBroadcastOptions, a as DevframeDiagnosticsLogger, b as RpcFunctionsHost, c as DevframeRpcClientFunctions, d as DevframeViewHost, f as EntriesToObject, g as PartialWithoutId, h as EventsMap, i as DevframeDiagnosticsHost, l as DevframeRpcServerFunctions, m as EventUnsubscribe, n as DevframeCapabilities, o as DevframeHost, p as EventEmitter, r as DevframeDiagnosticsDefinition, s as DevframeNodeRpcSession, t as ConnectionMeta, u as DevframeRpcSharedStates, v as RpcDefinitionsFilter, w as RpcStreamingChannelOptions, x as RpcSharedStateGetOptions, y as RpcDefinitionsToFunctions } from "./index-p4BktGvQ.mjs";
1
+ import { C as DevframeMessageHandle, D as DevframeMessagesHost, E as DevframeMessagesClient, O as DevframeMessagesLevelShortcuts, S as DevframeMessageFilePosition, T as DevframeMessageShortcutInput, _ as DevframeMessageCommandAction, a as DevframeChildProcessExecuteOptions, b as DevframeMessageEntryFrom, c as DevframeChildProcessTerminalSession, d as DevframeTerminalSession, f as DevframeTerminalSessionBase, g as DevframeMessageActivateAction, h as DevframeMessageAction, k as DevframeMessagesListDelta, l as DevframePtyExecuteOptions, m as DevframeTerminalsHost, n as DevframeHubContext, o as DevframeChildProcessOutput, p as DevframeTerminalStatus, s as DevframeChildProcessResult, t as CreateHubContextOptions, u as DevframePtyTerminalSession, v as DevframeMessageElementPosition, w as DevframeMessageLevel, x as DevframeMessageEntryInput, y as DevframeMessageEntry } from "./context-C9Itl_OA.mjs";
2
+ import { A as DevframeViewLauncherStatus, C as DevframeDocksHost, D as DevframeViewGroup, E as DevframeViewCustomRender, M as NavTarget, N as RemoteConnectionInfo, O as DevframeViewIframe, P as RemoteDockOptions, S as DevframeDocksActiveState, T as DevframeViewBuiltin, _ as DevframeDockEntryBase, a as DevframeCommandHandle, b as DevframeDockEntryRegistry, c as DevframeCommandsHost, d as DevframeServerCommandInput, f as ClientScriptEntry, g as DevframeDockEntry, h as DevframeDockEntriesGrouped, i as DevframeCommandEntry, j as FrameSubTabsConfig, k as DevframeViewLauncher, l as DevframeCommandsHostEvents, m as DevframeDockBadgeVariant, n as DevframeCommandAgentOptions, o as DevframeCommandKeybinding, p as DevframeDockActivation, r as DevframeCommandBase, s as DevframeCommandShortcutOverrides, t as DevframeClientCommand, u as DevframeServerCommandEntry, v as DevframeDockEntryCategory, w as DevframeViewAction, x as DevframeDockUserEntry, y as DevframeDockEntryIcon } from "./commands-CpkDWufe.mjs";
3
+ import { t as DevframeDocksUserSettings } from "./settings-CVQyYXhv.mjs";
4
+ import { C as RpcStreamingChannel, E as Thenable, S as RpcSharedStateHost, T as RpcStreamingHost, _ as RpcBroadcastOptions, a as DevframeDiagnosticsLogger, b as RpcFunctionsHost, c as DevframeRpcClientFunctions, d as DevframeViewHost, f as EntriesToObject, g as PartialWithoutId, h as EventsMap, i as DevframeDiagnosticsHost, l as DevframeRpcServerFunctions, m as EventUnsubscribe, n as DevframeCapabilities, o as DevframeHost, p as EventEmitter, r as DevframeDiagnosticsDefinition, s as DevframeNodeRpcSession, t as ConnectionMeta, u as DevframeRpcSharedStates, v as RpcDefinitionsFilter, w as RpcStreamingChannelOptions, x as RpcSharedStateGetOptions, y as RpcDefinitionsToFunctions } from "./index-CZT5a0Rr.mjs";
5
5
  import { WhenContext, WhenExpression } from "devframe/utils/when";
6
6
  //#region src/define.d.ts
7
7
  declare const defineHubRpcFunction: <NAME extends string, TYPE extends import("devframe/rpc").RpcFunctionType, ARGS extends any[], RETURN = void, const AS extends import("devframe/rpc").RpcArgsSchema | undefined = undefined, const RS extends import("devframe/rpc").RpcReturnSchema | undefined = undefined>(definition: import("devframe/rpc").RpcFunctionDefinition<NAME, TYPE, ARGS, RETURN, AS, RS, DevframeHubContext>) => import("devframe/rpc").RpcFunctionDefinition<NAME, TYPE, ARGS, RETURN, AS, RS, DevframeHubContext>;
@@ -13,4 +13,4 @@ declare function defineDockEntry<const T extends DevframeDockUserEntry, const W
13
13
  visibility?: WhenExpression<WhenContext, V>;
14
14
  }): T;
15
15
  //#endregion
16
- export { type ClientScriptEntry, type ConnectionMeta, type CreateHubContextOptions, type DevframeCapabilities, type DevframeChildProcessExecuteOptions, type DevframeChildProcessOutput, type DevframeChildProcessResult, type DevframeChildProcessTerminalSession, type DevframeClientCommand, type DevframeCommandAgentOptions, type DevframeCommandBase, type DevframeCommandEntry, type DevframeCommandHandle, type DevframeCommandKeybinding, type DevframeCommandShortcutOverrides, type DevframeCommandsHost, type DevframeCommandsHostEvents, type DevframeDiagnosticsDefinition, type DevframeDiagnosticsHost, type DevframeDiagnosticsLogger, type DevframeDockActivation, type DevframeDockEntriesGrouped, type DevframeDockEntry, type DevframeDockEntryBase, type DevframeDockEntryCategory, type DevframeDockEntryIcon, type DevframeDockEntryRegistry, type DevframeDockUserEntry, type DevframeDocksActiveState, type DevframeDocksHost, type DevframeDocksUserSettings, type DevframeHost, type DevframeHubContext, type DevframeMessageAction, type DevframeMessageActivateAction, type DevframeMessageCommandAction, type DevframeMessageElementPosition, type DevframeMessageEntry, type DevframeMessageEntryFrom, type DevframeMessageEntryInput, type DevframeMessageFilePosition, type DevframeMessageHandle, type DevframeMessageLevel, type DevframeMessageShortcutInput, type DevframeMessagesClient, type DevframeMessagesHost, type DevframeMessagesLevelShortcuts, type DevframeMessagesListDelta, type DevframeNodeRpcSession, type DevframePtyExecuteOptions, type DevframePtyTerminalSession, type DevframeRpcClientFunctions, type DevframeRpcServerFunctions, type DevframeRpcSharedStates, type DevframeServerCommandEntry, type DevframeServerCommandInput, type DevframeTerminalSession, type DevframeTerminalSessionBase, type DevframeTerminalStatus, type DevframeTerminalsHost, type DevframeViewAction, type DevframeViewBuiltin, type DevframeViewCustomRender, type DevframeViewGroup, type DevframeViewHost, type DevframeViewIframe, type DevframeViewLauncher, type DevframeViewLauncherStatus, type EntriesToObject, type EventEmitter, type EventUnsubscribe, type EventsMap, type FrameSubTabsConfig, type NavTarget, type PartialWithoutId, type RemoteConnectionInfo, type RemoteDockOptions, type RpcBroadcastOptions, type RpcDefinitionsFilter, type RpcDefinitionsToFunctions, type RpcFunctionsHost, type RpcSharedStateGetOptions, type RpcSharedStateHost, type RpcStreamingChannel, type RpcStreamingChannelOptions, type RpcStreamingHost, type Thenable, defineCommand, defineDockEntry, defineHubRpcFunction };
16
+ export { type ClientScriptEntry, type ConnectionMeta, type CreateHubContextOptions, type DevframeCapabilities, type DevframeChildProcessExecuteOptions, type DevframeChildProcessOutput, type DevframeChildProcessResult, type DevframeChildProcessTerminalSession, type DevframeClientCommand, type DevframeCommandAgentOptions, type DevframeCommandBase, type DevframeCommandEntry, type DevframeCommandHandle, type DevframeCommandKeybinding, type DevframeCommandShortcutOverrides, type DevframeCommandsHost, type DevframeCommandsHostEvents, type DevframeDiagnosticsDefinition, type DevframeDiagnosticsHost, type DevframeDiagnosticsLogger, type DevframeDockActivation, type DevframeDockBadgeVariant, type DevframeDockEntriesGrouped, type DevframeDockEntry, type DevframeDockEntryBase, type DevframeDockEntryCategory, type DevframeDockEntryIcon, type DevframeDockEntryRegistry, type DevframeDockUserEntry, type DevframeDocksActiveState, type DevframeDocksHost, type DevframeDocksUserSettings, type DevframeHost, type DevframeHubContext, type DevframeMessageAction, type DevframeMessageActivateAction, type DevframeMessageCommandAction, type DevframeMessageElementPosition, type DevframeMessageEntry, type DevframeMessageEntryFrom, type DevframeMessageEntryInput, type DevframeMessageFilePosition, type DevframeMessageHandle, type DevframeMessageLevel, type DevframeMessageShortcutInput, type DevframeMessagesClient, type DevframeMessagesHost, type DevframeMessagesLevelShortcuts, type DevframeMessagesListDelta, type DevframeNodeRpcSession, type DevframePtyExecuteOptions, type DevframePtyTerminalSession, type DevframeRpcClientFunctions, type DevframeRpcServerFunctions, type DevframeRpcSharedStates, type DevframeServerCommandEntry, type DevframeServerCommandInput, type DevframeTerminalSession, type DevframeTerminalSessionBase, type DevframeTerminalStatus, type DevframeTerminalsHost, type DevframeViewAction, type DevframeViewBuiltin, type DevframeViewCustomRender, type DevframeViewGroup, type DevframeViewHost, type DevframeViewIframe, type DevframeViewLauncher, type DevframeViewLauncherStatus, type EntriesToObject, type EventEmitter, type EventUnsubscribe, type EventsMap, type FrameSubTabsConfig, type NavTarget, type PartialWithoutId, type RemoteConnectionInfo, type RemoteDockOptions, type RpcBroadcastOptions, type RpcDefinitionsFilter, type RpcDefinitionsToFunctions, type RpcFunctionsHost, type RpcSharedStateGetOptions, type RpcSharedStateHost, type RpcStreamingChannel, type RpcStreamingChannelOptions, type RpcStreamingHost, type Thenable, defineCommand, defineDockEntry, defineHubRpcFunction };
@@ -1,6 +1,6 @@
1
- import { C as DevframeMessageHandle, D as DevframeMessagesHost$1, T as DevframeMessageShortcutInput, a as DevframeChildProcessExecuteOptions, c as DevframeChildProcessTerminalSession, d as DevframeTerminalSession, f as DevframeTerminalSessionBase, i as InstallDevframeOptions, k as DevframeMessagesListDelta, l as DevframePtyExecuteOptions, m as DevframeTerminalsHost$1, n as DevframeHubContext, r as createHubContext, t as CreateHubContextOptions, u as DevframePtyTerminalSession, x as DevframeMessageEntryInput, y as DevframeMessageEntry } from "../context-Dz0j8Eyg.mjs";
2
- import { S as DevframeDocksHost$1, a as DevframeCommandHandle, b as DevframeDockUserEntry, c as DevframeCommandsHost$1, d as DevframeServerCommandInput, f as ClientScriptEntry, h as DevframeDockEntry, u as DevframeServerCommandEntry } from "../commands-CAcTUSlj.mjs";
3
- import { t as DevframeDocksUserSettings } from "../settings-B1qJ47d5.mjs";
1
+ import { C as DevframeMessageHandle, D as DevframeMessagesHost$1, T as DevframeMessageShortcutInput, a as DevframeChildProcessExecuteOptions, c as DevframeChildProcessTerminalSession, d as DevframeTerminalSession, f as DevframeTerminalSessionBase, i as InstallDevframeOptions, k as DevframeMessagesListDelta, l as DevframePtyExecuteOptions, m as DevframeTerminalsHost$1, n as DevframeHubContext, r as createHubContext, t as CreateHubContextOptions, u as DevframePtyTerminalSession, x as DevframeMessageEntryInput, y as DevframeMessageEntry } from "../context-C9Itl_OA.mjs";
2
+ import { C as DevframeDocksHost$1, a as DevframeCommandHandle, c as DevframeCommandsHost$1, d as DevframeServerCommandInput, f as ClientScriptEntry, g as DevframeDockEntry, u as DevframeServerCommandEntry, x as DevframeDockUserEntry } from "../commands-CpkDWufe.mjs";
3
+ import { t as DevframeDocksUserSettings } from "../settings-CVQyYXhv.mjs";
4
4
  import { RpcFunctionDefinitionAny } from "devframe/rpc";
5
5
  import { SharedState } from "devframe/utils/shared-state";
6
6
  //#region src/node/host-commands.d.ts
@@ -1,4 +1,4 @@
1
- import { _ as DevframeCommandsHost, a as hubMessagesAdd, c as hubMessagesUpdate, d as hubTerminalsRestart, f as hubTerminalsTerminate, g as DevframeDocksHost, h as DevframeMessagesHost, i as hubDocksActivate, l as hubTerminalsRemove, m as DevframeTerminalsHost, n as builtinHubRpcDeclarations, o as hubMessagesClear, p as hubTerminalsWrite, r as hubCommandsExecute, s as hubMessagesRemove, t as createHubContext, u as hubTerminalsResize } from "../context-DPdojIW8.mjs";
1
+ import { _ as DevframeCommandsHost, a as hubMessagesAdd, c as hubMessagesUpdate, d as hubTerminalsRestart, f as hubTerminalsTerminate, g as DevframeDocksHost, h as DevframeMessagesHost, i as hubDocksActivate, l as hubTerminalsRemove, m as DevframeTerminalsHost, n as builtinHubRpcDeclarations, o as hubMessagesClear, p as hubTerminalsWrite, r as hubCommandsExecute, s as hubMessagesRemove, t as createHubContext, u as hubTerminalsResize } from "../context-AFIDBT5K.mjs";
2
2
  import "pathe";
3
3
  import "node:process";
4
4
  import { builtinModules } from "node:module";
@@ -1,4 +1,4 @@
1
- import { i as InstallDevframeOptions, n as DevframeHubContext, t as CreateHubContextOptions } from "../context-Dz0j8Eyg.mjs";
1
+ import { i as InstallDevframeOptions, n as DevframeHubContext, t as CreateHubContextOptions } from "../context-C9Itl_OA.mjs";
2
2
  import { DevframeInstanceRecord } from "devframe/internal";
3
3
  import { ConnectionMeta, DevframeDefinition, DevframeSseOptions, DevframeStorageScope, DevframeWsOptions, McpRouteOptions } from "devframe/types";
4
4
  import { DevframeAuthHandler } from "devframe/node/auth";
@@ -71,12 +71,22 @@ interface DevframeHubUi {
71
71
  };
72
72
  /**
73
73
  * Extra UI-owned files the hub serves at `<base><key>`, each produced lazily
74
- * from memory. Keys are base-relative paths (e.g. `branding.json`); the
75
- * content-type is inferred from the key's extension. A generic seam a viewer
76
- * uses to publish small runtime documents (the reference UI serves its
77
- * branding this way) without teaching the hub anything about their meaning.
74
+ * from memory. Keys are base-relative paths; the content-type is inferred
75
+ * from the key's extension. A generic seam a viewer uses to publish
76
+ * arbitrary runtime documents without teaching the hub anything about
77
+ * their meaning.
78
78
  */
79
79
  assets?: Record<string, () => string | Uint8Array>;
80
+ /**
81
+ * A setup hook run once during hub init with the hub context — the UI
82
+ * slot's chance to publish its own static, boot-time config through the
83
+ * generic `ctx.staticConfig` (serialized into `ConnectionMeta.configs`).
84
+ * The reference UI's `createUi()` uses it to set
85
+ * `ctx.staticConfig.ui = { branding, … }`, reaching every mounted frame and
86
+ * the standalone viewer through the one connection handshake they perform.
87
+ * The hub stays policy-free about what the UI writes.
88
+ */
89
+ setup?: (ctx: DevframeHubContext) => void | Promise<void>;
80
90
  }
81
91
  type DevframesInput = Array<DevframeDefinition | HubDevframeEntry | Thenable<Arrayable<DevframeDefinition | HubDevframeEntry | null | undefined>> | (() => Thenable<Arrayable<DevframeDefinition | HubDevframeEntry | null | undefined>>)>;
82
92
  interface InitHubOptions {
@@ -181,8 +191,6 @@ interface InitHubOptions {
181
191
  * Expose the **aggregate** MCP endpoint at `<base>__mcp` — one
182
192
  * Streamable-HTTP server over the shared context's whole tool registry
183
193
  * (ids are already namespaced per plugin). Disabled by default.
184
- *
185
- * @experimental
186
194
  */
187
195
  mcp?: boolean | McpRouteOptions;
188
196
  /**
@@ -1,5 +1,5 @@
1
1
  import { DOCK_RENDERERS_STATE_KEY } from "../constants.mjs";
2
- import { t as createHubContext, v as diagnostics } from "../context-DPdojIW8.mjs";
2
+ import { t as createHubContext, v as diagnostics } from "../context-AFIDBT5K.mjs";
3
3
  import { DEVFRAME_CONNECTION_META_FILENAME, DEVFRAME_DOCK_IMPORTS_FILENAME, DEVFRAME_MCP_ROUTE, DEVFRAME_WS_ROUTE } from "devframe/constants";
4
4
  import { createH3DevframeHost, createInstanceShell, resolveInstanceRegister } from "devframe/internal";
5
5
  import { resolve } from "pathe";
@@ -184,6 +184,7 @@ function initHub(options) {
184
184
  });
185
185
  }
186
186
  await options.configure?.(ctx);
187
+ await options.ui?.setup?.(ctx);
187
188
  if (rendererRegistrations.length > 0) {
188
189
  const manifest = {};
189
190
  for (const registration of rendererRegistrations) manifest[registration.type] = {
@@ -0,0 +1,34 @@
1
+ import { s as DevframeCommandShortcutOverrides } from "./commands-CpkDWufe.mjs";
2
+ //#region src/types/settings.d.ts
3
+ /**
4
+ * Persisted per-user dock + command settings, synced over the
5
+ * `devframe:user-settings` shared state. The generic base carries the hub's
6
+ * own dock-registry and command model that every viewer shares; a viewer
7
+ * augments it with its own reference-UI toggles via declaration merging:
8
+ *
9
+ * ```ts
10
+ * declare module '@devframes/hub/types' {
11
+ * interface DevframeDocksUserSettings {
12
+ * myViewerToggle?: boolean
13
+ * }
14
+ * }
15
+ * ```
16
+ *
17
+ * Augmented fields are optional so the hub's `DEFAULT_STATE_USER_SETTINGS()`
18
+ * (which knows nothing about them) stays assignable — an absent value reads
19
+ * as the viewer's documented default.
20
+ */
21
+ interface DevframeDocksUserSettings {
22
+ /** Ids of dock entries the user has hidden from the bar. */
23
+ docksHidden: string[];
24
+ /** Category ids the user has collapsed/hidden on the bar. */
25
+ docksCategoriesHidden: string[];
26
+ /** Ids of dock entries the user has pinned. */
27
+ docksPinned: string[];
28
+ /** Per-entry sort weight overriding the registry's default order. */
29
+ docksCustomOrder: Record<string, number>;
30
+ /** Per-command keybinding overrides (empty array = shortcut disabled). */
31
+ commandShortcuts: DevframeCommandShortcutOverrides;
32
+ }
33
+ //#endregion
34
+ export { DevframeDocksUserSettings as t };
@@ -1,5 +1,5 @@
1
- import { C as DevframeMessageHandle, D as DevframeMessagesHost, E as DevframeMessagesClient, O as DevframeMessagesLevelShortcuts, S as DevframeMessageFilePosition, T as DevframeMessageShortcutInput, _ as DevframeMessageCommandAction, a as DevframeChildProcessExecuteOptions, b as DevframeMessageEntryFrom, c as DevframeChildProcessTerminalSession, d as DevframeTerminalSession, f as DevframeTerminalSessionBase, g as DevframeMessageActivateAction, h as DevframeMessageAction, k as DevframeMessagesListDelta, l as DevframePtyExecuteOptions, m as DevframeTerminalsHost, n as DevframeHubContext, o as DevframeChildProcessOutput, p as DevframeTerminalStatus, s as DevframeChildProcessResult, t as CreateHubContextOptions, u as DevframePtyTerminalSession, v as DevframeMessageElementPosition, w as DevframeMessageLevel, x as DevframeMessageEntryInput, y as DevframeMessageEntry } from "../context-Dz0j8Eyg.mjs";
2
- import { A as FrameSubTabsConfig, C as DevframeViewAction, D as DevframeViewIframe, E as DevframeViewGroup, M as RemoteConnectionInfo, N as RemoteDockOptions, O as DevframeViewLauncher, S as DevframeDocksHost, T as DevframeViewCustomRender, _ as DevframeDockEntryCategory, a as DevframeCommandHandle, b as DevframeDockUserEntry, c as DevframeCommandsHost, d as DevframeServerCommandInput, f as ClientScriptEntry, g as DevframeDockEntryBase, h as DevframeDockEntry, i as DevframeCommandEntry, j as NavTarget, k as DevframeViewLauncherStatus, l as DevframeCommandsHostEvents, m as DevframeDockEntriesGrouped, n as DevframeCommandAgentOptions, o as DevframeCommandKeybinding, p as DevframeDockActivation, r as DevframeCommandBase, s as DevframeCommandShortcutOverrides, t as DevframeClientCommand, u as DevframeServerCommandEntry, v as DevframeDockEntryIcon, w as DevframeViewBuiltin, x as DevframeDocksActiveState, y as DevframeDockEntryRegistry } from "../commands-CAcTUSlj.mjs";
3
- import { t as DevframeDocksUserSettings } from "../settings-B1qJ47d5.mjs";
4
- import { C as RpcStreamingChannel, E as Thenable, S as RpcSharedStateHost, T as RpcStreamingHost, _ as RpcBroadcastOptions, a as DevframeDiagnosticsLogger, b as RpcFunctionsHost, c as DevframeRpcClientFunctions, d as DevframeViewHost, f as EntriesToObject, g as PartialWithoutId, h as EventsMap, i as DevframeDiagnosticsHost, l as DevframeRpcServerFunctions, m as EventUnsubscribe, n as DevframeCapabilities, o as DevframeHost, p as EventEmitter, r as DevframeDiagnosticsDefinition, s as DevframeNodeRpcSession, t as ConnectionMeta, u as DevframeRpcSharedStates, v as RpcDefinitionsFilter, w as RpcStreamingChannelOptions, x as RpcSharedStateGetOptions, y as RpcDefinitionsToFunctions } from "../index-p4BktGvQ.mjs";
5
- export { ClientScriptEntry, type ConnectionMeta, type CreateHubContextOptions, type DevframeCapabilities, DevframeChildProcessExecuteOptions, DevframeChildProcessOutput, DevframeChildProcessResult, DevframeChildProcessTerminalSession, DevframeClientCommand, DevframeCommandAgentOptions, DevframeCommandBase, DevframeCommandEntry, DevframeCommandHandle, DevframeCommandKeybinding, DevframeCommandShortcutOverrides, DevframeCommandsHost, DevframeCommandsHostEvents, type DevframeDiagnosticsDefinition, type DevframeDiagnosticsHost, type DevframeDiagnosticsLogger, DevframeDockActivation, DevframeDockEntriesGrouped, DevframeDockEntry, DevframeDockEntryBase, DevframeDockEntryCategory, DevframeDockEntryIcon, DevframeDockEntryRegistry, DevframeDockUserEntry, DevframeDocksActiveState, DevframeDocksHost, DevframeDocksUserSettings, type DevframeHost, type DevframeHubContext, DevframeMessageAction, DevframeMessageActivateAction, DevframeMessageCommandAction, DevframeMessageElementPosition, DevframeMessageEntry, DevframeMessageEntryFrom, DevframeMessageEntryInput, DevframeMessageFilePosition, DevframeMessageHandle, DevframeMessageLevel, DevframeMessageShortcutInput, DevframeMessagesClient, DevframeMessagesHost, DevframeMessagesLevelShortcuts, DevframeMessagesListDelta, type DevframeNodeRpcSession, DevframePtyExecuteOptions, DevframePtyTerminalSession, type DevframeRpcClientFunctions, type DevframeRpcServerFunctions, type DevframeRpcSharedStates, DevframeServerCommandEntry, DevframeServerCommandInput, DevframeTerminalSession, DevframeTerminalSessionBase, DevframeTerminalStatus, DevframeTerminalsHost, DevframeViewAction, DevframeViewBuiltin, DevframeViewCustomRender, DevframeViewGroup, type DevframeViewHost, DevframeViewIframe, DevframeViewLauncher, DevframeViewLauncherStatus, type EntriesToObject, type EventEmitter, type EventUnsubscribe, type EventsMap, FrameSubTabsConfig, NavTarget, type PartialWithoutId, RemoteConnectionInfo, RemoteDockOptions, type RpcBroadcastOptions, type RpcDefinitionsFilter, type RpcDefinitionsToFunctions, type RpcFunctionsHost, type RpcSharedStateGetOptions, type RpcSharedStateHost, type RpcStreamingChannel, type RpcStreamingChannelOptions, type RpcStreamingHost, type Thenable };
1
+ import { C as DevframeMessageHandle, D as DevframeMessagesHost, E as DevframeMessagesClient, O as DevframeMessagesLevelShortcuts, S as DevframeMessageFilePosition, T as DevframeMessageShortcutInput, _ as DevframeMessageCommandAction, a as DevframeChildProcessExecuteOptions, b as DevframeMessageEntryFrom, c as DevframeChildProcessTerminalSession, d as DevframeTerminalSession, f as DevframeTerminalSessionBase, g as DevframeMessageActivateAction, h as DevframeMessageAction, k as DevframeMessagesListDelta, l as DevframePtyExecuteOptions, m as DevframeTerminalsHost, n as DevframeHubContext, o as DevframeChildProcessOutput, p as DevframeTerminalStatus, s as DevframeChildProcessResult, t as CreateHubContextOptions, u as DevframePtyTerminalSession, v as DevframeMessageElementPosition, w as DevframeMessageLevel, x as DevframeMessageEntryInput, y as DevframeMessageEntry } from "../context-C9Itl_OA.mjs";
2
+ import { A as DevframeViewLauncherStatus, C as DevframeDocksHost, D as DevframeViewGroup, E as DevframeViewCustomRender, M as NavTarget, N as RemoteConnectionInfo, O as DevframeViewIframe, P as RemoteDockOptions, S as DevframeDocksActiveState, T as DevframeViewBuiltin, _ as DevframeDockEntryBase, a as DevframeCommandHandle, b as DevframeDockEntryRegistry, c as DevframeCommandsHost, d as DevframeServerCommandInput, f as ClientScriptEntry, g as DevframeDockEntry, h as DevframeDockEntriesGrouped, i as DevframeCommandEntry, j as FrameSubTabsConfig, k as DevframeViewLauncher, l as DevframeCommandsHostEvents, m as DevframeDockBadgeVariant, n as DevframeCommandAgentOptions, o as DevframeCommandKeybinding, p as DevframeDockActivation, r as DevframeCommandBase, s as DevframeCommandShortcutOverrides, t as DevframeClientCommand, u as DevframeServerCommandEntry, v as DevframeDockEntryCategory, w as DevframeViewAction, x as DevframeDockUserEntry, y as DevframeDockEntryIcon } from "../commands-CpkDWufe.mjs";
3
+ import { t as DevframeDocksUserSettings } from "../settings-CVQyYXhv.mjs";
4
+ import { C as RpcStreamingChannel, E as Thenable, S as RpcSharedStateHost, T as RpcStreamingHost, _ as RpcBroadcastOptions, a as DevframeDiagnosticsLogger, b as RpcFunctionsHost, c as DevframeRpcClientFunctions, d as DevframeViewHost, f as EntriesToObject, g as PartialWithoutId, h as EventsMap, i as DevframeDiagnosticsHost, l as DevframeRpcServerFunctions, m as EventUnsubscribe, n as DevframeCapabilities, o as DevframeHost, p as EventEmitter, r as DevframeDiagnosticsDefinition, s as DevframeNodeRpcSession, t as ConnectionMeta, u as DevframeRpcSharedStates, v as RpcDefinitionsFilter, w as RpcStreamingChannelOptions, x as RpcSharedStateGetOptions, y as RpcDefinitionsToFunctions } from "../index-CZT5a0Rr.mjs";
5
+ export { ClientScriptEntry, type ConnectionMeta, type CreateHubContextOptions, type DevframeCapabilities, DevframeChildProcessExecuteOptions, DevframeChildProcessOutput, DevframeChildProcessResult, DevframeChildProcessTerminalSession, DevframeClientCommand, DevframeCommandAgentOptions, DevframeCommandBase, DevframeCommandEntry, DevframeCommandHandle, DevframeCommandKeybinding, DevframeCommandShortcutOverrides, DevframeCommandsHost, DevframeCommandsHostEvents, type DevframeDiagnosticsDefinition, type DevframeDiagnosticsHost, type DevframeDiagnosticsLogger, DevframeDockActivation, DevframeDockBadgeVariant, DevframeDockEntriesGrouped, DevframeDockEntry, DevframeDockEntryBase, DevframeDockEntryCategory, DevframeDockEntryIcon, DevframeDockEntryRegistry, DevframeDockUserEntry, DevframeDocksActiveState, DevframeDocksHost, DevframeDocksUserSettings, type DevframeHost, type DevframeHubContext, DevframeMessageAction, DevframeMessageActivateAction, DevframeMessageCommandAction, DevframeMessageElementPosition, DevframeMessageEntry, DevframeMessageEntryFrom, DevframeMessageEntryInput, DevframeMessageFilePosition, DevframeMessageHandle, DevframeMessageLevel, DevframeMessageShortcutInput, DevframeMessagesClient, DevframeMessagesHost, DevframeMessagesLevelShortcuts, DevframeMessagesListDelta, type DevframeNodeRpcSession, DevframePtyExecuteOptions, DevframePtyTerminalSession, type DevframeRpcClientFunctions, type DevframeRpcServerFunctions, type DevframeRpcSharedStates, DevframeServerCommandEntry, DevframeServerCommandInput, DevframeTerminalSession, DevframeTerminalSessionBase, DevframeTerminalStatus, DevframeTerminalsHost, DevframeViewAction, DevframeViewBuiltin, DevframeViewCustomRender, DevframeViewGroup, type DevframeViewHost, DevframeViewIframe, DevframeViewLauncher, DevframeViewLauncherStatus, type EntriesToObject, type EventEmitter, type EventUnsubscribe, type EventsMap, FrameSubTabsConfig, NavTarget, type PartialWithoutId, RemoteConnectionInfo, RemoteDockOptions, type RpcBroadcastOptions, type RpcDefinitionsFilter, type RpcDefinitionsToFunctions, type RpcFunctionsHost, type RpcSharedStateGetOptions, type RpcSharedStateHost, type RpcStreamingChannel, type RpcStreamingChannelOptions, type RpcStreamingHost, type Thenable };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@devframes/hub",
3
3
  "type": "module",
4
- "version": "0.9.0-beta.2",
4
+ "version": "0.9.0-beta.4",
5
5
  "description": "Hub layer that orchestrates devframe docks, terminals, messages, and commands on any host.",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",
@@ -34,7 +34,7 @@
34
34
  "dist"
35
35
  ],
36
36
  "peerDependencies": {
37
- "devframe": "0.9.0-beta.2"
37
+ "devframe": "0.9.0-beta.4"
38
38
  },
39
39
  "dependencies": {
40
40
  "@standard-schema/spec": "^1.1.0",
@@ -53,7 +53,7 @@
53
53
  "mlly": "^1.8.2",
54
54
  "tsdown": "^0.22.14",
55
55
  "valibot": "^1.4.2",
56
- "devframe": "0.9.0-beta.2"
56
+ "devframe": "0.9.0-beta.4"
57
57
  },
58
58
  "scripts": {
59
59
  "build": "tsdown",
@@ -1,13 +0,0 @@
1
- import { s as DevframeCommandShortcutOverrides } from "./commands-CAcTUSlj.mjs";
2
- //#region src/types/settings.d.ts
3
- interface DevframeDocksUserSettings {
4
- docksHidden: string[];
5
- docksCategoriesHidden: string[];
6
- docksPinned: string[];
7
- docksCustomOrder: Record<string, number>;
8
- showIframeAddressBar: boolean;
9
- closeOnOutsideClick: boolean;
10
- commandShortcuts: DevframeCommandShortcutOverrides;
11
- }
12
- //#endregion
13
- export { DevframeDocksUserSettings as t };