@eclipse-docks/core 0.7.94 → 0.7.96

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.
@@ -4,6 +4,8 @@ export declare const TOOLBAR_MAIN_CENTER = "app-toolbars-main-center";
4
4
  export declare const TOOLBAR_BOTTOM = "app-toolbars-bottom";
5
5
  export declare const TOOLBAR_BOTTOM_CENTER = "app-toolbars-bottom-center";
6
6
  export declare const TOOLBAR_BOTTOM_END = "app-toolbars-bottom-end";
7
+ /** Commands/HTML at the end of the main sidebar activity rail (wa-tab-group nav slot). */
8
+ export declare const SIDEBAR_MAIN_TOOLBAR = "sidebar-main-toolbar";
7
9
  export declare const SYSTEM_VIEWS = "system-views";
8
10
  export declare const SYSTEM_LAYOUTS = "system.layouts";
9
11
  export declare const EDITOR_AREA_MAIN = "editor-area-main";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,sBAAsB,CAAA;AAC/C,eAAO,MAAM,kBAAkB,4BAA4B,CAAA;AAC3D,eAAO,MAAM,mBAAmB,6BAA6B,CAAA;AAC7D,eAAO,MAAM,cAAc,wBAAwB,CAAA;AACnD,eAAO,MAAM,qBAAqB,+BAA+B,CAAA;AACjE,eAAO,MAAM,kBAAkB,4BAA4B,CAAA;AAE3D,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAC1C,eAAO,MAAM,cAAc,mBAAmB,CAAA;AAG9C,eAAO,MAAM,gBAAgB,qBAAqB,CAAA;AAClD,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAC1C,eAAO,MAAM,mBAAmB,wBAAwB,CAAA;AACxD,eAAO,MAAM,iBAAiB,sBAAsB,CAAA;AACpD,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAE1C,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAE1C,eAAO,MAAM,iBAAiB,QAAQ,CAAA;AAGtC,oBAAY,WAAW;IACnB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;IACT,IAAI,IAAI;IACR,OAAO,IAAI;CACd"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,sBAAsB,CAAA;AAC/C,eAAO,MAAM,kBAAkB,4BAA4B,CAAA;AAC3D,eAAO,MAAM,mBAAmB,6BAA6B,CAAA;AAC7D,eAAO,MAAM,cAAc,wBAAwB,CAAA;AACnD,eAAO,MAAM,qBAAqB,+BAA+B,CAAA;AACjE,eAAO,MAAM,kBAAkB,4BAA4B,CAAA;AAE3D,0FAA0F;AAC1F,eAAO,MAAM,oBAAoB,yBAAyB,CAAA;AAE1D,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAC1C,eAAO,MAAM,cAAc,mBAAmB,CAAA;AAG9C,eAAO,MAAM,gBAAgB,qBAAqB,CAAA;AAClD,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAC1C,eAAO,MAAM,mBAAmB,wBAAwB,CAAA;AACxD,eAAO,MAAM,iBAAiB,sBAAsB,CAAA;AACpD,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAE1C,eAAO,MAAM,YAAY,iBAAiB,CAAA;AAE1C,eAAO,MAAM,iBAAiB,QAAQ,CAAA;AAGtC,oBAAY,WAAW;IACnB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;IACT,IAAI,IAAI;IACR,OAAO,IAAI;CACd"}
@@ -98,7 +98,6 @@ declare class ExtensionRegistry {
98
98
  */
99
99
  load(extensionId: string, loadingChain?: string[]): Promise<void>;
100
100
  disable(extensionId: string, informUser?: boolean): void;
101
- private updateEnablement;
102
101
  private updateEnablementAsync;
103
102
  }
104
103
  export declare const extensionRegistry: ExtensionRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"extensionregistry.d.ts","sourceRoot":"","sources":["../../src/core/extensionregistry.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,wBAAwB,sDAAsD,CAAA;AAI3F;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,WAAW,SAAS;IACtB,sFAAsF;IACtF,EAAE,EAAE,MAAM,CAAC;IAEX,2CAA2C;IAC3C,IAAI,EAAE,OAAO,CAAC;IAEd,sDAAsD;IACtD,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC;IAEnB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,uDAAuD;IACvD,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAA;AAEjD,cAAM,iBAAiB;IACnB,OAAO,CAAC,kBAAkB,CAAC,CAAmB;IAC9C,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,eAAe,CAAwC;;YAiBjD,+BAA+B;YAa/B,+BAA+B;YAS/B,qBAAqB;IAYnC,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAc7C;;;;;;;;;;;;;;OAcG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA8C9E,aAAa,IAAI,SAAS,EAAE;IAI5B;;;;OAIG;IACU,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB5C,SAAS,CAAC,WAAW,EAAE,MAAM;IAK7B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAI5B,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe;IAY9D,iMAAiM;IACpL,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAczF;;;;;;;;;;;;;;;;;;;OAmBG;IACU,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA6E3E,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe;IAO/D,OAAO,CAAC,gBAAgB;YAsBV,qBAAqB;CAmBtC;AAED,eAAO,MAAM,iBAAiB,mBAA0B,CAAA"}
1
+ {"version":3,"file":"extensionregistry.d.ts","sourceRoot":"","sources":["../../src/core/extensionregistry.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,wBAAwB,sDAAsD,CAAA;AAI3F;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,WAAW,SAAS;IACtB,sFAAsF;IACtF,EAAE,EAAE,MAAM,CAAC;IAEX,2CAA2C;IAC3C,IAAI,EAAE,OAAO,CAAC;IAEd,sDAAsD;IACtD,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC;IAEnB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,uDAAuD;IACvD,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAA;AAEjD,cAAM,iBAAiB;IACnB,OAAO,CAAC,kBAAkB,CAAC,CAAmB;IAC9C,OAAO,CAAC,UAAU,CAAmC;IACrD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,eAAe,CAAwC;;YAiBjD,+BAA+B;YAa/B,+BAA+B;YAS/B,qBAAqB;IAYnC,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAc7C;;;;;;;;;;;;;;OAcG;IACG,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA8C9E,aAAa,IAAI,SAAS,EAAE;IAI5B;;;;OAIG;IACU,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB5C,SAAS,CAAC,WAAW,EAAE,MAAM;IAK7B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAI5B,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe;IAY9D,iMAAiM;IACpL,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBzF;;;;;;;;;;;;;;;;;;;OAmBG;IACU,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA6E3E,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe;YASjD,qBAAqB;CAmBtC;AAED,eAAO,MAAM,iBAAiB,mBAA0B,CAAA"}
@@ -1,2 +1,2 @@
1
- import { t as registerIconLibrary } from "../webawesome-CsYKhg4S.js";
1
+ import { t as registerIconLibrary } from "../webawesome-BIXFq9iK.js";
2
2
  export { registerIconLibrary };
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import { A as SYSTEM_VIEWS, C as HIDE_DOT_RESOURCE, D as SIDEBAR_MAIN, E as SIDEBAR_AUXILIARY, F as TOOLBAR_MAIN_CENTER, I as TOOLBAR_MAIN_RIGHT, M as TOOLBAR_BOTTOM_CENTER, N as TOOLBAR_BOTTOM_END, O as SIDEBAR_MAIN_BOTTOM, P as TOOLBAR_MAIN, S as EDITOR_AREA_MAIN, T as PANEL_BOTTOM, _ as esmShService, a as filebrowserDialog, b as appSettings, c as infoDialog, f as dialogService, g as extensionRegistry, i as parseIconSpec, j as TOOLBAR_BOTTOM, k as SYSTEM_LAYOUTS, l as promptDialog, m as DocksElement, n as DocksContainer, o as navigableInfoDialog, p as DocksDialogContent, r as icon, s as confirmDialog, t as DocksPart, u as appLoaderService, v as taskService, w as MouseButton, x as COMMAND_SAVE, y as TOPIC_SETTINGS_CHANGED } from "./parts-CKBZls6J.js";
1
+ import { A as SYSTEM_LAYOUTS, C as HIDE_DOT_RESOURCE, D as SIDEBAR_MAIN, E as SIDEBAR_AUXILIARY, F as TOOLBAR_MAIN, I as TOOLBAR_MAIN_CENTER, L as TOOLBAR_MAIN_RIGHT, M as TOOLBAR_BOTTOM, N as TOOLBAR_BOTTOM_CENTER, O as SIDEBAR_MAIN_BOTTOM, P as TOOLBAR_BOTTOM_END, S as EDITOR_AREA_MAIN, T as PANEL_BOTTOM, _ as esmShService, a as filebrowserDialog, b as appSettings, c as infoDialog, f as dialogService, g as extensionRegistry, i as parseIconSpec, j as SYSTEM_VIEWS, k as SIDEBAR_MAIN_TOOLBAR, l as promptDialog, m as DocksElement, n as DocksContainer, o as navigableInfoDialog, p as DocksDialogContent, r as icon, s as confirmDialog, t as DocksPart, u as appLoaderService, v as taskService, w as MouseButton, x as COMMAND_SAVE, y as TOPIC_SETTINGS_CHANGED } from "./parts-Bl4MkOUi.js";
2
2
  import { i as setLogLevel, n as defaultLogger, o as rootContext, s as uiContext, t as createLogger } from "./logger-DT0_NW3S.js";
3
3
  import { C as toastWarning, S as toastInfo, _ as applyConfigNameRemaps, a as TOPIC_COMMAND_REGISTERED, b as overrideContributionTargets, c as EMPTY_SIGNALPORT, d as activeSelectionSignal, f as activeTasksSignal, g as contributionRegistry, h as TOPIC_CONTRIBUTEIONS_CHANGED, i as CommandStack, l as activeEditorSignal, m as perspectiveSwitchedSignal, n as watchSignal, o as commandRegistry, p as partDirtySignal, r as CommandRegistry, s as registerAll, t as DocksWidget, u as activePartSignal, v as contributionTargetMappingRegistry, x as toastError, y as listContributionNameRemaps } from "./widget-BgBerzhp.js";
4
4
  import { n as subscribe, r as unsubscribe, t as publish } from "./events-B_ZxkU_G.js";
5
5
  import { a as File, c as TOPIC_WORKSPACE_CHANGED, d as WorkspaceService, f as workspaceService, i as Directory, l as TOPIC_WORKSPACE_CONNECTED, o as FileContentType, p as persistenceService, r as CompositeDirectory, s as StringFile, t as FileSysDirHandleResource } from "./fs-access-D-fDaJ8V.js";
6
- import { a as DocksStandardLayout, c as createLazyLabel, i as createJsRuntime, l as i18n, n as getFrameworkConfig, o as treeNodeComparator, r as runJavaScriptCode, s as editorRegistry, t as configureFramework } from "./api-DISr4dl4.js";
7
- export { COMMAND_SAVE, CommandRegistry, CommandStack, CompositeDirectory, Directory, DocksContainer, DocksDialogContent, DocksElement, DocksPart, DocksStandardLayout, DocksWidget, EDITOR_AREA_MAIN, EMPTY_SIGNALPORT, File, FileContentType, FileSysDirHandleResource, HIDE_DOT_RESOURCE, MouseButton, PANEL_BOTTOM, SIDEBAR_AUXILIARY, SIDEBAR_MAIN, SIDEBAR_MAIN_BOTTOM, SYSTEM_LAYOUTS, SYSTEM_VIEWS, StringFile, TOOLBAR_BOTTOM, TOOLBAR_BOTTOM_CENTER, TOOLBAR_BOTTOM_END, TOOLBAR_MAIN, TOOLBAR_MAIN_CENTER, TOOLBAR_MAIN_RIGHT, TOPIC_COMMAND_REGISTERED, TOPIC_CONTRIBUTEIONS_CHANGED, TOPIC_SETTINGS_CHANGED, TOPIC_WORKSPACE_CHANGED, TOPIC_WORKSPACE_CONNECTED, WorkspaceService, activeEditorSignal, activePartSignal, activeSelectionSignal, activeTasksSignal, appLoaderService, appSettings, applyConfigNameRemaps, commandRegistry, configureFramework, confirmDialog, contributionRegistry, contributionTargetMappingRegistry, createJsRuntime, createLazyLabel, createLogger, dialogService, editorRegistry, esmShService, extensionRegistry, filebrowserDialog, getFrameworkConfig, i18n, icon, infoDialog, listContributionNameRemaps, defaultLogger as logger, navigableInfoDialog, overrideContributionTargets, parseIconSpec, partDirtySignal, persistenceService, perspectiveSwitchedSignal, promptDialog, publish, registerAll, rootContext, runJavaScriptCode, setLogLevel, subscribe, taskService, toastError, toastInfo, toastWarning, treeNodeComparator, uiContext, unsubscribe, watchSignal, workspaceService };
6
+ import { a as DocksStandardLayout, c as createLazyLabel, i as createJsRuntime, l as i18n, n as getFrameworkConfig, o as treeNodeComparator, r as runJavaScriptCode, s as editorRegistry, t as configureFramework } from "./api-BCLny6A5.js";
7
+ export { COMMAND_SAVE, CommandRegistry, CommandStack, CompositeDirectory, Directory, DocksContainer, DocksDialogContent, DocksElement, DocksPart, DocksStandardLayout, DocksWidget, EDITOR_AREA_MAIN, EMPTY_SIGNALPORT, File, FileContentType, FileSysDirHandleResource, HIDE_DOT_RESOURCE, MouseButton, PANEL_BOTTOM, SIDEBAR_AUXILIARY, SIDEBAR_MAIN, SIDEBAR_MAIN_BOTTOM, SIDEBAR_MAIN_TOOLBAR, SYSTEM_LAYOUTS, SYSTEM_VIEWS, StringFile, TOOLBAR_BOTTOM, TOOLBAR_BOTTOM_CENTER, TOOLBAR_BOTTOM_END, TOOLBAR_MAIN, TOOLBAR_MAIN_CENTER, TOOLBAR_MAIN_RIGHT, TOPIC_COMMAND_REGISTERED, TOPIC_CONTRIBUTEIONS_CHANGED, TOPIC_SETTINGS_CHANGED, TOPIC_WORKSPACE_CHANGED, TOPIC_WORKSPACE_CONNECTED, WorkspaceService, activeEditorSignal, activePartSignal, activeSelectionSignal, activeTasksSignal, appLoaderService, appSettings, applyConfigNameRemaps, commandRegistry, configureFramework, confirmDialog, contributionRegistry, contributionTargetMappingRegistry, createJsRuntime, createLazyLabel, createLogger, dialogService, editorRegistry, esmShService, extensionRegistry, filebrowserDialog, getFrameworkConfig, i18n, icon, infoDialog, listContributionNameRemaps, defaultLogger as logger, navigableInfoDialog, overrideContributionTargets, parseIconSpec, partDirtySignal, persistenceService, perspectiveSwitchedSignal, promptDialog, publish, registerAll, rootContext, runJavaScriptCode, setLogLevel, subscribe, taskService, toastError, toastInfo, toastWarning, treeNodeComparator, uiContext, unsubscribe, watchSignal, workspaceService };
@@ -1 +1 @@
1
- import "../parts-CKBZls6J.js";
1
+ import "../parts-Bl4MkOUi.js";
@@ -15,6 +15,12 @@ import { TabContribution } from '../core/contributionregistry';
15
15
  */
16
16
  export declare class DocksTabs extends DocksContainer {
17
17
  placement: "top" | "bottom" | "start" | "end";
18
+ /** When true, tab contributions show icons only (labels remain on title + wa-icon for a11y). */
19
+ iconOnly: boolean;
20
+ /**
21
+ * When true, render a `docks-toolbar` in the tab group `nav` slot after tabs (extensions contribute via id `${containerId}-toolbar`).
22
+ */
23
+ withToolbar: boolean;
18
24
  /** Tab contributions for this container */
19
25
  private contributions;
20
26
  /** Reference to the underlying wa-tab-group element */
@@ -57,6 +63,8 @@ export declare class DocksTabs extends DocksContainer {
57
63
  private getPartFromPanel;
58
64
  private static readonly MAX_TAB_LABEL;
59
65
  private truncateTabLabel;
66
+ /** Aligns `docks-toolbar` with `placement`: side rails → vertical, top/bottom tab strip → horizontal. */
67
+ private withToolbarOrientation;
60
68
  private renderEmptyState;
61
69
  render(): import('lit-html').TemplateResult<1>;
62
70
  static styles: import('lit').CSSResult;
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/parts/tabs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAgD,eAAe,EAA+B,MAAM,8BAA8B,CAAC;AAa1I;;;;;;;;;;;;GAYG;AACH,qBACa,SAAU,SAAQ,cAAc;IAEzC,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAS;IAEtD,2CAA2C;IAE3C,OAAO,CAAC,aAAa,CAAyB;IAE9C,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAc;IAE9B,0DAA0D;IAC1D,OAAO,CAAC,WAAW,CAAuB;IAE1C,OAAO,CAAC,yBAAyB,CAAS;IAE1C,OAAO,CAAC,kBAAkB,CAAC,CAAa;IAIxC,SAAS,CAAC,UAAU;IAQpB,SAAS,CAAC,QAAQ;IAelB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;IAqB3C,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAKzB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOpB,eAAe,IAAI,MAAM,GAAG,IAAI;IAKvC,IAAI,CAAC,YAAY,EAAE,eAAe,GAAG,IAAI;IAuBzC,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,GAAG,IAAI;IAMnE,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B5D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAM7C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO9B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAMnC;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,kCAAkC;IA+C1C,oBAAoB;IAMpB,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,0BAA0B;IAiBlC,OAAO,CAAC,+BAA+B;IAUvC,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAM;IAE3C,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,gBAAgB;IAqBxB,MAAM;IAgCN,MAAM,CAAC,MAAM,0BAqFZ;CACJ"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/parts/tabs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAgD,eAAe,EAA+B,MAAM,8BAA8B,CAAC;AAW1I;;;;;;;;;;;;GAYG;AACH,qBACa,SAAU,SAAQ,cAAc;IAEzC,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAS;IAEtD,gGAAgG;IAEhG,QAAQ,EAAE,OAAO,CAAS;IAE1B;;OAEG;IAEH,WAAW,EAAE,OAAO,CAAS;IAE7B,2CAA2C;IAE3C,OAAO,CAAC,aAAa,CAAyB;IAE9C,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAc;IAE9B,0DAA0D;IAC1D,OAAO,CAAC,WAAW,CAAuB;IAE1C,OAAO,CAAC,yBAAyB,CAAS;IAE1C,OAAO,CAAC,kBAAkB,CAAC,CAAa;IAIxC,SAAS,CAAC,UAAU;IAQpB,SAAS,CAAC,QAAQ;IAkBlB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;IAqB3C,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAKzB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOpB,eAAe,IAAI,MAAM,GAAG,IAAI;IAKvC,IAAI,CAAC,YAAY,EAAE,eAAe,GAAG,IAAI;IAuBzC,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,GAAG,IAAI;IAMnE,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B5D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAM7C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO9B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAMnC;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,kCAAkC;IA+C1C,oBAAoB;IAMpB,OAAO,CAAC,wBAAwB;IAchC,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,0BAA0B;IAiBlC,OAAO,CAAC,+BAA+B;IAUvC,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAM;IAE3C,OAAO,CAAC,gBAAgB;IAQxB,yGAAyG;IACzG,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,gBAAgB;IAqBxB,MAAM;IA6CN,MAAM,CAAC,MAAM,0BA6IZ;CACJ"}
@@ -2,7 +2,7 @@ import { n as defaultLogger, o as rootContext, s as uiContext, t as createLogger
2
2
  import { S as toastInfo, a as TOPIC_COMMAND_REGISTERED, f as activeTasksSignal, g as contributionRegistry, h as TOPIC_CONTRIBUTEIONS_CHANGED, l as activeEditorSignal, n as watchSignal, o as commandRegistry, p as partDirtySignal, t as DocksWidget, u as activePartSignal, v as contributionTargetMappingRegistry, x as toastError } from "./widget-BgBerzhp.js";
3
3
  import { n as subscribe, t as publish } from "./events-B_ZxkU_G.js";
4
4
  import { a as File, c as TOPIC_WORKSPACE_CHANGED, f as workspaceService, i as Directory, o as FileContentType, p as persistenceService } from "./fs-access-D-fDaJ8V.js";
5
- import "./webawesome-CsYKhg4S.js";
5
+ import "./webawesome-BIXFq9iK.js";
6
6
  import { css, html, nothing, render } from "lit";
7
7
  import { unsafeHTML } from "lit/directives/unsafe-html.js";
8
8
  import { marked } from "marked";
@@ -35,6 +35,7 @@ var constants_exports = /* @__PURE__ */ __exportAll({
35
35
  SIDEBAR_AUXILIARY: () => SIDEBAR_AUXILIARY,
36
36
  SIDEBAR_MAIN: () => SIDEBAR_MAIN,
37
37
  SIDEBAR_MAIN_BOTTOM: () => SIDEBAR_MAIN_BOTTOM,
38
+ SIDEBAR_MAIN_TOOLBAR: () => SIDEBAR_MAIN_TOOLBAR,
38
39
  SYSTEM_LAYOUTS: () => SYSTEM_LAYOUTS,
39
40
  SYSTEM_VIEWS: () => SYSTEM_VIEWS,
40
41
  TOOLBAR_BOTTOM: () => TOOLBAR_BOTTOM,
@@ -50,6 +51,8 @@ var TOOLBAR_MAIN_CENTER = "app-toolbars-main-center";
50
51
  var TOOLBAR_BOTTOM = "app-toolbars-bottom";
51
52
  var TOOLBAR_BOTTOM_CENTER = "app-toolbars-bottom-center";
52
53
  var TOOLBAR_BOTTOM_END = "app-toolbars-bottom-end";
54
+ /** Commands/HTML at the end of the main sidebar activity rail (wa-tab-group nav slot). */
55
+ var SIDEBAR_MAIN_TOOLBAR = "sidebar-main-toolbar";
53
56
  var SYSTEM_VIEWS = "system-views";
54
57
  var SYSTEM_LAYOUTS = "system.layouts";
55
58
  var EDITOR_AREA_MAIN = "editor-area-main";
@@ -573,7 +576,7 @@ var ExtensionRegistry = class {
573
576
  this.registerExtension(extension);
574
577
  defaultLogger.info(`Registered extension from URL: ${id}`);
575
578
  }
576
- this.enable(id, false);
579
+ await this.enableAsync(id, false);
577
580
  defaultLogger.info(`Successfully enabled extension from URL: ${finalUrl}`);
578
581
  return id;
579
582
  } catch (error) {
@@ -606,19 +609,28 @@ var ExtensionRegistry = class {
606
609
  enable(extensionId, informUser = false) {
607
610
  if (this.isEnabled(extensionId)) return;
608
611
  defaultLogger.debug(`Loading extension: ${extensionId}`);
609
- this.load(extensionId).then(() => {
610
- this.updateEnablement(extensionId, true, informUser);
611
- }).catch((_e) => {
612
+ this.load(extensionId).then(() => this.updateEnablementAsync(extensionId, true, informUser)).catch((_e) => {
612
613
  defaultLogger.error(`Could not load extension: ${extensionId}: ${_e}`);
613
614
  });
614
615
  }
615
616
  /** Like enable() but returns a Promise that resolves when the extension is loaded. Use when the caller must wait for commands/contributions to be registered (e.g. before rendering the app). */
616
617
  async enableAsync(extensionId, informUser = false) {
617
- if (this.isEnabled(extensionId)) return;
618
+ if (this.isEnabled(extensionId)) {
619
+ if (!this.isLoaded(extensionId)) {
620
+ defaultLogger.debug(`Extension ${extensionId} is enabled in settings but not loaded; loading now`);
621
+ try {
622
+ await this.load(extensionId);
623
+ } catch (e) {
624
+ defaultLogger.error(`Could not load extension: ${extensionId}: ${e}`);
625
+ throw e;
626
+ }
627
+ }
628
+ return;
629
+ }
618
630
  defaultLogger.debug(`Loading extension: ${extensionId}`);
619
631
  try {
620
632
  await this.load(extensionId);
621
- this.updateEnablement(extensionId, true, informUser);
633
+ await this.updateEnablementAsync(extensionId, true, informUser);
622
634
  } catch (e) {
623
635
  defaultLogger.error(`Could not load extension: ${extensionId}: ${e}`);
624
636
  throw e;
@@ -681,13 +693,14 @@ var ExtensionRegistry = class {
681
693
  );
682
694
  }
683
695
  });
684
- this.loadedExtensions.add(extensionId);
685
696
  if (module?.default instanceof Function) try {
686
- module.default(uiContext.getProxy());
697
+ const activationResult = module.default(uiContext.getProxy());
698
+ await Promise.resolve(activationResult);
687
699
  } catch (error) {
688
700
  defaultLogger.error(`Error executing extension function for ${extensionId}: ${error}`);
689
701
  throw error;
690
702
  }
703
+ this.loadedExtensions.add(extensionId);
691
704
  } catch (error) {
692
705
  this.loadedExtensions.delete(extensionId);
693
706
  throw error;
@@ -700,24 +713,8 @@ var ExtensionRegistry = class {
700
713
  }
701
714
  disable(extensionId, informUser = false) {
702
715
  if (!this.isEnabled(extensionId)) return;
703
- this.updateEnablement(extensionId, false, informUser);
704
- }
705
- updateEnablement(extensionId, enabled, informUser) {
706
- this.checkExtensionsConfig().then(() => {
707
- const extension = this.extensionsSettings?.find((e) => e.id == extensionId);
708
- if (extension) extension.enabled = enabled;
709
- else this.extensionsSettings?.push({
710
- id: extensionId,
711
- enabled
712
- });
713
- appSettings.set(KEY_EXTENSIONS_CONFIG, this.extensionsSettings).then(() => {
714
- if (informUser) {
715
- const extObj = this.extensions[extensionId];
716
- if (enabled) toastInfo(extObj.name + " enabled.");
717
- else toastInfo(extObj.name + " disabled - Please restart to take effect");
718
- }
719
- publish(TOPIC_EXTENSIONS_CHANGED, this.extensionsSettings);
720
- });
716
+ this.updateEnablementAsync(extensionId, false, informUser).catch((e) => {
717
+ defaultLogger.error(`Could not persist disable for extension ${extensionId}: ${e}`);
721
718
  });
722
719
  }
723
720
  async updateEnablementAsync(extensionId, enabled, informUser) {
@@ -3727,6 +3724,8 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3727
3724
  constructor(..._args) {
3728
3725
  super(..._args);
3729
3726
  this.placement = "top";
3727
+ this.iconOnly = false;
3728
+ this.withToolbar = false;
3730
3729
  this.contributions = [];
3731
3730
  this.tabGroup = createRef();
3732
3731
  this.containerId = null;
@@ -3740,7 +3739,10 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3740
3739
  doInitUI() {
3741
3740
  this.updateComplete.then(() => this.ensureTabGroupListenersAndActivate());
3742
3741
  subscribe(TOPIC_CONTRIBUTEIONS_CHANGED, (event) => {
3743
- if (!this.containerId || event.target !== this.containerId) return;
3742
+ if (!this.containerId) return;
3743
+ const navToolbarId = `${this.containerId}-toolbar`;
3744
+ if (event.target === navToolbarId) return;
3745
+ if (event.target !== this.containerId) return;
3744
3746
  this.loadAndResolveContributions();
3745
3747
  this.requestUpdate();
3746
3748
  this.updateComplete.then(() => {
@@ -3926,6 +3928,10 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3926
3928
  const startLen = Math.floor(take / 2);
3927
3929
  return label.slice(0, startLen) + ellipsis + label.slice(-(take - startLen));
3928
3930
  }
3931
+ /** Aligns `docks-toolbar` with `placement`: side rails → vertical, top/bottom tab strip → horizontal. */
3932
+ withToolbarOrientation() {
3933
+ return this.placement === "start" || this.placement === "end" ? "vertical" : "horizontal";
3934
+ }
3929
3935
  renderEmptyState() {
3930
3936
  const currentApp = appLoaderService.getCurrentApp();
3931
3937
  return html`
@@ -3941,6 +3947,7 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3941
3947
  }
3942
3948
  render() {
3943
3949
  if (this.contributions.length === 0) return this.renderEmptyState();
3950
+ const navToolbarId = this.containerId ? `${this.containerId}-toolbar` : "";
3944
3951
  return html`
3945
3952
  <wa-tab-group ${ref(this.tabGroup)} placement=${this.placement}>
3946
3953
  ${repeat(this.contributions, (c) => c.name, (c) => {
@@ -3951,7 +3958,7 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3951
3958
  title="${fullLabel}"
3952
3959
  @auxclick="${(e) => this.handleTabAuxClick(e, c)}">
3953
3960
  ${icon(c.icon, { label: fullLabel })}
3954
- ${shortLabel}
3961
+ ${this.iconOnly ? nothing : shortLabel}
3955
3962
  ${when(c.closable, () => html`
3956
3963
  <wa-icon name="xmark" label="Close" @click="${(e) => this.closeTab(e, c.name)}"></wa-icon>
3957
3964
  `)}
@@ -3961,6 +3968,16 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3961
3968
  </wa-tab-panel>
3962
3969
  `;
3963
3970
  })}
3971
+ ${this.withToolbar && navToolbarId ? html`
3972
+ <div class="nav-toolbar-spacer" slot="nav" aria-hidden="true"></div>
3973
+ <docks-toolbar
3974
+ slot="nav"
3975
+ id=${navToolbarId}
3976
+ orientation=${this.withToolbarOrientation()}
3977
+ align="center"
3978
+ size="large"
3979
+ ></docks-toolbar>
3980
+ ` : nothing}
3964
3981
  </wa-tab-group>
3965
3982
  `;
3966
3983
  }
@@ -3974,15 +3991,22 @@ var DocksTabs = class DocksTabs extends DocksContainer {
3974
3991
  wa-tab-group {
3975
3992
  height: 100%;
3976
3993
  width: 100%;
3994
+ min-height: 0;
3977
3995
  }
3978
3996
 
3979
- wa-tab-group::part(base) {
3997
+ :host(:is([placement="top"], [placement="bottom"])) wa-tab-group::part(base) {
3980
3998
  display: grid;
3981
3999
  grid-template-rows: auto minmax(0, 1fr);
3982
4000
  height: 100%;
3983
4001
  width: 100%;
3984
4002
  }
3985
4003
 
4004
+ :host(:is([placement="start"], [placement="end"])) wa-tab-group::part(base) {
4005
+ height: 100%;
4006
+ width: 100%;
4007
+ min-height: 0;
4008
+ }
4009
+
3986
4010
  wa-tab-panel[active] {
3987
4011
  display: grid;
3988
4012
  grid-template-rows: minmax(0, 1fr);
@@ -4002,6 +4026,56 @@ var DocksTabs = class DocksTabs extends DocksContainer {
4002
4026
  padding: 3px 0.5rem;
4003
4027
  }
4004
4028
 
4029
+ :host([icon-only]) wa-tab::part(base) {
4030
+ justify-content: center;
4031
+ }
4032
+
4033
+ :host([icon-only]:is([placement="top"], [placement="bottom"])) wa-tab::part(base) {
4034
+ padding: var(--wa-space-s);
4035
+ }
4036
+
4037
+ :host([icon-only]:is([placement="start"], [placement="end"])) wa-tab::part(base) {
4038
+ padding-inline: 0;
4039
+ padding-block: var(--wa-space-s);
4040
+ }
4041
+
4042
+ :host([icon-only]) wa-tab wa-icon {
4043
+ font-size: var(--wa-font-size-l);
4044
+ }
4045
+
4046
+ :host([icon-only]:is([placement="start"], [placement="end"])) wa-tab-group::part(nav),
4047
+ :host([icon-only]:is([placement="start"], [placement="end"])) wa-tab-group::part(tabs) {
4048
+ padding: 0;
4049
+ margin: 0;
4050
+ }
4051
+
4052
+ :host([icon-only]:is([placement="start"], [placement="end"])) wa-tab-group::part(nav) {
4053
+ flex: 0 0 auto;
4054
+ }
4055
+
4056
+ :host([with-toolbar]) .nav-toolbar-spacer {
4057
+ flex: 1 1 auto;
4058
+ min-height: 0;
4059
+ min-width: 0;
4060
+ pointer-events: none;
4061
+ }
4062
+
4063
+ :host([with-toolbar]:is([placement="start"], [placement="end"])) wa-tab-group::part(nav) {
4064
+ display: grid;
4065
+ grid-template-rows: 1fr;
4066
+ height: 100%;
4067
+ min-height: 0;
4068
+ }
4069
+
4070
+ :host([with-toolbar]:is([placement="start"], [placement="end"])) wa-tab-group::part(tabs) {
4071
+ display: flex;
4072
+ flex-direction: column;
4073
+ min-height: 0;
4074
+ height: 100%;
4075
+ flex: 1 1 auto;
4076
+ align-self: stretch;
4077
+ }
4078
+
4005
4079
  wa-tab-panel {
4006
4080
  --padding: 0px;
4007
4081
  }
@@ -4017,7 +4091,6 @@ var DocksTabs = class DocksTabs extends DocksContainer {
4017
4091
  justify-content: center;
4018
4092
  width: 100%;
4019
4093
  height: 100%;
4020
- grid-row: 2;
4021
4094
  }
4022
4095
 
4023
4096
  .empty-content {
@@ -4054,6 +4127,16 @@ var DocksTabs = class DocksTabs extends DocksContainer {
4054
4127
  }
4055
4128
  };
4056
4129
  _decorate([property({ reflect: true })], DocksTabs.prototype, "placement", void 0);
4130
+ _decorate([property({
4131
+ type: Boolean,
4132
+ reflect: true,
4133
+ attribute: "icon-only"
4134
+ })], DocksTabs.prototype, "iconOnly", void 0);
4135
+ _decorate([property({
4136
+ type: Boolean,
4137
+ reflect: true,
4138
+ attribute: "with-toolbar"
4139
+ })], DocksTabs.prototype, "withToolbar", void 0);
4057
4140
  _decorate([state()], DocksTabs.prototype, "contributions", void 0);
4058
4141
  DocksTabs = _DocksTabs = _decorate([customElement("docks-tabs")], DocksTabs);
4059
4142
  //#endregion
@@ -4325,6 +4408,6 @@ _decorate([state()], DocksResizableGrid.prototype, "gridSizes", void 0);
4325
4408
  _decorate([state()], DocksResizableGrid.prototype, "gridChildren", void 0);
4326
4409
  DocksResizableGrid = _DocksResizableGrid = _decorate([customElement("docks-resizable-grid")], DocksResizableGrid);
4327
4410
  //#endregion
4328
- export { SYSTEM_VIEWS as A, HIDE_DOT_RESOURCE as C, SIDEBAR_MAIN as D, SIDEBAR_AUXILIARY as E, TOOLBAR_MAIN_CENTER as F, TOOLBAR_MAIN_RIGHT as I, constants_exports as L, TOOLBAR_BOTTOM_CENTER as M, TOOLBAR_BOTTOM_END as N, SIDEBAR_MAIN_BOTTOM as O, TOOLBAR_MAIN as P, EDITOR_AREA_MAIN as S, PANEL_BOTTOM as T, esmShService as _, filebrowserDialog as a, appSettings as b, infoDialog as c, deleteIndexedDbWorkspaceData as d, dialogService as f, extensionRegistry as g, TOPIC_EXTENSIONS_CHANGED as h, parseIconSpec as i, TOOLBAR_BOTTOM as j, SYSTEM_LAYOUTS as k, promptDialog as l, DocksElement as m, DocksContainer as n, navigableInfoDialog as o, DocksDialogContent as p, icon as r, confirmDialog as s, DocksPart as t, appLoaderService as u, taskService as v, MouseButton as w, COMMAND_SAVE as x, TOPIC_SETTINGS_CHANGED as y };
4411
+ export { SYSTEM_LAYOUTS as A, HIDE_DOT_RESOURCE as C, SIDEBAR_MAIN as D, SIDEBAR_AUXILIARY as E, TOOLBAR_MAIN as F, TOOLBAR_MAIN_CENTER as I, TOOLBAR_MAIN_RIGHT as L, TOOLBAR_BOTTOM as M, TOOLBAR_BOTTOM_CENTER as N, SIDEBAR_MAIN_BOTTOM as O, TOOLBAR_BOTTOM_END as P, constants_exports as R, EDITOR_AREA_MAIN as S, PANEL_BOTTOM as T, esmShService as _, filebrowserDialog as a, appSettings as b, infoDialog as c, deleteIndexedDbWorkspaceData as d, dialogService as f, extensionRegistry as g, TOPIC_EXTENSIONS_CHANGED as h, parseIconSpec as i, SYSTEM_VIEWS as j, SIDEBAR_MAIN_TOOLBAR as k, promptDialog as l, DocksElement as m, DocksContainer as n, navigableInfoDialog as o, DocksDialogContent as p, icon as r, confirmDialog as s, DocksPart as t, appLoaderService as u, taskService as v, MouseButton as w, COMMAND_SAVE as x, TOPIC_SETTINGS_CHANGED as y };
4329
4412
 
4330
- //# sourceMappingURL=parts-CKBZls6J.js.map
4413
+ //# sourceMappingURL=parts-Bl4MkOUi.js.map