@omegagrid/bucket 0.10.7 → 0.10.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/options.d.ts +1 -0
- package/dist/options.d.ts.map +1 -1
- package/dist/options.js +1 -0
- package/dist/options.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/ui/bucket.d.ts +3 -0
- package/dist/ui/bucket.d.ts.map +1 -1
- package/dist/ui/bucket.js +39 -12
- package/dist/ui/bucket.js.map +1 -1
- package/package.json +6 -6
package/dist/options.d.ts
CHANGED
package/dist/options.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC3B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CAChC,GAAG,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC3B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,aAAa,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACpC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CAChC,GAAG,aAAa,CAAA;AAYjB,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,WAAW,GAAE,aAAoB,GAAG,aAAa,CAO9G"}
|
package/dist/options.js
CHANGED
package/dist/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AAenE,MAAM,eAAe,GAAkB;IACtC,MAAM,EAAE;QACP,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,IAAI;KACb;IACD,YAAY,EAAE,KAAK;IACnB,aAAa,EAAE,QAAQ;CACvB,CAAA;AAGD,MAAM,UAAU,WAAW,CAAC,OAAgC,EAAE,cAA6B,IAAI;IAC9F,OAAO;QACN,GAAG,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC;QAC1C,GAAG,eAAe;QAClB,GAAG,WAAW;QACd,GAAG,OAAO;KACV,CAAC;AACH,CAAC","sourcesContent":["import { initCommonOptions, CommonOptions } from \"@omegagrid/core\";\nimport { PathResolver } from \"./types\";\n\nexport type AlertsOptions = {\n\tmaxItems: number,\n\ttimeout: number,\n}\n\nexport type BucketOptions = {\n\talerts?: AlertsOptions,\n\tcomponentMode?: 'tabbed' | 'single',\n\tpathResolver?: PathResolver,\n\tpathPosition?: 'top' | 'bottom',\n} & CommonOptions\n\nconst DEFAULT_OPTIONS: BucketOptions = {\n\talerts: {\n\t\tmaxItems: 5,\n\t\ttimeout: 5000,\n\t},\n\tpathPosition: 'top',\n\tcomponentMode: 'tabbed'\n}\n\n\nexport function initOptions(options?: Partial<BucketOptions>, origOptions: BucketOptions = null): BucketOptions {\n\treturn {\n\t\t...initCommonOptions(options, origOptions),\n\t\t...DEFAULT_OPTIONS,\n\t\t...origOptions,\n\t\t...options,\n\t};\n}\n"]}
|
package/dist/types.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export type SidemenuItem = {
|
|
|
16
16
|
export type SidemenuSettings = {
|
|
17
17
|
items: SidemenuItem[];
|
|
18
18
|
activeIndex?: number;
|
|
19
|
+
hidden?: boolean;
|
|
19
20
|
};
|
|
20
21
|
export type SidebarSettings = {
|
|
21
22
|
width?: number;
|
|
@@ -53,6 +54,7 @@ export type BucketSource = {
|
|
|
53
54
|
sidemenu?: SidemenuSettings;
|
|
54
55
|
sidebar?: SidebarSettings;
|
|
55
56
|
editorLayout?: TabSplitContainerSource;
|
|
57
|
+
componentId?: ComponentId;
|
|
56
58
|
options?: BucketOptions;
|
|
57
59
|
};
|
|
58
60
|
export type BucketDialog = Dialog & {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,MAAM,YAAY,GAAI;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import { ComponentId, ComponentState, HorizontalPosition, IconSpec } from \"@omegagrid/core\";\nimport { Dialog } from \"@omegagrid/dialog\";\nimport { ContainerTabItem, TabSplitContainerSource } from \"@omegagrid/tabs\";\nimport { DialogOptions } from \"@omegagrid/dialog\";\nimport { TemplateResult } from \"lit\";\nimport { BucketOptions } from \"./options\";\n\nexport type SidemenuItem = {\n\tid: string,\n\ticon: string,\n\tstatusIcon?: string,\n\tstatusColor?: string,\n\ttext?: string,\n\ttooltip?: string,\n\tcolor?: string\n}\n\nexport type SidemenuSettings = {\n\titems: SidemenuItem[];\n\tactiveIndex?: number;\n}\n\nexport type SidebarSettings = {\n\twidth?: number,\n\tcollapsed?: boolean\n}\n\nexport type ModalSidebarOptions = {\n\tid?: ComponentId,\n\tcomponent?: HTMLElement,\n\twidth?: number,\n\tcaption?: string,\n\tclosable?: boolean,\n\tposition?: HorizontalPosition\n}\n\nexport type ComponentOptions = Record<string, unknown>;\n\nexport type PathSegment = {\n\tid: string,\n\tlabel?: string,\n\ticon?: string,\n\tclickable?: boolean,\n}\n\nexport type PathSegments = (PathSegment|string)[];\n\nexport type PathResolver = (id: ComponentId) => PathSegments|Promise<PathSegments>;\n\nexport type ComponentUpdateOptions = {\n\tid?: ComponentId,\n\ttitle?: string\n}\n\nexport type TopItem = {\n\tid: ComponentId\n}\n\nexport type TopSettings = {\n\trightItems: TopItem[]\n}\n\nexport type BucketSource = {\n\ttop?: TopSettings,\n\tsidemenu?: SidemenuSettings,\n\tsidebar?: SidebarSettings,\n\teditorLayout?: TabSplitContainerSource,\n\toptions?: BucketOptions,\n}\n\nexport type BucketDialog = Dialog & {componentId: ComponentId};\n\nexport type BucketState = {\n\tsidebar?: {\n\t\tselectedItem?: ComponentId\n\t\twidth?: number,\n\t\tcollapsed?: boolean\n\t},\n\tlayout?: TabSplitContainerSource,\n\tdialogs?: OpenDialogOptions[],\n\tcomponents?: Record<ComponentId, ComponentState>\n}\n\nexport type OpenDialogOptions = DialogOptions & {\n\tid?: ComponentId,\n\tcomponent?: HTMLElement,\n\tmaximizable?: boolean\n}\n\nexport type OpenTabOptions = ContainerTabItem & {\n\tcomponent?: HTMLElement,\n\t// path?: PathSegments,\n}\n\nexport type BucketAlertType = 'danger'|'warning'|'info'|'success';\n\nexport type BucketAlertOptions = {\n\ttitle?: string|TemplateResult<1>,\n\ticon?: string|IconSpec,\n\ttype?: BucketAlertType,\n\tcontent?: string|TemplateResult<1>,\n\ttimeout?: number\n};\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import { ComponentId, ComponentState, HorizontalPosition, IconSpec } from \"@omegagrid/core\";\nimport { Dialog } from \"@omegagrid/dialog\";\nimport { ContainerTabItem, TabSplitContainerSource } from \"@omegagrid/tabs\";\nimport { DialogOptions } from \"@omegagrid/dialog\";\nimport { TemplateResult } from \"lit\";\nimport { BucketOptions } from \"./options\";\n\nexport type SidemenuItem = {\n\tid: string,\n\ticon: string,\n\tstatusIcon?: string,\n\tstatusColor?: string,\n\ttext?: string,\n\ttooltip?: string,\n\tcolor?: string\n}\n\nexport type SidemenuSettings = {\n\titems: SidemenuItem[];\n\tactiveIndex?: number;\n\thidden?: boolean;\n}\n\nexport type SidebarSettings = {\n\twidth?: number,\n\tcollapsed?: boolean\n}\n\nexport type ModalSidebarOptions = {\n\tid?: ComponentId,\n\tcomponent?: HTMLElement,\n\twidth?: number,\n\tcaption?: string,\n\tclosable?: boolean,\n\tposition?: HorizontalPosition\n}\n\nexport type ComponentOptions = Record<string, unknown>;\n\nexport type PathSegment = {\n\tid: string,\n\tlabel?: string,\n\ticon?: string,\n\tclickable?: boolean,\n}\n\nexport type PathSegments = (PathSegment|string)[];\n\nexport type PathResolver = (id: ComponentId) => PathSegments|Promise<PathSegments>;\n\nexport type ComponentUpdateOptions = {\n\tid?: ComponentId,\n\ttitle?: string\n}\n\nexport type TopItem = {\n\tid: ComponentId\n}\n\nexport type TopSettings = {\n\trightItems: TopItem[]\n}\n\nexport type BucketSource = {\n\ttop?: TopSettings,\n\tsidemenu?: SidemenuSettings,\n\tsidebar?: SidebarSettings,\n\teditorLayout?: TabSplitContainerSource,\n\tcomponentId?: ComponentId,\n\toptions?: BucketOptions,\n}\n\nexport type BucketDialog = Dialog & {componentId: ComponentId};\n\nexport type BucketState = {\n\tsidebar?: {\n\t\tselectedItem?: ComponentId\n\t\twidth?: number,\n\t\tcollapsed?: boolean\n\t},\n\tlayout?: TabSplitContainerSource,\n\tdialogs?: OpenDialogOptions[],\n\tcomponents?: Record<ComponentId, ComponentState>\n}\n\nexport type OpenDialogOptions = DialogOptions & {\n\tid?: ComponentId,\n\tcomponent?: HTMLElement,\n\tmaximizable?: boolean\n}\n\nexport type OpenTabOptions = ContainerTabItem & {\n\tcomponent?: HTMLElement,\n\t// path?: PathSegments,\n}\n\nexport type BucketAlertType = 'danger'|'warning'|'info'|'success';\n\nexport type BucketAlertOptions = {\n\ttitle?: string|TemplateResult<1>,\n\ticon?: string|IconSpec,\n\ttype?: BucketAlertType,\n\tcontent?: string|TemplateResult<1>,\n\ttimeout?: number\n};\n"]}
|
package/dist/ui/bucket.d.ts
CHANGED
|
@@ -43,6 +43,8 @@ export declare class Bucket extends OmegaComponent<BucketState> implements Layou
|
|
|
43
43
|
get container(): SplitContainer;
|
|
44
44
|
private _editorContainer;
|
|
45
45
|
get editorContainer(): TabSplitContainer;
|
|
46
|
+
private _singleContainer;
|
|
47
|
+
get singleContainer(): HTMLDivElement;
|
|
46
48
|
private _sidebarHost;
|
|
47
49
|
get sidebarHost(): Sidebar;
|
|
48
50
|
updateContainerVisibility: {
|
|
@@ -58,6 +60,7 @@ export declare class Bucket extends OmegaComponent<BucketState> implements Layou
|
|
|
58
60
|
layout(): void;
|
|
59
61
|
setSourceData(sourceData: BucketSource): void;
|
|
60
62
|
updated(): Promise<void>;
|
|
63
|
+
private _openComponent;
|
|
61
64
|
open(item: OpenTabOptions): Promise<HTMLElement>;
|
|
62
65
|
openDialog(options: OpenDialogOptions): Promise<import("../types").BucketDialog>;
|
|
63
66
|
openMenu(options: OpenCommandsOptions): Promise<CommandResult | null>;
|
package/dist/ui/bucket.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bucket.d.ts","sourceRoot":"","sources":["../../src/ui/bucket.ts"],"names":[],"mappings":"AAAA,OAAO,EACD,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,GAAG,EACnE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAkB,eAAe,EACrE,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAA0B,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIzF,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AACjI,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAe,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAUjD,qBAAa,WAAY,SAAQ,KAAK;IACrC,GAAG,EAAE,OAAO,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;gBAEb,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;CAKrD;AAED,qBACa,MAAO,SAAQ,cAAc,CAAC,WAAW,CAAE,YAAW,MAAM;IAExE,MAAM,CAAC,MAAM,4BAAW;IACxB,MAAM,CAAC,QAAQ,SAAK;IACpB,MAAM,CAAC,WAAW,eAA2B;IAG7C,OAAO,EAAE,OAAO,CAAC;IAGjB,GAAG,EAAE,SAAS,CAAC;IAGf,QAAQ,EAAE,QAAQ,CAAC;IAGnB,IAAI,EAAE,cAAc,CAAC;IAGrB,IAAI,EAAE,cAAc,CAAC;IAGrB,eAAe,EAAE,gBAAgB,CAAC;IAGlC,UAAU,EAAE,YAAY,CAAkB;IAG1C,OAAO,EAAE,aAAa,CAAC;IAGvB,MAAM,EAAE,GAAG,CAAC,MAAM,CAA6B;IAG/C,OAAO,UAAS;IAEhB,mBAAmB,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IAEpC,OAAO,CAAC,kBAAkB,CAAc;IACxC,IAAI,iBAAiB,gBAAqC;IAE1D,OAAO,CAAC,UAAU,CAAiB;IACnC,IAAI,SAAS,IAAI,cAAc,CAc9B;IAED,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,IAAI,eAAe,IAAI,iBAAiB,CAUvC;IAED,OAAO,CAAC,YAAY,CAAU;IAC9B,IAAI,WAAW,YAMd;IAED,yBAAyB;;
|
|
1
|
+
{"version":3,"file":"bucket.d.ts","sourceRoot":"","sources":["../../src/ui/bucket.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/bucket.js
CHANGED
|
@@ -8,7 +8,7 @@ var Bucket_1;
|
|
|
8
8
|
import { dom, log, OmegaComponent, ShortcutManager } from '@omegagrid/core';
|
|
9
9
|
import { TabSplitContainerModel } from '@omegagrid/tabs';
|
|
10
10
|
import { CommandManager } from '@omegagrid/commands';
|
|
11
|
-
import { html } from 'lit';
|
|
11
|
+
import { html, LitElement } from 'lit';
|
|
12
12
|
import { customElement, property, query } from 'lit/decorators.js';
|
|
13
13
|
import constants from '../constants';
|
|
14
14
|
import style from './bucket.style';
|
|
@@ -20,7 +20,7 @@ import { BucketDialogs } from './bucket.dialogs';
|
|
|
20
20
|
import { debounce } from 'ts-debounce';
|
|
21
21
|
const DEFAULT_SOURCE = {
|
|
22
22
|
top: { rightItems: [] },
|
|
23
|
-
sidemenu: { items: [], activeIndex: null },
|
|
23
|
+
sidemenu: { items: [], activeIndex: null, hidden: false },
|
|
24
24
|
sidebar: { width: constants.SIDEBAR_WIDTH, collapsed: false },
|
|
25
25
|
editorLayout: { items: [] }
|
|
26
26
|
};
|
|
@@ -60,6 +60,13 @@ let Bucket = Bucket_1 = class Bucket extends OmegaComponent {
|
|
|
60
60
|
this._editorContainer.scrollableTabs = true;
|
|
61
61
|
return this._editorContainer;
|
|
62
62
|
}
|
|
63
|
+
get singleContainer() {
|
|
64
|
+
if (this._singleContainer)
|
|
65
|
+
return this._singleContainer;
|
|
66
|
+
this._singleContainer = dom.createElement('div');
|
|
67
|
+
this._singleContainer.style.height = '100%';
|
|
68
|
+
return this._singleContainer;
|
|
69
|
+
}
|
|
63
70
|
get sidebarHost() {
|
|
64
71
|
if (this._sidebarHost)
|
|
65
72
|
return this._sidebarHost;
|
|
@@ -111,7 +118,7 @@ let Bucket = Bucket_1 = class Bucket extends OmegaComponent {
|
|
|
111
118
|
else if (index == 1) {
|
|
112
119
|
// editor split container
|
|
113
120
|
this.logger.info('create editor container');
|
|
114
|
-
return this.editorContainer;
|
|
121
|
+
return this.options?.componentMode == 'single' ? this.singleContainer : this.editorContainer;
|
|
115
122
|
}
|
|
116
123
|
if (!component) {
|
|
117
124
|
component = dom.createElement('div');
|
|
@@ -152,10 +159,12 @@ let Bucket = Bucket_1 = class Bucket extends OmegaComponent {
|
|
|
152
159
|
<div class="body">
|
|
153
160
|
<og-overlay></og-overlay>
|
|
154
161
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
162
|
+
${this.sourceData.sidemenu.hidden ? html `` : html `
|
|
163
|
+
<og-bucket-sidemenu
|
|
164
|
+
@select=${this._onSidemenuSelect}
|
|
165
|
+
.settings=${this.sourceData.sidemenu}>
|
|
166
|
+
</og-bucket-sidemenu>
|
|
167
|
+
`}
|
|
159
168
|
|
|
160
169
|
<div class="main"></div>
|
|
161
170
|
</div>
|
|
@@ -195,11 +204,14 @@ let Bucket = Bucket_1 = class Bucket extends OmegaComponent {
|
|
|
195
204
|
}
|
|
196
205
|
}
|
|
197
206
|
async updated() {
|
|
198
|
-
const mainContainer = this.compact
|
|
207
|
+
const mainContainer = this.compact
|
|
208
|
+
? (this.options?.componentMode == 'single' ? this.singleContainer : this.editorContainer)
|
|
209
|
+
: this.container;
|
|
199
210
|
if (mainContainer.parentElement != this.main) {
|
|
200
211
|
dom.empty(this.main);
|
|
201
212
|
this.main.appendChild(mainContainer);
|
|
202
|
-
mainContainer
|
|
213
|
+
if (mainContainer instanceof LitElement)
|
|
214
|
+
mainContainer.requestUpdate();
|
|
203
215
|
}
|
|
204
216
|
const sidebarComponentId = (this.sourceData.sidemenu.items ?? [])[this.sourceData.sidemenu.activeIndex]?.id;
|
|
205
217
|
if (sidebarComponentId) {
|
|
@@ -208,20 +220,35 @@ let Bucket = Bucket_1 = class Bucket extends OmegaComponent {
|
|
|
208
220
|
await this.container?.updateComplete;
|
|
209
221
|
this.layout();
|
|
210
222
|
}
|
|
223
|
+
_openComponent(item) {
|
|
224
|
+
const singleMode = this.options?.componentMode == 'single';
|
|
225
|
+
if (singleMode) {
|
|
226
|
+
dom.empty(this.singleContainer);
|
|
227
|
+
this.singleContainer.appendChild(this.createEditorComponent(item.id));
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
this.editorContainer.open(item);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
211
233
|
async open(item) {
|
|
212
234
|
if (this.compact)
|
|
213
235
|
this.hideSidebar();
|
|
214
|
-
|
|
236
|
+
if (this.options?.componentMode == 'single') {
|
|
237
|
+
dom.showElement(this.singleContainer);
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
dom.showElement(this.editorContainer);
|
|
241
|
+
}
|
|
215
242
|
const component = item.component;
|
|
216
243
|
if (component) {
|
|
217
244
|
item.id = this.components.register(item.id, item.component);
|
|
218
245
|
delete item.component;
|
|
219
|
-
this.
|
|
246
|
+
this._openComponent(item);
|
|
220
247
|
return component;
|
|
221
248
|
}
|
|
222
249
|
return new Promise((resolve, reject) => {
|
|
223
250
|
this.components.enqueueComponentResolution(item.id, resolve, reject);
|
|
224
|
-
this.
|
|
251
|
+
this._openComponent(item);
|
|
225
252
|
this.dispatchStateEvent();
|
|
226
253
|
});
|
|
227
254
|
}
|
package/dist/ui/bucket.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bucket.js","sourceRoot":"","sources":["../../src/ui/bucket.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tdom, Layout, ListSelectEvent, ComponentFactory, SplitContainer, log,\n\tComponentId, Overlay, OmegaComponent, ComponentState, ShortcutManager\n} from '@omegagrid/core';\nimport { TabEvent, TabItem, TabSplitContainer, TabSplitContainerModel } from '@omegagrid/tabs';\nimport { CommandManager, CommandResult, OpenCommandsOptions } from '@omegagrid/commands';\nimport { html } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport constants from '../constants';\nimport { BucketAlertOptions, BucketSource, BucketState, ModalSidebarOptions, OpenDialogOptions, OpenTabOptions } from '../types';\nimport { Sidemenu } from './sidemenu';\nimport style from './bucket.style';\nimport { BucketTop } from './top';\nimport { ComponentHost } from './componentHost';\nimport { BucketAlerts } from './bucket.alerts';\nimport { BucketOptions, initOptions } from '../options';\nimport { Sidebar } from './sidebar';\nimport { BucketComponents } from './bucket.components';\nimport { BucketSidebars } from './bucket.sidebars';\nimport { BucketDialogs } from './bucket.dialogs';\nimport { debounce } from 'ts-debounce';\n\nconst DEFAULT_SOURCE: BucketSource = {\n\ttop: {rightItems: []},\n\tsidemenu: {items: [], activeIndex: null},\n\tsidebar: {width: constants.SIDEBAR_WIDTH, collapsed: false},\n\teditorLayout: {items: []}\n};\n\nexport class BucketEvent extends Event {\n\ttab: TabItem;\n\tcomponentId: ComponentId;\n\n\tconstructor(type: string, args?: Partial<BucketEvent>) {\n\t\tsuper(`bucket.${type}`, {bubbles: true, composed: true});\n\t\tObject.assign(this, args);\n\t}\n\n}\n\n@customElement('og-bucket')\nexport class Bucket extends OmegaComponent<BucketState> implements Layout {\n\n\tstatic styles = [style];\n\tstatic uniqueId = 0;\n\tstatic getUniqueId = () => ++Bucket.uniqueId;\n\n\t@query('og-overlay')\n\toverlay: Overlay;\n\n\t@query('og-bucket-top')\n\ttop: BucketTop;\n\n\t@query('og-bucket-sidemenu')\n\tsidemenu: Sidemenu;\n\n\t@query('.body')\n\tbody: HTMLDivElement;\n\n\t@query('.main')\n\tmain: HTMLDivElement;\n\n\t@property({type: Object})\n\tcreateComponent: ComponentFactory;\n\n\t@property({type: Object})\n\tsourceData: BucketSource = DEFAULT_SOURCE;\n\n\t@property({type: Object})\n\toptions: BucketOptions;\n\n\t@property({type: Object})\n\tlogger: log.Logger = new log.Logger('Ωbucket');\n\n\t@property({type: Boolean})\n\tcompact = false;\n\n\tsidebar1ComponentId: string;\n\n\treadonly components: BucketComponents;\n\treadonly sidebars: BucketSidebars;\n\treadonly alerts: BucketAlerts;\n\treadonly dialogs: BucketDialogs;\n\treadonly commands: CommandManager;\n\treadonly shortcuts: ShortcutManager;\n\n\tprivate _activeComponentId: ComponentId;\n\tget activeComponentId() { return this._activeComponentId }\n\n\tprivate _container: SplitContainer;\n\tget container(): SplitContainer {\n\t\tif (this._container) return this._container;\n\t\tthis._container = dom.createElement<SplitContainer>('og-splitcontainer');\n\t\tthis._container.orientation = 'horizontal';\n\t\tthis._container.items = [{\n\t\t\tsize: this.sourceData.sidebar?.width || constants.SIDEBAR_WIDTH,\n\t\t\tcollapsed: this.sourceData.sidebar?.collapsed || false\n\t\t}, {size: null}];\n\t\tthis._container.createComponent = this._createSplitContainerComponent;\n\t\tthis._container.addEventListener('splitContainer.resize', this._onSplitContainerResize);\n\t\tthis._container.addEventListener('tab.beforeRemove', this._onTabBeforeRemove);\n\t\tthis._container.addEventListener('tab.remove', this._onTabRemove);\n\t\tthis._container.addEventListener('tab.select', this._onTabSelect);\n\t\treturn this._container;\n\t}\n\n\tprivate _editorContainer: TabSplitContainer;\n\tget editorContainer(): TabSplitContainer {\n\t\tif (this._editorContainer) return this._editorContainer;\n\t\tthis._editorContainer = dom.createElement<TabSplitContainer>('og-tabsplitcontainer');\n\t\tthis._editorContainer.style.height = '100%';\n\t\tthis._editorContainer.closable = true;\n\t\tthis._editorContainer.singleActive = true;\n\t\tthis._editorContainer.createComponent = this.createEditorComponent;\n\t\tthis._editorContainer.model = new TabSplitContainerModel(this.sourceData.editorLayout);\n\t\tthis._editorContainer.scrollableTabs = true;\n\t\treturn this._editorContainer;\n\t}\n\n\tprivate _sidebarHost: Sidebar;\n\tget sidebarHost() {\n\t\tif (this._sidebarHost) return this._sidebarHost;\n\t\tthis._sidebarHost = dom.createElement<Sidebar>('og-bucket-sidebar');\n\t\tthis._sidebarHost.bucket = this;\n\t\tthis._sidebarHost.componentId = this.sidebar1ComponentId;\n\t\treturn this._sidebarHost;\n\t}\n\n\tupdateContainerVisibility = debounce(() => {\n\t\tlet hasTabs = false;\n\t\tthis.editorContainer.walk((splitContainer, tabContainer) => {\n\t\t\tif (tabContainer.tabs?.items?.length) {\n\t\t\t\thasTabs = true;\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t\tif (hasTabs) dom.showElement(this.editorContainer);\n\t\telse dom.hideElement(this.editorContainer);\n\t}, 100);\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.components = new BucketComponents(this);\n\t\tthis.sidebars = new BucketSidebars(this);\n\t\tthis.alerts = new BucketAlerts(this);\n\t\tthis.dialogs = new BucketDialogs(this);\n\t\tthis.commands = new CommandManager(this);\n\t\tthis.shortcuts = new ShortcutManager(this);\n\n\t\tthis.options = initOptions();\n\t\tthis.logger.info('init');\n\n\t\tthis.addEventListener('state', (e: Event) => {\n\t\t\tif (e.target == this) return;\n\t\t\te.stopPropagation();\n\t\t\tthis.dispatchStateEvent();\n\t\t});\n\t}\n\n\tshowOverlay = () => this.overlay.show(this.body);\n\thideOverlay = () => this.overlay.hide();\n\n\t_onWindowBeforeUnload = (e: BeforeUnloadEvent) => {\n\t\tif (!this.components.hasUnsavedComponents) return;\n\t\te.preventDefault();\n\t\te.returnValue = '';\n\t}\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback();\n\t\tthis.tabIndex = 0;\n\t\tthis.logger.info('connected');\n\t\twindow.addEventListener('beforeunload', this._onWindowBeforeUnload);\n\t}\n\n\tdisconnectedCallback() {\n\t\twindow.removeEventListener('beforeunload', this._onWindowBeforeUnload);\n\t}\n\n\tlayout() {\n\t\tthis.container?.layout();\n\t\tthis.top?.layout();\n\t}\n\n\tsetSourceData(sourceData: BucketSource) {\n\t\tthis.sourceData = sourceData;\n\t\tif (sourceData.options) {\n\t\t\tthis.options = initOptions(sourceData.options, this.options);\n\t\t}\n\t}\n\n\tasync updated() {\n\t\tconst mainContainer = this.compact ? this.editorContainer : this.container;\n\t\tif (mainContainer.parentElement != this.main) {\n\t\t\tdom.empty(this.main);\n\t\t\tthis.main.appendChild(mainContainer);\n\t\t\tmainContainer.requestUpdate();\n\t\t}\n\n\t\tconst sidebarComponentId = (this.sourceData.sidemenu.items ?? [])[this.sourceData.sidemenu.activeIndex]?.id;\n\t\tif (sidebarComponentId) {\n\t\t\tthis.sidebar1ComponentId = sidebarComponentId;\n\t\t}\n\n\t\tawait this.container?.updateComplete;\n\n\t\tthis.layout();\n\t}\n\n\tasync open(item: OpenTabOptions) {\n\t\tif (this.compact) this.hideSidebar();\n\n\t\tdom.showElement(this.editorContainer);\n\n\t\tconst component = item.component;\n\t\tif (component) {\n\t\t\titem.id = this.components.register(item.id, item.component);\n\t\t\tdelete item.component;\n\t\t\tthis.editorContainer.open(item);\n\t\t\treturn component;\n\t\t}\n\n\t\treturn new Promise<HTMLElement>((resolve, reject) => {\n\t\t\tthis.components.enqueueComponentResolution(item.id, resolve, reject);\n\t\t\tthis.editorContainer.open(item);\n\t\t\tthis.dispatchStateEvent();\n\t\t});\n\t}\n\n\tasync openDialog(options: OpenDialogOptions) {\n\t\treturn await this.dialogs.open(options);\n\t}\n\n\topenMenu(options: OpenCommandsOptions): Promise<CommandResult|null> {\n\t\treturn this.commands.open(options);\n\t}\n\n\topenModalSidebar(options: ModalSidebarOptions) {\n\t\treturn this.sidebars.openModalSidebar(options);\n\t}\n\n\tasync toggleSidebar(open?: boolean) {\n\t\topen ??= this.compact ? this.sidebarHost.parentElement != this.main : this.container.items[0].collapsed;\n\t\tif (open) this.showSidebar();\n\t\telse this.hideSidebar();\n\t}\n\n\tasync hideSidebar() {\n\t\tif (this.compact) {\n\t\t\tif (this.sidebarHost.parentElement == this.main) {\n\t\t\t\tdom.empty(this.main);\n\t\t\t\tthis.main.appendChild(this.editorContainer);\n\t\t\t}\n\t\t} else {\n\t\t\tawait this.container.collapse(0, true);\n\t\t}\n\n\t\tthis.layout();\n\t}\n\n\tasync showSidebar() {\n\t\tif (this.compact) {\n\t\t\tif (this.sidebarHost.parentElement != this.main) {\n\t\t\t\tdom.empty(this.main);\n\t\t\t\tthis.main.appendChild(this.sidebarHost);\n\t\t\t}\n\t\t} else {\n\t\t\tawait this.container.collapse(0, false);\n\t\t}\n\n\t\tthis.layout();\n\t}\n\n\tshowAlert(options: BucketAlertOptions) {\n\t\treturn this.alerts.addAlert(options);\n\t}\n\n\tcreateEditorComponent = (id: ComponentId) => {\n\t\treturn dom.createElement<ComponentHost>('og-bucket-component-host', {\n\t\t\tcomponentId: id,\n\t\t\tbucket: this,\n\t\t\tpathPosition: this.options.pathPosition\n\t\t});\n\t}\n\n\t_createSplitContainerComponent: ComponentFactory = (index: ComponentId) => {\n\t\tlet component: HTMLElement;\n\t\tif (index == 0) {\n\t\t\t// primary sidebar\n\t\t\tthis.logger.info('create primary sidebar');\n\t\t\treturn this.sidebarHost;\n\t\t} else if (index == 1) {\n\t\t\t// editor split container\n\t\t\tthis.logger.info('create editor container');\n\t\t\treturn this.editorContainer;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tcomponent = dom.createElement<HTMLElement>('div');\n\t\t\tcomponent.innerHTML = 'empty';\n\t\t}\n\n\t\treturn component;\n\t}\n\n\tgetState(): BucketState {\n\t\tconst item = this.container?.items[0];\n\t\treturn {\n\t\t\tsidebar: {\n\t\t\t\tselectedItem: this.sidebar1ComponentId,\n\t\t\t\twidth: item?.size,\n\t\t\t\tcollapsed: !!item?.collapsed\n\t\t\t},\n\t\t\tlayout: this.editorContainer?.model.getSourceData(),\n\t\t\tdialogs: [...Array.from(this.dialogs.items.entries()).map(\n\t\t\t\t([id, dialog]) => Object.assign({id: id}, dialog.getOptions())\n\t\t\t)],\n\t\t\tcomponents: [...this.components.components].reduce((acc, [id, component]) => {\n\t\t\t\tif ((component as OmegaComponent).getState) {\n\t\t\t\t\tconst componentState = (component as OmegaComponent).getState();\n\t\t\t\t\tif (componentState) acc[id] = componentState;\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t}, {} as Record<ComponentId, ComponentState>)\n\t\t};\n\t}\n\n\tasync setState(state: BucketState) {\n\t\tthis.state = state;\n\t\tconst selectedIndex = this.sourceData.sidemenu.items.findIndex(item => item.id == state.sidebar.selectedItem);\n\t\tif (selectedIndex >= 0) {\n\t\t\tthis.sourceData.sidemenu.activeIndex = selectedIndex;\n\t\t\tthis.sidebar1ComponentId = state.sidebar.selectedItem as string;\n\t\t}\n\t\tthis.sourceData.editorLayout = state.layout;\n\t\tthis._editorContainer = null;\n\t\tthis.requestUpdate();\n\t\tawait this.updateComplete;\n\t\tthis.sidemenu?.requestUpdate();\n\t\tthis.updateSidebarComponent();\n\t\tthis.updateMainComponent();\n\t\tstate.dialogs?.forEach(opt => this.openDialog(opt));\n\n\t\tfor (const k in state.components) {\n\t\t\tthis.components.setState(k, state.components[k]);\n\t\t}\n\t}\n\n\t_onSplitContainerResize = () => {\n\t\tthis.top?.layout();\n\t\tthis.dispatchStateEvent();\n\t}\n\n\t_onTabRemove = (e: TabEvent) => {\n\t\tthis.components.unregister(e.tab.id);\n\t\tthis.dispatchEvent(new BucketEvent('close', {tab: e.tab, componentId: e.tab.id}));\n\t\tthis.dispatchStateEvent();\n\t}\n\n\t_onTabBeforeRemove = (e: TabEvent) => {\n\t\tif (this.components.unsavedComponents.has(e.tab.id)) {\n\t\t\te.preventDefault();\n\t\t\tthis.openMenu({text: 'Discard changes and close tab?', content: 'yes_no'}).then(answer => {\n\t\t\t\tif (answer?.command?.id == 'Y') {\n\t\t\t\t\tthis.components.unsavedComponents.delete(e.tab.id);\n\t\t\t\t\te.tabs.removeTab(e.index, true);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t_onTabSelect = (e: TabEvent) => {\n\t\tif (e.tabs.topLevelComponent == this.editorContainer) {\n\t\t\tthis._activeComponentId = e.tab?.id;\n\t\t\tthis.dispatchEvent(new BucketEvent('activate', {tab: e.tab, componentId: e.tab?.id}));\n\t\t\tthis.dispatchStateEvent();\n\t\t}\n\t}\n\n\t_onSidemenuSelect(e: ListSelectEvent) {\n\t\tconst id = (this.sourceData.sidemenu.items ?? [])[e.index]?.id;\n\t\tif (id == this.sidebar1ComponentId) {\n\t\t\tthis.toggleSidebar();\n\t\t} else {\n\t\t\tthis.toggleSidebar(true);\n\t\t\tthis.sidebar1ComponentId = id;\n\t\t\tthis.updateSidebarComponent();\n\t\t}\n\t\tthis.dispatchStateEvent();\n\t}\n\n\tupdateSidebarComponent() {\n\t\tthis.sidebarHost.componentId = this.sidebar1ComponentId;\n\t}\n\n\tupdateMainComponent() {\n\t\tthis.container?.updateComponent(1);\n\t}\n\n\tasync openSidebarComponent(id: ComponentId) {\n\t\tthis.sidebar1ComponentId = id.toString();\n\t\tthis.showSidebar();\n\t\tthis.updateSidebarComponent();\n\t\tthis.sidemenu.selectItem(id.toString());\n\t\tawait this.sidebarHost.updateComplete;\n\t}\n\n\trender = () => html`\n\t\t<og-bucket-top></og-bucket-top>\n\n\t\t<div class=\"body\">\n\t\t\t<og-overlay></og-overlay>\n\n\t\t\t<og-bucket-sidemenu\n\t\t\t\t@select=${this._onSidemenuSelect}\n\t\t\t\t.settings=${this.sourceData.sidemenu}>\n\t\t\t</og-bucket-sidemenu>\n\n\t\t\t<div class=\"main\"></div>\n\t\t</div>\n\t`;\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"bucket.js","sourceRoot":"","sources":["../../src/ui/bucket.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tdom, Layout, ListSelectEvent, ComponentFactory, SplitContainer, log,\n\tComponentId, Overlay, OmegaComponent, ComponentState, ShortcutManager\n} from '@omegagrid/core';\nimport { TabEvent, TabItem, TabSplitContainer, TabSplitContainerModel } from '@omegagrid/tabs';\nimport { CommandManager, CommandResult, OpenCommandsOptions } from '@omegagrid/commands';\nimport { html, LitElement } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport constants from '../constants';\nimport { BucketAlertOptions, BucketSource, BucketState, ModalSidebarOptions, OpenDialogOptions, OpenTabOptions } from '../types';\nimport { Sidemenu } from './sidemenu';\nimport style from './bucket.style';\nimport { BucketTop } from './top';\nimport { ComponentHost } from './componentHost';\nimport { BucketAlerts } from './bucket.alerts';\nimport { BucketOptions, initOptions } from '../options';\nimport { Sidebar } from './sidebar';\nimport { BucketComponents } from './bucket.components';\nimport { BucketSidebars } from './bucket.sidebars';\nimport { BucketDialogs } from './bucket.dialogs';\nimport { debounce } from 'ts-debounce';\n\nconst DEFAULT_SOURCE: BucketSource = {\n\ttop: {rightItems: []},\n\tsidemenu: {items: [], activeIndex: null, hidden: false},\n\tsidebar: {width: constants.SIDEBAR_WIDTH, collapsed: false},\n\teditorLayout: {items: []}\n};\n\nexport class BucketEvent extends Event {\n\ttab: TabItem;\n\tcomponentId: ComponentId;\n\n\tconstructor(type: string, args?: Partial<BucketEvent>) {\n\t\tsuper(`bucket.${type}`, {bubbles: true, composed: true});\n\t\tObject.assign(this, args);\n\t}\n\n}\n\n@customElement('og-bucket')\nexport class Bucket extends OmegaComponent<BucketState> implements Layout {\n\n\tstatic styles = [style];\n\tstatic uniqueId = 0;\n\tstatic getUniqueId = () => ++Bucket.uniqueId;\n\n\t@query('og-overlay')\n\toverlay: Overlay;\n\n\t@query('og-bucket-top')\n\ttop: BucketTop;\n\n\t@query('og-bucket-sidemenu')\n\tsidemenu: Sidemenu;\n\n\t@query('.body')\n\tbody: HTMLDivElement;\n\n\t@query('.main')\n\tmain: HTMLDivElement;\n\n\t@property({type: Object})\n\tcreateComponent: ComponentFactory;\n\n\t@property({type: Object})\n\tsourceData: BucketSource = DEFAULT_SOURCE;\n\n\t@property({type: Object})\n\toptions: BucketOptions;\n\n\t@property({type: Object})\n\tlogger: log.Logger = new log.Logger('Ωbucket');\n\n\t@property({type: Boolean})\n\tcompact = false;\n\n\tsidebar1ComponentId: string;\n\n\treadonly components: BucketComponents;\n\treadonly sidebars: BucketSidebars;\n\treadonly alerts: BucketAlerts;\n\treadonly dialogs: BucketDialogs;\n\treadonly commands: CommandManager;\n\treadonly shortcuts: ShortcutManager;\n\n\tprivate _activeComponentId: ComponentId;\n\tget activeComponentId() { return this._activeComponentId }\n\n\tprivate _container: SplitContainer;\n\tget container(): SplitContainer {\n\t\tif (this._container) return this._container;\n\t\tthis._container = dom.createElement<SplitContainer>('og-splitcontainer');\n\t\tthis._container.orientation = 'horizontal';\n\t\tthis._container.items = [{\n\t\t\tsize: this.sourceData.sidebar?.width || constants.SIDEBAR_WIDTH,\n\t\t\tcollapsed: this.sourceData.sidebar?.collapsed || false\n\t\t}, {size: null}];\n\t\tthis._container.createComponent = this._createSplitContainerComponent;\n\t\tthis._container.addEventListener('splitContainer.resize', this._onSplitContainerResize);\n\t\tthis._container.addEventListener('tab.beforeRemove', this._onTabBeforeRemove);\n\t\tthis._container.addEventListener('tab.remove', this._onTabRemove);\n\t\tthis._container.addEventListener('tab.select', this._onTabSelect);\n\t\treturn this._container;\n\t}\n\n\tprivate _editorContainer: TabSplitContainer;\n\tget editorContainer(): TabSplitContainer {\n\t\tif (this._editorContainer) return this._editorContainer;\n\t\tthis._editorContainer = dom.createElement<TabSplitContainer>('og-tabsplitcontainer');\n\t\tthis._editorContainer.style.height = '100%';\n\t\tthis._editorContainer.closable = true;\n\t\tthis._editorContainer.singleActive = true;\n\t\tthis._editorContainer.createComponent = this.createEditorComponent;\n\t\tthis._editorContainer.model = new TabSplitContainerModel(this.sourceData.editorLayout);\n\t\tthis._editorContainer.scrollableTabs = true;\n\t\treturn this._editorContainer;\n\t}\n\n\tprivate _singleContainer: HTMLDivElement;\n\tget singleContainer() {\n\t\tif (this._singleContainer) return this._singleContainer;\n\t\tthis._singleContainer = dom.createElement('div');\n\t\tthis._singleContainer.style.height = '100%';\n\t\treturn this._singleContainer;\n\t}\n\n\tprivate _sidebarHost: Sidebar;\n\tget sidebarHost() {\n\t\tif (this._sidebarHost) return this._sidebarHost;\n\t\tthis._sidebarHost = dom.createElement<Sidebar>('og-bucket-sidebar');\n\t\tthis._sidebarHost.bucket = this;\n\t\tthis._sidebarHost.componentId = this.sidebar1ComponentId;\n\t\treturn this._sidebarHost;\n\t}\n\n\tupdateContainerVisibility = debounce(() => {\n\t\tlet hasTabs = false;\n\t\tthis.editorContainer.walk((splitContainer, tabContainer) => {\n\t\t\tif (tabContainer.tabs?.items?.length) {\n\t\t\t\thasTabs = true;\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t\tif (hasTabs) dom.showElement(this.editorContainer);\n\t\telse dom.hideElement(this.editorContainer);\n\t}, 100);\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.components = new BucketComponents(this);\n\t\tthis.sidebars = new BucketSidebars(this);\n\t\tthis.alerts = new BucketAlerts(this);\n\t\tthis.dialogs = new BucketDialogs(this);\n\t\tthis.commands = new CommandManager(this);\n\t\tthis.shortcuts = new ShortcutManager(this);\n\n\t\tthis.options = initOptions();\n\t\tthis.logger.info('init');\n\n\t\tthis.addEventListener('state', (e: Event) => {\n\t\t\tif (e.target == this) return;\n\t\t\te.stopPropagation();\n\t\t\tthis.dispatchStateEvent();\n\t\t});\n\t}\n\n\tshowOverlay = () => this.overlay.show(this.body);\n\thideOverlay = () => this.overlay.hide();\n\n\t_onWindowBeforeUnload = (e: BeforeUnloadEvent) => {\n\t\tif (!this.components.hasUnsavedComponents) return;\n\t\te.preventDefault();\n\t\te.returnValue = '';\n\t}\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback();\n\t\tthis.tabIndex = 0;\n\t\tthis.logger.info('connected');\n\t\twindow.addEventListener('beforeunload', this._onWindowBeforeUnload);\n\t}\n\n\tdisconnectedCallback() {\n\t\twindow.removeEventListener('beforeunload', this._onWindowBeforeUnload);\n\t}\n\n\tlayout() {\n\t\tthis.container?.layout();\n\t\tthis.top?.layout();\n\t}\n\n\tsetSourceData(sourceData: BucketSource) {\n\t\tthis.sourceData = sourceData;\n\t\tif (sourceData.options) {\n\t\t\tthis.options = initOptions(sourceData.options, this.options);\n\t\t}\n\t}\n\n\tasync updated() {\n\t\tconst mainContainer = this.compact\n\t\t\t? (this.options?.componentMode == 'single' ? this.singleContainer : this.editorContainer)\n\t\t\t: this.container;\n\n\t\tif (mainContainer.parentElement != this.main) {\n\t\t\tdom.empty(this.main);\n\t\t\tthis.main.appendChild(mainContainer);\n\t\t\tif (mainContainer instanceof LitElement) (mainContainer as LitElement).requestUpdate();\n\t\t}\n\n\t\tconst sidebarComponentId = (this.sourceData.sidemenu.items ?? [])[this.sourceData.sidemenu.activeIndex]?.id;\n\t\tif (sidebarComponentId) {\n\t\t\tthis.sidebar1ComponentId = sidebarComponentId;\n\t\t}\n\n\t\tawait this.container?.updateComplete;\n\n\t\tthis.layout();\n\t}\n\n\tprivate _openComponent(item: OpenTabOptions) {\n\t\tconst singleMode = this.options?.componentMode == 'single';\n\t\tif (singleMode) {\n\t\t\tdom.empty(this.singleContainer);\n\t\t\tthis.singleContainer.appendChild(this.createEditorComponent(item.id));\n\t\t} else {\n\t\t\tthis.editorContainer.open(item);\n\t\t}\n\t}\n\n\tasync open(item: OpenTabOptions) {\n\t\tif (this.compact) this.hideSidebar();\n\n\t\tif (this.options?.componentMode == 'single') {\n\t\t\tdom.showElement(this.singleContainer);\n\t\t} else {\n\t\t\tdom.showElement(this.editorContainer);\n\t\t}\n\n\t\tconst component = item.component;\n\t\tif (component) {\n\t\t\titem.id = this.components.register(item.id, item.component);\n\t\t\tdelete item.component;\n\t\t\tthis._openComponent(item);\n\t\t\treturn component;\n\t\t}\n\n\t\treturn new Promise<HTMLElement>((resolve, reject) => {\n\t\t\tthis.components.enqueueComponentResolution(item.id, resolve, reject);\n\t\t\tthis._openComponent(item);\n\t\t\tthis.dispatchStateEvent();\n\t\t});\n\t}\n\n\tasync openDialog(options: OpenDialogOptions) {\n\t\treturn await this.dialogs.open(options);\n\t}\n\n\topenMenu(options: OpenCommandsOptions): Promise<CommandResult|null> {\n\t\treturn this.commands.open(options);\n\t}\n\n\topenModalSidebar(options: ModalSidebarOptions) {\n\t\treturn this.sidebars.openModalSidebar(options);\n\t}\n\n\tasync toggleSidebar(open?: boolean) {\n\t\topen ??= this.compact ? this.sidebarHost.parentElement != this.main : this.container.items[0].collapsed;\n\t\tif (open) this.showSidebar();\n\t\telse this.hideSidebar();\n\t}\n\n\tasync hideSidebar() {\n\t\tif (this.compact) {\n\t\t\tif (this.sidebarHost.parentElement == this.main) {\n\t\t\t\tdom.empty(this.main);\n\t\t\t\tthis.main.appendChild(this.editorContainer);\n\t\t\t}\n\t\t} else {\n\t\t\tawait this.container.collapse(0, true);\n\t\t}\n\n\t\tthis.layout();\n\t}\n\n\tasync showSidebar() {\n\t\tif (this.compact) {\n\t\t\tif (this.sidebarHost.parentElement != this.main) {\n\t\t\t\tdom.empty(this.main);\n\t\t\t\tthis.main.appendChild(this.sidebarHost);\n\t\t\t}\n\t\t} else {\n\t\t\tawait this.container.collapse(0, false);\n\t\t}\n\n\t\tthis.layout();\n\t}\n\n\tshowAlert(options: BucketAlertOptions) {\n\t\treturn this.alerts.addAlert(options);\n\t}\n\n\tcreateEditorComponent = (id: ComponentId) => {\n\t\treturn dom.createElement<ComponentHost>('og-bucket-component-host', {\n\t\t\tcomponentId: id,\n\t\t\tbucket: this,\n\t\t\tpathPosition: this.options.pathPosition\n\t\t});\n\t}\n\n\t_createSplitContainerComponent: ComponentFactory = (index: ComponentId) => {\n\t\tlet component: HTMLElement;\n\t\tif (index == 0) {\n\t\t\t// primary sidebar\n\t\t\tthis.logger.info('create primary sidebar');\n\t\t\treturn this.sidebarHost;\n\t\t} else if (index == 1) {\n\t\t\t// editor split container\n\t\t\tthis.logger.info('create editor container');\n\t\t\treturn this.options?.componentMode == 'single' ? this.singleContainer : this.editorContainer;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tcomponent = dom.createElement<HTMLElement>('div');\n\t\t\tcomponent.innerHTML = 'empty';\n\t\t}\n\n\t\treturn component;\n\t}\n\n\tgetState(): BucketState {\n\t\tconst item = this.container?.items[0];\n\t\treturn {\n\t\t\tsidebar: {\n\t\t\t\tselectedItem: this.sidebar1ComponentId,\n\t\t\t\twidth: item?.size,\n\t\t\t\tcollapsed: !!item?.collapsed\n\t\t\t},\n\t\t\tlayout: this.editorContainer?.model.getSourceData(),\n\t\t\tdialogs: [...Array.from(this.dialogs.items.entries()).map(\n\t\t\t\t([id, dialog]) => Object.assign({id: id}, dialog.getOptions())\n\t\t\t)],\n\t\t\tcomponents: [...this.components.components].reduce((acc, [id, component]) => {\n\t\t\t\tif ((component as OmegaComponent).getState) {\n\t\t\t\t\tconst componentState = (component as OmegaComponent).getState();\n\t\t\t\t\tif (componentState) acc[id] = componentState;\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t}, {} as Record<ComponentId, ComponentState>)\n\t\t};\n\t}\n\n\tasync setState(state: BucketState) {\n\t\tthis.state = state;\n\t\tconst selectedIndex = this.sourceData.sidemenu.items.findIndex(item => item.id == state.sidebar.selectedItem);\n\t\tif (selectedIndex >= 0) {\n\t\t\tthis.sourceData.sidemenu.activeIndex = selectedIndex;\n\t\t\tthis.sidebar1ComponentId = state.sidebar.selectedItem as string;\n\t\t}\n\t\tthis.sourceData.editorLayout = state.layout;\n\t\tthis._editorContainer = null;\n\t\tthis.requestUpdate();\n\t\tawait this.updateComplete;\n\t\tthis.sidemenu?.requestUpdate();\n\t\tthis.updateSidebarComponent();\n\t\tthis.updateMainComponent();\n\t\tstate.dialogs?.forEach(opt => this.openDialog(opt));\n\n\t\tfor (const k in state.components) {\n\t\t\tthis.components.setState(k, state.components[k]);\n\t\t}\n\t}\n\n\t_onSplitContainerResize = () => {\n\t\tthis.top?.layout();\n\t\tthis.dispatchStateEvent();\n\t}\n\n\t_onTabRemove = (e: TabEvent) => {\n\t\tthis.components.unregister(e.tab.id);\n\t\tthis.dispatchEvent(new BucketEvent('close', {tab: e.tab, componentId: e.tab.id}));\n\t\tthis.dispatchStateEvent();\n\t}\n\n\t_onTabBeforeRemove = (e: TabEvent) => {\n\t\tif (this.components.unsavedComponents.has(e.tab.id)) {\n\t\t\te.preventDefault();\n\t\t\tthis.openMenu({text: 'Discard changes and close tab?', content: 'yes_no'}).then(answer => {\n\t\t\t\tif (answer?.command?.id == 'Y') {\n\t\t\t\t\tthis.components.unsavedComponents.delete(e.tab.id);\n\t\t\t\t\te.tabs.removeTab(e.index, true);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t_onTabSelect = (e: TabEvent) => {\n\t\tif (e.tabs.topLevelComponent == this.editorContainer) {\n\t\t\tthis._activeComponentId = e.tab?.id;\n\t\t\tthis.dispatchEvent(new BucketEvent('activate', {tab: e.tab, componentId: e.tab?.id}));\n\t\t\tthis.dispatchStateEvent();\n\t\t}\n\t}\n\n\t_onSidemenuSelect(e: ListSelectEvent) {\n\t\tconst id = (this.sourceData.sidemenu.items ?? [])[e.index]?.id;\n\t\tif (id == this.sidebar1ComponentId) {\n\t\t\tthis.toggleSidebar();\n\t\t} else {\n\t\t\tthis.toggleSidebar(true);\n\t\t\tthis.sidebar1ComponentId = id;\n\t\t\tthis.updateSidebarComponent();\n\t\t}\n\t\tthis.dispatchStateEvent();\n\t}\n\n\tupdateSidebarComponent() {\n\t\tthis.sidebarHost.componentId = this.sidebar1ComponentId;\n\t}\n\n\tupdateMainComponent() {\n\t\tthis.container?.updateComponent(1);\n\t}\n\n\tasync openSidebarComponent(id: ComponentId) {\n\t\tthis.sidebar1ComponentId = id.toString();\n\t\tthis.showSidebar();\n\t\tthis.updateSidebarComponent();\n\t\tthis.sidemenu.selectItem(id.toString());\n\t\tawait this.sidebarHost.updateComplete;\n\t}\n\n\trender = () => html`\n\t\t<og-bucket-top></og-bucket-top>\n\n\t\t<div class=\"body\">\n\t\t\t<og-overlay></og-overlay>\n\n\t\t\t${this.sourceData.sidemenu.hidden ? html`` : html`\n\t\t\t\t<og-bucket-sidemenu\n\t\t\t\t\t@select=${this._onSidemenuSelect}\n\t\t\t\t\t.settings=${this.sourceData.sidemenu}>\n\t\t\t\t</og-bucket-sidemenu>\n\t\t\t`}\n\n\t\t\t<div class=\"main\"></div>\n\t\t</div>\n\t`;\n\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omegagrid/bucket",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.8",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"description": "Application layout component",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -28,11 +28,11 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@fortawesome/fontawesome-svg-core": "^7.0.1",
|
|
31
|
-
"@omegagrid/commands": "^0.10.
|
|
32
|
-
"@omegagrid/core": "^0.10.
|
|
33
|
-
"@omegagrid/dialog": "^0.10.
|
|
34
|
-
"@omegagrid/localize": "^0.10.
|
|
35
|
-
"@omegagrid/tabs": "^0.10.
|
|
31
|
+
"@omegagrid/commands": "^0.10.8",
|
|
32
|
+
"@omegagrid/core": "^0.10.8",
|
|
33
|
+
"@omegagrid/dialog": "^0.10.8",
|
|
34
|
+
"@omegagrid/localize": "^0.10.8",
|
|
35
|
+
"@omegagrid/tabs": "^0.10.8",
|
|
36
36
|
"lit": "^3.1.1",
|
|
37
37
|
"ts-debounce": "^4.0.0"
|
|
38
38
|
},
|