@sankhyalabs/ezui 6.2.0-dev.2 → 6.2.0-dev.4

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 (52) hide show
  1. package/dist/cjs/{app-globals-cdb08d04.js → app-globals-0a67e214.js} +3 -1
  2. package/dist/cjs/ez-classic-input.cjs.entry.js +318 -0
  3. package/dist/cjs/ez-classic-text-area.cjs.entry.js +86 -0
  4. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-tree.cjs.entry.js +48 -7
  6. package/dist/cjs/ezui.cjs.js +2 -2
  7. package/dist/cjs/index-a7b0c73d.js +8 -0
  8. package/dist/cjs/loader.cjs.js +2 -2
  9. package/dist/collection/collection-manifest.json +2 -0
  10. package/dist/collection/components/ez-classic-input/ez-classic-input.css +140 -0
  11. package/dist/collection/components/ez-classic-input/ez-classic-input.js +547 -0
  12. package/dist/collection/components/ez-classic-input/interfaces/optionsSetFocus.js +1 -0
  13. package/dist/collection/components/ez-classic-input/utils/maskFormatter.js +194 -0
  14. package/dist/collection/components/ez-classic-text-area/ez-classic-text-area.css +179 -0
  15. package/dist/collection/components/ez-classic-text-area/ez-classic-text-area.js +479 -0
  16. package/dist/collection/components/ez-classic-text-area/interfaces/optionsSetFocus.js +1 -0
  17. package/dist/collection/components/ez-icon/ez-icon.css +23 -18
  18. package/dist/collection/components/ez-tree/ez-tree.css +4 -1
  19. package/dist/collection/components/ez-tree/ez-tree.js +21 -2
  20. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +7 -1
  21. package/dist/collection/components/ez-tree/types/Tree.js +37 -3
  22. package/dist/collection/global/app-init.js +3 -1
  23. package/dist/custom-elements/index.d.ts +12 -0
  24. package/dist/custom-elements/index.js +454 -15
  25. package/dist/esm/{app-globals-8c57b015.js → app-globals-8a94d86c.js} +3 -1
  26. package/dist/esm/ez-classic-input.entry.js +314 -0
  27. package/dist/esm/ez-classic-text-area.entry.js +82 -0
  28. package/dist/esm/ez-icon.entry.js +1 -1
  29. package/dist/esm/ez-tree.entry.js +48 -7
  30. package/dist/esm/ezui.js +2 -2
  31. package/dist/esm/index-baa5e267.js +8 -0
  32. package/dist/esm/loader.js +2 -2
  33. package/dist/ezui/ezui.esm.js +1 -1
  34. package/dist/ezui/p-2d080bdc.entry.js +1 -0
  35. package/dist/ezui/p-48effc69.entry.js +1 -0
  36. package/dist/ezui/p-b2b1a1a7.entry.js +1 -0
  37. package/dist/ezui/p-e78e87f5.entry.js +1 -0
  38. package/dist/types/components/ez-classic-input/ez-classic-input.d.ts +78 -0
  39. package/dist/types/components/ez-classic-input/interfaces/optionsSetFocus.d.ts +4 -0
  40. package/dist/types/components/ez-classic-input/utils/maskFormatter.d.ts +30 -0
  41. package/dist/types/components/ez-classic-text-area/ez-classic-text-area.d.ts +61 -0
  42. package/dist/types/components/ez-classic-text-area/interfaces/optionsSetFocus.d.ts +4 -0
  43. package/dist/types/components/ez-tree/ez-tree.d.ts +4 -0
  44. package/dist/types/components/ez-tree/types/Tree.d.ts +2 -1
  45. package/dist/types/components.d.ts +372 -0
  46. package/package.json +1 -1
  47. package/react/components.d.ts +2 -0
  48. package/react/components.js +2 -0
  49. package/react/components.js.map +1 -1
  50. package/dist/ezui/p-7eb6115c.entry.js +0 -1
  51. package/dist/ezui/p-e78b5a16.entry.js +0 -1
  52. /package/dist/ezui/{p-76ad2e26.js → p-07819d50.js} +0 -0
@@ -0,0 +1,547 @@
1
+ import { Host, h } from '@stencil/core';
2
+ import { MaskFormatter } from './utils/maskFormatter';
3
+ import { ElementIDUtils } from '@sankhyalabs/core';
4
+ export class EzClassicInput {
5
+ constructor() {
6
+ this.type = 'text';
7
+ this.value = undefined;
8
+ this.label = undefined;
9
+ this.helpText = undefined;
10
+ this.placeholder = undefined;
11
+ this.enabled = true;
12
+ this.readonly = false;
13
+ this.name = undefined;
14
+ this.minlength = undefined;
15
+ this.maxlength = undefined;
16
+ this.leftIconName = undefined;
17
+ this.rightIconName = undefined;
18
+ this.rightIconTooltip = undefined;
19
+ this.leftIconTooltip = undefined;
20
+ this.state = "default";
21
+ this.leftIconClickable = false;
22
+ this.rightIconClickable = false;
23
+ this.mask = undefined;
24
+ this.emitMaskedValue = false;
25
+ }
26
+ /**
27
+ * Aplica o foco no campo.
28
+ */
29
+ async setFocus(option) {
30
+ if (option === null || option === void 0 ? void 0 : option.selectText) {
31
+ this._inputElem.select();
32
+ }
33
+ if (!(option === null || option === void 0 ? void 0 : option.preventScroll)) {
34
+ this._inputElem.scrollIntoView({ behavior: "smooth", block: "center" });
35
+ }
36
+ this._inputElem.focus({ preventScroll: true });
37
+ }
38
+ /**
39
+ * Remove o foco do campo.
40
+ */
41
+ async setBlur() {
42
+ this._inputElem.blur();
43
+ }
44
+ onInput(event) {
45
+ try {
46
+ const inputElement = event.target;
47
+ let inputValue = inputElement.value;
48
+ if (this._maskFormatter) {
49
+ const formattedValue = this._maskFormatter.format(inputValue);
50
+ const cleanValue = this._maskFormatter.removeMask(formattedValue);
51
+ inputElement.value = formattedValue;
52
+ this.value = cleanValue;
53
+ const emitValue = this.emitMaskedValue ? formattedValue : cleanValue;
54
+ this.ezChange.emit(emitValue);
55
+ }
56
+ else {
57
+ this.value = inputValue;
58
+ this.ezChange.emit(inputValue);
59
+ }
60
+ }
61
+ catch (error) {
62
+ console.error("Error processing input event:", error);
63
+ }
64
+ }
65
+ onBlur() {
66
+ this.ezBlur.emit(this.value);
67
+ }
68
+ handleIconClick(event, icon) {
69
+ if (!this.enabled) {
70
+ return;
71
+ }
72
+ if ((icon === "left" && !this.leftIconClickable) || (icon === "right" && !this.rightIconClickable)) {
73
+ this.setFocus({ preventScroll: true });
74
+ return;
75
+ }
76
+ event.stopPropagation();
77
+ this.iconClick.emit({ icon });
78
+ }
79
+ addInfoId() {
80
+ if (this._element) {
81
+ ElementIDUtils.addIDInfo(this._element);
82
+ }
83
+ if (this._inputElem) {
84
+ const dataInfo = { id: 'embedded' };
85
+ ElementIDUtils.addIDInfo(this._inputElem, 'classic-input', dataInfo);
86
+ }
87
+ }
88
+ componentWillLoad() {
89
+ if (this.mask && !this._maskFormatter) {
90
+ this._maskFormatter = new MaskFormatter(this.mask);
91
+ }
92
+ if (!this.placeholder && this._maskFormatter) {
93
+ this.placeholder = this._maskFormatter.generatePlaceholder();
94
+ }
95
+ }
96
+ componentDidLoad() {
97
+ if (this.value && this._maskFormatter && this._inputElem) {
98
+ const formattedValue = this._maskFormatter.format(this.value);
99
+ this._inputElem.value = formattedValue;
100
+ }
101
+ else {
102
+ this._inputElem.value = this.value || '';
103
+ }
104
+ this.addInfoId();
105
+ }
106
+ render() {
107
+ return (h(Host, null, h("label", { title: this.label, htmlFor: this.name }, this.label), h("div", { class: "input-container", "data-state": this.state, "data-disabled": (!this.enabled).toString(), onClick: () => this.setFocus({ preventScroll: true }) }, this.leftIconName && (h("ez-icon", { iconName: this.leftIconName, title: this.leftIconTooltip, onClick: (event) => this.handleIconClick(event, "left"), class: { 'icon-clickable': this.leftIconClickable } })), h("input", { ref: el => this._inputElem = el, id: this.name, type: this.type, title: this.value, placeholder: this.placeholder, disabled: !this.enabled, readonly: this.readonly, name: this.name, minlength: this.minlength, maxlength: this.maxlength, onInput: this.onInput.bind(this), onBlur: this.onBlur.bind(this) }), this.rightIconName && (h("ez-icon", { iconName: this.rightIconName, title: this.rightIconTooltip, onClick: (event) => this.handleIconClick(event, "right"), class: { 'icon-clickable': this.rightIconClickable } }))), this.helpText && (h("span", { title: this.helpText }, this.helpText))));
108
+ }
109
+ static get is() { return "ez-classic-input"; }
110
+ static get encapsulation() { return "shadow"; }
111
+ static get originalStyleUrls() {
112
+ return {
113
+ "$": ["ez-classic-input.css"]
114
+ };
115
+ }
116
+ static get styleUrls() {
117
+ return {
118
+ "$": ["ez-classic-input.css"]
119
+ };
120
+ }
121
+ static get properties() {
122
+ return {
123
+ "type": {
124
+ "type": "string",
125
+ "mutable": false,
126
+ "complexType": {
127
+ "original": "string",
128
+ "resolved": "string",
129
+ "references": {}
130
+ },
131
+ "required": false,
132
+ "optional": false,
133
+ "docs": {
134
+ "tags": [],
135
+ "text": "Tipo do input (ex: text, password, email, etc)"
136
+ },
137
+ "attribute": "type",
138
+ "reflect": false,
139
+ "defaultValue": "'text'"
140
+ },
141
+ "value": {
142
+ "type": "string",
143
+ "mutable": true,
144
+ "complexType": {
145
+ "original": "string",
146
+ "resolved": "string",
147
+ "references": {}
148
+ },
149
+ "required": false,
150
+ "optional": true,
151
+ "docs": {
152
+ "tags": [],
153
+ "text": "Valor do input"
154
+ },
155
+ "attribute": "value",
156
+ "reflect": false
157
+ },
158
+ "label": {
159
+ "type": "string",
160
+ "mutable": false,
161
+ "complexType": {
162
+ "original": "string",
163
+ "resolved": "string",
164
+ "references": {}
165
+ },
166
+ "required": false,
167
+ "optional": true,
168
+ "docs": {
169
+ "tags": [],
170
+ "text": "Texto do label exibido acima do input"
171
+ },
172
+ "attribute": "label",
173
+ "reflect": false
174
+ },
175
+ "helpText": {
176
+ "type": "string",
177
+ "mutable": false,
178
+ "complexType": {
179
+ "original": "string",
180
+ "resolved": "string",
181
+ "references": {}
182
+ },
183
+ "required": false,
184
+ "optional": true,
185
+ "docs": {
186
+ "tags": [],
187
+ "text": "Texto de ajuda exibido abaixo do input"
188
+ },
189
+ "attribute": "help-text",
190
+ "reflect": false
191
+ },
192
+ "placeholder": {
193
+ "type": "string",
194
+ "mutable": true,
195
+ "complexType": {
196
+ "original": "string",
197
+ "resolved": "string",
198
+ "references": {}
199
+ },
200
+ "required": false,
201
+ "optional": true,
202
+ "docs": {
203
+ "tags": [],
204
+ "text": "Placeholder do input"
205
+ },
206
+ "attribute": "placeholder",
207
+ "reflect": false
208
+ },
209
+ "enabled": {
210
+ "type": "boolean",
211
+ "mutable": false,
212
+ "complexType": {
213
+ "original": "boolean",
214
+ "resolved": "boolean",
215
+ "references": {}
216
+ },
217
+ "required": false,
218
+ "optional": true,
219
+ "docs": {
220
+ "tags": [],
221
+ "text": "Define se o input est\u00E1 habilitado"
222
+ },
223
+ "attribute": "enabled",
224
+ "reflect": false,
225
+ "defaultValue": "true"
226
+ },
227
+ "readonly": {
228
+ "type": "boolean",
229
+ "mutable": false,
230
+ "complexType": {
231
+ "original": "boolean",
232
+ "resolved": "boolean",
233
+ "references": {}
234
+ },
235
+ "required": false,
236
+ "optional": true,
237
+ "docs": {
238
+ "tags": [],
239
+ "text": "Define se o input \u00E9 somente leitura"
240
+ },
241
+ "attribute": "readonly",
242
+ "reflect": false,
243
+ "defaultValue": "false"
244
+ },
245
+ "name": {
246
+ "type": "string",
247
+ "mutable": false,
248
+ "complexType": {
249
+ "original": "string",
250
+ "resolved": "string",
251
+ "references": {}
252
+ },
253
+ "required": false,
254
+ "optional": true,
255
+ "docs": {
256
+ "tags": [],
257
+ "text": "Nome do input"
258
+ },
259
+ "attribute": "name",
260
+ "reflect": false
261
+ },
262
+ "minlength": {
263
+ "type": "number",
264
+ "mutable": false,
265
+ "complexType": {
266
+ "original": "number",
267
+ "resolved": "number",
268
+ "references": {}
269
+ },
270
+ "required": false,
271
+ "optional": true,
272
+ "docs": {
273
+ "tags": [],
274
+ "text": "Tamanho m\u00EDnimo do valor"
275
+ },
276
+ "attribute": "minlength",
277
+ "reflect": false
278
+ },
279
+ "maxlength": {
280
+ "type": "number",
281
+ "mutable": false,
282
+ "complexType": {
283
+ "original": "number",
284
+ "resolved": "number",
285
+ "references": {}
286
+ },
287
+ "required": false,
288
+ "optional": true,
289
+ "docs": {
290
+ "tags": [],
291
+ "text": "Tamanho m\u00E1ximo do valor"
292
+ },
293
+ "attribute": "maxlength",
294
+ "reflect": false
295
+ },
296
+ "leftIconName": {
297
+ "type": "string",
298
+ "mutable": false,
299
+ "complexType": {
300
+ "original": "string",
301
+ "resolved": "string",
302
+ "references": {}
303
+ },
304
+ "required": false,
305
+ "optional": true,
306
+ "docs": {
307
+ "tags": [],
308
+ "text": "Nome do \u00EDcone \u00E0 esquerda"
309
+ },
310
+ "attribute": "left-icon-name",
311
+ "reflect": false
312
+ },
313
+ "rightIconName": {
314
+ "type": "string",
315
+ "mutable": false,
316
+ "complexType": {
317
+ "original": "string",
318
+ "resolved": "string",
319
+ "references": {}
320
+ },
321
+ "required": false,
322
+ "optional": true,
323
+ "docs": {
324
+ "tags": [],
325
+ "text": "Nome do \u00EDcone \u00E0 direita"
326
+ },
327
+ "attribute": "right-icon-name",
328
+ "reflect": false
329
+ },
330
+ "rightIconTooltip": {
331
+ "type": "string",
332
+ "mutable": false,
333
+ "complexType": {
334
+ "original": "string",
335
+ "resolved": "string",
336
+ "references": {}
337
+ },
338
+ "required": false,
339
+ "optional": true,
340
+ "docs": {
341
+ "tags": [],
342
+ "text": "T\u00EDtulo do \u00EDcone \u00E0 direita (tooltip)"
343
+ },
344
+ "attribute": "right-icon-tooltip",
345
+ "reflect": false
346
+ },
347
+ "leftIconTooltip": {
348
+ "type": "string",
349
+ "mutable": false,
350
+ "complexType": {
351
+ "original": "string",
352
+ "resolved": "string",
353
+ "references": {}
354
+ },
355
+ "required": false,
356
+ "optional": true,
357
+ "docs": {
358
+ "tags": [],
359
+ "text": "T\u00EDtulo do \u00EDcone \u00E0 esquerda (tooltip)"
360
+ },
361
+ "attribute": "left-icon-tooltip",
362
+ "reflect": false
363
+ },
364
+ "state": {
365
+ "type": "string",
366
+ "mutable": false,
367
+ "complexType": {
368
+ "original": "\"default\" | \"error\" | \"success\" | \"warning\"",
369
+ "resolved": "\"default\" | \"error\" | \"success\" | \"warning\"",
370
+ "references": {}
371
+ },
372
+ "required": false,
373
+ "optional": true,
374
+ "docs": {
375
+ "tags": [],
376
+ "text": "Estado visual do input: default, error, success ou warning"
377
+ },
378
+ "attribute": "state",
379
+ "reflect": false,
380
+ "defaultValue": "\"default\""
381
+ },
382
+ "leftIconClickable": {
383
+ "type": "boolean",
384
+ "mutable": false,
385
+ "complexType": {
386
+ "original": "boolean",
387
+ "resolved": "boolean",
388
+ "references": {}
389
+ },
390
+ "required": false,
391
+ "optional": true,
392
+ "docs": {
393
+ "tags": [],
394
+ "text": "Define se o \u00EDcone da esquerda \u00E9 clic\u00E1vel"
395
+ },
396
+ "attribute": "left-icon-clickable",
397
+ "reflect": false,
398
+ "defaultValue": "false"
399
+ },
400
+ "rightIconClickable": {
401
+ "type": "boolean",
402
+ "mutable": false,
403
+ "complexType": {
404
+ "original": "boolean",
405
+ "resolved": "boolean",
406
+ "references": {}
407
+ },
408
+ "required": false,
409
+ "optional": true,
410
+ "docs": {
411
+ "tags": [],
412
+ "text": "Define se o \u00EDcone da direita \u00E9 clic\u00E1vel"
413
+ },
414
+ "attribute": "right-icon-clickable",
415
+ "reflect": false,
416
+ "defaultValue": "false"
417
+ },
418
+ "mask": {
419
+ "type": "string",
420
+ "mutable": false,
421
+ "complexType": {
422
+ "original": "string",
423
+ "resolved": "string",
424
+ "references": {}
425
+ },
426
+ "required": false,
427
+ "optional": true,
428
+ "docs": {
429
+ "tags": [],
430
+ "text": "Aplica uma m\u00E1scara no conte\u00FAdo conforme o padr\u00E3o estabelecido. \nPara mais informa\u00E7\u00F5es acesse: \nhttps://gilded-nasturtium-6b64dd.netlify.app/docs/utilities/api/classes/maskformatter/"
431
+ },
432
+ "attribute": "mask",
433
+ "reflect": false
434
+ },
435
+ "emitMaskedValue": {
436
+ "type": "boolean",
437
+ "mutable": false,
438
+ "complexType": {
439
+ "original": "boolean",
440
+ "resolved": "boolean",
441
+ "references": {}
442
+ },
443
+ "required": false,
444
+ "optional": true,
445
+ "docs": {
446
+ "tags": [],
447
+ "text": "Define se o valor emitido pelo evento ezChange deve conter a m\u00E1scara aplicada (padr\u00E3o: false)"
448
+ },
449
+ "attribute": "emit-masked-value",
450
+ "reflect": false,
451
+ "defaultValue": "false"
452
+ }
453
+ };
454
+ }
455
+ static get events() {
456
+ return [{
457
+ "method": "ezChange",
458
+ "name": "ezChange",
459
+ "bubbles": true,
460
+ "cancelable": true,
461
+ "composed": true,
462
+ "docs": {
463
+ "tags": [],
464
+ "text": "Evento disparado quando o valor do input muda."
465
+ },
466
+ "complexType": {
467
+ "original": "string",
468
+ "resolved": "string",
469
+ "references": {}
470
+ }
471
+ }, {
472
+ "method": "ezBlur",
473
+ "name": "ezBlur",
474
+ "bubbles": true,
475
+ "cancelable": true,
476
+ "composed": true,
477
+ "docs": {
478
+ "tags": [],
479
+ "text": "Evento disparado quando o input perde o foco."
480
+ },
481
+ "complexType": {
482
+ "original": "string",
483
+ "resolved": "string",
484
+ "references": {}
485
+ }
486
+ }, {
487
+ "method": "iconClick",
488
+ "name": "iconClick",
489
+ "bubbles": true,
490
+ "cancelable": true,
491
+ "composed": true,
492
+ "docs": {
493
+ "tags": [],
494
+ "text": "Evento disparado quando um \u00EDcone \u00E9 clicado.\nPayload: { icon: \"left\" | \"right\" }"
495
+ },
496
+ "complexType": {
497
+ "original": "{ icon: \"left\" | \"right\" }",
498
+ "resolved": "{ icon: \"left\" | \"right\"; }",
499
+ "references": {}
500
+ }
501
+ }];
502
+ }
503
+ static get methods() {
504
+ return {
505
+ "setFocus": {
506
+ "complexType": {
507
+ "signature": "(option?: OptionsSetFocus) => Promise<void>",
508
+ "parameters": [{
509
+ "tags": [],
510
+ "text": ""
511
+ }],
512
+ "references": {
513
+ "Promise": {
514
+ "location": "global"
515
+ },
516
+ "OptionsSetFocus": {
517
+ "location": "import",
518
+ "path": "./interfaces/optionsSetFocus"
519
+ }
520
+ },
521
+ "return": "Promise<void>"
522
+ },
523
+ "docs": {
524
+ "text": "Aplica o foco no campo.",
525
+ "tags": []
526
+ }
527
+ },
528
+ "setBlur": {
529
+ "complexType": {
530
+ "signature": "() => Promise<void>",
531
+ "parameters": [],
532
+ "references": {
533
+ "Promise": {
534
+ "location": "global"
535
+ }
536
+ },
537
+ "return": "Promise<void>"
538
+ },
539
+ "docs": {
540
+ "text": "Remove o foco do campo.",
541
+ "tags": []
542
+ }
543
+ }
544
+ };
545
+ }
546
+ static get elementRef() { return "_element"; }
547
+ }