@sankhyalabs/ezui 1.2.0-beta.2 → 1.2.0-beta.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.
- package/dist/cjs/{ApplicationUtils-483c0a9e.js → ApplicationUtils-edc62c5c.js} +6 -2
- package/dist/cjs/{CSSVarsUtils-09b431cc.js → CSSVarsUtils-af809e73.js} +17 -0
- package/dist/cjs/{DialogType-a1e288e6.js → DialogType-aa435c52.js} +1 -0
- package/dist/cjs/FieldBuilder-cd3e45ed.js +119 -0
- package/dist/cjs/ez-actions-button.cjs.entry.js +67 -15
- package/dist/cjs/ez-button.cjs.entry.js +12 -10
- package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
- package/dist/cjs/ez-chip.cjs.entry.js +6 -6
- package/dist/cjs/ez-collapsible-box.cjs.entry.js +85 -6
- package/dist/cjs/ez-combo-box.cjs.entry.js +38 -13
- package/dist/cjs/ez-date-input.cjs.entry.js +9 -14
- package/dist/cjs/ez-date-time-input.cjs.entry.js +9 -14
- package/dist/cjs/ez-dialog.cjs.entry.js +42 -7
- package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-form.cjs.entry.js +44 -133
- package/dist/cjs/ez-grid-config.cjs.entry.js +4 -5
- package/dist/cjs/ez-grid.cjs.entry.js +97 -10
- package/dist/cjs/ez-icon.cjs.entry.js +1 -1
- package/dist/cjs/ez-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-modal-container.cjs.entry.js +54 -0
- package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-popover.cjs.entry.js +1 -1
- package/dist/cjs/ez-popup.cjs.entry.js +7 -3
- package/dist/cjs/ez-radio-button.cjs.entry.js +2 -2
- package/dist/cjs/ez-scroller.cjs.entry.js +1 -1
- package/dist/cjs/ez-search.cjs.entry.js +1 -1
- package/dist/cjs/ez-tabselector.cjs.entry.js +7 -5
- package/dist/cjs/ez-text-area.cjs.entry.js +6 -6
- package/dist/cjs/ez-text-edit.cjs.entry.js +103 -0
- package/dist/cjs/ez-text-input.cjs.entry.js +11 -1
- package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-upload.cjs.entry.js +2 -2
- package/dist/cjs/ez-view-stack.cjs.entry.js +9 -5
- package/dist/cjs/ezui.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +6 -4
- package/dist/collection/components/ez-actions-button/ez-actions-button.css +49 -20
- package/dist/collection/components/ez-actions-button/ez-actions-button.js +219 -23
- package/dist/collection/components/ez-button/ez-button.css +1 -6
- package/dist/collection/components/ez-button/ez-button.js +11 -9
- package/dist/collection/components/ez-calendar/ez-calendar.css +17 -20
- package/dist/collection/components/ez-chip/ez-chip.css +6 -3
- package/dist/collection/components/ez-chip/ez-chip.js +5 -5
- package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.css +16 -0
- package/dist/collection/components/ez-collapsible-box/ez-collapsible-box.js +226 -7
- package/dist/collection/components/ez-combo-box/ez-combo-box.css +1 -22
- package/dist/collection/components/ez-combo-box/ez-combo-box.js +42 -18
- package/dist/collection/components/ez-date-input/ez-date-input.js +8 -13
- package/dist/collection/components/ez-date-time-input/ez-date-time-input.js +8 -13
- package/dist/collection/components/ez-dialog/DialogType.js +1 -0
- package/dist/collection/components/ez-dialog/ez-dialog.css +19 -25
- package/dist/collection/components/ez-dialog/ez-dialog.js +41 -6
- package/dist/collection/components/ez-form/DataBinder.js +1 -0
- package/dist/collection/components/ez-form/ez-form.js +22 -13
- package/dist/collection/components/ez-form/fieldbuilder/FieldBuilder.js +1 -1
- package/dist/collection/components/ez-form/structure/FormSheetMetadata.js +24 -14
- package/dist/collection/components/ez-grid/controller/DataUnitBridge.js +3 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +64 -10
- package/dist/collection/components/ez-grid/controller/ag-grid/components/cellRenderer.js +31 -0
- package/dist/collection/components/ez-grid/ez-grid.js +40 -3
- package/dist/collection/components/ez-grid/subcomponents/ez-grid-config/ez-grid-config.css +36 -25
- package/dist/collection/components/ez-grid/subcomponents/ez-grid-config/ez-grid-config.js +1 -2
- package/dist/collection/components/ez-grid/subcomponents/ez-select-box/ez-select-box.js +5 -4
- package/dist/collection/components/ez-icon/ez-icon.css +117 -98
- package/dist/collection/components/ez-list/ez-list.css +9 -1
- package/dist/collection/components/ez-modal-container/ez-modal-container.css +38 -0
- package/dist/collection/components/ez-modal-container/ez-modal-container.js +166 -0
- package/dist/collection/components/ez-modal-container/index.js +2 -0
- package/dist/collection/components/ez-modal-container/modal-action.js +8 -0
- package/dist/collection/components/ez-modal-container/modal-button-status.js +7 -0
- package/dist/collection/components/ez-popover/ez-popover.css +1 -1
- package/dist/collection/components/ez-popup/ez-popup.css +4 -0
- package/dist/collection/components/ez-popup/ez-popup.js +26 -4
- package/dist/collection/components/ez-radio-button/ez-radio-button.css +16 -5
- package/dist/collection/components/ez-radio-button/ez-radio-button.js +1 -1
- package/dist/collection/components/ez-scroller/ez-scroller.css +4 -2
- package/dist/collection/components/ez-search/ez-search.js +6 -6
- package/dist/collection/components/ez-tabselector/ez-tabselector.css +9 -0
- package/dist/collection/components/ez-tabselector/ez-tabselector.js +7 -3
- package/dist/collection/components/ez-text-area/ez-text-area.css +6 -3
- package/dist/collection/components/ez-text-area/ez-text-area.js +5 -5
- package/dist/collection/components/ez-text-edit/ez-text-edit.css +19 -0
- package/dist/collection/components/ez-text-edit/ez-text-edit.js +188 -0
- package/dist/collection/components/ez-text-input/ez-text-input.css +18 -2
- package/dist/collection/components/ez-text-input/ez-text-input.js +28 -0
- package/dist/collection/components/ez-view-stack/ez-view-stack.js +12 -6
- package/dist/collection/utils/ApplicationUtils.js +5 -1
- package/dist/collection/utils/CSSVarsUtils.js +17 -0
- package/dist/collection/utils/index.js +1 -0
- package/dist/custom-elements/index.d.ts +12 -0
- package/dist/custom-elements/index.js +728 -254
- package/dist/esm/{ApplicationUtils-5f87ae60.js → ApplicationUtils-205ac4bc.js} +6 -2
- package/dist/esm/{CSSVarsUtils-499b75c2.js → CSSVarsUtils-00f67f32.js} +17 -0
- package/dist/esm/{DialogType-72afa679.js → DialogType-4059dc4d.js} +1 -0
- package/dist/esm/FieldBuilder-9e9545fc.js +117 -0
- package/dist/esm/ez-actions-button.entry.js +67 -15
- package/dist/esm/ez-button.entry.js +12 -10
- package/dist/esm/ez-calendar.entry.js +1 -1
- package/dist/esm/ez-chip.entry.js +6 -6
- package/dist/esm/ez-collapsible-box.entry.js +86 -7
- package/dist/esm/ez-combo-box.entry.js +38 -13
- package/dist/esm/ez-date-input.entry.js +9 -14
- package/dist/esm/ez-date-time-input.entry.js +10 -15
- package/dist/esm/ez-dialog.entry.js +42 -7
- package/dist/esm/ez-filter-input.entry.js +1 -1
- package/dist/esm/ez-form.entry.js +43 -132
- package/dist/esm/ez-grid-config.entry.js +4 -5
- package/dist/esm/ez-grid.entry.js +97 -10
- package/dist/esm/ez-icon.entry.js +1 -1
- package/dist/esm/ez-list.entry.js +1 -1
- package/dist/esm/ez-modal-container.entry.js +50 -0
- package/dist/esm/ez-number-input.entry.js +1 -1
- package/dist/esm/ez-popover.entry.js +1 -1
- package/dist/esm/ez-popup.entry.js +7 -3
- package/dist/esm/ez-radio-button.entry.js +2 -2
- package/dist/esm/ez-scroller.entry.js +1 -1
- package/dist/esm/ez-search.entry.js +1 -1
- package/dist/esm/ez-tabselector.entry.js +7 -5
- package/dist/esm/ez-text-area.entry.js +6 -6
- package/dist/esm/ez-text-edit.entry.js +99 -0
- package/dist/esm/ez-text-input.entry.js +11 -1
- package/dist/esm/ez-time-input.entry.js +1 -1
- package/dist/esm/ez-upload.entry.js +2 -2
- package/dist/esm/ez-view-stack.entry.js +9 -5
- package/dist/esm/ezui.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/ezui/ezui.esm.js +1 -1
- package/dist/ezui/p-0b44cf1c.js +1 -0
- package/dist/ezui/p-0c7203d5.entry.js +1 -0
- package/dist/ezui/p-2cc6dd66.entry.js +1 -0
- package/dist/ezui/p-2ccad880.entry.js +1 -0
- package/dist/ezui/p-333d79c4.entry.js +1 -0
- package/dist/ezui/p-3987f8d8.entry.js +1 -0
- package/dist/ezui/p-3c87845d.entry.js +1 -0
- package/dist/ezui/{p-768053d0.entry.js → p-43bb6a59.entry.js} +1 -1
- package/dist/ezui/p-4a5e37a7.js +1 -0
- package/dist/ezui/p-4ad647fc.entry.js +1 -0
- package/dist/ezui/p-54ecd19a.js +1 -0
- package/dist/ezui/{p-03742d3e.entry.js → p-56688470.entry.js} +1 -1
- package/dist/ezui/{p-b901ba02.entry.js → p-5a1927a2.entry.js} +1 -1
- package/dist/ezui/{p-b2cf7db2.entry.js → p-63d567cc.entry.js} +1 -1
- package/dist/ezui/p-6befd7e4.entry.js +1 -0
- package/dist/ezui/p-712bd293.entry.js +1 -0
- package/dist/ezui/{p-d9c72ff7.entry.js → p-72c75a43.entry.js} +1 -1
- package/dist/ezui/{p-15d18ece.entry.js → p-744eb735.entry.js} +1 -1
- package/dist/ezui/{p-81eb2738.entry.js → p-802d23d9.entry.js} +1 -1
- package/dist/ezui/p-86daa81a.entry.js +1 -0
- package/dist/ezui/{p-72ab066f.entry.js → p-b706619e.entry.js} +1 -1
- package/dist/ezui/p-bca406db.entry.js +1 -0
- package/dist/ezui/p-be06251d.entry.js +1 -0
- package/dist/ezui/{p-e7d03a0d.entry.js → p-bffae598.entry.js} +1 -1
- package/dist/ezui/p-d91527dc.entry.js +1 -0
- package/dist/ezui/p-dd257f17.entry.js +1 -0
- package/dist/ezui/p-e1148f5c.js +1 -0
- package/dist/ezui/p-e1f2b5da.entry.js +1 -0
- package/dist/ezui/p-e230bfd2.entry.js +1 -0
- package/dist/ezui/{p-5c721278.entry.js → p-e3ee814c.entry.js} +1 -1
- package/dist/ezui/p-e697ffd5.entry.js +1 -0
- package/dist/ezui/p-ec9decf2.entry.js +1 -0
- package/dist/ezui/p-f36dbc21.entry.js +1 -0
- package/dist/types/components/ez-actions-button/ez-actions-button.d.ts +42 -9
- package/dist/types/components/ez-chip/ez-chip.d.ts +1 -1
- package/dist/types/components/ez-collapsible-box/ez-collapsible-box.d.ts +46 -1
- package/dist/types/components/ez-combo-box/ez-combo-box.d.ts +15 -5
- package/dist/types/components/ez-date-input/ez-date-input.d.ts +0 -1
- package/dist/types/components/ez-date-time-input/ez-date-time-input.d.ts +0 -1
- package/dist/types/components/ez-dialog/DialogType.d.ts +1 -0
- package/dist/types/components/ez-dialog/ez-dialog.d.ts +3 -0
- package/dist/types/components/ez-form/DataBinder.d.ts +2 -2
- package/dist/types/components/ez-form/ez-form.d.ts +21 -11
- package/dist/types/components/ez-form/fieldbuilder/tpl/CheckBox.tpl.d.ts +3 -3
- package/dist/types/components/ez-form/fieldbuilder/tpl/NumberInput.tpl.d.ts +2 -5
- package/dist/types/components/ez-form/structure/FormSheetMetadata.d.ts +3 -3
- package/dist/types/components/ez-grid/controller/EzGridController.d.ts +11 -0
- package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +5 -1
- package/dist/types/components/ez-grid/controller/ag-grid/components/cellRenderer.d.ts +9 -0
- package/dist/types/components/ez-grid/ez-grid.d.ts +8 -3
- package/dist/types/components/ez-grid/subcomponents/ez-select-box/ez-select-box.d.ts +2 -6
- package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +43 -0
- package/dist/types/components/ez-modal-container/index.d.ts +2 -0
- package/dist/types/components/ez-modal-container/modal-action.d.ts +7 -0
- package/dist/types/components/ez-modal-container/modal-button-status.d.ts +6 -0
- package/dist/types/components/ez-popup/ez-popup.d.ts +4 -0
- package/dist/types/components/ez-search/ez-search.d.ts +3 -3
- package/dist/types/components/ez-tabselector/ez-tabselector.d.ts +2 -0
- package/dist/types/components/ez-text-edit/ez-text-edit.d.ts +39 -0
- package/dist/types/components/ez-text-input/ez-text-input.d.ts +5 -0
- package/dist/types/components/ez-view-stack/ez-view-stack.d.ts +5 -1
- package/dist/types/components.d.ts +266 -28
- package/dist/types/utils/ApplicationUtils.d.ts +1 -0
- package/dist/types/utils/CSSVarsUtils.d.ts +1 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/package.json +5 -5
- package/react/components.d.ts +2 -0
- package/react/components.js +2 -0
- package/react/components.js.map +1 -1
- package/dist/ezui/p-3263a002.js +0 -1
- package/dist/ezui/p-3ae441ec.entry.js +0 -1
- package/dist/ezui/p-3ffdde40.entry.js +0 -1
- package/dist/ezui/p-416bedbe.entry.js +0 -1
- package/dist/ezui/p-47e06040.entry.js +0 -1
- package/dist/ezui/p-6cfe20a0.entry.js +0 -1
- package/dist/ezui/p-719e9ef9.entry.js +0 -1
- package/dist/ezui/p-787fbdfe.js +0 -1
- package/dist/ezui/p-7fe1ac9a.entry.js +0 -1
- package/dist/ezui/p-898b9906.js +0 -1
- package/dist/ezui/p-9c3c9da8.entry.js +0 -1
- package/dist/ezui/p-a27dafa4.entry.js +0 -1
- package/dist/ezui/p-a3ff4f0e.entry.js +0 -1
- package/dist/ezui/p-aba3fa6c.entry.js +0 -1
- package/dist/ezui/p-b3e978aa.entry.js +0 -1
- package/dist/ezui/p-cccd8cde.entry.js +0 -1
- package/dist/ezui/p-cf283c4a.entry.js +0 -1
- package/dist/ezui/p-d0671e14.entry.js +0 -1
- package/dist/ezui/p-e0f06d73.entry.js +0 -1
- package/dist/ezui/p-ed835b36.entry.js +0 -1
|
@@ -20,7 +20,11 @@ export class EzPopup {
|
|
|
20
20
|
/**
|
|
21
21
|
* Define se o componente utilizará um cabeçalho com botão de fechamento.
|
|
22
22
|
*/
|
|
23
|
-
this.useHeader =
|
|
23
|
+
this.useHeader = true;
|
|
24
|
+
/**
|
|
25
|
+
* Define se o componente utilizará um cabeçalho com botão de fechamento.
|
|
26
|
+
*/
|
|
27
|
+
this.heightMode = "full";
|
|
24
28
|
}
|
|
25
29
|
getGridSize() {
|
|
26
30
|
return this._sizeClasses[this.size] || this._sizeClasses["medium"];
|
|
@@ -35,9 +39,9 @@ export class EzPopup {
|
|
|
35
39
|
return (h(Host, null,
|
|
36
40
|
h("div", { class: "overlay" },
|
|
37
41
|
h("div", { class: "popup col " + this.getGridSize() },
|
|
38
|
-
h("div", { class: "popup__container", ref: elem => this._container = elem, tabIndex: -1 },
|
|
42
|
+
h("div", { class: "popup__container " + (this.heightMode === "auto" ? "popup__container--auto" : ""), ref: elem => this._container = elem, tabIndex: -1 },
|
|
39
43
|
h("div", { class: "popup__content" },
|
|
40
|
-
h("div", { class: "popup__header" },
|
|
44
|
+
this.useHeader && h("div", { class: "popup__header" },
|
|
41
45
|
this.ezTitle ?
|
|
42
46
|
h("div", { class: "popup__title" }, this.ezTitle)
|
|
43
47
|
: undefined,
|
|
@@ -108,7 +112,25 @@ export class EzPopup {
|
|
|
108
112
|
},
|
|
109
113
|
"attribute": "use-header",
|
|
110
114
|
"reflect": true,
|
|
111
|
-
"defaultValue": "
|
|
115
|
+
"defaultValue": "true"
|
|
116
|
+
},
|
|
117
|
+
"heightMode": {
|
|
118
|
+
"type": "string",
|
|
119
|
+
"mutable": true,
|
|
120
|
+
"complexType": {
|
|
121
|
+
"original": "string",
|
|
122
|
+
"resolved": "string",
|
|
123
|
+
"references": {}
|
|
124
|
+
},
|
|
125
|
+
"required": false,
|
|
126
|
+
"optional": false,
|
|
127
|
+
"docs": {
|
|
128
|
+
"tags": [],
|
|
129
|
+
"text": "Define se o componente utilizar\u00E1 um cabe\u00E7alho com bot\u00E3o de fechamento."
|
|
130
|
+
},
|
|
131
|
+
"attribute": "height-mode",
|
|
132
|
+
"reflect": true,
|
|
133
|
+
"defaultValue": "\"full\""
|
|
112
134
|
},
|
|
113
135
|
"ezTitle": {
|
|
114
136
|
"type": "string",
|
|
@@ -4,11 +4,15 @@
|
|
|
4
4
|
/*@doc Define a família da fonte do label.*/
|
|
5
5
|
--ez-radio-button--font-family: var(--font-pattern, Arial);
|
|
6
6
|
/*@doc Define o tamanho do label.*/
|
|
7
|
-
--ez-radio-button--font-size: var(--text--
|
|
7
|
+
--ez-radio-button--font-size: var(--text--medium, 14px);
|
|
8
8
|
/*@doc Define o peso da fonte do label.*/
|
|
9
9
|
--ez-radio-button--font-weight: var(--text-weight--large);
|
|
10
10
|
/*@doc Define a cor do texto.*/
|
|
11
11
|
--ez-radio-button--font-color: var(--title--primary, #2B3A54);
|
|
12
|
+
/*@doc Define o espaço superior e inferior da lista de opções.*/
|
|
13
|
+
--ez-radio-button--padding-vertical: var(--space--medium, 12px);
|
|
14
|
+
/*@doc Define o espaço lateral da lista de opções.*/
|
|
15
|
+
--ez-radio-button--padding-horizontal: var(--space--small, 6px);
|
|
12
16
|
|
|
13
17
|
/* Label itens do radio */
|
|
14
18
|
/*@doc Define a família da fonte do label. */
|
|
@@ -19,6 +23,8 @@
|
|
|
19
23
|
--ez-radio-button__form-label--title-primary: var(--title--primary, #2B3A54);
|
|
20
24
|
/*@doc Define o tamanho do label. */
|
|
21
25
|
--ez-radio-button__form-label--font-size: var(--text--medium, 14px);
|
|
26
|
+
/*@doc Define o espaço lateral da lista de opções.*/
|
|
27
|
+
--ez-radio-button__form-label--padding-horizontal: var(--space--medium, 12px);
|
|
22
28
|
|
|
23
29
|
/* Colors */
|
|
24
30
|
/*@doc cor da borda do radio sem seleção (sem seleção / sem foco / sem hover / enabled) */
|
|
@@ -53,9 +59,15 @@
|
|
|
53
59
|
/*private*/
|
|
54
60
|
display: flex;
|
|
55
61
|
width: 100%;
|
|
56
|
-
margin: 10px;
|
|
57
62
|
flex-direction: column;
|
|
58
63
|
align-items: flex-start;
|
|
64
|
+
box-sizing: border-box;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.form {
|
|
68
|
+
/*public*/
|
|
69
|
+
padding: var(--ez-radio-button--padding-vertical) var(--ez-radio-button--padding-horizontal);
|
|
70
|
+
gap: var(--ez-radio-button__form-label--padding-horizontal);
|
|
59
71
|
}
|
|
60
72
|
|
|
61
73
|
.form--vertical {
|
|
@@ -74,7 +86,6 @@
|
|
|
74
86
|
/*private*/
|
|
75
87
|
display: flex;
|
|
76
88
|
align-items: center;
|
|
77
|
-
margin-top: 15px;
|
|
78
89
|
}
|
|
79
90
|
|
|
80
91
|
.label{
|
|
@@ -88,13 +99,13 @@
|
|
|
88
99
|
.form__label{
|
|
89
100
|
/*private*/
|
|
90
101
|
cursor: pointer;
|
|
91
|
-
padding-left: 12px;
|
|
92
|
-
padding-right: 25px;
|
|
93
102
|
/*public*/
|
|
94
103
|
font-weight: var(--ez-radio-button__form-label--font-weight);
|
|
95
104
|
color: var(--ez-radio-button__form-label--title-primary);
|
|
96
105
|
font-family: var(--ez-radio-button__form-label--font-family);
|
|
97
106
|
font-size: var(--ez-radio-button__form-label--font-size);
|
|
107
|
+
padding-left: var(--ez-radio-button__form-label--padding-horizontal);
|
|
108
|
+
padding-right: var(--ez-radio-button__form-label--padding-horizontal);
|
|
98
109
|
}
|
|
99
110
|
|
|
100
111
|
.form__radio {
|
|
@@ -33,7 +33,7 @@ export class EzRadioButton {
|
|
|
33
33
|
render() {
|
|
34
34
|
return (h(Host, null,
|
|
35
35
|
this.label && h("label", { class: "label" }, this.label),
|
|
36
|
-
h("div", { class: "form--" + this.direction }, this._options.map((option, key) => h("div", { class: "form__group" },
|
|
36
|
+
h("div", { class: "form form--" + this.direction }, this._options.map((option, key) => h("div", { class: "form__group" },
|
|
37
37
|
h("input", { id: "rad" + key, class: "form__radio", name: "theradio", type: "radio", value: option.value, onChange: (ev) => { this.handleInputChange(ev); }, disabled: !this.enabled, checked: option.value === this.value }),
|
|
38
38
|
h("label", { htmlFor: "rad" + key, class: "form__label" }, option.label))))));
|
|
39
39
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
:host {
|
|
2
2
|
display: flex;
|
|
3
3
|
cursor: grab;
|
|
4
|
+
width: 100%;
|
|
4
5
|
}
|
|
5
6
|
|
|
6
7
|
.dragging{
|
|
@@ -11,6 +12,7 @@
|
|
|
11
12
|
display: flex;
|
|
12
13
|
flex-direction: column;
|
|
13
14
|
overflow: hidden;
|
|
15
|
+
scrollbar-width: thin;
|
|
14
16
|
}
|
|
15
17
|
|
|
16
18
|
.ez-scroller__container--horizontal{
|
|
@@ -35,7 +37,7 @@
|
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
::-webkit-scrollbar-thumb {
|
|
38
|
-
background-color:
|
|
40
|
+
background-color: transparent;
|
|
39
41
|
border-radius: var(--border--radius-small);
|
|
40
42
|
/*provisório*/
|
|
41
43
|
background-color: var(--scrollbar--primary);
|
|
@@ -45,7 +47,7 @@
|
|
|
45
47
|
}
|
|
46
48
|
|
|
47
49
|
::-webkit-scrollbar {
|
|
48
|
-
background-color:
|
|
50
|
+
background-color: transparent;
|
|
49
51
|
width: var(--space--small);
|
|
50
52
|
height: var(--space--small);
|
|
51
53
|
max-width: var(--space--small);
|
|
@@ -79,10 +79,10 @@ export class EzSearch {
|
|
|
79
79
|
"type": "string",
|
|
80
80
|
"mutable": true,
|
|
81
81
|
"complexType": {
|
|
82
|
-
"original": "
|
|
83
|
-
"resolved": "
|
|
82
|
+
"original": "IOption | string",
|
|
83
|
+
"resolved": "IOption | string",
|
|
84
84
|
"references": {
|
|
85
|
-
"
|
|
85
|
+
"IOption": {
|
|
86
86
|
"location": "import",
|
|
87
87
|
"path": "../ez-combo-box/ez-combo-box"
|
|
88
88
|
}
|
|
@@ -252,10 +252,10 @@ export class EzSearch {
|
|
|
252
252
|
"text": "Um evento disparado quando o estado do componente \u00E9 alterado (onEzChange)."
|
|
253
253
|
},
|
|
254
254
|
"complexType": {
|
|
255
|
-
"original": "
|
|
256
|
-
"resolved": "
|
|
255
|
+
"original": "IOption",
|
|
256
|
+
"resolved": "IOption",
|
|
257
257
|
"references": {
|
|
258
|
-
"
|
|
258
|
+
"IOption": {
|
|
259
259
|
"location": "import",
|
|
260
260
|
"path": "../ez-combo-box/ez-combo-box"
|
|
261
261
|
}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
display: flex;
|
|
13
13
|
position: relative;
|
|
14
14
|
width: 100%;
|
|
15
|
+
/* border-bottom: 2px solid #dce0e8; */
|
|
15
16
|
overflow: hidden;
|
|
16
17
|
/* @doc Define a sombra do box da aba. */
|
|
17
18
|
/* --tabselector__box--box-shadow: var(--shadow, 0px 0px 8px 0px #000); */
|
|
@@ -135,4 +136,12 @@
|
|
|
135
136
|
|
|
136
137
|
.scroll::-webkit-scrollbar {
|
|
137
138
|
display: none;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.left-icon {
|
|
142
|
+
padding-right: var(--space--small);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.right-icon {
|
|
146
|
+
padding-left: var(--space--small);
|
|
138
147
|
}
|
|
@@ -72,13 +72,15 @@ export class EzTabselector {
|
|
|
72
72
|
this._hostElem.querySelectorAll("ez-tab").forEach((elem) => {
|
|
73
73
|
const tabKey = elem.getAttribute("tabKey");
|
|
74
74
|
const label = elem.getAttribute("label");
|
|
75
|
-
const
|
|
75
|
+
const leftIcon = elem.getAttribute("leftIcon");
|
|
76
|
+
const rightIcon = elem.getAttribute("rightIcon");
|
|
77
|
+
const tab = { label, tabKey, leftIcon, rightIcon, index: this._processedTabs.length };
|
|
76
78
|
const content = elem.firstChild;
|
|
77
79
|
if (content) {
|
|
78
|
-
content.setAttribute("slot", "tab" +
|
|
80
|
+
content.setAttribute("slot", "tab" + tab.index);
|
|
79
81
|
this._hostElem.appendChild(content);
|
|
80
82
|
}
|
|
81
|
-
this._processedTabs.push(
|
|
83
|
+
this._processedTabs.push(tab);
|
|
82
84
|
});
|
|
83
85
|
}
|
|
84
86
|
}
|
|
@@ -183,7 +185,9 @@ export class EzTabselector {
|
|
|
183
185
|
this.selectedIndex = index;
|
|
184
186
|
}
|
|
185
187
|
return h("button", { id: tabId, class: `tab${isSelected ? " is-active" : ""}`, onClick: () => this.handleTabClick(tab), style: labelStyle },
|
|
188
|
+
tab.leftIcon && h("ez-icon", { iconName: tab.leftIcon, class: "left-icon" }),
|
|
186
189
|
h("span", { class: "tab-label", title: tab.label }, tab.label),
|
|
190
|
+
tab.rightIcon && h("ez-icon", { iconName: tab.rightIcon, class: "right-icon" }),
|
|
187
191
|
h("slot", { name: tabId, onSlotchange: (ev) => { this.handleSlotChange(ev); } }));
|
|
188
192
|
})),
|
|
189
193
|
h("button", { class: "forward-button", ref: (el) => this._forwardButton = el, onClick: () => this.scrollFoward() })));
|
|
@@ -57,6 +57,7 @@
|
|
|
57
57
|
display: flex;
|
|
58
58
|
flex-wrap: wrap;
|
|
59
59
|
position: relative;
|
|
60
|
+
|
|
60
61
|
/*public*/
|
|
61
62
|
width: var(--text-area--width);
|
|
62
63
|
}
|
|
@@ -65,14 +66,16 @@ textarea {
|
|
|
65
66
|
box-sizing: border-box;
|
|
66
67
|
border: none;
|
|
67
68
|
resize: none;
|
|
68
|
-
margin-top: calc(var(--space--medium, 12px) + 4px);
|
|
69
69
|
width: 100%;
|
|
70
|
+
padding: 0;
|
|
71
|
+
background: none;
|
|
72
|
+
|
|
73
|
+
/*public*/
|
|
70
74
|
font-weight: var(--text-area--font-weight);
|
|
71
75
|
font-family: var(--text-area--font-family);
|
|
72
76
|
font-size: var(--text-area--font-size);
|
|
73
77
|
color: var(--text-area--color);
|
|
74
|
-
|
|
75
|
-
background: none;
|
|
78
|
+
margin-top: calc(var(--space--medium, 12px) + 4px);
|
|
76
79
|
}
|
|
77
80
|
|
|
78
81
|
textarea:focus {
|
|
@@ -19,15 +19,15 @@ export class EzTextArea {
|
|
|
19
19
|
this.mode = "regular";
|
|
20
20
|
}
|
|
21
21
|
observeErrorMessage() {
|
|
22
|
-
var _a, _b;
|
|
22
|
+
var _a, _b, _c, _d;
|
|
23
23
|
const hasError = typeof this.errorMessage === 'string' && this.errorMessage !== '';
|
|
24
24
|
if (hasError) {
|
|
25
|
-
this._container.classList.add('hasError');
|
|
26
|
-
(
|
|
25
|
+
(_a = this._container) === null || _a === void 0 ? void 0 : _a.classList.add('hasError');
|
|
26
|
+
(_b = this._messageBoxElem) === null || _b === void 0 ? void 0 : _b.classList.add('hasError');
|
|
27
27
|
}
|
|
28
28
|
else {
|
|
29
|
-
this._container.classList.remove('hasError');
|
|
30
|
-
(
|
|
29
|
+
(_c = this._container) === null || _c === void 0 ? void 0 : _c.classList.remove('hasError');
|
|
30
|
+
(_d = this._messageBoxElem) === null || _d === void 0 ? void 0 : _d.classList.remove('hasError');
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
observeValue(newValue, oldValue) {
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
:host {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: 5px;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.text-edit__form-input {
|
|
8
|
+
width: auto;
|
|
9
|
+
--ez-text-input__input--padding: 0px;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.text-edit__hidden-value {
|
|
13
|
+
visibility: hidden;
|
|
14
|
+
position: absolute;
|
|
15
|
+
white-space: nowrap;
|
|
16
|
+
z-index: -1;
|
|
17
|
+
top: 0;
|
|
18
|
+
left: 0;
|
|
19
|
+
}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { Component, Host, h, Prop, Event, State, Method } from '@stencil/core';
|
|
2
|
+
import { StringUtils } from '@sankhyalabs/core';
|
|
3
|
+
import { ApplicationUtils } from "../../utils";
|
|
4
|
+
export class EzTextEdit {
|
|
5
|
+
/**
|
|
6
|
+
* Aplica focus no campo.
|
|
7
|
+
*/
|
|
8
|
+
async applyFocusSelect() {
|
|
9
|
+
this.calcSizeInput(this.value, true);
|
|
10
|
+
}
|
|
11
|
+
calcSizeInput(value, setSelect = false) {
|
|
12
|
+
var _a, _b;
|
|
13
|
+
const textInput = (_b = (_a = this._inputElement) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('input');
|
|
14
|
+
if (textInput != undefined) {
|
|
15
|
+
const sizeText = this.getWidthValue(value);
|
|
16
|
+
textInput.style.width = sizeText + 'px';
|
|
17
|
+
if (setSelect) {
|
|
18
|
+
setTimeout(() => textInput.select(), 100);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
getWidthValue(value) {
|
|
23
|
+
if (this._valueBasis != undefined) {
|
|
24
|
+
const span = this._valueBasis;
|
|
25
|
+
if (value != undefined) {
|
|
26
|
+
const cursorSpace = 2;
|
|
27
|
+
span.innerHTML = value;
|
|
28
|
+
return span.clientWidth > 0 ? (span.clientWidth + cursorSpace) : cursorSpace;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
span.innerHTML = "";
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return 0;
|
|
35
|
+
}
|
|
36
|
+
setStyledInput() {
|
|
37
|
+
var _a, _b;
|
|
38
|
+
let fontSize = "";
|
|
39
|
+
let fontWeight = "";
|
|
40
|
+
let fontFamily = "";
|
|
41
|
+
if (this.styled != undefined) {
|
|
42
|
+
fontSize = this.styled.fontSize;
|
|
43
|
+
fontWeight = this.styled.fontWeight;
|
|
44
|
+
fontFamily = this.styled.fontFamily;
|
|
45
|
+
}
|
|
46
|
+
const textInput = (_b = (_a = this._inputElement) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('input');
|
|
47
|
+
if (textInput != undefined) {
|
|
48
|
+
textInput.style.fontSize = fontSize;
|
|
49
|
+
textInput.style.fontWeight = fontWeight;
|
|
50
|
+
textInput.style.fontFamily = fontFamily;
|
|
51
|
+
}
|
|
52
|
+
const span = this._valueBasis;
|
|
53
|
+
if (span != undefined) {
|
|
54
|
+
span.style.fontSize = fontSize;
|
|
55
|
+
span.style.fontWeight = fontWeight;
|
|
56
|
+
span.style.fontFamily = fontFamily;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
handleSaveEdition() {
|
|
60
|
+
if (this._newValue !== this.value && !StringUtils.isEmpty(this._newValue)) {
|
|
61
|
+
this.saveEdition.emit({ value: this.value, newValue: this._newValue });
|
|
62
|
+
}
|
|
63
|
+
else if (!this._newValue) {
|
|
64
|
+
ApplicationUtils.alert("Aviso", "Não é possível salvar um campo em branco.").then(() => {
|
|
65
|
+
this.setNewValue(this.value, true);
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
this.cancelEdition.emit();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
setNewValue(value, setSelect = false) {
|
|
73
|
+
this._newValue = value;
|
|
74
|
+
this.calcSizeInput(this._newValue, setSelect);
|
|
75
|
+
}
|
|
76
|
+
componentDidLoad() {
|
|
77
|
+
this.applyFocusSelect();
|
|
78
|
+
this.setNewValue(this.value);
|
|
79
|
+
}
|
|
80
|
+
componentDidRender() {
|
|
81
|
+
this.setStyledInput();
|
|
82
|
+
}
|
|
83
|
+
render() {
|
|
84
|
+
return (h(Host, null,
|
|
85
|
+
h("span", { class: "text-edit__hidden-value", ref: elem => this._valueBasis = elem }),
|
|
86
|
+
h("ez-text-input", { onInput: () => { this.calcSizeInput(this._newValue); }, class: "text-edit__form-input", value: this._newValue, ref: (elem) => this._inputElement = elem, mode: "slim", onEzChange: (evt) => this.setNewValue(evt === null || evt === void 0 ? void 0 : evt.detail), noBorder: true }),
|
|
87
|
+
h("ez-button", { class: "text-edit__icon-check", mode: "icon", iconName: "check", size: "small", onClick: () => { this.handleSaveEdition(); } }),
|
|
88
|
+
h("ez-button", { class: "text-edit__icon-close", mode: "icon", iconName: "close", size: "small", onClick: () => { this.cancelEdition.emit(); } })));
|
|
89
|
+
}
|
|
90
|
+
static get is() { return "ez-text-edit"; }
|
|
91
|
+
static get encapsulation() { return "shadow"; }
|
|
92
|
+
static get originalStyleUrls() { return {
|
|
93
|
+
"$": ["ez-text-edit.css"]
|
|
94
|
+
}; }
|
|
95
|
+
static get styleUrls() { return {
|
|
96
|
+
"$": ["ez-text-edit.css"]
|
|
97
|
+
}; }
|
|
98
|
+
static get properties() { return {
|
|
99
|
+
"value": {
|
|
100
|
+
"type": "string",
|
|
101
|
+
"mutable": false,
|
|
102
|
+
"complexType": {
|
|
103
|
+
"original": "string",
|
|
104
|
+
"resolved": "string",
|
|
105
|
+
"references": {}
|
|
106
|
+
},
|
|
107
|
+
"required": false,
|
|
108
|
+
"optional": false,
|
|
109
|
+
"docs": {
|
|
110
|
+
"tags": [],
|
|
111
|
+
"text": "Valor manipulado pelo componente atrav\u00E9s do input"
|
|
112
|
+
},
|
|
113
|
+
"attribute": "value",
|
|
114
|
+
"reflect": false
|
|
115
|
+
},
|
|
116
|
+
"styled": {
|
|
117
|
+
"type": "unknown",
|
|
118
|
+
"mutable": false,
|
|
119
|
+
"complexType": {
|
|
120
|
+
"original": "IStyled",
|
|
121
|
+
"resolved": "IStyled",
|
|
122
|
+
"references": {
|
|
123
|
+
"IStyled": {
|
|
124
|
+
"location": "local"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"required": false,
|
|
129
|
+
"optional": false,
|
|
130
|
+
"docs": {
|
|
131
|
+
"tags": [],
|
|
132
|
+
"text": "Define atributos do estilo"
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}; }
|
|
136
|
+
static get states() { return {
|
|
137
|
+
"_newValue": {}
|
|
138
|
+
}; }
|
|
139
|
+
static get events() { return [{
|
|
140
|
+
"method": "saveEdition",
|
|
141
|
+
"name": "saveEdition",
|
|
142
|
+
"bubbles": true,
|
|
143
|
+
"cancelable": true,
|
|
144
|
+
"composed": true,
|
|
145
|
+
"docs": {
|
|
146
|
+
"tags": [],
|
|
147
|
+
"text": "Evento emitido ao salvar uma edi\u00E7\u00E3o"
|
|
148
|
+
},
|
|
149
|
+
"complexType": {
|
|
150
|
+
"original": "any",
|
|
151
|
+
"resolved": "any",
|
|
152
|
+
"references": {}
|
|
153
|
+
}
|
|
154
|
+
}, {
|
|
155
|
+
"method": "cancelEdition",
|
|
156
|
+
"name": "cancelEdition",
|
|
157
|
+
"bubbles": true,
|
|
158
|
+
"cancelable": true,
|
|
159
|
+
"composed": true,
|
|
160
|
+
"docs": {
|
|
161
|
+
"tags": [],
|
|
162
|
+
"text": "Disparado ao cancelar uma edi\u00E7\u00E3o"
|
|
163
|
+
},
|
|
164
|
+
"complexType": {
|
|
165
|
+
"original": "any",
|
|
166
|
+
"resolved": "any",
|
|
167
|
+
"references": {}
|
|
168
|
+
}
|
|
169
|
+
}]; }
|
|
170
|
+
static get methods() { return {
|
|
171
|
+
"applyFocusSelect": {
|
|
172
|
+
"complexType": {
|
|
173
|
+
"signature": "() => Promise<void>",
|
|
174
|
+
"parameters": [],
|
|
175
|
+
"references": {
|
|
176
|
+
"Promise": {
|
|
177
|
+
"location": "global"
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
"return": "Promise<void>"
|
|
181
|
+
},
|
|
182
|
+
"docs": {
|
|
183
|
+
"text": "Aplica focus no campo.",
|
|
184
|
+
"tags": []
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}; }
|
|
188
|
+
}
|
|
@@ -37,6 +37,10 @@
|
|
|
37
37
|
--ez-text-input__input--disabled--color: var(--text--disable, #AFB6C0);
|
|
38
38
|
/*@doc Define a cor da borda do input quando com erro.*/
|
|
39
39
|
--ez-text-input__input--error--border-color: #CC2936;
|
|
40
|
+
/*@doc Define a cor do input quando não possuir borda*/
|
|
41
|
+
--ez-text-input__input--noborder-color: white;
|
|
42
|
+
/*@doc Define o padding do input*/
|
|
43
|
+
--ez-text-input__input--padding: var(--space--medium, 6px);
|
|
40
44
|
|
|
41
45
|
/* message box */
|
|
42
46
|
/*@doc Define o tamanho da fonte da mensagem abaixo do input.*/
|
|
@@ -72,7 +76,6 @@ input {
|
|
|
72
76
|
/*private*/
|
|
73
77
|
width: 100%;
|
|
74
78
|
box-sizing: border-box;
|
|
75
|
-
padding: var(--space--medium, 6px);
|
|
76
79
|
|
|
77
80
|
/*public*/
|
|
78
81
|
height: var(--ez-text-input--height);
|
|
@@ -84,6 +87,7 @@ input {
|
|
|
84
87
|
background-color: var(--ez-text-input__input--background-color);
|
|
85
88
|
color: var(--ez-text-input--color);
|
|
86
89
|
font-weight: var(--ez-text-input--font-weight);
|
|
90
|
+
padding: var(--ez-text-input__input--padding);
|
|
87
91
|
}
|
|
88
92
|
|
|
89
93
|
input:disabled {
|
|
@@ -103,7 +107,7 @@ input.icon--left {
|
|
|
103
107
|
padding-left: var(--ez-text-input__icon--width);
|
|
104
108
|
}
|
|
105
109
|
|
|
106
|
-
input.icon--right {
|
|
110
|
+
input.icon--right {
|
|
107
111
|
padding-right: var(--ez-text-input__icon--width);
|
|
108
112
|
}
|
|
109
113
|
|
|
@@ -212,6 +216,11 @@ input:read-only {
|
|
|
212
216
|
height: var(--ez-text-input--height--slim);
|
|
213
217
|
}
|
|
214
218
|
|
|
219
|
+
.input__slim--title{
|
|
220
|
+
font-size: 16px;
|
|
221
|
+
font-weight: bold;
|
|
222
|
+
}
|
|
223
|
+
|
|
215
224
|
.input--slim::-webkit-input-placeholder { /* Edge */
|
|
216
225
|
/*public*/
|
|
217
226
|
font-family: var(--ez-text-input--font-family);
|
|
@@ -275,4 +284,11 @@ input:read-only {
|
|
|
275
284
|
.input--slim:disabled::placeholder {
|
|
276
285
|
/*public*/
|
|
277
286
|
color: var(--ez-text-input__input--disabled--color);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
input.input__slim--noborder {
|
|
290
|
+
box-shadow: 0 0 0 0;
|
|
291
|
+
border: 0 none;
|
|
292
|
+
outline: 0;
|
|
293
|
+
background: var(--ez-text-input__input--noborder-color);
|
|
278
294
|
}
|
|
@@ -14,6 +14,10 @@ export class EzTextInput {
|
|
|
14
14
|
* Define o modo do tamanho do campo; opções: slim e regular.
|
|
15
15
|
*/
|
|
16
16
|
this.mode = "regular";
|
|
17
|
+
/**
|
|
18
|
+
* Define se o campo contará com bordas ou não
|
|
19
|
+
*/
|
|
20
|
+
this.noBorder = false;
|
|
17
21
|
}
|
|
18
22
|
observeErrorMessage() {
|
|
19
23
|
if (this._inputElem) {
|
|
@@ -87,6 +91,11 @@ export class EzTextInput {
|
|
|
87
91
|
this._contentLeftSlot.style.color = color;
|
|
88
92
|
}
|
|
89
93
|
}
|
|
94
|
+
adjustBorderInput() {
|
|
95
|
+
if (this.noBorder) {
|
|
96
|
+
this._inputElem.classList.add("input__slim--noborder");
|
|
97
|
+
}
|
|
98
|
+
}
|
|
90
99
|
//---------------------------------------------
|
|
91
100
|
// Public methods
|
|
92
101
|
//---------------------------------------------
|
|
@@ -194,6 +203,7 @@ export class EzTextInput {
|
|
|
194
203
|
this.observeErrorMessage();
|
|
195
204
|
this.observeMask();
|
|
196
205
|
this.adjustFloatingLabel();
|
|
206
|
+
this.adjustBorderInput();
|
|
197
207
|
}
|
|
198
208
|
componentWillLoad() {
|
|
199
209
|
this.observeMask();
|
|
@@ -387,6 +397,24 @@ export class EzTextInput {
|
|
|
387
397
|
"attribute": "mode",
|
|
388
398
|
"reflect": true,
|
|
389
399
|
"defaultValue": "\"regular\""
|
|
400
|
+
},
|
|
401
|
+
"noBorder": {
|
|
402
|
+
"type": "boolean",
|
|
403
|
+
"mutable": false,
|
|
404
|
+
"complexType": {
|
|
405
|
+
"original": "boolean",
|
|
406
|
+
"resolved": "boolean",
|
|
407
|
+
"references": {}
|
|
408
|
+
},
|
|
409
|
+
"required": false,
|
|
410
|
+
"optional": false,
|
|
411
|
+
"docs": {
|
|
412
|
+
"tags": [],
|
|
413
|
+
"text": "Define se o campo contar\u00E1 com bordas ou n\u00E3o"
|
|
414
|
+
},
|
|
415
|
+
"attribute": "no-border",
|
|
416
|
+
"reflect": true,
|
|
417
|
+
"defaultValue": "false"
|
|
390
418
|
}
|
|
391
419
|
}; }
|
|
392
420
|
static get events() { return [{
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { Component, h, Host, Element, Method } from '@stencil/core';
|
|
2
2
|
export class EzViewStack {
|
|
3
|
+
constructor() {
|
|
4
|
+
/**
|
|
5
|
+
* Indetificador único do componente
|
|
6
|
+
*/
|
|
7
|
+
this._dataKey = 'id_'.concat(Date.now().toString());
|
|
8
|
+
}
|
|
3
9
|
/**
|
|
4
10
|
* Exibe a aba desejada de acordo com o index passado na tela fazendo com a ativa atual seja removida ou oculta dependendo da hidePolicy.
|
|
5
11
|
*/
|
|
@@ -11,17 +17,17 @@ export class EzViewStack {
|
|
|
11
17
|
}
|
|
12
18
|
}
|
|
13
19
|
/**
|
|
14
|
-
* Retorna o index que
|
|
20
|
+
* Retorna o index que está atualmente ativo e sendo exibido.
|
|
15
21
|
*/
|
|
16
22
|
async getSelectedIndex() {
|
|
17
23
|
return this._focusedIndex;
|
|
18
24
|
}
|
|
19
25
|
policyHideRemove() {
|
|
20
|
-
let element = this._hostElem.querySelector(
|
|
26
|
+
let element = this._hostElem.querySelector(`#${this._dataKey}_el_${this._focusedIndex}`);
|
|
21
27
|
this.checkElementVisibility(element);
|
|
22
28
|
}
|
|
23
29
|
policyShowAppend(index) {
|
|
24
|
-
let selectedElement = this._hostElem.querySelector(
|
|
30
|
+
let selectedElement = this._hostElem.querySelector(`#${this._dataKey}_el_${index}`);
|
|
25
31
|
if (selectedElement) {
|
|
26
32
|
selectedElement.removeAttribute("style");
|
|
27
33
|
}
|
|
@@ -44,8 +50,8 @@ export class EzViewStack {
|
|
|
44
50
|
this._focusedIndex = 0;
|
|
45
51
|
this._totalStackItems = 0;
|
|
46
52
|
this._hostElem.classList.add("ez-view-stack__container");
|
|
47
|
-
this._hostElem.querySelectorAll("stack-item").forEach((element, index) => {
|
|
48
|
-
element.setAttribute("id",
|
|
53
|
+
this._hostElem.querySelectorAll(":scope > stack-item").forEach((element, index) => {
|
|
54
|
+
element.setAttribute("id", `${this._dataKey}_el_${index}`);
|
|
49
55
|
if (index !== 0) {
|
|
50
56
|
this.checkElementVisibility(element);
|
|
51
57
|
}
|
|
@@ -100,7 +106,7 @@ export class EzViewStack {
|
|
|
100
106
|
"return": "Promise<number>"
|
|
101
107
|
},
|
|
102
108
|
"docs": {
|
|
103
|
-
"text": "Retorna o index que est\
|
|
109
|
+
"text": "Retorna o index que est\u00E1 atualmente ativo e sendo exibido.",
|
|
104
110
|
"tags": []
|
|
105
111
|
}
|
|
106
112
|
}
|