@zeedhi/teknisa-components-vuetify 1.57.0 → 1.58.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +7 -7
  3. package/dist/tek-components-vuetify.esm.js +197 -1639
  4. package/dist/tek-components-vuetify.umd.js +206 -1648
  5. package/dist/tek-style.css +5812 -0
  6. package/jest.config.js +31 -31
  7. package/package.json +2 -2
  8. package/rollup.scss.config.js +13 -13
  9. package/tsconfig.eslint.json +8 -8
  10. package/types/components/crud/TekCrudButton.d.ts +1 -1
  11. package/types/components/tek-ag-grid/RenderedIcons.d.ts +6 -0
  12. package/types/components/tek-ag-grid/TekAgGrid.d.ts +30 -0
  13. package/types/components/tek-ag-grid/tek-ag-grid-components/index.d.ts +6 -0
  14. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-cell-editor/TekAgGridCellEditor.d.ts +15 -0
  15. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-cell-editor/interfaces.d.ts +14 -0
  16. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-cell-renderer/TekAgGridCellRenderer.d.ts +11 -0
  17. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-cell-renderer/interfaces.d.ts +13 -0
  18. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-date/TekAgGridDate.d.ts +21 -0
  19. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-date/interfaces.d.ts +14 -0
  20. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-select-editor/TekAgGridSelectEditor.d.ts +13 -0
  21. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-select-editor/interfaces.d.ts +10 -0
  22. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-select-renderer/TekAgGridSelectRenderer.d.ts +9 -0
  23. package/types/components/tek-ag-grid/tek-ag-grid-components/tek-ag-grid-select-renderer/interfaces.d.ts +8 -0
  24. package/types/components/tek-grid/RenderedIcons.d.ts +6 -0
  25. package/types/components/tek-grid/TekGrid.d.ts +1 -1
  26. package/types/components/tek-grid/tek-grid-components/index.d.ts +6 -0
  27. package/types/components/tek-grid/tek-grid-components/tek-grid-cell-editor/TekGridCellEditor.d.ts +15 -0
  28. package/types/components/tek-grid/tek-grid-components/tek-grid-cell-editor/interfaces.d.ts +14 -0
  29. package/types/components/tek-grid/tek-grid-components/tek-grid-cell-renderer/TekGridCellRenderer.d.ts +11 -0
  30. package/types/components/tek-grid/tek-grid-components/tek-grid-cell-renderer/interfaces.d.ts +13 -0
  31. package/types/components/tek-grid/tek-grid-components/tek-grid-date/TekGridDate.d.ts +21 -0
  32. package/types/components/tek-grid/tek-grid-components/tek-grid-date/interfaces.d.ts +14 -0
  33. package/types/components/tek-grid/tek-grid-components/tek-grid-select-editor/TekGridSelectEditor.d.ts +13 -0
  34. package/types/components/tek-grid/tek-grid-components/tek-grid-select-editor/interfaces.d.ts +10 -0
  35. package/types/components/tek-grid/tek-grid-components/tek-grid-select-renderer/TekGridSelectRenderer.d.ts +9 -0
  36. package/types/components/tek-grid/tek-grid-components/tek-grid-select-renderer/interfaces.d.ts +8 -0
  37. package/types/components/tek-iterable-carousel/TekIterableCarousel.d.ts +1 -1
  38. package/types/components/tek-login/TekLogin.d.ts +15 -0
  39. package/types/components/tek-tree-grid/TekTreeGrid.d.ts +1 -1
  40. package/types/components/tek-user-info/TekUserInfoList.d.ts +1 -1
@@ -2,12 +2,12 @@
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@zeedhi/common'), require('@zeedhi/zd-user-info-vue'), require('@zeedhi/core'), require('vue-property-decorator'), require('@zeedhi/teknisa-components-common'), require('@zeedhi/vuetify'), require('lodash.debounce'), require('sortablejs'), require('lodash.clonedeep')) :
3
3
  typeof define === 'function' && define.amd ? define(['exports', '@zeedhi/common', '@zeedhi/zd-user-info-vue', '@zeedhi/core', 'vue-property-decorator', '@zeedhi/teknisa-components-common', '@zeedhi/vuetify', 'lodash.debounce', 'sortablejs', 'lodash.clonedeep'], factory) :
4
4
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@zeedhi/teknisa-components-vuetify"] = {}, global.common, global["@zeedhi/zd-user-info-vue"], global.core, global["vue-property-decorator"], global["@zeedhi/teknisa-components-common"], global.vuetify, global.lodash.debounce, global.sortablejs, global.lodash.clonedeep));
5
- })(this, (function (exports, common, zdUserInfoVue, core, vuePropertyDecorator, teknisaComponentsCommon, vuetify, debounce, sortable, cloneDeep) { 'use strict';
5
+ })(this, (function (exports, common, zdUserInfoVue, core, vuePropertyDecorator, teknisaComponentsCommon, vuetify, debounce, Sortable, cloneDeep) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
9
9
  var debounce__default = /*#__PURE__*/_interopDefaultLegacy(debounce);
10
- var sortable__default = /*#__PURE__*/_interopDefaultLegacy(sortable);
10
+ var Sortable__default = /*#__PURE__*/_interopDefaultLegacy(Sortable);
11
11
  var cloneDeep__default = /*#__PURE__*/_interopDefaultLegacy(cloneDeep);
12
12
 
13
13
  /*! *****************************************************************************
@@ -35,7 +35,7 @@
35
35
  /**
36
36
  * Teknisa component
37
37
  */
38
- let TekBreadcrumbHeader$2 = class TekBreadcrumbHeader extends vuetify.ZdComponent {
38
+ let TekBreadcrumbHeader = class TekBreadcrumbHeader extends vuetify.ZdComponent {
39
39
  constructor() {
40
40
  super(...arguments);
41
41
  this.instanceType = teknisaComponentsCommon.BreadcrumbHeader;
@@ -43,17 +43,17 @@
43
43
  };
44
44
  __decorate([
45
45
  vuetify.PropWatch({ type: String, default: '' })
46
- ], TekBreadcrumbHeader$2.prototype, "title", void 0);
46
+ ], TekBreadcrumbHeader.prototype, "title", void 0);
47
47
  __decorate([
48
48
  vuePropertyDecorator.Prop({ type: Object, default: {} })
49
- ], TekBreadcrumbHeader$2.prototype, "breadcrumb", void 0);
49
+ ], TekBreadcrumbHeader.prototype, "breadcrumb", void 0);
50
50
  __decorate([
51
51
  vuePropertyDecorator.Prop({ type: Array, default: () => [] })
52
- ], TekBreadcrumbHeader$2.prototype, "rightSlot", void 0);
53
- TekBreadcrumbHeader$2 = __decorate([
52
+ ], TekBreadcrumbHeader.prototype, "rightSlot", void 0);
53
+ TekBreadcrumbHeader = __decorate([
54
54
  vuePropertyDecorator.Component
55
- ], TekBreadcrumbHeader$2);
56
- var script$i = TekBreadcrumbHeader$2;
55
+ ], TekBreadcrumbHeader);
56
+ var script$i = TekBreadcrumbHeader;
57
57
 
58
58
  function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {
59
59
  if (typeof shadowMode !== 'boolean') {
@@ -264,7 +264,7 @@
264
264
  /* style */
265
265
  const __vue_inject_styles__$i = function (inject) {
266
266
  if (!inject) return
267
- inject("data-v-3655bcb8_0", { source: ".tek-breadcrumb-header .tek-breadcrumb-header-title-col {\n display: flex;\n padding-top: 5px;\n padding-left: 0;\n}\n.tek-breadcrumb-header .tek-breadcrumb-header-title-col .tek-breadcrumb-header-slot-right {\n margin-left: auto;\n}\n.tek-breadcrumb-header .zd-breadcrumbs {\n padding: 0;\n font-size: var(--zd-font-body2-size);\n}\n.tek-breadcrumb-header .zd-breadcrumbs .v-breadcrumbs__item--disabled {\n color: #667080;\n}\n.tek-breadcrumb-header .zd-text {\n color: #667080;\n}\n.tek-breadcrumb-header .zd-text.tek-breadcrumb-header-title {\n font-size: 32px;\n font-weight: bold;\n line-height: 35px;\n margin-bottom: 10px;\n}\n.tek-breadcrumb-header .zd-text > p {\n margin: 0;\n}", map: undefined, media: undefined });
267
+ inject("data-v-4982d92e_0", { source: ".tek-breadcrumb-header .tek-breadcrumb-header-title-col {\n display: flex;\n padding-top: 5px;\n padding-left: 0;\n}\n.tek-breadcrumb-header .tek-breadcrumb-header-title-col .tek-breadcrumb-header-slot-right {\n margin-left: auto;\n}\n.tek-breadcrumb-header .zd-breadcrumbs {\n padding: 0;\n font-size: var(--zd-font-body2-size);\n}\n.tek-breadcrumb-header .zd-breadcrumbs .v-breadcrumbs__item--disabled {\n color: #667080;\n}\n.tek-breadcrumb-header .zd-text {\n color: #667080;\n}\n.tek-breadcrumb-header .zd-text.tek-breadcrumb-header-title {\n font-size: 32px;\n font-weight: bold;\n line-height: 35px;\n margin-bottom: 10px;\n}\n.tek-breadcrumb-header .zd-text > p {\n margin: 0;\n}", map: undefined, media: undefined });
268
268
 
269
269
  };
270
270
  /* scoped */
@@ -295,7 +295,7 @@
295
295
  /**
296
296
  * TekCardTitle component join an icon, title, rightSlot and a divider
297
297
  */
298
- let TekCardTitle$2 = class TekCardTitle extends vuetify.ZdComponentRender {
298
+ let TekCardTitle = class TekCardTitle extends vuetify.ZdComponentRender {
299
299
  constructor() {
300
300
  super(...arguments);
301
301
  this.instanceType = teknisaComponentsCommon.CardTitle;
@@ -303,26 +303,26 @@
303
303
  };
304
304
  __decorate([
305
305
  vuetify.PropWatch({ type: String, default: '' })
306
- ], TekCardTitle$2.prototype, "title", void 0);
306
+ ], TekCardTitle.prototype, "title", void 0);
307
307
  __decorate([
308
308
  vuetify.PropWatch({ type: String, default: '' })
309
- ], TekCardTitle$2.prototype, "subtitle", void 0);
309
+ ], TekCardTitle.prototype, "subtitle", void 0);
310
310
  __decorate([
311
311
  vuetify.PropWatch({ type: String, default: '' })
312
- ], TekCardTitle$2.prototype, "iconName", void 0);
312
+ ], TekCardTitle.prototype, "iconName", void 0);
313
313
  __decorate([
314
314
  vuePropertyDecorator.Prop({ type: Array, default: () => [] })
315
- ], TekCardTitle$2.prototype, "rightSlot", void 0);
315
+ ], TekCardTitle.prototype, "rightSlot", void 0);
316
316
  __decorate([
317
317
  vuetify.PropWatch({ type: [Boolean, String], default: true })
318
- ], TekCardTitle$2.prototype, "showDivider", void 0);
318
+ ], TekCardTitle.prototype, "showDivider", void 0);
319
319
  __decorate([
320
320
  vuetify.PropWatch({ type: String, default: '' })
321
- ], TekCardTitle$2.prototype, "to", void 0);
322
- TekCardTitle$2 = __decorate([
321
+ ], TekCardTitle.prototype, "to", void 0);
322
+ TekCardTitle = __decorate([
323
323
  vuePropertyDecorator.Component
324
- ], TekCardTitle$2);
325
- var script$h = TekCardTitle$2;
324
+ ], TekCardTitle);
325
+ var script$h = TekCardTitle;
326
326
 
327
327
  /* script */
328
328
  const __vue_script__$h = script$h;
@@ -434,7 +434,7 @@
434
434
  /* style */
435
435
  const __vue_inject_styles__$h = function (inject) {
436
436
  if (!inject) return
437
- inject("data-v-0ec658b4_0", { source: ".tek-card-title-row {\n display: flex;\n align-items: center;\n}\n.tek-card-title-row .tek-card-title-text {\n color: var(--v-primary-base);\n font-weight: bold;\n font-size: 20px;\n}\n.tek-card-title-row .tek-card-subtitle-text {\n padding-left: 10px;\n color: var(--zd-font-color);\n font-size: 13px;\n}\n.tek-card-title-row .tek-card-title-text,\n.tek-card-title-row .tek-card-subtitle-text {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n vertical-align: baseline;\n}\n.tek-card-title-row .v-icon {\n color: var(--v-primary-base);\n padding-right: calc(var(--zd-default-padding) / 2);\n}\n.tek-card-title .v-divider {\n margin-bottom: 16px;\n}\n.tek-card-title .tek-card-title-router {\n text-decoration: none;\n}\n.tek-card-title .tek-card-title-no-router {\n text-decoration: none;\n cursor: default;\n}", map: undefined, media: undefined });
437
+ inject("data-v-dc07bd14_0", { source: ".tek-card-title-row {\n display: flex;\n align-items: center;\n}\n.tek-card-title-row .tek-card-title-text {\n color: var(--v-primary-base);\n font-weight: bold;\n font-size: 20px;\n}\n.tek-card-title-row .tek-card-subtitle-text {\n padding-left: 10px;\n color: var(--zd-font-color);\n font-size: 13px;\n}\n.tek-card-title-row .tek-card-title-text,\n.tek-card-title-row .tek-card-subtitle-text {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n vertical-align: baseline;\n}\n.tek-card-title-row .v-icon {\n color: var(--v-primary-base);\n padding-right: calc(var(--zd-default-padding) / 2);\n}\n.tek-card-title .v-divider {\n margin-bottom: 16px;\n}\n.tek-card-title .tek-card-title-router {\n text-decoration: none;\n}\n.tek-card-title .tek-card-title-no-router {\n text-decoration: none;\n cursor: default;\n}", map: undefined, media: undefined });
438
438
 
439
439
  };
440
440
  /* scoped */
@@ -499,7 +499,7 @@
499
499
  /**
500
500
  * TekCrudAddButton component
501
501
  */
502
- let TekCrudAddButton$2 = class TekCrudAddButton extends TekCrudButton$1 {
502
+ let TekCrudAddButton = class TekCrudAddButton extends TekCrudButton$1 {
503
503
  constructor() {
504
504
  super(...arguments);
505
505
  this.instanceType = teknisaComponentsCommon.CrudAddButton;
@@ -507,23 +507,23 @@
507
507
  };
508
508
  __decorate([
509
509
  vuetify.PropWatch({ type: [String, Boolean], default: true })
510
- ], TekCrudAddButton$2.prototype, "flat", void 0);
510
+ ], TekCrudAddButton.prototype, "flat", void 0);
511
511
  __decorate([
512
512
  vuetify.PropWatch({ type: [String, Boolean], default: true })
513
- ], TekCrudAddButton$2.prototype, "icon", void 0);
513
+ ], TekCrudAddButton.prototype, "icon", void 0);
514
514
  __decorate([
515
515
  vuetify.PropWatch({ type: String, default: 'plus' })
516
- ], TekCrudAddButton$2.prototype, "iconName", void 0);
516
+ ], TekCrudAddButton.prototype, "iconName", void 0);
517
517
  __decorate([
518
518
  vuetify.PropWatch({ type: String, default: '#666' })
519
- ], TekCrudAddButton$2.prototype, "color", void 0);
519
+ ], TekCrudAddButton.prototype, "color", void 0);
520
520
  __decorate([
521
521
  vuetify.PropWatch({ type: String, default: 'f2' })
522
- ], TekCrudAddButton$2.prototype, "clickShortcutKey", void 0);
523
- TekCrudAddButton$2 = __decorate([
522
+ ], TekCrudAddButton.prototype, "clickShortcutKey", void 0);
523
+ TekCrudAddButton = __decorate([
524
524
  vuePropertyDecorator.Component
525
- ], TekCrudAddButton$2);
526
- var script$g = TekCrudAddButton$2;
525
+ ], TekCrudAddButton);
526
+ var script$g = TekCrudAddButton;
527
527
 
528
528
  /* script */
529
529
  const __vue_script__$g = script$g;
@@ -629,7 +629,7 @@
629
629
  /**
630
630
  * TekCrudCancelButton component
631
631
  */
632
- let TekCrudCancelButton$2 = class TekCrudCancelButton extends TekCrudButton$1 {
632
+ let TekCrudCancelButton = class TekCrudCancelButton extends TekCrudButton$1 {
633
633
  constructor() {
634
634
  super(...arguments);
635
635
  this.instanceType = teknisaComponentsCommon.CrudCancelButton;
@@ -637,17 +637,17 @@
637
637
  };
638
638
  __decorate([
639
639
  vuetify.PropWatch({ type: String, default: 'CANCEL' })
640
- ], TekCrudCancelButton$2.prototype, "label", void 0);
640
+ ], TekCrudCancelButton.prototype, "label", void 0);
641
641
  __decorate([
642
642
  vuetify.PropWatch({ type: [String, Boolean], default: true })
643
- ], TekCrudCancelButton$2.prototype, "outline", void 0);
643
+ ], TekCrudCancelButton.prototype, "outline", void 0);
644
644
  __decorate([
645
645
  vuetify.PropWatch({ type: String, default: 'esc' })
646
- ], TekCrudCancelButton$2.prototype, "clickShortcutKey", void 0);
647
- TekCrudCancelButton$2 = __decorate([
646
+ ], TekCrudCancelButton.prototype, "clickShortcutKey", void 0);
647
+ TekCrudCancelButton = __decorate([
648
648
  vuePropertyDecorator.Component
649
- ], TekCrudCancelButton$2);
650
- var script$f = TekCrudCancelButton$2;
649
+ ], TekCrudCancelButton);
650
+ var script$f = TekCrudCancelButton;
651
651
 
652
652
  /* script */
653
653
  const __vue_script__$f = script$f;
@@ -753,7 +753,7 @@
753
753
  /**
754
754
  * TekCrudDeleteButton component
755
755
  */
756
- let TekCrudDeleteButton$2 = class TekCrudDeleteButton extends TekCrudButton$1 {
756
+ let TekCrudDeleteButton = class TekCrudDeleteButton extends TekCrudButton$1 {
757
757
  constructor() {
758
758
  super(...arguments);
759
759
  this.instanceType = teknisaComponentsCommon.CrudDeleteButton;
@@ -761,23 +761,23 @@
761
761
  };
762
762
  __decorate([
763
763
  vuetify.PropWatch({ type: [String, Boolean], default: true })
764
- ], TekCrudDeleteButton$2.prototype, "flat", void 0);
764
+ ], TekCrudDeleteButton.prototype, "flat", void 0);
765
765
  __decorate([
766
766
  vuetify.PropWatch({ type: [String, Boolean], default: true })
767
- ], TekCrudDeleteButton$2.prototype, "icon", void 0);
767
+ ], TekCrudDeleteButton.prototype, "icon", void 0);
768
768
  __decorate([
769
769
  vuetify.PropWatch({ type: String, default: 'trashCanOutline' })
770
- ], TekCrudDeleteButton$2.prototype, "iconName", void 0);
770
+ ], TekCrudDeleteButton.prototype, "iconName", void 0);
771
771
  __decorate([
772
772
  vuetify.PropWatch({ type: String, default: '#666' })
773
- ], TekCrudDeleteButton$2.prototype, "color", void 0);
773
+ ], TekCrudDeleteButton.prototype, "color", void 0);
774
774
  __decorate([
775
775
  vuetify.PropWatch({ type: String, default: 'ctrl+d' })
776
- ], TekCrudDeleteButton$2.prototype, "clickShortcutKey", void 0);
777
- TekCrudDeleteButton$2 = __decorate([
776
+ ], TekCrudDeleteButton.prototype, "clickShortcutKey", void 0);
777
+ TekCrudDeleteButton = __decorate([
778
778
  vuePropertyDecorator.Component
779
- ], TekCrudDeleteButton$2);
780
- var script$e = TekCrudDeleteButton$2;
779
+ ], TekCrudDeleteButton);
780
+ var script$e = TekCrudDeleteButton;
781
781
 
782
782
  /* script */
783
783
  const __vue_script__$e = script$e;
@@ -883,16 +883,16 @@
883
883
  /**
884
884
  * TekCrudForm component
885
885
  */
886
- let TekCrudForm$2 = class TekCrudForm extends vuetify.ZdForm {
886
+ let TekCrudForm = class TekCrudForm extends vuetify.ZdForm {
887
887
  constructor() {
888
888
  super(...arguments);
889
889
  this.instanceType = teknisaComponentsCommon.CrudForm;
890
890
  }
891
891
  };
892
- TekCrudForm$2 = __decorate([
892
+ TekCrudForm = __decorate([
893
893
  vuePropertyDecorator.Component
894
- ], TekCrudForm$2);
895
- var script$d = TekCrudForm$2;
894
+ ], TekCrudForm);
895
+ var script$d = TekCrudForm;
896
896
 
897
897
  /* script */
898
898
  const __vue_script__$d = script$d;
@@ -978,7 +978,7 @@
978
978
  /* style */
979
979
  const __vue_inject_styles__$d = function (inject) {
980
980
  if (!inject) return
981
- inject("data-v-1013c8a0_0", { source: ".tek-crud-form {\n outline: none;\n}", map: undefined, media: undefined });
981
+ inject("data-v-12f9560c_0", { source: ".tek-crud-form {\n outline: none;\n}", map: undefined, media: undefined });
982
982
 
983
983
  };
984
984
  /* scoped */
@@ -1009,7 +1009,7 @@
1009
1009
  /**
1010
1010
  * TekCrudSaveButton component
1011
1011
  */
1012
- let TekCrudSaveButton$2 = class TekCrudSaveButton extends TekCrudButton$1 {
1012
+ let TekCrudSaveButton = class TekCrudSaveButton extends TekCrudButton$1 {
1013
1013
  constructor() {
1014
1014
  super(...arguments);
1015
1015
  this.instanceType = teknisaComponentsCommon.CrudSaveButton;
@@ -1017,14 +1017,14 @@
1017
1017
  };
1018
1018
  __decorate([
1019
1019
  vuetify.PropWatch({ type: String, default: 'SAVE' })
1020
- ], TekCrudSaveButton$2.prototype, "label", void 0);
1020
+ ], TekCrudSaveButton.prototype, "label", void 0);
1021
1021
  __decorate([
1022
1022
  vuetify.PropWatch({ type: String, default: 'ctrl+enter' })
1023
- ], TekCrudSaveButton$2.prototype, "clickShortcutKey", void 0);
1024
- TekCrudSaveButton$2 = __decorate([
1023
+ ], TekCrudSaveButton.prototype, "clickShortcutKey", void 0);
1024
+ TekCrudSaveButton = __decorate([
1025
1025
  vuePropertyDecorator.Component
1026
- ], TekCrudSaveButton$2);
1027
- var script$c = TekCrudSaveButton$2;
1026
+ ], TekCrudSaveButton);
1027
+ var script$c = TekCrudSaveButton;
1028
1028
 
1029
1029
  /* script */
1030
1030
  const __vue_script__$c = script$c;
@@ -1128,11 +1128,11 @@
1128
1128
  );
1129
1129
 
1130
1130
  // eslint-disable-next-line prefer-destructuring
1131
- const ZdGridEditable$1 = vuetify.components.ZdGridEditable;
1131
+ const ZdGridEditable = vuetify.components.ZdGridEditable;
1132
1132
  /**
1133
1133
  * TekGrid component
1134
1134
  */
1135
- let TekGrid$5 = class TekGrid extends ZdGridEditable$1 {
1135
+ let TekGrid$1 = class TekGrid extends ZdGridEditable {
1136
1136
  constructor() {
1137
1137
  super(...arguments);
1138
1138
  this.instanceType = teknisaComponentsCommon.TekGrid;
@@ -1523,71 +1523,71 @@
1523
1523
  };
1524
1524
  __decorate([
1525
1525
  vuetify.PropWatch({ type: [String], default: '' })
1526
- ], TekGrid$5.prototype, "title", void 0);
1526
+ ], TekGrid$1.prototype, "title", void 0);
1527
1527
  __decorate([
1528
1528
  vuetify.PropWatch({ type: [Boolean, String], default: false })
1529
- ], TekGrid$5.prototype, "addButton", void 0);
1529
+ ], TekGrid$1.prototype, "addButton", void 0);
1530
1530
  __decorate([
1531
1531
  vuetify.PropWatch({ type: [String], default: 'none' })
1532
- ], TekGrid$5.prototype, "deleteButton", void 0);
1532
+ ], TekGrid$1.prototype, "deleteButton", void 0);
1533
1533
  __decorate([
1534
1534
  vuetify.PropWatch({ type: [Boolean, String], default: false })
1535
- ], TekGrid$5.prototype, "columnsButton", void 0);
1535
+ ], TekGrid$1.prototype, "columnsButton", void 0);
1536
1536
  __decorate([
1537
1537
  vuePropertyDecorator.Prop({ type: [Array, String], default: () => [] })
1538
- ], TekGrid$5.prototype, "columnsButtonIgnore", void 0);
1538
+ ], TekGrid$1.prototype, "columnsButtonIgnore", void 0);
1539
1539
  __decorate([
1540
1540
  vuetify.PropWatch({ type: [Boolean, String], default: false })
1541
- ], TekGrid$5.prototype, "filterButton", void 0);
1541
+ ], TekGrid$1.prototype, "filterButton", void 0);
1542
1542
  __decorate([
1543
1543
  vuetify.PropWatch({ type: [Boolean, String], default: true })
1544
- ], TekGrid$5.prototype, "showSearch", void 0);
1544
+ ], TekGrid$1.prototype, "showSearch", void 0);
1545
1545
  __decorate([
1546
1546
  vuetify.PropWatch({ type: [Boolean, String], default: false })
1547
- ], TekGrid$5.prototype, "columnFilterButton", void 0);
1547
+ ], TekGrid$1.prototype, "columnFilterButton", void 0);
1548
1548
  __decorate([
1549
1549
  vuePropertyDecorator.Prop({ type: [Array], default: () => [] })
1550
- ], TekGrid$5.prototype, "actions", void 0);
1550
+ ], TekGrid$1.prototype, "actions", void 0);
1551
1551
  __decorate([
1552
1552
  vuetify.PropWatch({ type: [String, Boolean], default: true })
1553
- ], TekGrid$5.prototype, "dragColumns", void 0);
1553
+ ], TekGrid$1.prototype, "dragColumns", void 0);
1554
1554
  __decorate([
1555
1555
  vuetify.PropWatch({ type: [String, Boolean], default: true })
1556
- ], TekGrid$5.prototype, "resizeColumns", void 0);
1556
+ ], TekGrid$1.prototype, "resizeColumns", void 0);
1557
1557
  __decorate([
1558
1558
  vuetify.PropWatch({ type: [String, Boolean], default: true })
1559
- ], TekGrid$5.prototype, "showLayoutOptions", void 0);
1559
+ ], TekGrid$1.prototype, "showLayoutOptions", void 0);
1560
1560
  __decorate([
1561
1561
  vuetify.PropWatch({ type: [String, Boolean], default: false })
1562
- ], TekGrid$5.prototype, "showExport", void 0);
1562
+ ], TekGrid$1.prototype, "showExport", void 0);
1563
1563
  __decorate([
1564
1564
  vuetify.PropWatch({ type: [String, Boolean], default: true })
1565
- ], TekGrid$5.prototype, "showReload", void 0);
1565
+ ], TekGrid$1.prototype, "showReload", void 0);
1566
1566
  __decorate([
1567
1567
  vuetify.PropWatch({ type: [String, Array] })
1568
- ], TekGrid$5.prototype, "exportConfig", void 0);
1568
+ ], TekGrid$1.prototype, "exportConfig", void 0);
1569
1569
  __decorate([
1570
1570
  vuePropertyDecorator.Prop({ type: [Array] })
1571
- ], TekGrid$5.prototype, "exportActions", void 0);
1571
+ ], TekGrid$1.prototype, "exportActions", void 0);
1572
1572
  __decorate([
1573
1573
  vuetify.PropWatch({ type: [String, Boolean], default: false })
1574
- ], TekGrid$5.prototype, "groupsOpened", void 0);
1574
+ ], TekGrid$1.prototype, "groupsOpened", void 0);
1575
1575
  __decorate([
1576
1576
  vuetify.PropWatch({ type: [String, Boolean], default: true })
1577
- ], TekGrid$5.prototype, "showSummaryTotal", void 0);
1577
+ ], TekGrid$1.prototype, "showSummaryTotal", void 0);
1578
1578
  __decorate([
1579
1579
  vuetify.PropWatch({ type: [String, Boolean], default: false })
1580
- ], TekGrid$5.prototype, "mainGrid", void 0);
1580
+ ], TekGrid$1.prototype, "mainGrid", void 0);
1581
1581
  __decorate([
1582
1582
  vuePropertyDecorator.Prop({
1583
1583
  type: Array,
1584
1584
  default: () => undefined,
1585
1585
  })
1586
- ], TekGrid$5.prototype, "toolbarSlot", void 0);
1587
- TekGrid$5 = __decorate([
1586
+ ], TekGrid$1.prototype, "toolbarSlot", void 0);
1587
+ TekGrid$1 = __decorate([
1588
1588
  vuePropertyDecorator.Component
1589
- ], TekGrid$5);
1590
- var script$b = TekGrid$5;
1589
+ ], TekGrid$1);
1590
+ var script$b = TekGrid$1;
1591
1591
 
1592
1592
  /* script */
1593
1593
  const __vue_script__$b = script$b;
@@ -1815,7 +1815,12 @@
1815
1815
  staticClass: "zd-table-header-cell",
1816
1816
  style: {
1817
1817
  width:
1818
- _vm.calcHeaderCellWidth(column),
1818
+ _vm.calcWidth(
1819
+ column,
1820
+ column.width ||
1821
+ column.maxWidth ||
1822
+ column.minWidth
1823
+ ) || "unset",
1819
1824
  },
1820
1825
  },
1821
1826
  [
@@ -3210,7 +3215,7 @@
3210
3215
  /* style */
3211
3216
  const __vue_inject_styles__$b = function (inject) {
3212
3217
  if (!inject) return
3213
- inject("data-v-79b7d6a9_0", { source: ".tek-grid .zd-grid-toolbar {\n height: 36px;\n}\n.tek-grid .zd-grid-toolbar .zd-grid-toolbar-slot {\n align-items: center;\n}\n.tek-grid .zd-grid-toolbar .toolbar-divider {\n margin: 10px;\n}\n.tek-grid .zd-grid-toolbar .toolbar-title {\n line-height: 22px;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th {\n padding-right: 15px !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 5;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button {\n display: inline-block;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button .v-icon {\n cursor: pointer;\n font-size: 15px;\n width: 15px;\n padding: 0 3px;\n opacity: 0;\n color: #ccc;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button.has-filter-data .v-icon {\n opacity: 1;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th:hover .tek-grid-column-filter-button .v-icon {\n opacity: 1;\n}\n.tek-grid table tbody tr.footer.theme--light {\n background: #f6f6f6;\n}\n.tek-grid table tbody tr.footer.theme--dark {\n background: #3b3b3b;\n}\n.tek-grid table tbody tr.footer td.zd-table-cell {\n font-weight: 700;\n}\n.tek-grid table tbody tr.summary {\n background: #eee;\n}\n.tek-grid table tbody tr.summary td.zd-table-cell {\n font-weight: 700;\n font-size: 15px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header {\n font-weight: bold;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon {\n font-size: 21px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon.closed {\n transform: rotate(-90deg);\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container {\n position: sticky !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container .zd-table-group-text {\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total {\n display: flex !important;\n position: relative;\n justify-content: start;\n align-items: center;\n left: 1.5rem;\n top: -50%;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total:first-of-type {\n display: inline-block !important;\n top: 0;\n left: 0;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-text {\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 3;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table tbody tr.current td.zd-table-cell.zd-table-fixed-column {\n color: var(--v-primary-base) !important;\n}\n.tek-grid table .tek-grid-header-group-identation {\n width: 22px;\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table .tek-grid-header-group-identation.first-group {\n width: 20px;\n}\n.tek-grid table .tek-grid-body-group-identation {\n width: 8px;\n display: flex;\n position: relative;\n top: 10px;\n margin-left: 14px;\n height: 100%;\n border-left: solid 1px #ccc;\n}\n.tek-grid table .tek-grid-body-group-identation.first-group {\n width: 1rem;\n margin-left: 10px;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer {\n height: 60%;\n border-bottom: solid 1px #ccc;\n top: -25%;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer-no-line {\n border-left: none;\n}\n.tek-grid .zd-skeleton-table-cell .v-skeleton-loader__table-cell {\n height: auto;\n}\n.tekgrid-actions-dropdown > * {\n display: block;\n}\n.tek-grid-column-filter-menu {\n padding: 12px 12px 0 12px;\n max-height: 300px;\n}\n.tek-grid-column-filter-menu.theme--light {\n background: #fff;\n}\n.tek-grid-column-filter-menu.theme--dark {\n background: #1e1e1e;\n}\n.filter-helper-values-button {\n height: 24px !important;\n margin-left: 5px;\n margin-top: 0;\n}\n.filter-helper-values-button.with-label {\n margin-top: 20px;\n}\n.filter-helper-values-option {\n cursor: pointer;\n}\n.filter-helper-values-option:hover {\n background-color: rgba(0, 0, 0, 0.03);\n}", map: undefined, media: undefined });
3218
+ inject("data-v-51404098_0", { source: ".tek-grid .zd-grid-toolbar {\n height: 36px;\n}\n.tek-grid .zd-grid-toolbar .zd-grid-toolbar-slot {\n align-items: center;\n}\n.tek-grid .zd-grid-toolbar .toolbar-divider {\n margin: 10px;\n}\n.tek-grid .zd-grid-toolbar .toolbar-title {\n line-height: 22px;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th {\n padding-right: 15px !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 5;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button {\n display: inline-block;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button .v-icon {\n cursor: pointer;\n font-size: 15px;\n width: 15px;\n padding: 0 3px;\n opacity: 0;\n color: #ccc;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button.has-filter-data .v-icon {\n opacity: 1;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th:hover .tek-grid-column-filter-button .v-icon {\n opacity: 1;\n}\n.tek-grid table tbody tr.footer.theme--light {\n background: #f6f6f6;\n}\n.tek-grid table tbody tr.footer.theme--dark {\n background: #3b3b3b;\n}\n.tek-grid table tbody tr.footer td.zd-table-cell {\n font-weight: 700;\n}\n.tek-grid table tbody tr.summary {\n background: #eee;\n}\n.tek-grid table tbody tr.summary td.zd-table-cell {\n font-weight: 700;\n font-size: 15px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header {\n font-weight: bold;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon {\n font-size: 21px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon.closed {\n transform: rotate(-90deg);\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container {\n position: sticky !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container .zd-table-group-text {\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total {\n display: flex !important;\n position: relative;\n justify-content: start;\n align-items: center;\n left: 1.5rem;\n top: -50%;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total:first-of-type {\n display: inline-block !important;\n top: 0;\n left: 0;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-text {\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 3;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table tbody tr.current td.zd-table-cell.zd-table-fixed-column {\n color: var(--v-primary-base) !important;\n}\n.tek-grid table .tek-grid-header-group-identation {\n width: 22px;\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table .tek-grid-header-group-identation.first-group {\n width: 20px;\n}\n.tek-grid table .tek-grid-body-group-identation {\n width: 8px;\n display: flex;\n position: relative;\n top: 10px;\n margin-left: 14px;\n height: 100%;\n border-left: solid 1px #ccc;\n}\n.tek-grid table .tek-grid-body-group-identation.first-group {\n width: 1rem;\n margin-left: 10px;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer {\n height: 60%;\n border-bottom: solid 1px #ccc;\n top: -25%;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer-no-line {\n border-left: none;\n}\n.tek-grid .zd-skeleton-table-cell .v-skeleton-loader__table-cell {\n height: auto;\n}\n.tekgrid-actions-dropdown > * {\n display: block;\n}\n.tek-grid-column-filter-menu {\n padding: 12px 12px 0 12px;\n max-height: 300px;\n}\n.tek-grid-column-filter-menu.theme--light {\n background: #fff;\n}\n.tek-grid-column-filter-menu.theme--dark {\n background: #1e1e1e;\n}\n.filter-helper-values-button {\n height: 24px !important;\n margin-left: 5px;\n margin-top: 0;\n}\n.filter-helper-values-button.with-label {\n margin-top: 20px;\n}\n.filter-helper-values-option {\n cursor: pointer;\n}\n.filter-helper-values-option:hover {\n background-color: rgba(0, 0, 0, 0.03);\n}", map: undefined, media: undefined });
3214
3219
 
3215
3220
  };
3216
3221
  /* scoped */
@@ -3567,7 +3572,7 @@
3567
3572
  }
3568
3573
  columnContainerMounted({ element }) {
3569
3574
  if (element) {
3570
- sortable__default["default"].create(element, {
3575
+ Sortable__default["default"].create(element, {
3571
3576
  handle: '.tek-grid-column-option-box',
3572
3577
  group: 'column-container',
3573
3578
  filter: '.no-data, .tek-grid-column-option-grouped-true',
@@ -4139,7 +4144,7 @@
4139
4144
  /**
4140
4145
  * TekGrid Columns Button component
4141
4146
  */
4142
- let TekGridColumnsButton$2 = class TekGridColumnsButton extends vuetify.ZdIterableColumnsButton {
4147
+ let TekGridColumnsButton = class TekGridColumnsButton extends vuetify.ZdIterableColumnsButton {
4143
4148
  constructor() {
4144
4149
  super(...arguments);
4145
4150
  this.instanceType = teknisaComponentsCommon.TekGridColumnsButton;
@@ -4152,7 +4157,7 @@
4152
4157
  this.$nextTick(() => {
4153
4158
  const columnsTableBody = document.querySelector(`#${this.instance.name}_columns_table tbody`);
4154
4159
  if (columnsTableBody) {
4155
- sortable__default["default"].create(columnsTableBody, {
4160
+ Sortable__default["default"].create(columnsTableBody, {
4156
4161
  handle: '.sortHandle',
4157
4162
  dragClass: 'tek-grid-columns-button-sortable-drag',
4158
4163
  onEnd: this.sortEnd,
@@ -4188,14 +4193,14 @@
4188
4193
  };
4189
4194
  __decorate([
4190
4195
  vuetify.PropWatch({ type: [Boolean, String], default: false })
4191
- ], TekGridColumnsButton$2.prototype, "hideGroups", void 0);
4196
+ ], TekGridColumnsButton.prototype, "hideGroups", void 0);
4192
4197
  __decorate([
4193
4198
  vuePropertyDecorator.Watch('menuIsOpened')
4194
- ], TekGridColumnsButton$2.prototype, "menuOpenedChange", null);
4195
- TekGridColumnsButton$2 = __decorate([
4199
+ ], TekGridColumnsButton.prototype, "menuOpenedChange", null);
4200
+ TekGridColumnsButton = __decorate([
4196
4201
  vuePropertyDecorator.Component
4197
- ], TekGridColumnsButton$2);
4198
- var script$a = TekGridColumnsButton$2;
4202
+ ], TekGridColumnsButton);
4203
+ var script$a = TekGridColumnsButton;
4199
4204
 
4200
4205
  /* script */
4201
4206
  const __vue_script__$a = script$a;
@@ -4469,7 +4474,7 @@
4469
4474
  /* style */
4470
4475
  const __vue_inject_styles__$a = function (inject) {
4471
4476
  if (!inject) return
4472
- inject("data-v-3480b218_0", { source: ".tek-grid-columns-button-options {\n max-height: 250px;\n display: flex;\n flex-direction: column;\n background-color: #fff;\n}\n.tek-grid-columns-button-options.theme--dark {\n background-color: #1e1e1e;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper {\n flex: 1;\n overflow-y: auto;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table {\n padding: 0 var(--spacing-2) var(--spacing-2) var(--spacing-2);\n font-size: 13px;\n border-spacing: 0;\n width: 100%;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table thead tr th {\n padding: var(--spacing-2) var(--spacing-2) var(--spacing-1) var(--spacing-2);\n white-space: nowrap;\n text-align: left;\n position: sticky;\n top: 0;\n z-index: 10;\n background-color: var(--zd-background-base);\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td {\n padding: var(--spacing-1) var(--spacing-2);\n white-space: nowrap;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td.tek-grid-columns-button-column-name {\n cursor: -webkit-grab;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td.tek-grid-columns-button-column-name > span {\n padding-right: 4px;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td.tek-grid-columns-button-column-aggregation {\n max-width: 150px;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-footer {\n display: flex;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-footer .zd-button {\n flex: 1;\n}\n.tek-grid-columns-button-sortable-drag {\n background: white;\n}\n.tek-grid-column-option-box {\n margin: var(--spacing-1);\n background: #ccc;\n padding: 2px var(--spacing-1);\n cursor: pointer;\n}\n.tek-grid-column-option-box > * {\n display: inline-block;\n}\n.tek-grid-column-option-box > .zd-icon {\n font-size: 0.9rem;\n margin-left: var(--spacing-2);\n}\n.tek-grid-column-option-box.tek-grid-column-option-grouped-true {\n cursor: default;\n background: #fafafa;\n}\n.tek-grid-column-option-box.tek-grid-column-option-grouped-true > .zd-icon {\n display: none;\n}\n.tek-grid-column-option-box.tek-grid-column-option-selected-true {\n background: var(--v-primary-base);\n color: white;\n}\n.tek-grid-column-option-box.tek-grid-column-option-selected-true > .zd-icon {\n color: white;\n}\n.tek-grid-column-option-container-col {\n position: relative;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-container {\n background: #eee;\n padding: var(--spacing-1);\n max-height: 100px;\n min-height: 42px;\n align-content: center;\n position: relative;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-container .tek-iterable-footer {\n display: none !important;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-container .zd-text.no-data {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n font-size: 0.7rem;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-label {\n font-weight: var(--zd-font-body2-weight);\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-select-all {\n position: absolute;\n top: 0.5rem;\n right: var(--spacing-1);\n color: var(--v-primary-base);\n cursor: pointer;\n font-size: 0.8rem;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-drop-here {\n position: absolute;\n z-index: 100;\n left: 50%;\n transform: translateX(-50%);\n top: 35px;\n}\n.tek-grid-column-option-detail-name {\n color: var(--v-primary-base);\n font-weight: var(--zd-font-body2-weight);\n font-size: 1.1rem;\n margin-top: var(--spacing-6);\n}", map: undefined, media: undefined });
4477
+ inject("data-v-1cfc4ef2_0", { source: ".tek-grid-columns-button-options {\n max-height: 250px;\n display: flex;\n flex-direction: column;\n background-color: #fff;\n}\n.tek-grid-columns-button-options.theme--dark {\n background-color: #1e1e1e;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper {\n flex: 1;\n overflow-y: auto;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table {\n padding: 0 var(--spacing-2) var(--spacing-2) var(--spacing-2);\n font-size: 13px;\n border-spacing: 0;\n width: 100%;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table thead tr th {\n padding: var(--spacing-2) var(--spacing-2) var(--spacing-1) var(--spacing-2);\n white-space: nowrap;\n text-align: left;\n position: sticky;\n top: 0;\n z-index: 10;\n background-color: var(--zd-background-base);\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td {\n padding: var(--spacing-1) var(--spacing-2);\n white-space: nowrap;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td.tek-grid-columns-button-column-name {\n cursor: -webkit-grab;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td.tek-grid-columns-button-column-name > span {\n padding-right: 4px;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-wrapper .tek-grid-columns-button-table tbody tr td.tek-grid-columns-button-column-aggregation {\n max-width: 150px;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-footer {\n display: flex;\n}\n.tek-grid-columns-button-options .tek-grid-columns-button-table-footer .zd-button {\n flex: 1;\n}\n.tek-grid-columns-button-sortable-drag {\n background: white;\n}\n.tek-grid-column-option-box {\n margin: var(--spacing-1);\n background: #ccc;\n padding: 2px var(--spacing-1);\n cursor: pointer;\n}\n.tek-grid-column-option-box > * {\n display: inline-block;\n}\n.tek-grid-column-option-box > .zd-icon {\n font-size: 0.9rem;\n margin-left: var(--spacing-2);\n}\n.tek-grid-column-option-box.tek-grid-column-option-grouped-true {\n cursor: default;\n background: #fafafa;\n}\n.tek-grid-column-option-box.tek-grid-column-option-grouped-true > .zd-icon {\n display: none;\n}\n.tek-grid-column-option-box.tek-grid-column-option-selected-true {\n background: var(--v-primary-base);\n color: white;\n}\n.tek-grid-column-option-box.tek-grid-column-option-selected-true > .zd-icon {\n color: white;\n}\n.tek-grid-column-option-container-col {\n position: relative;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-container {\n background: #eee;\n padding: var(--spacing-1);\n max-height: 100px;\n min-height: 42px;\n align-content: center;\n position: relative;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-container .tek-iterable-footer {\n display: none !important;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-container .zd-text.no-data {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n font-size: 0.7rem;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-label {\n font-weight: var(--zd-font-body2-weight);\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-select-all {\n position: absolute;\n top: 0.5rem;\n right: var(--spacing-1);\n color: var(--v-primary-base);\n cursor: pointer;\n font-size: 0.8rem;\n}\n.tek-grid-column-option-container-col .tek-grid-column-option-drop-here {\n position: absolute;\n z-index: 100;\n left: 50%;\n transform: translateX(-50%);\n top: 35px;\n}\n.tek-grid-column-option-detail-name {\n color: var(--v-primary-base);\n font-weight: var(--zd-font-body2-weight);\n font-size: 1.1rem;\n margin-top: var(--spacing-6);\n}", map: undefined, media: undefined });
4473
4478
 
4474
4479
  };
4475
4480
  /* scoped */
@@ -4500,7 +4505,7 @@
4500
4505
  /**
4501
4506
  * TekGridLayoutOptions component
4502
4507
  */
4503
- let TekGridLayoutOptions$2 = class TekGridLayoutOptions extends vuetify.ZdComponentRender {
4508
+ let TekGridLayoutOptions = class TekGridLayoutOptions extends vuetify.ZdComponentRender {
4504
4509
  constructor() {
4505
4510
  super(...arguments);
4506
4511
  this.instanceType = teknisaComponentsCommon.TekGridLayoutOptions;
@@ -4690,10 +4695,10 @@
4690
4695
  event.stopImmediatePropagation();
4691
4696
  }
4692
4697
  };
4693
- TekGridLayoutOptions$2 = __decorate([
4698
+ TekGridLayoutOptions = __decorate([
4694
4699
  vuePropertyDecorator.Component
4695
- ], TekGridLayoutOptions$2);
4696
- var script$9 = TekGridLayoutOptions$2;
4700
+ ], TekGridLayoutOptions);
4701
+ var script$9 = TekGridLayoutOptions;
4697
4702
 
4698
4703
  /* script */
4699
4704
  const __vue_script__$9 = script$9;
@@ -4967,7 +4972,7 @@
4967
4972
  /* style */
4968
4973
  const __vue_inject_styles__$9 = function (inject) {
4969
4974
  if (!inject) return
4970
- inject("data-v-01da62e2_0", { source: ".tek-grid-layout-options-badge .v-badge__badge {\n font-size: var(--zd-font-caption-size);\n font-weight: var(--zd-font-caption-weight);\n line-height: 14px;\n pointer-events: none;\n background-color: var(--zd-badge-background-color) !important;\n}\n.tek-grid-layout-options-badge .v-badge__badge span {\n color: var(--zd-badge-text-color) !important;\n}\n.tek-grid-layout-item {\n font-size: 13px;\n cursor: pointer;\n min-height: 30px;\n}\n.tek-grid-layout-item.selected {\n font-weight: 700;\n}\n.tek-grid-layout-item:hover.theme--light {\n background: #eee;\n}\n.tek-grid-layout-item:hover .tek-grid-layout-item-buttons {\n display: inherit;\n}\n.tek-grid-layout-item .tek-grid-layout-item-buttons {\n display: none;\n position: absolute;\n right: 5px;\n}\n.tek-grid-layout-item .tek-grid-layout-item-buttons .v-icon {\n font-size: 12px;\n}", map: undefined, media: undefined });
4975
+ inject("data-v-162a7d24_0", { source: ".tek-grid-layout-options-badge .v-badge__badge {\n font-size: var(--zd-font-caption-size);\n font-weight: var(--zd-font-caption-weight);\n line-height: 14px;\n pointer-events: none;\n background-color: var(--zd-badge-background-color) !important;\n}\n.tek-grid-layout-options-badge .v-badge__badge span {\n color: var(--zd-badge-text-color) !important;\n}\n.tek-grid-layout-item {\n font-size: 13px;\n cursor: pointer;\n min-height: 30px;\n}\n.tek-grid-layout-item.selected {\n font-weight: 700;\n}\n.tek-grid-layout-item:hover.theme--light {\n background: #eee;\n}\n.tek-grid-layout-item:hover .tek-grid-layout-item-buttons {\n display: inherit;\n}\n.tek-grid-layout-item .tek-grid-layout-item-buttons {\n display: none;\n position: absolute;\n right: 5px;\n}\n.tek-grid-layout-item .tek-grid-layout-item-buttons .v-icon {\n font-size: 12px;\n}", map: undefined, media: undefined });
4971
4976
 
4972
4977
  };
4973
4978
  /* scoped */
@@ -4998,7 +5003,7 @@
4998
5003
  /**
4999
5004
  * DocTable component
5000
5005
  */
5001
- let TekImage$2 = class TekImage extends vuetify.ZdComponent {
5006
+ let TekImage = class TekImage extends vuetify.ZdComponent {
5002
5007
  constructor() {
5003
5008
  super(...arguments);
5004
5009
  this.instanceType = teknisaComponentsCommon.Image;
@@ -5006,14 +5011,14 @@
5006
5011
  };
5007
5012
  __decorate([
5008
5013
  vuetify.PropWatch({ type: String, default: '' })
5009
- ], TekImage$2.prototype, "to", void 0);
5014
+ ], TekImage.prototype, "to", void 0);
5010
5015
  __decorate([
5011
5016
  vuetify.PropWatch({ type: String, default: '' })
5012
- ], TekImage$2.prototype, "src", void 0);
5013
- TekImage$2 = __decorate([
5017
+ ], TekImage.prototype, "src", void 0);
5018
+ TekImage = __decorate([
5014
5019
  vuePropertyDecorator.Component
5015
- ], TekImage$2);
5016
- var script$8 = TekImage$2;
5020
+ ], TekImage);
5021
+ var script$8 = TekImage;
5017
5022
 
5018
5023
  /* script */
5019
5024
  const __vue_script__$8 = script$8;
@@ -5194,7 +5199,7 @@
5194
5199
  /**
5195
5200
  * TekIterableComponentRender component
5196
5201
  */
5197
- let TekIterableComponentRender$2 = class TekIterableComponentRender extends vuetify.ZdIterable {
5202
+ let TekIterableComponentRender = class TekIterableComponentRender extends vuetify.ZdIterable {
5198
5203
  constructor() {
5199
5204
  super(...arguments);
5200
5205
  this.instanceType = teknisaComponentsCommon.IterableComponentRender;
@@ -5202,19 +5207,19 @@
5202
5207
  };
5203
5208
  __decorate([
5204
5209
  vuePropertyDecorator.Prop({ type: Array, default: () => [] })
5205
- ], TekIterableComponentRender$2.prototype, "footerSlot", void 0);
5210
+ ], TekIterableComponentRender.prototype, "footerSlot", void 0);
5206
5211
  __decorate([
5207
5212
  vuePropertyDecorator.Prop({ type: Array, default: () => [] })
5208
- ], TekIterableComponentRender$2.prototype, "toolbarSlot", void 0);
5213
+ ], TekIterableComponentRender.prototype, "toolbarSlot", void 0);
5209
5214
  __decorate([
5210
5215
  vuePropertyDecorator.Prop({ type: [Object, String] })
5211
- ], TekIterableComponentRender$2.prototype, "componentMetadata", void 0);
5216
+ ], TekIterableComponentRender.prototype, "componentMetadata", void 0);
5212
5217
  __decorate([
5213
5218
  vuetify.PropWatch({ type: String, default: 'row' })
5214
- ], TekIterableComponentRender$2.prototype, "rowPropName", void 0);
5219
+ ], TekIterableComponentRender.prototype, "rowPropName", void 0);
5215
5220
  __decorate([
5216
5221
  vuePropertyDecorator.Prop({ type: Array, default: () => ([]) })
5217
- ], TekIterableComponentRender$2.prototype, "errorSlot", void 0);
5222
+ ], TekIterableComponentRender.prototype, "errorSlot", void 0);
5218
5223
  __decorate([
5219
5224
  vuePropertyDecorator.Prop({
5220
5225
  type: Array,
@@ -5227,7 +5232,7 @@
5227
5232
  },
5228
5233
  ]),
5229
5234
  })
5230
- ], TekIterableComponentRender$2.prototype, "noDataSlot", void 0);
5235
+ ], TekIterableComponentRender.prototype, "noDataSlot", void 0);
5231
5236
  __decorate([
5232
5237
  vuePropertyDecorator.Prop({
5233
5238
  type: Array,
@@ -5240,20 +5245,20 @@
5240
5245
  },
5241
5246
  ]),
5242
5247
  })
5243
- ], TekIterableComponentRender$2.prototype, "noResultSlot", void 0);
5248
+ ], TekIterableComponentRender.prototype, "noResultSlot", void 0);
5244
5249
  __decorate([
5245
5250
  vuetify.PropWatch({ type: [Number, String], default: 'auto' })
5246
- ], TekIterableComponentRender$2.prototype, "height", void 0);
5251
+ ], TekIterableComponentRender.prototype, "height", void 0);
5247
5252
  __decorate([
5248
5253
  vuetify.PropWatch({ type: [Number, String], default: 'none' })
5249
- ], TekIterableComponentRender$2.prototype, "maxHeight", void 0);
5254
+ ], TekIterableComponentRender.prototype, "maxHeight", void 0);
5250
5255
  __decorate([
5251
5256
  vuetify.PropWatch({ type: [Number, String], default: 'none' })
5252
- ], TekIterableComponentRender$2.prototype, "minHeight", void 0);
5253
- TekIterableComponentRender$2 = __decorate([
5257
+ ], TekIterableComponentRender.prototype, "minHeight", void 0);
5258
+ TekIterableComponentRender = __decorate([
5254
5259
  vuePropertyDecorator.Component
5255
- ], TekIterableComponentRender$2);
5256
- var script$6 = TekIterableComponentRender$2;
5260
+ ], TekIterableComponentRender);
5261
+ var script$6 = TekIterableComponentRender;
5257
5262
 
5258
5263
  /* script */
5259
5264
  const __vue_script__$6 = script$6;
@@ -5453,11 +5458,11 @@
5453
5458
  /* style */
5454
5459
  const __vue_inject_styles__$6 = function (inject) {
5455
5460
  if (!inject) return
5456
- inject("data-v-99372b24_0", { source: ".tek-iterable-component-render[data-v-99372b24] {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n -webkit-box-flex: 1;\n flex: 1 1 auto;\n}\n.tek-iterable-component-render .error--text[data-v-99372b24],\n.tek-iterable-component-render .no--data[data-v-99372b24] {\n text-align: center;\n width: 100%;\n font-size: 14px;\n}\n.tek-iterable-component-render .no--data[data-v-99372b24] {\n color: rgba(0, 0, 0, 0.38);\n}\n.tek-iterable-component-render .tek-iterable-toolbar[data-v-99372b24] {\n display: flex;\n justify-content: space-between;\n margin-bottom: 16px;\n align-items: center;\n width: 100%;\n}\n.tek-iterable-component-render .tek-iterable-footer[data-v-99372b24] {\n padding: 5px 0;\n display: flex;\n width: 100%;\n}", map: undefined, media: undefined });
5461
+ inject("data-v-4336f203_0", { source: ".tek-iterable-component-render[data-v-4336f203] {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n -webkit-box-flex: 1;\n flex: 1 1 auto;\n}\n.tek-iterable-component-render .error--text[data-v-4336f203],\n.tek-iterable-component-render .no--data[data-v-4336f203] {\n text-align: center;\n width: 100%;\n font-size: 14px;\n}\n.tek-iterable-component-render .no--data[data-v-4336f203] {\n color: rgba(0, 0, 0, 0.38);\n}\n.tek-iterable-component-render .tek-iterable-toolbar[data-v-4336f203] {\n display: flex;\n justify-content: space-between;\n margin-bottom: 16px;\n align-items: center;\n width: 100%;\n}\n.tek-iterable-component-render .tek-iterable-footer[data-v-4336f203] {\n padding: 5px 0;\n display: flex;\n width: 100%;\n}", map: undefined, media: undefined });
5457
5462
 
5458
5463
  };
5459
5464
  /* scoped */
5460
- const __vue_scope_id__$6 = "data-v-99372b24";
5465
+ const __vue_scope_id__$6 = "data-v-4336f203";
5461
5466
  /* module identifier */
5462
5467
  const __vue_module_identifier__$6 = undefined;
5463
5468
  /* functional template */
@@ -5673,7 +5678,7 @@
5673
5678
  /* style */
5674
5679
  const __vue_inject_styles__$4 = function (inject) {
5675
5680
  if (!inject) return
5676
- inject("data-v-b078b4a0_0", { source: ".tek-notifications .tek-card-title .mark-read-text {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n display: inline-block;\n}\n.tek-notifications .tek-card-title .mark-read-text p {\n margin-bottom: 0px;\n}\n.tek-notifications .tek-card-title hr.v-divider {\n margin-bottom: 0px;\n}\n.tek-notifications ul.tek-notifications-list {\n list-style: none;\n padding: 0;\n}\n.tek-notifications ul.tek-notifications-list li {\n border-bottom: solid 1px rgba(0, 0, 0, 0.12);\n color: #667080;\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n line-height: 14px;\n padding: 10px 20px 10px 0;\n position: relative;\n}\n.tek-notifications ul.tek-notifications-list li .tek-notification-subject {\n font-weight: 700;\n}\n.tek-notifications ul.tek-notifications-list li .tek-notification-read-mark {\n width: 10px;\n height: 10px;\n background-color: var(--v-primary-base);\n border-radius: 50%;\n position: absolute;\n right: 2px;\n top: 12px;\n}\n.tek-notifications ul.tek-notifications-list li:last-child {\n border-bottom: none;\n}\n.tek-notifications .tek-notification-show-all {\n text-decoration: none;\n text-align: center;\n padding-top: 10px;\n font-weight: 700;\n display: block;\n border-top: solid 1px rgba(0, 0, 0, 0.12);\n}", map: undefined, media: undefined });
5681
+ inject("data-v-30efacc6_0", { source: ".tek-notifications .tek-card-title .mark-read-text {\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n display: inline-block;\n}\n.tek-notifications .tek-card-title .mark-read-text p {\n margin-bottom: 0px;\n}\n.tek-notifications .tek-card-title hr.v-divider {\n margin-bottom: 0px;\n}\n.tek-notifications ul.tek-notifications-list {\n list-style: none;\n padding: 0;\n}\n.tek-notifications ul.tek-notifications-list li {\n border-bottom: solid 1px rgba(0, 0, 0, 0.12);\n color: #667080;\n font-size: var(--zd-font-body1-size);\n font-weight: var(--zd-font-body1-weight);\n line-height: 14px;\n padding: 10px 20px 10px 0;\n position: relative;\n}\n.tek-notifications ul.tek-notifications-list li .tek-notification-subject {\n font-weight: 700;\n}\n.tek-notifications ul.tek-notifications-list li .tek-notification-read-mark {\n width: 10px;\n height: 10px;\n background-color: var(--v-primary-base);\n border-radius: 50%;\n position: absolute;\n right: 2px;\n top: 12px;\n}\n.tek-notifications ul.tek-notifications-list li:last-child {\n border-bottom: none;\n}\n.tek-notifications .tek-notification-show-all {\n text-decoration: none;\n text-align: center;\n padding-top: 10px;\n font-weight: 700;\n display: block;\n border-top: solid 1px rgba(0, 0, 0, 0.12);\n}", map: undefined, media: undefined });
5677
5682
 
5678
5683
  };
5679
5684
  /* scoped */
@@ -5704,7 +5709,7 @@
5704
5709
  /**
5705
5710
  * Product card component
5706
5711
  */
5707
- let TekProductCard$2 = class TekProductCard extends vuetify.ZdComponentRender {
5712
+ let TekProductCard = class TekProductCard extends vuetify.ZdComponentRender {
5708
5713
  constructor() {
5709
5714
  super(...arguments);
5710
5715
  this.instanceType = teknisaComponentsCommon.ProductCard;
@@ -5719,47 +5724,47 @@
5719
5724
  };
5720
5725
  __decorate([
5721
5726
  vuetify.PropWatch({ type: String, default: '' })
5722
- ], TekProductCard$2.prototype, "id", void 0);
5727
+ ], TekProductCard.prototype, "id", void 0);
5723
5728
  __decorate([
5724
5729
  vuetify.PropWatch({ type: String, default: '' })
5725
- ], TekProductCard$2.prototype, "to", void 0);
5730
+ ], TekProductCard.prototype, "to", void 0);
5726
5731
  __decorate([
5727
5732
  vuetify.PropWatch({ type: String, default: '' })
5728
- ], TekProductCard$2.prototype, "src", void 0);
5733
+ ], TekProductCard.prototype, "src", void 0);
5729
5734
  __decorate([
5730
5735
  vuetify.PropWatch({ type: String, default: '' })
5731
- ], TekProductCard$2.prototype, "errorImagePath", void 0);
5736
+ ], TekProductCard.prototype, "errorImagePath", void 0);
5732
5737
  __decorate([
5733
5738
  vuetify.PropWatch({ type: String, default: 'UNAVAILABLE_IMAGE' })
5734
- ], TekProductCard$2.prototype, "errorImageText", void 0);
5739
+ ], TekProductCard.prototype, "errorImageText", void 0);
5735
5740
  __decorate([
5736
5741
  vuetify.PropWatch({ type: String, default: '' })
5737
- ], TekProductCard$2.prototype, "productName", void 0);
5742
+ ], TekProductCard.prototype, "productName", void 0);
5738
5743
  __decorate([
5739
5744
  vuetify.PropWatch({ type: String })
5740
- ], TekProductCard$2.prototype, "productSupplier", void 0);
5745
+ ], TekProductCard.prototype, "productSupplier", void 0);
5741
5746
  __decorate([
5742
5747
  vuetify.PropWatch({ type: String })
5743
- ], TekProductCard$2.prototype, "productBrand", void 0);
5748
+ ], TekProductCard.prototype, "productBrand", void 0);
5744
5749
  __decorate([
5745
5750
  vuetify.PropWatch({ type: [String, Number] })
5746
- ], TekProductCard$2.prototype, "productPrice", void 0);
5751
+ ], TekProductCard.prototype, "productPrice", void 0);
5747
5752
  __decorate([
5748
5753
  vuetify.PropWatch({ type: String, default: '' })
5749
- ], TekProductCard$2.prototype, "width", void 0);
5754
+ ], TekProductCard.prototype, "width", void 0);
5750
5755
  __decorate([
5751
5756
  vuetify.PropWatch({ type: [Number, String], default: 'auto' })
5752
- ], TekProductCard$2.prototype, "height", void 0);
5757
+ ], TekProductCard.prototype, "height", void 0);
5753
5758
  __decorate([
5754
5759
  vuetify.PropWatch({ type: [Number, String], default: 'none' })
5755
- ], TekProductCard$2.prototype, "maxHeight", void 0);
5760
+ ], TekProductCard.prototype, "maxHeight", void 0);
5756
5761
  __decorate([
5757
5762
  vuetify.PropWatch({ type: [Number, String], default: 'none' })
5758
- ], TekProductCard$2.prototype, "minHeight", void 0);
5759
- TekProductCard$2 = __decorate([
5763
+ ], TekProductCard.prototype, "minHeight", void 0);
5764
+ TekProductCard = __decorate([
5760
5765
  vuePropertyDecorator.Component
5761
- ], TekProductCard$2);
5762
- var script$3 = TekProductCard$2;
5766
+ ], TekProductCard);
5767
+ var script$3 = TekProductCard;
5763
5768
 
5764
5769
  /* script */
5765
5770
  const __vue_script__$3 = script$3;
@@ -5909,7 +5914,7 @@
5909
5914
  /* style */
5910
5915
  const __vue_inject_styles__$3 = function (inject) {
5911
5916
  if (!inject) return
5912
- inject("data-v-d1f7e034_0", { source: ".tek-product-card * {\n text-decoration: none;\n}\n.tek-product-card .v-card {\n padding: 0%;\n}\n.tek-product-card .v-card .tek-image-content {\n text-align: center;\n}\n.tek-product-card .v-card .tek-product-card-image-container {\n position: relative;\n}\n.tek-product-card .v-card .tek-product-card-info {\n display: flex;\n flex-direction: column;\n padding: 5px 10px 10px 10px;\n color: var(--zd-font-color);\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-title {\n white-space: nowrap;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 16px;\n line-height: 19px;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-supplier {\n font-size: var(--zd-font-body2-size);\n line-height: 14px;\n color: #c4c4c4;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 10px;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-footer .tek-product-card-brand {\n font-size: var(--zd-font-body2-size);\n line-height: 14px;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-footer .tek-product-card-price {\n font-weight: var(--zd-font-body4-weight);\n font-size: var(--zd-font-body4-size);\n line-height: 16px;\n}\n.tek-product-card--link .v-card {\n cursor: pointer;\n}", map: undefined, media: undefined });
5917
+ inject("data-v-0ad251e8_0", { source: ".tek-product-card * {\n text-decoration: none;\n}\n.tek-product-card .v-card {\n padding: 0%;\n}\n.tek-product-card .v-card .tek-image-content {\n text-align: center;\n}\n.tek-product-card .v-card .tek-product-card-image-container {\n position: relative;\n}\n.tek-product-card .v-card .tek-product-card-info {\n display: flex;\n flex-direction: column;\n padding: 5px 10px 10px 10px;\n color: var(--zd-font-color);\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-title {\n white-space: nowrap;\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 16px;\n line-height: 19px;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-supplier {\n font-size: var(--zd-font-body2-size);\n line-height: 14px;\n color: #c4c4c4;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-top: 10px;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-footer .tek-product-card-brand {\n font-size: var(--zd-font-body2-size);\n line-height: 14px;\n}\n.tek-product-card .v-card .tek-product-card-info .tek-product-card-footer .tek-product-card-price {\n font-weight: var(--zd-font-body4-weight);\n font-size: var(--zd-font-body4-size);\n line-height: 16px;\n}\n.tek-product-card--link .v-card {\n cursor: pointer;\n}", map: undefined, media: undefined });
5913
5918
 
5914
5919
  };
5915
5920
  /* scoped */
@@ -5938,11 +5943,11 @@
5938
5943
  );
5939
5944
 
5940
5945
  // eslint-disable-next-line prefer-destructuring
5941
- const ZdTreeGridEditable$1 = vuetify.components.ZdTreeGridEditable;
5946
+ const ZdTreeGridEditable = vuetify.components.ZdTreeGridEditable;
5942
5947
  /**
5943
5948
  * TekGrid component
5944
5949
  */
5945
- let TekGrid$4 = class TekGrid extends ZdTreeGridEditable$1 {
5950
+ let TekGrid = class TekGrid extends ZdTreeGridEditable {
5946
5951
  constructor() {
5947
5952
  super(...arguments);
5948
5953
  this.instanceType = teknisaComponentsCommon.TekTreeGrid;
@@ -6252,62 +6257,62 @@
6252
6257
  };
6253
6258
  __decorate([
6254
6259
  vuetify.PropWatch({ type: [String], default: '' })
6255
- ], TekGrid$4.prototype, "title", void 0);
6260
+ ], TekGrid.prototype, "title", void 0);
6256
6261
  __decorate([
6257
6262
  vuetify.PropWatch({ type: [Boolean, String], default: false })
6258
- ], TekGrid$4.prototype, "addButton", void 0);
6263
+ ], TekGrid.prototype, "addButton", void 0);
6259
6264
  __decorate([
6260
6265
  vuetify.PropWatch({ type: [String], default: 'none' })
6261
- ], TekGrid$4.prototype, "deleteButton", void 0);
6266
+ ], TekGrid.prototype, "deleteButton", void 0);
6262
6267
  __decorate([
6263
6268
  vuetify.PropWatch({ type: [Boolean, String], default: false })
6264
- ], TekGrid$4.prototype, "columnsButton", void 0);
6269
+ ], TekGrid.prototype, "columnsButton", void 0);
6265
6270
  __decorate([
6266
6271
  vuePropertyDecorator.Prop({ type: [Array, String], default: () => [] })
6267
- ], TekGrid$4.prototype, "columnsButtonIgnore", void 0);
6272
+ ], TekGrid.prototype, "columnsButtonIgnore", void 0);
6268
6273
  __decorate([
6269
6274
  vuetify.PropWatch({ type: [Boolean, String], default: false })
6270
- ], TekGrid$4.prototype, "filterButton", void 0);
6275
+ ], TekGrid.prototype, "filterButton", void 0);
6271
6276
  __decorate([
6272
6277
  vuetify.PropWatch({ type: [Boolean, String], default: true })
6273
- ], TekGrid$4.prototype, "showSearch", void 0);
6278
+ ], TekGrid.prototype, "showSearch", void 0);
6274
6279
  __decorate([
6275
6280
  vuetify.PropWatch({ type: [Boolean, String], default: false })
6276
- ], TekGrid$4.prototype, "columnFilterButton", void 0);
6281
+ ], TekGrid.prototype, "columnFilterButton", void 0);
6277
6282
  __decorate([
6278
6283
  vuePropertyDecorator.Prop({ type: [Array], default: () => [] })
6279
- ], TekGrid$4.prototype, "actions", void 0);
6284
+ ], TekGrid.prototype, "actions", void 0);
6280
6285
  __decorate([
6281
6286
  vuetify.PropWatch({ type: [String, Boolean], default: true })
6282
- ], TekGrid$4.prototype, "dragColumns", void 0);
6287
+ ], TekGrid.prototype, "dragColumns", void 0);
6283
6288
  __decorate([
6284
6289
  vuetify.PropWatch({ type: [String, Boolean], default: true })
6285
- ], TekGrid$4.prototype, "resizeColumns", void 0);
6290
+ ], TekGrid.prototype, "resizeColumns", void 0);
6286
6291
  __decorate([
6287
6292
  vuetify.PropWatch({ type: [String, Boolean], default: true })
6288
- ], TekGrid$4.prototype, "showLayoutOptions", void 0);
6293
+ ], TekGrid.prototype, "showLayoutOptions", void 0);
6289
6294
  __decorate([
6290
6295
  vuetify.PropWatch({ type: [String, Boolean], default: false })
6291
- ], TekGrid$4.prototype, "showExport", void 0);
6296
+ ], TekGrid.prototype, "showExport", void 0);
6292
6297
  __decorate([
6293
6298
  vuetify.PropWatch({ type: [String, Boolean], default: true })
6294
- ], TekGrid$4.prototype, "showReload", void 0);
6299
+ ], TekGrid.prototype, "showReload", void 0);
6295
6300
  __decorate([
6296
6301
  vuePropertyDecorator.Prop({ type: [String, Array] })
6297
- ], TekGrid$4.prototype, "exportConfig", void 0);
6302
+ ], TekGrid.prototype, "exportConfig", void 0);
6298
6303
  __decorate([
6299
6304
  vuePropertyDecorator.Prop({ type: [Array] })
6300
- ], TekGrid$4.prototype, "exportActions", void 0);
6305
+ ], TekGrid.prototype, "exportActions", void 0);
6301
6306
  __decorate([
6302
6307
  vuePropertyDecorator.Prop({
6303
6308
  type: Array,
6304
6309
  default: () => undefined,
6305
6310
  })
6306
- ], TekGrid$4.prototype, "toolbarSlot", void 0);
6307
- TekGrid$4 = __decorate([
6311
+ ], TekGrid.prototype, "toolbarSlot", void 0);
6312
+ TekGrid = __decorate([
6308
6313
  vuePropertyDecorator.Component
6309
- ], TekGrid$4);
6310
- var script$2 = TekGrid$4;
6314
+ ], TekGrid);
6315
+ var script$2 = TekGrid;
6311
6316
 
6312
6317
  /* script */
6313
6318
  const __vue_script__$2 = script$2;
@@ -6519,7 +6524,12 @@
6519
6524
  staticClass: "zd-table-header-cell",
6520
6525
  style: {
6521
6526
  width:
6522
- _vm.calcHeaderCellWidth(column),
6527
+ _vm.calcWidth(
6528
+ column,
6529
+ column.width ||
6530
+ column.maxWidth ||
6531
+ column.minWidth
6532
+ ) || "unset",
6523
6533
  },
6524
6534
  },
6525
6535
  [
@@ -7658,7 +7668,7 @@
7658
7668
  /* style */
7659
7669
  const __vue_inject_styles__$2 = function (inject) {
7660
7670
  if (!inject) return
7661
- inject("data-v-56918822_0", { source: ".tek-grid .zd-grid-toolbar {\n height: 36px;\n}\n.tek-grid .zd-grid-toolbar .zd-grid-toolbar-slot {\n align-items: center;\n}\n.tek-grid .zd-grid-toolbar .toolbar-divider {\n margin: 10px;\n}\n.tek-grid .zd-grid-toolbar .toolbar-title {\n line-height: 22px;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th {\n padding-right: 15px !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 5;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button {\n display: inline-block;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button .v-icon {\n cursor: pointer;\n font-size: 15px;\n width: 15px;\n padding: 0 3px;\n opacity: 0;\n color: #ccc;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button.has-filter-data .v-icon {\n opacity: 1;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th:hover .tek-grid-column-filter-button .v-icon {\n opacity: 1;\n}\n.tek-grid table tbody tr.footer.theme--light {\n background: #f6f6f6;\n}\n.tek-grid table tbody tr.footer.theme--dark {\n background: #3b3b3b;\n}\n.tek-grid table tbody tr.footer td.zd-table-cell {\n font-weight: 700;\n}\n.tek-grid table tbody tr.summary {\n background: #eee;\n}\n.tek-grid table tbody tr.summary td.zd-table-cell {\n font-weight: 700;\n font-size: 15px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header {\n font-weight: bold;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon {\n font-size: 21px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon.closed {\n transform: rotate(-90deg);\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container {\n position: sticky !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container .zd-table-group-text {\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total {\n display: flex !important;\n position: relative;\n justify-content: start;\n align-items: center;\n left: 1.5rem;\n top: -50%;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total:first-of-type {\n display: inline-block !important;\n top: 0;\n left: 0;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-text {\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 3;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table tbody tr.current td.zd-table-cell.zd-table-fixed-column {\n color: var(--v-primary-base) !important;\n}\n.tek-grid table .tek-grid-header-group-identation {\n width: 22px;\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table .tek-grid-header-group-identation.first-group {\n width: 20px;\n}\n.tek-grid table .tek-grid-body-group-identation {\n width: 8px;\n display: flex;\n position: relative;\n top: 10px;\n margin-left: 14px;\n height: 100%;\n border-left: solid 1px #ccc;\n}\n.tek-grid table .tek-grid-body-group-identation.first-group {\n width: 1rem;\n margin-left: 10px;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer {\n height: 60%;\n border-bottom: solid 1px #ccc;\n top: -25%;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer-no-line {\n border-left: none;\n}\n.tek-grid .zd-skeleton-table-cell .v-skeleton-loader__table-cell {\n height: auto;\n}\n.tekgrid-actions-dropdown > * {\n display: block;\n}\n.tek-grid-column-filter-menu {\n padding: 12px 12px 0 12px;\n max-height: 300px;\n}\n.tek-grid-column-filter-menu.theme--light {\n background: #fff;\n}\n.tek-grid-column-filter-menu.theme--dark {\n background: #1e1e1e;\n}\n.filter-helper-values-button {\n height: 24px !important;\n margin-left: 5px;\n margin-top: 0;\n}\n.filter-helper-values-button.with-label {\n margin-top: 20px;\n}\n.filter-helper-values-option {\n cursor: pointer;\n}\n.filter-helper-values-option:hover {\n background-color: rgba(0, 0, 0, 0.03);\n}", map: undefined, media: undefined });
7671
+ inject("data-v-58731eeb_0", { source: ".tek-grid .zd-grid-toolbar {\n height: 36px;\n}\n.tek-grid .zd-grid-toolbar .zd-grid-toolbar-slot {\n align-items: center;\n}\n.tek-grid .zd-grid-toolbar .toolbar-divider {\n margin: 10px;\n}\n.tek-grid .zd-grid-toolbar .toolbar-title {\n line-height: 22px;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th {\n padding-right: 15px !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 5;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table thead tr th.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button {\n display: inline-block;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button .v-icon {\n cursor: pointer;\n font-size: 15px;\n width: 15px;\n padding: 0 3px;\n opacity: 0;\n color: #ccc;\n}\n.tek-grid table thead tr th .tek-grid-column-filter-button.has-filter-data .v-icon {\n opacity: 1;\n color: var(--v-primary-base);\n}\n.tek-grid table thead tr th:hover .tek-grid-column-filter-button .v-icon {\n opacity: 1;\n}\n.tek-grid table tbody tr.footer.theme--light {\n background: #f6f6f6;\n}\n.tek-grid table tbody tr.footer.theme--dark {\n background: #3b3b3b;\n}\n.tek-grid table tbody tr.footer td.zd-table-cell {\n font-weight: 700;\n}\n.tek-grid table tbody tr.summary {\n background: #eee;\n}\n.tek-grid table tbody tr.summary td.zd-table-cell {\n font-weight: 700;\n font-size: 15px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header {\n font-weight: bold;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon {\n font-size: 21px;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .v-icon.closed {\n transform: rotate(-90deg);\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container {\n position: sticky !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-group-header .zd-table-group-container .zd-table-group-text {\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total {\n display: flex !important;\n position: relative;\n justify-content: start;\n align-items: center;\n left: 1.5rem;\n top: -50%;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-aling-total:first-of-type {\n display: inline-block !important;\n top: 0;\n left: 0;\n}\n.tek-grid table tbody tr td.zd-table-cell .zd-table-cell-text {\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column {\n position: sticky !important;\n left: 0;\n z-index: 3;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--light {\n background: #f7f7f7 !important;\n}\n.tek-grid table tbody tr td.zd-table-cell.zd-table-fixed-column.theme--dark {\n background: #3c3c3c !important;\n}\n.tek-grid table tbody tr.current td.zd-table-cell.zd-table-fixed-column {\n color: var(--v-primary-base) !important;\n}\n.tek-grid table .tek-grid-header-group-identation {\n width: 22px;\n display: inline-block;\n vertical-align: middle;\n}\n.tek-grid table .tek-grid-header-group-identation.first-group {\n width: 20px;\n}\n.tek-grid table .tek-grid-body-group-identation {\n width: 8px;\n display: flex;\n position: relative;\n top: 10px;\n margin-left: 14px;\n height: 100%;\n border-left: solid 1px #ccc;\n}\n.tek-grid table .tek-grid-body-group-identation.first-group {\n width: 1rem;\n margin-left: 10px;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer {\n height: 60%;\n border-bottom: solid 1px #ccc;\n top: -25%;\n}\n.tek-grid table .tek-grid-body-group-identation.group-footer-no-line {\n border-left: none;\n}\n.tek-grid .zd-skeleton-table-cell .v-skeleton-loader__table-cell {\n height: auto;\n}\n.tekgrid-actions-dropdown > * {\n display: block;\n}\n.tek-grid-column-filter-menu {\n padding: 12px 12px 0 12px;\n max-height: 300px;\n}\n.tek-grid-column-filter-menu.theme--light {\n background: #fff;\n}\n.tek-grid-column-filter-menu.theme--dark {\n background: #1e1e1e;\n}\n.filter-helper-values-button {\n height: 24px !important;\n margin-left: 5px;\n margin-top: 0;\n}\n.filter-helper-values-button.with-label {\n margin-top: 20px;\n}\n.filter-helper-values-option {\n cursor: pointer;\n}\n.filter-helper-values-option:hover {\n background-color: rgba(0, 0, 0, 0.03);\n}", map: undefined, media: undefined });
7662
7672
 
7663
7673
  };
7664
7674
  /* scoped */
@@ -7686,7 +7696,7 @@
7686
7696
  undefined
7687
7697
  );
7688
7698
 
7689
- let TekUserInfo$2 = class TekUserInfo extends zdUserInfoVue.ZdUserInfo {
7699
+ let TekUserInfo = class TekUserInfo extends zdUserInfoVue.ZdUserInfo {
7690
7700
  constructor() {
7691
7701
  super(...arguments);
7692
7702
  this.instanceType = teknisaComponentsCommon.TekUserInfo;
@@ -7694,23 +7704,23 @@
7694
7704
  };
7695
7705
  __decorate([
7696
7706
  vuetify.PropWatch({ type: [String], default: '' })
7697
- ], TekUserInfo$2.prototype, "aboutImage", void 0);
7707
+ ], TekUserInfo.prototype, "aboutImage", void 0);
7698
7708
  __decorate([
7699
7709
  vuetify.PropWatch({ type: [String], default: '' })
7700
- ], TekUserInfo$2.prototype, "defaultEmail", void 0);
7710
+ ], TekUserInfo.prototype, "defaultEmail", void 0);
7701
7711
  __decorate([
7702
7712
  vuetify.PropWatch({ type: [Object, String], default: null })
7703
- ], TekUserInfo$2.prototype, "versionInfo", void 0);
7713
+ ], TekUserInfo.prototype, "versionInfo", void 0);
7704
7714
  __decorate([
7705
7715
  vuetify.PropWatch({ type: [String], default: '' })
7706
- ], TekUserInfo$2.prototype, "versionUrl", void 0);
7716
+ ], TekUserInfo.prototype, "versionUrl", void 0);
7707
7717
  __decorate([
7708
7718
  vuePropertyDecorator.Prop({ type: [Array], default: undefined })
7709
- ], TekUserInfo$2.prototype, "bottomSlot", void 0);
7710
- TekUserInfo$2 = __decorate([
7719
+ ], TekUserInfo.prototype, "bottomSlot", void 0);
7720
+ TekUserInfo = __decorate([
7711
7721
  vuePropertyDecorator.Component
7712
- ], TekUserInfo$2);
7713
- var script$1 = TekUserInfo$2;
7722
+ ], TekUserInfo);
7723
+ var script$1 = TekUserInfo;
7714
7724
 
7715
7725
  /* script */
7716
7726
  const __vue_script__$1 = script$1;
@@ -7768,7 +7778,7 @@
7768
7778
  /* style */
7769
7779
  const __vue_inject_styles__$1 = function (inject) {
7770
7780
  if (!inject) return
7771
- inject("data-v-82daf408_0", { source: ".about-modal {\n height: 80%;\n overflow-y: unset;\n}\n.about-modal .zd-modal-card, .about-modal .zd-modal-card-text, .about-modal .zd-modal-container, .about-modal .zd-tabs {\n height: 100%;\n}\n.about-modal .zd-modal-container {\n display: flex;\n flex-direction: column;\n}\n.about-modal .zd-tabs, .about-modal .v-tabs-items {\n overflow-y: auto;\n}", map: undefined, media: undefined });
7781
+ inject("data-v-d9bc3516_0", { source: ".about-modal {\n height: 80%;\n overflow-y: unset;\n}\n.about-modal .zd-modal-card, .about-modal .zd-modal-card-text, .about-modal .zd-modal-container, .about-modal .zd-tabs {\n height: 100%;\n}\n.about-modal .zd-modal-container {\n display: flex;\n flex-direction: column;\n}\n.about-modal .zd-tabs, .about-modal .v-tabs-items {\n overflow-y: auto;\n}", map: undefined, media: undefined });
7772
7782
 
7773
7783
  };
7774
7784
  /* scoped */
@@ -7797,8 +7807,8 @@
7797
7807
  );
7798
7808
 
7799
7809
  // eslint-disable-next-line prefer-destructuring
7800
- const ZdList$1 = vuetify.components.ZdList;
7801
- let TekUserInfoList$2 = class TekUserInfoList extends ZdList$1 {
7810
+ const ZdList = vuetify.components.ZdList;
7811
+ let TekUserInfoList = class TekUserInfoList extends ZdList {
7802
7812
  constructor() {
7803
7813
  super(...arguments);
7804
7814
  this.instanceType = teknisaComponentsCommon.TekUserInfoList;
@@ -7806,14 +7816,14 @@
7806
7816
  };
7807
7817
  __decorate([
7808
7818
  vuetify.PropWatch({ type: [String], default: '' })
7809
- ], TekUserInfoList$2.prototype, "parentName", void 0);
7819
+ ], TekUserInfoList.prototype, "parentName", void 0);
7810
7820
  __decorate([
7811
7821
  vuetify.PropWatch({ type: [Boolean, String], default: true })
7812
- ], TekUserInfoList$2.prototype, "dense", void 0);
7813
- TekUserInfoList$2 = __decorate([
7822
+ ], TekUserInfoList.prototype, "dense", void 0);
7823
+ TekUserInfoList = __decorate([
7814
7824
  vuePropertyDecorator.Component
7815
- ], TekUserInfoList$2);
7816
- var script = TekUserInfoList$2;
7825
+ ], TekUserInfoList);
7826
+ var script = TekUserInfoList;
7817
7827
 
7818
7828
  /* script */
7819
7829
  const __vue_script__ = script;
@@ -7885,1458 +7895,6 @@
7885
7895
  TekUserInfoList: __vue_component__,
7886
7896
  };
7887
7897
 
7888
- /**
7889
- * Teknisa component
7890
- */
7891
- let TekBreadcrumbHeader = class TekBreadcrumbHeader extends vuetify.ZdComponent {
7892
- constructor() {
7893
- super(...arguments);
7894
- this.instanceType = teknisaComponentsCommon.BreadcrumbHeader;
7895
- }
7896
- };
7897
- __decorate([
7898
- vuetify.PropWatch({ type: String, default: '' })
7899
- ], TekBreadcrumbHeader.prototype, "title", void 0);
7900
- __decorate([
7901
- vuePropertyDecorator.Prop({ type: Object, default: {} })
7902
- ], TekBreadcrumbHeader.prototype, "breadcrumb", void 0);
7903
- __decorate([
7904
- vuePropertyDecorator.Prop({ type: Array, default: () => [] })
7905
- ], TekBreadcrumbHeader.prototype, "rightSlot", void 0);
7906
- TekBreadcrumbHeader = __decorate([
7907
- vuePropertyDecorator.Component
7908
- ], TekBreadcrumbHeader);
7909
- var TekBreadcrumbHeader$1 = TekBreadcrumbHeader;
7910
-
7911
- /**
7912
- * TekCardTitle component join an icon, title, rightSlot and a divider
7913
- */
7914
- let TekCardTitle = class TekCardTitle extends vuetify.ZdComponentRender {
7915
- constructor() {
7916
- super(...arguments);
7917
- this.instanceType = teknisaComponentsCommon.CardTitle;
7918
- }
7919
- };
7920
- __decorate([
7921
- vuetify.PropWatch({ type: String, default: '' })
7922
- ], TekCardTitle.prototype, "title", void 0);
7923
- __decorate([
7924
- vuetify.PropWatch({ type: String, default: '' })
7925
- ], TekCardTitle.prototype, "subtitle", void 0);
7926
- __decorate([
7927
- vuetify.PropWatch({ type: String, default: '' })
7928
- ], TekCardTitle.prototype, "iconName", void 0);
7929
- __decorate([
7930
- vuePropertyDecorator.Prop({ type: Array, default: () => [] })
7931
- ], TekCardTitle.prototype, "rightSlot", void 0);
7932
- __decorate([
7933
- vuetify.PropWatch({ type: [Boolean, String], default: true })
7934
- ], TekCardTitle.prototype, "showDivider", void 0);
7935
- __decorate([
7936
- vuetify.PropWatch({ type: String, default: '' })
7937
- ], TekCardTitle.prototype, "to", void 0);
7938
- TekCardTitle = __decorate([
7939
- vuePropertyDecorator.Component
7940
- ], TekCardTitle);
7941
- var TekCardTitle$1 = TekCardTitle;
7942
-
7943
- /**
7944
- * TekCrudAddButton component
7945
- */
7946
- let TekCrudAddButton = class TekCrudAddButton extends TekCrudButton$1 {
7947
- constructor() {
7948
- super(...arguments);
7949
- this.instanceType = teknisaComponentsCommon.CrudAddButton;
7950
- }
7951
- };
7952
- __decorate([
7953
- vuetify.PropWatch({ type: [String, Boolean], default: true })
7954
- ], TekCrudAddButton.prototype, "flat", void 0);
7955
- __decorate([
7956
- vuetify.PropWatch({ type: [String, Boolean], default: true })
7957
- ], TekCrudAddButton.prototype, "icon", void 0);
7958
- __decorate([
7959
- vuetify.PropWatch({ type: String, default: 'plus' })
7960
- ], TekCrudAddButton.prototype, "iconName", void 0);
7961
- __decorate([
7962
- vuetify.PropWatch({ type: String, default: '#666' })
7963
- ], TekCrudAddButton.prototype, "color", void 0);
7964
- __decorate([
7965
- vuetify.PropWatch({ type: String, default: 'f2' })
7966
- ], TekCrudAddButton.prototype, "clickShortcutKey", void 0);
7967
- TekCrudAddButton = __decorate([
7968
- vuePropertyDecorator.Component
7969
- ], TekCrudAddButton);
7970
- var TekCrudAddButton$1 = TekCrudAddButton;
7971
-
7972
- /**
7973
- * TekCrudCancelButton component
7974
- */
7975
- let TekCrudCancelButton = class TekCrudCancelButton extends TekCrudButton$1 {
7976
- constructor() {
7977
- super(...arguments);
7978
- this.instanceType = teknisaComponentsCommon.CrudCancelButton;
7979
- }
7980
- };
7981
- __decorate([
7982
- vuetify.PropWatch({ type: String, default: 'CANCEL' })
7983
- ], TekCrudCancelButton.prototype, "label", void 0);
7984
- __decorate([
7985
- vuetify.PropWatch({ type: [String, Boolean], default: true })
7986
- ], TekCrudCancelButton.prototype, "outline", void 0);
7987
- __decorate([
7988
- vuetify.PropWatch({ type: String, default: 'esc' })
7989
- ], TekCrudCancelButton.prototype, "clickShortcutKey", void 0);
7990
- TekCrudCancelButton = __decorate([
7991
- vuePropertyDecorator.Component
7992
- ], TekCrudCancelButton);
7993
- var TekCrudCancelButton$1 = TekCrudCancelButton;
7994
-
7995
- /**
7996
- * TekCrudDeleteButton component
7997
- */
7998
- let TekCrudDeleteButton = class TekCrudDeleteButton extends TekCrudButton$1 {
7999
- constructor() {
8000
- super(...arguments);
8001
- this.instanceType = teknisaComponentsCommon.CrudDeleteButton;
8002
- }
8003
- };
8004
- __decorate([
8005
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8006
- ], TekCrudDeleteButton.prototype, "flat", void 0);
8007
- __decorate([
8008
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8009
- ], TekCrudDeleteButton.prototype, "icon", void 0);
8010
- __decorate([
8011
- vuetify.PropWatch({ type: String, default: 'trashCanOutline' })
8012
- ], TekCrudDeleteButton.prototype, "iconName", void 0);
8013
- __decorate([
8014
- vuetify.PropWatch({ type: String, default: '#666' })
8015
- ], TekCrudDeleteButton.prototype, "color", void 0);
8016
- __decorate([
8017
- vuetify.PropWatch({ type: String, default: 'ctrl+d' })
8018
- ], TekCrudDeleteButton.prototype, "clickShortcutKey", void 0);
8019
- TekCrudDeleteButton = __decorate([
8020
- vuePropertyDecorator.Component
8021
- ], TekCrudDeleteButton);
8022
- var TekCrudDeleteButton$1 = TekCrudDeleteButton;
8023
-
8024
- /**
8025
- * TekCrudForm component
8026
- */
8027
- let TekCrudForm = class TekCrudForm extends vuetify.ZdForm {
8028
- constructor() {
8029
- super(...arguments);
8030
- this.instanceType = teknisaComponentsCommon.CrudForm;
8031
- }
8032
- };
8033
- TekCrudForm = __decorate([
8034
- vuePropertyDecorator.Component
8035
- ], TekCrudForm);
8036
- var TekCrudForm$1 = TekCrudForm;
8037
-
8038
- /**
8039
- * TekCrudSaveButton component
8040
- */
8041
- let TekCrudSaveButton = class TekCrudSaveButton extends TekCrudButton$1 {
8042
- constructor() {
8043
- super(...arguments);
8044
- this.instanceType = teknisaComponentsCommon.CrudSaveButton;
8045
- }
8046
- };
8047
- __decorate([
8048
- vuetify.PropWatch({ type: String, default: 'SAVE' })
8049
- ], TekCrudSaveButton.prototype, "label", void 0);
8050
- __decorate([
8051
- vuetify.PropWatch({ type: String, default: 'ctrl+enter' })
8052
- ], TekCrudSaveButton.prototype, "clickShortcutKey", void 0);
8053
- TekCrudSaveButton = __decorate([
8054
- vuePropertyDecorator.Component
8055
- ], TekCrudSaveButton);
8056
- var TekCrudSaveButton$1 = TekCrudSaveButton;
8057
-
8058
- // eslint-disable-next-line prefer-destructuring
8059
- const ZdGridEditable = vuetify.components.ZdGridEditable;
8060
- /**
8061
- * TekGrid component
8062
- */
8063
- let TekGrid$2 = class TekGrid extends ZdGridEditable {
8064
- constructor() {
8065
- super(...arguments);
8066
- this.instanceType = teknisaComponentsCommon.TekGrid;
8067
- /**
8068
- * Left distance for each column
8069
- */
8070
- this.fixedLeft = {};
8071
- this.debouncedDatasourceGet = debounce__default["default"]((instance) => {
8072
- if (instance.events.beforeApplyFilter) {
8073
- instance.events.beforeApplyFilter({ component: instance });
8074
- }
8075
- const { datasource } = instance;
8076
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
8077
- datasource.updateDynamicFilter();
8078
- }
8079
- else {
8080
- datasource.get();
8081
- }
8082
- }, 500);
8083
- this.operationList = '';
8084
- this.defaultOperation = '';
8085
- this.defaultRelation = '';
8086
- this.lastFilter = '';
8087
- this.tableHeader = null;
8088
- this.tableBody = null;
8089
- }
8090
- mounted() {
8091
- this.originalChangeLayout = this.instance.changeLayout;
8092
- this.instance.changeLayout = this.onChangeLayout;
8093
- this.instance.viewUpdateScrollData = this.calcScrollData;
8094
- this.instance.viewUpdateFixedColumns = this.updateFixedColumns;
8095
- this.updateFixedColumns();
8096
- }
8097
- minimumColumnWidth(column) {
8098
- let minWidth = this.superMethods(vuetify.ZdGrid).minimumColumnWidth.call(this, column);
8099
- if (this.instance.columnFilterButton && column && column.filterable) {
8100
- minWidth += 15;
8101
- }
8102
- return minWidth;
8103
- }
8104
- onChangeLayout(event, element) {
8105
- if (this.originalChangeLayout) {
8106
- this.originalChangeLayout.call(this.instance, event, element);
8107
- }
8108
- if (this.instance.showLayoutOptions) {
8109
- try {
8110
- const layoutOptions = core.Metadata.getInstance(`${this.instance.name}_layout_options`);
8111
- layoutOptions.layoutEdited = true;
8112
- }
8113
- catch (_a) {
8114
- // do nothing
8115
- }
8116
- }
8117
- setTimeout(this.updateFixedColumns);
8118
- }
8119
- getFilterActivatorEvents(on, column) {
8120
- const events = {};
8121
- Object.keys(on).forEach((eventName) => {
8122
- events[eventName] = (event) => {
8123
- this.defaultOperation = 'CONTAINS';
8124
- this.defaultRelation = 'AND';
8125
- this.operationList = this.getColumnFilterOptions(column).map((item) => item.operation).join(';');
8126
- on[eventName](event);
8127
- };
8128
- });
8129
- return events;
8130
- }
8131
- getFilterItemChange(prop, column, index) {
8132
- return this.filterItemChange.bind(this, prop, column, index);
8133
- }
8134
- getFilterValueChange(column, index) {
8135
- return debounce__default["default"](this.filterValueChange.bind(this, column, index), 1000);
8136
- }
8137
- isOperationArrayValues(operation) {
8138
- return ['IN', 'NOT_IN', 'BETWEEN'].includes(operation);
8139
- }
8140
- getComponentType(index) {
8141
- const operationListArray = this.operationList.split(';');
8142
- return this.isOperationArrayValues(operationListArray[index]) ? 'ZdTextInput' : '';
8143
- }
8144
- getComponentHint(index) {
8145
- const operationListArray = this.operationList.split(';');
8146
- return this.isOperationArrayValues(operationListArray[index]) ? 'TEKGRID_MULTIPLE_VALUE_HINT' : '';
8147
- }
8148
- filterItemChange(prop, column, index, { component, event, element }) {
8149
- const { name } = component;
8150
- const valueInputName = name.replace(`-filter-${prop}-`, '-filter-value-');
8151
- const valueInput = core.Metadata.getInstance(valueInputName);
8152
- const operationListArray = this.operationList.split(';');
8153
- if (prop === 'operation' && operationListArray[index] !== component.value) {
8154
- operationListArray[index] = component.value;
8155
- this.operationList = operationListArray.join(';');
8156
- }
8157
- try {
8158
- valueInput.setFocus();
8159
- }
8160
- catch (_a) {
8161
- // do nothing
8162
- }
8163
- const { datasource } = this.instance;
8164
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
8165
- if (datasource.dynamicFilter[column.name] && datasource.dynamicFilter[column.name][index]) {
8166
- this.lastFilter = JSON.stringify(datasource.dynamicFilter);
8167
- const { value } = datasource.dynamicFilter[column.name][index];
8168
- if (prop === 'operation') {
8169
- if (this.isOperationArrayValues(component.value) && !Array.isArray(value)) {
8170
- datasource.dynamicFilter[column.name][index].value = [value];
8171
- }
8172
- if (!this.isOperationArrayValues(component.value) && Array.isArray(value)) {
8173
- [datasource.dynamicFilter[column.name][index].value] = value;
8174
- }
8175
- }
8176
- datasource.dynamicFilter[column.name][index][prop] = component.value;
8177
- if (this.lastFilter !== JSON.stringify(datasource.dynamicFilter)) {
8178
- this.debouncedDatasourceGet(this.instance);
8179
- this.onChangeLayout(event, element);
8180
- }
8181
- }
8182
- }
8183
- }
8184
- convertToDateFormat(column, value, revert) {
8185
- const dateFormat = column.componentProps.dateFormat || core.Config.dateFormat;
8186
- const displayFormat = column.componentProps.displayFormat || core.Config.displayFormat;
8187
- if (revert) {
8188
- if (core.dayjs(value, displayFormat).isValid() || !core.dayjs(value, dateFormat).isValid()) {
8189
- return value;
8190
- }
8191
- return core.dayjs(value, dateFormat).format(displayFormat);
8192
- }
8193
- if (core.dayjs(value, dateFormat).isValid() || !core.dayjs(value, displayFormat).isValid()) {
8194
- return value;
8195
- }
8196
- return core.dayjs(value, displayFormat).format(dateFormat);
8197
- }
8198
- checkDateValueFormat(column, value, revert = false) {
8199
- if (['ZdDate', 'ZdDateRange'].includes(column.componentProps.component)) {
8200
- if (Array.isArray(value)) {
8201
- return value.map((item) => this.convertToDateFormat(column, item, revert));
8202
- }
8203
- return this.convertToDateFormat(column, value, revert);
8204
- }
8205
- return value;
8206
- }
8207
- filterValueChange(column, index, { component, event, element }) {
8208
- let { value } = component;
8209
- const { datasource } = this.instance;
8210
- if (!(element === null || element === void 0 ? void 0 : element.offsetParent))
8211
- return;
8212
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
8213
- this.lastFilter = JSON.stringify(datasource.dynamicFilter);
8214
- if (value) {
8215
- if (!datasource.dynamicFilter[column.name]) {
8216
- datasource.dynamicFilter[column.name] = [];
8217
- }
8218
- if (!datasource.dynamicFilter[column.name][index]) {
8219
- const { name } = component;
8220
- let relation;
8221
- if (index > 0) {
8222
- const relationSelectName = name.replace('-filter-value-', '-filter-relation-');
8223
- const relationSelect = core.Metadata.getInstance(relationSelectName);
8224
- relation = relationSelect.value;
8225
- }
8226
- else {
8227
- relation = 'AND';
8228
- }
8229
- const operationSelectName = name.replace('-filter-value-', '-filter-operation-');
8230
- const operationSelect = core.Metadata.getInstance(operationSelectName);
8231
- const operation = operationSelect.value;
8232
- if (this.isOperationArrayValues(operation)) {
8233
- value = value.split(';');
8234
- }
8235
- value = this.checkDateValueFormat(column, value);
8236
- datasource.dynamicFilter[column.name].push({
8237
- relation,
8238
- operation,
8239
- value,
8240
- });
8241
- }
8242
- else {
8243
- if (this.isOperationArrayValues(datasource.dynamicFilter[column.name][index].operation)) {
8244
- value = value.split(';');
8245
- }
8246
- value = this.checkDateValueFormat(column, value);
8247
- datasource.dynamicFilter[column.name][index].value = value;
8248
- }
8249
- }
8250
- else if (datasource.dynamicFilter[column.name] && datasource.dynamicFilter[column.name][index]) {
8251
- this.defaultOperation = datasource.dynamicFilter[column.name][index].operation;
8252
- this.defaultRelation = datasource.dynamicFilter[column.name][index].relation;
8253
- datasource.dynamicFilter[column.name].splice(index, 1);
8254
- if (datasource.dynamicFilter[column.name].length === 1) {
8255
- datasource.dynamicFilter[column.name][0].relation = 'AND';
8256
- }
8257
- if (!datasource.dynamicFilter[column.name].length) {
8258
- delete datasource.dynamicFilter[column.name];
8259
- }
8260
- }
8261
- if (this.lastFilter !== JSON.stringify(datasource.dynamicFilter)) {
8262
- this.debouncedDatasourceGet(this.instance);
8263
- this.onChangeLayout(event, element);
8264
- this.clearHelperValues(column);
8265
- }
8266
- }
8267
- else {
8268
- this.lastFilter = JSON.stringify(this.instance.datasource.filter);
8269
- if (value) {
8270
- this.instance.datasource.addFilter(column.name, value);
8271
- }
8272
- else {
8273
- this.instance.datasource.removeFilter(column.name);
8274
- }
8275
- if (this.lastFilter !== JSON.stringify(this.instance.datasource.filter)) {
8276
- this.debouncedDatasourceGet(this.instance);
8277
- this.onChangeLayout(event, element);
8278
- this.clearHelperValues(column);
8279
- }
8280
- }
8281
- }
8282
- clearHelperValues(column) {
8283
- if (!Array.isArray(column.filterProps)) {
8284
- column.filterProps.helperValue = '';
8285
- }
8286
- else {
8287
- column.filterProps.forEach((prop) => {
8288
- prop.helperValue = '';
8289
- });
8290
- }
8291
- }
8292
- getColumnFilterOptions(column) {
8293
- const filterOptions = [];
8294
- const { datasource } = this.instance;
8295
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
8296
- const dynamicFilter = datasource.dynamicFilter[column.name];
8297
- if (dynamicFilter && dynamicFilter.length > 0) {
8298
- dynamicFilter.forEach((item) => {
8299
- let { value } = item;
8300
- if (this.isOperationArrayValues(item.operation) && Array.isArray(value)) {
8301
- value = this.checkDateValueFormat(column, value, true);
8302
- value = value.join(';');
8303
- }
8304
- filterOptions.push(Object.assign(Object.assign({}, item), { value }));
8305
- });
8306
- }
8307
- filterOptions.push({
8308
- operation: this.defaultOperation,
8309
- relation: this.defaultRelation,
8310
- value: '',
8311
- });
8312
- }
8313
- else {
8314
- const option = {
8315
- operation: undefined,
8316
- relation: undefined,
8317
- value: this.instance.datasource.filter[column.name] || '',
8318
- };
8319
- filterOptions.push(option);
8320
- }
8321
- return filterOptions;
8322
- }
8323
- isCurrentRow(row) {
8324
- const { uniqueKey, currentRow } = this.instance.datasource;
8325
- return !!((row.group && row.groupValue === currentRow.groupValue)
8326
- || (row[uniqueKey] && row[uniqueKey] === currentRow[uniqueKey]));
8327
- }
8328
- getVisibleData() {
8329
- const groupColumns = !!this.instance.groupColumnNames.length;
8330
- if (groupColumns || (this.instance.showSummaryTotal && this.instance.summaryColumns.length)) {
8331
- this.scrollData.visibleData = this.instance.groupedData.filter((row) => this.instance.isItemVisible(row));
8332
- }
8333
- else {
8334
- this.scrollData.visibleData = this.instance.datasource.data;
8335
- }
8336
- return this.scrollData.visibleData;
8337
- }
8338
- getData() {
8339
- if (!this.instance.virtualScroll || !this.scrollData.initialized) {
8340
- const groupColumns = !!this.instance.groupColumnNames.length;
8341
- if (groupColumns || (this.instance.showSummaryTotal && this.instance.summaryColumns.length)) {
8342
- return this.instance.groupedData;
8343
- }
8344
- return this.instance.datasource.data;
8345
- }
8346
- return this.renderedData;
8347
- }
8348
- rowClick(row, event) {
8349
- if (row.group || row.groupFooter || row.groupSummary) {
8350
- this.instance.groupRowClick(row, event, this.$el);
8351
- }
8352
- else {
8353
- this.instance.rowClick(row, event, this.$el);
8354
- }
8355
- }
8356
- orderHeaders(headers) {
8357
- return headers.sort((a, b) => {
8358
- if (a.fixed === b.fixed)
8359
- return 0;
8360
- if (!a.fixed && b.fixed)
8361
- return 1;
8362
- return -1;
8363
- }).filter((item) => item instanceof teknisaComponentsCommon.TekGridColumn);
8364
- }
8365
- updateFixedColumns() {
8366
- if (this.instance.columns.filter((column) => column.fixed).length === 0)
8367
- return;
8368
- if (!this.tableHeader) {
8369
- this.tableHeader = this.$el.querySelector('table thead tr');
8370
- this.tableBody = this.$el.querySelector('table tbody');
8371
- if (!this.tableHeader || !this.tableBody)
8372
- return;
8373
- }
8374
- const headerColumns = Array.from(this.tableHeader.querySelectorAll('th'));
8375
- let left = this.instance.selectable ? 40 : 0;
8376
- headerColumns.forEach((column) => {
8377
- const name = column.getAttribute('column-name');
8378
- if (name && column.classList.contains('zd-table-fixed-column')) {
8379
- column.style.left = `${left}px`;
8380
- this.$set(this.fixedLeft, name, column.style.left);
8381
- left += column.clientWidth;
8382
- }
8383
- });
8384
- }
8385
- isGroupSelected(item) {
8386
- return item.children.every((child) => {
8387
- const { uniqueKey } = this.instance.datasource;
8388
- const idx = this.instance.selectedRows.findIndex((row) => child[uniqueKey] === row[uniqueKey]);
8389
- return idx !== -1;
8390
- });
8391
- }
8392
- isGroupSelectIndeterminate(item) {
8393
- let hasSelected = false;
8394
- let hasNotSelected = false;
8395
- const { uniqueKey } = this.instance.datasource;
8396
- item.children.forEach((child) => {
8397
- const idx = this.instance.selectedRows.findIndex((row) => child[uniqueKey] === row[uniqueKey]);
8398
- hasSelected = hasSelected || idx !== -1;
8399
- hasNotSelected = hasNotSelected || idx === -1;
8400
- });
8401
- return hasSelected && hasNotSelected;
8402
- }
8403
- selectGroup(item, event) {
8404
- const { uniqueKey } = this.instance.datasource;
8405
- const isSelected = this.isGroupSelected(item);
8406
- if (!isSelected) {
8407
- item.children.forEach((child) => {
8408
- const idx = this.instance.selectedRows.findIndex((row) => child[uniqueKey] === row[uniqueKey]);
8409
- if (idx === -1) {
8410
- this.instance.selectedRows.push(child);
8411
- }
8412
- });
8413
- }
8414
- else {
8415
- this.instance.selectedRows = this.instance.selectedRows.filter((row) => {
8416
- const idx = item.children.findIndex((child) => child[uniqueKey] === row[uniqueKey]);
8417
- return idx === -1;
8418
- });
8419
- }
8420
- this.selectGroupRowClick(item, !isSelected, event);
8421
- }
8422
- selectGroupRowClick(row, isSelected, event) {
8423
- this.$nextTick(() => {
8424
- this.instance.selectGroupClick(row, isSelected, event, this.$el);
8425
- });
8426
- }
8427
- toggleSelectAll() {
8428
- if (this.instance.selectedRows.length === this.instance.datasource.data.length) {
8429
- this.instance.selectedRows = [];
8430
- }
8431
- else {
8432
- this.instance.selectedRows = this.instance.datasource.data;
8433
- }
8434
- }
8435
- get headers() {
8436
- this.$nextTick(() => {
8437
- if (this.$el)
8438
- this.updateFixedColumns();
8439
- });
8440
- return this.instance.columns;
8441
- }
8442
- getColumnsDOMOrder() {
8443
- return this.orderHeaders(this.instance.columns);
8444
- }
8445
- resizeMouseMoveHandler(event) {
8446
- this.superMethods(vuetify.ZdGrid).resizeMouseMoveHandler.call(this, event);
8447
- if (this.resizeColumn.fixed) {
8448
- this.$nextTick(this.updateFixedColumns);
8449
- }
8450
- }
8451
- };
8452
- __decorate([
8453
- vuetify.PropWatch({ type: [String], default: '' })
8454
- ], TekGrid$2.prototype, "title", void 0);
8455
- __decorate([
8456
- vuetify.PropWatch({ type: [Boolean, String], default: false })
8457
- ], TekGrid$2.prototype, "addButton", void 0);
8458
- __decorate([
8459
- vuetify.PropWatch({ type: [String], default: 'none' })
8460
- ], TekGrid$2.prototype, "deleteButton", void 0);
8461
- __decorate([
8462
- vuetify.PropWatch({ type: [Boolean, String], default: false })
8463
- ], TekGrid$2.prototype, "columnsButton", void 0);
8464
- __decorate([
8465
- vuePropertyDecorator.Prop({ type: [Array, String], default: () => [] })
8466
- ], TekGrid$2.prototype, "columnsButtonIgnore", void 0);
8467
- __decorate([
8468
- vuetify.PropWatch({ type: [Boolean, String], default: false })
8469
- ], TekGrid$2.prototype, "filterButton", void 0);
8470
- __decorate([
8471
- vuetify.PropWatch({ type: [Boolean, String], default: true })
8472
- ], TekGrid$2.prototype, "showSearch", void 0);
8473
- __decorate([
8474
- vuetify.PropWatch({ type: [Boolean, String], default: false })
8475
- ], TekGrid$2.prototype, "columnFilterButton", void 0);
8476
- __decorate([
8477
- vuePropertyDecorator.Prop({ type: [Array], default: () => [] })
8478
- ], TekGrid$2.prototype, "actions", void 0);
8479
- __decorate([
8480
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8481
- ], TekGrid$2.prototype, "dragColumns", void 0);
8482
- __decorate([
8483
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8484
- ], TekGrid$2.prototype, "resizeColumns", void 0);
8485
- __decorate([
8486
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8487
- ], TekGrid$2.prototype, "showLayoutOptions", void 0);
8488
- __decorate([
8489
- vuetify.PropWatch({ type: [String, Boolean], default: false })
8490
- ], TekGrid$2.prototype, "showExport", void 0);
8491
- __decorate([
8492
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8493
- ], TekGrid$2.prototype, "showReload", void 0);
8494
- __decorate([
8495
- vuetify.PropWatch({ type: [String, Array] })
8496
- ], TekGrid$2.prototype, "exportConfig", void 0);
8497
- __decorate([
8498
- vuePropertyDecorator.Prop({ type: [Array] })
8499
- ], TekGrid$2.prototype, "exportActions", void 0);
8500
- __decorate([
8501
- vuetify.PropWatch({ type: [String, Boolean], default: false })
8502
- ], TekGrid$2.prototype, "groupsOpened", void 0);
8503
- __decorate([
8504
- vuetify.PropWatch({ type: [String, Boolean], default: true })
8505
- ], TekGrid$2.prototype, "showSummaryTotal", void 0);
8506
- __decorate([
8507
- vuetify.PropWatch({ type: [String, Boolean], default: false })
8508
- ], TekGrid$2.prototype, "mainGrid", void 0);
8509
- __decorate([
8510
- vuePropertyDecorator.Prop({
8511
- type: Array,
8512
- default: () => undefined,
8513
- })
8514
- ], TekGrid$2.prototype, "toolbarSlot", void 0);
8515
- TekGrid$2 = __decorate([
8516
- vuePropertyDecorator.Component
8517
- ], TekGrid$2);
8518
- var TekGrid$3 = TekGrid$2;
8519
-
8520
- /**
8521
- * TekGrid Columns Button component
8522
- */
8523
- let TekGridColumnsButton = class TekGridColumnsButton extends vuetify.ZdIterableColumnsButton {
8524
- constructor() {
8525
- super(...arguments);
8526
- this.instanceType = teknisaComponentsCommon.TekGridColumnsButton;
8527
- this.menuIsOpened = false;
8528
- this.sortableInitialized = false;
8529
- }
8530
- menuOpenedChange() {
8531
- if (this.menuIsOpened && !this.sortableInitialized) {
8532
- this.sortableInitialized = true;
8533
- this.$nextTick(() => {
8534
- const columnsTableBody = document.querySelector(`#${this.instance.name}_columns_table tbody`);
8535
- if (columnsTableBody) {
8536
- sortable__default["default"].create(columnsTableBody, {
8537
- handle: '.sortHandle',
8538
- dragClass: 'tek-grid-columns-button-sortable-drag',
8539
- onEnd: this.sortEnd,
8540
- });
8541
- }
8542
- });
8543
- }
8544
- }
8545
- sortEnd(event) {
8546
- const grid = this.instance.iterableComponent;
8547
- const newOrder = Array.from(event.srcElement.querySelectorAll('tr')).map((row) => row.getAttribute('name'));
8548
- const groupColumnNames = [];
8549
- const newColumns = newOrder.map((columnName) => {
8550
- const column = grid.getColumn(columnName);
8551
- if (column.grouped) {
8552
- groupColumnNames.push(columnName);
8553
- }
8554
- return column;
8555
- });
8556
- const ignoredColumns = grid.columns.filter((column) => this.instance.ignoreColumns.indexOf(column.name) !== -1);
8557
- grid.columns = newColumns.concat(ignoredColumns);
8558
- if (JSON.stringify(groupColumnNames) !== JSON.stringify(grid.groupColumnNames)) {
8559
- grid.updateGrouping();
8560
- }
8561
- grid.changeLayout();
8562
- }
8563
- moreOptions() {
8564
- TekGridColumnsOptionsModal.show(this.instance);
8565
- }
8566
- close() {
8567
- this.menuIsOpened = false;
8568
- }
8569
- };
8570
- __decorate([
8571
- vuetify.PropWatch({ type: [Boolean, String], default: false })
8572
- ], TekGridColumnsButton.prototype, "hideGroups", void 0);
8573
- __decorate([
8574
- vuePropertyDecorator.Watch('menuIsOpened')
8575
- ], TekGridColumnsButton.prototype, "menuOpenedChange", null);
8576
- TekGridColumnsButton = __decorate([
8577
- vuePropertyDecorator.Component
8578
- ], TekGridColumnsButton);
8579
- var TekGridColumnsButton$1 = TekGridColumnsButton;
8580
-
8581
- /**
8582
- * TekGridLayoutOptions component
8583
- */
8584
- let TekGridLayoutOptions = class TekGridLayoutOptions extends vuetify.ZdComponentRender {
8585
- constructor() {
8586
- super(...arguments);
8587
- this.instanceType = teknisaComponentsCommon.TekGridLayoutOptions;
8588
- }
8589
- created() {
8590
- this.instance.viewApplyLayout = this.applyLayout;
8591
- }
8592
- confirmLayoutClick({ component }) {
8593
- const layoutName = component.value;
8594
- if (layoutName) {
8595
- const newLayout = this.getCurrentLayout(layoutName);
8596
- this.instance.newLayout(newLayout);
8597
- }
8598
- this.$refs.layoutMenu.isActive = false;
8599
- }
8600
- datasourceDynamicFilter(datasource) {
8601
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource)
8602
- return datasource.dynamicFilter;
8603
- return {};
8604
- }
8605
- applyLayout(layout) {
8606
- let groupParamsChanged = false;
8607
- const tableElement = this.getParentTable();
8608
- if (!tableElement)
8609
- return;
8610
- const { grid } = this.instance;
8611
- const gridColumns = {};
8612
- grid.columns.forEach((column) => {
8613
- gridColumns[column.name] = column;
8614
- });
8615
- const oldOrder = JSON.stringify(grid.datasource.order);
8616
- const oldFilter = JSON.stringify(grid.datasource.filter);
8617
- const oldDynamicFilter = JSON.stringify(this.datasourceDynamicFilter(grid.datasource));
8618
- if (layout) {
8619
- tableElement.style.width = layout.gridWidth || 'auto';
8620
- grid.datasource.order = layout.order !== undefined ? layout.order : grid.datasource.order;
8621
- grid.datasource.filter = layout.filter !== undefined ? layout.filter : grid.datasource.filter;
8622
- if (grid.datasource instanceof teknisaComponentsCommon.TekRestDatasource && layout.dynamicFilter !== undefined) {
8623
- grid.datasource.dynamicFilter = this.getHelperValues(layout.dynamicFilter, layout.columns || grid.columns);
8624
- }
8625
- if (layout.columns) {
8626
- grid.columns = layout.columns.map((column) => {
8627
- const col = gridColumns[column.name];
8628
- col.label = column.label !== undefined ? column.label : col.label;
8629
- col.align = column.align !== undefined ? column.align : col.align;
8630
- col.isVisible = column.isVisible !== undefined ? column.isVisible : col.isVisible;
8631
- col.fixed = !!column.fixed;
8632
- col.grouped = !!column.grouped;
8633
- col.groupOpened = !!column.groupOpened;
8634
- col.aggregation = column.aggregation;
8635
- col.minWidth = column.minWidth || '';
8636
- col.maxWidth = column.maxWidth || '';
8637
- this.setHelperValue(col, column.filterHelperValue || '');
8638
- return col;
8639
- });
8640
- // wait to change column orders
8641
- this.$nextTick(() => {
8642
- grid.columns.forEach((_column, index) => {
8643
- const columnElement = tableElement.querySelector(`tr th:not(.selectable)[index="${index}"]`);
8644
- if (columnElement) {
8645
- columnElement.style.width = layout.columns[index].width || 'unset';
8646
- }
8647
- });
8648
- });
8649
- }
8650
- }
8651
- else {
8652
- grid.datasource.order = [...this.instance.originalDatasourceOrder];
8653
- grid.datasource.filter = Object.assign({}, this.instance.originalDatasourceFilter);
8654
- if (grid.datasource instanceof teknisaComponentsCommon.TekRestDatasource) {
8655
- grid.datasource.dynamicFilter = this.getHelperValues(this.instance.originalDatasourceDynamicFilter, this.instance.originalColumnProps);
8656
- }
8657
- grid.columns = this.instance.originalColumnProps.map((column) => {
8658
- const col = gridColumns[column.name];
8659
- groupParamsChanged = groupParamsChanged
8660
- || col.grouped !== column.grouped
8661
- || col.groupOpened !== column.groupOpened
8662
- || col.aggregation !== column.aggregation;
8663
- col.isVisible = column.isVisible;
8664
- col.label = column.label;
8665
- col.align = column.align;
8666
- col.fixed = column.fixed;
8667
- col.grouped = column.grouped;
8668
- col.groupOpened = column.groupOpened;
8669
- col.aggregation = column.aggregation;
8670
- col.minWidth = column.minWidth || '';
8671
- col.maxWidth = column.maxWidth || '';
8672
- this.setHelperValue(col, column.filterHelperValue || '');
8673
- return col;
8674
- });
8675
- tableElement.style.width = '100%';
8676
- const columnElements = Array.from(tableElement.querySelectorAll('tr th:not(.selectable)'));
8677
- columnElements.forEach((item) => {
8678
- item.style.width = 'unset';
8679
- });
8680
- }
8681
- if ((JSON.stringify(grid.datasource.order) !== oldOrder
8682
- || JSON.stringify(grid.datasource.filter) !== oldFilter
8683
- || JSON.stringify(this.datasourceDynamicFilter(grid.datasource)) !== oldDynamicFilter)
8684
- && !groupParamsChanged) { // Se os parametros de agrupamento tiverem sido alterados um get é feito automaticamente
8685
- grid.datasource.get();
8686
- }
8687
- this.$refs.layoutMenu.isActive = false;
8688
- }
8689
- setHelperValue(column, value) {
8690
- if (column instanceof teknisaComponentsCommon.TekGridColumn) {
8691
- if (!Array.isArray(column.filterProps) && typeof value === 'string') {
8692
- column.filterProps.helperValue = value;
8693
- }
8694
- else if (Array.isArray(column.filterProps) && Array.isArray(value)) {
8695
- column.filterProps.forEach((prop, index) => {
8696
- prop.value = value[index];
8697
- });
8698
- }
8699
- }
8700
- }
8701
- getHelperValues(dynamicFilter, columns) {
8702
- const filter = cloneDeep__default["default"](dynamicFilter);
8703
- Object.keys(filter).forEach((columnName) => {
8704
- const filterOptions = filter[columnName];
8705
- const column = columns[columns.findIndex((col) => col.name === columnName)];
8706
- const { filterHelperValue } = column;
8707
- filterOptions.forEach((item) => {
8708
- if (['IN', 'NOT_IN', 'BETWEEN'].includes(item.operation) && !Array.isArray(item.value)) {
8709
- item.value = item.value.split(';');
8710
- }
8711
- let helperValue = '';
8712
- if (!Array.isArray(filterHelperValue)) {
8713
- helperValue = filterHelperValue;
8714
- }
8715
- else {
8716
- Object.keys(filterHelperValue).forEach((key) => {
8717
- const value = filterHelperValue[key] || '';
8718
- if (`${item.relation || 'AND'}-${item.operation || 'CONTAINS'}` === key) {
8719
- helperValue = value;
8720
- }
8721
- });
8722
- }
8723
- if (helperValue) {
8724
- const columnObj = this.instance.grid.getColumn(column.name);
8725
- item.value = teknisaComponentsCommon.TekFilterHelper.getValue(helperValue, columnObj);
8726
- }
8727
- });
8728
- });
8729
- return filter;
8730
- }
8731
- getCurrentLayout(layoutName) {
8732
- const { grid } = this.instance;
8733
- const tableElement = this.getParentTable();
8734
- const gridWidth = tableElement ? window.getComputedStyle(tableElement).width : 'auto';
8735
- return {
8736
- name: layoutName,
8737
- gridWidth,
8738
- order: grid.datasource.order,
8739
- filter: grid.datasource.filter,
8740
- dynamicFilter: this.datasourceDynamicFilter(grid.datasource),
8741
- columns: grid.columns.map((column, index) => {
8742
- const columnElement = tableElement === null || tableElement === void 0 ? void 0 : tableElement.querySelector(`tr th:not(.selectable)[index="${index}"]`);
8743
- return {
8744
- name: column.name,
8745
- label: column.label,
8746
- align: column.align,
8747
- width: columnElement ? window.getComputedStyle(columnElement).width : 'unset',
8748
- minWidth: column.minWidth,
8749
- maxWidth: column.maxWidth,
8750
- isVisible: column.isVisible,
8751
- fixed: column.fixed,
8752
- grouped: column.grouped,
8753
- groupOpened: column.groupOpened,
8754
- aggregation: column.aggregation,
8755
- filterHelperValue: this.instance.getHelperValue(column),
8756
- };
8757
- }),
8758
- };
8759
- }
8760
- getParentTable() {
8761
- var _a;
8762
- return (_a = this.$el.closest('.zd-grid')) === null || _a === void 0 ? void 0 : _a.getElementsByTagName('table')[0];
8763
- }
8764
- updateLayout(event, layoutName) {
8765
- this.instance.updateLayout(layoutName, this.getCurrentLayout(layoutName));
8766
- event.stopImmediatePropagation();
8767
- this.$refs.layoutMenu.isActive = false;
8768
- }
8769
- deleteLayout(event, layoutName) {
8770
- this.instance.deleteLayout(layoutName);
8771
- event.stopImmediatePropagation();
8772
- }
8773
- };
8774
- TekGridLayoutOptions = __decorate([
8775
- vuePropertyDecorator.Component
8776
- ], TekGridLayoutOptions);
8777
- var TekGridLayoutOptions$1 = TekGridLayoutOptions;
8778
-
8779
- /**
8780
- * DocTable component
8781
- */
8782
- let TekImage = class TekImage extends vuetify.ZdComponent {
8783
- constructor() {
8784
- super(...arguments);
8785
- this.instanceType = teknisaComponentsCommon.Image;
8786
- }
8787
- };
8788
- __decorate([
8789
- vuetify.PropWatch({ type: String, default: '' })
8790
- ], TekImage.prototype, "to", void 0);
8791
- __decorate([
8792
- vuetify.PropWatch({ type: String, default: '' })
8793
- ], TekImage.prototype, "src", void 0);
8794
- TekImage = __decorate([
8795
- vuePropertyDecorator.Component
8796
- ], TekImage);
8797
- var TekImage$1 = TekImage;
8798
-
8799
- /**
8800
- * TekIterableComponentRender component
8801
- */
8802
- let TekIterableComponentRender = class TekIterableComponentRender extends vuetify.ZdIterable {
8803
- constructor() {
8804
- super(...arguments);
8805
- this.instanceType = teknisaComponentsCommon.IterableComponentRender;
8806
- }
8807
- };
8808
- __decorate([
8809
- vuePropertyDecorator.Prop({ type: Array, default: () => [] })
8810
- ], TekIterableComponentRender.prototype, "footerSlot", void 0);
8811
- __decorate([
8812
- vuePropertyDecorator.Prop({ type: Array, default: () => [] })
8813
- ], TekIterableComponentRender.prototype, "toolbarSlot", void 0);
8814
- __decorate([
8815
- vuePropertyDecorator.Prop({ type: [Object, String] })
8816
- ], TekIterableComponentRender.prototype, "componentMetadata", void 0);
8817
- __decorate([
8818
- vuetify.PropWatch({ type: String, default: 'row' })
8819
- ], TekIterableComponentRender.prototype, "rowPropName", void 0);
8820
- __decorate([
8821
- vuePropertyDecorator.Prop({ type: Array, default: () => ([]) })
8822
- ], TekIterableComponentRender.prototype, "errorSlot", void 0);
8823
- __decorate([
8824
- vuePropertyDecorator.Prop({
8825
- type: Array,
8826
- default: () => ([
8827
- {
8828
- name: '<<NAME>>_no-data',
8829
- component: 'ZdText',
8830
- cssClass: 'no-data',
8831
- text: 'NO_DATA',
8832
- },
8833
- ]),
8834
- })
8835
- ], TekIterableComponentRender.prototype, "noDataSlot", void 0);
8836
- __decorate([
8837
- vuePropertyDecorator.Prop({
8838
- type: Array,
8839
- default: () => ([
8840
- {
8841
- name: '<<NAME>>_no-result',
8842
- component: 'ZdText',
8843
- cssClass: 'no-result',
8844
- text: 'NO_RESULT',
8845
- },
8846
- ]),
8847
- })
8848
- ], TekIterableComponentRender.prototype, "noResultSlot", void 0);
8849
- __decorate([
8850
- vuetify.PropWatch({ type: [Number, String], default: 'auto' })
8851
- ], TekIterableComponentRender.prototype, "height", void 0);
8852
- __decorate([
8853
- vuetify.PropWatch({ type: [Number, String], default: 'none' })
8854
- ], TekIterableComponentRender.prototype, "maxHeight", void 0);
8855
- __decorate([
8856
- vuetify.PropWatch({ type: [Number, String], default: 'none' })
8857
- ], TekIterableComponentRender.prototype, "minHeight", void 0);
8858
- TekIterableComponentRender = __decorate([
8859
- vuePropertyDecorator.Component
8860
- ], TekIterableComponentRender);
8861
- var TekIterableComponentRender$1 = TekIterableComponentRender;
8862
-
8863
- /**
8864
- * Product card component
8865
- */
8866
- let TekProductCard = class TekProductCard extends vuetify.ZdComponentRender {
8867
- constructor() {
8868
- super(...arguments);
8869
- this.instanceType = teknisaComponentsCommon.ProductCard;
8870
- this.disableTooltip = true;
8871
- }
8872
- mounted() {
8873
- const element = this.$refs.productDiv;
8874
- setTimeout(() => {
8875
- this.disableTooltip = !element || element.scrollWidth === element.clientWidth;
8876
- }, 100);
8877
- }
8878
- };
8879
- __decorate([
8880
- vuetify.PropWatch({ type: String, default: '' })
8881
- ], TekProductCard.prototype, "id", void 0);
8882
- __decorate([
8883
- vuetify.PropWatch({ type: String, default: '' })
8884
- ], TekProductCard.prototype, "to", void 0);
8885
- __decorate([
8886
- vuetify.PropWatch({ type: String, default: '' })
8887
- ], TekProductCard.prototype, "src", void 0);
8888
- __decorate([
8889
- vuetify.PropWatch({ type: String, default: '' })
8890
- ], TekProductCard.prototype, "errorImagePath", void 0);
8891
- __decorate([
8892
- vuetify.PropWatch({ type: String, default: 'UNAVAILABLE_IMAGE' })
8893
- ], TekProductCard.prototype, "errorImageText", void 0);
8894
- __decorate([
8895
- vuetify.PropWatch({ type: String, default: '' })
8896
- ], TekProductCard.prototype, "productName", void 0);
8897
- __decorate([
8898
- vuetify.PropWatch({ type: String })
8899
- ], TekProductCard.prototype, "productSupplier", void 0);
8900
- __decorate([
8901
- vuetify.PropWatch({ type: String })
8902
- ], TekProductCard.prototype, "productBrand", void 0);
8903
- __decorate([
8904
- vuetify.PropWatch({ type: [String, Number] })
8905
- ], TekProductCard.prototype, "productPrice", void 0);
8906
- __decorate([
8907
- vuetify.PropWatch({ type: String, default: '' })
8908
- ], TekProductCard.prototype, "width", void 0);
8909
- __decorate([
8910
- vuetify.PropWatch({ type: [Number, String], default: 'auto' })
8911
- ], TekProductCard.prototype, "height", void 0);
8912
- __decorate([
8913
- vuetify.PropWatch({ type: [Number, String], default: 'none' })
8914
- ], TekProductCard.prototype, "maxHeight", void 0);
8915
- __decorate([
8916
- vuetify.PropWatch({ type: [Number, String], default: 'none' })
8917
- ], TekProductCard.prototype, "minHeight", void 0);
8918
- TekProductCard = __decorate([
8919
- vuePropertyDecorator.Component
8920
- ], TekProductCard);
8921
- var TekProductCard$1 = TekProductCard;
8922
-
8923
- // eslint-disable-next-line prefer-destructuring
8924
- const ZdTreeGridEditable = vuetify.components.ZdTreeGridEditable;
8925
- /**
8926
- * TekGrid component
8927
- */
8928
- let TekGrid = class TekGrid extends ZdTreeGridEditable {
8929
- constructor() {
8930
- super(...arguments);
8931
- this.instanceType = teknisaComponentsCommon.TekTreeGrid;
8932
- this.debouncedDatasourceGet = debounce__default["default"]((instance) => {
8933
- if (instance.events.beforeApplyFilter) {
8934
- instance.events.beforeApplyFilter({ component: instance });
8935
- }
8936
- const { datasource } = instance;
8937
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
8938
- datasource.updateDynamicFilter();
8939
- }
8940
- else {
8941
- datasource.get();
8942
- }
8943
- }, 500);
8944
- this.operationList = '';
8945
- this.defaultOperation = '';
8946
- this.defaultRelation = '';
8947
- this.lastFilter = '';
8948
- this.tableHeader = null;
8949
- this.tableBody = null;
8950
- }
8951
- mounted() {
8952
- this.originalChangeLayout = this.instance.changeLayout;
8953
- this.instance.changeLayout = this.onChangeLayout;
8954
- this.updateFixedColumns();
8955
- }
8956
- minimumColumnWidth(column) {
8957
- let minWidth = column && column.sortable ? 50 : 34;
8958
- if (this.instance.columnFilterButton && column && column.filterable) {
8959
- minWidth += 15;
8960
- }
8961
- return minWidth;
8962
- }
8963
- onChangeLayout(event, element) {
8964
- if (this.originalChangeLayout) {
8965
- this.originalChangeLayout.call(this.instance, event, element);
8966
- }
8967
- if (this.instance.showLayoutOptions) {
8968
- try {
8969
- const layoutOptions = core.Metadata.getInstance(`${this.instance.name}_layout_options`);
8970
- layoutOptions.layoutEdited = true;
8971
- }
8972
- catch (_a) {
8973
- // do nothing
8974
- }
8975
- }
8976
- this.updateFixedColumns();
8977
- }
8978
- getFilterActivatorEvents(on, column) {
8979
- const events = {};
8980
- Object.keys(on).forEach((eventName) => {
8981
- events[eventName] = (event) => {
8982
- this.defaultOperation = 'CONTAINS';
8983
- this.defaultRelation = 'AND';
8984
- this.operationList = this.getColumnFilterOptions(column).map((item) => item.operation).join(';');
8985
- on[eventName](event);
8986
- };
8987
- });
8988
- return events;
8989
- }
8990
- getFilterItemChange(prop, column, index) {
8991
- return this.filterItemChange.bind(this, prop, column, index);
8992
- }
8993
- getFilterValueChange(column, index) {
8994
- return debounce__default["default"](this.filterValueChange.bind(this, column, index), 1000);
8995
- }
8996
- isOperationArrayValues(operation) {
8997
- return ['IN', 'NOT_IN', 'BETWEEN'].includes(operation);
8998
- }
8999
- getComponentType(index) {
9000
- const operationListArray = this.operationList.split(';');
9001
- return this.isOperationArrayValues(operationListArray[index]) ? 'ZdTextInput' : '';
9002
- }
9003
- getComponentHint(index) {
9004
- const operationListArray = this.operationList.split(';');
9005
- return this.isOperationArrayValues(operationListArray[index]) ? 'TEKGRID_MULTIPLE_VALUE_HINT' : '';
9006
- }
9007
- filterItemChange(prop, column, index, { component, event, element }) {
9008
- const { name } = component;
9009
- const valueInputName = name.replace(`-filter-${prop}-`, '-filter-value-');
9010
- const valueInput = core.Metadata.getInstance(valueInputName);
9011
- const operationListArray = this.operationList.split(';');
9012
- if (prop === 'operation' && operationListArray[index] !== component.value) {
9013
- operationListArray[index] = component.value;
9014
- this.operationList = operationListArray.join(';');
9015
- }
9016
- try {
9017
- valueInput.setFocus();
9018
- }
9019
- catch (_a) {
9020
- // do nothing
9021
- }
9022
- const { datasource } = this.instance;
9023
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
9024
- if (datasource.dynamicFilter[column.name] && datasource.dynamicFilter[column.name][index]) {
9025
- this.lastFilter = JSON.stringify(datasource.dynamicFilter);
9026
- const { value } = datasource.dynamicFilter[column.name][index];
9027
- if (prop === 'operation') {
9028
- if (this.isOperationArrayValues(component.value) && !Array.isArray(value)) {
9029
- datasource.dynamicFilter[column.name][index].value = [value];
9030
- }
9031
- if (!this.isOperationArrayValues(component.value) && Array.isArray(value)) {
9032
- [datasource.dynamicFilter[column.name][index].value] = value;
9033
- }
9034
- }
9035
- datasource.dynamicFilter[column.name][index][prop] = component.value;
9036
- if (this.lastFilter !== JSON.stringify(datasource.dynamicFilter)) {
9037
- this.debouncedDatasourceGet(this.instance);
9038
- this.onChangeLayout(event, element);
9039
- }
9040
- }
9041
- }
9042
- }
9043
- convertToDateFormat(column, value, revert) {
9044
- const dateFormat = column.componentProps.dateFormat || core.Config.dateFormat;
9045
- const displayFormat = column.componentProps.displayFormat || core.Config.displayFormat;
9046
- if (revert) {
9047
- if (core.dayjs(value, displayFormat).isValid() || !core.dayjs(value, dateFormat).isValid()) {
9048
- return value;
9049
- }
9050
- return core.dayjs(value, dateFormat).format(displayFormat);
9051
- }
9052
- if (core.dayjs(value, dateFormat).isValid() || !core.dayjs(value, displayFormat).isValid()) {
9053
- return value;
9054
- }
9055
- return core.dayjs(value, displayFormat).format(dateFormat);
9056
- }
9057
- checkDateValueFormat(column, value, revert = false) {
9058
- if (['ZdDate', 'ZdDateRange'].includes(column.componentProps.component)) {
9059
- if (Array.isArray(value)) {
9060
- return value.map((item) => this.convertToDateFormat(column, item, revert));
9061
- }
9062
- return this.convertToDateFormat(column, value, revert);
9063
- }
9064
- return value;
9065
- }
9066
- filterValueChange(column, index, { component, event, element }) {
9067
- let { value } = component;
9068
- const { datasource } = this.instance;
9069
- if (!(element === null || element === void 0 ? void 0 : element.offsetParent))
9070
- return;
9071
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
9072
- this.lastFilter = JSON.stringify(datasource.dynamicFilter);
9073
- if (value) {
9074
- if (!datasource.dynamicFilter[column.name]) {
9075
- datasource.dynamicFilter[column.name] = [];
9076
- }
9077
- if (!datasource.dynamicFilter[column.name][index]) {
9078
- const { name } = component;
9079
- let relation;
9080
- if (index > 0) {
9081
- const relationSelectName = name.replace('-filter-value-', '-filter-relation-');
9082
- const relationSelect = core.Metadata.getInstance(relationSelectName);
9083
- relation = relationSelect.value;
9084
- }
9085
- else {
9086
- relation = 'AND';
9087
- }
9088
- const operationSelectName = name.replace('-filter-value-', '-filter-operation-');
9089
- const operationSelect = core.Metadata.getInstance(operationSelectName);
9090
- const operation = operationSelect.value;
9091
- if (this.isOperationArrayValues(operation)) {
9092
- value = value.split(';');
9093
- }
9094
- value = this.checkDateValueFormat(column, value);
9095
- datasource.dynamicFilter[column.name].push({
9096
- relation,
9097
- operation,
9098
- value,
9099
- });
9100
- }
9101
- else {
9102
- if (this.isOperationArrayValues(datasource.dynamicFilter[column.name][index].operation)) {
9103
- value = value.split(';');
9104
- }
9105
- value = this.checkDateValueFormat(column, value);
9106
- datasource.dynamicFilter[column.name][index].value = value;
9107
- }
9108
- }
9109
- else if (datasource.dynamicFilter[column.name] && datasource.dynamicFilter[column.name][index]) {
9110
- this.defaultOperation = datasource.dynamicFilter[column.name][index].operation;
9111
- this.defaultRelation = datasource.dynamicFilter[column.name][index].relation;
9112
- datasource.dynamicFilter[column.name].splice(index, 1);
9113
- if (datasource.dynamicFilter[column.name].length === 1) {
9114
- datasource.dynamicFilter[column.name][0].relation = 'AND';
9115
- }
9116
- if (!datasource.dynamicFilter[column.name].length) {
9117
- delete datasource.dynamicFilter[column.name];
9118
- }
9119
- }
9120
- if (this.lastFilter !== JSON.stringify(datasource.dynamicFilter)) {
9121
- this.debouncedDatasourceGet(this.instance);
9122
- this.onChangeLayout(event, element);
9123
- this.clearHelperValues(column);
9124
- }
9125
- }
9126
- else {
9127
- this.lastFilter = JSON.stringify(this.instance.datasource.filter);
9128
- if (value) {
9129
- this.instance.datasource.addFilter(column.name, value);
9130
- }
9131
- else {
9132
- this.instance.datasource.removeFilter(column.name);
9133
- }
9134
- if (this.lastFilter !== JSON.stringify(this.instance.datasource.filter)) {
9135
- this.debouncedDatasourceGet(this.instance);
9136
- this.onChangeLayout(event, element);
9137
- this.clearHelperValues(column);
9138
- }
9139
- }
9140
- }
9141
- clearHelperValues(column) {
9142
- if (!Array.isArray(column.filterProps)) {
9143
- column.filterProps.helperValue = '';
9144
- }
9145
- else {
9146
- column.filterProps.forEach((prop) => {
9147
- prop.helperValue = '';
9148
- });
9149
- }
9150
- }
9151
- getColumnFilterOptions(column) {
9152
- const filterOptions = [];
9153
- const { datasource } = this.instance;
9154
- if (datasource instanceof teknisaComponentsCommon.TekRestDatasource || datasource instanceof teknisaComponentsCommon.TekMemoryDatasource) {
9155
- const dynamicFilter = datasource.dynamicFilter[column.name];
9156
- if (dynamicFilter && dynamicFilter.length > 0) {
9157
- dynamicFilter.forEach((item) => {
9158
- let { value } = item;
9159
- if (this.isOperationArrayValues(item.operation) && Array.isArray(value)) {
9160
- value = this.checkDateValueFormat(column, value, true);
9161
- value = value.join(';');
9162
- }
9163
- filterOptions.push(Object.assign(Object.assign({}, item), { value }));
9164
- });
9165
- }
9166
- filterOptions.push({
9167
- operation: this.defaultOperation,
9168
- relation: this.defaultRelation,
9169
- value: '',
9170
- });
9171
- }
9172
- else {
9173
- const option = {
9174
- operation: undefined,
9175
- relation: undefined,
9176
- value: this.instance.datasource.filter[column.name] || '',
9177
- };
9178
- filterOptions.push(option);
9179
- }
9180
- return filterOptions;
9181
- }
9182
- isCurrentRow(row) {
9183
- const { uniqueKey, currentRow } = this.instance.datasource;
9184
- return !!((row[uniqueKey] && row[uniqueKey] === currentRow[uniqueKey]));
9185
- }
9186
- getVisibleData() {
9187
- this.scrollData.visibleData = this.instance.datasource.data;
9188
- return this.scrollData.visibleData;
9189
- }
9190
- getData() {
9191
- if (!this.instance.virtualScroll || !this.scrollData.initialized) {
9192
- return this.instance.treeDataStructure.searchHasNoData ? [] : this.instance.treeDataStructure.treeData;
9193
- }
9194
- return this.renderedData;
9195
- }
9196
- rowClick(row, event) {
9197
- this.instance.rowClick(row, event, this.$el);
9198
- }
9199
- orderHeaders(headers) {
9200
- return headers.sort((a, b) => {
9201
- if (a.fixed === b.fixed)
9202
- return 0;
9203
- if (!a.fixed && b.fixed)
9204
- return 1;
9205
- return -1;
9206
- }).filter((item) => item instanceof teknisaComponentsCommon.TekGridColumn);
9207
- }
9208
- updateFixedColumns() {
9209
- if (this.instance.columns.filter((column) => column.fixed).length === 0)
9210
- return;
9211
- if (!this.tableHeader) {
9212
- this.tableHeader = this.$el.querySelector('table thead tr');
9213
- this.tableBody = this.$el.querySelector('table tbody');
9214
- if (!this.tableHeader || !this.tableBody)
9215
- return;
9216
- }
9217
- const headerColumns = Array.from(this.tableHeader.querySelectorAll('th'));
9218
- let left = this.instance.selectable ? 40 : 0;
9219
- headerColumns.forEach((column) => {
9220
- const name = column.getAttribute('column-name');
9221
- if (name && column.classList.contains('zd-table-fixed-column')) {
9222
- column.style.left = `${left}px`;
9223
- left += column.clientWidth;
9224
- }
9225
- });
9226
- }
9227
- getFixedLeft(column) {
9228
- if (!column.fixed)
9229
- return 'unset';
9230
- const headerElement = this.$refs[`column-${column.name}`];
9231
- if (!headerElement)
9232
- return 'unset';
9233
- return headerElement[0].style.left;
9234
- }
9235
- };
9236
- __decorate([
9237
- vuetify.PropWatch({ type: [String], default: '' })
9238
- ], TekGrid.prototype, "title", void 0);
9239
- __decorate([
9240
- vuetify.PropWatch({ type: [Boolean, String], default: false })
9241
- ], TekGrid.prototype, "addButton", void 0);
9242
- __decorate([
9243
- vuetify.PropWatch({ type: [String], default: 'none' })
9244
- ], TekGrid.prototype, "deleteButton", void 0);
9245
- __decorate([
9246
- vuetify.PropWatch({ type: [Boolean, String], default: false })
9247
- ], TekGrid.prototype, "columnsButton", void 0);
9248
- __decorate([
9249
- vuePropertyDecorator.Prop({ type: [Array, String], default: () => [] })
9250
- ], TekGrid.prototype, "columnsButtonIgnore", void 0);
9251
- __decorate([
9252
- vuetify.PropWatch({ type: [Boolean, String], default: false })
9253
- ], TekGrid.prototype, "filterButton", void 0);
9254
- __decorate([
9255
- vuetify.PropWatch({ type: [Boolean, String], default: true })
9256
- ], TekGrid.prototype, "showSearch", void 0);
9257
- __decorate([
9258
- vuetify.PropWatch({ type: [Boolean, String], default: false })
9259
- ], TekGrid.prototype, "columnFilterButton", void 0);
9260
- __decorate([
9261
- vuePropertyDecorator.Prop({ type: [Array], default: () => [] })
9262
- ], TekGrid.prototype, "actions", void 0);
9263
- __decorate([
9264
- vuetify.PropWatch({ type: [String, Boolean], default: true })
9265
- ], TekGrid.prototype, "dragColumns", void 0);
9266
- __decorate([
9267
- vuetify.PropWatch({ type: [String, Boolean], default: true })
9268
- ], TekGrid.prototype, "resizeColumns", void 0);
9269
- __decorate([
9270
- vuetify.PropWatch({ type: [String, Boolean], default: true })
9271
- ], TekGrid.prototype, "showLayoutOptions", void 0);
9272
- __decorate([
9273
- vuetify.PropWatch({ type: [String, Boolean], default: false })
9274
- ], TekGrid.prototype, "showExport", void 0);
9275
- __decorate([
9276
- vuetify.PropWatch({ type: [String, Boolean], default: true })
9277
- ], TekGrid.prototype, "showReload", void 0);
9278
- __decorate([
9279
- vuePropertyDecorator.Prop({ type: [String, Array] })
9280
- ], TekGrid.prototype, "exportConfig", void 0);
9281
- __decorate([
9282
- vuePropertyDecorator.Prop({ type: [Array] })
9283
- ], TekGrid.prototype, "exportActions", void 0);
9284
- __decorate([
9285
- vuePropertyDecorator.Prop({
9286
- type: Array,
9287
- default: () => undefined,
9288
- })
9289
- ], TekGrid.prototype, "toolbarSlot", void 0);
9290
- TekGrid = __decorate([
9291
- vuePropertyDecorator.Component
9292
- ], TekGrid);
9293
- var TekGrid$1 = TekGrid;
9294
-
9295
- let TekUserInfo = class TekUserInfo extends zdUserInfoVue.ZdUserInfo {
9296
- constructor() {
9297
- super(...arguments);
9298
- this.instanceType = teknisaComponentsCommon.TekUserInfo;
9299
- }
9300
- };
9301
- __decorate([
9302
- vuetify.PropWatch({ type: [String], default: '' })
9303
- ], TekUserInfo.prototype, "aboutImage", void 0);
9304
- __decorate([
9305
- vuetify.PropWatch({ type: [String], default: '' })
9306
- ], TekUserInfo.prototype, "defaultEmail", void 0);
9307
- __decorate([
9308
- vuetify.PropWatch({ type: [Object, String], default: null })
9309
- ], TekUserInfo.prototype, "versionInfo", void 0);
9310
- __decorate([
9311
- vuetify.PropWatch({ type: [String], default: '' })
9312
- ], TekUserInfo.prototype, "versionUrl", void 0);
9313
- __decorate([
9314
- vuePropertyDecorator.Prop({ type: [Array], default: undefined })
9315
- ], TekUserInfo.prototype, "bottomSlot", void 0);
9316
- TekUserInfo = __decorate([
9317
- vuePropertyDecorator.Component
9318
- ], TekUserInfo);
9319
- var TekUserInfo$1 = TekUserInfo;
9320
-
9321
- // eslint-disable-next-line prefer-destructuring
9322
- const ZdList = vuetify.components.ZdList;
9323
- let TekUserInfoList = class TekUserInfoList extends ZdList {
9324
- constructor() {
9325
- super(...arguments);
9326
- this.instanceType = teknisaComponentsCommon.TekUserInfoList;
9327
- }
9328
- };
9329
- __decorate([
9330
- vuetify.PropWatch({ type: [String], default: '' })
9331
- ], TekUserInfoList.prototype, "parentName", void 0);
9332
- __decorate([
9333
- vuetify.PropWatch({ type: [Boolean, String], default: true })
9334
- ], TekUserInfoList.prototype, "dense", void 0);
9335
- TekUserInfoList = __decorate([
9336
- vuePropertyDecorator.Component
9337
- ], TekUserInfoList);
9338
- var TekUserInfoList$1 = TekUserInfoList;
9339
-
9340
7898
  common.Icons.addIcons({
9341
7899
  add: 'mdi-plus-box',
9342
7900
  delete: 'mdi-trash-can-outline',
@@ -9358,22 +7916,22 @@
9358
7916
  const packageContent = require('../package.json');
9359
7917
  core.VersionService.addPackageVersion(packageContent.name, packageContent.version);
9360
7918
 
9361
- exports.TekBreadcrumbHeader = TekBreadcrumbHeader$1;
9362
- exports.TekCardTitle = TekCardTitle$1;
9363
- exports.TekCrudAddButton = TekCrudAddButton$1;
9364
- exports.TekCrudCancelButton = TekCrudCancelButton$1;
9365
- exports.TekCrudDeleteButton = TekCrudDeleteButton$1;
9366
- exports.TekCrudForm = TekCrudForm$1;
9367
- exports.TekCrudSaveButton = TekCrudSaveButton$1;
9368
- exports.TekGrid = TekGrid$3;
9369
- exports.TekGridColumnsButton = TekGridColumnsButton$1;
9370
- exports.TekGridLayoutOptions = TekGridLayoutOptions$1;
9371
- exports.TekImage = TekImage$1;
9372
- exports.TekIterableComponentRender = TekIterableComponentRender$1;
9373
- exports.TekProductCard = TekProductCard$1;
9374
- exports.TekTreeGrid = TekGrid$1;
9375
- exports.TekUserInfo = TekUserInfo$1;
9376
- exports.TekUserInfoList = TekUserInfoList$1;
7919
+ exports.TekBreadcrumbHeader = script$i;
7920
+ exports.TekCardTitle = script$h;
7921
+ exports.TekCrudAddButton = script$g;
7922
+ exports.TekCrudCancelButton = script$f;
7923
+ exports.TekCrudDeleteButton = script$e;
7924
+ exports.TekCrudForm = script$d;
7925
+ exports.TekCrudSaveButton = script$c;
7926
+ exports.TekGrid = script$b;
7927
+ exports.TekGridColumnsButton = script$a;
7928
+ exports.TekGridLayoutOptions = script$9;
7929
+ exports.TekImage = script$8;
7930
+ exports.TekIterableComponentRender = script$6;
7931
+ exports.TekProductCard = script$3;
7932
+ exports.TekTreeGrid = script$2;
7933
+ exports.TekUserInfo = script$1;
7934
+ exports.TekUserInfoList = script;
9377
7935
  exports["default"] = TeknisaComponents;
9378
7936
 
9379
7937
  Object.defineProperty(exports, '__esModule', { value: true });