@sankhyalabs/sankhyablocks 1.3.31-beta.7 → 1.3.31-beta.8

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.
@@ -40,6 +40,7 @@ const SnkDataUnit = class {
40
40
  hasPrevious: this.dataUnit.hasPrevious(),
41
41
  copyMode: false,
42
42
  isDirty: this.dataUnit.isDirty(),
43
+ hasDirtyRecords: this.dataUnit.hasDirtyRecords(),
43
44
  selectedRecords: this.dataUnit.getSelectedRecords()
44
45
  };
45
46
  this.dataUnit.records.forEach(r => {
@@ -119,8 +120,13 @@ const SnkDataUnit = class {
119
120
  }
120
121
  break;
121
122
  case core.Action.EDITION_CANCELED:
122
- utils.ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
123
- .then((result) => resolve(result ? action : undefined));
123
+ if (this.dataState.hasDirtyRecords) {
124
+ utils.ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
125
+ .then((result) => resolve(result ? action : undefined));
126
+ }
127
+ else {
128
+ resolve(action);
129
+ }
124
130
  break;
125
131
  case core.Action.REMOVING_RECORDS:
126
132
  let msg = undefined;
@@ -29,6 +29,7 @@ export class SnkDataUnit {
29
29
  hasPrevious: this.dataUnit.hasPrevious(),
30
30
  copyMode: false,
31
31
  isDirty: this.dataUnit.isDirty(),
32
+ hasDirtyRecords: this.dataUnit.hasDirtyRecords(),
32
33
  selectedRecords: this.dataUnit.getSelectedRecords()
33
34
  };
34
35
  this.dataUnit.records.forEach(r => {
@@ -108,8 +109,13 @@ export class SnkDataUnit {
108
109
  }
109
110
  break;
110
111
  case Action.EDITION_CANCELED:
111
- ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
112
- .then((result) => resolve(result ? action : undefined));
112
+ if (this.dataState.hasDirtyRecords) {
113
+ ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
114
+ .then((result) => resolve(result ? action : undefined));
115
+ }
116
+ else {
117
+ resolve(action);
118
+ }
113
119
  break;
114
120
  case Action.REMOVING_RECORDS:
115
121
  let msg = undefined;
@@ -37,6 +37,7 @@ const SnkDataUnit$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
37
37
  hasPrevious: this.dataUnit.hasPrevious(),
38
38
  copyMode: false,
39
39
  isDirty: this.dataUnit.isDirty(),
40
+ hasDirtyRecords: this.dataUnit.hasDirtyRecords(),
40
41
  selectedRecords: this.dataUnit.getSelectedRecords()
41
42
  };
42
43
  this.dataUnit.records.forEach(r => {
@@ -116,8 +117,13 @@ const SnkDataUnit$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
116
117
  }
117
118
  break;
118
119
  case Action.EDITION_CANCELED:
119
- ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
120
- .then((result) => resolve(result ? action : undefined));
120
+ if (this.dataState.hasDirtyRecords) {
121
+ ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
122
+ .then((result) => resolve(result ? action : undefined));
123
+ }
124
+ else {
125
+ resolve(action);
126
+ }
121
127
  break;
122
128
  case Action.REMOVING_RECORDS:
123
129
  let msg = undefined;
@@ -36,6 +36,7 @@ const SnkDataUnit = class {
36
36
  hasPrevious: this.dataUnit.hasPrevious(),
37
37
  copyMode: false,
38
38
  isDirty: this.dataUnit.isDirty(),
39
+ hasDirtyRecords: this.dataUnit.hasDirtyRecords(),
39
40
  selectedRecords: this.dataUnit.getSelectedRecords()
40
41
  };
41
42
  this.dataUnit.records.forEach(r => {
@@ -115,8 +116,13 @@ const SnkDataUnit = class {
115
116
  }
116
117
  break;
117
118
  case Action.EDITION_CANCELED:
118
- ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
119
- .then((result) => resolve(result ? action : undefined));
119
+ if (this.dataState.hasDirtyRecords) {
120
+ ApplicationUtils.confirm(this.i18n("components.warning"), this.i18n("components.confirmCancelEdition"))
121
+ .then((result) => resolve(result ? action : undefined));
122
+ }
123
+ else {
124
+ resolve(action);
125
+ }
120
126
  break;
121
127
  case Action.REMOVING_RECORDS:
122
128
  let msg = undefined;
@@ -0,0 +1 @@
1
+ import{r as t,c as s,h as e,g as i,H as a}from"./p-a45dba1a.js";import{Action as n,ApplicationContext as o}from"@sankhyalabs/core";import{ApplicationUtils as h}from"@sankhyalabs/ezui/dist/collection/utils";const r=class{constructor(e){t(this,e),this.dataStateChange=s(this,"dataStateChange",7),this.dataUnitReady=s(this,"dataUnitReady",7),this.insertionMode=s(this,"insertionMode",7),this._onDataUnitResolve=[],this.pageSize=150,this.autoLoad=!0,this._dataUnitObserver=t=>{let s;this.isTransitionAction(t.type)||(s=this.getActionInfo(t.type)),s&&h.info(s),t.type!==n.RECORDS_ADDED&&t.type!==n.RECORDS_COPIED||this.insertionMode.emit();const e={insertionMode:!1,hasNext:this.dataUnit.hasNext(),hasPrevious:this.dataUnit.hasPrevious(),copyMode:!1,isDirty:this.dataUnit.isDirty(),hasDirtyRecords:this.dataUnit.hasDirtyRecords(),selectedRecords:this.dataUnit.getSelectedRecords()};this.dataUnit.records.forEach((t=>{t.__record__id__.startsWith("NEW_")&&(e.insertionMode=!0,e.copyMode||(e.copyMode=null!=t.__record__source__id__))})),this.dataState=e}}observePageSize(){this.dataUnit&&(this.dataUnit.pageSize=this.pageSize)}observeDataUnitName(t,s){s!=t&&(this.dataUnit=void 0,this.dataUnitName=t,this.loadDataUnit())}observeEntityName(t,s){s!=t&&(this.dataUnit=void 0,this.entityName=t,this.loadDataUnit())}observeDataState(t,s){s!=t&&this.dataStateChange.emit(t)}observeDataUnit(){this.dataUnitReady.emit(this.dataUnit)}async getDataUnit(){return new Promise((t=>{this.dataUnit?t(this.dataUnit):this._onDataUnitResolve.push(t)}))}async interceptAction(t){return new Promise((s=>{switch(t.type){case n.SAVING_DATA:if(this.beforeSave){const e=this.beforeSave(this.dataUnit);e instanceof Promise?e.then((e=>s(e?t:void 0))):s(e?t:void 0)}else s(t);break;case n.DATA_SAVED:this.afterSave?this.afterSave(this.dataUnit):s(t);break;case n.EDITION_CANCELED:this.dataState.hasDirtyRecords?h.confirm(this.i18n("components.warning"),this.i18n("components.confirmCancelEdition")).then((e=>s(e?t:void 0))):s(t);break;case n.REMOVING_RECORDS:let e;this.messageBuilder&&(e=this.messageBuilder(t.type,this.dataState,this.dataUnit)),h.confirm(this.i18n("components.delete"),e||this.i18n("components.confirmRemoveRecord"),"delete",!0,{btnConfirmDanger:!0}).then((e=>s(e?t:void 0)));break;default:s(t)}}))}isTransitionAction(t){switch(t){case n.LOADING_METADATA:case n.LOADING_DATA:case n.SAVING_DATA:case n.REMOVING_RECORDS:case n.CHANGING_DATA:return!0;default:return!1}}getActionInfo(t){return this.messageBuilder?this.messageBuilder(t,this.dataState,this.dataUnit):t===n.EDITION_CANCELED?this.i18n("components.editionCanceled"):void 0}async loadDataUnit(){if(!this.dataUnit){const t=o.getContextValue("__SNK__APPLICATION__");if(t&&this.entityName){const s=this.dataUnitName?this.dataUnitName:this.entityName;let e;for(this.dataUnit=await t.getDataUnit(this.entityName,s),this.dataUnit.pageSize=this.pageSize,this.dataUnit.unsubscribe(this._dataUnitObserver),this.dataUnit.addInterceptor(this),this.dataUnit.subscribe(this._dataUnitObserver);e=this._onDataUnitResolve.pop();)e(this.dataUnit);this.autoLoad&&this.dataUnit.loadData()}}}i18n(t){return{"components.warning":"Aviso","components.delete":"Excluir","components.confirmRemoveRecord":"Deseja realmente excluir o registro atual?","components.confirmCancelEdition":"As alterações realizadas serão descartadas<br/><br/><b>Você realmente gostaria de sair?</b>","components.editionCanceled":"Todas as alterações foram descartadas."}[t]}componentDidRender(){this.loadDataUnit()}render(){return e(a,null)}get element(){return i(this)}static get watchers(){return{pageSize:["observePageSize"],dataUnitName:["observeDataUnitName"],entityName:["observeEntityName"],dataState:["observeDataState"],dataUnit:["observeDataUnit"]}}};r.style=".sc-snk-data-unit-h{display:flex;flex-direction:column;height:100%}";export{r as snk_data_unit}
@@ -1 +1 @@
1
- import{p as a,b as t}from"./p-a45dba1a.js";(()=>{const t=import.meta.url,e={};return""!==t&&(e.resourcesUrl=new URL(".",t).href),a(e)})().then((a=>t([["p-a8305c35",[[1,"teste-pesquisa"]]],["p-9c225717",[[2,"snk-form",{formTitle:[1,"form-title"],configName:[1,"config-name"],actionsList:[16],_dataUnit:[32],_configLoaded:[32],_dataState:[32]}]]],["p-560fdf54",[[6,"snk-grid",{configName:[1,"config-name"],actionsList:[16],_dataUnit:[32],_configLoaded:[32],_dataState:[32]}]]],["p-21c2457b",[[2,"snk-data-unit",{dataState:[1040],dataUnitName:[1,"data-unit-name"],entityName:[1,"entity-name"],pageSize:[2,"page-size"],dataUnit:[1040],messageBuilder:[16],beforeSave:[16],afterSave:[16],autoLoad:[4,"auto-load"],getDataUnit:[64]}]]],["p-1c19b89c",[[2,"snk-pesquisa",{searchLoader:[16],selectItem:[16],argument:[1025],_itemList:[32],_startLoading:[32]}]]],["p-bc14f01e",[[2,"snk-application",{isUserSup:[64],hasAccess:[64],getAllAccess:[64],getStringParam:[64],getIntParam:[64],getFloatParam:[64],getBooleanParam:[64],getDateParam:[64],showPopUp:[64],closePopUp:[64],temOpcional:[64],getConfig:[64],saveConfig:[64],getAttributeFromHTMLWrapper:[64],openApp:[64],createDataunit:[64],getDataUnit:[64],getResourceID:[64],alert:[64],error:[64],confirm:[64],info:[64],loadFormConfig:[64],loadGridConfig:[64],saveGridConfig:[64],executeSearch:[64],isDebugMode:[64]}]]],["p-8f7b9a85",[[6,"snk-taskbar",{buttons:[1],actionsList:[16],primaryButton:[1,"primary-button"],disabledButtons:[16],dataUnit:[16],_permissions:[32]}]]]],a)));
1
+ import{p as a,b as t}from"./p-a45dba1a.js";(()=>{const t=import.meta.url,e={};return""!==t&&(e.resourcesUrl=new URL(".",t).href),a(e)})().then((a=>t([["p-a8305c35",[[1,"teste-pesquisa"]]],["p-9c225717",[[2,"snk-form",{formTitle:[1,"form-title"],configName:[1,"config-name"],actionsList:[16],_dataUnit:[32],_configLoaded:[32],_dataState:[32]}]]],["p-560fdf54",[[6,"snk-grid",{configName:[1,"config-name"],actionsList:[16],_dataUnit:[32],_configLoaded:[32],_dataState:[32]}]]],["p-eaa0772f",[[2,"snk-data-unit",{dataState:[1040],dataUnitName:[1,"data-unit-name"],entityName:[1,"entity-name"],pageSize:[2,"page-size"],dataUnit:[1040],messageBuilder:[16],beforeSave:[16],afterSave:[16],autoLoad:[4,"auto-load"],getDataUnit:[64]}]]],["p-1c19b89c",[[2,"snk-pesquisa",{searchLoader:[16],selectItem:[16],argument:[1025],_itemList:[32],_startLoading:[32]}]]],["p-bc14f01e",[[2,"snk-application",{isUserSup:[64],hasAccess:[64],getAllAccess:[64],getStringParam:[64],getIntParam:[64],getFloatParam:[64],getBooleanParam:[64],getDateParam:[64],showPopUp:[64],closePopUp:[64],temOpcional:[64],getConfig:[64],saveConfig:[64],getAttributeFromHTMLWrapper:[64],openApp:[64],createDataunit:[64],getDataUnit:[64],getResourceID:[64],alert:[64],error:[64],confirm:[64],info:[64],loadFormConfig:[64],loadGridConfig:[64],saveGridConfig:[64],executeSearch:[64],isDebugMode:[64]}]]],["p-8f7b9a85",[[6,"snk-taskbar",{buttons:[1],actionsList:[16],primaryButton:[1,"primary-button"],disabledButtons:[16],dataUnit:[16],_permissions:[32]}]]]],a)));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sankhyalabs/sankhyablocks",
3
- "version": "1.3.31-beta.7",
3
+ "version": "1.3.31-beta.8",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -1 +0,0 @@
1
- import{r as t,c as s,h as e,g as i,H as a}from"./p-a45dba1a.js";import{Action as n,ApplicationContext as o}from"@sankhyalabs/core";import{ApplicationUtils as h}from"@sankhyalabs/ezui/dist/collection/utils";const r=class{constructor(e){t(this,e),this.dataStateChange=s(this,"dataStateChange",7),this.dataUnitReady=s(this,"dataUnitReady",7),this.insertionMode=s(this,"insertionMode",7),this._onDataUnitResolve=[],this.pageSize=150,this.autoLoad=!0,this._dataUnitObserver=t=>{let s;this.isTransitionAction(t.type)||(s=this.getActionInfo(t.type)),s&&h.info(s),t.type!==n.RECORDS_ADDED&&t.type!==n.RECORDS_COPIED||this.insertionMode.emit();const e={insertionMode:!1,hasNext:this.dataUnit.hasNext(),hasPrevious:this.dataUnit.hasPrevious(),copyMode:!1,isDirty:this.dataUnit.isDirty(),selectedRecords:this.dataUnit.getSelectedRecords()};this.dataUnit.records.forEach((t=>{t.__record__id__.startsWith("NEW_")&&(e.insertionMode=!0,e.copyMode||(e.copyMode=null!=t.__record__source__id__))})),this.dataState=e}}observePageSize(){this.dataUnit&&(this.dataUnit.pageSize=this.pageSize)}observeDataUnitName(t,s){s!=t&&(this.dataUnit=void 0,this.dataUnitName=t,this.loadDataUnit())}observeEntityName(t,s){s!=t&&(this.dataUnit=void 0,this.entityName=t,this.loadDataUnit())}observeDataState(t,s){s!=t&&this.dataStateChange.emit(t)}observeDataUnit(){this.dataUnitReady.emit(this.dataUnit)}async getDataUnit(){return new Promise((t=>{this.dataUnit?t(this.dataUnit):this._onDataUnitResolve.push(t)}))}async interceptAction(t){return new Promise((s=>{switch(t.type){case n.SAVING_DATA:if(this.beforeSave){const e=this.beforeSave(this.dataUnit);e instanceof Promise?e.then((e=>s(e?t:void 0))):s(e?t:void 0)}else s(t);break;case n.DATA_SAVED:this.afterSave?this.afterSave(this.dataUnit):s(t);break;case n.EDITION_CANCELED:h.confirm(this.i18n("components.warning"),this.i18n("components.confirmCancelEdition")).then((e=>s(e?t:void 0)));break;case n.REMOVING_RECORDS:let e;this.messageBuilder&&(e=this.messageBuilder(t.type,this.dataState,this.dataUnit)),h.confirm(this.i18n("components.delete"),e||this.i18n("components.confirmRemoveRecord"),"delete",!0,{btnConfirmDanger:!0}).then((e=>s(e?t:void 0)));break;default:s(t)}}))}isTransitionAction(t){switch(t){case n.LOADING_METADATA:case n.LOADING_DATA:case n.SAVING_DATA:case n.REMOVING_RECORDS:case n.CHANGING_DATA:return!0;default:return!1}}getActionInfo(t){return this.messageBuilder?this.messageBuilder(t,this.dataState,this.dataUnit):t===n.EDITION_CANCELED?this.i18n("components.editionCanceled"):void 0}async loadDataUnit(){if(!this.dataUnit){const t=o.getContextValue("__SNK__APPLICATION__");if(t&&this.entityName){const s=this.dataUnitName?this.dataUnitName:this.entityName;let e;for(this.dataUnit=await t.getDataUnit(this.entityName,s),this.dataUnit.pageSize=this.pageSize,this.dataUnit.unsubscribe(this._dataUnitObserver),this.dataUnit.addInterceptor(this),this.dataUnit.subscribe(this._dataUnitObserver);e=this._onDataUnitResolve.pop();)e(this.dataUnit);this.autoLoad&&this.dataUnit.loadData()}}}i18n(t){return{"components.warning":"Aviso","components.delete":"Excluir","components.confirmRemoveRecord":"Deseja realmente excluir o registro atual?","components.confirmCancelEdition":"As alterações realizadas serão descartadas<br/><br/><b>Você realmente gostaria de sair?</b>","components.editionCanceled":"Todas as alterações foram descartadas."}[t]}componentDidRender(){this.loadDataUnit()}render(){return e(a,null)}get element(){return i(this)}static get watchers(){return{pageSize:["observePageSize"],dataUnitName:["observeDataUnitName"],entityName:["observeEntityName"],dataState:["observeDataState"],dataUnit:["observeDataUnit"]}}};r.style=".sc-snk-data-unit-h{display:flex;flex-direction:column;height:100%}";export{r as snk_data_unit}