@sankhyalabs/ezui 7.1.0-dev.20 → 7.1.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.
- package/dist/cjs/{ApplicationUtils-d04f5c94.js → ApplicationUtils-4fb87a9e.js} +1 -1
- package/dist/cjs/{app-globals-c128c97e.js → app-globals-cb31a206.js} +1 -1
- package/dist/cjs/ez-actions-button.cjs.entry.js +2 -2
- package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-avatar.cjs.entry.js +1 -1
- package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
- package/dist/cjs/ez-collapsible-box.cjs.entry.js +2 -2
- package/dist/cjs/{ez-combo-box-list_4.cjs.entry.js → ez-combo-box-list_5.cjs.entry.js} +149 -2
- package/dist/cjs/ez-combo-box.cjs.entry.js +2 -2
- package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
- package/dist/cjs/ez-double-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-form-view.cjs.entry.js +12 -5
- package/dist/cjs/ez-form.cjs.entry.js +5 -4
- package/dist/cjs/ez-grid.cjs.entry.js +6 -3
- package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
- package/dist/cjs/ez-link-builder_6.cjs.entry.js +1 -1
- package/dist/cjs/ez-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
- package/dist/cjs/ez-modal.cjs.entry.js +1 -1
- package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-pagination.cjs.entry.js +1 -1
- package/dist/cjs/ez-popup.cjs.entry.js +1 -1
- package/dist/cjs/ez-search-plus.cjs.entry.js +2 -2
- package/dist/cjs/ez-search-result-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-search.cjs.entry.js +2 -2
- package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
- package/dist/cjs/ez-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/ez-sortable-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-split-item.cjs.entry.js +2 -2
- package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-tree.cjs.entry.js +1 -1
- package/dist/cjs/ez-upload.cjs.entry.js +2 -2
- package/dist/cjs/ezui.cjs.js +3 -3
- package/dist/cjs/filter-column.cjs.entry.js +1 -1
- package/dist/cjs/index-a7b0c73d.js +2 -2
- package/dist/cjs/{index-00d0166b.js → index-e61642ff.js} +24 -0
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{search-column-8bfee733.js → search-column-51e50b59.js} +2 -2
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/ez-form/ez-form.js +23 -1
- package/dist/collection/components/ez-form-view/ez-form-view.js +24 -2
- package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +4 -2
- package/dist/collection/components/ez-form-view/fieldbuilder/templates/ImageInput.tpl.js +4 -0
- package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +3 -0
- package/dist/collection/components/ez-image-input/ez-image-input.css +173 -0
- package/dist/collection/components/ez-image-input/ez-image-input.js +324 -0
- package/dist/collection/utils/i18n/locales/en-us.js +8 -0
- package/dist/collection/utils/i18n/locales/es-es.js +8 -0
- package/dist/collection/utils/i18n/locales/pt-br.js +8 -0
- package/dist/custom-elements/index.d.ts +6 -0
- package/dist/custom-elements/index.js +193 -8
- package/dist/esm/{ApplicationUtils-12768f5a.js → ApplicationUtils-985c24ae.js} +1 -1
- package/dist/esm/{app-globals-9507c20e.js → app-globals-75f8a758.js} +1 -1
- package/dist/esm/ez-actions-button.entry.js +2 -2
- package/dist/esm/ez-alert-list.entry.js +1 -1
- package/dist/esm/ez-avatar.entry.js +1 -1
- package/dist/esm/ez-calendar.entry.js +1 -1
- package/dist/esm/ez-collapsible-box.entry.js +2 -2
- package/dist/esm/{ez-combo-box-list_4.entry.js → ez-combo-box-list_5.entry.js} +149 -3
- package/dist/esm/ez-combo-box.entry.js +2 -2
- package/dist/esm/ez-date-input.entry.js +1 -1
- package/dist/esm/ez-date-time-input.entry.js +1 -1
- package/dist/esm/ez-dialog.entry.js +1 -1
- package/dist/esm/ez-double-list.entry.js +1 -1
- package/dist/esm/ez-file-item.entry.js +1 -1
- package/dist/esm/ez-form-view.entry.js +12 -5
- package/dist/esm/ez-form.entry.js +5 -4
- package/dist/esm/ez-grid.entry.js +6 -3
- package/dist/esm/ez-guide-navigator.entry.js +1 -1
- package/dist/esm/ez-link-builder_6.entry.js +1 -1
- package/dist/esm/ez-list.entry.js +1 -1
- package/dist/esm/ez-modal-container.entry.js +1 -1
- package/dist/esm/ez-modal.entry.js +1 -1
- package/dist/esm/ez-multi-selection-list.entry.js +1 -1
- package/dist/esm/ez-number-input.entry.js +1 -1
- package/dist/esm/ez-pagination.entry.js +1 -1
- package/dist/esm/ez-popup.entry.js +1 -1
- package/dist/esm/ez-search-plus.entry.js +2 -2
- package/dist/esm/ez-search-result-list.entry.js +1 -1
- package/dist/esm/ez-search.entry.js +2 -2
- package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
- package/dist/esm/ez-skeleton.entry.js +1 -1
- package/dist/esm/ez-sortable-list.entry.js +1 -1
- package/dist/esm/ez-spinner.entry.js +1 -1
- package/dist/esm/ez-split-button.entry.js +1 -1
- package/dist/esm/ez-split-item.entry.js +2 -2
- package/dist/esm/ez-time-input.entry.js +1 -1
- package/dist/esm/ez-tree.entry.js +1 -1
- package/dist/esm/ez-upload.entry.js +2 -2
- package/dist/esm/ezui.js +3 -3
- package/dist/esm/filter-column.entry.js +1 -1
- package/dist/esm/{index-62fc771e.js → index-a3b24b5d.js} +24 -0
- package/dist/esm/index-baa5e267.js +2 -2
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{search-column-c00119ae.js → search-column-0c42248b.js} +2 -2
- package/dist/ezui/ezui.esm.js +1 -1
- package/dist/ezui/{p-e882635e.entry.js → p-0aafbc30.entry.js} +1 -1
- package/dist/ezui/{p-0c0eb410.entry.js → p-0e325699.entry.js} +1 -1
- package/dist/ezui/{p-5a11cf56.js → p-0ec5c128.js} +1 -1
- package/dist/ezui/{p-ff4bde07.entry.js → p-1bf40959.entry.js} +1 -1
- package/dist/ezui/{p-7b999377.entry.js → p-1c3f43e8.entry.js} +1 -1
- package/dist/ezui/{p-1cde96f9.entry.js → p-2676e2a3.entry.js} +1 -1
- package/dist/ezui/{p-e27d7dc2.entry.js → p-28af6826.entry.js} +1 -1
- package/dist/ezui/{p-1adf7139.entry.js → p-2b23906a.entry.js} +1 -1
- package/dist/ezui/{p-1730ee24.entry.js → p-2e5de2a7.entry.js} +1 -1
- package/dist/ezui/{p-5ab08b60.entry.js → p-2fd16ff2.entry.js} +1 -1
- package/dist/ezui/{p-377768bd.entry.js → p-3d71e8e1.entry.js} +2 -2
- package/dist/ezui/{p-6f119d5f.entry.js → p-3fcf79c7.entry.js} +1 -1
- package/dist/ezui/{p-4f0632b4.js → p-474076b3.js} +1 -1
- package/dist/ezui/{p-a401041c.entry.js → p-47d9256e.entry.js} +1 -1
- package/dist/ezui/{p-124699e0.entry.js → p-4ea5c8a7.entry.js} +1 -1
- package/dist/ezui/{p-da585ff3.entry.js → p-582c3f90.entry.js} +1 -1
- package/dist/ezui/{p-6a9a20a0.entry.js → p-5e6de2c1.entry.js} +1 -1
- package/dist/ezui/{p-2a70f094.entry.js → p-6570ca10.entry.js} +1 -1
- package/dist/ezui/{p-e99cbb51.entry.js → p-67f9fadb.entry.js} +1 -1
- package/dist/ezui/p-6a982147.js +1 -0
- package/dist/ezui/{p-2854f087.entry.js → p-6c484770.entry.js} +1 -1
- package/dist/ezui/{p-1266fe78.entry.js → p-6d7f2fdc.entry.js} +1 -1
- package/dist/ezui/{p-df316d40.entry.js → p-6f466aec.entry.js} +1 -1
- package/dist/ezui/{p-3fe05d6b.entry.js → p-714452c7.entry.js} +1 -1
- package/dist/ezui/{p-957d08cd.entry.js → p-7624767b.entry.js} +1 -1
- package/dist/ezui/{p-294f54fe.entry.js → p-782fe2e3.entry.js} +1 -1
- package/dist/ezui/p-8709c4f6.entry.js +1 -0
- package/dist/ezui/{p-8dc267ff.entry.js → p-8a8006e6.entry.js} +1 -1
- package/dist/ezui/{p-79277e43.entry.js → p-9568a93d.entry.js} +1 -1
- package/dist/ezui/{p-19cf13bc.entry.js → p-9771ea3c.entry.js} +1 -1
- package/dist/ezui/p-98218fbc.js +1 -0
- package/dist/ezui/p-9d004e22.entry.js +1 -0
- package/dist/ezui/{p-eee3c7ff.entry.js → p-a13e65a4.entry.js} +1 -1
- package/dist/ezui/{p-e8c6c973.entry.js → p-a1a63294.entry.js} +1 -1
- package/dist/ezui/{p-eca050b4.entry.js → p-c711900a.entry.js} +1 -1
- package/dist/ezui/{p-a7eab406.entry.js → p-dc192d01.entry.js} +1 -1
- package/dist/ezui/{p-59a98e31.entry.js → p-e2e0dd76.entry.js} +1 -1
- package/dist/ezui/{p-44ad16df.entry.js → p-e4a579f2.entry.js} +1 -1
- package/dist/ezui/{p-59092a66.entry.js → p-e82a12c6.entry.js} +1 -1
- package/dist/ezui/p-f1bbf23f.entry.js +1 -0
- package/dist/ezui/{p-cd6f5783.entry.js → p-f45ddc1f.entry.js} +1 -1
- package/dist/types/components/ez-form/ez-form.d.ts +5 -0
- package/dist/types/components/ez-form-view/ez-form-view.d.ts +4 -0
- package/dist/types/components/ez-form-view/fieldbuilder/FieldBuilder.d.ts +3 -1
- package/dist/types/components/ez-form-view/fieldbuilder/templates/ImageInput.tpl.d.ts +2 -0
- package/dist/types/components/ez-image-input/ez-image-input.d.ts +42 -0
- package/dist/types/components.d.ts +98 -0
- package/dist/types/utils/i18n/locales/en-us.d.ts +8 -0
- package/dist/types/utils/i18n/locales/es-es.d.ts +8 -0
- package/dist/types/utils/i18n/locales/pt-br.d.ts +8 -0
- package/dist/types/utils/i18n/translations.d.ts +24 -0
- package/package.json +1 -1
- package/react/components.d.ts +1 -0
- package/react/components.js +1 -0
- package/react/components.js.map +1 -1
- package/dist/ezui/p-14807f4e.js +0 -1
- package/dist/ezui/p-641ee538.js +0 -1
- package/dist/ezui/p-96b33264.entry.js +0 -1
- package/dist/ezui/p-adaa2a81.entry.js +0 -1
- package/dist/ezui/p-c82acfc6.entry.js +0 -1
|
@@ -2820,6 +2820,14 @@ const ptBrTranslations = {
|
|
|
2820
2820
|
uploadErrorTitle: "Enviando arquivo",
|
|
2821
2821
|
uploadingMessage: "Há arquivos sendo enviados. Por favor aguarde a conclusão ou cancele o envio.",
|
|
2822
2822
|
},
|
|
2823
|
+
"ez-image-input": {
|
|
2824
|
+
defaultLabel: "Enviar Imagem",
|
|
2825
|
+
imageAlt: "Imagem carregada",
|
|
2826
|
+
removeImage: "Remover imagem",
|
|
2827
|
+
invalidFileType: "O arquivo selecionado não é uma imagem válida.",
|
|
2828
|
+
fileTooLarge: "A imagem deve ter menos de {{maxSize}}.",
|
|
2829
|
+
imagePreview: "Visualizar Imagem",
|
|
2830
|
+
},
|
|
2823
2831
|
"ez-calendar": {
|
|
2824
2832
|
month: {
|
|
2825
2833
|
0: "Janeiro",
|
|
@@ -3115,6 +3123,14 @@ const enUsTranslations = {
|
|
|
3115
3123
|
uploadErrorTitle: "Uploading file",
|
|
3116
3124
|
uploadingMessage: "Files are being uploaded. Please wait for completion or cancel the upload."
|
|
3117
3125
|
},
|
|
3126
|
+
"ez-image-input": {
|
|
3127
|
+
defaultLabel: "Upload Image",
|
|
3128
|
+
imageAlt: "Uploaded image",
|
|
3129
|
+
removeImage: "Remove image",
|
|
3130
|
+
invalidFileType: "The selected file is not a valid image.",
|
|
3131
|
+
fileTooLarge: "The image must be less than {{maxSize}}.",
|
|
3132
|
+
imagePreview: "Image Preview",
|
|
3133
|
+
},
|
|
3118
3134
|
"ez-calendar": {
|
|
3119
3135
|
month: {
|
|
3120
3136
|
0: "January",
|
|
@@ -3410,6 +3426,14 @@ const esEsTranslations = {
|
|
|
3410
3426
|
uploadErrorTitle: "Subiendo archivo",
|
|
3411
3427
|
uploadingMessage: "Se están subiendo archivos. Por favor, espere a que se complete o cancele la subida.",
|
|
3412
3428
|
},
|
|
3429
|
+
"ez-image-input": {
|
|
3430
|
+
defaultLabel: "Subir Imagen",
|
|
3431
|
+
imageAlt: "Imagen cargada",
|
|
3432
|
+
removeImage: "Eliminar imagen",
|
|
3433
|
+
invalidFileType: "El archivo seleccionado no es una imagen válida.",
|
|
3434
|
+
fileTooLarge: "La imagen debe tener menos de {{maxSize}}.",
|
|
3435
|
+
imagePreview: "Vista Previa de Imagen",
|
|
3436
|
+
},
|
|
3413
3437
|
"ez-calendar": {
|
|
3414
3438
|
month: {
|
|
3415
3439
|
0: "Enero",
|
|
@@ -10671,6 +10695,7 @@ const EzForm$1 = class extends HTMLElement$1 {
|
|
|
10671
10695
|
this.onlyStaticFields = false;
|
|
10672
10696
|
this.useSearchField = true;
|
|
10673
10697
|
this.elementFocusSearchField = undefined;
|
|
10698
|
+
this.customUiBuilders = new Map();
|
|
10674
10699
|
}
|
|
10675
10700
|
/**
|
|
10676
10701
|
* Realiza validação no conteúdo de todos os campos.
|
|
@@ -10728,7 +10753,7 @@ const EzForm$1 = class extends HTMLElement$1 {
|
|
|
10728
10753
|
}
|
|
10729
10754
|
this.ezFormSetFields.emit(fields);
|
|
10730
10755
|
const idFormSheet = `${StringUtils$1.replaceAccentuatedChars(StringUtils$1.toCamelCase(currentSheet === null || currentSheet === void 0 ? void 0 : currentSheet.label), false)}_selectorContainer`;
|
|
10731
|
-
return (h("div", { class: "dynamic-content ez-box--no-outline", "data-element-id": idFormSheet, ref: elem => (this._container = elem), tabindex: "0" }, h("ez-popover", { ref: elem => (this._ezPopoverSearchField = elem), overlayType: "none" }, this.renderFieldColumn()), h("ez-form-view", { ref: (element) => (this._formView = element), class: "ez-row ez-padding-vertical--small", fields: fields, singleColumn: this._singleColumn, selectedRecord: this.dataUnit.getSelectedRecord() })));
|
|
10756
|
+
return (h("div", { class: "dynamic-content ez-box--no-outline", "data-element-id": idFormSheet, ref: elem => (this._container = elem), tabindex: "0" }, h("ez-popover", { ref: elem => (this._ezPopoverSearchField = elem), overlayType: "none" }, this.renderFieldColumn()), h("ez-form-view", { ref: (element) => (this._formView = element), class: "ez-row ez-padding-vertical--small", fields: fields, singleColumn: this._singleColumn, selectedRecord: this.dataUnit.getSelectedRecord(), customUiBuilders: this.customUiBuilders })));
|
|
10732
10757
|
}
|
|
10733
10758
|
renderFieldColumn() {
|
|
10734
10759
|
if (this._fieldSearch != undefined) {
|
|
@@ -10991,6 +11016,11 @@ const buildRichText = ({ name, label, readOnly, contextName, rows, canShowError
|
|
|
10991
11016
|
h("ez-rich-text", { key: name, enabled: !readOnly, label: label, "data-field-name": name, "data-context-name": contextName, rows: rows, canShowError: canShowError })));
|
|
10992
11017
|
};
|
|
10993
11018
|
|
|
11019
|
+
const buildImage = ({ name, label, readOnly, contextName, props }) => {
|
|
11020
|
+
return (h("div", { class: "ez-col ez-col--sd-12" },
|
|
11021
|
+
h("ez-image-input", Object.assign({ enabled: !readOnly, label: label, "data-field-name": name, "data-context-name": contextName, key: name, maxFileSize: Infinity }, props))));
|
|
11022
|
+
};
|
|
11023
|
+
|
|
10994
11024
|
const uiBuilders$1 = new Map();
|
|
10995
11025
|
uiBuilders$1.set(UserInterface.CHECKBOX, buildCheckBox);
|
|
10996
11026
|
uiBuilders$1.set(UserInterface.SWITCH, buildSwitch$1);
|
|
@@ -11006,9 +11036,10 @@ uiBuilders$1.set(UserInterface.SEARCH, buildSearch$1);
|
|
|
11006
11036
|
uiBuilders$1.set(UserInterface.SEARCHPLUS, buildSearchPlus$1);
|
|
11007
11037
|
uiBuilders$1.set(UserInterface.LONGTEXT, buildTextArea);
|
|
11008
11038
|
uiBuilders$1.set(UserInterface.HTML, buildRichText);
|
|
11009
|
-
|
|
11039
|
+
uiBuilders$1.set(UserInterface.IMAGE, buildImage);
|
|
11040
|
+
const fieldBuilder = (field, customUiBuilders = new Map()) => {
|
|
11010
11041
|
const i18n = getI18n();
|
|
11011
|
-
const builder = uiBuilders$1.get(field.userInterface) || buildTextInput$1;
|
|
11042
|
+
const builder = (customUiBuilders.get(field.userInterface) || uiBuilders$1.get(field.userInterface)) || buildTextInput$1;
|
|
11012
11043
|
const label = field.required ? `${field.label}${i18n("app.requiredInfo")}` : field.label;
|
|
11013
11044
|
const builtElement = builder(Object.assign(Object.assign({}, field), { label }));
|
|
11014
11045
|
//@ts-ignore
|
|
@@ -11063,6 +11094,7 @@ const EzFormView$1 = class extends HTMLElement$1 {
|
|
|
11063
11094
|
this.fields = undefined;
|
|
11064
11095
|
this.selectedRecord = undefined;
|
|
11065
11096
|
this.singleColumn = false;
|
|
11097
|
+
this.customUiBuilders = new Map();
|
|
11066
11098
|
}
|
|
11067
11099
|
async showUp() {
|
|
11068
11100
|
if (this.singleColumn)
|
|
@@ -11129,9 +11161,9 @@ const EzFormView$1 = class extends HTMLElement$1 {
|
|
|
11129
11161
|
if (this._customEditors.has(item.name)) {
|
|
11130
11162
|
const value = (_a = this._formElements.map(el => ({ name: el.dataset.fieldName, value: el['value'] })).find(field => field.name === item.name)) === null || _a === void 0 ? void 0 : _a.value;
|
|
11131
11163
|
const customEditor = this._customEditors.get(item.name).customEditor;
|
|
11132
|
-
return h("div", { class: classItem }, h("ez-custom-form-input", { "data-field-name": item.name, customEditor: customEditor, formViewField: item, builderFallback: fieldBuilder, value: value, selectedRecord: this.selectedRecord }));
|
|
11164
|
+
return h("div", { class: classItem }, h("ez-custom-form-input", { "data-field-name": item.name, customEditor: customEditor, formViewField: item, builderFallback: (field) => fieldBuilder(field, this.customUiBuilders), value: value, selectedRecord: this.selectedRecord }));
|
|
11133
11165
|
}
|
|
11134
|
-
return h("div", { class: classItem }, fieldBuilder(item));
|
|
11166
|
+
return h("div", { class: classItem }, fieldBuilder(item, this.customUiBuilders));
|
|
11135
11167
|
}
|
|
11136
11168
|
render() {
|
|
11137
11169
|
ElementIDUtils.addIDInfoIfNotExists(this._element, 'ezFormView');
|
|
@@ -61403,6 +61435,9 @@ class DataSource {
|
|
|
61403
61435
|
});
|
|
61404
61436
|
this._dataUnit.metadata.fields.forEach(f => {
|
|
61405
61437
|
var _a, _b, _c, _d, _e, _f;
|
|
61438
|
+
if (f.userInterface === UserInterface.IMAGE) {
|
|
61439
|
+
return;
|
|
61440
|
+
}
|
|
61406
61441
|
if (f.visible !== false && f.name !== this.RECORD_ARCHIVE) {
|
|
61407
61442
|
const props = new Map();
|
|
61408
61443
|
const properties = this._dataUnit.getField(f.name).properties;
|
|
@@ -79882,6 +79917,154 @@ const EzIcon$1 = class extends HTMLElement$1 {
|
|
|
79882
79917
|
static get style() { return ezIconCss; }
|
|
79883
79918
|
};
|
|
79884
79919
|
|
|
79920
|
+
const ezImageInputCss = ":host{display:block;--ez-image-input--container-height:200px;--ez-image-input--container-width:280px;--ez-image-input--background-color:var(--color--gray-80);--ez-image-input--border-color:var(--color--gray-200);--ez-image-input--border-color-hover:var(--color--ocean-green-600);--ez-image-input--border-color-dragging:var(--color--ocean-green-500);--ez-image-input--border-color-disabled:var(--color--gray-200);--ez-image-input--label-color:var(--color--petroleum-900);--ez-image-input--icon-color:var(--color--gray-400);--ez-image-input--border-radius:var(--border--radius-24);--ez-image-input--border-width:2px;--ez-image-input--remove-button-bg:var(--color--red-600);--ez-image-input--remove-button-bg-hover:var(--color--red-700);--ez-image-input--remove-button-color:var(--color--gray-70);--ez-image-input--remove-button-border:1px solid var(--color--red-700)}.image-input__container{display:flex;align-items:center;justify-content:center;position:relative;height:var(--ez-image-input--container-height);width:var(--ez-image-input--container-width);border:var(--ez-image-input--border-width) dashed var(--ez-image-input--border-color);border-radius:var(--ez-image-input--border-radius);background-color:var(--ez-image-input--background-color);cursor:pointer;transition:all 0.3s ease;overflow:hidden}.image-input__container:hover:not(.image-input__container--disabled){border-color:var(--ez-image-input--border-color-hover)}.image-input__container--dragging{border-color:var(--ez-image-input--border-color-dragging);background-color:var(--color--ocean-green-90)}.image-input__container--disabled{cursor:not-allowed;opacity:0.6;border-color:var(--ez-image-input--border-color-disabled)}.image-input__container--has-image{border-style:solid;padding:var(--space--0)}.image-input__file-input{display:none}.image-input__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space--16);padding:var(--space--24);text-align:center}.image-input__dropzone ez-icon{color:var(--ez-image-input--icon-color)}.image-input__label{font-family:var(--font--pattern);font-size:var(--font-size--default);font-weight:var(--font-weight--medium);color:var(--ez-image-input--label-color);line-height:var(--line-height--20)}.image-input__preview{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.image-input__image{height:100%;object-fit:cover;border-radius:calc(var(--ez-image-input--border-radius) - var(--ez-image-input--border-width))}ez-button{--ez-button--background-color:var(--ez-image-input--remove-button-bg);--ez-button--hover--background-color:var(--ez-image-input--remove-button-bg-hover);--ez-button--color:var(--ez-image-input--remove-button-color);--ez-button--border:var(--ez-image-input--remove-button-border);--ez-button--hover--border:var(--ez-image-input--remove-button-border)}.image-input__remove-button{position:absolute;top:var(--space--8);right:var(--space--8);display:flex;align-items:center;justify-content:center}.image-input__popup-content{display:flex;align-items:center;justify-content:center;padding:var(--space--16);height:100%}.image-input__popup-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:var(--border--radius-8)}.image-input__image{height:100%;object-fit:cover;border-radius:calc(var(--ez-image-input--border-radius) - var(--ez-image-input--border-width));cursor:pointer;transition:transform 0.2s ease}.image-input__image:hover{transform:scale(1.02)}ez-skeleton{--skeleton-width:var(--ez-image-input--container-width);--skeleton-height:var(--ez-image-input--container-height)}";
|
|
79921
|
+
|
|
79922
|
+
const EzImageInput$1 = class extends HTMLElement$1 {
|
|
79923
|
+
constructor() {
|
|
79924
|
+
super();
|
|
79925
|
+
this.__registerHost();
|
|
79926
|
+
this.__attachShadow();
|
|
79927
|
+
this.ezChange = createEvent(this, "ezChange", 7);
|
|
79928
|
+
this.ezError = createEvent(this, "ezError", 7);
|
|
79929
|
+
this.handleFileSelect = (event) => {
|
|
79930
|
+
const input = event.target;
|
|
79931
|
+
if (input.files && input.files[0]) {
|
|
79932
|
+
this.processFile(input.files[0]);
|
|
79933
|
+
}
|
|
79934
|
+
};
|
|
79935
|
+
this.handleDrop = (event) => {
|
|
79936
|
+
var _a;
|
|
79937
|
+
event.preventDefault();
|
|
79938
|
+
event.stopPropagation();
|
|
79939
|
+
this._isDragging = false;
|
|
79940
|
+
if (!this.enabled)
|
|
79941
|
+
return;
|
|
79942
|
+
const files = (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.files;
|
|
79943
|
+
if (files && files[0]) {
|
|
79944
|
+
this.processFile(files[0]);
|
|
79945
|
+
}
|
|
79946
|
+
};
|
|
79947
|
+
this.handleDragOver = (event) => {
|
|
79948
|
+
event.preventDefault();
|
|
79949
|
+
event.stopPropagation();
|
|
79950
|
+
if (this.enabled) {
|
|
79951
|
+
this._isDragging = true;
|
|
79952
|
+
}
|
|
79953
|
+
};
|
|
79954
|
+
this.handleDragLeave = (event) => {
|
|
79955
|
+
event.preventDefault();
|
|
79956
|
+
event.stopPropagation();
|
|
79957
|
+
this._isDragging = false;
|
|
79958
|
+
};
|
|
79959
|
+
this.handleRemoveImage = (event) => {
|
|
79960
|
+
event.stopPropagation();
|
|
79961
|
+
this.value = undefined;
|
|
79962
|
+
this._hasImage = false;
|
|
79963
|
+
if (this._inputElem) {
|
|
79964
|
+
this._inputElem.value = '';
|
|
79965
|
+
}
|
|
79966
|
+
this.ezChange.emit('');
|
|
79967
|
+
};
|
|
79968
|
+
this.handleClickDropZone = () => {
|
|
79969
|
+
var _a;
|
|
79970
|
+
if (this.enabled && !this._hasImage) {
|
|
79971
|
+
(_a = this._inputElem) === null || _a === void 0 ? void 0 : _a.click();
|
|
79972
|
+
}
|
|
79973
|
+
};
|
|
79974
|
+
this.handleImageClick = (event) => {
|
|
79975
|
+
event.stopPropagation();
|
|
79976
|
+
if (this._hasImage && this.value) {
|
|
79977
|
+
this._showImagePopup = true;
|
|
79978
|
+
}
|
|
79979
|
+
};
|
|
79980
|
+
this.handlePopupAction = (event) => {
|
|
79981
|
+
const action = event.detail;
|
|
79982
|
+
if (action === 'CANCEL' || action === 'OK') {
|
|
79983
|
+
this.handleClosePopup();
|
|
79984
|
+
}
|
|
79985
|
+
};
|
|
79986
|
+
this.handleClosePopup = () => {
|
|
79987
|
+
this._showImagePopup = false;
|
|
79988
|
+
};
|
|
79989
|
+
this.enabled = true;
|
|
79990
|
+
this.label = undefined;
|
|
79991
|
+
this.name = undefined;
|
|
79992
|
+
this.value = undefined;
|
|
79993
|
+
this.maxFileSize = 20 * 1024 * 1024;
|
|
79994
|
+
this.accept = 'image/*';
|
|
79995
|
+
this.loading = false;
|
|
79996
|
+
this._hasImage = false;
|
|
79997
|
+
this._isDragging = false;
|
|
79998
|
+
this._showImagePopup = false;
|
|
79999
|
+
}
|
|
80000
|
+
onValueChange(newValue, oldValue) {
|
|
80001
|
+
if (newValue !== oldValue) {
|
|
80002
|
+
this._hasImage = !!newValue;
|
|
80003
|
+
}
|
|
80004
|
+
if (!newValue && this._inputElem) {
|
|
80005
|
+
this._inputElem.value = '';
|
|
80006
|
+
}
|
|
80007
|
+
}
|
|
80008
|
+
addInfoId() {
|
|
80009
|
+
if (this._element) {
|
|
80010
|
+
ElementIDUtils.addIDInfo(this._element);
|
|
80011
|
+
}
|
|
80012
|
+
if (this._inputElem) {
|
|
80013
|
+
const dataInfo = { id: 'embedded' };
|
|
80014
|
+
ElementIDUtils.addIDInfo(this._inputElem, 'image-input', dataInfo);
|
|
80015
|
+
}
|
|
80016
|
+
}
|
|
80017
|
+
processFile(file) {
|
|
80018
|
+
// Validar tipo de arquivo
|
|
80019
|
+
if (!file.type.startsWith('image/')) {
|
|
80020
|
+
const errorMsg = this.i18n('ez-image-input.invalidFileType');
|
|
80021
|
+
this.ezError.emit(errorMsg);
|
|
80022
|
+
return;
|
|
80023
|
+
}
|
|
80024
|
+
// Validar tamanho do arquivo
|
|
80025
|
+
if (this.maxFileSize && file.size > this.maxFileSize) {
|
|
80026
|
+
const maxSizeMB = (this.maxFileSize / (1024 * 1024)).toFixed(2);
|
|
80027
|
+
const errorMsg = this.i18n('ez-image-input.fileTooLarge', { maxSize: `${maxSizeMB}MB` });
|
|
80028
|
+
this.ezError.emit(errorMsg);
|
|
80029
|
+
return;
|
|
80030
|
+
}
|
|
80031
|
+
// Converter para base64
|
|
80032
|
+
const reader = new FileReader();
|
|
80033
|
+
reader.onload = (e) => {
|
|
80034
|
+
var _a;
|
|
80035
|
+
const base64 = (_a = e.target) === null || _a === void 0 ? void 0 : _a.result;
|
|
80036
|
+
this.value = base64;
|
|
80037
|
+
this._hasImage = true;
|
|
80038
|
+
this.ezChange.emit(base64);
|
|
80039
|
+
};
|
|
80040
|
+
reader.readAsDataURL(file);
|
|
80041
|
+
}
|
|
80042
|
+
async componentWillLoad() {
|
|
80043
|
+
this.i18n = await initI18n();
|
|
80044
|
+
this._hasImage = !!this.value;
|
|
80045
|
+
}
|
|
80046
|
+
componentDidLoad() {
|
|
80047
|
+
this.addInfoId();
|
|
80048
|
+
}
|
|
80049
|
+
render() {
|
|
80050
|
+
if (this.loading) {
|
|
80051
|
+
return (h(Host, null, h("ez-skeleton", { width: "280px", height: '200px' })));
|
|
80052
|
+
}
|
|
80053
|
+
const dropZoneLabel = this.label || this.i18n('ez-image-input.defaultLabel');
|
|
80054
|
+
return (h(Host, null, h("div", { class: {
|
|
80055
|
+
'image-input__container': true,
|
|
80056
|
+
'image-input__container--disabled': !this.enabled,
|
|
80057
|
+
'image-input__container--dragging': this._isDragging,
|
|
80058
|
+
'image-input__container--has-image': this._hasImage
|
|
80059
|
+
}, "data-enabled": this.enabled.toString(), "data-has-image": this._hasImage.toString(), onClick: this.handleClickDropZone, onDrop: this.handleDrop, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, role: "button", "aria-label": dropZoneLabel, tabindex: this.enabled ? 0 : -1 }, h("input", { ref: (el) => (this._inputElem = el), type: "file", accept: this.accept, name: this.name, disabled: !this.enabled, onChange: this.handleFileSelect, class: "image-input__file-input", "aria-hidden": "true" }), this._hasImage && this.value ? (h("div", { class: "image-input__preview" }, h("img", { src: this.value, alt: this.i18n('ez-image-input.imageAlt'), class: "image-input__image", onClick: this.handleImageClick }), this.enabled && (h("ez-button", { class: "image-input__remove-button", variant: "primary", type: "button", mode: "icon", size: "small", iconName: "trash-alt", onClick: this.handleRemoveImage, "aria-label": this.i18n('ez-image-input.removeImage'), title: this.i18n('ez-image-input.removeImage') })))) : (h("div", { class: "image-input__dropzone" }, h("ez-icon", { iconName: "image", size: "x-large" }), h("span", { class: "image-input__label" }, dropZoneLabel)))), h("ez-popup", { opened: this._showImagePopup, ezTitle: this.i18n('ez-image-input.imagePreview'), size: "large", heightMode: "auto", onEzPopupAction: this.handlePopupAction, onEzClosePopup: this.handleClosePopup }, h("div", { class: "image-input__popup-content" }, h("img", { src: this.value, alt: this.i18n('ez-image-input.imageAlt'), class: "image-input__popup-image" })))));
|
|
80060
|
+
}
|
|
80061
|
+
get _element() { return this; }
|
|
80062
|
+
static get watchers() { return {
|
|
80063
|
+
"value": ["onValueChange"]
|
|
80064
|
+
}; }
|
|
80065
|
+
static get style() { return ezImageInputCss; }
|
|
80066
|
+
};
|
|
80067
|
+
|
|
79885
80068
|
const RICH_TOOLBAR_COMMANDS = {
|
|
79886
80069
|
PREVIEW: 'preview',
|
|
79887
80070
|
UNDO: 'undo',
|
|
@@ -93944,12 +94127,13 @@ const EzDropdown = /*@__PURE__*/proxyCustomElement(EzDropdown$1, [1,"ez-dropdown
|
|
|
93944
94127
|
const EzEmptyCard = /*@__PURE__*/proxyCustomElement(EzEmptyCard$1, [1,"ez-empty-card",{"color":[513],"height":[514],"width":[514]}]);
|
|
93945
94128
|
const EzFileItem = /*@__PURE__*/proxyCustomElement(EzFileItem$1, [1,"ez-file-item",{"canRemove":[4,"can-remove"],"fileName":[1,"file-name"],"iconName":[1,"icon-name"],"fileSize":[2,"file-size"],"progress":[2]}]);
|
|
93946
94129
|
const EzFilterInput = /*@__PURE__*/proxyCustomElement(EzFilterInput$1, [1,"ez-filter-input",{"label":[1],"value":[1537],"enabled":[4],"errorMessage":[1537,"error-message"],"restrict":[1],"mode":[513],"asyncSearch":[516,"async-search"],"canShowError":[516,"can-show-error"],"autoFocus":[4,"auto-focus"]}]);
|
|
93947
|
-
const EzForm = /*@__PURE__*/proxyCustomElement(EzForm$1, [2,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16],"fieldToFocus":[1,"field-to-focus"],"onlyStaticFields":[4,"only-static-fields"],"useSearchField":[4,"use-search-field"],"elementFocusSearchField":[16],"_fieldsProps":[32],"_singleColumn":[32]}]);
|
|
93948
|
-
const EzFormView = /*@__PURE__*/proxyCustomElement(EzFormView$1, [2,"ez-form-view",{"fields":[16],"selectedRecord":[16],"singleColumn":[4,"single-column"],"_customEditors":[32]}]);
|
|
94130
|
+
const EzForm = /*@__PURE__*/proxyCustomElement(EzForm$1, [2,"ez-form",{"dataUnit":[1040],"config":[16],"recordsValidator":[16],"fieldToFocus":[1,"field-to-focus"],"onlyStaticFields":[4,"only-static-fields"],"useSearchField":[4,"use-search-field"],"elementFocusSearchField":[16],"customUiBuilders":[16],"_fieldsProps":[32],"_singleColumn":[32]}]);
|
|
94131
|
+
const EzFormView = /*@__PURE__*/proxyCustomElement(EzFormView$1, [2,"ez-form-view",{"fields":[16],"selectedRecord":[16],"singleColumn":[4,"single-column"],"customUiBuilders":[16],"_customEditors":[32]}]);
|
|
93949
94132
|
const EzGrid = /*@__PURE__*/proxyCustomElement(EzGrid$1, [6,"ez-grid",{"enableLockManagerLoadingComp":[1028,"enable-lock-manager-loading-comp"],"enableLockManagerTaskbarClick":[4,"enable-lock-manager-taskbar-click"],"multipleSelection":[4,"multiple-selection"],"config":[1040],"selectionToastConfig":[16],"serverUrl":[1,"server-url"],"dataUnit":[16],"statusResolver":[16],"columnfilterDataSource":[16],"useEnterLikeTab":[4,"use-enter-like-tab"],"recordsValidator":[16],"canEdit":[1028,"can-edit"],"autoFocus":[4,"auto-focus"],"paginationCounterMode":[1,"pagination-counter-mode"],"enableGridInsert":[4,"enable-grid-insert"],"enableContinuousInsert":[4,"enable-continuous-insert"],"suppressCheckboxColumn":[1028,"suppress-checkbox-column"],"suppressFilterColumn":[1028,"suppress-filter-column"],"outlineMode":[4,"outline-mode"],"enableRowTableStriped":[4,"enable-row-table-striped"],"compact":[1028],"useSearchColumn":[4,"use-search-column"],"suppressHorizontalScroll":[4,"suppress-horizontal-scroll"],"mode":[513],"_paginationInfo":[32],"_paginationChangedByKeyboard":[32],"_showSelectionCounter":[32],"_isAllSelection":[32],"_currentPageSelected":[32],"_selectionCount":[32],"_hasLeftButtons":[32],"_customFormatters":[32]},[[0,"applyFilterColumnOptions","handleApplyFilterColumn"],[0,"ezSelectionChange","onSelectionChange"],[2,"click","handleClick"]]]);
|
|
93950
94133
|
const EzGridView = /*@__PURE__*/proxyCustomElement(EzGridView$1, [6,"ez-grid-view",{"metadata":[16],"records":[16],"columnsConfig":[1040],"pageSize":[2,"page-size"],"recordDateFormat":[1,"record-date-format"],"multipleSelection":[4,"multiple-selection"],"autoFocus":[4,"auto-focus"],"paginationCounterMode":[1,"pagination-counter-mode"],"suppressCheckboxColumn":[1028,"suppress-checkbox-column"],"suppressFilterColumn":[4,"suppress-filter-column"],"outlineMode":[4,"outline-mode"],"enableRowTableStriped":[4,"enable-row-table-striped"],"compact":[1028],"useSearchColumn":[4,"use-search-column"],"suppressHorizontalScroll":[4,"suppress-horizontal-scroll"],"inMemoryLoader":[32]}]);
|
|
93951
94134
|
const EzGuideNavigator = /*@__PURE__*/proxyCustomElement(EzGuideNavigator$1, [1,"ez-guide-navigator",{"open":[1540],"selectedId":[1537,"selected-id"],"items":[16],"tooltipResolver":[16],"filterText":[32]}]);
|
|
93952
94135
|
const EzIcon = /*@__PURE__*/proxyCustomElement(EzIcon$1, [1,"ez-icon",{"size":[513],"fontSize":[520,"font-size"],"href":[513],"iconName":[513,"icon-name"]}]);
|
|
94136
|
+
const EzImageInput = /*@__PURE__*/proxyCustomElement(EzImageInput$1, [1,"ez-image-input",{"enabled":[4],"label":[1],"name":[1],"value":[1025],"maxFileSize":[2,"max-file-size"],"accept":[1],"loading":[4],"_hasImage":[32],"_isDragging":[32],"_showImagePopup":[32]}]);
|
|
93953
94137
|
const EzLinkBuilder = /*@__PURE__*/proxyCustomElement(EzLinkBuilder$1, [2,"ez-link-builder",{"textToShow":[32],"link":[32],"openInNewGuide":[32]}]);
|
|
93954
94138
|
const EzList = /*@__PURE__*/proxyCustomElement(EzList$1, [2,"ez-list",{"dataSource":[1040],"listMode":[1,"list-mode"],"useGroups":[1540,"use-groups"],"ezDraggable":[1028,"ez-draggable"],"ezSelectable":[1028,"ez-selectable"],"itemSlotBuilder":[1040],"itemLeftSlotBuilder":[1040],"hoverFeedback":[1028,"hover-feedback"],"enableMultipleSelection":[4,"enable-multiple-selection"],"enabled":[4],"_listItems":[32],"_listGroupItems":[32]}]);
|
|
93955
94139
|
const EzListItem = /*@__PURE__*/proxyCustomElement(EzListItem$1, [2,"ez-list-item",{"titleText":[513,"title-text"],"text":[513],"iconName":[513,"icon-name"]}]);
|
|
@@ -94039,6 +94223,7 @@ const defineCustomElements = (opts) => {
|
|
|
94039
94223
|
EzGridView,
|
|
94040
94224
|
EzGuideNavigator,
|
|
94041
94225
|
EzIcon,
|
|
94226
|
+
EzImageInput,
|
|
94042
94227
|
EzLinkBuilder,
|
|
94043
94228
|
EzList,
|
|
94044
94229
|
EzListItem,
|
|
@@ -94099,4 +94284,4 @@ const defineCustomElements = (opts) => {
|
|
|
94099
94284
|
}
|
|
94100
94285
|
};
|
|
94101
94286
|
|
|
94102
|
-
export { EzActionsButton, EzAlert, EzAlertList, EzApplication, EzAvatar, EzBadge, EzBreadcrumb, EzButton, EzCalendar, EzCardItem, EzChart, EzCheck, EzChip, EzClassicComboBox, EzClassicInput, EzClassicTextArea, EzCollapsibleBox, EzComboBox, EzComboBoxList, EzCustomFormInput, EzDateInput, EzDateTimeInput, EzDialog, EzDoubleList, EzDropdown, EzEmptyCard, EzFileItem, EzFilterInput, EzForm, EzFormView, EzGrid, EzGridView, EzGuideNavigator, EzIcon, EzLinkBuilder, EzList, EzListItem, EzLoadingBar, EzModal, EzModalContainer, EzMultiSelectionList, EzNumberInput, EzPagination, EzPopover, EzPopoverCore, EzPopoverPlus, EzPopup, EzProgressBar, EzRadioButton, EzRichText, EzRichToolbar, EzRichToolbarArrows, EzRichToolbarConfigs, EzRichToolbarItem, EzRichToolbarLetters, EzScroller, EzSearch, EzSearchPlus, EzSearchResultList, EzSidebarButton, EzSidebarNavigator, EzSimpleImageUploader, EzSkeleton, EzSortableList, EzSpinner, EzSplitButton, EzSplitItem, EzSplitPanel, EzTabselector, EzTag, EzTagInput, EzTextArea, EzTextEdit, EzTextInput, EzTile, EzTileMedium, EzTimeInput, EzToast, EzTooltip, EzTree, EzUnderface, EzUpload, EzViewStack, FilterColumn, MultiSelectionBoxMessage, SearchList, defineCustomElements };
|
|
94287
|
+
export { EzActionsButton, EzAlert, EzAlertList, EzApplication, EzAvatar, EzBadge, EzBreadcrumb, EzButton, EzCalendar, EzCardItem, EzChart, EzCheck, EzChip, EzClassicComboBox, EzClassicInput, EzClassicTextArea, EzCollapsibleBox, EzComboBox, EzComboBoxList, EzCustomFormInput, EzDateInput, EzDateTimeInput, EzDialog, EzDoubleList, EzDropdown, EzEmptyCard, EzFileItem, EzFilterInput, EzForm, EzFormView, EzGrid, EzGridView, EzGuideNavigator, EzIcon, EzImageInput, EzLinkBuilder, EzList, EzListItem, EzLoadingBar, EzModal, EzModalContainer, EzMultiSelectionList, EzNumberInput, EzPagination, EzPopover, EzPopoverCore, EzPopoverPlus, EzPopup, EzProgressBar, EzRadioButton, EzRichText, EzRichToolbar, EzRichToolbarArrows, EzRichToolbarConfigs, EzRichToolbarItem, EzRichToolbarLetters, EzScroller, EzSearch, EzSearchPlus, EzSearchResultList, EzSidebarButton, EzSidebarNavigator, EzSimpleImageUploader, EzSkeleton, EzSortableList, EzSpinner, EzSplitButton, EzSplitItem, EzSplitPanel, EzTabselector, EzTag, EzTagInput, EzTextArea, EzTextEdit, EzTextInput, EzTile, EzTileMedium, EzTimeInput, EzToast, EzTooltip, EzTree, EzUnderface, EzUpload, EzViewStack, FilterColumn, MultiSelectionBoxMessage, SearchList, defineCustomElements };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { D as DialogType } from './DialogType-54a62731.js';
|
|
2
|
-
import { i as initI18n } from './index-
|
|
2
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
3
3
|
|
|
4
4
|
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
5
5
|
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
|
|
2
2
|
import { FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
-
import './ApplicationUtils-
|
|
3
|
+
import './ApplicationUtils-985c24ae.js';
|
|
4
4
|
import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
|
|
5
5
|
import './DialogType-54a62731.js';
|
|
6
6
|
import './CheckMode-bdb2ec19.js';
|
|
7
|
-
import './index-
|
|
7
|
+
import './index-a3b24b5d.js';
|
|
8
8
|
import './FormLayout-071d324c.js';
|
|
9
9
|
|
|
10
10
|
const ezActionsButtonCss = ":host{--ez-actions-button__actions-list--border-radius:var(--border--radius-medium, 12px);--ez-actions-button__actions-list--box-shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-actions-button__actions-list--background-color:var(--background--xlight, #fff);--ez-actions-button__actions-list--padding:var(--space--small, 6px);--ez-actions-button__actions-list--top-margin:var(--space-small, 6px);--ez-actions-button__actions-list--z-index:var(--ez-elevation--8, 8);--ez-actions-button__actions-max-height:415px;--ez-actions-button__btn-action--min-width:'auto';--ez-actions-button__btn-action--background-color:var(--background--xlight, #fff);display:flex;flex-direction:column;height:fit-content;user-select:none}.ez-actions-button__actions-list{display:flex;flex-direction:column;position:fixed;width:fit-content;height:fit-content;overflow-y:auto;scrollbar-width:thin;z-index:var(--ez-actions-button__actions-list--z-index);padding:var(--ez-actions-button__actions-list--padding);margin-top:var(--ez-actions-button__actions-list--top-margin);background-color:var(--ez-actions-button__actions-list--background-color);border-radius:var(--ez-actions-button__actions-list--border-radius);box-shadow:var(--ez-actions-button__actions-list--box-shadow)}.ez-actions-button__actions-list--max-height{max-height:var(--ez-actions-button__actions-max-height)}.ez-actions-button__actions-list--lowered{margin-top:calc(var(--ez-actions-button__actions-list--top-margin) + 6px)}.ez-actions-button__btn-action{--ez-button--justify-content:flex-start;--ez-button--width:100%;--ez-button--min-width:var(--ez-actions-button__btn-action--min-width);--ez-button--background-color:var(--ez-actions-button__btn-action--background-color);--ez-button--font-weight:var(--text-weight--medium, 400);--ez-button--padding-left:var(--space--medium, 12px);--ez-button--padding-right:var(--space--medium, 12px);--ez-button--border:none}.ez-actions-button__btn-action--spaced{--ez-button--padding-left:calc(var(--space--medium, 12px) + 24px)}.ez-actions-button__icon-right{margin-left:var(--space--small, 6px)}.ez-actions-button__icon-check,.ez-actions-button__icon-item{position:absolute;left:var(--space--medium, 12px)}.ez-actions-button__icon-check{color:var(--ez-button--hover-color)}.ez-actions-button__arrow{position:absolute;border-left:10px solid transparent;border-right:10px solid transparent;width:0;height:0;z-index:calc(var(--ez-actions-button__actions-list--z-index) + 1);border-bottom:15px solid var(--ez-actions-button__btn-action--background-color)}.ez-actions-button__arrow--upped{margin-top:calc((var(--ez-actions-button__actions-list--top-margin) + 2px) * -1)}.ez-actions-button__arrow--small{margin-left:6px}.ez-actions-button__arrow--medium{margin-left:11px}.ez-actions-button__arrow--large{margin-left:13px}.ez-actions-button__arrow:only-child{display:none}.ez-actions-button__btn-transparent{--ez-button--background-color:transparent;--ez-button--hover--background-color:transparent;--ez-button--active--background-color:transparent;--ez-button--focus--border:none;--ez-button--border:none}.ez-actions-button__btn-label{--ez-button--padding-left:var(--space--medium, 12px);--ez-button--padding-right:var(--space--medium, 12px)}.ez-actions-button__list-container{position:relative}.ez-actions-button--bottom-padding{padding-bottom:var(--space--small, 6px)}";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, g as getElement } from './index-baa5e267.js';
|
|
2
2
|
import { FloatingManager, ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
-
import { i as initI18n } from './index-
|
|
3
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
4
4
|
|
|
5
5
|
const ezAlertListCss = ":host {\n display: flex;\n\n /* Alert List */\n \n /*@doc Define a largura da lista minimizado */\n --ez-alert-list__container--width: 680px;\n /*@doc Define a altura da lista minimizado */\n --ez-alert-list__container--height: 220px;\n \n /*@doc Define a largura da lista maximizada */\n --ez-alert-list__container--width--expanded: 920px;\n /*@doc Define a altura da lista maximizada */\n --ez-alert-list__container--height--expanded: 540px;\n\n /* Title */\n /*@doc Define a fonte do título do componente */\n --ez-alert-list__title--font-family: var(--font-pattern, \"Roboto\");\n /*@doc Define o tamanho da fonte do título do popup.*/\n --ez-alert-list__title--font-size: var(--title--large, 20px);\n /*@doc Define a cor da fonte do título do popup.*/\n --ez-alert-list__title--color: var(--title--primary, #2b3a54);\n /*@doc Define o peso da fonte do título do popup.*/\n --ez-alert-list__title--font-weight: var(--text-weight--extra-large, 700);\n\n /* @doc Define a borda inferior do item da lista. */\n --ez-list__item--border-bottom: var(--border--small, 1px solid);\n\n /* @doc Define a cor da borda inferior do item da lista. */\n --ez-list__item--border-bottom-color: var(--color--strokes, #DCE0E8);\n\n /* @doc Define o tipo da quebra de linha do item da lista. */\n --ez-list__item--white-space: break-space;\n}\n\n.alert-list__content {\n display: flex;\n flex-direction: column;\n \n gap: var(--space--xs);\n margin: var(--space--large, 24px);\n width: 100%;\n}\n\n.alert-list__container {\n z-index: var(--ez-elevation--8, 8);\n display: flex;\n height: var(--ez-alert-list__container--height);\n width: var(--ez-alert-list__container--width);\n border-radius: var(--border--radius-medium);\n background-color: var(--background--xlight);\n box-shadow: var(--shadow--medium);\n\n &.expanded {\n height: var(--ez-alert-list__container--height--expanded);\n width: var(--ez-alert-list__container--width--expanded);\n }\n\n @media (max-height: 640px) {\n max-height: calc(100vh - var(--space--3xl));\n } \n}\n\n.alert-list__header {\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.alert-list__title {\n font-family: var(--ez-alert-list__title--font-family);\n font-size: var(--ez-alert-list__title--font-size);\n font-weight: var(--ez-alert-list__title--font-weight);\n color: var(--ez-alert-list__title--color);\n}\n\n.alert-list__header__buttons {\n display: flex;\n gap: var(--space--xs);\n}\n\n.alert-list__expandable-content {\n overflow-y: auto;\n scrollbar-width: thin;\n}\n\n";
|
|
6
6
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as registerInstance, h } from './index-baa5e267.js';
|
|
2
|
-
import { i as initI18n } from './index-
|
|
2
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
3
3
|
import '@sankhyalabs/core';
|
|
4
4
|
|
|
5
5
|
const ezAvatarCss = ":host{--ez-avatar--background-color:var(--color--ocean-green-600, #008561);--ez-avatar--color:var(--color--gray-70, #fff);--ez-avatar--border-radius-circle:50%;--ez-avatar--border-radius-square:25%;--ez-avatar--background-color-hover:var(--color--ocean-green-700, #00684C)}button,figure{display:flex;align-items:center;justify-content:center;border:var(--ez-avatar--border);background-color:var(--ez-avatar--background-color);color:var(--ez-avatar--color);font-weight:var(--font-weight--medium, 500);font-family:var(--font-pattern, 'Roboto');transition:background-color 0.2s linear, color 0.2s linear;margin:0;padding:0}button:hover{cursor:pointer;background-color:var(--ez-avatar--background-color-hover)}.avatar--320{--avatar-size:320px;width:20rem;height:20rem}.avatar--300{--avatar-size:300px;width:18.75rem;height:18.75rem}.avatar--280{--avatar-size:280px;width:17.5rem;height:17.5rem}.avatar--260{--avatar-size:260px;width:16.25rem;height:16.25rem}.avatar--240{--avatar-size:240px;width:15rem;height:15rem}.avatar--220{--avatar-size:220px;width:13.75rem;height:13.75rem}.avatar--200{--avatar-size:200px;width:12.5rem;height:12.5rem}.avatar--180{--avatar-size:180px;width:11.25rem;height:11.25rem}.avatar--160{--avatar-size:160px;width:10rem;height:10rem}.avatar--140{--avatar-size:140px;width:8.75rem;height:8.75rem}.avatar--120{--avatar-size:120px;width:7.5rem;height:7.5rem}.avatar--100{--avatar-size:100px;width:6.25rem;height:6.25rem}.avatar--80{--avatar-size:80px;width:5rem;height:5rem}.avatar--60{--avatar-size:60px;width:3.75rem;height:3.75rem}.avatar-initial{font-size:calc(0.375 * var(--avatar-size));}.avatar--circle{border-radius:var(--ez-avatar--border-radius-circle)}.avatar--square{border-radius:var(--ez-avatar--border-radius-square)}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:inherit}.avatar--has-image{background-color:transparent}ez-icon{--ez-icon--color:var(--color--gray-70, #fff);font-weight:var(--font-weight--medium, 500)}";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, f as forceUpdate, h, g as getElement } from './index-baa5e267.js';
|
|
2
2
|
import { FloatingManager } from '@sankhyalabs/core';
|
|
3
|
-
import { i as initI18n } from './index-
|
|
3
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
4
4
|
|
|
5
5
|
const ezCalendarCss = ":host{--ez-calendar--font-family:var(--font-pattern, Arial);--ez-calendar--color:var(--title--primary, #626e82);--ez-calendar--text-shadow:var(--text-shadow, 0 0 0 #353535, 0 0 1px transparent);--ez-calendar__body--background-color:var(--background--xlight, #FFF);--ez-calendar__time--background-color:var(--background--xlight, #FAFAFA);--ez-calendar__body--padding:var(--space--medium, 12px) var(--space--small, 6px);--ez-calendar__body--border-radius:var(--border--radius-medium, 12px);--ez-calendar__body--shadow:var(--shadow, 0px 0px 16px 0px #000);--ez-container--z-index:var(--more-visible, 2);--ez-calendar__header-line--stroke:1px;--ez-calendar__header-line--color:var(--color--strokes, #C0C0C0);--ez-calendar__nav-btn--fill:var(--text--primary, #008561);--ez-calendar__nav-btn--hover--fill:var(--color--primary, #350404);--ez-calendar__nav-btn--width:10px;--ez-calendar__nav-btn--height:16px;--ez-calendar__nav-btn--previous-image:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" height=\"16px\" width=\"10px\"><path d=\"M 9.7808475,13.860393 3.9204526,8.0000004 9.7808475,2.0624965 7.9301965,0.28895552 0.21915255,8.0000004 7.9301965,15.711044 Z\"/></svg>');--ez-calendar__nav-btn--next-image:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" height=\"16px\" width=\"10px\"><path d=\"M 0.21915251,13.860393 6.0795475,8.0000007 0.21915251,2.0624968 2.0698036,0.28895588 9.7808475,8.0000007 2.0698036,15.711044 Z\"/></svg>');--ez-calendar__cell--margin:0px 1.5px;--ez-calendar__cell--width:var(--space--large, 24px);--ez-calendar__cell--padding:1.5px 0px;--ez-calendar__cell--border-radius:var(--border--radius-small, 6px);--ez-calendar__cell--over--background-color:var(--color--primary, #E2F4EF);--ez-calendar__cell--over--color:var(--color--primary-300, #008561);--ez-calendar__cell--outset--color:var(--color--disable-primary, #E5EAF0);--ez-calendar__cell--selected--background-color:var(--color--primary, #008561);--ez-calendar__cell--selected--color:var(--color--inverted, #FFF);--ez-calendar__btn-today--color:var(--color--primary);--ez-calendar__btn-today--hover--background-color:var(--color--primary-300, #E2F4EF);--ez-calendar__btn-today--border-radius:var(--border--radius-small, 6px);position:relative;display:flex;user-select:none}.calendar__container{display:flex;z-index:var(--more-visible, 2)}.calendar{display:flex;flex-direction:column;z-index:var(--more-visible, 2);background-color:var(--ez-calendar__body--background-color);padding:var(--ez-calendar__body--padding);border-radius:var(--ez-calendar__body--border-radius);box-shadow:var(--ez-calendar__body--shadow)}.calendar__header{display:flex;justify-content:space-between;padding-bottom:var(--space--small, 6px);margin:0px var(--space--, 12px) var(--space--small, 6px) var(--space--, 12px);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow);border-bottom:solid var(--ez-calendar__header-line--stroke) var(--ez-calendar__header-line--color)}.calendar__btn-next,.calendar__btn-previous{outline:none;border:none;background-color:unset;cursor:pointer;padding:0px}.calendar__btn-next::after,.calendar__btn-previous::after{content:'';display:flex;background-color:var(--ez-calendar__nav-btn--fill);width:var(--ez-calendar__nav-btn--width);height:var(--ez-calendar__nav-btn--height)}.calendar__btn-previous::after{-webkit-mask-image:var(--ez-calendar__nav-btn--previous-image);mask-image:var(--ez-calendar__nav-btn--previous-image)}.calendar__btn-next::after{-webkit-mask-image:var(--ez-calendar__nav-btn--next-image);mask-image:var(--ez-calendar__nav-btn--next-image)}.calendar__btn-next:hover::after,.calendar__btn-previous:hover::after{background-color:var(--ez-calendar__nav-btn--hover--fill)}.calendar__lbl-month{font-weight:var(--text-weight--extra-large, 700);font-size:var(--title--small, 14px);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow)}.calendar__line{display:flex;padding:0px;margin:0px}.calendar__cell{display:flex;justify-content:center;align-content:center;cursor:pointer;font-size:var(--text--extra-small, 10px);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow);padding:var(--ez-calendar__cell--padding);margin:var(--ez-calendar__cell--margin);min-width:var(--ez-calendar__cell--width);border-radius:var(--ez-calendar__cell--border-radius)}.calendar__cell:hover{background-color:var(--ez-calendar__cell--over--background-color);color:var(--ez-calendar__cell--over--color)}.calendar__cell--secondary{color:var(--ez-calendar__cell--outset--color)}.calendar__cell--unselectable:hover{background-color:unset;border-radius:unset;cursor:unset;color:var(--ez-calendar--color)}.calendar__cell--unselectable{font-weight:var(--text-weight--large, 600);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow)}.calendar__cell--selected,.calendar__cell--selected:hover{background-color:var(--ez-calendar__cell--selected--background-color);color:var(--ez-calendar__cell--selected--color)}.calendar__footer{display:flex;flex-direction:column}.calendar__btn-today{border:none;background-color:unset;cursor:pointer;padding:0px;font-weight:var(--text-weight--large, 600);font-size:var(--title--extra-small, 12px);font-family:var(--ez-calendar--font-family);text-shadow:var(--ez-calendar--text-shadow);color:var(--ez-calendar__btn-today--color);border-radius:var(--ez-calendar__btn-today--border-radius)}.calendar__btn-today:hover{background-color:var(--ez-calendar__btn-today--hover--background-color)}section{display:flex}.calendar-time{margin-left:-10px;display:flex;flex-direction:column;padding:12px 0px 0px 10px;background-color:var(--ez-calendar__time--background-color);border-top-right-radius:var(--ez-calendar__body--border-radius);border-bottom-right-radius:var(--ez-calendar__body--border-radius);box-shadow:var(--ez-calendar__body--shadow)}.calendar__column{height:136px;padding:0px;margin:0px;overflow:auto;scrollbar-width:none}.calendar__column::-webkit-scrollbar{width:0px;max-width:0px;min-width:0px}.calendar-time__header{display:flex;justify-content:space-between;padding-left:var(--space--small, 6px);padding-right:var(--space--small, 6px);padding-bottom:var(--space--small, 6px);margin:0px var(--space--, 12px) var(--space--small, 6px) var(--space--, 12px);font-weight:var(--text-weight--extra-large, 700);font-size:var(--title--small, 14px);text-shadow:var(--ez-calendar--text-shadow);border-bottom:solid var(--ez-calendar__header-line--stroke) var(--ez-calendar__header-line--color);font-family:var(--ez-calendar--font-family);color:var(--ez-calendar--color);text-shadow:var(--ez-calendar--text-shadow)}.separatorTime{color:#A2ABB9;padding:0px 1px;line-height:16px;font-size:17px;font-weight:normal}.endHidden{-webkit-mask-image:linear-gradient(180deg, #000 calc(100% - 48px), transparent 100%)}.calendar__column .calendar__cell{margin:0px;padding:1.5px 1.5px}";
|
|
6
6
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, g as getElement } from './index-baa5e267.js';
|
|
2
2
|
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
-
import { A as ApplicationUtils } from './ApplicationUtils-
|
|
3
|
+
import { A as ApplicationUtils } from './ApplicationUtils-985c24ae.js';
|
|
4
4
|
import './DialogType-54a62731.js';
|
|
5
5
|
import './CheckMode-bdb2ec19.js';
|
|
6
|
-
import { i as initI18n } from './index-
|
|
6
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
7
7
|
import './FormLayout-071d324c.js';
|
|
8
8
|
|
|
9
9
|
const ezCollapsibleBoxCss = ":host{--ez-collapsible-box--font-size:var(--title--medium, 14px);--ez-collapsible-box--font-family:var(--font-pattern, Arial);--ez-collapsible-box--font-weight:var(--text-weight--large, 600);--ez-collapsible-box--color:var(--title--primary);--ez-collapsible-box--subtitle--font-size:var(--text--medium, 14px);--ez-collapsible-box--subtitle--font-family:var(--font-pattern, 'Roboto');--ez-collapsible-box--subtitle--font-weight:var(--text-weight--medium, 400);--ez-collapsible-box--subtitle--color:var(--text--primary);--ez-collapsible-box--subtitle--margin-bottom:var(--space--medium, 12px);--ez-collapsible-box--focus--color:var(--color--primary-600);--ez-collapsible-box__icon--color:var(--ez-collapsible-box--color);--ez-collapsible-box__header--padding-top:0px;--ez-collapsible-box__header--padding-bottom:0px;--ez-collapsible-box__header--padding-right:0px;--ez-collapsible-box__header--padding-left:0px;display:flex;flex-wrap:wrap;width:100%}ez-icon{--ez-icon--color:inherit}.collapsible-box{display:flex;flex-direction:column;width:100%;overflow:hidden}.collapsable-box--bordered{border:var(--border--small);border-color:var(--color--strokes);border-radius:var(--border--radius-medium);padding:var(--space--xs)}.collapsible-box__header{display:flex;box-sizing:border-box;padding-top:var(--ez-collapsible-box__header--padding-top);padding-bottom:var(--ez-collapsible-box__header--padding-bottom);padding-right:var(--ez-collapsible-box__header--padding-right);padding-left:var(--ez-collapsible-box__header--padding-left)}.collapsible-box__title{position:relative;width:100%;display:flex;box-sizing:border-box;align-items:center;outline:none;border:none;background-color:unset;cursor:pointer;padding:0px;text-align:left;color:var(--ez-collapsible-box--color);--ez-icon--color:var(--ez-collapsible-box__icon--color);margin-bottom:var(--space--medium, 12px)}.collapsible-box__title:focus{color:var(--ez-collapsible-box--focus--color);--ez-icon--color:var(--ez-collapsible-box--focus--color)}.collapsible-box__label{display:flex;white-space:nowrap;overflow:hidden;cursor:pointer;text-overflow:ellipsis;box-sizing:border-box;margin-left:6px;gap:6px;font-family:var(--ez-collapsible-box--font-family);font-size:var(--ez-collapsible-box--font-size);font-weight:var(--ez-collapsible-box--font-weight)}.subtitle-box__label{display:flex;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;font-family:var(--ez-collapsible-box--subtitle--font-family);font-size:var(--ez-collapsible-box--subtitle--font-size);font-weight:var(--ez-collapsible-box--subtitle--font-weight);color:var(--ez-collapsible-box--subtitle--color);margin-bottom:var(--ez-collapsible-box--subtitle--margin-bottom)}.subtitle-box__content{width:100%}.collapsible-box__label ez-icon{visibility:hidden;transition:2s all ease-in-out}.collapsible-box__label:hover ez-icon{visibility:visible}.collapsible-box__text-edit{margin-left:6px}.collapsible-box__icon{transform:rotate(90deg) translate(0px, 14%);transition:transform var(--transition)}.collapsible-box__icon--collapsed{transform:rotate(0deg) translate(-14%, 0px)}.collapsible-box__title--icon-right{flex-direction:row-reverse}.collapsible-box__title--icon-right .collapsible-box__icon{transform:rotate(90deg) translate(0px, -14%)}.collapsible-box__title--icon-right .collapsible-box__icon--collapsed{transform:rotate(0deg) translate(14%, 0px)}.collapsible-box__title--icon-right .collapsible-box__label{margin-left:0px;margin-right:6px}.collapsible-box__title--left{margin-right:auto}.collapsible-box__title--right{margin-left:auto}.collapsible-box__title--center{margin-left:auto;margin-right:auto}.collapsible-box__title--stretch{justify-content:space-between;width:100%}.collapsible-box__title--no-margin{margin-bottom:0}.collapsible-box__content{display:flex;flex-wrap:wrap;width:100%;height:0px;max-height:0px;opacity:0;overflow:hidden;transition:all var(--transition, 0.5s)}.collapsible-box__content--show{height:100%;max-height:none;opacity:1;overflow:visible;transition:all var(--transition, 0.5s)}.font--x-small{font-size:10px}.font--small{font-size:12px}.font--medium{font-size:14px}.font--large{font-size:16px}.font--x-large{font-size:20px}";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { r as registerInstance, h, H as Host, c as createEvent, g as getElement } from './index-baa5e267.js';
|
|
2
2
|
import { ElementIDUtils, ObjectUtils, HTMLBuilder, StringUtils, KeyboardManager } from '@sankhyalabs/core';
|
|
3
|
-
import { i as initI18n } from './index-
|
|
3
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
4
4
|
import { C as CustomEditorSource } from './FormLayout-071d324c.js';
|
|
5
5
|
import { R as RICH_TOOLBAR_FORMAT_TAGS, a as RICH_TOOLBAR_COMMANDS } from './RichToolbarHelper-f3a149c4.js';
|
|
6
6
|
import { p as purify } from './purify-9357603c.js';
|
|
7
|
-
import { A as ApplicationUtils } from './ApplicationUtils-
|
|
7
|
+
import { A as ApplicationUtils } from './ApplicationUtils-985c24ae.js';
|
|
8
8
|
import './DialogType-54a62731.js';
|
|
9
9
|
import './CheckMode-bdb2ec19.js';
|
|
10
10
|
import './_commonjsHelpers-9943807e.js';
|
|
@@ -289,6 +289,152 @@ const EzCustomFormInput = class {
|
|
|
289
289
|
}; }
|
|
290
290
|
};
|
|
291
291
|
|
|
292
|
+
const ezImageInputCss = ":host{display:block;--ez-image-input--container-height:200px;--ez-image-input--container-width:280px;--ez-image-input--background-color:var(--color--gray-80);--ez-image-input--border-color:var(--color--gray-200);--ez-image-input--border-color-hover:var(--color--ocean-green-600);--ez-image-input--border-color-dragging:var(--color--ocean-green-500);--ez-image-input--border-color-disabled:var(--color--gray-200);--ez-image-input--label-color:var(--color--petroleum-900);--ez-image-input--icon-color:var(--color--gray-400);--ez-image-input--border-radius:var(--border--radius-24);--ez-image-input--border-width:2px;--ez-image-input--remove-button-bg:var(--color--red-600);--ez-image-input--remove-button-bg-hover:var(--color--red-700);--ez-image-input--remove-button-color:var(--color--gray-70);--ez-image-input--remove-button-border:1px solid var(--color--red-700)}.image-input__container{display:flex;align-items:center;justify-content:center;position:relative;height:var(--ez-image-input--container-height);width:var(--ez-image-input--container-width);border:var(--ez-image-input--border-width) dashed var(--ez-image-input--border-color);border-radius:var(--ez-image-input--border-radius);background-color:var(--ez-image-input--background-color);cursor:pointer;transition:all 0.3s ease;overflow:hidden}.image-input__container:hover:not(.image-input__container--disabled){border-color:var(--ez-image-input--border-color-hover)}.image-input__container--dragging{border-color:var(--ez-image-input--border-color-dragging);background-color:var(--color--ocean-green-90)}.image-input__container--disabled{cursor:not-allowed;opacity:0.6;border-color:var(--ez-image-input--border-color-disabled)}.image-input__container--has-image{border-style:solid;padding:var(--space--0)}.image-input__file-input{display:none}.image-input__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space--16);padding:var(--space--24);text-align:center}.image-input__dropzone ez-icon{color:var(--ez-image-input--icon-color)}.image-input__label{font-family:var(--font--pattern);font-size:var(--font-size--default);font-weight:var(--font-weight--medium);color:var(--ez-image-input--label-color);line-height:var(--line-height--20)}.image-input__preview{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.image-input__image{height:100%;object-fit:cover;border-radius:calc(var(--ez-image-input--border-radius) - var(--ez-image-input--border-width))}ez-button{--ez-button--background-color:var(--ez-image-input--remove-button-bg);--ez-button--hover--background-color:var(--ez-image-input--remove-button-bg-hover);--ez-button--color:var(--ez-image-input--remove-button-color);--ez-button--border:var(--ez-image-input--remove-button-border);--ez-button--hover--border:var(--ez-image-input--remove-button-border)}.image-input__remove-button{position:absolute;top:var(--space--8);right:var(--space--8);display:flex;align-items:center;justify-content:center}.image-input__popup-content{display:flex;align-items:center;justify-content:center;padding:var(--space--16);height:100%}.image-input__popup-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:var(--border--radius-8)}.image-input__image{height:100%;object-fit:cover;border-radius:calc(var(--ez-image-input--border-radius) - var(--ez-image-input--border-width));cursor:pointer;transition:transform 0.2s ease}.image-input__image:hover{transform:scale(1.02)}ez-skeleton{--skeleton-width:var(--ez-image-input--container-width);--skeleton-height:var(--ez-image-input--container-height)}";
|
|
293
|
+
|
|
294
|
+
const EzImageInput = class {
|
|
295
|
+
constructor(hostRef) {
|
|
296
|
+
registerInstance(this, hostRef);
|
|
297
|
+
this.ezChange = createEvent(this, "ezChange", 7);
|
|
298
|
+
this.ezError = createEvent(this, "ezError", 7);
|
|
299
|
+
this.handleFileSelect = (event) => {
|
|
300
|
+
const input = event.target;
|
|
301
|
+
if (input.files && input.files[0]) {
|
|
302
|
+
this.processFile(input.files[0]);
|
|
303
|
+
}
|
|
304
|
+
};
|
|
305
|
+
this.handleDrop = (event) => {
|
|
306
|
+
var _a;
|
|
307
|
+
event.preventDefault();
|
|
308
|
+
event.stopPropagation();
|
|
309
|
+
this._isDragging = false;
|
|
310
|
+
if (!this.enabled)
|
|
311
|
+
return;
|
|
312
|
+
const files = (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.files;
|
|
313
|
+
if (files && files[0]) {
|
|
314
|
+
this.processFile(files[0]);
|
|
315
|
+
}
|
|
316
|
+
};
|
|
317
|
+
this.handleDragOver = (event) => {
|
|
318
|
+
event.preventDefault();
|
|
319
|
+
event.stopPropagation();
|
|
320
|
+
if (this.enabled) {
|
|
321
|
+
this._isDragging = true;
|
|
322
|
+
}
|
|
323
|
+
};
|
|
324
|
+
this.handleDragLeave = (event) => {
|
|
325
|
+
event.preventDefault();
|
|
326
|
+
event.stopPropagation();
|
|
327
|
+
this._isDragging = false;
|
|
328
|
+
};
|
|
329
|
+
this.handleRemoveImage = (event) => {
|
|
330
|
+
event.stopPropagation();
|
|
331
|
+
this.value = undefined;
|
|
332
|
+
this._hasImage = false;
|
|
333
|
+
if (this._inputElem) {
|
|
334
|
+
this._inputElem.value = '';
|
|
335
|
+
}
|
|
336
|
+
this.ezChange.emit('');
|
|
337
|
+
};
|
|
338
|
+
this.handleClickDropZone = () => {
|
|
339
|
+
var _a;
|
|
340
|
+
if (this.enabled && !this._hasImage) {
|
|
341
|
+
(_a = this._inputElem) === null || _a === void 0 ? void 0 : _a.click();
|
|
342
|
+
}
|
|
343
|
+
};
|
|
344
|
+
this.handleImageClick = (event) => {
|
|
345
|
+
event.stopPropagation();
|
|
346
|
+
if (this._hasImage && this.value) {
|
|
347
|
+
this._showImagePopup = true;
|
|
348
|
+
}
|
|
349
|
+
};
|
|
350
|
+
this.handlePopupAction = (event) => {
|
|
351
|
+
const action = event.detail;
|
|
352
|
+
if (action === 'CANCEL' || action === 'OK') {
|
|
353
|
+
this.handleClosePopup();
|
|
354
|
+
}
|
|
355
|
+
};
|
|
356
|
+
this.handleClosePopup = () => {
|
|
357
|
+
this._showImagePopup = false;
|
|
358
|
+
};
|
|
359
|
+
this.enabled = true;
|
|
360
|
+
this.label = undefined;
|
|
361
|
+
this.name = undefined;
|
|
362
|
+
this.value = undefined;
|
|
363
|
+
this.maxFileSize = 20 * 1024 * 1024;
|
|
364
|
+
this.accept = 'image/*';
|
|
365
|
+
this.loading = false;
|
|
366
|
+
this._hasImage = false;
|
|
367
|
+
this._isDragging = false;
|
|
368
|
+
this._showImagePopup = false;
|
|
369
|
+
}
|
|
370
|
+
onValueChange(newValue, oldValue) {
|
|
371
|
+
if (newValue !== oldValue) {
|
|
372
|
+
this._hasImage = !!newValue;
|
|
373
|
+
}
|
|
374
|
+
if (!newValue && this._inputElem) {
|
|
375
|
+
this._inputElem.value = '';
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
addInfoId() {
|
|
379
|
+
if (this._element) {
|
|
380
|
+
ElementIDUtils.addIDInfo(this._element);
|
|
381
|
+
}
|
|
382
|
+
if (this._inputElem) {
|
|
383
|
+
const dataInfo = { id: 'embedded' };
|
|
384
|
+
ElementIDUtils.addIDInfo(this._inputElem, 'image-input', dataInfo);
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
processFile(file) {
|
|
388
|
+
// Validar tipo de arquivo
|
|
389
|
+
if (!file.type.startsWith('image/')) {
|
|
390
|
+
const errorMsg = this.i18n('ez-image-input.invalidFileType');
|
|
391
|
+
this.ezError.emit(errorMsg);
|
|
392
|
+
return;
|
|
393
|
+
}
|
|
394
|
+
// Validar tamanho do arquivo
|
|
395
|
+
if (this.maxFileSize && file.size > this.maxFileSize) {
|
|
396
|
+
const maxSizeMB = (this.maxFileSize / (1024 * 1024)).toFixed(2);
|
|
397
|
+
const errorMsg = this.i18n('ez-image-input.fileTooLarge', { maxSize: `${maxSizeMB}MB` });
|
|
398
|
+
this.ezError.emit(errorMsg);
|
|
399
|
+
return;
|
|
400
|
+
}
|
|
401
|
+
// Converter para base64
|
|
402
|
+
const reader = new FileReader();
|
|
403
|
+
reader.onload = (e) => {
|
|
404
|
+
var _a;
|
|
405
|
+
const base64 = (_a = e.target) === null || _a === void 0 ? void 0 : _a.result;
|
|
406
|
+
this.value = base64;
|
|
407
|
+
this._hasImage = true;
|
|
408
|
+
this.ezChange.emit(base64);
|
|
409
|
+
};
|
|
410
|
+
reader.readAsDataURL(file);
|
|
411
|
+
}
|
|
412
|
+
async componentWillLoad() {
|
|
413
|
+
this.i18n = await initI18n();
|
|
414
|
+
this._hasImage = !!this.value;
|
|
415
|
+
}
|
|
416
|
+
componentDidLoad() {
|
|
417
|
+
this.addInfoId();
|
|
418
|
+
}
|
|
419
|
+
render() {
|
|
420
|
+
if (this.loading) {
|
|
421
|
+
return (h(Host, null, h("ez-skeleton", { width: "280px", height: '200px' })));
|
|
422
|
+
}
|
|
423
|
+
const dropZoneLabel = this.label || this.i18n('ez-image-input.defaultLabel');
|
|
424
|
+
return (h(Host, null, h("div", { class: {
|
|
425
|
+
'image-input__container': true,
|
|
426
|
+
'image-input__container--disabled': !this.enabled,
|
|
427
|
+
'image-input__container--dragging': this._isDragging,
|
|
428
|
+
'image-input__container--has-image': this._hasImage
|
|
429
|
+
}, "data-enabled": this.enabled.toString(), "data-has-image": this._hasImage.toString(), onClick: this.handleClickDropZone, onDrop: this.handleDrop, onDragOver: this.handleDragOver, onDragLeave: this.handleDragLeave, role: "button", "aria-label": dropZoneLabel, tabindex: this.enabled ? 0 : -1 }, h("input", { ref: (el) => (this._inputElem = el), type: "file", accept: this.accept, name: this.name, disabled: !this.enabled, onChange: this.handleFileSelect, class: "image-input__file-input", "aria-hidden": "true" }), this._hasImage && this.value ? (h("div", { class: "image-input__preview" }, h("img", { src: this.value, alt: this.i18n('ez-image-input.imageAlt'), class: "image-input__image", onClick: this.handleImageClick }), this.enabled && (h("ez-button", { class: "image-input__remove-button", variant: "primary", type: "button", mode: "icon", size: "small", iconName: "trash-alt", onClick: this.handleRemoveImage, "aria-label": this.i18n('ez-image-input.removeImage'), title: this.i18n('ez-image-input.removeImage') })))) : (h("div", { class: "image-input__dropzone" }, h("ez-icon", { iconName: "image", size: "x-large" }), h("span", { class: "image-input__label" }, dropZoneLabel)))), h("ez-popup", { opened: this._showImagePopup, ezTitle: this.i18n('ez-image-input.imagePreview'), size: "large", heightMode: "auto", onEzPopupAction: this.handlePopupAction, onEzClosePopup: this.handleClosePopup }, h("div", { class: "image-input__popup-content" }, h("img", { src: this.value, alt: this.i18n('ez-image-input.imageAlt'), class: "image-input__popup-image" })))));
|
|
430
|
+
}
|
|
431
|
+
get _element() { return getElement(this); }
|
|
432
|
+
static get watchers() { return {
|
|
433
|
+
"value": ["onValueChange"]
|
|
434
|
+
}; }
|
|
435
|
+
};
|
|
436
|
+
EzImageInput.style = ezImageInputCss;
|
|
437
|
+
|
|
292
438
|
const ezRichTextCss = ".sc-ez-rich-text-h{display:block;width:100%;font-family:Roboto;--ez-rich-text--box-shadow:0 0 3px 0 #DCE0E8;--ez-rich-text--shadow--outline:var(--shadow--outline) var(--color--strokes)}.editor-container.sc-ez-rich-text{width:100%;overflow:hidden;border-radius:12px;border:1px solid #DCE0E8}ez-text-area.sc-ez-rich-text{--text-area__input--border:1px solid}.preview.sc-ez-rich-text{min-height:20px;padding:12px;resize:both;overflow:auto;max-width:100%;border-top:1px solid #DCE0E8}";
|
|
293
439
|
|
|
294
440
|
const EzRichText = class {
|
|
@@ -663,4 +809,4 @@ const EzTextEdit = class {
|
|
|
663
809
|
};
|
|
664
810
|
EzTextEdit.style = ezTextEditCss;
|
|
665
811
|
|
|
666
|
-
export { EzComboBoxList as ez_combo_box_list, EzCustomFormInput as ez_custom_form_input, EzRichText as ez_rich_text, EzTextEdit as ez_text_edit };
|
|
812
|
+
export { EzComboBoxList as ez_combo_box_list, EzCustomFormInput as ez_custom_form_input, EzImageInput as ez_image_input, EzRichText as ez_rich_text, EzTextEdit as ez_text_edit };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-baa5e267.js';
|
|
2
2
|
import { ObjectUtils, ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
-
import './ApplicationUtils-
|
|
3
|
+
import './ApplicationUtils-985c24ae.js';
|
|
4
4
|
import { C as CSSVarsUtils } from './CSSVarsUtils-acba92d7.js';
|
|
5
5
|
import './DialogType-54a62731.js';
|
|
6
6
|
import './CheckMode-bdb2ec19.js';
|
|
7
|
-
import { i as initI18n } from './index-
|
|
7
|
+
import { i as initI18n } from './index-a3b24b5d.js';
|
|
8
8
|
import './FormLayout-071d324c.js';
|
|
9
9
|
|
|
10
10
|
const ezComboBoxCss = ":host{--ez-combo-box--height:42px;--ez-combo-box--width:100%;--ez-combo-box--border-radius:var(--border--radius-medium, 12px);--ez-combo-box--font-size:var(--text--medium, 14px);--ez-combo-box--font-family:var(--font-pattern, Arial);--ez-combo-box--background-color--xlight:var(--background--xlight, #fff);--ez-combo-box__input--background-color:var(--background--medium, #e0e0e0);--ez-combo-box__input--border:var(--border--medium, 2px solid);--ez-combo-box__input--border-color:var(--ez-combo-box__input--background-color);--ez-combo-box__input--focus--border-color:var(--color--primary, #008561);--ez-combo-box__input--disabled--background-color:var(--color--disable-secondary, #F2F5F8);--ez-combo-box__input--disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__btn--color:var(--title--primary, #2B3A54);--ez-combo-box__btn-disabled--color:var(--text--disable, #AFB6C0);--ez-combo-box__btn-hover--color:var(--color--primary, #4e4e4e);width:var(--ez-combo-box--width)}ez-icon{--ez-icon--color:inherit;font-weight:var(--text-weight--large, 600)}.suppressed-search-input{--ez-text-input__input--border-color:var(--color--strokes, #dce0e8);--ez-text-input__input--disabled--background-color:var(--background--xlight, #fff);--ez-text-input__input--disabled--color:var(--title--primary, #2B3A54)}.btn{outline:none;border:none;background:none;cursor:pointer;padding:0px;color:var(--ez-combo-box__btn--color)}.btn:disabled{cursor:unset;color:var(--ez-combo-box__btn-disabled--color)}.btn:disabled:hover{cursor:not-allowed;color:var(--ez-combo-box__btn-disabled--color)}.btn:hover{color:var(--ez-combo-box__btn-hover--color)}.btn__close{visibility:hidden}ez-text-input:hover .btn__close,ez-text-input:focus .btn__close{visibility:visible}.text-input-slot-container{--ez-text-input__icon--width:32px;--ez-text-input__min-width:var(--ez-combo-box__min-width);--ez-text-input__max-width:var(--ez-combo-box__max-width)}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
|