@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-79202.0 → 0.0.0-bugfix-dev-KB-79901.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/cjs/ez-grid.cjs.entry.js +28 -15
  2. package/dist/cjs/ez-multi-selection-list_2.cjs.entry.js +1584 -0
  3. package/dist/cjs/ez-search.cjs.entry.js +2 -1
  4. package/dist/cjs/ezui.cjs.js +1 -1
  5. package/dist/cjs/filter-column.cjs.entry.js +2 -45
  6. package/dist/cjs/index-a7b0c73d.js +2 -2
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/collection/collection-manifest.json +1 -0
  9. package/dist/collection/components/ez-grid/controller/ag-grid/components/EzGridCustomHeader.js +1 -1
  10. package/dist/collection/components/ez-grid/ez-grid.css +37 -7
  11. package/dist/collection/components/ez-grid/ez-grid.js +26 -13
  12. package/dist/collection/components/ez-grid/subcomponents/filter-column.js +2 -45
  13. package/dist/collection/components/ez-multi-selection-list/ez-multi-selection-list.css +1 -0
  14. package/dist/collection/components/ez-popover-plus/ez-popover-plus.css +67 -0
  15. package/dist/collection/components/ez-popover-plus/ez-popover-plus.js +465 -0
  16. package/dist/collection/components/ez-search/ez-search.js +2 -1
  17. package/dist/custom-elements/index.d.ts +6 -0
  18. package/dist/custom-elements/index.js +1440 -68
  19. package/dist/esm/ez-grid.entry.js +28 -15
  20. package/dist/esm/ez-multi-selection-list_2.entry.js +1579 -0
  21. package/dist/esm/ez-search.entry.js +2 -1
  22. package/dist/esm/ezui.js +1 -1
  23. package/dist/esm/filter-column.entry.js +2 -45
  24. package/dist/esm/index-baa5e267.js +2 -2
  25. package/dist/esm/loader.js +1 -1
  26. package/dist/ezui/ezui.esm.js +1 -1
  27. package/dist/ezui/p-0fa52b0f.entry.js +1 -0
  28. package/dist/ezui/{p-06136139.entry.js → p-a1c706a7.entry.js} +1 -1
  29. package/dist/ezui/p-b555cb24.entry.js +1 -0
  30. package/dist/ezui/p-f3c6410e.entry.js +1 -0
  31. package/dist/types/components/ez-grid/ez-grid.d.ts +5 -0
  32. package/dist/types/components/ez-grid/subcomponents/filter-column.d.ts +0 -11
  33. package/dist/types/components/ez-popover-plus/ez-popover-plus.d.ts +81 -0
  34. package/dist/types/components.d.ts +94 -0
  35. package/package.json +3 -3
  36. package/react/components.d.ts +1 -0
  37. package/react/components.js +1 -0
  38. package/react/components.js.map +1 -1
  39. package/dist/cjs/ez-multi-selection-list.cjs.entry.js +0 -186
  40. package/dist/esm/ez-multi-selection-list.entry.js +0 -182
  41. package/dist/ezui/p-1ab96710.entry.js +0 -1
  42. package/dist/ezui/p-7a171eae.entry.js +0 -1
  43. package/dist/ezui/p-a6fe527a.entry.js +0 -1
@@ -0,0 +1,67 @@
1
+ :host {
2
+
3
+ /* box */
4
+ /*@doc Define o raio da borda do popover.*/
5
+ --ez-popover__box--border-radius: var(--border--radius-medium, 12px);
6
+ /*@doc Define a sombra do popover.*/
7
+ --ez-popover__box--box-shadow: var(--shadow, 0px 0px 16px 0px #000);
8
+ /*@doc Define a cor de fundo do popover.*/
9
+ --ez-popover__box--background-color: var(--background--xlight, #fff);
10
+ /*@doc Define a camada de visibilidade do popover.*/
11
+ --ez-popover__box--z-index: var(--most-visible, 4);
12
+
13
+ /***************
14
+ host style
15
+ ***************/
16
+ /*private*/
17
+ position: relative;
18
+ display: flex;
19
+ user-select: none;
20
+ }
21
+
22
+ .popover__overlay {
23
+ display: none;
24
+ position: fixed;
25
+ padding: 0;
26
+ top: 0px;
27
+ left: 0px;
28
+ width: 100%;
29
+ height: 100vh;
30
+ box-sizing: border-box;
31
+ z-index: var(--more-visible--2x, 3);
32
+ }
33
+
34
+ .popover__overlay--light {
35
+ background-color: rgba(var(--rgb-background--overlay), var(--opacity--bright));
36
+ }
37
+
38
+ .popover__overlay--medium {
39
+ background-color: rgba(var(--rgb-background--overlay), var(--opacity--soft));
40
+ backdrop-filter: blur(var(--background-blur--medium));
41
+ }
42
+
43
+ .popover__box {
44
+ /*private*/
45
+ display: none;
46
+ position: fixed;
47
+ top: 0;
48
+ left: 0;
49
+
50
+ z-index: var(--ez-popover__box--z-index);
51
+ flex-direction: column;
52
+
53
+ height: fit-content;
54
+
55
+ /*public*/
56
+ background-color: var(--ez-popover__box--background-color);
57
+ border-radius: var(--ez-popover__box--border-radius);
58
+ box-shadow: var(--ez-popover__box--box-shadow);
59
+ }
60
+
61
+ .popover__box--fit-content {
62
+ width: fit-content;
63
+ }
64
+
65
+ .popover__box--full-width {
66
+ width: calc(100% - 10px);
67
+ }
@@ -0,0 +1,465 @@
1
+ import { computePosition, flip, shift } from "@floating-ui/dom";
2
+ import { h, Host } from "@stencil/core";
3
+ export class EzPopoverPlus {
4
+ constructor() {
5
+ this.TIME_DEBOUNCE = 500;
6
+ this.autoClose = true;
7
+ this.boxWidth = "fit-content";
8
+ this.opened = false;
9
+ this.overlayType = "light";
10
+ this.anchorElement = undefined;
11
+ this.options = { horizontalGap: 0, verticalGap: 0, fromRight: false };
12
+ }
13
+ async observeOpened(newValue, oldValue) {
14
+ if (newValue !== oldValue) {
15
+ if (newValue) {
16
+ this.openPopover();
17
+ }
18
+ else {
19
+ this.hidePopover();
20
+ }
21
+ this.ezVisibilityChange.emit(newValue);
22
+ return;
23
+ }
24
+ }
25
+ /**
26
+ * Atualiza a posição do popover.
27
+ */
28
+ async updatePosition(top, left) {
29
+ this.updateOptionPosition(top, left);
30
+ await this.updatePositionPopover();
31
+ }
32
+ /**
33
+ * Exibe o ez-popover.
34
+ */
35
+ async show(top, left) {
36
+ this.updateOptionPosition(top, left);
37
+ this.opened = true;
38
+ }
39
+ /**
40
+ * Ancora a exibição do popOver a um elemento HTML.
41
+ */
42
+ async showUnder(element, options) {
43
+ if (options) {
44
+ this.options = options;
45
+ }
46
+ this.anchorElement = element;
47
+ this.opened = true;
48
+ }
49
+ /**
50
+ * Oculta o ez-popover.
51
+ */
52
+ async hide() {
53
+ this.opened = false;
54
+ }
55
+ /**
56
+ * Altera as opções.
57
+ */
58
+ async setOptions(options) {
59
+ Object.assign(this.options, options);
60
+ }
61
+ /**
62
+ * Altera o elemento de ancoragem.
63
+ */
64
+ async setAnchorElement(anchor) {
65
+ this.anchorElement = anchor;
66
+ }
67
+ parseSizePixel(sizePixel, defaultValue) {
68
+ if (!sizePixel) {
69
+ return defaultValue !== null && defaultValue !== void 0 ? defaultValue : 0;
70
+ }
71
+ if (typeof sizePixel === "string") {
72
+ return Number(sizePixel.replace("px", ""));
73
+ }
74
+ return sizePixel !== null && sizePixel !== void 0 ? sizePixel : 0;
75
+ }
76
+ updateOptionPosition(top, left) {
77
+ Object.assign(this.options, {
78
+ horizontalGap: this.parseSizePixel(left, this.options.horizontalGap),
79
+ verticalGap: this.parseSizePixel(top, this.options.verticalGap),
80
+ });
81
+ }
82
+ async updatePositionPopover() {
83
+ if (!this._box || !this.opened) {
84
+ return;
85
+ }
86
+ if (!this.anchorElement) {
87
+ this.anchorElement = this._host;
88
+ }
89
+ if (typeof this.anchorElement === 'string') {
90
+ this.anchorElement = document.getElementById(this.anchorElement);
91
+ }
92
+ await computePosition(this.anchorElement, this._box, {
93
+ placement: this.options.fromRight ? 'bottom-end' : 'bottom-start',
94
+ middleware: [flip(), shift({ padding: 5 })],
95
+ strategy: 'fixed',
96
+ }).then(({ x, y, placement }) => {
97
+ const newTop = placement.includes("bottom") ? y + this.options.verticalGap : y - this.options.verticalGap;
98
+ const newLeft = placement.includes("start") ? x + this.options.horizontalGap : x - this.options.horizontalGap;
99
+ Object.assign(this._box.style, {
100
+ top: `${newTop}px`,
101
+ left: `${newLeft}px`,
102
+ });
103
+ });
104
+ }
105
+ hidePopover() {
106
+ if (!this._box) {
107
+ return;
108
+ }
109
+ this._box.style.display = '';
110
+ this.hideOverlay();
111
+ this.ezVisibilityChange.emit(false);
112
+ }
113
+ async openPopover() {
114
+ if (!this._box) {
115
+ return;
116
+ }
117
+ this._box.style.display = 'flex';
118
+ this._box.style.visibility = 'hidden';
119
+ await this.updatePositionPopover();
120
+ this.openOverlay();
121
+ this.ezVisibilityChange.emit(true);
122
+ this._box.style.visibility = 'visible';
123
+ }
124
+ openOverlay() {
125
+ if (!this._overlay || !this._overlayIsActive) {
126
+ return;
127
+ }
128
+ this._overlay.style.display = 'block';
129
+ }
130
+ hideOverlay() {
131
+ if (!this._overlay) {
132
+ return;
133
+ }
134
+ this._overlay.style.display = 'none';
135
+ }
136
+ checkStatusOverlay() {
137
+ if (this.overlayType !== "none") {
138
+ return true;
139
+ }
140
+ if (this.overlayType === "none" && this.autoClose) {
141
+ return true;
142
+ }
143
+ return false;
144
+ }
145
+ updatePositionDebounce() {
146
+ if (!this.opened) {
147
+ return;
148
+ }
149
+ clearTimeout(this._timeoutDebounce);
150
+ this._timeoutDebounce = setTimeout(() => {
151
+ this.updatePositionPopover();
152
+ }, this.TIME_DEBOUNCE);
153
+ }
154
+ componentWillLoad() {
155
+ window.addEventListener('scroll', this.updatePositionDebounce.bind(this), true);
156
+ window.addEventListener('resize', this.updatePositionDebounce.bind(this), true);
157
+ }
158
+ componentDidLoad() {
159
+ this._overlayIsActive = this.checkStatusOverlay();
160
+ this._resizeObserver = new ResizeObserver(this.updatePositionPopover.bind(this));
161
+ this._resizeObserver.observe(this._box);
162
+ }
163
+ disconnectedCallback() {
164
+ window.removeEventListener('scroll', this.updatePositionDebounce.bind(this), true);
165
+ window.removeEventListener('resize', this.updatePositionDebounce.bind(this), true);
166
+ this._resizeObserver.disconnect();
167
+ }
168
+ render() {
169
+ return (h(Host, null, h("div", { ref: el => this._overlay = el, onClick: () => this.hide(), class: `popover__overlay popover__overlay--${this.overlayType}` }), h("section", { ref: el => this._box = el, class: {
170
+ "popover__box": true,
171
+ "popover__box--fit-content": this.boxWidth === "fit-content",
172
+ "popover__box--full-width": this.boxWidth !== "fit-content",
173
+ } }, h("slot", null))));
174
+ }
175
+ static get is() { return "ez-popover-plus"; }
176
+ static get encapsulation() { return "shadow"; }
177
+ static get originalStyleUrls() {
178
+ return {
179
+ "$": ["ez-popover-plus.css"]
180
+ };
181
+ }
182
+ static get styleUrls() {
183
+ return {
184
+ "$": ["ez-popover-plus.css"]
185
+ };
186
+ }
187
+ static get properties() {
188
+ return {
189
+ "autoClose": {
190
+ "type": "boolean",
191
+ "mutable": false,
192
+ "complexType": {
193
+ "original": "boolean",
194
+ "resolved": "boolean",
195
+ "references": {}
196
+ },
197
+ "required": false,
198
+ "optional": false,
199
+ "docs": {
200
+ "tags": [],
201
+ "text": "Define que ser\u00E1 fechado automaticamente quando o usu\u00E1rio clicar fora do conte\u00FAdo."
202
+ },
203
+ "attribute": "auto-close",
204
+ "reflect": true,
205
+ "defaultValue": "true"
206
+ },
207
+ "boxWidth": {
208
+ "type": "string",
209
+ "mutable": false,
210
+ "complexType": {
211
+ "original": "\"full-width\" | \"fit-content\"",
212
+ "resolved": "\"fit-content\" | \"full-width\"",
213
+ "references": {}
214
+ },
215
+ "required": false,
216
+ "optional": false,
217
+ "docs": {
218
+ "tags": [],
219
+ "text": "Ajusta o comportamento da largura do popover."
220
+ },
221
+ "attribute": "box-width",
222
+ "reflect": true,
223
+ "defaultValue": "\"fit-content\""
224
+ },
225
+ "opened": {
226
+ "type": "boolean",
227
+ "mutable": true,
228
+ "complexType": {
229
+ "original": "boolean",
230
+ "resolved": "boolean",
231
+ "references": {}
232
+ },
233
+ "required": false,
234
+ "optional": false,
235
+ "docs": {
236
+ "tags": [],
237
+ "text": "Define se o ez-popover est\u00E1 aberto."
238
+ },
239
+ "attribute": "opened",
240
+ "reflect": true,
241
+ "defaultValue": "false"
242
+ },
243
+ "overlayType": {
244
+ "type": "string",
245
+ "mutable": false,
246
+ "complexType": {
247
+ "original": "\"medium\" | \"light\" | \"none\"",
248
+ "resolved": "\"light\" | \"medium\" | \"none\"",
249
+ "references": {}
250
+ },
251
+ "required": false,
252
+ "optional": false,
253
+ "docs": {
254
+ "tags": [],
255
+ "text": "Define o tipo de overlay do popover."
256
+ },
257
+ "attribute": "overlay-type",
258
+ "reflect": true,
259
+ "defaultValue": "\"light\""
260
+ },
261
+ "anchorElement": {
262
+ "type": "string",
263
+ "mutable": true,
264
+ "complexType": {
265
+ "original": "HTMLElement | string",
266
+ "resolved": "HTMLElement | string",
267
+ "references": {
268
+ "HTMLElement": {
269
+ "location": "global"
270
+ }
271
+ }
272
+ },
273
+ "required": false,
274
+ "optional": false,
275
+ "docs": {
276
+ "tags": [],
277
+ "text": "Define o elemento de ancoragem."
278
+ },
279
+ "attribute": "anchor-element",
280
+ "reflect": true
281
+ },
282
+ "options": {
283
+ "type": "unknown",
284
+ "mutable": true,
285
+ "complexType": {
286
+ "original": "IEzPopoverAnchorOptions",
287
+ "resolved": "IEzPopoverAnchorOptions",
288
+ "references": {
289
+ "IEzPopoverAnchorOptions": {
290
+ "location": "local"
291
+ }
292
+ }
293
+ },
294
+ "required": false,
295
+ "optional": false,
296
+ "docs": {
297
+ "tags": [],
298
+ "text": "Define as op\u00E7\u00F5es do elemento."
299
+ },
300
+ "defaultValue": "{ horizontalGap: 0, verticalGap: 0, fromRight: false }"
301
+ }
302
+ };
303
+ }
304
+ static get events() {
305
+ return [{
306
+ "method": "ezVisibilityChange",
307
+ "name": "ezVisibilityChange",
308
+ "bubbles": true,
309
+ "cancelable": true,
310
+ "composed": true,
311
+ "docs": {
312
+ "tags": [],
313
+ "text": "Emitido quando acontece a altera\u00E7\u00E3o de estado do componente."
314
+ },
315
+ "complexType": {
316
+ "original": "boolean",
317
+ "resolved": "boolean",
318
+ "references": {}
319
+ }
320
+ }];
321
+ }
322
+ static get methods() {
323
+ return {
324
+ "updatePosition": {
325
+ "complexType": {
326
+ "signature": "(top?: string, left?: string) => Promise<void>",
327
+ "parameters": [{
328
+ "tags": [],
329
+ "text": ""
330
+ }, {
331
+ "tags": [],
332
+ "text": ""
333
+ }],
334
+ "references": {
335
+ "Promise": {
336
+ "location": "global"
337
+ }
338
+ },
339
+ "return": "Promise<void>"
340
+ },
341
+ "docs": {
342
+ "text": "Atualiza a posi\u00E7\u00E3o do popover.",
343
+ "tags": []
344
+ }
345
+ },
346
+ "show": {
347
+ "complexType": {
348
+ "signature": "(top?: string | number, left?: string | number) => Promise<void>",
349
+ "parameters": [{
350
+ "tags": [],
351
+ "text": ""
352
+ }, {
353
+ "tags": [],
354
+ "text": ""
355
+ }],
356
+ "references": {
357
+ "Promise": {
358
+ "location": "global"
359
+ }
360
+ },
361
+ "return": "Promise<void>"
362
+ },
363
+ "docs": {
364
+ "text": "Exibe o ez-popover.",
365
+ "tags": []
366
+ }
367
+ },
368
+ "showUnder": {
369
+ "complexType": {
370
+ "signature": "(element: HTMLElement | string, options?: IEzPopoverAnchorOptions) => Promise<void>",
371
+ "parameters": [{
372
+ "tags": [],
373
+ "text": ""
374
+ }, {
375
+ "tags": [],
376
+ "text": ""
377
+ }],
378
+ "references": {
379
+ "Promise": {
380
+ "location": "global"
381
+ },
382
+ "HTMLElement": {
383
+ "location": "global"
384
+ },
385
+ "IEzPopoverAnchorOptions": {
386
+ "location": "local"
387
+ }
388
+ },
389
+ "return": "Promise<void>"
390
+ },
391
+ "docs": {
392
+ "text": "Ancora a exibi\u00E7\u00E3o do popOver a um elemento HTML.",
393
+ "tags": []
394
+ }
395
+ },
396
+ "hide": {
397
+ "complexType": {
398
+ "signature": "() => Promise<void>",
399
+ "parameters": [],
400
+ "references": {
401
+ "Promise": {
402
+ "location": "global"
403
+ }
404
+ },
405
+ "return": "Promise<void>"
406
+ },
407
+ "docs": {
408
+ "text": "Oculta o ez-popover.",
409
+ "tags": []
410
+ }
411
+ },
412
+ "setOptions": {
413
+ "complexType": {
414
+ "signature": "(options: IEzPopoverAnchorOptions) => Promise<void>",
415
+ "parameters": [{
416
+ "tags": [],
417
+ "text": ""
418
+ }],
419
+ "references": {
420
+ "Promise": {
421
+ "location": "global"
422
+ },
423
+ "IEzPopoverAnchorOptions": {
424
+ "location": "local"
425
+ }
426
+ },
427
+ "return": "Promise<void>"
428
+ },
429
+ "docs": {
430
+ "text": "Altera as op\u00E7\u00F5es.",
431
+ "tags": []
432
+ }
433
+ },
434
+ "setAnchorElement": {
435
+ "complexType": {
436
+ "signature": "(anchor: HTMLElement | string) => Promise<void>",
437
+ "parameters": [{
438
+ "tags": [],
439
+ "text": ""
440
+ }],
441
+ "references": {
442
+ "Promise": {
443
+ "location": "global"
444
+ },
445
+ "HTMLElement": {
446
+ "location": "global"
447
+ }
448
+ },
449
+ "return": "Promise<void>"
450
+ },
451
+ "docs": {
452
+ "text": "Altera o elemento de ancoragem.",
453
+ "tags": []
454
+ }
455
+ }
456
+ };
457
+ }
458
+ static get elementRef() { return "_host"; }
459
+ static get watchers() {
460
+ return [{
461
+ "propName": "opened",
462
+ "methodName": "observeOpened"
463
+ }];
464
+ }
465
+ }
@@ -386,7 +386,8 @@ export class EzSearch {
386
386
  replaceHighlight(value) {
387
387
  const startHighlight = new RegExp(this._startHighlightTag, 'g');
388
388
  const endHighlight = new RegExp(this._endHighlightTag, 'g');
389
- return String(value !== null && value !== void 0 ? value : "").replace(startHighlight, '').replace(endHighlight, '');
389
+ const newValue = String(value !== null && value !== void 0 ? value : "").replace(startHighlight, '').replace(endHighlight, '');
390
+ return this.replaceQuotes(newValue);
390
391
  }
391
392
  selectOption(newOption, focusOnInput = true) {
392
393
  var _a, _b;
@@ -206,6 +206,12 @@ export const EzPopover: {
206
206
  new (): EzPopover;
207
207
  };
208
208
 
209
+ interface EzPopoverPlus extends Components.EzPopoverPlus, HTMLElement {}
210
+ export const EzPopoverPlus: {
211
+ prototype: EzPopoverPlus;
212
+ new (): EzPopoverPlus;
213
+ };
214
+
209
215
  interface EzPopup extends Components.EzPopup, HTMLElement {}
210
216
  export const EzPopup: {
211
217
  prototype: EzPopup;