@sankhyalabs/ezui 5.20.0-dev.2 → 5.20.0-dev.21

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 (139) hide show
  1. package/README.md +4 -5
  2. package/dist/cjs/{CSSVarsUtils-b136a156.js → CSSVarsUtils-10c9d5b4.js} +13 -0
  3. package/dist/cjs/ez-actions-button.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-alert-list.cjs.entry.js +33 -28
  5. package/dist/cjs/ez-card-item_3.cjs.entry.js +6 -5
  6. package/dist/cjs/ez-combo-box.cjs.entry.js +8 -7
  7. package/dist/cjs/ez-date-input.cjs.entry.js +4 -1
  8. package/dist/cjs/ez-date-time-input.cjs.entry.js +4 -1
  9. package/dist/cjs/ez-form-view.cjs.entry.js +34 -15
  10. package/dist/cjs/ez-grid.cjs.entry.js +91 -30
  11. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +2 -10
  13. package/dist/cjs/ez-number-input.cjs.entry.js +4 -1
  14. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-search.cjs.entry.js +7 -8
  16. package/dist/cjs/ez-split-button.cjs.entry.js +147 -0
  17. package/dist/cjs/ez-split-item.cjs.entry.js +20 -2
  18. package/dist/cjs/ez-split-panel.cjs.entry.js +15 -12
  19. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  20. package/dist/cjs/ezui.cjs.js +1 -1
  21. package/dist/cjs/filter-column.cjs.entry.js +16 -5
  22. package/dist/cjs/index-a7b0c73d.js +8 -4
  23. package/dist/cjs/loader.cjs.js +1 -1
  24. package/dist/collection/collection-manifest.json +2 -1
  25. package/dist/collection/components/ez-alert-list/ez-alert-list.js +33 -28
  26. package/dist/collection/components/ez-card-item/ez-card-item.css +39 -6
  27. package/dist/collection/components/ez-card-item/ez-card-item.js +22 -3
  28. package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +1 -0
  29. package/dist/collection/components/ez-combo-box/ez-combo-box.js +7 -6
  30. package/dist/collection/components/ez-date-input/ez-date-input.js +3 -0
  31. package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +3 -0
  32. package/dist/collection/components/ez-form-view/ez-form-view.css +17 -1
  33. package/dist/collection/components/ez-form-view/ez-form-view.js +22 -5
  34. package/dist/collection/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.js +1 -1
  35. package/dist/collection/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.js +1 -1
  36. package/dist/collection/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.js +3 -3
  37. package/dist/collection/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.js +4 -2
  38. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +1 -1
  39. package/dist/collection/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.js +1 -1
  40. package/dist/collection/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.js +1 -1
  41. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +12 -11
  42. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +15 -1
  43. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js +1 -3
  44. package/dist/collection/components/ez-grid/ez-grid.css +25 -1
  45. package/dist/collection/components/ez-grid/ez-grid.js +67 -10
  46. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +16 -5
  47. package/dist/collection/components/ez-icon/ez-icon.css +1 -1
  48. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.js +2 -10
  49. package/dist/collection/components/ez-number-input/ez-number-input.js +3 -0
  50. package/dist/collection/components/ez-popup/ez-popup.css +2 -5
  51. package/dist/collection/components/ez-search/ez-search.css +2 -1
  52. package/dist/collection/components/ez-search/ez-search.js +5 -6
  53. package/dist/collection/components/ez-split-button/ez-split-button.css +229 -0
  54. package/dist/collection/components/ez-split-button/ez-split-button.js +436 -0
  55. package/dist/collection/components/ez-split-button/test/dropdownItems.js +42 -0
  56. package/dist/collection/components/ez-split-panel/ez-split-panel.css +6 -7
  57. package/dist/collection/components/ez-split-panel/ez-split-panel.js +35 -14
  58. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.css +47 -12
  59. package/dist/collection/components/ez-split-panel/structure/item/ez-split-item.js +82 -2
  60. package/dist/collection/utils/CSSVarsUtils.js +13 -0
  61. package/dist/collection/utils/form/test/DataBinder.test.js +9 -0
  62. package/dist/custom-elements/index.d.ts +6 -0
  63. package/dist/custom-elements/index.js +394 -124
  64. package/dist/esm/{CSSVarsUtils-a97cfa29.js → CSSVarsUtils-71ce76be.js} +13 -0
  65. package/dist/esm/ez-actions-button.entry.js +1 -1
  66. package/dist/esm/ez-alert-list.entry.js +33 -28
  67. package/dist/esm/ez-card-item_3.entry.js +6 -5
  68. package/dist/esm/ez-combo-box.entry.js +8 -7
  69. package/dist/esm/ez-date-input.entry.js +4 -1
  70. package/dist/esm/ez-date-time-input.entry.js +4 -1
  71. package/dist/esm/ez-form-view.entry.js +35 -16
  72. package/dist/esm/ez-grid.entry.js +92 -31
  73. package/dist/esm/ez-icon.entry.js +1 -1
  74. package/dist/esm/ez-multi-selection-list.entry.js +2 -10
  75. package/dist/esm/ez-number-input.entry.js +4 -1
  76. package/dist/esm/ez-popup.entry.js +1 -1
  77. package/dist/esm/ez-search.entry.js +7 -8
  78. package/dist/esm/ez-split-button.entry.js +143 -0
  79. package/dist/esm/ez-split-item.entry.js +20 -2
  80. package/dist/esm/ez-split-panel.entry.js +15 -12
  81. package/dist/esm/ez-time-input.entry.js +1 -1
  82. package/dist/esm/ezui.js +1 -1
  83. package/dist/esm/filter-column.entry.js +16 -5
  84. package/dist/esm/index-baa5e267.js +8 -4
  85. package/dist/esm/loader.js +1 -1
  86. package/dist/ezui/ezui.esm.js +1 -1
  87. package/dist/ezui/{p-f56dd1da.entry.js → p-07cbffce.entry.js} +1 -1
  88. package/dist/ezui/p-13dbad96.entry.js +1 -0
  89. package/dist/ezui/p-2eb8f73b.entry.js +1 -0
  90. package/dist/ezui/{p-40f72de4.entry.js → p-784fe207.entry.js} +1 -1
  91. package/dist/ezui/p-7af81663.entry.js +1 -0
  92. package/dist/ezui/p-801fd0f8.entry.js +1 -0
  93. package/dist/ezui/p-807560f0.entry.js +1 -0
  94. package/dist/ezui/p-940ed30b.entry.js +1 -0
  95. package/dist/ezui/{p-eb36f072.entry.js → p-99ead599.entry.js} +1 -1
  96. package/dist/ezui/{p-7eb3e1a5.js → p-9e11fc7b.js} +1 -1
  97. package/dist/ezui/p-9f1e89c9.entry.js +1 -0
  98. package/dist/ezui/{p-6e2f8e6b.entry.js → p-a2704c1a.entry.js} +2 -2
  99. package/dist/ezui/{p-51c5e071.entry.js → p-abc23d6f.entry.js} +1 -1
  100. package/dist/ezui/p-af95cd16.entry.js +1 -0
  101. package/dist/ezui/{p-c0f1715f.entry.js → p-b567fa8c.entry.js} +1 -1
  102. package/dist/ezui/p-b9fbf4e7.entry.js +1 -0
  103. package/dist/ezui/p-baf80b13.entry.js +1 -0
  104. package/dist/ezui/p-db77a984.entry.js +1 -0
  105. package/dist/ezui/{p-9cad9b6e.entry.js → p-e85c48d7.entry.js} +1 -1
  106. package/dist/types/components/ez-alert-list/ez-alert-list.d.ts +1 -1
  107. package/dist/types/components/ez-card-item/ez-card-item.d.ts +4 -0
  108. package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +1 -0
  109. package/dist/types/components/ez-form-view/ez-form-view.d.ts +3 -0
  110. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +1 -0
  111. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +1 -0
  112. package/dist/types/components/ez-grid/controller/ag-grid/DataSource.d.ts +2 -1
  113. package/dist/types/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.d.ts +1 -1
  114. package/dist/types/components/ez-grid/ez-grid.d.ts +15 -2
  115. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +4 -1
  116. package/dist/types/components/ez-multi-selection-list/ez-multi-selection-list.d.ts +0 -1
  117. package/dist/types/components/ez-split-button/ez-split-button.d.ts +89 -0
  118. package/dist/types/components/ez-split-button/test/dropdownItems.d.ts +2 -0
  119. package/dist/types/components/ez-split-panel/ez-split-panel.d.ts +23 -0
  120. package/dist/types/components/ez-split-panel/structure/item/ez-split-item.d.ts +27 -0
  121. package/dist/types/components.d.ts +155 -0
  122. package/dist/types/utils/CSSVarsUtils.d.ts +1 -0
  123. package/dist/types/utils/form/test/DataBinder.test.d.ts +1 -0
  124. package/package.json +13 -5
  125. package/react/components.d.ts +1 -0
  126. package/react/components.js +1 -0
  127. package/react/components.js.map +1 -1
  128. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridUtils.js +0 -8
  129. package/dist/ezui/p-133fae4a.entry.js +0 -1
  130. package/dist/ezui/p-24d3fede.entry.js +0 -1
  131. package/dist/ezui/p-43b03119.entry.js +0 -1
  132. package/dist/ezui/p-4a7f113d.entry.js +0 -1
  133. package/dist/ezui/p-596634e9.entry.js +0 -1
  134. package/dist/ezui/p-76ba9d67.entry.js +0 -1
  135. package/dist/ezui/p-796c1a88.entry.js +0 -1
  136. package/dist/ezui/p-af15c277.entry.js +0 -1
  137. package/dist/ezui/p-ba875f37.entry.js +0 -1
  138. package/dist/ezui/p-d6ffe679.entry.js +0 -1
  139. package/dist/types/components/ez-grid/controller/ag-grid/AgGridUtils.d.ts +0 -1
@@ -115,6 +115,7 @@ ez-icon {
115
115
  .list-container {
116
116
  /*public*/
117
117
  min-width: var(--ez-search__list-min-width);
118
+ overflow: auto;
118
119
 
119
120
  /*private*/
120
121
  position: relative;
@@ -130,6 +131,7 @@ ez-icon {
130
131
  /*public*/
131
132
  z-index: var(--more-visible, 2);
132
133
  max-height: 350px;
134
+ min-width: 150px;
133
135
  background-color: var(--ez-search--background-color--xlight);
134
136
  border-radius: var(--ez-search--border-radius);
135
137
  box-shadow: var(--shadow, 0px 0px 16px 0px #000);
@@ -195,7 +197,6 @@ ez-icon {
195
197
  /*public*/
196
198
  border-radius: var(--ez-search--border-radius-small);
197
199
  padding: var(--ez-search--space--small);
198
- min-height: var(--ez-search__list-height);
199
200
  gap: var(--space--small, 6px);
200
201
  }
201
202
 
@@ -187,10 +187,9 @@ export class EzSearch {
187
187
  if (currentValue == undefined) {
188
188
  return;
189
189
  }
190
- if (!this.showSelectedValue || currentValue.value == undefined) {
191
- return currentValue.label;
192
- }
193
- return currentValue.label ? `${currentValue.value} - ${currentValue.label}` : currentValue.value;
190
+ let text = (!this.showSelectedValue || currentValue.value == undefined) ? currentValue.label : `${currentValue.value} - ${currentValue.label}`;
191
+ text = text.replace(new RegExp(this._startHighlightTag, 'g'), '').replace(new RegExp(this._endHighlightTag, 'g'), '');
192
+ return text;
194
193
  }
195
194
  getText() {
196
195
  const currentValue = this.getSelectedOption(this.value);
@@ -262,7 +261,7 @@ export class EzSearch {
262
261
  title: opt.label,
263
262
  details: opt.details
264
263
  };
265
- return h("div", { style: { "height": "100%" }, onMouseDown: () => this.createOption(card), onMouseOver: () => this._preSelection = index }, h("ez-card-item", { item: card }));
264
+ return h("div", { style: { "height": "100%" }, class: index === this._preSelection ? "item preselected" : "item", id: `item_${opt.value}`, onMouseDown: () => this.createOption(card), onMouseOver: () => this._preSelection = index }, h("ez-card-item", { item: card }));
266
265
  }
267
266
  showOptions() {
268
267
  if (!this.enabled)
@@ -306,7 +305,7 @@ export class EzSearch {
306
305
  }
307
306
  scrollToOption(opt) {
308
307
  window.requestAnimationFrame(() => {
309
- const liElem = (opt === null || opt === void 0 ? void 0 : opt.value) ? this._optionsList.querySelector(`li#item_${opt.value.replace(/[<>\[\]#=]/g, '\\$&').replace(/:/g, '\\:')}`) : undefined;
308
+ const liElem = (opt === null || opt === void 0 ? void 0 : opt.value) ? this._optionsList.querySelector(`div#item_${opt.value.replace(/[<>\[\]#=]/g, '\\$&').replace(/:/g, '\\:')}`) : undefined;
310
309
  if (liElem)
311
310
  liElem.scrollIntoView({ behavior: "smooth", block: "nearest" });
312
311
  });
@@ -0,0 +1,229 @@
1
+ :host {
2
+
3
+ /* dimensions */
4
+ /*@doc Define a largura mínima do componente.*/
5
+ --ez-split-button--min-width: 24;
6
+ /*@doc Define a largura do componente.*/
7
+ --ez-split-button--width: 'auto';
8
+ /*@doc Define a altura do componente.*/
9
+ --ez-split-button__medium--height: 32px;
10
+ --ez-split-button__large--height: 42px;
11
+ /*@doc Define a largura do slot que contém o ícone.*/
12
+ --ez-split-button__medium-icon--width: 40px;
13
+ --ez-split-button__large-icon--width: 44px;
14
+ /*@doc Define o espaçamento entre o ícone e o label.*/
15
+ --ez-split-button__inline__icon--gap: 6px;
16
+ /*@doc Define o espaçamento superior ao label.*/
17
+ --ez-split-button__label--padding-top: 0px;
18
+ /*@doc Define o espaçamento inferior ao label.*/
19
+ --ez-split-button__label--padding-bottom: 0px;
20
+ /*@doc Define o espaçamento esquerdo ao ícone.*/
21
+ --ez-split-button__right-button--padding-left: 8px;
22
+ /* general */
23
+ /*@doc Define a cor do label.*/
24
+ --ez-split-button--color: var(--title--primary, #FFF);
25
+ /*@doc Define o tamanho do label.*/
26
+ --ez-split-button--font-size: var(--text--medium, 14px);
27
+ /*@doc Define a família da fonte do label.*/
28
+ --ez-split-button--font-family: var(--font-pattern, Arial);
29
+ /*@doc Define o peso da fonte do label.*/
30
+ --ez-split-button--font-weight: var(--text-weight--large);
31
+ /*@doc Define a cor de fundo do botão.*/
32
+ --ez-split-button--background-color: var(--background--medium, #008561);
33
+ /*@doc Define o raio da borda do botão.*/
34
+ --ez-split-button--border-radius: var(--border--radius-large, 12px);
35
+ /*@doc Define o estilo da borda do botão.*/
36
+ --ez-split-button--border: none;
37
+ /*@doc Define o alinhamento horizontal do conteúdo do botão.*/
38
+ --ez-split-button--justify-content: center;
39
+ /*@doc Define a cor do texto e do ícone quando o cursor está sobre o botão.*/
40
+ --ez-split-button--hover-color: var(--color--primary-600);
41
+ /*@doc Define a cor de fundo quando o cursor está sobre o botão.*/
42
+ --ez-split-button--hover--background-color: var(--background--medium, var(--ez-split-button--background-color));
43
+ /*@doc Define a cor do texto quando o botão está desabilitado.*/
44
+ --ez-split-button--disabled-color: var(--text--disable);
45
+ /*@doc Define a cor de fundo quando o botão está desabilitado.*/
46
+ --ez-split-button--disabled--background-color: var(--color--disable-secondary);
47
+ /*@doc Define o estido da borda quando o botão está selecionado.*/
48
+ --ez-split-button--focus--border: var(--border--medium, 2px) var(--color--primary-300);
49
+ /*@doc Define a sombra do botão quando selecionado.*/
50
+ --ez-split-button--focus--box-shadow: none;
51
+ /*@doc Define a cor do texto e do ícone ao ativar o botão.*/
52
+ --ez-split-button--active-color: var(--color--primary-700);
53
+ /*@doc Define a cor do fundo ao ativar o botão.*/
54
+ --ez-split-button--active--background-color: var(--background--strong);
55
+ }
56
+
57
+ ez-icon {
58
+ --ez-icon--color: inherit;
59
+ }
60
+
61
+ button {
62
+ /*private*/
63
+ position: relative;
64
+ display: flex;
65
+ align-items: center;
66
+ margin: 0;
67
+ cursor: pointer;
68
+ transition: background-color 0.2s linear;
69
+ white-space: nowrap;
70
+
71
+ /*public*/
72
+ min-width: var(--ez-split-button--min-width);
73
+ width: var(--ez-split-button--width);
74
+ height: var(--ez-split-button__medium--height);
75
+ font-family: var(--ez-split-button--font-family);
76
+ font-size: var(--ez-split-button--font-size);
77
+ font-weight: var(--ez-split-button--font-weight);
78
+ padding: var(--ez-split-button__label--padding-top) 0 var(--ez-split-button__label--padding-bottom) 0;
79
+ border-top-left-radius: var(--ez-split-button--border-radius);
80
+ border-bottom-left-radius: var(--ez-split-button--border-radius);
81
+ background-color: var(--ez-split-button--background-color);
82
+ color: var(--ez-split-button--color);
83
+ fill: var(--ez-split-button--color);
84
+ border: var(--ez-split-button--border);
85
+ justify-content: var(--ez-split-button--justify-content);
86
+ }
87
+
88
+ label {
89
+ cursor: pointer;
90
+ }
91
+
92
+ button:active {
93
+ outline: none;
94
+ box-shadow: none;
95
+ background-color: var(--ez-split-button--active--background-color);
96
+ color: var(--ez-split-button--active-color);
97
+ fill: var(--ez-split-button--active-color);
98
+ --ez-icon--color: var(--ez-split-button--active-color);
99
+ }
100
+
101
+ .ez-split-button__left-button:focus,
102
+ .ez-split-button__right-button:focus {
103
+ outline: var(--ez-split-button--focus--border);
104
+ box-shadow: var(--ez-split-button--focus--box-shadow);
105
+ }
106
+
107
+ .ez-split-button__left-button:hover,
108
+ .ez-split-button__right-button:hover {
109
+ outline: none;
110
+ background-color: var(--ez-split-button--hover--background-color);
111
+ color: var(--ez-split-button--hover-color);
112
+ fill: var(--ez-split-button--hover-color);
113
+ --ez-icon--color: var(--ez-split-button--hover-color);
114
+ }
115
+
116
+ .ez-split-button__left-button:disabled,
117
+ .ez-split-button__left-button:disabled label,
118
+ .ez-split-button__right-button:disabled{
119
+ background-color: var(--ez-split-button--disabled--background-color);
120
+ color: var(--ez-split-button--disabled-color);
121
+ fill: var(--ez-split-button--disabled-color);
122
+ border: none;
123
+ --ez-icon--color: var(--ez-split-button--disabled-color);
124
+ cursor: not-allowed;
125
+ }
126
+
127
+ button.large {
128
+ height: var(--ez-split-button__large--height);
129
+ }
130
+
131
+ button.medium {
132
+ height: var(--ez-split-button__medium--height);
133
+ }
134
+
135
+ /*default*/
136
+ .default label {
137
+ padding: var(--ez-split-button__label--padding-top) 12px var(--ez-split-button__label--padding-bottom) 20px;
138
+ }
139
+
140
+ /*icon-left*/
141
+ .icon-left {
142
+ gap: var(--ez-split-button__inline__icon--gap);
143
+ }
144
+
145
+ .icon-left label {
146
+ padding-right: 12px;
147
+ }
148
+
149
+ .icon-left ez-icon {
150
+ padding-left: 20px;
151
+ }
152
+
153
+ /*icon-only*/
154
+ .icon-only {
155
+ padding-left: 12px;
156
+ padding-right: 12px;
157
+ }
158
+
159
+ .ez-split-button__right-button {
160
+ border-top-right-radius: var(--ez-split-button--border-radius);
161
+ border-bottom-right-radius: var(--ez-split-button--border-radius);
162
+ border-top-left-radius: 0;
163
+ border-bottom-left-radius:0;
164
+ }
165
+
166
+ .ez-split-button__right-button--medium {
167
+ min-width: var(--ez-split-button__medium-icon--width);
168
+ }
169
+
170
+ .ez-split-button__right-button--large {
171
+ min-width: var(--ez-split-button__large-icon--width);
172
+ }
173
+
174
+ .ez-split-button__right-button--divider {
175
+ top: 10%;
176
+ bottom: 10%;
177
+ }
178
+ .ez-split-button__right-button--divider:before {
179
+ content: "";
180
+ position: absolute;
181
+ left: 0;
182
+ border-left: 1px solid rgba(0, 0, 0, 20%);
183
+ border-radius: 2px;
184
+ height: 75%;
185
+ }
186
+
187
+ .btn-icon--medium {
188
+ min-width: --ez-split-button__medium-icon--width;
189
+ }
190
+
191
+ .btn-icon--large {
192
+ min-width: --ez-split-button__large-icon--width;
193
+ }
194
+
195
+ .ez-split-button__right-button-container {
196
+ position: absolute;
197
+ left: 0;
198
+ padding-left: var(--ez-split-button__right-button--padding-left);
199
+ }
200
+
201
+ .label-icon {
202
+ display: flex;
203
+ flex-direction: row;
204
+ align-items: center;
205
+ color: var(--ez-split-button--color);
206
+ }
207
+
208
+ .label-icon:active {
209
+ color: var(--ez-split-button--active-color);
210
+ fill: var(--ez-split-button--active-color);
211
+ --ez-icon--color: var(--ez-split-button--active-color);
212
+ }
213
+
214
+ .dropdown {
215
+ display: flex;
216
+ }
217
+
218
+ .dropdown-content {
219
+ display: block;
220
+ position: absolute;
221
+ background-color: #f1f1f1;
222
+ min-width: 160px;
223
+ z-index: --ez-elevation--8;
224
+ border-radius: var(--ez-split-button--border-radius);
225
+ }
226
+
227
+ .dropdown-content > ez-dropdown {
228
+ position: relative;
229
+ }