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

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 (59) hide show
  1. package/dist/cjs/{index-ebe8245e.js → index-532bcc28.js} +0 -34
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/sankhyablocks.cjs.js +2 -2
  4. package/dist/cjs/snk-application.cjs.entry.js +114 -14
  5. package/dist/cjs/snk-data-unit.cjs.entry.js +70 -36
  6. package/dist/cjs/snk-form.cjs.entry.js +1 -1
  7. package/dist/cjs/snk-grid.cjs.entry.js +2 -2
  8. package/dist/cjs/snk-pesquisa.cjs.entry.js +6 -3
  9. package/dist/cjs/snk-taskbar.cjs.entry.js +15 -34
  10. package/dist/cjs/{taskbar-elements-589a3744.js → taskbar-elements-9d47b416.js} +4 -2
  11. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  12. package/dist/collection/components/snk-application/snk-application.js +122 -40
  13. package/dist/collection/components/snk-data-unit/snk-data-unit.js +103 -64
  14. package/dist/collection/components/snk-form/snk-form.js +5 -5
  15. package/dist/collection/components/snk-grid/snk-grid.js +3 -3
  16. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +49 -10
  17. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +5 -1
  18. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +3 -1
  19. package/dist/collection/components/snk-taskbar/snk-taskbar.js +17 -33
  20. package/dist/collection/lib/http/data-fetcher/fetchers/dataunit-fetcher.js +16 -0
  21. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +2 -0
  22. package/dist/components/snk-application2.js +114 -14
  23. package/dist/components/snk-data-unit.js +69 -35
  24. package/dist/components/snk-pesquisa2.js +5 -2
  25. package/dist/components/snk-taskbar2.js +14 -32
  26. package/dist/esm/{index-7565ae23.js → index-0b078db7.js} +0 -34
  27. package/dist/esm/loader.js +2 -2
  28. package/dist/esm/sankhyablocks.js +2 -2
  29. package/dist/esm/snk-application.entry.js +114 -14
  30. package/dist/esm/snk-data-unit.entry.js +70 -36
  31. package/dist/esm/snk-form.entry.js +1 -1
  32. package/dist/esm/snk-grid.entry.js +2 -2
  33. package/dist/esm/snk-pesquisa.entry.js +6 -3
  34. package/dist/esm/snk-taskbar.entry.js +13 -32
  35. package/dist/esm/{taskbar-elements-b6822601.js → taskbar-elements-3ba30bf4.js} +4 -2
  36. package/dist/esm/teste-pesquisa.entry.js +1 -1
  37. package/dist/sankhyablocks/p-1c19b89c.entry.js +1 -0
  38. package/dist/sankhyablocks/p-21c2457b.entry.js +1 -0
  39. package/dist/sankhyablocks/{p-bb8d8fe7.entry.js → p-560fdf54.entry.js} +1 -1
  40. package/dist/sankhyablocks/p-574764bf.js +1 -0
  41. package/dist/sankhyablocks/p-8f7b9a85.entry.js +1 -0
  42. package/dist/sankhyablocks/{p-e7ade160.entry.js → p-9c225717.entry.js} +1 -1
  43. package/dist/sankhyablocks/p-a45dba1a.js +2 -0
  44. package/dist/sankhyablocks/{p-bb31ea2a.entry.js → p-a8305c35.entry.js} +1 -1
  45. package/dist/sankhyablocks/{p-a4b2fa10.entry.js → p-bc14f01e.entry.js} +3 -3
  46. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  47. package/dist/types/components/snk-application/snk-application.d.ts +89 -12
  48. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
  49. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +20 -3
  50. package/dist/types/components.d.ts +216 -2
  51. package/dist/types/lib/http/data-fetcher/fetchers/dataunit-fetcher.d.ts +2 -0
  52. package/package.json +1 -1
  53. package/dist/collection/components/snk-taskbar/component/snk-popup-button.js +0 -7
  54. package/dist/sankhyablocks/p-306224bf.entry.js +0 -1
  55. package/dist/sankhyablocks/p-4ee1e12b.js +0 -1
  56. package/dist/sankhyablocks/p-6d82d7fd.entry.js +0 -1
  57. package/dist/sankhyablocks/p-88278b85.entry.js +0 -1
  58. package/dist/sankhyablocks/p-90b832f7.js +0 -2
  59. package/dist/types/components/snk-taskbar/component/snk-popup-button.d.ts +0 -12
@@ -209,10 +209,6 @@ const h = (nodeName, vnodeData, ...children) => {
209
209
  }
210
210
  }
211
211
  }
212
- if (typeof nodeName === 'function') {
213
- // nodeName is a functional component
214
- return nodeName(vnodeData === null ? {} : vnodeData, vNodeChildren, vdomFnUtils);
215
- }
216
212
  const vnode = newVNode(nodeName, null);
217
213
  vnode.$attrs$ = vnodeData;
218
214
  if (vNodeChildren.length > 0) {
@@ -247,36 +243,6 @@ const newVNode = (tag, text) => {
247
243
  };
248
244
  const Host = {};
249
245
  const isHost = (node) => node && node.$tag$ === Host;
250
- const vdomFnUtils = {
251
- forEach: (children, cb) => children.map(convertToPublic).forEach(cb),
252
- map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate),
253
- };
254
- const convertToPublic = (node) => ({
255
- vattrs: node.$attrs$,
256
- vchildren: node.$children$,
257
- vkey: node.$key$,
258
- vname: node.$name$,
259
- vtag: node.$tag$,
260
- vtext: node.$text$,
261
- });
262
- const convertToPrivate = (node) => {
263
- if (typeof node.vtag === 'function') {
264
- const vnodeData = Object.assign({}, node.vattrs);
265
- if (node.vkey) {
266
- vnodeData.key = node.vkey;
267
- }
268
- if (node.vname) {
269
- vnodeData.name = node.vname;
270
- }
271
- return h(node.vtag, vnodeData, ...(node.vchildren || []));
272
- }
273
- const vnode = newVNode(node.vtag, node.vtext);
274
- vnode.$attrs$ = node.vattrs;
275
- vnode.$children$ = node.vchildren;
276
- vnode.$key$ = node.vkey;
277
- vnode.$name$ = node.vname;
278
- return vnode;
279
- };
280
246
  /**
281
247
  * Production setAccessor() function based on Preact by
282
248
  * Jason Miller (@developit)
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-ebe8245e.js');
5
+ const index = require('./index-532bcc28.js');
6
6
 
7
7
  /*
8
8
  Stencil Client Patch Esm v2.16.1 | MIT Licensed | https://stenciljs.com
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-form.cjs",[[2,"snk-form",{"formTitle":[1,"form-title"],"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-grid.cjs",[[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-data-unit.cjs",[[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]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-application.cjs",[[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],"getOrCreateDataUnit":[64],"getResourceID":[64],"alert":[64],"error":[64],"confirm":[64],"info":[64],"loadFormConfig":[64],"loadGridConfig":[64],"saveGridConfig":[64],"executeSearch":[64],"isDebugMode":[64]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_moreOptionsOpened":[32],"_permissions":[32]}]]]], options);
17
+ return index.bootstrapLazy([["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-form.cjs",[[2,"snk-form",{"formTitle":[1,"form-title"],"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-grid.cjs",[[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-data-unit.cjs",[[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]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-application.cjs",[[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]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const index = require('./index-ebe8245e.js');
3
+ const index = require('./index-532bcc28.js');
4
4
 
5
5
  /*
6
6
  Stencil Client Patch Browser v2.16.1 | MIT Licensed | https://stenciljs.com
@@ -15,5 +15,5 @@ const patchBrowser = () => {
15
15
  };
16
16
 
17
17
  patchBrowser().then(options => {
18
- return index.bootstrapLazy([["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-form.cjs",[[2,"snk-form",{"formTitle":[1,"form-title"],"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-grid.cjs",[[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-data-unit.cjs",[[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]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-application.cjs",[[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],"getOrCreateDataUnit":[64],"getResourceID":[64],"alert":[64],"error":[64],"confirm":[64],"info":[64],"loadFormConfig":[64],"loadGridConfig":[64],"saveGridConfig":[64],"executeSearch":[64],"isDebugMode":[64]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_moreOptionsOpened":[32],"_permissions":[32]}]]]], options);
18
+ return index.bootstrapLazy([["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-form.cjs",[[2,"snk-form",{"formTitle":[1,"form-title"],"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-grid.cjs",[[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32]}]]],["snk-data-unit.cjs",[[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]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-application.cjs",[[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]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
19
19
  });
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-ebe8245e.js');
5
+ const index = require('./index-532bcc28.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
8
 
@@ -6691,6 +6691,7 @@ class WaitingRequest {
6691
6691
  class DataUnitFetcher {
6692
6692
  constructor() {
6693
6693
  this.templateByQuery = new Map();
6694
+ this._loadDataTimeout = {};
6694
6695
  this.buldTemplates();
6695
6696
  }
6696
6697
  buldTemplates() {
@@ -6788,6 +6789,21 @@ class DataUnitFetcher {
6788
6789
  });
6789
6790
  }
6790
6791
  loadData(dataUnit, request) {
6792
+ const duName = dataUnit.name;
6793
+ if (this._loadDataTimeout[duName]) {
6794
+ clearTimeout(this._loadDataTimeout[duName]);
6795
+ delete this._loadDataTimeout[duName];
6796
+ }
6797
+ return new Promise((resolve, reject) => {
6798
+ this._loadDataTimeout[duName] = setTimeout(() => {
6799
+ delete this._loadDataTimeout[duName];
6800
+ this.doLoadData(dataUnit, request)
6801
+ .then(result => resolve(result))
6802
+ .catch(reason => reject(reason));
6803
+ }, 200);
6804
+ });
6805
+ }
6806
+ doLoadData(dataUnit, request) {
6791
6807
  return new Promise((resolve, reject) => {
6792
6808
  var _a;
6793
6809
  const { sort, filters, limit, offset, quickFilter } = request;
@@ -7109,6 +7125,8 @@ class PesquisaFetcher {
7109
7125
  }`);
7110
7126
  }
7111
7127
  loadSearchOptions(entityName, argument, criteria, options) {
7128
+ const cleanText = (argument === null || argument === void 0 ? void 0 : argument.trim()) || undefined;
7129
+ argument = isNaN(Number(cleanText)) && cleanText ? `%${cleanText}` : cleanText;
7112
7130
  return new Promise((resolve, reject) => {
7113
7131
  DataFetcher.get()
7114
7132
  .callGraphQL({
@@ -7298,6 +7316,9 @@ const SnkApplication = class {
7298
7316
  }
7299
7317
  });
7300
7318
  }
7319
+ /**
7320
+ * Caso o usuário logado seja o SUP.
7321
+ */
7301
7322
  async isUserSup() {
7302
7323
  return new Promise((resolve, reject) => {
7303
7324
  this.auth.then((authorization) => {
@@ -7307,6 +7328,9 @@ const SnkApplication = class {
7307
7328
  });
7308
7329
  });
7309
7330
  }
7331
+ /**
7332
+ * Se o usuário logado tem permissão pra determinada ação.
7333
+ */
7310
7334
  async hasAccess(access) {
7311
7335
  return new Promise((resolve, reject) => {
7312
7336
  this.auth.then((authorization) => {
@@ -7316,6 +7340,9 @@ const SnkApplication = class {
7316
7340
  });
7317
7341
  });
7318
7342
  }
7343
+ /**
7344
+ * Retorna todos os acessos do usuário logado.
7345
+ */
7319
7346
  async getAllAccess() {
7320
7347
  return new Promise((resolve, reject) => {
7321
7348
  this.auth.then((authorization) => {
@@ -7330,34 +7357,54 @@ const SnkApplication = class {
7330
7357
  });
7331
7358
  });
7332
7359
  }
7333
- async getAuthList(_auth) {
7334
- return await (new MGEAuthorization()).parseFromJSON(_auth);
7335
- }
7360
+ /**
7361
+ * Retorna o valor de um parâmetro do tipo string.
7362
+ */
7336
7363
  async getStringParam(name) {
7337
7364
  return this.parameters.asString(name, this.resourceID);
7338
7365
  }
7366
+ /**
7367
+ * Retorna o valor de um parâmetro do tipo Inteiro.
7368
+ */
7339
7369
  async getIntParam(name) {
7340
7370
  return this.parameters.asInteger(name, this.resourceID);
7341
7371
  }
7372
+ /**
7373
+ * Retorna o valor de um parâmetro do tipo Decimal.
7374
+ */
7342
7375
  async getFloatParam(name) {
7343
7376
  return this.parameters.asFloat(name, this.resourceID);
7344
7377
  }
7378
+ /**
7379
+ * Retorna o valor de um parâmetro do tipo booleano.
7380
+ */
7345
7381
  async getBooleanParam(name) {
7346
7382
  return this.parameters.asBoolean(name, this.resourceID);
7347
7383
  }
7384
+ /**
7385
+ * Retorna o valor de um parâmetro do tipo data.
7386
+ */
7348
7387
  async getDateParam(name) {
7349
7388
  return this.parameters.asDate(name, this.resourceID);
7350
7389
  }
7390
+ /**
7391
+ * Mostra o conteúdo passado em um Popup
7392
+ */
7351
7393
  async showPopUp(content) {
7394
+ this.clearPopUpContent();
7352
7395
  this._popUp.appendChild(content);
7353
- this._popUp["opened"] = true;
7396
+ this._popUp.opened = true;
7354
7397
  }
7398
+ /**
7399
+ * Fecha o popup, liberando o conteúdo.
7400
+ */
7355
7401
  async closePopUp() {
7356
- Array.from(this._popUp.children).forEach(c => {
7357
- this._popUp.removeChild(c);
7358
- });
7359
- this._popUp["opened"] = false;
7402
+ this.clearPopUpContent();
7403
+ this._popUp.opened = false;
7360
7404
  }
7405
+ /**
7406
+ * Verifica se a licença do cliente tem determinado opcional (produto)
7407
+ */
7361
7408
  async temOpcional(opcional) {
7362
7409
  const opts = opcional.split(",");
7363
7410
  return new Promise((resolve, reject) => {
@@ -7381,6 +7428,10 @@ const SnkApplication = class {
7381
7428
  });
7382
7429
  });
7383
7430
  }
7431
+ /**
7432
+ * Retorna a configuração de um recurso por service broker
7433
+ * Veja também o método "loadConfig"
7434
+ */
7384
7435
  async getConfig(key) {
7385
7436
  let payload = {
7386
7437
  "serviceName": "SystemUtilsSP.getConf",
@@ -7398,6 +7449,9 @@ const SnkApplication = class {
7398
7449
  .catch(error => reject(error));
7399
7450
  });
7400
7451
  }
7452
+ /**
7453
+ * Salva a configuração de determinado recurso.
7454
+ */
7401
7455
  async saveConfig(key, data) {
7402
7456
  let payload = {
7403
7457
  "serviceName": "SystemUtilsSP.saveConf",
@@ -7416,19 +7470,31 @@ const SnkApplication = class {
7416
7470
  .catch(error => reject(error));
7417
7471
  });
7418
7472
  }
7473
+ /**
7474
+ * Acessa informações de contexto "empurrados" na abertura da tela
7475
+ */
7419
7476
  async getAttributeFromHTMLWrapper(attribName) {
7420
7477
  return Promise.resolve(window[attribName]);
7421
7478
  }
7479
+ /**
7480
+ * Abre determinada tela, repassando pkObject
7481
+ */
7422
7482
  async openApp(resourceId, pkObject) {
7423
7483
  Workspace.openAppActivity(resourceId, pkObject);
7424
7484
  }
7485
+ /**
7486
+ * Cria o DataUnit a partir do nome da entidade.
7487
+ */
7425
7488
  async createDataunit(entityName) {
7426
7489
  return new Promise(resolve => {
7427
7490
  const dataUnit = this.dataUnitFetcher.getDataUnit(entityName, this.resourceID);
7428
7491
  dataUnit.loadMetadata().then(() => resolve(dataUnit));
7429
7492
  });
7430
7493
  }
7431
- async getOrCreateDataUnit(entityName, dataUnitName) {
7494
+ /**
7495
+ * Cria e armazena o DataUnit em um cache
7496
+ */
7497
+ async getDataUnit(entityName, dataUnitName) {
7432
7498
  return new Promise((resolve, reject) => {
7433
7499
  const dataUnit = this._duCache.get(dataUnitName);
7434
7500
  if (dataUnit) {
@@ -7444,30 +7510,57 @@ const SnkApplication = class {
7444
7510
  }
7445
7511
  });
7446
7512
  }
7513
+ /**
7514
+ * Retorna o resourceID da tela em questão.
7515
+ */
7447
7516
  async getResourceID() {
7448
7517
  return Promise.resolve(this.resourceID);
7449
7518
  }
7519
+ /**
7520
+ * Mostra o diálogo de alerta de acordo com os parâmetros passados.
7521
+ */
7450
7522
  async alert(title, message, icon, options) {
7451
7523
  return utils.ApplicationUtils.alert(title, message, icon, options);
7452
7524
  }
7525
+ /**
7526
+ * Mostra o diálogo de erro de acordo com os parâmetros passados.
7527
+ */
7453
7528
  async error(title, message, icon, options) {
7454
7529
  return utils.ApplicationUtils.error(title, message, icon, options);
7455
7530
  }
7531
+ /**
7532
+ * Exibe um diálogo de confirmação
7533
+ */
7456
7534
  async confirm(title, message, icon, critical, options) {
7457
7535
  return utils.ApplicationUtils.confirm(title, message, icon, critical, options);
7458
7536
  }
7537
+ /**
7538
+ * Mostra uma informação efêmera (de segundo plano).
7539
+ */
7459
7540
  async info(message, options) {
7460
7541
  return utils.ApplicationUtils.info(message, options);
7461
7542
  }
7543
+ /**
7544
+ * Busca a configuração de formulário.
7545
+ */
7462
7546
  async loadFormConfig(name) {
7463
7547
  return this.formConfigFetcher.loadFormConfig(name, this.resourceID);
7464
7548
  }
7549
+ /**
7550
+ * Busca a configuração de grade.
7551
+ */
7465
7552
  async loadGridConfig(name) {
7466
7553
  return this.gridConfigFetcher.getConfig(name, this.resourceID);
7467
7554
  }
7555
+ /**
7556
+ * Salva a configuração de grade.
7557
+ */
7468
7558
  async saveGridConfig(config) {
7469
7559
  return this.gridConfigFetcher.saveConfig(config, this.resourceID);
7470
7560
  }
7561
+ async getAuthList(_auth) {
7562
+ return await (new MGEAuthorization()).parseFromJSON(_auth);
7563
+ }
7471
7564
  get urlParams() {
7472
7565
  if (!this._urlParams) {
7473
7566
  this._urlParams = UrlUtils.getQueryParams(location.search);
@@ -7545,7 +7638,7 @@ const SnkApplication = class {
7545
7638
  pesquisaContent.searchLoader = (text) => this.pesquisaFetcher.loadAdvancedSearch(ENTITYNAME, text, criteria, searchOptions);
7546
7639
  pesquisaContent.selectItem = (option) => {
7547
7640
  accept(option);
7548
- this.cleanPopUpTitle();
7641
+ this.clearPopUpTitle();
7549
7642
  this.closePopUp();
7550
7643
  };
7551
7644
  this.setPopUpTitle(DESCRIPTIONENTITY);
@@ -7562,11 +7655,18 @@ const SnkApplication = class {
7562
7655
  accept(window['isDebugMode']);
7563
7656
  });
7564
7657
  }
7565
- cleanPopUpTitle() {
7566
- this._popUp['ezTitle'] = "";
7658
+ clearPopUpContent() {
7659
+ if (this._popUp) {
7660
+ Array.from(this._popUp.children).forEach(c => {
7661
+ this._popUp.removeChild(c);
7662
+ });
7663
+ }
7664
+ }
7665
+ clearPopUpTitle() {
7666
+ this._popUp.ezTitle = "";
7567
7667
  }
7568
7668
  setPopUpTitle(title) {
7569
- this._popUp['ezTitle'] = title;
7669
+ this._popUp.ezTitle = title;
7570
7670
  }
7571
7671
  componentWillLoad() {
7572
7672
  this._errorHandler = new SnkErrorHandler(this);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-ebe8245e.js');
5
+ const index = require('./index-532bcc28.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
8
 
@@ -11,12 +11,23 @@ const snkDataUnitCss = ".sc-snk-data-unit-h{display:flex;flex-direction:column;h
11
11
  const SnkDataUnit = class {
12
12
  constructor(hostRef) {
13
13
  index.registerInstance(this, hostRef);
14
- this.insertionMode = index.createEvent(this, "insertionMode", 7);
15
14
  this.dataStateChange = index.createEvent(this, "dataStateChange", 7);
16
15
  this.dataUnitReady = index.createEvent(this, "dataUnitReady", 7);
16
+ this.insertionMode = index.createEvent(this, "insertionMode", 7);
17
17
  this._onDataUnitResolve = [];
18
+ /**
19
+ * Determina quantas linhas são retornadas por página
20
+ */
21
+ this.pageSize = 150;
22
+ /**
23
+ * Quando ativada essa propriedade faz com que haja uma carga imediata no DataUnit
24
+ */
25
+ this.autoLoad = true;
18
26
  this._dataUnitObserver = (action) => {
19
- let msg = this.getActionInfo(action.type);
27
+ let msg;
28
+ if (!this.isTransitionAction(action.type)) {
29
+ msg = this.getActionInfo(action.type);
30
+ }
20
31
  if (msg) {
21
32
  utils.ApplicationUtils.info(msg);
22
33
  }
@@ -40,6 +51,38 @@ const SnkDataUnit = class {
40
51
  this.dataState = duState;
41
52
  };
42
53
  }
54
+ observePageSize() {
55
+ if (this.dataUnit) {
56
+ this.dataUnit.pageSize = this.pageSize;
57
+ }
58
+ }
59
+ observeDataUnitName(newValue, oldValue) {
60
+ if (oldValue != newValue) {
61
+ this.dataUnit = undefined;
62
+ this.dataUnitName = newValue;
63
+ this.loadDataUnit();
64
+ }
65
+ }
66
+ observeEntityName(newValue, oldValue) {
67
+ if (oldValue != newValue) {
68
+ this.dataUnit = undefined;
69
+ this.entityName = newValue;
70
+ this.loadDataUnit();
71
+ }
72
+ }
73
+ observeDataState(newValue, oldValue) {
74
+ if (oldValue != newValue) {
75
+ this.dataStateChange.emit(newValue);
76
+ }
77
+ }
78
+ observeDataUnit() {
79
+ this.dataUnitReady.emit(this.dataUnit);
80
+ }
81
+ /**
82
+ * Pode-se obter o dataUnit através desse método. Outra forma, é ouvir o evento de
83
+ *
84
+ * @returns dataUnit
85
+ */
43
86
  async getDataUnit() {
44
87
  return new Promise((resolve) => {
45
88
  if (this.dataUnit) {
@@ -80,7 +123,11 @@ const SnkDataUnit = class {
80
123
  .then((result) => resolve(result ? action : undefined));
81
124
  break;
82
125
  case core.Action.REMOVING_RECORDS:
83
- utils.ApplicationUtils.confirm(this.i18n("components.delete"), this.i18n("components.confirmRemoveRecord"), "delete", true, { btnConfirmDanger: true })
126
+ let msg = undefined;
127
+ if (this.messageBuilder) {
128
+ msg = this.messageBuilder(action.type, this.dataState, this.dataUnit);
129
+ }
130
+ utils.ApplicationUtils.confirm(this.i18n("components.delete"), msg || this.i18n("components.confirmRemoveRecord"), "delete", true, { btnConfirmDanger: true })
84
131
  .then((result) => resolve(result ? action : undefined));
85
132
  break;
86
133
  default:
@@ -88,48 +135,32 @@ const SnkDataUnit = class {
88
135
  }
89
136
  });
90
137
  }
138
+ isTransitionAction(action) {
139
+ switch (action) {
140
+ case core.Action.LOADING_METADATA:
141
+ case core.Action.LOADING_DATA:
142
+ case core.Action.SAVING_DATA:
143
+ case core.Action.REMOVING_RECORDS:
144
+ case core.Action.CHANGING_DATA:
145
+ return true;
146
+ default:
147
+ return false;
148
+ }
149
+ }
91
150
  getActionInfo(action) {
92
151
  if (this.messageBuilder) {
93
152
  return this.messageBuilder(action, this.dataState, this.dataUnit);
94
153
  }
95
- else {
96
- if (action === core.Action.EDITION_CANCELED) {
97
- return this.i18n("components.editionCanceled");
98
- }
99
- }
100
- }
101
- observePageSize() {
102
- if (this.dataUnit) {
103
- this.dataUnit.pageSize = this.pageSize;
104
- }
105
- }
106
- observeDataUnitName(newValue, oldValue) {
107
- if (oldValue != newValue) {
108
- this.dataUnit = undefined;
109
- this.dataUnitName = newValue;
110
- this.loadDataUnit();
111
- }
112
- }
113
- observeEntityName(newValue, oldValue) {
114
- if (oldValue != newValue) {
115
- this.dataUnit = undefined;
116
- this.entityName = newValue;
117
- this.loadDataUnit();
154
+ if (action === core.Action.EDITION_CANCELED) {
155
+ return this.i18n("components.editionCanceled");
118
156
  }
119
157
  }
120
- observeDataState(newValue, oldValue) {
121
- if (oldValue != newValue) {
122
- this.dataStateChange.emit(newValue);
123
- }
124
- }
125
- observeDataUnit() {
126
- this.dataUnitReady.emit(this.dataUnit);
127
- }
128
158
  async loadDataUnit() {
129
159
  if (!this.dataUnit) {
130
160
  const app = core.ApplicationContext.getContextValue("__SNK__APPLICATION__");
131
161
  if (app && this.entityName) {
132
- this.dataUnit = await app.getOrCreateDataUnit(this.entityName, this.dataUnitName);
162
+ const cacheName = this.dataUnitName ? this.dataUnitName : this.entityName;
163
+ this.dataUnit = await app.getDataUnit(this.entityName, cacheName);
133
164
  this.dataUnit.pageSize = this.pageSize;
134
165
  this.dataUnit.unsubscribe(this._dataUnitObserver);
135
166
  this.dataUnit.addInterceptor(this);
@@ -154,6 +185,9 @@ const SnkDataUnit = class {
154
185
  };
155
186
  return pt_br[key];
156
187
  }
188
+ //---------------------------------------------
189
+ // Lifecycle web component
190
+ //---------------------------------------------
157
191
  componentDidRender() {
158
192
  this.loadDataUnit();
159
193
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-ebe8245e.js');
5
+ const index = require('./index-532bcc28.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
 
8
8
  const snkFormCss = ".sc-snk-form-h{display:block}";
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-ebe8245e.js');
5
+ const index = require('./index-532bcc28.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const taskbarElements = require('./taskbar-elements-589a3744.js');
7
+ const taskbarElements = require('./taskbar-elements-9d47b416.js');
8
8
 
9
9
  const snkGridCss = ".sc-snk-grid-h{display:flex;height:100%;width:100%}";
10
10
 
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-ebe8245e.js');
5
+ const index = require('./index-532bcc28.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
 
8
- const snkPesquisaCss = ".sc-snk-pesquisa-h{--snk-pesquisa--font-size:var(--text--medium, 14px);--snk-pesquisa--font-family:var(--font-pattern, Arial);--snk-pesquisa--font-weight:var(--text-weight--medium, 400);--snk-pesquisa__records--color:var(--text--primary, #626e82);--snk-pesquisa__records--padding-vertical:var(--space--medium, 12px);--snk-pesquisa__content--padding-right:var(--space--small, 6px);--snk-pesquisa__content-scrollbar--background-color:var(--text--primary, #626e82);--snk-pesquisa__content-scrollbar--border-radius:var(--border--radius-medium, 12px);--snk-pesquisa__content-scrollbar--width:var(--space--medium, 12px) display: block;max-height:100%;height:100%;display:flex;flex-direction:column;overflow-y:auto}.snk-pesquisa.sc-snk-pesquisa{display:flex;flex-direction:column;height:100%}.snk-pesquisa__input.sc-snk-pesquisa{display:flex;width:100%;box-sizing:border-box;padding-top:4px;padding-right:4px}.snk-pesquisa__input-close.sc-snk-pesquisa{cursor:pointer}.snk-pesquisa__content.sc-snk-pesquisa{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding-right:var(--snk-pesquisa__content--padding-right)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar-track{background-color:#f0f2f5;border-radius:var(--snk-pesquisa__content-scrollbar--border-radius)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar-thumb{background-color:var(--snk-pesquisa__content-scrollbar--background-color);border-radius:var(--snk-pesquisa__content-scrollbar--border-radius)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar{background-color:#f0f2f5;width:var(--snk-pesquisa__content-scrollbar--width);max-width:var(--snk-pesquisa__content-scrollbar--width);min-width:var(--snk-pesquisa__content-scrollbar--width)}.snk-pesquisa__records.sc-snk-pesquisa{font-family:var(--snk-pesquisa--font-family);font-weight:var(--snk-pesquisa--font-weight);font-size:var(--snk-pesquisa--font-size);color:var(--snk-pesquisa__records--color);padding-bottom:var(--snk-pesquisa__records--padding-vertical);padding-top:var(--snk-pesquisa__records--padding-vertical)}";
8
+ const snkPesquisaCss = ".sc-snk-pesquisa-h{--snk-pesquisa--font-size:var(--text--medium, 14px);--snk-pesquisa--font-family:var(--font-pattern, Arial);--snk-pesquisa--font-weight:var(--text-weight--medium, 400);--snk-pesquisa__records--color:var(--text--primary, #626e82);--snk-pesquisa__records--padding-vertical:var(--space--medium, 12px);--snk-pesquisa__content--padding-right:var(--space--small, 6px);--snk-pesquisa__content-scrollbar--background-color:var(--title--primary, #2B3A54);--snk-pesquisa__content-scrollbar--border-radius:var(--border--radius-small, 6px);--snk-pesquisa__content-scrollbar--width:var(--space--medium, 12px);--snk-pesquisa__btn--color:var(--title--primary, #2B3A54);--snk-pesquisa__btn-disabled--color:var(--text--disable, #AFB6C0);--snk-pesquisa__btn-hover--color:var(--color--primary, #4e4e4e);max-height:100%;height:100%;display:flex;flex-direction:column;overflow-y:auto}.snk-pesquisa.sc-snk-pesquisa{display:flex;flex-direction:column;height:100%}.snk-pesquisa__input.sc-snk-pesquisa{display:flex;width:100%;box-sizing:border-box;padding-top:4px;padding-right:4px}.snk-pesquisa__input.sc-snk-pesquisa ez-icon.sc-snk-pesquisa{--ez-icon--color:inherit;font-weight:var(--text-weight--large, 600)}.snk-pesquisa__content.sc-snk-pesquisa{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding-right:var(--snk-pesquisa__content--padding-right)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar-track{background-color:#f0f2f5;border-radius:var(--snk-pesquisa__content-scrollbar--border-radius)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar-thumb{background-color:var(--snk-pesquisa__content-scrollbar--background-color);border-radius:var(--snk-pesquisa__content-scrollbar--border-radius)}.snk-pesquisa__content.sc-snk-pesquisa::-webkit-scrollbar{background-color:#f0f2f5;width:var(--snk-pesquisa__content-scrollbar--width);max-width:var(--snk-pesquisa__content-scrollbar--width);min-width:var(--snk-pesquisa__content-scrollbar--width)}.snk-pesquisa__records.sc-snk-pesquisa{font-family:var(--snk-pesquisa--font-family);font-weight:var(--snk-pesquisa--font-weight);font-size:var(--snk-pesquisa--font-size);color:var(--snk-pesquisa__records--color);padding-bottom:var(--snk-pesquisa__records--padding-vertical);padding-top:var(--snk-pesquisa__records--padding-vertical)}.snk-pesquisa__btn.sc-snk-pesquisa{outline:none;border:none;background:none;cursor:pointer;color:var(--snk-pesquisa__btn--color)}.snk-pesquisa__btn.sc-snk-pesquisa:disabled{cursor:unset;color:var(--snk-pesquisa__btn-disabled--color)}.snk-pesquisa__btn.sc-snk-pesquisa:disabled:hover{cursor:unset;color:var(--snk-pesquisa__btn-disabled--color)}.snk-pesquisa__btn.sc-snk-pesquisa:hover{color:var(--snk-pesquisa__btn-hover--color)}";
9
9
 
10
10
  const SnkPesquisa = class {
11
11
  constructor(hostRef) {
@@ -299,7 +299,10 @@ const SnkPesquisa = class {
299
299
  : 'Os resultados de sua pesquisa aparecerão aqui...';
300
300
  }
301
301
  render() {
302
- return (index.h(index.Host, null, index.h("div", { class: "snk-pesquisa" }, index.h("div", { class: "snk-pesquisa__input" }, index.h("ez-text-input", { label: "Buscar", class: "ez-margin-right--medium", canShowError: false, ref: (ref) => this._textInput = ref, onEzChange: (event) => this.onChangeValue(event), value: this.argument }, index.h("ez-icon", { slot: "leftIcon", iconName: "search" }), index.h("ez-icon", { class: "snk-pesquisa__input-close", slot: "rightIcon", iconName: "close", onClick: () => { this.clearSearch(); } })), index.h("ez-button", { class: "ez-button--primary", label: "Pesquisar", onClick: () => this.onClickSearch() })), index.h("label", { class: "snk-pesquisa__records" }, this.getMessageView()), index.h("div", { class: "snk-pesquisa__content" }, this._itemList && this._itemList.map((item) => {
302
+ var _a;
303
+ return (index.h(index.Host, null, index.h("div", { class: "snk-pesquisa" }, index.h("div", { class: "snk-pesquisa__input" }, index.h("ez-text-input", { label: "Buscar", class: "ez-margin-right--medium", canShowError: false, ref: (ref) => this._textInput = ref, onEzChange: (event) => this.onChangeValue(event), value: this.argument }, index.h("ez-icon", { slot: "leftIcon", iconName: "search" }), this.argument && ((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value)
304
+ ? index.h("button", { slot: "rightIcon", class: "snk-pesquisa__btn", onClick: () => this.clearSearch() }, index.h("ez-icon", { iconName: "close" }))
305
+ : undefined), index.h("ez-button", { class: "ez-button--primary", label: "Pesquisar", onClick: () => this.onClickSearch() })), index.h("label", { class: "snk-pesquisa__records" }, this.getMessageView()), index.h("div", { class: "snk-pesquisa__content" }, this._itemList && this._itemList.map((item) => {
303
306
  return (index.h("ez-card-item", { onEzClick: (event) => this.createOption(event.detail), item: item }));
304
307
  })))));
305
308
  }