@sankhyalabs/ezui 7.1.0-dev.2 → 7.1.0-dev.20

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 (117) hide show
  1. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  2. package/dist/cjs/ez-combo-box-list_4.cjs.entry.js +1 -1
  3. package/dist/cjs/ez-date-input.cjs.entry.js +10 -3
  4. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-form-view.cjs.entry.js +3 -2
  6. package/dist/cjs/ez-form.cjs.entry.js +13 -3
  7. package/dist/cjs/ez-grid.cjs.entry.js +7 -3
  8. package/dist/cjs/ez-modal-container.cjs.entry.js +15 -16
  9. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-number-input.cjs.entry.js +2 -0
  11. package/dist/cjs/ez-popup.cjs.entry.js +19 -7
  12. package/dist/cjs/ez-search-plus.cjs.entry.js +16 -2
  13. package/dist/cjs/ez-search.cjs.entry.js +28 -24
  14. package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  16. package/dist/cjs/ez-tooltip.cjs.entry.js +13 -2
  17. package/dist/cjs/ez-tree.cjs.entry.js +154 -7
  18. package/dist/cjs/ezui.cjs.js +1 -1
  19. package/dist/cjs/loader.cjs.js +1 -1
  20. package/dist/cjs/{purify-47a2f27b.js → purify-b30a5718.js} +41 -12
  21. package/dist/cjs/{search-column-9aa090ec.js → search-column-8bfee733.js} +1 -1
  22. package/dist/collection/components/ez-chip/ez-chip.css +3 -0
  23. package/dist/collection/components/ez-date-input/ez-date-input.js +28 -3
  24. package/dist/collection/components/ez-dialog/ez-dialog.css +6 -1
  25. package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js +1 -1
  26. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +3 -1
  27. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +5 -1
  28. package/dist/collection/components/ez-modal/ez-modal.css +3 -0
  29. package/dist/collection/components/ez-modal-container/ez-modal-container.css +4 -9
  30. package/dist/collection/components/ez-modal-container/ez-modal-container.js +32 -15
  31. package/dist/collection/components/ez-number-input/ez-number-input.js +16 -0
  32. package/dist/collection/components/ez-popup/ez-popup.css +9 -4
  33. package/dist/collection/components/ez-popup/ez-popup.js +24 -7
  34. package/dist/collection/components/ez-search/ez-search.js +41 -19
  35. package/dist/collection/components/ez-search-plus/ez-search-plus.js +16 -2
  36. package/dist/collection/components/ez-split-button/ez-split-button.css +7 -2
  37. package/dist/collection/components/ez-text-input/ez-text-input.css +3 -3
  38. package/dist/collection/components/ez-tooltip/ez-tooltip.js +13 -2
  39. package/dist/collection/components/ez-tree/ez-tree.css +4 -0
  40. package/dist/collection/components/ez-tree/ez-tree.js +185 -6
  41. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +4 -1
  42. package/dist/collection/components/ez-tree/types/Node.js +7 -0
  43. package/dist/collection/components/ez-tree/types/Tree.js +19 -0
  44. package/dist/collection/components/ez-tree/types/UpdateItemConfig.js +1 -0
  45. package/dist/collection/utils/form/DataBinder.js +1 -1
  46. package/dist/collection/utils/form/FormMetadata.js +12 -2
  47. package/dist/custom-elements/index.js +337 -97
  48. package/dist/esm/ez-chip.entry.js +1 -1
  49. package/dist/esm/ez-combo-box-list_4.entry.js +1 -1
  50. package/dist/esm/ez-date-input.entry.js +10 -3
  51. package/dist/esm/ez-dialog.entry.js +1 -1
  52. package/dist/esm/ez-form-view.entry.js +3 -2
  53. package/dist/esm/ez-form.entry.js +13 -3
  54. package/dist/esm/ez-grid.entry.js +7 -3
  55. package/dist/esm/ez-modal-container.entry.js +15 -16
  56. package/dist/esm/ez-modal.entry.js +1 -1
  57. package/dist/esm/ez-number-input.entry.js +2 -0
  58. package/dist/esm/ez-popup.entry.js +19 -7
  59. package/dist/esm/ez-search-plus.entry.js +16 -2
  60. package/dist/esm/ez-search.entry.js +23 -19
  61. package/dist/esm/ez-split-button.entry.js +1 -1
  62. package/dist/esm/ez-text-input.entry.js +1 -1
  63. package/dist/esm/ez-tooltip.entry.js +13 -2
  64. package/dist/esm/ez-tree.entry.js +154 -7
  65. package/dist/esm/ezui.js +1 -1
  66. package/dist/esm/loader.js +1 -1
  67. package/dist/esm/{purify-dc6814bf.js → purify-9357603c.js} +41 -12
  68. package/dist/esm/{search-column-83562552.js → search-column-c00119ae.js} +1 -1
  69. package/dist/ezui/ezui.esm.js +1 -1
  70. package/dist/ezui/p-19cf13bc.entry.js +1 -0
  71. package/dist/ezui/p-2854f087.entry.js +1 -0
  72. package/dist/ezui/p-294f54fe.entry.js +1 -0
  73. package/dist/ezui/{p-d66bf34e.entry.js → p-377768bd.entry.js} +2 -2
  74. package/dist/ezui/{p-2ba2d792.entry.js → p-44ad16df.entry.js} +1 -1
  75. package/dist/ezui/p-4f0632b4.js +1 -0
  76. package/dist/ezui/p-7b999377.entry.js +1 -0
  77. package/dist/ezui/{p-0e49c0ff.entry.js → p-8d626d2b.entry.js} +1 -1
  78. package/dist/ezui/p-96b33264.entry.js +1 -0
  79. package/dist/ezui/{p-c943f7c4.entry.js → p-adaa2a81.entry.js} +1 -1
  80. package/dist/ezui/{p-f958dcb1.entry.js → p-c82acfc6.entry.js} +1 -1
  81. package/dist/ezui/p-cd6f5783.entry.js +1 -0
  82. package/dist/ezui/p-cfa26133.entry.js +1 -0
  83. package/dist/ezui/p-da585ff3.entry.js +1 -0
  84. package/dist/ezui/p-df316d40.entry.js +1 -0
  85. package/dist/ezui/p-dff9862b.js +3 -0
  86. package/dist/ezui/p-eca050b4.entry.js +1 -0
  87. package/dist/ezui/p-f34ec732.entry.js +1 -0
  88. package/dist/ezui/p-ff4bde07.entry.js +1 -0
  89. package/dist/types/components/ez-date-input/ez-date-input.d.ts +5 -1
  90. package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +6 -2
  91. package/dist/types/components/ez-number-input/ez-number-input.d.ts +4 -0
  92. package/dist/types/components/ez-popup/ez-popup.d.ts +3 -0
  93. package/dist/types/components/ez-search/ez-search.d.ts +5 -6
  94. package/dist/types/components/ez-search-plus/ez-search-plus.d.ts +1 -0
  95. package/dist/types/components/ez-tooltip/ez-tooltip.d.ts +3 -0
  96. package/dist/types/components/ez-tree/ez-tree.d.ts +20 -1
  97. package/dist/types/components/ez-tree/types/Node.d.ts +1 -0
  98. package/dist/types/components/ez-tree/types/Tree.d.ts +1 -0
  99. package/dist/types/components/ez-tree/types/UpdateItemConfig.d.ts +4 -0
  100. package/dist/types/components.d.ts +42 -1
  101. package/dist/types/utils/form/interfaces/IFormSheetMetadata.d.ts +1 -0
  102. package/dist/types/utils/form/interfaces/ITabConfig.d.ts +1 -0
  103. package/package.json +1 -1
  104. package/dist/ezui/p-02f6e3b0.entry.js +0 -1
  105. package/dist/ezui/p-0b333f09.entry.js +0 -1
  106. package/dist/ezui/p-191cfbc8.entry.js +0 -1
  107. package/dist/ezui/p-1bfef8e5.entry.js +0 -1
  108. package/dist/ezui/p-228a4d2f.js +0 -3
  109. package/dist/ezui/p-2df50161.entry.js +0 -1
  110. package/dist/ezui/p-4e1df756.entry.js +0 -1
  111. package/dist/ezui/p-623161e2.js +0 -1
  112. package/dist/ezui/p-7f8c1fce.entry.js +0 -1
  113. package/dist/ezui/p-8bb3aeb0.entry.js +0 -1
  114. package/dist/ezui/p-ba7e908a.entry.js +0 -1
  115. package/dist/ezui/p-bd6146c5.entry.js +0 -1
  116. package/dist/ezui/p-d0e6911e.entry.js +0 -1
  117. package/dist/ezui/p-e46a4d06.entry.js +0 -1
@@ -9,7 +9,7 @@ const ApplicationUtils = require('./ApplicationUtils-d04f5c94.js');
9
9
  require('./DialogType-2114c337.js');
10
10
  require('./CheckMode-ecb90b87.js');
11
11
  const index$1 = require('./index-00d0166b.js');
12
- require('./FormLayout-18853e70.js');
12
+ const FormLayout = require('./FormLayout-18853e70.js');
13
13
  const searchFormatters = require('./searchFormatters-b7e1ed1e.js');
14
14
 
15
15
  const ezSearchCss = ":host{--ez-search--height:42px;--ez-search--width:100%;--ez-search__icon--width:48px;--ez-search--border-radius:var(--border--radius-medium, 12px);--ez-search--border-radius-small:var(--border--radius-small, 6px);--ez-search--font-size:var(--text--medium, 14px);--ez-search--font-family:var(--font-pattern, Arial);--ez-search--font-weight--large:var(--text-weight--large, 500);--ez-search--font-weight--medium:var(--text-weight--medium, 400);--ez-search--background-color--xlight:var(--background--xlight, #fff);--ez-search--background-medium:var(--background--medium, #f0f3f7);--ez-search--line-height:calc(var(--text--medium, 14px) + 4px);--ez-search__input--background-color:var(--background--medium, #e0e0e0);--ez-search__input--border:var(--border--medium, 2px solid);--ez-search__input--border-color:var(--ez-search__input--background-color);--ez-search__input--focus--border-color:var(--color--primary, #008561);--ez-search__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-search__input--disabled--color:var(--text--disable, #AFB6C0);--ez-search__input--error--border-color:#CC2936;--ez-search__btn--color:var(--title--primary, #2B3A54);--ez-search__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-search__btn-hover--color:var(--color--primary, #4e4e4e);--ez-search__label--color:var(--title--primary, #2B3A54);--ez-search--space--medium:var(--space--medium, 12px);--ez-search--space--small:var(--space--small, 6px);display:flex;flex-wrap:wrap;position:relative;width:var(--ez-search--width)}ez-icon{--ez-icon--color:inherit;font-weight:var(--text-weight--large, 600)}.suppressed-search-input{--ez-text-input__input--border-color:var(--color--strokes, #dce0e8);--ez-text-input__input--disabled--background-color:var(--background--xlight, #fff);--ez-text-input__input--disabled--color:var(--title--primary, #2B3A54)}.btn{outline:none;border:none;background:none;cursor:pointer;color:var(--ez-search__btn--color)}.btn:disabled{cursor:not-allowed;color:var(--ez-search__btn-disabled--color)}.btn:disabled:hover{cursor:not-allowed;color:var(--ez-search__btn-disabled--color)}.btn:hover{color:var(--ez-search__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}";
@@ -55,6 +55,7 @@ const EzSearch = class {
55
55
  this.alternativePlaceholder = undefined;
56
56
  this.showMore = undefined;
57
57
  this.suppressInputPersist = false;
58
+ this.hideDescriptionInput = false;
58
59
  }
59
60
  observeErrorMessage() {
60
61
  var _a;
@@ -100,7 +101,7 @@ const EzSearch = class {
100
101
  return;
101
102
  if ((newOptions === null || newOptions === void 0 ? void 0 : newOptions.join('')) === (oldOptions === null || oldOptions === void 0 ? void 0 : oldOptions.join('')))
102
103
  return;
103
- this.loadOptions(SearchMode.PRELOAD);
104
+ this.loadOptions(FormLayout.SearchMode.PRELOAD);
104
105
  }
105
106
  /*
106
107
  * Retorna uma promise com o valor da opção selecionada,
@@ -362,7 +363,7 @@ const EzSearch = class {
362
363
  }
363
364
  }
364
365
  async loadDescriptionValue(argument) {
365
- var _a, _b;
366
+ var _a, _b, _c;
366
367
  if (argument == undefined) {
367
368
  return;
368
369
  }
@@ -370,21 +371,30 @@ const EzSearch = class {
370
371
  this.loadOptionValue(argument);
371
372
  return;
372
373
  }
374
+ const searchMode = this.hideDescriptionInput ? FormLayout.SearchMode.LOAD_DESCRIPTION : FormLayout.SearchMode.PREDICTIVE;
373
375
  const searchArgument = {
374
- mode: SearchMode.PREDICTIVE,
376
+ mode: searchMode,
375
377
  argument
376
378
  };
377
- const source = await ((_b = this.optionLoader) === null || _b === void 0 ? void 0 : _b.call(this, searchArgument, this.contextProperties));
378
- if (source == undefined) {
379
- return;
380
- }
381
- if (source instanceof Promise) {
382
- source.then((result) => {
383
- this.setDescriptionValue(result);
384
- });
379
+ try {
380
+ const source = await ((_b = this.optionLoader) === null || _b === void 0 ? void 0 : _b.call(this, searchArgument, this.contextProperties));
381
+ if (source == undefined) {
382
+ return;
383
+ }
384
+ if (source instanceof Promise) {
385
+ source.then((result) => {
386
+ this.setDescriptionValue(result);
387
+ });
388
+ }
389
+ else {
390
+ this.setDescriptionValue(source);
391
+ }
385
392
  }
386
- else {
387
- this.setDescriptionValue(source);
393
+ catch (error) {
394
+ if (((_c = error === null || error === void 0 ? void 0 : error.constructor) === null || _c === void 0 ? void 0 : _c.name) === "WarningException") {
395
+ this.errorMessage = error.message;
396
+ }
397
+ throw error;
388
398
  }
389
399
  }
390
400
  setDescriptionValue(source) {
@@ -519,7 +529,7 @@ const EzSearch = class {
519
529
  // Event handlers
520
530
  //---------------------------------------------
521
531
  handlerIconClick() {
522
- this.loadOptions(SearchMode.ADVANCED);
532
+ this.loadOptions(FormLayout.SearchMode.ADVANCED);
523
533
  }
524
534
  buildNumberArgument(argument) {
525
535
  if (this.isTextSearch) {
@@ -548,7 +558,7 @@ const EzSearch = class {
548
558
  if (this.ignoreLimitCharsToSearch || !isNaN(argumentNumber) || argument.length >= this._limitCharsToSearch) {
549
559
  this._showLoading = true;
550
560
  this._changeDeboucingTimeout = window.setTimeout(() => {
551
- this.loadOptions(SearchMode.PREDICTIVE, isNaN(argumentNumber) ? argument : argumentNumber.toString());
561
+ this.loadOptions(FormLayout.SearchMode.PREDICTIVE, isNaN(argumentNumber) ? argument : argumentNumber.toString());
552
562
  }, this._deboucingTime);
553
563
  this.showOptions();
554
564
  }
@@ -572,7 +582,7 @@ const EzSearch = class {
572
582
  this._tabPressed = false;
573
583
  if (event.ctrlKey) {
574
584
  if (event.key === "f" || event.key === "F") {
575
- this.loadOptions(SearchMode.ADVANCED);
585
+ this.loadOptions(FormLayout.SearchMode.ADVANCED);
576
586
  //ATENÇÃO: Ctrl + F tem ação específica nos browsers
577
587
  //nesse caso, como vamos abrir o popup de busca avançada,
578
588
  //não é interessante deixar o evento propagar;
@@ -641,7 +651,7 @@ const EzSearch = class {
641
651
  if (!this.optionLoader)
642
652
  return;
643
653
  const argument = (_b = (_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : "";
644
- const searchArgument = { mode: SearchMode.ADVANCED, argument };
654
+ const searchArgument = { mode: FormLayout.SearchMode.ADVANCED, argument };
645
655
  const selectedOption = await this.optionLoader(searchArgument, this.contextProperties);
646
656
  if (selectedOption && !Array.isArray(selectedOption)) {
647
657
  this.selectOption(selectedOption);
@@ -667,12 +677,6 @@ const EzSearch = class {
667
677
  "options": ["observeOptions"]
668
678
  }; }
669
679
  };
670
- var SearchMode;
671
- (function (SearchMode) {
672
- SearchMode["ADVANCED"] = "ADVANCED";
673
- SearchMode["PRELOAD"] = "PRELOAD";
674
- SearchMode["PREDICTIVE"] = "PREDICTIVE";
675
- })(SearchMode || (SearchMode = {}));
676
680
  EzSearch.style = ezSearchCss;
677
681
 
678
682
  exports.ez_search = EzSearch;
@@ -6,7 +6,7 @@ const index = require('./index-a7b0c73d.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const index$1 = require('./index-00d0166b.js');
8
8
 
9
- const ezSplitButtonCss = ":host{--ez-split-button--min-width:var(--space--40, 40px);--ez-split-button--width:auto;--ez-split-button--height:var(--space--32, 32px);--ez-split-button__medium-icon--width:var(--space--40, 40px);--ez-split-button__large-icon--width:var(--space--44, 44px);--ez-split-button__label--padding-top:var(--space--0, 0px);--ez-split-button__label--padding-bottom:var(--space--0, 0px);--ez-split-button__right-button--padding-left:var(--space--8, 8px);--ez-split-button__right-button--padding-right:var(--space--12, 12px);--ez-split-button--color:var(--color--ocean-green-600, #008561);--ez-split-button__left-icon--color:var(--color--ocean-green-600, #008561);--ez-split-button__right-icon--color:var(--color--ocean-green-600, #008561);--ez-split-button--background-color:var(--color--gray-70, #FFFFFF);--ez-split-button--border:1px solid var(--color--gray-90, #EAEAEA);--ez-split-button--font-size:var(--font-size--default, 14px);--ez-split-button--line-height:var(--line-height--28, 28px);--ez-split-button--font-family:var(--font-pattern, Arial);--ez-split-button--font-weight:var(--font-weight--regular,400);--ez-split-button--border-radius:var(--border--radius-24, 24px);--ez-split-button--hover-color:var(--color--primary-600, #007a5a);--ez-split-button--hover--background-color:var(--color--gray-80, #F9F9F9);--ez-split-button--disabled-color:var(--color--gray-400, #77777A);--ez-split-button--disabled--background-color:var(--color--gray-80, #F9F9F9);--ez-split-button--focus--border:var(--border--medium, 2px) var(--color--primary-300);--ez-split-button--focus--box-shadow:none;display:flex;width:fit-content}:host(.ez-split-button--primary){--ez-split-button--color:var(--color--gray-70);--ez-split-button--background-color:var(--color--ocean-green-500);--ez-split-button--font-weight:var(--font-weight--regular);--ez-split-button--border:none;--ez-split-button__left-icon--color:var(--color--gray-70);--ez-split-button__right-icon--color:var(--color--gray-70);--ez-split-button--hover-color:var(--color--gray-70);--ez-split-button--hover--background-color:var(--color--ocean-green-700);--ez-split-button--hover--border:none;--ez-split-button--left-icon--hover-color:var(--color--gray-70);--ez-split-button--right-icon--hover-color:var(--color--gray-70);--ez-split-button--disabled-color:var(--color--gray-70);--ez-split-button--disabled--background-color:var(--color--gray-400);--ez-split-button--disabled--border:none;--ez-split-button--disabled-icon-color:var(--color--gray-200);--ez-split-button__left-icon--disabled-color:var(--color--gray-200);--ez-split-button__right-icon--disabled-color:var(--color--gray-200)}:host(.ez-split-button--secondary){--ez-split-button--color:var(--color--ocean-green-600);--ez-split-button--background-color:var(--color--gray-70);--ez-split-button--border:1px solid var(--color--gray-90);--ez-split-button--left-icon--color:var(--color--ocean-green-600);--ez-split-button--right-icon--color:var(--color--ocean-green-600);--ez-split-button--hover-color:var(--color--ocean-green-600);--ez-split-button--hover--background-color:var(--color--gray-80);--ez-split-button--hover--border:1px solid var(--color--gray-90);--ez-split-button--left-icon--hover-color:var(--color--ocean-green-600);--ez-split-button--right-icon--hover-color:var(--color--ocean-green-600);--ez-split-button--disabled-color:var(--color--gray-400);--ez-split-button--disabled--background-color:var(--color--gray-80);--ez-split-button--disabled--border:1px solid var(--color--gray-200);--ez-split-button--disabled-icon-color:var(--color--gray-400);--ez-split-button__left-icon--disabled-color:var(--color--gray-300);--ez-split-button__right-icon--disabled-color:var(--color--gray-300)}:host(.ez-split-button--tertiary){--ez-split-button--color:var(--color--ocean-green-600);--ez-split-button--background-color:transparent;--ez-split-button--font-weight:var(--font-weight--regular);--ez-split-button--border:none;--ez-split-button--left-icon--color:var(--color--ocean-green-600);--ez-split-button--right-icon--color:var(--color--ocean-green-600);--ez-split-button--hover-color:var(--color--ocean-green-800);--ez-split-button--hover--background-color:transparent;--ez-split-button--hover--border:none;--ez-split-button--left-icon--hover-color:var(--color--ocean-green-800);--ez-split-button--right-icon--hover-color:var(--color--ocean-green-800);--ez-split-button--disabled-color:var(--color--gray-400);--ez-split-button--disabled--background-color:transparent;--ez-split-button--disabled--border:transparent;--ez-split-button--disabled-icon-color:var(--color--gray-200);--ez-split-button__left-icon--disabled-color:var(--color--gray-200);--ez-split-button__right-icon--disabled-color:var(--color--gray-200)}.ez-split-button.large{--ez-split-button--height:var(--space--42, 42px)}.ez-split-button.medium{--ez-split-button--height:var(--space--32, 32px)}ez-icon{--ez-icon--color:inherit}button{position:relative;display:flex;align-items:center;margin:0;cursor:pointer;transition:background-color 0.2s linear, transform 0.15s ease;white-space:nowrap;overflow:hidden;transform:scale(1);min-width:var(--ez-split-button--min-width);width:var(--ez-split-button--width);height:var(--ez-split-button--height);font-family:var(--ez-split-button--font-family);font-size:var(--ez-split-button--font-size);font-weight:var(--ez-split-button--font-weight);padding:var(--ez-split-button__label--padding-top) 0 var(--ez-split-button__label--padding-bottom) 0;border-top-left-radius:var(--ez-split-button--border-radius);border-bottom-left-radius:var(--ez-split-button--border-radius);background-color:var(--ez-split-button--background-color);color:var(--ez-split-button--color);fill:var(--ez-split-button--color);border:none}label{cursor:pointer;line-height:var(--ez-split-button--line-height)}.ez-split-button__left-button{border:var(--ez-split-button--border);border-right:none;outline:none;gap:var(--space--8, 8px);padding-left:var(--space--12, 12px);padding-right:var(--space--8, 8px)}.ez-split-button__right-button{border:var(--ez-split-button--border);border-left:none;outline:none}.ez-split-button__left-button.force-focus-visible,.ez-split-button__left-button:focus-visible{box-shadow:-1px 1px 0px 1px var(--color--gray-70), \n -1px -1px 0px 1px var(--color--gray-70), \n -2px -2px 0px 2px var(--color--ocean-green-200), \n -2px 2px 0px 2px var(--color--ocean-green-200), \n 0px -2px 0px 2px var(--color--ocean-green-200), \n 0px 2px 0px 2px var(--color--ocean-green-200)}.ez-split-button__right-button.force-focus-visible,.ez-split-button__right-button:focus-visible{box-shadow:1px 1px 0px 1px var(--color--gray-70), \n 1px -1px 0px 1px var(--color--gray-70), \n 2px -2px 0px 2px var(--color--ocean-green-200), \n 2px 2px 0px 2px var(--color--ocean-green-200), \n 0px -2px 0px 2px var(--color--ocean-green-200), \n 0px 2px 0px 2px var(--color--ocean-green-200)}.ez-split-button__left-button[aria-disabled].force-focus-visible,.ez-split-button__left-button[aria-disabled]:focus-visible{box-shadow:-1px 1px 0px 1px var(--color--gray-70), \n -1px -1px 0px 1px var(--color--gray-70), \n -2px -2px 0px 2px var(--color--petroleum-100), \n -2px 2px 0px 2px var(--color--petroleum-100), \n 0px -2px 0px 2px var(--color--petroleum-100), \n 0px 2px 0px 2px var(--color--petroleum-100)}.ez-split-button__right-button[aria-disabled].force-focus-visible,.ez-split-button__right-button[aria-disabled]:focus-visible{box-shadow:1px 1px 0px 1px var(--color--gray-70), \n 1px -1px 0px 1px var(--color--gray-70), \n 2px -2px 0px 2px var(--color--petroleum-100), \n 2px 2px 0px 2px var(--color--petroleum-100), \n 0px -2px 0px 2px var(--color--petroleum-100), \n 0px 2px 0px 2px var(--color--petroleum-100)}.ez-split-button__left-button:hover,.ez-split-button__right-button:hover{outline:none;background-color:var(--ez-split-button--hover--background-color);color:var(--ez-split-button--hover-color);fill:var(--ez-split-button--hover-color);--ez-icon--color:var(--ez-split-button--hover-color)}.ez-split-button__left-button:disabled,.ez-split-button__left-button[aria-disabled],.ez-split-button__left-button:disabled label,.ez-split-button__left-button[aria-disabled] label,.ez-split-button__right-button:disabled,.ez-split-button__right-button[aria-disabled]{background-color:var(--ez-split-button--disabled--background-color);color:var(--ez-split-button--disabled-color);fill:var(--ez-split-button--disabled-color);border:none;--ez-icon--color:var(--ez-split-button__left-icon--disabled-color);cursor:not-allowed}.ez-split-button__left-button:disabled,.ez-split-button__left-button[aria-disabled]{--ez-icon--color:var(--ez-split-button__left-icon--disabled-color);border:var(--ez-split-button--disabled-border);border-right:none}.ez-split-button__right-button:disabled,.ez-split-button__right-button[aria-disabled]{--ez-icon--color:var(--ez-split-button__right-icon--disabled-color);border:var(--ez-split-button--disabled-border);border-left:none}.ez-split-button__right-button{border-top-right-radius:var(--ez-split-button--border-radius);border-bottom-right-radius:var(--ez-split-button--border-radius);border-top-left-radius:0;border-bottom-left-radius:0;border-right:var(--ez-split-button--border)}.ez-split-button__divider{width:1px;box-sizing:border-box;position:relative;background-color:var(--ez-split-button--background-color);height:var(--ez-split-button--height);border-top:var(--ez-split-button--border);border-bottom:var(--ez-split-button--border)}.ez-split-button__divider[aria-disabled],.ez-split-button__divider.disabled{cursor:not-allowed;background-color:var(--ez-split-button--disabled--background-color);border-top:var(--ez-split-button--disabled--border);border-bottom:var(--ez-split-button--disabled--border)}.ez-split-button__divider:before{content:\"\";position:absolute;left:0;border-left:1px solid rgba(0, 0, 0, 10%);border-radius:2px;height:75%;top:10%;bottom:10%}.btn-icon--medium{min-width:--ez-split-button__medium-icon--width}.btn-icon--large{min-width:--ez-split-button__large-icon--width}.ez-split-button__right-button-container{position:absolute;left:0;padding-left:var(--ez-split-button__right-button--padding-left);padding-right:var(--ez-split-button__right-button--padding-right)}.ez-split-button{display:flex;flex-direction:row;align-items:center;color:var(--ez-split-button--color)}.dropdown{display:flex}.dropdown-content{display:block;position:absolute;background-color:#f1f1f1;min-width:160px;z-index:var(--ez-elevation--8);border-radius:var(--ez-split-button--border-radius)}.dropdown-content>ez-dropdown{position:relative}.ripple{position:absolute;width:20px;height:20px;border-radius:50%;background:rgba(255, 255, 255, 0.3);pointer-events:none;transform:scale(0);animation:ripple-animation 0.6s linear;z-index:0}@keyframes ripple-animation{to{transform:scale(4);opacity:0}}:host .ripple,:host(.ez-split-button--secondary) .ripple{background:rgba(0, 133, 97, 0.2)}:host(.ez-split-button--primary) .ripple{background:rgba(255, 255, 255, 0.3)}:host(.ez-split-button--tertiary) .ripple{background:rgba(0, 133, 97, 0.15)}.ez-split-button__left-button.pressed,.ez-split-button__right-button.pressed{transform:scale(0.98)}.ez-split-button__left-button>*:not(.ripple),.ez-split-button__right-button>*:not(.ripple){position:relative;z-index:1}.ez-split-button__left-button:disabled .ripple,.ez-split-button__left-button[aria-disabled] .ripple,.ez-split-button__right-button:disabled .ripple,.ez-split-button__right-button[aria-disabled] .ripple{display:none}.ez-split-button__left-button:disabled,.ez-split-button__left-button[aria-disabled],.ez-split-button__right-button:disabled,.ez-split-button__right-button[aria-disabled]{transform:scale(1) !important}";
9
+ const ezSplitButtonCss = ":host{--ez-split-button--min-width:var(--space--40, 40px);--ez-split-button--width:auto;--ez-split-button--height:var(--space--32, 32px);--ez-split-button__medium-icon--width:var(--space--40, 40px);--ez-split-button__large-icon--width:var(--space--44, 44px);--ez-split-button__label--padding-top:var(--space--0, 0px);--ez-split-button__label--padding-bottom:var(--space--0, 0px);--ez-split-button__right-button--padding-left:var(--space--8, 8px);--ez-split-button__right-button--padding-right:var(--space--12, 12px);--ez-split-button--color:var(--color--ocean-green-600, #008561);--ez-split-button__left-icon--color:var(--color--ocean-green-600, #008561);--ez-split-button__right-icon--color:var(--color--ocean-green-600, #008561);--ez-split-button--background-color:var(--color--gray-70, #FFFFFF);--ez-split-button--border:1px solid var(--color--gray-90, #EAEAEA);--ez-split-button--font-size:var(--font-size--default, 14px);--ez-split-button--line-height:var(--line-height--28, 28px);--ez-split-button--font-family:var(--font-pattern, Arial);--ez-split-button--font-weight:var(--font-weight--medium, 500);--ez-split-button--border-radius:var(--border--radius-24, 24px);--ez-split-button--hover-color:var(--color--primary-600, #007a5a);--ez-split-button--hover--background-color:var(--color--gray-80, #F9F9F9);--ez-split-button--disabled-color:var(--color--gray-400, #77777A);--ez-split-button--disabled--background-color:var(--color--gray-80, #F9F9F9);--ez-split-button--focus--border:var(--border--medium, 2px) var(--color--primary-300);--ez-split-button--focus--box-shadow:none;display:flex;width:fit-content}:host(.ez-split-button--primary){--ez-split-button--color:var(--color--gray-70);--ez-split-button--background-color:var(--color--ocean-green-500);--ez-split-button--font-weight:var(--font-weight--regular);--ez-split-button--border:none;--ez-split-button__left-icon--color:var(--color--gray-70);--ez-split-button__right-icon--color:var(--color--gray-70);--ez-split-button--hover-color:var(--color--gray-70);--ez-split-button--hover--background-color:var(--color--ocean-green-700);--ez-split-button--hover--border:none;--ez-split-button--left-icon--hover-color:var(--color--gray-70);--ez-split-button--right-icon--hover-color:var(--color--gray-70);--ez-split-button--disabled-color:var(--color--gray-70);--ez-split-button--disabled--background-color:var(--color--gray-400);--ez-split-button--disabled--border:none;--ez-split-button--disabled-icon-color:var(--color--gray-200);--ez-split-button__left-icon--disabled-color:var(--color--gray-200);--ez-split-button__right-icon--disabled-color:var(--color--gray-200)}:host(.ez-split-button--secondary){--ez-split-button--color:var(--color--ocean-green-600);--ez-split-button--background-color:var(--color--gray-70);--ez-split-button--border:1px solid var(--color--gray-90);--ez-split-button--left-icon--color:var(--color--ocean-green-600);--ez-split-button--right-icon--color:var(--color--ocean-green-600);--ez-split-button--hover-color:var(--color--ocean-green-600);--ez-split-button--hover--background-color:var(--color--gray-80);--ez-split-button--hover--border:1px solid var(--color--gray-90);--ez-split-button--left-icon--hover-color:var(--color--ocean-green-600);--ez-split-button--right-icon--hover-color:var(--color--ocean-green-600);--ez-split-button--disabled-color:var(--color--gray-400);--ez-split-button--disabled--background-color:var(--color--gray-80);--ez-split-button--disabled--border:1px solid var(--color--gray-200);--ez-split-button--disabled-icon-color:var(--color--gray-400);--ez-split-button__left-icon--disabled-color:var(--color--gray-300);--ez-split-button__right-icon--disabled-color:var(--color--gray-300)}:host(.ez-split-button--tertiary){--ez-split-button--color:var(--color--ocean-green-600);--ez-split-button--background-color:transparent;--ez-split-button--font-weight:var(--font-weight--regular);--ez-split-button--border:none;--ez-split-button--left-icon--color:var(--color--ocean-green-600);--ez-split-button--right-icon--color:var(--color--ocean-green-600);--ez-split-button--hover-color:var(--color--ocean-green-800);--ez-split-button--hover--background-color:transparent;--ez-split-button--hover--border:none;--ez-split-button--left-icon--hover-color:var(--color--ocean-green-800);--ez-split-button--right-icon--hover-color:var(--color--ocean-green-800);--ez-split-button--disabled-color:var(--color--gray-400);--ez-split-button--disabled--background-color:transparent;--ez-split-button--disabled--border:transparent;--ez-split-button--disabled-icon-color:var(--color--gray-200);--ez-split-button__left-icon--disabled-color:var(--color--gray-200);--ez-split-button__right-icon--disabled-color:var(--color--gray-200)}.ez-split-button.large{--ez-split-button--height:var(--space--42, 42px)}.ez-split-button.medium{--ez-split-button--height:var(--space--32, 32px)}.ez-split-button.small{--ez-split-button--height:var(--space--32, 32px);--ez-split-button--font-size:var(--text--small, 12px)}ez-icon{--ez-icon--color:inherit}button{position:relative;display:flex;align-items:center;margin:0;cursor:pointer;transition:background-color 0.2s linear, transform 0.15s ease;white-space:nowrap;overflow:hidden;transform:scale(1);min-width:var(--ez-split-button--min-width);width:var(--ez-split-button--width);height:var(--ez-split-button--height);font-family:var(--ez-split-button--font-family);font-size:var(--ez-split-button--font-size);font-weight:var(--ez-split-button--font-weight);padding:var(--ez-split-button__label--padding-top) 0 var(--ez-split-button__label--padding-bottom) 0;border-top-left-radius:var(--ez-split-button--border-radius);border-bottom-left-radius:var(--ez-split-button--border-radius);background-color:var(--ez-split-button--background-color);color:var(--ez-split-button--color);fill:var(--ez-split-button--color);border:none}label{cursor:pointer;line-height:var(--ez-split-button--line-height)}.ez-split-button__left-button{border:var(--ez-split-button--border);border-right:none;outline:none;gap:var(--space--8, 8px);padding-left:var(--space--12, 12px);padding-right:var(--space--8, 8px)}.ez-split-button__right-button{border:var(--ez-split-button--border);border-left:none;outline:none}.ez-split-button__left-button.force-focus-visible,.ez-split-button__left-button:focus-visible{box-shadow:-1px 1px 0px 1px var(--color--gray-70), \n -1px -1px 0px 1px var(--color--gray-70), \n -2px -2px 0px 2px var(--color--ocean-green-200), \n -2px 2px 0px 2px var(--color--ocean-green-200), \n 0px -2px 0px 2px var(--color--ocean-green-200), \n 0px 2px 0px 2px var(--color--ocean-green-200)}.ez-split-button__right-button.force-focus-visible,.ez-split-button__right-button:focus-visible{box-shadow:1px 1px 0px 1px var(--color--gray-70), \n 1px -1px 0px 1px var(--color--gray-70), \n 2px -2px 0px 2px var(--color--ocean-green-200), \n 2px 2px 0px 2px var(--color--ocean-green-200), \n 0px -2px 0px 2px var(--color--ocean-green-200), \n 0px 2px 0px 2px var(--color--ocean-green-200)}.ez-split-button__left-button[aria-disabled].force-focus-visible,.ez-split-button__left-button[aria-disabled]:focus-visible{box-shadow:-1px 1px 0px 1px var(--color--gray-70), \n -1px -1px 0px 1px var(--color--gray-70), \n -2px -2px 0px 2px var(--color--petroleum-100), \n -2px 2px 0px 2px var(--color--petroleum-100), \n 0px -2px 0px 2px var(--color--petroleum-100), \n 0px 2px 0px 2px var(--color--petroleum-100)}.ez-split-button__right-button[aria-disabled].force-focus-visible,.ez-split-button__right-button[aria-disabled]:focus-visible{box-shadow:1px 1px 0px 1px var(--color--gray-70), \n 1px -1px 0px 1px var(--color--gray-70), \n 2px -2px 0px 2px var(--color--petroleum-100), \n 2px 2px 0px 2px var(--color--petroleum-100), \n 0px -2px 0px 2px var(--color--petroleum-100), \n 0px 2px 0px 2px var(--color--petroleum-100)}.ez-split-button__left-button:hover,.ez-split-button__right-button:hover{outline:none;background-color:var(--ez-split-button--hover--background-color);color:var(--ez-split-button--hover-color);fill:var(--ez-split-button--hover-color);--ez-icon--color:var(--ez-split-button--hover-color)}.ez-split-button__left-button:disabled,.ez-split-button__left-button[aria-disabled],.ez-split-button__left-button:disabled label,.ez-split-button__left-button[aria-disabled] label,.ez-split-button__right-button:disabled,.ez-split-button__right-button[aria-disabled]{background-color:var(--ez-split-button--disabled--background-color);color:var(--ez-split-button--disabled-color);fill:var(--ez-split-button--disabled-color);border:none;--ez-icon--color:var(--ez-split-button__left-icon--disabled-color);cursor:not-allowed}.ez-split-button__left-button:disabled,.ez-split-button__left-button[aria-disabled]{--ez-icon--color:var(--ez-split-button__left-icon--disabled-color);border:var(--ez-split-button--disabled-border);border-right:none}.ez-split-button__right-button:disabled,.ez-split-button__right-button[aria-disabled]{--ez-icon--color:var(--ez-split-button__right-icon--disabled-color);border:var(--ez-split-button--disabled-border);border-left:none}.ez-split-button__right-button{border-top-right-radius:var(--ez-split-button--border-radius);border-bottom-right-radius:var(--ez-split-button--border-radius);border-top-left-radius:0;border-bottom-left-radius:0;border-right:var(--ez-split-button--border)}.ez-split-button__divider{width:1px;box-sizing:border-box;position:relative;background-color:var(--ez-split-button--background-color);height:var(--ez-split-button--height);border-top:var(--ez-split-button--border);border-bottom:var(--ez-split-button--border)}.ez-split-button__divider[aria-disabled],.ez-split-button__divider.disabled{cursor:not-allowed;background-color:var(--ez-split-button--disabled--background-color);border-top:var(--ez-split-button--disabled--border);border-bottom:var(--ez-split-button--disabled--border)}.ez-split-button__divider:before{content:\"\";position:absolute;left:0;border-left:1px solid rgba(0, 0, 0, 10%);border-radius:2px;height:75%;top:10%;bottom:10%}.btn-icon--medium{min-width:--ez-split-button__medium-icon--width}.btn-icon--large{min-width:--ez-split-button__large-icon--width}.ez-split-button__right-button-container{position:absolute;left:0;padding-left:var(--ez-split-button__right-button--padding-left);padding-right:var(--ez-split-button__right-button--padding-right)}.ez-split-button{display:flex;flex-direction:row;align-items:center;color:var(--ez-split-button--color)}.dropdown{display:flex}.dropdown-content{display:block;position:absolute;background-color:#f1f1f1;min-width:160px;z-index:var(--ez-elevation--8);border-radius:var(--ez-split-button--border-radius)}.dropdown-content>ez-dropdown{position:relative}.ripple{position:absolute;width:20px;height:20px;border-radius:50%;background:rgba(255, 255, 255, 0.3);pointer-events:none;transform:scale(0);animation:ripple-animation 0.6s linear;z-index:0}@keyframes ripple-animation{to{transform:scale(4);opacity:0}}:host .ripple,:host(.ez-split-button--secondary) .ripple{background:rgba(0, 133, 97, 0.2)}:host(.ez-split-button--primary) .ripple{background:rgba(255, 255, 255, 0.3)}:host(.ez-split-button--tertiary) .ripple{background:rgba(0, 133, 97, 0.15)}.ez-split-button__left-button.pressed,.ez-split-button__right-button.pressed{transform:scale(0.98)}.ez-split-button__left-button>*:not(.ripple),.ez-split-button__right-button>*:not(.ripple){position:relative;z-index:1}.ez-split-button__left-button:disabled .ripple,.ez-split-button__left-button[aria-disabled] .ripple,.ez-split-button__right-button:disabled .ripple,.ez-split-button__right-button[aria-disabled] .ripple{display:none}.ez-split-button__left-button:disabled,.ez-split-button__left-button[aria-disabled],.ez-split-button__right-button:disabled,.ez-split-button__right-button[aria-disabled]{transform:scale(1) !important}";
10
10
 
11
11
  const ANIMATION_TIMINGS = {
12
12
  PRESSED_DURATION: 150,
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-a7b0c73d.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
 
8
- const ezTextInputCss = ":host{--ez-text-input--height:42px;--ez-text-input--width:100%;--ez-text-input__icon--width:30px;--ez-text-input--height--slim:32px;--ez-text-input__min-width:0px;--ez-text-input__max-width:100%;--ez-text-input--border-radius:var(--border--radius-medium, 12px);--ez-text-input--border-top-left-radius:var(--ez-text-input--border-radius);--ez-text-input--border-bottom-left-radius:var(--ez-text-input--border-radius);--ez-text-input--border-top-right-radius:var(--ez-text-input--border-radius);--ez-text-input--border-bottom-right-radius:var(--ez-text-input--border-radius);--ez-text-input--font-size:var(--text--medium, 14px);--ez-text-input--font-family:var(--font-pattern, Arial);--ez-text-input--font-weight:var(--text-weight--medium, 400);--ez-text-input--color:var(--title--primary, #2B3A54);--ez-text-input__margin-bottom:var(--space--small);--ez-text-input__input--background-color:var(--background--light, #ffffff);--ez-text-input__input--border:var(--border--small, 1px solid);--ez-text-input__input--border-color:var(--color--strokes,#DCE0E8);--ez-text-input__input--focus--border-color:var(--color--primary, #008561);--ez-text-input__input--disabled--background-color:var(--background--medium, #F0F3F7);--ez-text-input__input--disabled--color:var(--text--primary, #626E82);--ez-text-input__input--error--border-color:var(--color-alert--error-800,#BD0025);--ez-text-input__input--noborder-color:white;--ez-text-input__input--padding:var(--space--medium, 6px);--ez-text-input__placeholder--color:var(--text--secondary, #a2abb9);--ez-text-input__tooltip_icon--error--color:var(--color-alert--error-800,#BD0025);--ez-text-input__label--floating--top:6px;--ez-text-input__label--padding-top:12px;--ez-text-input__label--padding-left:14px;--ez-text-input__label--padding-right:12px;--ez-text-input__input--focus--icon-color:var(--title--primary, #2B3A54);--ez-text-input__input--disabled--focus--icon-color:var(--text--primary, #626E82);--ez-text-input__tooltip-icon--spacing:var(--space--large);--ez-text-input__tooltip-icon---width:var(--space--large);--ez-text-input__tooltip-icon---horizontal-margin:var(--space--medium, 12px);--ez-text-input__tooltip-icon---vertical-margin:10px;display:flex;flex-wrap:wrap;position:relative;width:var(--ez-text-input--width);min-width:var(--ez-text-input__min-width);max-width:var(--ez-text-input__max-width)}:host(.grid_editor){--ez-text-input--height--slim:25px}input{width:100%;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;height:var(--ez-text-input--height);border-top-left-radius:var(--ez-text-input--border-top-left-radius);border-bottom-left-radius:var(--ez-text-input--border-bottom-left-radius);border-top-right-radius:var(--ez-text-input--border-top-right-radius);border-bottom-right-radius:var(--ez-text-input--border-bottom-right-radius);font-family:var(--ez-text-input--font-family);font-size:var(--ez-text-input--font-size);border:var(--ez-text-input__input--border);border-color:var(--ez-text-input__input--border-color);background-color:var(--ez-text-input__input--background-color);color:var(--ez-text-input--color);font-weight:var(--ez-text-input--font-weight);padding:var(--ez-text-input__input--padding);margin-bottom:var(--ez-text-input__margin-bottom)}input.no--margin{--ez-text-input__margin-bottom:0}input:disabled{background-color:var(--ez-text-input__input--disabled--background-color);color:var(--ez-text-input__input--disabled--color);cursor:not-allowed}input:focus{outline:none;border:var(--border--medium, 2px solid);border-color:var(--ez-text-input__input--focus--border-color)}input.focused{border:var(--border--medium, 2px solid);border-color:var(--ez-text-input__input--focus--border-color)}input.icon--left{padding-left:var(--ez-text-input__icon--width)}input.icon--left.hasError{padding-right:var(--ez-text-input__icon--width)}input.icon--right{padding-right:var(--ez-text-input__icon--width)}input.icon--right.hasError{padding-right:calc(var(--ez-text-input__icon--width) + var(--ez-text-input__tooltip-icon--spacing))}input.hasError{color:var(--ez-text-input--color);border:var(--border--medium, 2px solid);border-color:var(--ez-text-input__input--error--border-color);padding-right:calc(var(--ez-text-input__tooltip-icon---width) + (2*var(--ez-text-input__tooltip-icon---horizontal-margin)))}input:disabled.hasError{color:var(--ez-text-input__input--disabled--color)}input.text--right{text-align:right}input:disabled,input:read-only{cursor:not-allowed}.hasError{color:var(--ez-text-input__tooltip_icon--error--color)}.input__label{box-sizing:border-box;position:absolute;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-transition:font-size .05s, top .05s;transition:font-size .05s, top .05s;width:calc(100% - var(--ez-text-input__label--padding-right));left:var(--ez-text-input--space--medium);font-family:var(--ez-text-input--font-family);font-size:var(--ez-text-input--font-size);font-weight:var(--ez-text-input--font-weight);color:var(--ez-text-input--color);top:var(--ez-text-input__label--padding-top);left:var(--ez-text-input__label--padding-left);padding-right:var(--ez-text-input__label--padding-right)}.input__label.hasError{width:calc(100% - 2*(var(--ez-text-input__tooltip-icon--spacing)))}.input__label--floated{font-family:var(--ez-text-input--font-family);font-size:var(--text--extra-small);color:var(--text--primary);top:var(--ez-text-input__label--floating--top)}.input__label--disabled{color:var(--ez-text-input__input--disabled--color);cursor:not-allowed}.input__label--left{text-align:left;left:calc(var(--ez-text-input__icon--width) + 2px);width:calc(100% - var(--ez-text-input__icon--width))}.input__label--left.hasError{width:calc(100% - var(--ez-text-input__icon--width) - var(--ez-text-input__tooltip-icon--spacing))}.input__label--right{right:var(--ez-text-input__icon--width);width:calc(100% - var(--ez-text-input__icon--width))}.input__label--right.hasError{width:calc(100% - var(--ez-text-input__icon--width) - var(--ez-text-input__tooltip-icon--spacing))}.input__label--left.input__label--right{left:calc(var(--ez-text-input__icon--width) + 2px);width:calc(100% - var(--ez-text-input__icon--width) * 2)}.input--with--label{padding-bottom:0}.input--slim{padding-top:var(--space--small, 3px);padding-bottom:var(--space--small, 3px);height:var(--ez-text-input--height--slim)}.input__slim--title{font-size:16px;font-weight:bold}.input--slim::-webkit-input-placeholder,.input--slim:-moz-placeholder,.input--slim::-moz-placeholder,.input--slim:-ms-input-placeholder,.input--slim::placeholder{font-family:var(--ez-text-input--font-family);font-size:var(--ez-text-input--font-size);font-weight:var(--ez-text-input--font-weight);color:var(--ez-text-input__placeholder--color)}.input--slim:disabled::-webkit-input-placeholder,.input--slim:disabled:-moz-placeholder,.input--slim:disabled::-moz-placeholder,.input--slim:disabled:-ms-input-placeholder,.input--slim:disabled::placeholder{color:var(--ez-text-input__input--disabled--color)}input.input__slim--noborder{box-shadow:0 0 0 0;border:0 none;outline:0;background:var(--ez-text-input__input--noborder-color)}ez-icon.tooltip-icon{position:absolute;display:flex;align-items:center;justify-content:center;overflow:hidden;width:var(--ez-text-input__tooltip-icon---width);height:22px;margin:var(--ez-text-input__tooltip-icon---vertical-margin) var(--ez-text-input__tooltip-icon---horizontal-margin);top:0;right:0;border-radius:var(--ez-text-input--border-radius)}ez-icon.tooltip-icon.rightIconSlot{right:var(--ez-text-input__tooltip-icon--spacing)}ez-icon.tooltip-icon.hasError{--ez-icon--color:var(--ez-text-input__tooltip_icon--error--color)}";
8
+ const ezTextInputCss = ":host{--ez-text-input--height:42px;--ez-text-input--width:100%;--ez-text-input__icon--width:30px;--ez-text-input--height--slim:32px;--ez-text-input__min-width:0px;--ez-text-input__max-width:100%;--ez-text-input--border-radius:var(--border--radius-medium, 12px);--ez-text-input--border-top-left-radius:var(--ez-text-input--border-radius);--ez-text-input--border-bottom-left-radius:var(--ez-text-input--border-radius);--ez-text-input--border-top-right-radius:var(--ez-text-input--border-radius);--ez-text-input--border-bottom-right-radius:var(--ez-text-input--border-radius);--ez-text-input--font-size:var(--text--medium, 14px);--ez-text-input--font-family:var(--font-pattern, Arial);--ez-text-input--font-weight:var(--text-weight--medium, 400);--ez-text-input--color:var(--title--primary, #2B3A54);--ez-text-input__margin-bottom:var(--space--small);--ez-text-input__input--background-color:var(--background--light, #ffffff);--ez-text-input__input--border:var(--border--small, 1px solid);--ez-text-input__input--border-color:var(--color--strokes,#DCE0E8);--ez-text-input__input--focus--border-color:var(--color--primary, #008561);--ez-text-input__input--disabled--background-color:var(--background--medium, #F0F3F7);--ez-text-input__input--disabled--color:var(--text--primary, #626E82);--ez-text-input__input--error--border-color:var(--color-alert--error-800,#BD0025);--ez-text-input__input--noborder-color:white;--ez-text-input__input--padding:var(--space--medium, 6px);--ez-text-input__placeholder--color:var(--text--secondary, #a2abb9);--ez-text-input__tooltip_icon--error--color:var(--color-alert--error-800,#BD0025);--ez-text-input__label--floating--top:6px;--ez-text-input__label--padding-top:12px;--ez-text-input__label--padding-left:14px;--ez-text-input__label--padding-right:12px;--ez-text-input__input--focus--icon-color:var(--title--primary, #2B3A54);--ez-text-input__input--disabled--focus--icon-color:var(--text--primary, #626E82);--ez-text-input__tooltip-icon--spacing:var(--space--large);--ez-text-input__tooltip-icon---width:var(--space--large);--ez-text-input__tooltip-icon---horizontal-margin:var(--space--medium, 12px);--ez-text-input__tooltip-icon---vertical-margin:10px;display:flex;flex-wrap:wrap;position:relative;width:var(--ez-text-input--width);min-width:var(--ez-text-input__min-width);max-width:var(--ez-text-input__max-width)}:host(.grid_editor){--ez-text-input--height--slim:25px}input{width:100%;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;height:var(--ez-text-input--height);border-top-left-radius:var(--ez-text-input--border-top-left-radius);border-bottom-left-radius:var(--ez-text-input--border-bottom-left-radius);border-top-right-radius:var(--ez-text-input--border-top-right-radius);border-bottom-right-radius:var(--ez-text-input--border-bottom-right-radius);font-family:var(--ez-text-input--font-family);font-size:var(--ez-text-input--font-size);border:var(--ez-text-input__input--border);border-color:var(--ez-text-input__input--border-color);background-color:var(--ez-text-input__input--background-color);color:var(--ez-text-input--color);font-weight:var(--ez-text-input--font-weight);padding:var(--ez-text-input__input--padding);margin-bottom:var(--ez-text-input__margin-bottom)}input.no--margin{--ez-text-input__margin-bottom:0}input:disabled{background-color:var(--ez-text-input__input--disabled--background-color);color:var(--ez-text-input__input--disabled--color);cursor:not-allowed}input:focus{outline:none;border:var(--border--medium, 2px solid);border-color:var(--ez-text-input__input--focus--border-color)}input.focused{border:var(--border--medium, 2px solid);border-color:var(--ez-text-input__input--focus--border-color)}input.icon--left{padding-left:var(--ez-text-input__icon--width)}input.icon--left.hasError{padding-right:var(--ez-text-input__icon--width)}input.icon--right{padding-right:var(--ez-text-input__icon--width)}input.icon--right.hasError{padding-right:calc(var(--ez-text-input__icon--width) + var(--ez-text-input__tooltip-icon--spacing))}input.hasError{color:var(--ez-text-input--color);border:var(--border--medium, 2px solid);border-color:var(--ez-text-input__input--error--border-color);padding-right:calc(var(--ez-text-input__tooltip-icon---width) + (2*var(--ez-text-input__tooltip-icon---horizontal-margin)))}input:disabled.hasError{color:var(--ez-text-input__input--disabled--color)}input.text--right{text-align:right}input:disabled,input:read-only{cursor:not-allowed}.hasError{color:var(--ez-text-input__tooltip_icon--error--color)}.input__label{box-sizing:border-box;position:absolute;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-transition:font-size .05s, top .05s;transition:font-size .05s, top .05s;width:calc(100% - (var(--ez-text-input__label--padding-right) + var(--ez-text-input__label--padding-left)));left:var(--ez-text-input--space--medium);font-family:var(--ez-text-input--font-family);font-size:var(--ez-text-input--font-size);font-weight:var(--ez-text-input--font-weight);color:var(--ez-text-input--color);top:var(--ez-text-input__label--padding-top);left:var(--ez-text-input__label--padding-left);padding-right:var(--ez-text-input__label--padding-right)}.input__label.hasError{width:calc(100% - 2*(var(--ez-text-input__tooltip-icon--spacing)))}.input__label--floated{font-family:var(--ez-text-input--font-family);font-size:var(--text--extra-small);color:var(--text--primary);top:var(--ez-text-input__label--floating--top)}.input__label--disabled{color:var(--ez-text-input__input--disabled--color);cursor:not-allowed}.input__label--left{text-align:left;left:calc(var(--ez-text-input__icon--width) + 2px);width:calc(100% - (var(--ez-text-input__icon--width) + var(--ez-text-input__label--padding-right)))}.input__label--left.hasError{width:calc(100% - var(--ez-text-input__icon--width) - var(--ez-text-input__tooltip-icon--spacing))}.input__label--right{right:var(--ez-text-input__icon--width);width:calc(100% - (var(--ez-text-input__icon--width) + var(--ez-text-input__label--padding-left)))}.input__label--right.hasError{width:calc(100% - var(--ez-text-input__icon--width) - var(--ez-text-input__tooltip-icon--spacing))}.input__label--left.input__label--right{left:calc(var(--ez-text-input__icon--width) + 2px);width:calc(100% - var(--ez-text-input__icon--width) * 2)}.input--with--label{padding-bottom:0}.input--slim{padding-top:var(--space--small, 3px);padding-bottom:var(--space--small, 3px);height:var(--ez-text-input--height--slim)}.input__slim--title{font-size:16px;font-weight:bold}.input--slim::-webkit-input-placeholder,.input--slim:-moz-placeholder,.input--slim::-moz-placeholder,.input--slim:-ms-input-placeholder,.input--slim::placeholder{font-family:var(--ez-text-input--font-family);font-size:var(--ez-text-input--font-size);font-weight:var(--ez-text-input--font-weight);color:var(--ez-text-input__placeholder--color)}.input--slim:disabled::-webkit-input-placeholder,.input--slim:disabled:-moz-placeholder,.input--slim:disabled::-moz-placeholder,.input--slim:disabled:-ms-input-placeholder,.input--slim:disabled::placeholder{color:var(--ez-text-input__input--disabled--color)}input.input__slim--noborder{box-shadow:0 0 0 0;border:0 none;outline:0;background:var(--ez-text-input__input--noborder-color)}ez-icon.tooltip-icon{position:absolute;display:flex;align-items:center;justify-content:center;overflow:hidden;width:var(--ez-text-input__tooltip-icon---width);height:22px;margin:var(--ez-text-input__tooltip-icon---vertical-margin) var(--ez-text-input__tooltip-icon---horizontal-margin);top:0;right:0;border-radius:var(--ez-text-input--border-radius)}ez-icon.tooltip-icon.rightIconSlot{right:var(--ez-text-input__tooltip-icon--spacing)}ez-icon.tooltip-icon.hasError{--ez-icon--color:var(--ez-text-input__tooltip_icon--error--color)}";
9
9
 
10
10
  const EzTextInput = class {
11
11
  constructor(hostRef) {
@@ -12,6 +12,7 @@ const EzTooltip = class {
12
12
  constructor(hostRef) {
13
13
  index.registerInstance(this, hostRef);
14
14
  this._opened = false;
15
+ this._eventsRegistered = false;
15
16
  this.message = undefined;
16
17
  this.anchoringElement = undefined;
17
18
  this.placement = 'bottom';
@@ -107,6 +108,7 @@ const EzTooltip = class {
107
108
  this._mouseLeaveHandler = () => this.closeTooltip();
108
109
  element.addEventListener('mouseenter', this._mouseEnterHandler);
109
110
  element.addEventListener('mouseleave', this._mouseLeaveHandler);
111
+ this._eventsRegistered = true;
110
112
  }
111
113
  removeEvents(element = this.anchoringElement) {
112
114
  if (!element) {
@@ -118,10 +120,19 @@ const EzTooltip = class {
118
120
  if (this._mouseLeaveHandler) {
119
121
  element.removeEventListener('mouseleave', this._mouseLeaveHandler);
120
122
  }
123
+ this._eventsRegistered = false;
124
+ }
125
+ initializeTooltip() {
126
+ if (this._element && this.anchoringElement && !this._eventsRegistered) {
127
+ this.setEvents();
128
+ this.addInfoId();
129
+ }
130
+ }
131
+ connectedCallback() {
132
+ this.initializeTooltip();
121
133
  }
122
134
  componentDidLoad() {
123
- this.setEvents();
124
- this.addInfoId();
135
+ this.initializeTooltip();
125
136
  }
126
137
  addInfoId() {
127
138
  if (this._element) {
@@ -39,6 +39,9 @@ const TreeItem = (props) => {
39
39
  iconClick(treeItem);
40
40
  }
41
41
  }
42
+ function handleIconDoubleClick(event) {
43
+ event.stopPropagation();
44
+ }
42
45
  return (index.h("ul", { class: level === 1 ? "first-level" : undefined },
43
46
  index.h("li", Object.assign({ title: tooltipResolver(treeItem, !disabled, level), class: `tree-item ${treeItem.id !== selectedId ? "tree-item-error" : ""}`, onClick: () => available && itemClick(treeItem), onDblClick: () => available && itemDoubleClick(treeItem) }, {
44
47
  disabled,
@@ -47,7 +50,7 @@ const TreeItem = (props) => {
47
50
  }),
48
51
  index.h("div", { class: "item-label-container" },
49
52
  index.h("div", { class: "item-icon-box" }, expandable &&
50
- index.h("ez-icon", { id: treeItem.id, class: "item-icon", size: "small", iconName: iconResolver(treeItem, expanded, level), onClick: (event) => handleIconClick(event) })),
53
+ index.h("ez-icon", { id: treeItem.id, class: "item-icon", size: "small", iconName: iconResolver(treeItem, expanded, level), onClick: (event) => handleIconClick(event), onDblClick: (event) => handleIconDoubleClick(event) })),
51
54
  index.h("label", { class: `item-label ${treeItem.bold ? "item-label--bold" : ""}` }, treeItem.label)),
52
55
  getBadgeElement(treeItem.id, treeItem.badge, treeItem.id === selectedId)),
53
56
  expanded
@@ -139,6 +142,13 @@ class Node {
139
142
  this.children.set(item.id, new Node(tree, item, this));
140
143
  }
141
144
  }
145
+ removeChild(id) {
146
+ if (this.children.has(id)) {
147
+ this.children.delete(id);
148
+ return true;
149
+ }
150
+ return false;
151
+ }
142
152
  addPlaceHolder() {
143
153
  this.children.clear();
144
154
  const id = this.item.id;
@@ -188,6 +198,8 @@ class Tree extends Node {
188
198
  async addChildAt(parentId, item) {
189
199
  const parent = this.getNode(parentId);
190
200
  if (parent == undefined) {
201
+ this.addChild(this, item);
202
+ this._changeCallback();
191
203
  return;
192
204
  }
193
205
  parent.addChild(this, item);
@@ -251,6 +263,23 @@ class Tree extends Node {
251
263
  }
252
264
  this._changeCallback();
253
265
  }
266
+ removeItem(id) {
267
+ if (!id) {
268
+ return;
269
+ }
270
+ const node = this.getNode(id);
271
+ if (!node) {
272
+ return;
273
+ }
274
+ if (node.parent) {
275
+ node.parent.removeChild(id);
276
+ }
277
+ else {
278
+ this.children.delete(id);
279
+ }
280
+ this._disabledValues.delete(id);
281
+ this._changeCallback();
282
+ }
254
283
  async open(path) {
255
284
  return new Promise(async (resolve) => {
256
285
  await this.walkPath(this, path, node => node.item.expanded = true);
@@ -374,7 +403,7 @@ class Tree extends Node {
374
403
  }
375
404
  }
376
405
 
377
- const ezTreeCss = ":host{--ez-tree--border-radius:var(--border--radius-small, 8px);--ez-tree--padding-inline-start:20px;--ez-tree--margin:var(--space--extra-small, 3px);--ez-tree--margin-right:0px;--ez-tree--font-family:var(--font-pattern, Arial);--ez-tree--font-size:var(--text--medium, 14px);--ez-tree--selected--font-weight:var(--text-weight--large, 600);--ez-tree--font-weight:var(--text-weight--small, 400);--ez-tree--color:var(--title--primary, #2B3A54);--ez-tree--selected--color:var(--color--primary, #008561);--ez-tree--disabled--color:var(--text--disable, #AFB6C0);--ez-tree--font-weight--bold:var(--text-weight--large, 600);--ez-tree__tree-item--height:var(--size-medium, 18px);--ez-tree__tree-item--padding:var(--space--small, 6px);--ez-tree__tree-item--background-color:var(--background--xlight, #FFFFFF);--ez-tree__tree-item--selected--background-color:var(--color--primary-300, #E2F4EF);--ez-tree__tree-item--hover--background-color:var(--background--medium, #F0F3F7);--ez-tree__tree-item--disabled--background-color:var(--ez-tree__tree-Item--background-color);--ez-tree__item-icon-box--height:var(--ez-tree__tree-item--height);--ez-tree__item-icon-box--width:var(--size-medium, 18px);--ez-tree__item-icon-box--padding:var(--ez-tree__tree-item--padding);--ez-tree__badge--icon-color--default:var(--title--primary, #2B3A54);--ez-tree__badge--icon-color--error:var(--color--error, #da4453);--ez-tree__badge--icon-color--success:var(--color-alert--success-800, #157a00);--ez-tree__badge--icon-color--warning:var(--color--warning, #f2d410);--ez-tree__badge--icon-color--disabled:var(--text--disable, #AFB6C0);display:flex;flex-direction:column;margin:0 var(--ez-tree--margin) var(--ez-tree--margin) var(--ez-tree--margin);outline:none}ul{list-style-type:none;margin:0;cursor:default;padding-inline-start:var(--ez-tree--padding-inline-start)}ul.first-level{padding-inline-start:0}.tree-item-badge{width:16px;height:16px;background:transparent;border-radius:50%;transition:all 300ms ease-in-out;display:flex;align-items:center;justify-content:center}.tree-item-badge-error-icon{--ez-icon--color:white}.tree-item-badge-text{font-family:var(--ez-tree--font-family);font-size:var(--ez-tree--font-size);font-weight:var(--ez-tree--font-weight);color:var(--ez-tree--color)}.tree-item-badge.error{background:var(--color--error)}.tree-item-badge.warning{background:var(--color--warning)}.tree-item-badge.success{background:var(--color--success)}.item-label-container{display:flex;align-items:center;overflow:hidden}.tree-item{display:flex;align-items:center;cursor:pointer;margin-top:var(--ez-tree--margin);margin-right:var(--ez-tree--margin-right);border-radius:var(--ez-tree--border-radius);height:var(--ez-tree__tree-item--height);padding:var(--ez-tree__tree-item--padding);justify-content:space-between}.tree-item[selected]{background-color:var(--ez-tree__tree-item--selected--background-color)}.tree-item:hover{background-color:var(--ez-tree__tree-item--hover--background-color)}.tree-item[disabled],.tree-item[disabled]:hover{background-color:var(--ez-tree__tree-item--disabled--background-color)}.item-icon-box{display:flex;align-items:center;justify-content:center;width:var(--ez-tree__item-icon-box--width);height:var(--ez-tree__item-icon-box--height);padding:var(--ez-tree__item-icon-box--padding) var(--ez-tree__item-icon-box--padding) var(--ez-tree__item-icon-box--padding) 0}.item-icon{--ez-icon--color:var(--ez-tree--color)}.item-icon:hover{cursor:pointer}.tree-item[selected] .item-icon{--ez-icon--color:var(--ez-tree--selected--color)}.tree-item[disabled] .item-icon{cursor:unset;--ez-icon--color:var(--ez-tree--disabled--color)}.item-label{cursor:inherit;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:var(--ez-tree--font-family);font-size:var(--ez-tree--font-size);font-weight:var(--ez-tree--font-weight);color:var(--ez-tree--color)}.item-label--bold{font-weight:var(--ez-tree--font-weight--bold)}.tree-item[selected] .item-label{color:var(--ez-tree--selected--color);font-weight:var(--ez-tree--selected--font-weight)}.tree-item[disabled] .item-label{color:var(--ez-tree--disabled--color)}";
406
+ const ezTreeCss = ":host{--ez-tree--border-radius:var(--border--radius-small, 8px);--ez-tree--padding-inline-start:20px;--ez-tree--margin:var(--space--extra-small, 3px);--ez-tree--margin-right:0px;--ez-tree--user-select:auto;--ez-tree--font-family:var(--font-pattern, Arial);--ez-tree--font-size:var(--text--medium, 14px);--ez-tree--selected--font-weight:var(--text-weight--large, 600);--ez-tree--font-weight:var(--text-weight--small, 400);--ez-tree--color:var(--title--primary, #2B3A54);--ez-tree--selected--color:var(--color--primary, #008561);--ez-tree--disabled--color:var(--text--disable, #AFB6C0);--ez-tree--font-weight--bold:var(--text-weight--large, 600);--ez-tree__tree-item--height:var(--size-medium, 18px);--ez-tree__tree-item--padding:var(--space--small, 6px);--ez-tree__tree-item--background-color:var(--background--xlight, #FFFFFF);--ez-tree__tree-item--selected--background-color:var(--color--primary-300, #E2F4EF);--ez-tree__tree-item--hover--background-color:var(--background--medium, #F0F3F7);--ez-tree__tree-item--disabled--background-color:var(--ez-tree__tree-Item--background-color);--ez-tree__item-icon-box--height:var(--ez-tree__tree-item--height);--ez-tree__item-icon-box--width:var(--size-medium, 18px);--ez-tree__item-icon-box--padding:var(--ez-tree__tree-item--padding);--ez-tree__badge--icon-color--default:var(--title--primary, #2B3A54);--ez-tree__badge--icon-color--error:var(--color--error, #da4453);--ez-tree__badge--icon-color--success:var(--color-alert--success-800, #157a00);--ez-tree__badge--icon-color--warning:var(--color--warning, #f2d410);--ez-tree__badge--icon-color--disabled:var(--text--disable, #AFB6C0);display:flex;flex-direction:column;margin:0 var(--ez-tree--margin) var(--ez-tree--margin) var(--ez-tree--margin);outline:none}ul{list-style-type:none;margin:0;cursor:default;padding-inline-start:var(--ez-tree--padding-inline-start)}ul.first-level{padding-inline-start:0}.tree-item-badge{width:16px;height:16px;background:transparent;border-radius:50%;transition:all 300ms ease-in-out;display:flex;align-items:center;justify-content:center}.tree-item-badge-error-icon{--ez-icon--color:white}.tree-item-badge-text{font-family:var(--ez-tree--font-family);font-size:var(--ez-tree--font-size);font-weight:var(--ez-tree--font-weight);color:var(--ez-tree--color)}.tree-item-badge.error{background:var(--color--error)}.tree-item-badge.warning{background:var(--color--warning)}.tree-item-badge.success{background:var(--color--success)}.item-label-container{display:flex;align-items:center;overflow:hidden}.tree-item{display:flex;align-items:center;cursor:pointer;margin-top:var(--ez-tree--margin);margin-right:var(--ez-tree--margin-right);border-radius:var(--ez-tree--border-radius);height:var(--ez-tree__tree-item--height);padding:var(--ez-tree__tree-item--padding);justify-content:space-between}.tree-item[selected]{background-color:var(--ez-tree__tree-item--selected--background-color)}.tree-item:hover{background-color:var(--ez-tree__tree-item--hover--background-color)}.tree-item[disabled],.tree-item[disabled]:hover{background-color:var(--ez-tree__tree-item--disabled--background-color)}.item-icon-box{display:flex;align-items:center;justify-content:center;width:var(--ez-tree__item-icon-box--width);height:var(--ez-tree__item-icon-box--height);padding:var(--ez-tree__item-icon-box--padding) var(--ez-tree__item-icon-box--padding) var(--ez-tree__item-icon-box--padding) 0}.item-icon{--ez-icon--color:var(--ez-tree--color)}.item-icon:hover{cursor:pointer}.tree-item[selected] .item-icon{--ez-icon--color:var(--ez-tree--selected--color)}.tree-item[disabled] .item-icon{cursor:unset;--ez-icon--color:var(--ez-tree--disabled--color)}.item-label{cursor:inherit;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;user-select:var(--ez-tree--user-select);font-family:var(--ez-tree--font-family);font-size:var(--ez-tree--font-size);font-weight:var(--ez-tree--font-weight);color:var(--ez-tree--color)}.item-label--bold{font-weight:var(--ez-tree--font-weight--bold)}.tree-item[selected] .item-label{color:var(--ez-tree--selected--color);font-weight:var(--ez-tree--selected--font-weight)}.tree-item[disabled] .item-label{color:var(--ez-tree--disabled--color)}";
378
407
 
379
408
  const EzTree = class {
380
409
  constructor(hostRef) {
@@ -382,12 +411,20 @@ const EzTree = class {
382
411
  this.ezChange = index.createEvent(this, "ezChange", 7);
383
412
  this.ezOpenItem = index.createEvent(this, "ezOpenItem", 7);
384
413
  this.ezDbClickItem = index.createEvent(this, "ezDbClickItem", 7);
414
+ this.ezRemoveItem = index.createEvent(this, "ezRemoveItem", 7);
385
415
  this._onItemClick = (item) => {
386
- this._onIconClick(item);
416
+ if (!this.selectable) {
417
+ this.openClose(item);
418
+ return;
419
+ }
420
+ if (this.value && this.value.id === item.id) {
421
+ this.value = undefined;
422
+ return;
423
+ }
424
+ this.value = item;
387
425
  };
388
426
  this._onIconClick = (item) => {
389
427
  this.openClose(item);
390
- this.value = item;
391
428
  };
392
429
  this._tree = new Tree(() => index.forceUpdate(this));
393
430
  this._waintingForLoad = undefined;
@@ -397,6 +434,7 @@ const EzTree = class {
397
434
  this.iconResolver = defaultIconResolver;
398
435
  this.tooltipResolver = undefined;
399
436
  this.enableHierarchicalFilter = true;
437
+ this.selectable = true;
400
438
  }
401
439
  /**
402
440
  * Efetua a seleção de um item.
@@ -447,10 +485,14 @@ const EzTree = class {
447
485
  parentId = (_a = this.value) === null || _a === void 0 ? void 0 : _a.id;
448
486
  }
449
487
  this._tree.addChildAt(parentId, item);
488
+ this.addItemInIndexedList(parentId, item);
450
489
  const node = this._tree.getNode(parentId);
451
490
  if (node) {
452
491
  node.item.expanded = true;
453
492
  }
493
+ else {
494
+ this.collapseAll();
495
+ }
454
496
  }
455
497
  /**
456
498
  * Efetua a seleção de um item.
@@ -473,12 +515,48 @@ const EzTree = class {
473
515
  /**
474
516
  * Atualiza um item
475
517
  */
476
- async updateItem(item) {
477
- var _a;
478
- this._tree.updateItem(item);
518
+ async updateItem(item, config) {
519
+ var _a, _b, _c;
520
+ if (Array.isArray(item)) {
521
+ item.forEach(i => this.updateItem(i, config));
522
+ return;
523
+ }
524
+ if (config === null || config === void 0 ? void 0 : config.updatedBySelectedId) {
525
+ Object.assign(item, { id: this.selectedId });
526
+ }
527
+ this._tree.updateItem((config === null || config === void 0 ? void 0 : config.forceDefaultValues) ? this.applyDefaultValues(item) : item);
528
+ this.updateItemInIndexedList(item, config === null || config === void 0 ? void 0 : config.forceDefaultValues);
479
529
  const node = (_a = this._tree) === null || _a === void 0 ? void 0 : _a.getNode(this.selectedId);
480
530
  if (node == undefined) {
481
531
  this.value = this._visibleItems ? this._visibleItems[0] : undefined;
532
+ this._tree.collapseAll();
533
+ }
534
+ if (((_b = this.value) === null || _b === void 0 ? void 0 : _b.id) === item.id) {
535
+ this.value = item;
536
+ this.ezChange.emit(this.value);
537
+ return;
538
+ }
539
+ const childSelected = this.getItemById((_c = this.value) === null || _c === void 0 ? void 0 : _c.id, [item]);
540
+ if (childSelected) {
541
+ this.value = childSelected;
542
+ this.ezChange.emit(this.value);
543
+ }
544
+ }
545
+ /**
546
+ * Remove um item da árvore pelo seu ID.
547
+ * Se o item removido estiver selecionado, a seleção será limpa.
548
+ */
549
+ async removeItem(id) {
550
+ var _a;
551
+ id = id !== null && id !== void 0 ? id : this.selectedId;
552
+ if (!id) {
553
+ return;
554
+ }
555
+ this._tree.removeItem(id);
556
+ this.removeItemFromIndexedList(id);
557
+ this.ezRemoveItem.emit(id);
558
+ if (((_a = this.value) === null || _a === void 0 ? void 0 : _a.id) === id) {
559
+ this.value = undefined;
482
560
  }
483
561
  }
484
562
  /**
@@ -566,6 +644,75 @@ const EzTree = class {
566
644
  event.preventDefault();
567
645
  }
568
646
  }
647
+ getItemById(id, items) {
648
+ for (const treeItem of items) {
649
+ if (treeItem.id === id) {
650
+ return treeItem;
651
+ }
652
+ else if (treeItem.children && Array.isArray(treeItem.children)) {
653
+ const itemFound = this.getItemById(id, treeItem.children);
654
+ if (itemFound) {
655
+ return itemFound;
656
+ }
657
+ }
658
+ }
659
+ return undefined;
660
+ }
661
+ addItemInIndexedList(parentId, item, items) {
662
+ var _a, _b;
663
+ items = (_a = items !== null && items !== void 0 ? items : this.items) !== null && _a !== void 0 ? _a : [];
664
+ if (!parentId) {
665
+ items.push(item);
666
+ }
667
+ const itemFound = this.getItemById(parentId, items);
668
+ itemFound.children = ((_b = itemFound.children) !== null && _b !== void 0 ? _b : []);
669
+ itemFound.children.push(item);
670
+ itemFound.childrenCount = itemFound.children.length;
671
+ }
672
+ applyDefaultValues(item) {
673
+ if (item.disabled === undefined) {
674
+ item.disabled = false;
675
+ }
676
+ if (item.expanded === undefined) {
677
+ item.expanded = false;
678
+ }
679
+ return item;
680
+ }
681
+ updateItemInIndexedList(item, forceDefaultValues = false) {
682
+ if (!item || !this.items) {
683
+ return;
684
+ }
685
+ const itemFound = this.getItemById(item.id, this.items);
686
+ if (itemFound) {
687
+ Object.assign(itemFound, forceDefaultValues ? this.applyDefaultValues(item) : item);
688
+ }
689
+ }
690
+ removeItemFromIndexedList(id, items) {
691
+ var _a;
692
+ items = (_a = items !== null && items !== void 0 ? items : this.items) !== null && _a !== void 0 ? _a : [];
693
+ if (!id) {
694
+ return false;
695
+ }
696
+ const rootIndex = items.findIndex(item => item.id === id);
697
+ if (rootIndex !== -1) {
698
+ items.splice(rootIndex, 1);
699
+ return true;
700
+ }
701
+ for (const treeItem of items) {
702
+ if (treeItem.children && Array.isArray(treeItem.children)) {
703
+ const childIndex = treeItem.children.findIndex(child => child.id === id);
704
+ if (childIndex !== -1) {
705
+ treeItem.children.splice(childIndex, 1);
706
+ treeItem.childrenCount = treeItem.children.length;
707
+ return true;
708
+ }
709
+ if (this.removeItemFromIndexedList(id, treeItem.children)) {
710
+ return true;
711
+ }
712
+ }
713
+ }
714
+ return false;
715
+ }
569
716
  getItemPathAttrs({ id, label }) {
570
717
  return { id, label };
571
718
  }