@sankhyalabs/sankhyablocks 4.6.0 → 4.6.1
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/snk-simple-crud.cjs.entry.js +13 -6
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +13 -6
- package/dist/components/snk-simple-crud.js +13 -6
- package/dist/esm/snk-simple-crud.entry.js +13 -6
- package/dist/sankhyablocks/p-798cbc14.entry.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +1 -0
- package/package.json +1 -1
- package/dist/sankhyablocks/p-8490ca88.entry.js +0 -1
@@ -131,13 +131,13 @@ const SnkSimpleCrud = class {
|
|
131
131
|
index.registerInstance(this, hostRef);
|
132
132
|
this.dataStateChange = index.createEvent(this, "dataStateChange", 3);
|
133
133
|
this.dataUnitReady = index.createEvent(this, "dataUnitReady", 3);
|
134
|
-
this.REGULAR_DEFAULT_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER"];
|
135
|
-
this.REGULAR_SELECTED_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
134
|
+
this.REGULAR_DEFAULT_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER"];
|
135
|
+
this.REGULAR_SELECTED_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
136
136
|
this._taskbarProcessor = new taskbarProcessor.TaskbarProcessor({
|
137
|
-
"snkSimpleCrudTaskbar.form_regular": this.REGULAR_DEFAULT_BTNS.concat(taskbarElements.TaskbarElement.GRID_MODE),
|
138
|
-
"snkSimpleCrudTaskbar.grid_regular": this.REGULAR_DEFAULT_BTNS.concat(taskbarElements.TaskbarElement.FORM_MODE),
|
139
|
-
"snkSimpleCrudTaskbar.form_selected": this.REGULAR_SELECTED_BTNS.concat(taskbarElements.TaskbarElement.GRID_MODE),
|
140
|
-
"snkSimpleCrudTaskbar.grid_selected": this.REGULAR_SELECTED_BTNS.concat(taskbarElements.TaskbarElement.FORM_MODE),
|
137
|
+
"snkSimpleCrudTaskbar.form_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(taskbarElements.TaskbarElement.GRID_MODE),
|
138
|
+
"snkSimpleCrudTaskbar.grid_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(taskbarElements.TaskbarElement.FORM_MODE),
|
139
|
+
"snkSimpleCrudTaskbar.form_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(taskbarElements.TaskbarElement.GRID_MODE),
|
140
|
+
"snkSimpleCrudTaskbar.grid_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(taskbarElements.TaskbarElement.FORM_MODE),
|
141
141
|
"snkSimpleCrudTaskbar.finish_edition": ["CANCEL", "SAVE"]
|
142
142
|
});
|
143
143
|
this._currentViewMode = constants.VIEW_MODE.GRID;
|
@@ -147,6 +147,13 @@ const SnkSimpleCrud = class {
|
|
147
147
|
this.mode = constants.SIMPLE_CRUD_MODE.SERVER;
|
148
148
|
this.taskbarManager = undefined;
|
149
149
|
}
|
150
|
+
resolveInMemoryBtns(taskbarButtons) {
|
151
|
+
const newTaskBarConfig = [...taskbarButtons];
|
152
|
+
if (this.mode === constants.SIMPLE_CRUD_MODE.IN_MEMORY) {
|
153
|
+
newTaskBarConfig.splice(1, 1);
|
154
|
+
}
|
155
|
+
return newTaskBarConfig;
|
156
|
+
}
|
150
157
|
/**
|
151
158
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
152
159
|
*/
|
@@ -7,13 +7,13 @@ import TaskbarProcessor from '../snk-taskbar/processor/taskbar-processor';
|
|
7
7
|
import InMemoryLoader from '../../lib/dataUnit/InMemoryLoader';
|
8
8
|
export class SnkSimpleCrud {
|
9
9
|
constructor() {
|
10
|
-
this.REGULAR_DEFAULT_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER"];
|
11
|
-
this.REGULAR_SELECTED_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
10
|
+
this.REGULAR_DEFAULT_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER"];
|
11
|
+
this.REGULAR_SELECTED_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
12
12
|
this._taskbarProcessor = new TaskbarProcessor({
|
13
|
-
"snkSimpleCrudTaskbar.form_regular": this.REGULAR_DEFAULT_BTNS.concat(TaskbarElement.GRID_MODE),
|
14
|
-
"snkSimpleCrudTaskbar.grid_regular": this.REGULAR_DEFAULT_BTNS.concat(TaskbarElement.FORM_MODE),
|
15
|
-
"snkSimpleCrudTaskbar.form_selected": this.REGULAR_SELECTED_BTNS.concat(TaskbarElement.GRID_MODE),
|
16
|
-
"snkSimpleCrudTaskbar.grid_selected": this.REGULAR_SELECTED_BTNS.concat(TaskbarElement.FORM_MODE),
|
13
|
+
"snkSimpleCrudTaskbar.form_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(TaskbarElement.GRID_MODE),
|
14
|
+
"snkSimpleCrudTaskbar.grid_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(TaskbarElement.FORM_MODE),
|
15
|
+
"snkSimpleCrudTaskbar.form_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(TaskbarElement.GRID_MODE),
|
16
|
+
"snkSimpleCrudTaskbar.grid_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(TaskbarElement.FORM_MODE),
|
17
17
|
"snkSimpleCrudTaskbar.finish_edition": ["CANCEL", "SAVE"]
|
18
18
|
});
|
19
19
|
this._currentViewMode = VIEW_MODE.GRID;
|
@@ -23,6 +23,13 @@ export class SnkSimpleCrud {
|
|
23
23
|
this.mode = SIMPLE_CRUD_MODE.SERVER;
|
24
24
|
this.taskbarManager = undefined;
|
25
25
|
}
|
26
|
+
resolveInMemoryBtns(taskbarButtons) {
|
27
|
+
const newTaskBarConfig = [...taskbarButtons];
|
28
|
+
if (this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
|
29
|
+
newTaskBarConfig.splice(1, 1);
|
30
|
+
}
|
31
|
+
return newTaskBarConfig;
|
32
|
+
}
|
26
33
|
/**
|
27
34
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
28
35
|
*/
|
@@ -129,13 +129,13 @@ const SnkSimpleCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
|
|
129
129
|
this.__registerHost();
|
130
130
|
this.dataStateChange = createEvent(this, "dataStateChange", 3);
|
131
131
|
this.dataUnitReady = createEvent(this, "dataUnitReady", 3);
|
132
|
-
this.REGULAR_DEFAULT_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER"];
|
133
|
-
this.REGULAR_SELECTED_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
132
|
+
this.REGULAR_DEFAULT_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER"];
|
133
|
+
this.REGULAR_SELECTED_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
134
134
|
this._taskbarProcessor = new TaskbarProcessor({
|
135
|
-
"snkSimpleCrudTaskbar.form_regular": this.REGULAR_DEFAULT_BTNS.concat(TaskbarElement.GRID_MODE),
|
136
|
-
"snkSimpleCrudTaskbar.grid_regular": this.REGULAR_DEFAULT_BTNS.concat(TaskbarElement.FORM_MODE),
|
137
|
-
"snkSimpleCrudTaskbar.form_selected": this.REGULAR_SELECTED_BTNS.concat(TaskbarElement.GRID_MODE),
|
138
|
-
"snkSimpleCrudTaskbar.grid_selected": this.REGULAR_SELECTED_BTNS.concat(TaskbarElement.FORM_MODE),
|
135
|
+
"snkSimpleCrudTaskbar.form_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(TaskbarElement.GRID_MODE),
|
136
|
+
"snkSimpleCrudTaskbar.grid_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(TaskbarElement.FORM_MODE),
|
137
|
+
"snkSimpleCrudTaskbar.form_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(TaskbarElement.GRID_MODE),
|
138
|
+
"snkSimpleCrudTaskbar.grid_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(TaskbarElement.FORM_MODE),
|
139
139
|
"snkSimpleCrudTaskbar.finish_edition": ["CANCEL", "SAVE"]
|
140
140
|
});
|
141
141
|
this._currentViewMode = VIEW_MODE.GRID;
|
@@ -145,6 +145,13 @@ const SnkSimpleCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
|
|
145
145
|
this.mode = SIMPLE_CRUD_MODE.SERVER;
|
146
146
|
this.taskbarManager = undefined;
|
147
147
|
}
|
148
|
+
resolveInMemoryBtns(taskbarButtons) {
|
149
|
+
const newTaskBarConfig = [...taskbarButtons];
|
150
|
+
if (this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
|
151
|
+
newTaskBarConfig.splice(1, 1);
|
152
|
+
}
|
153
|
+
return newTaskBarConfig;
|
154
|
+
}
|
148
155
|
/**
|
149
156
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
150
157
|
*/
|
@@ -127,13 +127,13 @@ const SnkSimpleCrud = class {
|
|
127
127
|
registerInstance(this, hostRef);
|
128
128
|
this.dataStateChange = createEvent(this, "dataStateChange", 3);
|
129
129
|
this.dataUnitReady = createEvent(this, "dataUnitReady", 3);
|
130
|
-
this.REGULAR_DEFAULT_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER"];
|
131
|
-
this.REGULAR_SELECTED_BTNS = ["INSERT", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
130
|
+
this.REGULAR_DEFAULT_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER"];
|
131
|
+
this.REGULAR_SELECTED_BTNS = ["INSERT", "REFRESH", "PREVIOUS", "NEXT", "DIVIDER", "CLONE", "REMOVE", "DIVIDER"];
|
132
132
|
this._taskbarProcessor = new TaskbarProcessor({
|
133
|
-
"snkSimpleCrudTaskbar.form_regular": this.REGULAR_DEFAULT_BTNS.concat(TaskbarElement.GRID_MODE),
|
134
|
-
"snkSimpleCrudTaskbar.grid_regular": this.REGULAR_DEFAULT_BTNS.concat(TaskbarElement.FORM_MODE),
|
135
|
-
"snkSimpleCrudTaskbar.form_selected": this.REGULAR_SELECTED_BTNS.concat(TaskbarElement.GRID_MODE),
|
136
|
-
"snkSimpleCrudTaskbar.grid_selected": this.REGULAR_SELECTED_BTNS.concat(TaskbarElement.FORM_MODE),
|
133
|
+
"snkSimpleCrudTaskbar.form_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(TaskbarElement.GRID_MODE),
|
134
|
+
"snkSimpleCrudTaskbar.grid_regular": this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(TaskbarElement.FORM_MODE),
|
135
|
+
"snkSimpleCrudTaskbar.form_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(TaskbarElement.GRID_MODE),
|
136
|
+
"snkSimpleCrudTaskbar.grid_selected": this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(TaskbarElement.FORM_MODE),
|
137
137
|
"snkSimpleCrudTaskbar.finish_edition": ["CANCEL", "SAVE"]
|
138
138
|
});
|
139
139
|
this._currentViewMode = VIEW_MODE.GRID;
|
@@ -143,6 +143,13 @@ const SnkSimpleCrud = class {
|
|
143
143
|
this.mode = SIMPLE_CRUD_MODE.SERVER;
|
144
144
|
this.taskbarManager = undefined;
|
145
145
|
}
|
146
|
+
resolveInMemoryBtns(taskbarButtons) {
|
147
|
+
const newTaskBarConfig = [...taskbarButtons];
|
148
|
+
if (this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
|
149
|
+
newTaskBarConfig.splice(1, 1);
|
150
|
+
}
|
151
|
+
return newTaskBarConfig;
|
152
|
+
}
|
146
153
|
/**
|
147
154
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
148
155
|
*/
|
@@ -0,0 +1 @@
|
|
1
|
+
import{r as t,c as s,h as e,g as i}from"./p-b9667fbe.js";import{DataUnit as r,StringUtils as a,SortMode as n,DataType as o,ChangeOperation as h,ObjectUtils as d,UserInterface as l}from"@sankhyalabs/core";import{c as m,S as u}from"./p-ecbfbb4a.js";import{T as c}from"./p-74724fa7.js";import"./p-0c11c980.js";import{P as p}from"./p-f132e371.js";import{T as b}from"./p-5a3e0eb6.js";import"./p-98f7f796.js";import"./p-112455b1.js";class k{constructor(t,s){this.records=s||[],this.metadata=t,this._dataUnit=new r("InMemoryDataUnit"),this._dataUnit.metadataLoader=()=>this.metadaLoader(),this._dataUnit.dataLoader=(t,s)=>this.dataLoader(t,s),this._dataUnit.saveLoader=(t,s)=>this.saveLoader(t,s),this._dataUnit.removeLoader=(t,s)=>this.removeLoader(t,s),this.dataUnit.loadMetadata().then((()=>this.dataUnit.loadData()))}get dataUnit(){return this._dataUnit}get records(){return this._records}set records(t){this._records=null==t?void 0:t.map((t=>(t.__record__id__||(t.__record__id__=this.generateUniqueId()),t))),this._dataUnit&&(this._dataUnit.records=[...this._records])}get metadata(){return this._metadata}set metadata(t){this._metadata=t,this._dataUnit&&(this._dataUnit.metadata=this._metadata)}generateUniqueId(){return a.generateUUID()}metadaLoader(){return Promise.resolve(this._metadata)}dataLoader(t,s){let e=[...this._records];return s.sort&&s.sort.forEach((t=>{e=e.sort(((s,e)=>{const i=s[t.field],r=e[t.field];return this.getSortFn(t.dataType)(i,r)*(t.mode==n.ASC?1:-1)}))})),Promise.resolve({records:e})}getSortFn(t){switch(t){case o.NUMBER:return this.sortNumber;case o.DATE:return this.sortDate;case o.OBJECT:return this.sortObject;default:return a.compare}}sortObject(t,s){return a.compare(t.label,s.label)}sortNumber(t,s){return t-s}sortDate(t,s){let e=t.getTime(),i=s.getTime();return e===i?0:e<i?-1:1}saveLoader(t,s){return new Promise((t=>{let e=[];s.forEach((t=>{let{record:s,updatingFields:i,operation:r}=t,a=!1;r!==h.INSERT&&r!==h.COPY||(s.__old__id__=s.__record__id__,s.__record__id__=this.generateUniqueId(),a=!0);const n=Object.assign(Object.assign({},s),i);if(a)this.records.push(n);else{const t=this.records.findIndex((t=>t.__record__id__==n.__record__id__));this.records[t]=n}e.push(n)})),t(e)}))}removeLoader(t,s){return new Promise((t=>{this._records=this._records.filter((t=>!s.includes(t.__record__id__))),t(s)}))}}const g=class{constructor(e){t(this,e),this.dataStateChange=s(this,"dataStateChange",3),this.dataUnitReady=s(this,"dataUnitReady",3),this.REGULAR_DEFAULT_BTNS=["INSERT","REFRESH","PREVIOUS","NEXT","DIVIDER"],this.REGULAR_SELECTED_BTNS=["INSERT","REFRESH","PREVIOUS","NEXT","DIVIDER","CLONE","REMOVE","DIVIDER"],this._taskbarProcessor=new b({"snkSimpleCrudTaskbar.form_regular":this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(c.GRID_MODE),"snkSimpleCrudTaskbar.grid_regular":this.resolveInMemoryBtns(this.REGULAR_DEFAULT_BTNS).concat(c.FORM_MODE),"snkSimpleCrudTaskbar.form_selected":this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(c.GRID_MODE),"snkSimpleCrudTaskbar.grid_selected":this.resolveInMemoryBtns(this.REGULAR_SELECTED_BTNS).concat(c.FORM_MODE),"snkSimpleCrudTaskbar.finish_edition":["CANCEL","SAVE"]}),this._currentViewMode=m.GRID,this._config=void 0,this.dataState=void 0,this.dataUnit=void 0,this.mode=u.SERVER,this.taskbarManager=void 0}resolveInMemoryBtns(t){const s=[...t];return this.mode===u.IN_MEMORY&&s.splice(1,1),s}async goToView(t){this._currentViewMode=t,this._viewStack&&this._viewStack.show(t)}actionClickListener(t){const s=t.detail;s===c.GRID_MODE?this.goToView(m.GRID):s===c.FORM_MODE&&this.goToView(m.FORM),t.stopPropagation()}onModeChange(){this.mode==u.IN_MEMORY&&this.initInMemoryDataUnit()}observeDataState(t,s){d.objectToString(s)!=d.objectToString(t)&&this.dataStateChange.emit(t)}componentWillRender(){this._taskbarProcessor.process(this.getTaskBarId(),this.taskbarManager,this.dataState,void 0)}componentWillLoad(){this.processMetadata(),this.onModeChange()}getTaskBarId(){var t,s;return(null===(t=this.dataState)||void 0===t?void 0:t.isDirty)?"snkSimpleCrudTaskbar.finish_edition":(null===(s=this.dataState)||void 0===s?void 0:s.selectedRecords.length)>0?this._currentViewMode===m.GRID?"snkSimpleCrudTaskbar.grid_selected":"snkSimpleCrudTaskbar.form_selected":this._currentViewMode===m.GRID?"snkSimpleCrudTaskbar.grid_regular":"snkSimpleCrudTaskbar.form_regular"}initInMemoryDataUnit(){this._inMemoryLoader=new k(this._metadata),this.dataUnit=this._inMemoryLoader.dataUnit,this.dataUnitReady.emit(this.dataUnit)}setMetadata(t){return this._inMemoryLoader?this._inMemoryLoader.metadata=t:this.dataUnit&&(this.dataUnit.metadata=t),Promise.resolve()}setRecords(t){return this._inMemoryLoader?this._inMemoryLoader.records=t:this.dataUnit&&(this.dataUnit.records=t),Promise.resolve()}getRecords(){return Promise.resolve(this.dataUnit.records)}processMetadata(){const t=this._element.querySelectorAll("snk-field-metadata"),s=[],e={fields:[],emptyConfig:!1};t.forEach((t=>{const i={name:t.getAttribute("name")||t.getAttribute("label"),label:t.getAttribute("label"),dataType:o[t.getAttribute("dataType")]||o.TEXT,userInterface:l[t.getAttribute("userInterface")]||l.SHORTTEXT,readOnly:"true"==t.getAttribute("readOnly"),required:"true"==t.getAttribute("required"),tab:t.getAttribute("tab")||void 0,visible:"false"!=t.getAttribute("visible")};e.fields.push({name:i.name,tab:i.tab,visible:i.visible}),s.push(i)})),s.length>0&&(this._config=e,this._metadata={name:"SimpleCrud",label:"SimpleCrud",fields:s})}onDataStateChange(t){this.dataState=Object.assign({},t.detail)}render(){var t;return e("snk-data-unit",{class:"simple-crud__container",dataUnit:this.dataUnit,onDataStateChange:t=>this.onDataStateChange(t),onInsertionMode:()=>this.goToView(m.FORM),onDataUnitReady:t=>this.dataUnitReady.emit(t.detail)},e("header",null,e("slot",{name:"snkSimpleCrudHeader"})),e("section",{class:"ez-flex ez-box ez-box--shadow"},e("snk-taskbar",{class:"simple-crud__taskbar ez-box ez-box--shadow ez-padding--medium",dataUnit:this.dataUnit,primaryButton:(null===(t=this.dataState)||void 0===t?void 0:t.isDirty)?"SAVE":"INSERT","data-element-id":"grid_left",buttons:this._taskbarProcessor.buttons,disabledButtons:this._taskbarProcessor.disabledButtons,customButtons:this._taskbarProcessor.customButtons,slot:"leftButtons",presentationMode:p.SECONDARY}),e("ez-view-stack",{class:"ez-flex ez-flex--column",ref:t=>this._viewStack=t,"data-element-id":"simple-crud"},e("stack-item",null,e("ez-grid",{dataUnit:this.dataUnit,onEzDoubleClick:()=>this.goToView(m.FORM),"no-header":!0},e("div",{slot:"footer"},e("slot",{name:"snkSimpleCrudFooter"})))),e("stack-item",null,e("ez-form",{dataUnit:this.dataUnit,config:this._config})))))}get _element(){return i(this)}static get watchers(){return{mode:["onModeChange"],dataState:["observeDataState"]}}};g.style=".sc-snk-simple-crud-h{display:flex;height:100%;width:100%}.simple-crud__container.sc-snk-simple-crud{display:grid;grid-template-rows:auto;row-gap:12px;height:100%;width:100%}.simple-crud__taskbar.sc-snk-simple-crud{z-index:var(--more-visible, 2);margin-bottom:var(--space--medium)}ez-grid.sc-snk-simple-crud{--ez-grid__container--shadow:none;min-height:300px}ez-form.sc-snk-simple-crud{min-height:300px}";export{g as snk_simple_crud}
|
@@ -1 +1 @@
|
|
1
|
-
import{p as e,b as t}from"./p-b9667fbe.js";export{s as setNonce}from"./p-b9667fbe.js";(()=>{const t=import.meta.url,a={};return""!==t&&(a.resourcesUrl=new URL(".",t).href),e(a)})().then((e=>t([["p-
|
1
|
+
import{p as e,b as t}from"./p-b9667fbe.js";export{s as setNonce}from"./p-b9667fbe.js";(()=>{const t=import.meta.url,a={};return""!==t&&(a.resourcesUrl=new URL(".",t).href),e(a)})().then((e=>t([["p-798cbc14",[[6,"snk-simple-crud",{dataState:[16],dataUnit:[16],mode:[2],taskbarManager:[16],_currentViewMode:[32],_config:[32],goToView:[64],setMetadata:[64],setRecords:[64],getRecords:[64]},[[0,"actionClick","actionClickListener"]]]]],["p-e551b19a",[[1,"teste-pesquisa"]]],["p-86d29b6f",[[0,"snk-filter-binary-select",{value:[1544],config:[16],show:[64]},[[0,"ezChange","ezChangeListener"]]]]],["p-79d22df0",[[2,"snk-filter-field-search",{searchable:[4],breadcrumbItems:[32],linkItems:[32],fieldItems:[32],setDataSource:[64],filterDataSource:[64]}]]],["p-ee82c157",[[0,"snk-filter-multi-select",{value:[1544],config:[16],show:[64]},[[0,"ezChange","ezChangeListener"]]]]],["p-ad51bf1c",[[0,"snk-filter-number",{config:[16],value:[2],show:[64]},[[0,"ezChange","ezChangeListener"]]]]],["p-0154ae58",[[2,"snk-filter-param-config",{_opened:[32],_configType:[32],_expressionItem:[32],_informedInstance:[32],_canSave:[32],open:[64],close:[64]}]]],["p-5fc55684",[[0,"snk-filter-period",{config:[16],value:[8],show:[64]},[[0,"ezChange","ezChangeListener"]]]]],["p-d5c9c1f8",[[0,"snk-filter-personalized",{config:[16],value:[1040],fix:[16],unfix:[16],show:[64]}]]],["p-5e62a17b",[[0,"snk-filter-search",{config:[16],value:[16],show:[64]},[[0,"ezChange","ezChangeListener"]]]]],["p-c336170d",[[0,"snk-filter-text",{config:[16],value:[1]},[[0,"ezChange","ezChangeListener"]]]]],["p-4bd183ba",[[2,"snk-detail-view",{formConfigManager:[1040],dataUnitName:[1,"data-unit-name"],guideItemPath:[16],entityName:[1,"entity-name"],label:[1],dataUnit:[1040],selectedForm:[1025,"selected-form"],dataState:[1040],changeViewMode:[64],configGrid:[64],showUp:[64]},[[0,"snkContentCardChanged","onContentCardChanged"]]]]],["p-9f2306ba",[[2,"snk-configurator",{configName:[1,"config-name"],viewMode:[2,"view-mode"],_opened:[32],_permissions:[32],open:[64],close:[64]}]]],["p-e701646c",[[2,"snk-pesquisa",{searchLoader:[16],selectItem:[16],argument:[1025],_itemList:[32],_startLoading:[32]}]]],["p-a056d61f",[[2,"snk-filter-bar",{dataUnit:[1040],configName:[1,"config-name"],filterConfig:[1040],allowDefault:[32],scrollerLocked:[32]},[[0,"filterChange","filterChangeListener"]]]]],["p-b318cec6",[[2,"snk-grid-config",{selectedIndex:[1026,"selected-index"],application:[16],columns:[1040],config:[1040],configName:[1,"config-name"]}]]],["p-869d6616",[[2,"snk-config-options",{fieldConfig:[16],idConfig:[513,"id-config"],dataUnit:[16],_defaultType:[32]}]]],["p-7889d481",[[2,"snk-data-unit",{dataState:[1040],dataUnitName:[1,"data-unit-name"],entityName:[1,"entity-name"],pageSize:[2,"page-size"],dataUnit:[1040],beforeSave:[16],afterSave:[16],getDataUnit:[64],getSelectedRecordsIDsInfo:[64]}]]],["p-f83e3219",[[2,"snk-field-config",{isConfigActive:[16],fieldConfig:[16],modeInsertion:[516,"mode-insertion"],dataUnit:[16]}]]],["p-86efa17d",[[6,"snk-tab-config",{selectedIndex:[1538,"selected-index"],selectedTab:[1537,"selected-tab"],tabs:[1],_processedTabs:[32],_activeEditText:[32],_activeEditTextIndex:[32],_actionsHide:[32],_actionsShow:[32]}]]],["p-8b0e8deb",[[2,"snk-form-config",{dataUnit:[16],configManager:[16],_formConfigOptions:[32],_fieldConfigSelected:[32],_layoutFormConfig:[32],_fieldsAvailable:[32],_formConfig:[32],_formConfigChanged:[32],_optionFormConfigSelected:[32],_optionFormConfigChanged:[32],_tempGroups:[32]}]]],["p-eb7b2496",[[6,"snk-taskbar",{configName:[1,"config-name"],buttons:[1],customButtons:[16],actionsList:[16],primaryButton:[1,"primary-button"],disabledButtons:[16],dataUnit:[16],presentationMode:[1537,"presentation-mode"],_permissions:[32]}]]],["p-3a2ce158",[[0,"snk-filter-item",{config:[1040],getMessage:[16],detailIsVisible:[32],showUp:[64],hideDetail:[64]},[[2,"click","clickListener"],[2,"mousedown","mouseDownListener"],[0,"filterChange","filterChangeListener"]]]]],["p-093febff",[[4,"snk-filter-list",{label:[1],iconName:[1,"icon-name"],items:[16],getMessage:[16],emptyText:[1,"empty-text"],findFilterText:[1,"find-filter-text"],buttonClass:[1,"button-class"],_filterArgument:[32],_showAll:[32],hideDetail:[64]},[[2,"keydown","keyDownHandler"]]]]],["p-dbeac5db",[[1,"snk-select-box",{selectedOption:[1,"selected-option"]}]]],["p-22e44b9d",[[0,"snk-exporter-email-sender",{getMessage:[16],_config:[32],_opened:[32],_currentStep:[32],open:[64],close:[64]}]]],["p-cf9d1b55",[[2,"snk-data-exporter",{provider:[16],_items:[32],_showDropdown:[32],_releasedToExport:[32]}]]],["p-c0bfafcb",[[2,"snk-guides-viewer",{dataUnit:[16],dataState:[16],configName:[1,"config-name"],entityPath:[1,"entity-path"],actionsList:[16],recordsValidator:[16],masterFormConfig:[1040],selectedGuide:[16],taskbarManager:[16],presentationMode:[1,"presentation-mode"],_breadcrumbItems:[32],_guides:[32],_formEditorConfigManager:[32],_formEditorDataUnit:[32],showFormConfig:[64]},[[2,"actionClick","onActionClick"],[0,"snkContentCardChanged","onContentCardChanged"]]]]],["p-2a3996b0",[[6,"snk-crud",{configName:[1025,"config-name"],actionsList:[16],taskbarManager:[16],recordsValidator:[16],statusResolver:[16],multipleSelection:[4,"multiple-selection"],presentationMode:[1,"presentation-mode"],_dataUnit:[32],_dataState:[32],_currentViewMode:[32],goToView:[64]}]]],["p-d3199c18",[[2,"snk-form",{configName:[1,"config-name"],recordsValidator:[16],_dataUnit:[32],_dataState:[32],_showFormConfig:[32],_configManager:[32],showConfig:[64],hideConfig:[64]}]]],["p-9f00c061",[[2,"snk-application",{messagesBuilder:[1040],configName:[1,"config-name"],isUserSup:[64],hasAccess:[64],getAllAccess:[64],getStringParam:[64],getIntParam:[64],getFloatParam:[64],getBooleanParam:[64],getDateParam:[64],showPopUp:[64],showModal:[64],closeModal:[64],closePopUp:[64],temOpcional:[64],getConfig:[64],saveConfig:[64],getAttributeFromHTMLWrapper:[64],openApp:[64],webConnection:[64],createDataunit:[64],updateDataunitCache:[64],getDataUnit:[64],addClientEvent:[64],removeClientEvent:[64],hasClientEvent:[64],getResourceID:[64],getUserID:[64],alert:[64],error:[64],success:[64],message:[64],confirm:[64],info:[64],loadGridConfig:[64],loadTotals:[64],executeSearch:[64],executePreparedSearch:[64],isDebugMode:[64],getAppLabel:[64]}]]],["p-afba9bbe",[[0,"snk-filter-detail",{config:[1040],getMessage:[16],show:[64]}]]],["p-4fb98039",[[6,"snk-grid",{configName:[1,"config-name"],actionsList:[16],taskbarManager:[16],statusResolver:[16],multipleSelection:[4,"multiple-selection"],presentationMode:[1,"presentation-mode"],_dataUnit:[32],_dataState:[32],_gridConfig:[32],_popUpGridConfig:[32],showConfig:[64],hideConfig:[64],setConfig:[64]}]]],["p-900b2889",[[2,"snk-form-summary",{fixed:[1540],contracted:[1540],summary:[16]}]]],["p-9ebb164d",[[6,"snk-form-view",{levelPath:[1,"level-path"],label:[1],name:[1],fields:[16],formMetadata:[8,"form-metadata"],dataUnit:[16],contracted:[4],fixed:[1540],summaryFields:[16],canExpand:[4,"can-expand"],canFix:[4,"can-fix"],recordsValidator:[16],showUp:[64]}]]],["p-73e830cf",[[0,"snk-filter-modal",{getMessage:[16],items:[1040],modalTitle:[1,"modal-title"],modalSubTitle:[1,"modal-sub-title"],cancelButtonLabel:[1,"cancel-button-label"],okButtonLabel:[1,"ok-button-label"],infoText:[1,"info-text"],useSearch:[4,"use-search"],processModalAction:[16],_filterArgument:[32]}]]]],e)));
|
@@ -32,6 +32,7 @@ export declare class SnkSimpleCrud {
|
|
32
32
|
*/
|
33
33
|
taskbarManager: TaskbarManager;
|
34
34
|
_taskbarProcessor: TaskbarProcessor;
|
35
|
+
resolveInMemoryBtns(taskbarButtons: Array<string>): Array<string>;
|
35
36
|
/**
|
36
37
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
37
38
|
*/
|
package/package.json
CHANGED
@@ -1 +0,0 @@
|
|
1
|
-
import{r as t,c as e,h as s,g as i}from"./p-b9667fbe.js";import{DataUnit as r,StringUtils as a,SortMode as n,DataType as o,ChangeOperation as h,ObjectUtils as d,UserInterface as l}from"@sankhyalabs/core";import{c as m,S as u}from"./p-ecbfbb4a.js";import{T as c}from"./p-74724fa7.js";import"./p-0c11c980.js";import{P as p}from"./p-f132e371.js";import{T as b}from"./p-5a3e0eb6.js";import"./p-98f7f796.js";import"./p-112455b1.js";class k{constructor(t,e){this.records=e||[],this.metadata=t,this._dataUnit=new r("InMemoryDataUnit"),this._dataUnit.metadataLoader=()=>this.metadaLoader(),this._dataUnit.dataLoader=(t,e)=>this.dataLoader(t,e),this._dataUnit.saveLoader=(t,e)=>this.saveLoader(t,e),this._dataUnit.removeLoader=(t,e)=>this.removeLoader(t,e),this.dataUnit.loadMetadata().then((()=>this.dataUnit.loadData()))}get dataUnit(){return this._dataUnit}get records(){return this._records}set records(t){this._records=null==t?void 0:t.map((t=>(t.__record__id__||(t.__record__id__=this.generateUniqueId()),t))),this._dataUnit&&(this._dataUnit.records=[...this._records])}get metadata(){return this._metadata}set metadata(t){this._metadata=t,this._dataUnit&&(this._dataUnit.metadata=this._metadata)}generateUniqueId(){return a.generateUUID()}metadaLoader(){return Promise.resolve(this._metadata)}dataLoader(t,e){let s=[...this._records];return e.sort&&e.sort.forEach((t=>{s=s.sort(((e,s)=>{const i=e[t.field],r=s[t.field];return this.getSortFn(t.dataType)(i,r)*(t.mode==n.ASC?1:-1)}))})),Promise.resolve({records:s})}getSortFn(t){switch(t){case o.NUMBER:return this.sortNumber;case o.DATE:return this.sortDate;case o.OBJECT:return this.sortObject;default:return a.compare}}sortObject(t,e){return a.compare(t.label,e.label)}sortNumber(t,e){return t-e}sortDate(t,e){let s=t.getTime(),i=e.getTime();return s===i?0:s<i?-1:1}saveLoader(t,e){return new Promise((t=>{let s=[];e.forEach((t=>{let{record:e,updatingFields:i,operation:r}=t,a=!1;r!==h.INSERT&&r!==h.COPY||(e.__old__id__=e.__record__id__,e.__record__id__=this.generateUniqueId(),a=!0);const n=Object.assign(Object.assign({},e),i);if(a)this.records.push(n);else{const t=this.records.findIndex((t=>t.__record__id__==n.__record__id__));this.records[t]=n}s.push(n)})),t(s)}))}removeLoader(t,e){return new Promise((t=>{this._records=this._records.filter((t=>!e.includes(t.__record__id__))),t(e)}))}}const g=class{constructor(s){t(this,s),this.dataStateChange=e(this,"dataStateChange",3),this.dataUnitReady=e(this,"dataUnitReady",3),this.REGULAR_DEFAULT_BTNS=["INSERT","PREVIOUS","NEXT","DIVIDER"],this.REGULAR_SELECTED_BTNS=["INSERT","PREVIOUS","NEXT","DIVIDER","CLONE","REMOVE","DIVIDER"],this._taskbarProcessor=new b({"snkSimpleCrudTaskbar.form_regular":this.REGULAR_DEFAULT_BTNS.concat(c.GRID_MODE),"snkSimpleCrudTaskbar.grid_regular":this.REGULAR_DEFAULT_BTNS.concat(c.FORM_MODE),"snkSimpleCrudTaskbar.form_selected":this.REGULAR_SELECTED_BTNS.concat(c.GRID_MODE),"snkSimpleCrudTaskbar.grid_selected":this.REGULAR_SELECTED_BTNS.concat(c.FORM_MODE),"snkSimpleCrudTaskbar.finish_edition":["CANCEL","SAVE"]}),this._currentViewMode=m.GRID,this._config=void 0,this.dataState=void 0,this.dataUnit=void 0,this.mode=u.SERVER,this.taskbarManager=void 0}async goToView(t){this._currentViewMode=t,this._viewStack&&this._viewStack.show(t)}actionClickListener(t){const e=t.detail;e===c.GRID_MODE?this.goToView(m.GRID):e===c.FORM_MODE&&this.goToView(m.FORM),t.stopPropagation()}onModeChange(){this.mode==u.IN_MEMORY&&this.initInMemoryDataUnit()}observeDataState(t,e){d.objectToString(e)!=d.objectToString(t)&&this.dataStateChange.emit(t)}componentWillRender(){this._taskbarProcessor.process(this.getTaskBarId(),this.taskbarManager,this.dataState,void 0)}componentWillLoad(){this.processMetadata(),this.onModeChange()}getTaskBarId(){var t,e;return(null===(t=this.dataState)||void 0===t?void 0:t.isDirty)?"snkSimpleCrudTaskbar.finish_edition":(null===(e=this.dataState)||void 0===e?void 0:e.selectedRecords.length)>0?this._currentViewMode===m.GRID?"snkSimpleCrudTaskbar.grid_selected":"snkSimpleCrudTaskbar.form_selected":this._currentViewMode===m.GRID?"snkSimpleCrudTaskbar.grid_regular":"snkSimpleCrudTaskbar.form_regular"}initInMemoryDataUnit(){this._inMemoryLoader=new k(this._metadata),this.dataUnit=this._inMemoryLoader.dataUnit,this.dataUnitReady.emit(this.dataUnit)}setMetadata(t){return this._inMemoryLoader?this._inMemoryLoader.metadata=t:this.dataUnit&&(this.dataUnit.metadata=t),Promise.resolve()}setRecords(t){return this._inMemoryLoader?this._inMemoryLoader.records=t:this.dataUnit&&(this.dataUnit.records=t),Promise.resolve()}getRecords(){return Promise.resolve(this.dataUnit.records)}processMetadata(){const t=this._element.querySelectorAll("snk-field-metadata"),e=[],s={fields:[],emptyConfig:!1};t.forEach((t=>{const i={name:t.getAttribute("name")||t.getAttribute("label"),label:t.getAttribute("label"),dataType:o[t.getAttribute("dataType")]||o.TEXT,userInterface:l[t.getAttribute("userInterface")]||l.SHORTTEXT,readOnly:"true"==t.getAttribute("readOnly"),required:"true"==t.getAttribute("required"),tab:t.getAttribute("tab")||void 0,visible:"false"!=t.getAttribute("visible")};s.fields.push({name:i.name,tab:i.tab,visible:i.visible}),e.push(i)})),e.length>0&&(this._config=s,this._metadata={name:"SimpleCrud",label:"SimpleCrud",fields:e})}onDataStateChange(t){this.dataState=Object.assign({},t.detail)}render(){var t;return s("snk-data-unit",{class:"simple-crud__container",dataUnit:this.dataUnit,onDataStateChange:t=>this.onDataStateChange(t),onInsertionMode:()=>this.goToView(m.FORM),onDataUnitReady:t=>this.dataUnitReady.emit(t.detail)},s("header",null,s("slot",{name:"snkSimpleCrudHeader"})),s("section",{class:"ez-flex ez-box ez-box--shadow"},s("snk-taskbar",{class:"simple-crud__taskbar ez-box ez-box--shadow ez-padding--medium",dataUnit:this.dataUnit,primaryButton:(null===(t=this.dataState)||void 0===t?void 0:t.isDirty)?"SAVE":"INSERT","data-element-id":"grid_left",buttons:this._taskbarProcessor.buttons,disabledButtons:this._taskbarProcessor.disabledButtons,customButtons:this._taskbarProcessor.customButtons,slot:"leftButtons",presentationMode:p.SECONDARY}),s("ez-view-stack",{class:"ez-flex ez-flex--column",ref:t=>this._viewStack=t,"data-element-id":"simple-crud"},s("stack-item",null,s("ez-grid",{dataUnit:this.dataUnit,onEzDoubleClick:()=>this.goToView(m.FORM),"no-header":!0},s("div",{slot:"footer"},s("slot",{name:"snkSimpleCrudFooter"})))),s("stack-item",null,s("ez-form",{dataUnit:this.dataUnit,config:this._config})))))}get _element(){return i(this)}static get watchers(){return{mode:["onModeChange"],dataState:["observeDataState"]}}};g.style=".sc-snk-simple-crud-h{display:flex;height:100%;width:100%}.simple-crud__container.sc-snk-simple-crud{display:grid;grid-template-rows:auto;row-gap:12px;height:100%;width:100%}.simple-crud__taskbar.sc-snk-simple-crud{z-index:var(--more-visible, 2);margin-bottom:var(--space--medium)}ez-grid.sc-snk-simple-crud{--ez-grid__container--shadow:none;min-height:300px}ez-form.sc-snk-simple-crud{min-height:300px}";export{g as snk_simple_crud}
|