@omegagrid/bucket 0.10.101 → 0.10.102

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 +1 @@
1
- {"version":3,"file":"bucket.sidebars.d.ts","sourceRoot":"","sources":["../../src/ui/bucket.sidebars.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAO,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,qBAAa,cAAe,SAAQ,cAAc,CAAC,MAAM,CAAC;IAEzD,aAAa,EAAE,mBAAmB,EAAE,CAAM;IAC1C,QAAQ,CAAC,sBAAsB,iCAAwC;IAEvE,IAAI,MAAM,WAA4B;IACtC,IAAI,UAAU,mDAAoC;IAElD,2BAA2B,GAAI,SAAS,mBAAmB,kBAQ1D;IAED,2BAA2B;IA2BrB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB;IAgB7C,iBAAiB,CAAC,GAAG,UAAQ;CAYnC"}
1
+ {"version":3,"file":"bucket.sidebars.d.ts","sourceRoot":"","sources":["../../src/ui/bucket.sidebars.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAO,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,qBAAa,cAAe,SAAQ,cAAc,CAAC,MAAM,CAAC;IAEzD,aAAa,EAAE,mBAAmB,EAAE,CAAM;IAC1C,QAAQ,CAAC,sBAAsB,iCAAwC;IAEvE,IAAI,MAAM,WAA4B;IACtC,IAAI,UAAU,mDAAoC;IAElD,2BAA2B,GAAI,SAAS,mBAAmB,kBAQ1D;IAED,2BAA2B;IAmCrB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB;IAgB7C,iBAAiB,CAAC,GAAG,UAAQ;CAYnC"}
@@ -22,9 +22,8 @@ export class BucketSidebars extends ComponentSlice {
22
22
  this.bucket.showOverlay();
23
23
  else
24
24
  this.bucket.hideOverlay();
25
- const left = this.bucket.compact
26
- ? this.bucket.sidemenu.offsetWidth
27
- : (this.bucket.container.containers[0].offsetWidth + this.bucket.sidemenu.offsetWidth);
25
+ // the compact bucket does not render the split container, the panel is positioned from the edge there
26
+ const left = this.bucket.compact ? 0 : this.bucket.container.containers[0].offsetWidth + this.bucket.sidemenu.offsetWidth;
28
27
  const right = 0;
29
28
  let lCount = 0, rCount = 0;
30
29
  this.modalSidebars.forEach(async (options) => {
@@ -34,6 +33,16 @@ export class BucketSidebars extends ComponentSlice {
34
33
  if (!component)
35
34
  return;
36
35
  dom.setZIndex(component, 500 + index);
36
+ // compact (mobile) bucket: the panel spans the whole bucket regardless of the requested width,
37
+ // stacked panels only step in by the offset so the stack stays visible
38
+ if (this.bucket.compact) {
39
+ if (rPos)
40
+ rCount++;
41
+ else
42
+ lCount++;
43
+ dom.setPosition(component, { t: 0, l: rPos ? 0 : index * 20, r: rPos ? index * 20 : 0, b: 0 });
44
+ return;
45
+ }
37
46
  dom.setSize(component, { w: options.width || this.bucket.options.modalSidebarWidth });
38
47
  if (rPos) {
39
48
  rCount++;
@@ -1 +1 @@
1
- {"version":3,"file":"bucket.sidebars.js","sourceRoot":"","sources":["../../src/ui/bucket.sidebars.ts"],"names":[],"mappings":"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","sourcesContent":["import { ComponentId, ComponentSlice, dom } from \"@omegagrid/core\";\nimport { Bucket } from \"./bucket\";\nimport { ModalSidebarOptions } from \"../types\";\nimport { ModalSidebar } from \"./modalSidebar\";\n\nexport class BucketSidebars extends ComponentSlice<Bucket> {\n\n\tmodalSidebars: ModalSidebarOptions[] = [];\n\treadonly modalSidebarComponents = new Map<ComponentId, ModalSidebar>();\n\n\tget bucket() { return this.component }\n\tget components() { return this.bucket.components }\n\n\tcreateModalSidebarComponent = (options: ModalSidebarOptions) => {\n\t\tconst component = dom.createElement<ModalSidebar>('og-bucket-modal-sidebar');\n\t\tcomponent.className = options.position ?? 'left';\n\t\tcomponent.componentId = options.id;\n\t\tcomponent.caption = options.caption;\n\t\tcomponent.closable = options.closable == null || options.closable;\n\t\tcomponent.bucket = this.bucket;\n\t\treturn component;\n\t}\n\n\tupdateModalSidebarPositions() {\n\t\tif (this.modalSidebars.length > 0) this.bucket.showOverlay();\n\t\telse this.bucket.hideOverlay();\n\t\tconst left = this.bucket.compact\n\t\t\t? this.bucket.sidemenu.offsetWidth\n\t\t\t: (this.bucket.container.containers[0].offsetWidth + this.bucket.sidemenu.offsetWidth);\n\t\tconst right = 0;\n\t\tlet lCount = 0, rCount = 0;\n\t\tthis.modalSidebars.forEach(async (options) => {\n\t\t\tconst component = this.modalSidebarComponents.get(options.id);\n\t\t\tconst rPos = options.position == 'right';\n\t\t\tconst index = rPos ? rCount : lCount;\n\t\t\tif (!component) return;\n\n\t\t\tdom.setZIndex(component, 500 + index);\n\t\t\tdom.setSize(component, {w: options.width || this.bucket.options.modalSidebarWidth});\n\n\t\t\tif (rPos) {\n\t\t\t\trCount++;\n\t\t\t\tdom.setPosition(component, {t: 0, r: right + index * 20, b: 0});\n\t\t\t} else {\n\t\t\t\tdom.setPosition(component, {t: 0, l: left + index * 20, b: 0});\n\t\t\t\tlCount++;\n\t\t\t}\n\t\t});\n\t}\n\n\tasync openModalSidebar(options: ModalSidebarOptions) {\n\t\tthis.bucket.showOverlay();\n\t\tthis.modalSidebars.push(options);\n\t\tif (options.component) {\n\t\t\toptions.id = options.id || `temp-${Bucket.getUniqueId()}`;\n\t\t\tthis.components.register(options.id, options.component);\n\t\t}\n\n\t\tconst promise = this.components.waitFor(options.id);\n\t\tconst component = this.createModalSidebarComponent(options);\n\t\tthis.modalSidebarComponents.set(options.id, component);\n\t\tthis.bucket.body.appendChild(component);\n\t\tthis.updateModalSidebarPositions();\n\t\treturn promise;\n\t}\n\n\tasync closeModalSidebar(all = false) {\n\t\tconst targetCount = all ? 0 : this.modalSidebars.length - 1;\n\t\twhile (this.modalSidebars.length > targetCount) {\n\t\t\tconst options = this.modalSidebars.pop();\n\t\t\tif (!options) continue;\n\t\t\tthis.modalSidebarComponents.get(options.id).remove();\n\t\t\tthis.modalSidebarComponents.delete(options.id);\n\t\t\tthis.components.unregister(options.id);\n\t\t}\n\t\tthis.updateModalSidebarPositions();\n\t}\n\n}\n"]}
1
+ {"version":3,"file":"bucket.sidebars.js","sourceRoot":"","sources":["../../src/ui/bucket.sidebars.ts"],"names":[],"mappings":"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","sourcesContent":["import { ComponentId, ComponentSlice, dom } from \"@omegagrid/core\";\nimport { Bucket } from \"./bucket\";\nimport { ModalSidebarOptions } from \"../types\";\nimport { ModalSidebar } from \"./modalSidebar\";\n\nexport class BucketSidebars extends ComponentSlice<Bucket> {\n\n\tmodalSidebars: ModalSidebarOptions[] = [];\n\treadonly modalSidebarComponents = new Map<ComponentId, ModalSidebar>();\n\n\tget bucket() { return this.component }\n\tget components() { return this.bucket.components }\n\n\tcreateModalSidebarComponent = (options: ModalSidebarOptions) => {\n\t\tconst component = dom.createElement<ModalSidebar>('og-bucket-modal-sidebar');\n\t\tcomponent.className = options.position ?? 'left';\n\t\tcomponent.componentId = options.id;\n\t\tcomponent.caption = options.caption;\n\t\tcomponent.closable = options.closable == null || options.closable;\n\t\tcomponent.bucket = this.bucket;\n\t\treturn component;\n\t}\n\n\tupdateModalSidebarPositions() {\n\t\tif (this.modalSidebars.length > 0) this.bucket.showOverlay();\n\t\telse this.bucket.hideOverlay();\n\t\t// the compact bucket does not render the split container, the panel is positioned from the edge there\n\t\tconst left = this.bucket.compact ? 0 : this.bucket.container.containers[0].offsetWidth + this.bucket.sidemenu.offsetWidth;\n\t\tconst right = 0;\n\t\tlet lCount = 0, rCount = 0;\n\t\tthis.modalSidebars.forEach(async (options) => {\n\t\t\tconst component = this.modalSidebarComponents.get(options.id);\n\t\t\tconst rPos = options.position == 'right';\n\t\t\tconst index = rPos ? rCount : lCount;\n\t\t\tif (!component) return;\n\n\t\t\tdom.setZIndex(component, 500 + index);\n\n\t\t\t// compact (mobile) bucket: the panel spans the whole bucket regardless of the requested width,\n\t\t\t// stacked panels only step in by the offset so the stack stays visible\n\t\t\tif (this.bucket.compact) {\n\t\t\t\tif (rPos) rCount++; else lCount++;\n\t\t\t\tdom.setPosition(component, {t: 0, l: rPos ? 0 : index * 20, r: rPos ? index * 20 : 0, b: 0});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tdom.setSize(component, {w: options.width || this.bucket.options.modalSidebarWidth});\n\n\t\t\tif (rPos) {\n\t\t\t\trCount++;\n\t\t\t\tdom.setPosition(component, {t: 0, r: right + index * 20, b: 0});\n\t\t\t} else {\n\t\t\t\tdom.setPosition(component, {t: 0, l: left + index * 20, b: 0});\n\t\t\t\tlCount++;\n\t\t\t}\n\t\t});\n\t}\n\n\tasync openModalSidebar(options: ModalSidebarOptions) {\n\t\tthis.bucket.showOverlay();\n\t\tthis.modalSidebars.push(options);\n\t\tif (options.component) {\n\t\t\toptions.id = options.id || `temp-${Bucket.getUniqueId()}`;\n\t\t\tthis.components.register(options.id, options.component);\n\t\t}\n\n\t\tconst promise = this.components.waitFor(options.id);\n\t\tconst component = this.createModalSidebarComponent(options);\n\t\tthis.modalSidebarComponents.set(options.id, component);\n\t\tthis.bucket.body.appendChild(component);\n\t\tthis.updateModalSidebarPositions();\n\t\treturn promise;\n\t}\n\n\tasync closeModalSidebar(all = false) {\n\t\tconst targetCount = all ? 0 : this.modalSidebars.length - 1;\n\t\twhile (this.modalSidebars.length > targetCount) {\n\t\t\tconst options = this.modalSidebars.pop();\n\t\t\tif (!options) continue;\n\t\t\tthis.modalSidebarComponents.get(options.id).remove();\n\t\t\tthis.modalSidebarComponents.delete(options.id);\n\t\t\tthis.components.unregister(options.id);\n\t\t}\n\t\tthis.updateModalSidebarPositions();\n\t}\n\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omegagrid/bucket",
3
- "version": "0.10.101",
3
+ "version": "0.10.102",
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.101",
32
- "@omegagrid/core": "^0.10.101",
33
- "@omegagrid/dialog": "^0.10.101",
34
- "@omegagrid/localize": "^0.10.101",
35
- "@omegagrid/tabs": "^0.10.101",
31
+ "@omegagrid/commands": "^0.10.102",
32
+ "@omegagrid/core": "^0.10.102",
33
+ "@omegagrid/dialog": "^0.10.102",
34
+ "@omegagrid/localize": "^0.10.102",
35
+ "@omegagrid/tabs": "^0.10.102",
36
36
  "lit": "^3.1.1",
37
37
  "ts-debounce": "^4.0.0"
38
38
  },