@sankhyalabs/ezui 0.0.0-bugfix-dev-KB-59008.1 → 0.0.0-bugfix-dev-KB-60107.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/ez-custom-form-input_2.cjs.entry.js +8 -0
- package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
- package/dist/cjs/ez-grid.cjs.entry.js +7 -3
- package/dist/cjs/ezui.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/ez-form-view/custom-input/ez-custom-form-input.js +9 -1
- package/dist/collection/components/ez-form-view/ez-form-view.js +1 -1
- package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +3 -1
- package/dist/collection/components/ez-grid/ez-grid.js +22 -2
- package/dist/custom-elements/index.js +18 -6
- package/dist/esm/ez-custom-form-input_2.entry.js +8 -0
- package/dist/esm/ez-form-view.entry.js +1 -1
- package/dist/esm/ez-grid.entry.js +7 -3
- 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-1a35324b.entry.js +1 -0
- package/dist/ezui/p-3b56d2ef.entry.js +1 -0
- package/dist/ezui/{p-065e735d.entry.js → p-44012c8a.entry.js} +1 -1
- package/dist/types/components/ez-form-view/custom-input/ez-custom-form-input.d.ts +2 -0
- package/dist/types/components/ez-grid/controller/EzGridController.d.ts +4 -0
- package/dist/types/components/ez-grid/ez-grid.d.ts +4 -0
- package/dist/types/components.d.ts +8 -0
- package/package.json +1 -1
- package/dist/ezui/p-3b9e5664.entry.js +0 -1
- package/dist/ezui/p-e90dd4eb.entry.js +0 -1
|
@@ -194,6 +194,10 @@ export interface EzGridOptions {
|
|
|
194
194
|
* Mapa de formatadores customizados por coluna.
|
|
195
195
|
*/
|
|
196
196
|
customFormatters: Map<string, ICustomFormatter>;
|
|
197
|
+
/**
|
|
198
|
+
* Define se a grid será focada ao ser carregada.
|
|
199
|
+
*/
|
|
200
|
+
autoFocus: boolean;
|
|
197
201
|
}
|
|
198
202
|
/**
|
|
199
203
|
* Representa cada coluna da grade.
|
|
@@ -796,6 +796,10 @@ export namespace Components {
|
|
|
796
796
|
* Registra um render customizado para colunas da grid.
|
|
797
797
|
*/
|
|
798
798
|
"addGridCustomRender": (fieldName: string, customRender: ICustomRender, detailContext?: string) => Promise<void>;
|
|
799
|
+
/**
|
|
800
|
+
* Define se a grid será focada ao ser carregada.
|
|
801
|
+
*/
|
|
802
|
+
"autoFocus"?: boolean;
|
|
799
803
|
/**
|
|
800
804
|
* Define se a edição está habilitada na grid.
|
|
801
805
|
*/
|
|
@@ -3043,6 +3047,10 @@ declare namespace LocalJSX {
|
|
|
3043
3047
|
"onFormItemsReady"?: (event: EzFormViewCustomEvent<FormItems>) => void;
|
|
3044
3048
|
}
|
|
3045
3049
|
interface EzGrid {
|
|
3050
|
+
/**
|
|
3051
|
+
* Define se a grid será focada ao ser carregada.
|
|
3052
|
+
*/
|
|
3053
|
+
"autoFocus"?: boolean;
|
|
3046
3054
|
/**
|
|
3047
3055
|
* Define se a edição está habilitada na grid.
|
|
3048
3056
|
*/
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,r as a,c as t,g as l,H as n}from"./p-23a36bb6.js";import{ObjectUtils as o,UserInterface as r,ElementIDUtils as i}from"@sankhyalabs/core";import{R as s}from"./p-05e1f4e7.js";import{C as d}from"./p-b853763b.js";function c(a,t,l,n,o){return e("div",{class:"ez-col ez-col--sd-12 ez-align--middle ez-padding-horizontal--small ez-padding-bottom--large"},e("ez-check",{enabled:!l,label:t,mode:o?d.SWITCH:d.REGULAR,"data-field-name":a,"data-context-name":n,key:a}))}function m(a,t,l,n,o,r,i){return e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-number-input",{enabled:!l,label:t,precision:n,prettyPrecision:o,"data-field-name":a,"data-context-name":r,key:a,canShowError:i}))}const h=({name:a,label:t,readOnly:l,contextName:n,canShowError:o})=>e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-text-input",{label:t,"data-field-name":a,"data-context-name":n,key:a,enabled:!l,canShowError:o})),p=new Map;p.set(r.CHECKBOX,(e=>c(e.name,e.label,e.readOnly,e.contextName,!1))),p.set(r.SWITCH,(e=>c(e.name,e.label,e.readOnly,e.contextName,!0))),p.set(r.OPTIONSELECTOR,(({name:a,label:t,readOnly:l,required:n,props:o,contextName:r,canShowError:i})=>{const s=null==o?void 0:o.options;let d;if("string"==typeof s){const e=JSON.parse(s);d=Object.keys(e).map((a=>({value:a,label:e[a]})))}else d=s;return e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-combo-box",{enabled:!l,suppressEmptyOption:n,label:t,"data-field-name":a,"data-context-name":r,key:a,options:d,canShowError:i}))})),p.set(r.DATE,(({name:a,label:t,readOnly:l,canShowError:n})=>e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-date-input",{enabled:!l,label:t,"data-field-name":a,key:a,canShowError:n})))),p.set(r.TIME,(({name:a,label:t,readOnly:l,canShowError:n})=>e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-time-input",{enabled:!l,label:t,"data-field-name":a,key:a,canShowError:n})))),p.set(r.DATETIME,(({name:a,label:t,readOnly:l,contextName:n,canShowError:o})=>e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-date-time-input",{enabled:!l,label:t,"data-field-name":a,"data-context-name":n,key:a,canShowError:o})))),p.set(r.FILE,(({name:a,label:t,readOnly:l,contextName:n,props:r})=>{const i=o.removeEmptyValues({subTitle:r.subTitle,requestHeaders:Object.assign(Object.assign({},r.STORAGESTRATEGY&&{STORAGESTRATEGY:r.STORAGESTRATEGY}),r.INTERNAL_FILENAME&&{INTERNAL_FILENAME:r.INTERNAL_FILENAME})});return e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-upload",Object.assign({enabled:!l,label:t,"data-field-name":a,"data-context-name":n,key:a},i)))})),p.set(r.DECIMALNUMBER,(({name:e,label:a,readOnly:t,props:l,contextName:n,canShowError:o})=>{var r,i;const s=Number(null!==(r=null==l?void 0:l.precision)&&void 0!==r?r:2);return m(e,a,t,s,Number(null!==(i=null==l?void 0:l.prettyPrecision)&&void 0!==i?i:s),n,o)})),p.set(r.INTEGERNUMBER,(({name:e,label:a,readOnly:t,contextName:l,canShowError:n})=>m(e,a,t,0,0,l,n))),p.set(r.SEARCH,(({name:a,label:t,readOnly:l,required:n,contextName:o,canShowError:r,optionLoader:i})=>e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small"},e("ez-search",{enabled:!l,suppressEmptyOption:n,label:t,"data-field-name":a,"data-context-name":o,key:a,canShowError:r,optionLoader:i})))),p.set(r.LONGTEXT,(({name:a,label:t,readOnly:l,contextName:n,rows:o,canShowError:r})=>e("div",{class:"ez-col ez-col--sd-12 ez-padding-horizontal--small",key:a},e("ez-text-area",{enabled:!l,label:t,"data-field-name":a,"data-context-name":n,rows:o,canShowError:r}))));const u=e=>{const a=p.get(e.userInterface)||h,t=e.required?`${e.label}${s}`:e.label,l=a(Object.assign(Object.assign({},e),{label:t}));return l.t["data-form-item"]=e.name,l};class z{constructor(e){this.elem=e}addRightElement(e){this.removeRightElement(),e.classList.add("ez-padding-left--small"),e.setAttribute("data-custom-item","true"),this.elem.classList.add("ez-col--nowrap"),this.elem.appendChild(e)}removeRightElement(){Array.from(this.elem.querySelectorAll('[data-custom-item="true"]')).forEach((e=>e.remove()))}get fieldName(){return this.elem.getAttribute("data-form-item")}}class b{constructor(e,a){this.items=new Map,this.formId=a,e.forEach((e=>{const a=new z(e);this.items.set(a.fieldName,a)}))}getItem(e){return this.items.get(e)}get formName(){return this.formId}}const w=class{constructor(e){a(this,e),this.ezContentReady=t(this,"ezContentReady",7),this.formItemsReady=t(this,"formItemsReady",7),this._customEditors=new Map,this.fields=void 0}async showUp(){this._element.scrollIntoView({behavior:"smooth",block:"start"})}async addCustomEditor(e,a,t){const l=new Map(this._customEditors);l.set(e,{customEditor:a,detailContext:t}),this._customEditors=l}async setFieldProp(e,a,t){const l=this.fields.map((l=>(l.name!==e||!t&&0!==t||(l.props=l.props||{},l.props[a]=t),l)));this.fields=[...l]}groupFields(e){const a=new Map;return e.forEach((e=>{const t=e.group;if(t){let l=a.get(t);null==l&&(l=[],a.set(t,l)),l.push(e)}else a.set(e.name,e)})),a}componentDidRender(){this._formElements=Array.from(this._element.querySelectorAll("[data-field-name]")),this.ezContentReady.emit(this._formElements);const e=new b(this._formElements);this.formItemsReady.emit(e)}isItemFullWidth(e){return[r.FILE,r.LONGTEXT].includes(e)}buildFormItemElement(a,t=""){var l;if(this.isItemFullWidth(a.userInterface)&&(t+=" input-full_width"),this._customEditors.has(a.name)){const n=null===(l=this._formElements.map((e=>({name:e.dataset.fieldName,value:e.value}))).find((e=>e.name===a.name)))||void 0===l?void 0:l.value,o=this._customEditors.get(a.name).customEditor;return e("div",{class:t},e("ez-custom-form-input",{"data-field-name":a.name,customEditor:o,formViewField:a,builderFallback:u,value:n}))}return e("div",{class:t},u(a))}render(){if(i.addIDInfoIfNotExists(this._element,"ezFormView"),null==this.fields)return;let a=[],t=Array.from(this.groupFields(this.fields).entries()).map((([t,l])=>{if(Array.isArray(l))return e("ez-collapsible-box",{id:`group-${t}`,label:t,"header-size":"large",key:t},e("div",{class:"form-view__content"},l.map((e=>this.buildFormItemElement(e)))));a.push(l)})),l=a.map((e=>this.buildFormItemElement(e))),o=e("div",{class:"form-view__content"},l);return e(n,null,o,t)}get _element(){return l(this)}};w.style=".sc-ez-form-view-h{display:flex;flex-wrap:wrap;width:100%;--ez-form-view__item--min-width:220px;--ez-form-view__item--sapce-width:5px}.form-view__content.sc-ez-form-view{display:grid;grid-template-columns:repeat(auto-fill, minmax(var(--ez-form-view__item--min-width), 1fr));gap:var(--ez-form-view__item--sapce-width);width:100%}.input-full_width.sc-ez-form-view{grid-column:1 / -1;width:100%}";export{w as ez_form_view}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,h as i,H as s,c as e,g as o}from"./p-23a36bb6.js";import{C as n}from"./p-4607fb89.js";import{HTMLBuilder as l,StringUtils as h,ElementIDUtils as d}from"@sankhyalabs/core";import{A as a}from"./p-2187f86c.js";import"./p-ab574d59.js";import"./p-b853763b.js";const r=class{constructor(i){t(this,i),this.gui=void 0,this.customEditor=void 0,this.formViewField=void 0,this.value=void 0,this.detailContext=void 0,this.builderFallback=void 0}async setFocus(){var t,i;null===(i=null===(t=this.gui)||void 0===t?void 0:t.setFocus)||void 0===i||i.call(t)}async setBlur(){var t,i;null===(i=null===(t=this.gui)||void 0===t?void 0:t.setBlur)||void 0===i||i.call(t)}async isInvalid(){var t,i;return(null===(i=null===(t=this.gui)||void 0===t?void 0:t.isInvalid)||void 0===i?void 0:i.call(t))||!1}getContent(){var t,s;const e=new Map;for(const t in this.formViewField.props)e.set(t,this.formViewField.props[t]);const o={value:this.value,name:this.formViewField.name,currentEditor:this.builderFallback(this.formViewField),editorMetadata:{label:this.formViewField.label,hidden:!1===(null===(t=this.formViewField.props)||void 0===t?void 0:t.visible),userInterface:this.formViewField.userInterface,options:null===(s=this.formViewField.props)||void 0===s?void 0:s.options,props:this.formViewField.props?e:void 0,optionLoader:this.formViewField.optionLoader},source:n.FORM,detailContext:this.detailContext};let d=this.customEditor.getEditorElement(o);return d?d instanceof HTMLElement||"string"==typeof d?("string"==typeof d&&(d=l.parseElement(d)),d.setAttribute("value",this.value),void(this.gui=i("div",{key:h.generateUUID(),ref:t=>t&&t.appendChild(d)}))):(this.handleValue(d),void(this.gui=d)):(d=this.builderFallback(this.formViewField),this.handleValue(d),void(this.gui=d))}handleValue(t){t.t.forEach((t=>{t.i.value=this.value}))}componentWillRender(){this.getContent()}render(){return i(s,null,this.gui)}},u=class{constructor(i){t(this,i),this.saveEdition=e(this,"saveEdition",7),this.cancelEdition=e(this,"cancelEdition",7),this._newValue=void 0,this.value=void 0,this.styled=void 0}async applyFocusSelect(){this.calcSizeInput(this.value,!0)}calcSizeInput(t,i=!1){var s,e;const o=null===(e=null===(s=this._inputElement)||void 0===s?void 0:s.shadowRoot)||void 0===e?void 0:e.querySelector("input");if(null!=o){const s=this.getWidthValue(t);o.style.width=s+"px",i&&setTimeout((()=>o.select()),100)}}getWidthValue(t){if(null!=this._valueBasis){const i=this._valueBasis;if(null!=t){const s=2;return i.innerHTML=t,i.clientWidth>0?i.clientWidth+s:s}i.innerHTML=""}return 0}setStyledInput(){var t,i;let s="",e="",o="";null!=this.styled&&(s=this.styled.fontSize,e=this.styled.fontWeight,o=this.styled.fontFamily);const n=null===(i=null===(t=this._inputElement)||void 0===t?void 0:t.shadowRoot)||void 0===i?void 0:i.querySelector("input");null!=n&&(n.style.fontSize=s,n.style.fontWeight=e,n.style.fontFamily=o);const l=this._valueBasis;null!=l&&(l.style.fontSize=s,l.style.fontWeight=e,l.style.fontFamily=o)}handleSaveEdition(){this._newValue?this.saveEdition.emit({value:this.value,newValue:this._newValue}):a.alert("Aviso","Não é possível salvar um campo em branco.").then((()=>{this.setNewValue(this.value,!0)}))}handleCancelEdition(){this.cancelEdition.emit()}setNewValue(t,i=!1){this._newValue=t,this.calcSizeInput(this._newValue,i)}componentDidLoad(){this.applyFocusSelect(),this.setNewValue(this.value)}componentDidRender(){this.setStyledInput()}render(){return d.addIDInfoIfNotExists(this._element,"input"),i(s,null,i("span",{class:"text-edit__hidden-value",ref:t=>this._valueBasis=t}),i("ez-text-input",{"data-element-id":d.getInternalIDInfo("textInput"),onInput:()=>{this.calcSizeInput(this._newValue)},class:"text-edit__form-input",value:this._newValue,ref:t=>this._inputElement=t,mode:"slim",onEzChange:t=>this.setNewValue(null==t?void 0:t.detail),noBorder:!0}),i("ez-button",{class:"text-edit__icon-check",mode:"icon",iconName:"check",size:"small",onClick:()=>{this.handleSaveEdition()}}),i("ez-button",{class:"text-edit__icon-close",mode:"icon",iconName:"close",size:"small",onClick:()=>{this.handleCancelEdition()}}))}get _element(){return o(this)}};u.style=":host{display:flex;align-items:center;gap:5px}.text-edit__form-input{width:auto;--ez-text-input__input--padding:0px}.text-edit__hidden-value{visibility:hidden;position:absolute;white-space:nowrap;z-index:-1;top:0;left:0}";export{r as ez_custom_form_input,u as ez_text_edit}
|