@sankhyalabs/ezui 0.0.0-bugfix-dev-59880.2 → 0.0.0-bugfix-dev-KB-59006.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/cjs/ez-form-view.cjs.entry.js +3 -6
  2. package/dist/cjs/ez-grid.cjs.entry.js +25 -1
  3. package/dist/cjs/ez-number-input.cjs.entry.js +2 -5
  4. package/dist/cjs/ezui.cjs.js +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/collection/components/ez-form-view/ez-form-view.js +1 -3
  7. package/dist/collection/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.js +2 -3
  8. package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +17 -0
  9. package/dist/collection/components/ez-grid/controller/ag-grid/DataSource.js +1 -0
  10. package/dist/collection/components/ez-grid/ez-grid.css +1 -0
  11. package/dist/collection/components/ez-grid/ez-grid.js +22 -0
  12. package/dist/collection/components/ez-number-input/ez-number-input.js +2 -5
  13. package/dist/custom-elements/index.js +30 -12
  14. package/dist/esm/ez-form-view.entry.js +3 -6
  15. package/dist/esm/ez-grid.entry.js +25 -1
  16. package/dist/esm/ez-number-input.entry.js +2 -5
  17. package/dist/esm/ezui.js +1 -1
  18. package/dist/esm/loader.js +1 -1
  19. package/dist/ezui/ezui.esm.js +1 -1
  20. package/dist/ezui/{p-c12db915.entry.js → p-275c3545.entry.js} +1 -1
  21. package/dist/ezui/p-91e4dac7.entry.js +1 -0
  22. package/dist/ezui/p-c21d9c2c.entry.js +1 -0
  23. package/dist/types/components/ez-grid/controller/EzGridController.d.ts +1 -0
  24. package/dist/types/components/ez-grid/controller/ag-grid/AgGridController.d.ts +3 -0
  25. package/dist/types/components/ez-grid/ez-grid.d.ts +4 -0
  26. package/dist/types/components/ez-number-input/ez-number-input.d.ts +0 -1
  27. package/dist/types/components.d.ts +4 -0
  28. package/package.json +1 -1
  29. package/dist/ezui/p-df1c459a.entry.js +0 -1
  30. package/dist/ezui/p-ed82af2f.entry.js +0 -1
@@ -0,0 +1 @@
1
+ import{h as e,r as a,c as t,g as l,H as n}from"./p-e4c7eb39.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})=>{const r=Number((null==l?void 0:l.precision)||2);return m(e,a,t,r,Number((null==l?void 0:l.prettyPrecision)||r),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&&(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}
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as i,g as e}from"./p-e4c7eb39.js";import{NumberUtils as h,ElementIDUtils as r}from"@sankhyalabs/core";import{C as o}from"./p-9e11fc7b.js";const n=class{constructor(i){t(this,i),this.ezChange=s(this,"ezChange",7),this.ezStartChange=s(this,"ezStartChange",7),this.ezCancelWaitingChange=s(this,"ezCancelWaitingChange",7),this._focused=!1,this._changePending=!1,this._valuePromiseCallbacks=[],this.label=void 0,this.value=void 0,this.enabled=!0,this.canShowError=!0,this.errorMessage=void 0,this.precision=void 0,this.prettyPrecision=void 0,this.mode="regular"}async setFocus(t){this._textInput.setFocus(t)}async setBlur(){this._textInput.setBlur()}async isInvalid(){return"string"==typeof this.errorMessage&&""!==this.errorMessage.trim()}async getValueAsync(){return this._changePending?new Promise((t=>{this._valuePromiseCallbacks.push(t)})):Promise.resolve(this.value)}observeLabel(){this._textInput&&(this._textInput.label=this.label)}observeErrorMessage(){var t;this._textInput&&(this._textInput.errorMessage=this.errorMessage,(null===(t=this.errorMessage)||void 0===t?void 0:t.trim())||this.setInputValue())}observeValue(t,s){if(this._textInput&&t!=s){const i=this.validateValue(t),e=this.validateValue(s);if(null===i&&(this._textInput.value=""),i!=e){const t=this.getTextValue(i)||"";(this._textInput.value||"")!==t&&(void 0===this.getParsedNumber(t)&&this._focused||(this._textInput.value=t,this._focused=!1,this.errorMessage="")),this.ezChange.emit(null===i?void 0:i)}}this._changePending=!1}observePrecision(){this._textInput&&this.setInputValue()}validateValue(t){return isNaN(t)||void 0===t?null:t}getTextValue(t){if(null!=t)return this.precision>0?h.format(t.toString(),Number(this.precision),Number(this.prettyPrecision)):t.toString()}changeValue(t){this.errorMessage="",this.value!=t?this.value=void 0===t?null:t:(this.setInputValue(),this.ezCancelWaitingChange.emit())}setError(t){this.value=null,this.errorMessage=t,this.ezCancelWaitingChange.emit()}handleBlur(){if(this._changePending)try{const t=this.getParsedNumber();if(void 0!==t&&isNaN(t))this.setError("O valor digitado não é um número válido");else try{this.changeValue(t)}catch(t){return void this.setError(t.message)}}finally{for(const t of this._valuePromiseCallbacks)t(this.value);this._valuePromiseCallbacks=[]}}handleInput(){this.getParsedNumber()!==this.value&&(this._focused=!0,this._changePending=!0,this.ezStartChange.emit({waitmessage:"",blocking:!1}))}getParsedNumber(t){var s;return void 0===t&&(t=null===(s=this._textInput)||void 0===s?void 0:s.value),(null==t?void 0:t.trim())?h.stringToNumber(t):void 0}setInputValue(){const t=this.getTextValue(this.value)||"";(this._textInput.value||"")!==t&&(this._textInput.value=t)}componentDidLoad(){o.applyVarsTextInput(this._elem,this._textInput),this.setInputValue()}render(){return r.addIDInfoIfNotExists(this._elem,"input"),i("ez-text-input",{class:"number__input","data-element-id":r.getInternalIDInfo("textInput"),ref:t=>this._textInput=t,"data-slave-mode":"true",label:this.label,onBlur:()=>this.handleBlur(),onInput:()=>this.handleInput(),restrict:this.precision>0?"0123456789-,.":"0123456789-",enabled:this.enabled,errorMessage:this.errorMessage,mode:this.mode,canShowError:this.canShowError})}get _elem(){return e(this)}static get watchers(){return{label:["observeLabel"],errorMessage:["observeErrorMessage"],value:["observeValue"],precision:["observePrecision"],prettyPrecision:["observePrecision"]}}};n.style=":host{display:block;width:100%}.number__input{height:100%}";export{n as ez_number_input}
@@ -127,6 +127,7 @@ export default interface EzGridController {
127
127
  setCellRenders(customRenders: Map<string, ICustomRenderInfo>): void;
128
128
  clearFilter(): void;
129
129
  setCustomFormatters(customFormatters: Map<string, ICustomFormatter>): void;
130
+ setFocus(): void;
130
131
  }
131
132
  /**
132
133
  * Carrega as informações necessárias para contextualizar corretamente a instância.
@@ -36,6 +36,7 @@ export default class AgGridController implements EzGridController, SortingProvid
36
36
  private _customEditors;
37
37
  private _customRenders;
38
38
  private _customFormatters;
39
+ private _container;
39
40
  configFilterColumn(filterColumn: HTMLFilterColumnElement): void;
40
41
  private handleFilteredColumnsChanged;
41
42
  clearFilter(): void;
@@ -70,6 +71,8 @@ export default class AgGridController implements EzGridController, SortingProvid
70
71
  removeRows(): void;
71
72
  changeValues(changes: any, rowIds?: Array<string>): void;
72
73
  refresh(): void;
74
+ private focusOnGridContainer;
75
+ setFocus(): void;
73
76
  setFocusFirstRow(): void;
74
77
  setFocusLastRow(): void;
75
78
  private setFocusOnRow;
@@ -154,6 +154,10 @@ export declare class EzGrid {
154
154
  * Retorna o formatador customizado da coluna caso exista.
155
155
  */
156
156
  getCustomValueFormatter(columnName: string): Promise<ICustomFormatter | undefined>;
157
+ /**
158
+ * Atribui o foco para a grade.
159
+ */
160
+ setFocus(): Promise<void>;
157
161
  observeConfig(config: IGridConfig): void;
158
162
  updatePaginationTooltip(): void;
159
163
  onSelectionChange(evt: CustomEvent): void;
@@ -6,7 +6,6 @@ export declare class EzNumberInput {
6
6
  private _focused;
7
7
  private _changePending;
8
8
  private _valuePromiseCallbacks;
9
- private _value;
10
9
  private _elem;
11
10
  /**
12
11
  * Emitido quando acontece a alteração de valor do campo.
@@ -836,6 +836,10 @@ export namespace Components {
836
836
  * Insere os registros no ez-grid.
837
837
  */
838
838
  "setData": (data: Array<any>) => Promise<void>;
839
+ /**
840
+ * Atribui o foco para a grade.
841
+ */
842
+ "setFocus": () => Promise<void>;
839
843
  /**
840
844
  * Define um `IStatusResolver` responsável pelo estado da coluna de status.
841
845
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sankhyalabs/ezui",
3
- "version": "0.0.0-bugfix-dev-59880.2",
3
+ "version": "0.0.0-bugfix-dev-KB-59006.0",
4
4
  "description": "Biblioteca de componentes Sankhya.",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/custom-elements/index.js",
@@ -1 +0,0 @@
1
- import{h as e,r as a,c as t,g as l,H as n}from"./p-e4c7eb39.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&&(l.props=l.props||{},(t||0===t)&&(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,c as s,h as i,g as e}from"./p-e4c7eb39.js";import{NumberUtils as h,ElementIDUtils as r}from"@sankhyalabs/core";import{C as o}from"./p-9e11fc7b.js";const n=class{constructor(i){t(this,i),this.ezChange=s(this,"ezChange",7),this.ezStartChange=s(this,"ezStartChange",7),this.ezCancelWaitingChange=s(this,"ezCancelWaitingChange",7),this._focused=!1,this._changePending=!1,this._valuePromiseCallbacks=[],this.label=void 0,this.value=void 0,this.enabled=!0,this.canShowError=!0,this.errorMessage=void 0,this.precision=void 0,this.prettyPrecision=void 0,this.mode="regular"}async setFocus(t){this._textInput.setFocus(t)}async setBlur(){this._textInput.setBlur()}async isInvalid(){return"string"==typeof this.errorMessage&&""!==this.errorMessage.trim()}async getValueAsync(){return this._changePending?new Promise((t=>{this._valuePromiseCallbacks.push(t)})):Promise.resolve(this.value)}observeLabel(){this._textInput&&(this._textInput.label=this.label)}observeErrorMessage(){var t;this._textInput&&(this._textInput.errorMessage=this.errorMessage,(null===(t=this.errorMessage)||void 0===t?void 0:t.trim())||this.setInputValue())}observeValue(t,s){if(this._textInput&&t!=s){const i=this.validateValue(t),e=this.validateValue(s);if(null===i&&(this._textInput.value="",this._value=""),i!=e){const t=this.getTextValue(i)||"";(this._textInput.value||"")!==t&&(void 0===this.getParsedNumber(t)&&this._focused||(this._textInput.value=t,this._value=t,this._focused=!1,this.errorMessage="")),this.ezChange.emit(null===i?void 0:i)}}this._changePending=!1}observePrecision(){this._textInput&&this.setInputValue()}validateValue(t){return isNaN(t)||void 0===t?null:t}getTextValue(t){if(null!=t)return this.precision>=0?h.format(t.toString(),Number(this.precision),Number(this.prettyPrecision)):t.toString()}changeValue(t){this.errorMessage="",this.value!=t?this.value=void 0===t?null:t:(this.setInputValue(),this.ezCancelWaitingChange.emit())}setError(t){this.value=null,this.errorMessage=t,this.ezCancelWaitingChange.emit()}handleBlur(){if(this._changePending)try{const t=this.getParsedNumber();if(void 0!==t&&isNaN(t))this.setError("O valor digitado não é um número válido");else try{this.changeValue(t)}catch(t){return void this.setError(t.message)}}finally{for(const t of this._valuePromiseCallbacks)t(this.value);this._valuePromiseCallbacks=[]}}handleInput(){this.getParsedNumber()!==this.value&&(this._focused=!0,this._changePending=!0,this.ezStartChange.emit({waitmessage:"",blocking:!1}))}getParsedNumber(t){var s;return void 0===t&&(t=null===(s=this._textInput)||void 0===s?void 0:s.value),(null==t?void 0:t.trim())?h.stringToNumber(t):void 0}setInputValue(){const t=this.getTextValue(this.value)||"";(this._textInput.value||"")!==t&&(this._textInput.value=t,this._value=t)}componentDidLoad(){o.applyVarsTextInput(this._elem,this._textInput),this.setInputValue()}render(){return r.addIDInfoIfNotExists(this._elem,"input"),i("ez-text-input",{class:"number__input","data-element-id":r.getInternalIDInfo("textInput"),ref:t=>this._textInput=t,"data-slave-mode":"true",label:this.label,onBlur:()=>this.handleBlur(),onInput:()=>this.handleInput(),restrict:this.precision>0?"0123456789-,.":"0123456789-",enabled:this.enabled,errorMessage:this.errorMessage,mode:this.mode,canShowError:this.canShowError,value:this._value})}get _elem(){return e(this)}static get watchers(){return{label:["observeLabel"],errorMessage:["observeErrorMessage"],value:["observeValue"],precision:["observePrecision"],prettyPrecision:["observePrecision"]}}};n.style=":host{display:block;width:100%}.number__input{height:100%}";export{n as ez_number_input}