@sankhyalabs/sankhyablocks 0.0.0-feat-dev-KB-81491.0 → 0.0.0-feat-dev-KB-83113.2

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 (78) hide show
  1. package/dist/cjs/{ClientSideExporterProvider-6b781452.js → ClientSideExporterProvider-cf64934a.js} +1 -1
  2. package/dist/cjs/{dataunit-fetcher-8291ac21.js → dataunit-fetcher-395ce370.js} +10 -161
  3. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +1 -1
  4. package/dist/cjs/snk-actions-button_5.cjs.entry.js +1 -1
  5. package/dist/cjs/snk-application.cjs.entry.js +2 -9
  6. package/dist/cjs/snk-attach.cjs.entry.js +2 -2
  7. package/dist/cjs/snk-crud.cjs.entry.js +12 -1
  8. package/dist/cjs/snk-data-exporter.cjs.entry.js +2 -2
  9. package/dist/cjs/{snk-data-unit-d75e6220.js → snk-data-unit-9f5afe76.js} +1 -1
  10. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  11. package/dist/cjs/snk-detail-view.cjs.entry.js +2 -2
  12. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +6 -6
  13. package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
  14. package/dist/cjs/snk-grid.cjs.entry.js +2 -2
  15. package/dist/cjs/{snk-guides-viewer-a029ff50.js → snk-guides-viewer-66637a88.js} +1 -1
  16. package/dist/cjs/snk-guides-viewer.cjs.entry.js +2 -2
  17. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  18. package/dist/cjs/snk-simple-crud.cjs.entry.js +2 -2
  19. package/dist/collection/components/snk-application/snk-application.js +1 -8
  20. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +2 -3
  21. package/dist/collection/components/snk-crud/snk-crud.js +11 -0
  22. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
  23. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  24. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +3 -3
  25. package/dist/collection/lib/dataUnit/InMemoryLoader.js +11 -101
  26. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +7 -53
  27. package/dist/components/dataunit-fetcher.js +29 -179
  28. package/dist/components/snk-application2.js +1 -8
  29. package/dist/components/snk-attach2.js +3 -3
  30. package/dist/components/snk-crud.js +11 -0
  31. package/dist/components/snk-filter-bar2.js +3 -3
  32. package/dist/components/snk-filter-item2.js +3 -3
  33. package/dist/components/snk-filter-number.js +1 -1
  34. package/dist/esm/{ClientSideExporterProvider-ff89c7e9.js → ClientSideExporterProvider-00e2a420.js} +1 -1
  35. package/dist/esm/{dataunit-fetcher-5247a708.js → dataunit-fetcher-a204d997.js} +12 -162
  36. package/dist/esm/pesquisa-grid_2.entry.js +1 -1
  37. package/dist/esm/snk-actions-button_5.entry.js +1 -1
  38. package/dist/esm/snk-application.entry.js +2 -9
  39. package/dist/esm/snk-attach.entry.js +3 -3
  40. package/dist/esm/snk-crud.entry.js +12 -1
  41. package/dist/esm/snk-data-exporter.entry.js +2 -2
  42. package/dist/esm/{snk-data-unit-bfd10c71.js → snk-data-unit-0432fe5e.js} +1 -1
  43. package/dist/esm/snk-data-unit.entry.js +2 -2
  44. package/dist/esm/snk-detail-view.entry.js +2 -2
  45. package/dist/esm/snk-filter-bar_4.entry.js +6 -6
  46. package/dist/esm/snk-filter-number.entry.js +1 -1
  47. package/dist/esm/snk-grid.entry.js +2 -2
  48. package/dist/esm/{snk-guides-viewer-fa45714d.js → snk-guides-viewer-bb0a36b4.js} +1 -1
  49. package/dist/esm/snk-guides-viewer.entry.js +2 -2
  50. package/dist/esm/snk-pesquisa.entry.js +1 -1
  51. package/dist/esm/snk-simple-crud.entry.js +2 -2
  52. package/dist/sankhyablocks/p-01ba23cd.entry.js +1 -0
  53. package/dist/sankhyablocks/p-0c6d3539.js +60 -0
  54. package/dist/sankhyablocks/{p-b0ff53b7.entry.js → p-315c5b94.entry.js} +1 -1
  55. package/dist/sankhyablocks/{p-40e323f9.js → p-326e166e.js} +1 -1
  56. package/dist/sankhyablocks/{p-655bdd60.js → p-3d37ebaf.js} +1 -1
  57. package/dist/sankhyablocks/{p-aa1a0f3e.entry.js → p-612fd6b4.entry.js} +1 -1
  58. package/dist/sankhyablocks/{p-f8db6795.entry.js → p-706658f1.entry.js} +1 -1
  59. package/dist/sankhyablocks/{p-d2d0535f.entry.js → p-7080d2d5.entry.js} +1 -1
  60. package/dist/sankhyablocks/{p-de9da2f2.js → p-847c94a1.js} +1 -1
  61. package/dist/sankhyablocks/{p-0b00d69c.entry.js → p-8bbeb319.entry.js} +1 -1
  62. package/dist/sankhyablocks/p-8bd65ed0.entry.js +1 -0
  63. package/dist/sankhyablocks/{p-e36f89d1.entry.js → p-96c61d0c.entry.js} +1 -1
  64. package/dist/sankhyablocks/{p-700a4cc3.entry.js → p-999acbcb.entry.js} +1 -1
  65. package/dist/sankhyablocks/{p-172848d4.entry.js → p-a43c5ded.entry.js} +1 -1
  66. package/dist/sankhyablocks/{p-c82deea7.entry.js → p-bcd87d30.entry.js} +1 -1
  67. package/dist/sankhyablocks/p-d7c2631f.entry.js +11 -0
  68. package/dist/sankhyablocks/{p-198c48c5.entry.js → p-edbe8e15.entry.js} +1 -1
  69. package/dist/sankhyablocks/{p-29d08446.entry.js → p-fe962463.entry.js} +1 -1
  70. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  71. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +3 -11
  72. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +3 -6
  73. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  74. package/package.json +1 -1
  75. package/dist/sankhyablocks/p-38179225.js +0 -60
  76. package/dist/sankhyablocks/p-79f823f3.entry.js +0 -1
  77. package/dist/sankhyablocks/p-b02e58fd.entry.js +0 -1
  78. package/dist/sankhyablocks/p-e10faff0.entry.js +0 -11
@@ -7,7 +7,7 @@ const index$1 = require('./index-e3e39724.js');
7
7
  require('./ISave-e91b70a7.js');
8
8
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
9
9
  const UnitMetadata = require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
10
- const dataunitFetcher = require('./dataunit-fetcher-8291ac21.js');
10
+ const dataunitFetcher = require('./dataunit-fetcher-395ce370.js');
11
11
  require('./filter-item-type.enum-a7ffdaa6.js');
12
12
  require('./form-config-fetcher-90126e4c.js');
13
13
  require('./constants-241934b3.js');
@@ -244,182 +244,32 @@ class PreloadManager {
244
244
  PreloadManager._repositories = new Map();
245
245
  PreloadManager._loadingStatus = new Map();
246
246
 
247
- function applyFilter(records, dataUnit, filters) {
248
- const columnFilters = utils.ColumnFilterManager.getColumnFilters(filters, "");
249
- if (!(columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.size)) {
250
- return records;
251
- }
252
- const filterFunction = utils.ColumnFilterManager.getFilterFunction(dataUnit, Array.from(columnFilters.values()));
253
- if (filterFunction == undefined) {
254
- return records;
255
- }
256
- return records.filter(filterFunction);
257
- }
258
- function buildLoadDataResponse(recordsIn, dataUnit, request) {
259
- let records = recordsIn ? [...recordsIn] : [];
260
- records = applyFilter(records, dataUnit, request.filters);
261
- records = applySorting(records, dataUnit, request.sort);
262
- const { offset, limit } = request;
263
- const paginationInfoBuilderParams = {
264
- recordsLength: records.length,
265
- offset,
266
- recordsPerPage: limit,
267
- };
268
- return Promise.resolve({
269
- records: getPagesByRecords(records, offset, limit),
270
- paginationInfo: dataUnit.pageSize ? buildPaginationInfo(paginationInfoBuilderParams) : undefined,
271
- });
272
- }
273
- function applySorting(records, dataUnit, sorting) {
274
- if (sorting == undefined || sorting.length == 0) {
275
- return records;
276
- }
277
- const sortingFunction = PreloadManager.getSortingFunction(dataUnit, sorting);
278
- if (sortingFunction == undefined) {
279
- return records;
280
- }
281
- return records.sort(sortingFunction);
282
- }
283
- function hasValidLimitAndOffset(offset, limit) {
284
- return offset >= 0 && limit >= 0;
285
- }
286
- function getPagesByRecords(records, offset = 0, limit = 0) {
287
- if (!records || !records.length || !hasValidLimitAndOffset(offset, limit))
288
- return [];
289
- if (limit === 0 && offset === 0)
290
- return records;
291
- return records.slice(offset, offset + limit);
292
- }
293
- function buildPaginationInfo({ recordsLength = 0, offset = 0, recordsPerPage = 0 }) {
294
- if (!recordsLength) {
295
- return { currentPage: 0, firstRecord: 0, lastRecord: 0, total: 0, hasMore: false };
296
- }
297
- const lastRecordIndex = offset + recordsPerPage;
298
- const lastRecord = lastRecordIndex ? Math.min(lastRecordIndex, recordsLength) : recordsLength;
299
- return {
300
- currentPage: recordsPerPage === 0 ? 0 : Math.ceil(offset / recordsPerPage),
301
- firstRecord: offset + 1,
302
- lastRecord: lastRecord,
303
- total: recordsLength,
304
- hasMore: lastRecord < recordsLength,
305
- };
306
- }
307
-
308
247
  class InMemoryLoader {
309
248
  constructor(metadata, records, config) {
310
- this.metadata = metadata;
311
- this.records = records;
312
- this._dataUnit = new core.DataUnit(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME);
313
- this._dataUnit.pageSize = 150;
314
- this._dataUnit.metadataLoader = () => this.metadaLoader();
315
- this._dataUnit.dataLoader = (dataUnit, request) => this.inMemoryLoader(dataUnit, request, this.getRecordsToLoad());
316
- this._dataUnit.saveLoader = (_dataUnit, changes) => this.saveLoader(_dataUnit, changes);
317
- this._dataUnit.removeLoader = (_dataUnit, recordIds) => this.removeLoader(_dataUnit, recordIds);
318
- this.dataUnit.loadMetadata().then(() => {
319
- if ((config === null || config === void 0 ? void 0 : config.autoLoad) !== false) {
320
- this.dataUnit.loadData();
321
- }
322
- });
323
- }
324
- getRecordsToLoad() {
325
- if (this._initialRecords == undefined && this.dataUnit.records.length > 0) {
326
- this._initialRecords = this.dataUnit.records;
327
- }
328
- const addedRecords = this.dataUnit.getAddedRecords();
329
- if (addedRecords) {
330
- return [...this._initialRecords, ...addedRecords];
331
- }
332
- return this._initialRecords;
249
+ this._dataUnitInMemoryLoader = new core.DataUnitInMemoryLoader(metadata, records, config);
333
250
  }
334
251
  get dataUnit() {
335
- return this._dataUnit;
252
+ return this._dataUnitInMemoryLoader.dataUnit;
336
253
  }
337
254
  get records() {
338
- return this.dataUnit.records;
339
- }
340
- static getConvertedValue(descriptor, strValue) {
341
- if (descriptor.dataType === core.DataType.BOOLEAN) {
342
- return strValue === "S";
343
- }
344
- if (descriptor.dataType === core.DataType.NUMBER) {
345
- return Number(strValue);
346
- }
347
- if (descriptor.dataType === core.DataType.DATE) {
348
- return core.DateUtils.strToDate(strValue, true);
349
- }
350
- if (descriptor.dataType === core.DataType.OBJECT) {
351
- return JSON.parse(strValue);
352
- }
353
- return strValue;
255
+ return this._dataUnitInMemoryLoader.records;
354
256
  }
355
257
  set records(records) {
356
- const columns = this._metadata ? new Map(this._metadata.fields.map(descriptor => [descriptor.name, descriptor])) : undefined;
357
- const newRecords = records === null || records === void 0 ? void 0 : records.map(record => {
358
- if (!record["__record__id__"]) {
359
- record["__record__id__"] = this.generateUniqueId();
360
- }
361
- if (columns != undefined) {
362
- for (const name in record) {
363
- const value = record[name];
364
- if (typeof value === "string" && columns.has(name)) {
365
- record[name] = InMemoryLoader.getConvertedValue(columns.get(name), value);
366
- }
367
- }
368
- }
369
- return record;
370
- });
371
- this._initialRecords = newRecords;
372
- if (this._dataUnit) {
373
- //Isso força o refresh internamente no datunit
374
- this._dataUnit.loadData();
375
- }
258
+ this._dataUnitInMemoryLoader.records = records;
376
259
  }
377
260
  get metadata() {
378
- return this._metadata;
261
+ return this._dataUnitInMemoryLoader.metadata;
379
262
  }
380
263
  set metadata(metadata) {
381
- this._metadata = metadata;
382
- if (this._dataUnit) {
383
- this._dataUnit.metadata = this._metadata;
384
- }
385
- }
386
- generateUniqueId() {
387
- return core.StringUtils.generateUUID();
388
- }
389
- inMemoryLoader(dataUnit, request, recordsIn) {
390
- return buildLoadDataResponse(recordsIn, dataUnit, request);
391
- }
392
- metadaLoader() {
393
- return Promise.resolve(this._metadata);
394
- }
395
- saveLoader(_dataUnit, changes) {
396
- return new Promise((resolve) => {
397
- let dataUnitRecords = [];
398
- changes.forEach(change => {
399
- let { record, updatingFields, operation } = change;
400
- const changedRecord = Object.assign(Object.assign({}, record), updatingFields);
401
- if (operation === core.ChangeOperation.INSERT ||
402
- operation === core.ChangeOperation.COPY) {
403
- changedRecord["__old__id__"] = record["__record__id__"];
404
- changedRecord["__record__id__"] = this.generateUniqueId();
405
- this.records.push(changedRecord);
406
- }
407
- else {
408
- const recordIndex = this.records.findIndex(r => r["__record__id__"] == changedRecord["__record__id__"]);
409
- this.records[recordIndex] = changedRecord;
410
- }
411
- dataUnitRecords.push(changedRecord);
412
- });
413
- resolve(dataUnitRecords);
414
- });
264
+ this._dataUnitInMemoryLoader.metadata = metadata;
415
265
  }
416
266
  removeLoader(_dataUnit, recordIds) {
417
- return new Promise((resolve) => {
418
- resolve(recordIds);
419
- });
267
+ return this._dataUnitInMemoryLoader.removeLoader(_dataUnit, recordIds);
268
+ }
269
+ static getConvertedValue(descriptor, strValue, dateFormat) {
270
+ return core.DataUnitInMemoryLoader.getConvertedValue(descriptor, strValue, dateFormat);
420
271
  }
421
272
  }
422
- InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME = "InMemoryDataUnit";
423
273
 
424
274
  function getRecordValue(record, fieldName) {
425
275
  var _a, _b;
@@ -1260,5 +1110,4 @@ exports.DataUnitFetcher = DataUnitFetcher;
1260
1110
  exports.DatasetStrategy = DatasetStrategy;
1261
1111
  exports.InMemoryLoader = InMemoryLoader;
1262
1112
  exports.PreloadManager = PreloadManager;
1263
- exports.buildLoadDataResponse = buildLoadDataResponse;
1264
1113
  exports.getRecordValue = getRecordValue;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-f9e81701.js');
6
- const dataunitFetcher = require('./dataunit-fetcher-8291ac21.js');
6
+ const dataunitFetcher = require('./dataunit-fetcher-395ce370.js');
7
7
  require('./DataFetcher-65879b2c.js');
8
8
  const pesquisaFetcher = require('./pesquisa-fetcher-5c583c93.js');
9
9
  require('@sankhyalabs/core');
@@ -11,7 +11,7 @@ require('./index-e3e39724.js');
11
11
  require('./ISave-e91b70a7.js');
12
12
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
14
- require('./dataunit-fetcher-8291ac21.js');
14
+ require('./dataunit-fetcher-395ce370.js');
15
15
  require('./filter-item-type.enum-a7ffdaa6.js');
16
16
  const formConfigFetcher = require('./form-config-fetcher-90126e4c.js');
17
17
  const constants = require('./constants-241934b3.js');
@@ -8,7 +8,7 @@ const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
8
  const ConfigStorage = require('./ConfigStorage-d024aec8.js');
9
9
  const DataFetcher = require('./DataFetcher-65879b2c.js');
10
10
  const authFetcher = require('./auth-fetcher-8480751c.js');
11
- const dataunitFetcher = require('./dataunit-fetcher-8291ac21.js');
11
+ const dataunitFetcher = require('./dataunit-fetcher-395ce370.js');
12
12
  const pesquisaFetcher = require('./pesquisa-fetcher-5c583c93.js');
13
13
  const SnkMessageBuilder = require('./SnkMessageBuilder-bae64d0d.js');
14
14
  const constants = require('./constants-241934b3.js');
@@ -544,14 +544,7 @@ const SnkApplication = class {
544
544
  const allAccess = {};
545
545
  allAccess['isSup'] = auths.isSup;
546
546
  Object.entries(authFetcher.AutorizationType).forEach((data) => {
547
- if (data[1] === authFetcher.AutorizationType.CLONE) {
548
- const insertPermission = auths.actions[authFetcher.AutorizationType.INSERT] || false;
549
- const clonePermission = auths.actions[authFetcher.AutorizationType.CLONE] || false;
550
- allAccess[data[0]] = insertPermission && clonePermission;
551
- }
552
- else {
553
- allAccess[data[0]] = auths.actions[data[1]] || false;
554
- }
547
+ allAccess[data[0]] = auths.actions[data[1]] || false;
555
548
  });
556
549
  resolve(allAccess);
557
550
  }).catch(error => reject(error));
@@ -8,7 +8,7 @@ const DataFetcher = require('./DataFetcher-65879b2c.js');
8
8
  require('./pesquisa-fetcher-5c583c93.js');
9
9
  require('./index-e3e39724.js');
10
10
  const ISave = require('./ISave-e91b70a7.js');
11
- const dataunitFetcher = require('./dataunit-fetcher-8291ac21.js');
11
+ const dataunitFetcher = require('./dataunit-fetcher-395ce370.js');
12
12
  require('./filter-item-type.enum-a7ffdaa6.js');
13
13
  require('./form-config-fetcher-90126e4c.js');
14
14
  const constants = require('./constants-241934b3.js');
@@ -464,7 +464,7 @@ class AttachFetcherDataUnitFactory {
464
464
  });
465
465
  this._records = records;
466
466
  }
467
- return dataunitFetcher.buildLoadDataResponse(this._records, dataUnit, request);
467
+ return core.DataUnitLoaderUtils.buildLoadDataResponse(this._records, dataUnit, request);
468
468
  }
469
469
  saveLoader(changes, fetcher) {
470
470
  return new Promise((resolve) => {
@@ -11,7 +11,7 @@ const index$1 = require('./index-e3e39724.js');
11
11
  require('./ISave-e91b70a7.js');
12
12
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
14
- require('./dataunit-fetcher-8291ac21.js');
14
+ require('./dataunit-fetcher-395ce370.js');
15
15
  require('./filter-item-type.enum-a7ffdaa6.js');
16
16
  require('./form-config-fetcher-90126e4c.js');
17
17
  const constants = require('./constants-241934b3.js');
@@ -317,6 +317,15 @@ const SnkCrud = class {
317
317
  .bind("F8", handleAddRecord.bind(this), { description: "Adiciona um novo registro.", element: this._element })
318
318
  .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
319
319
  .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
320
+ .bind("ctrl + .", () => {
321
+ if (dataUnit.getSelectionInfo().records.length === 0) {
322
+ return dataUnit.selectFirst();
323
+ }
324
+ return dataUnit.nextRecord();
325
+ }, {
326
+ description: "Avança para o próximo registro.", element: this._element
327
+ })
328
+ .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
320
329
  .bind("F5", async () => {
321
330
  const currentView = await this._viewStack.getSelectedIndex();
322
331
  if (constants.VIEW_MODE.GRID === currentView) {
@@ -344,6 +353,8 @@ const SnkCrud = class {
344
353
  .unbind("F8")
345
354
  .unbind("F9")
346
355
  .unbind("ctrl + F9")
356
+ .unbind("ctrl + .")
357
+ .unbind("ctrl + ,")
347
358
  .unbind("F5")
348
359
  .unbind("Escape");
349
360
  }
@@ -9,12 +9,12 @@ const IFetchDataExporterParams = require('./IFetchDataExporterParams-e78ec415.js
9
9
  const index = require('./index-e3e39724.js');
10
10
  const constants = require('./constants-241934b3.js');
11
11
  const DataFetcher = require('./DataFetcher-65879b2c.js');
12
- const snkDataUnit = require('./snk-data-unit-d75e6220.js');
12
+ const snkDataUnit = require('./snk-data-unit-9f5afe76.js');
13
13
  require('./pesquisa-fetcher-5c583c93.js');
14
14
  require('./ISave-e91b70a7.js');
15
15
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
16
16
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
17
- require('./dataunit-fetcher-8291ac21.js');
17
+ require('./dataunit-fetcher-395ce370.js');
18
18
  require('./filter-item-type.enum-a7ffdaa6.js');
19
19
  require('./form-config-fetcher-90126e4c.js');
20
20
  require('./PrintUtils-bcaeb82f.js');
@@ -4,7 +4,7 @@ const index = require('./index-f9e81701.js');
4
4
  const core = require('@sankhyalabs/core');
5
5
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
6
6
  const SnkMessageBuilder = require('./SnkMessageBuilder-bae64d0d.js');
7
- const dataunitFetcher = require('./dataunit-fetcher-8291ac21.js');
7
+ const dataunitFetcher = require('./dataunit-fetcher-395ce370.js');
8
8
  const DataType = require('@sankhyalabs/core/dist/dataunit/metadata/DataType');
9
9
  const GetSelectedRecordsIDsInfo = require('./GetSelectedRecordsIDsInfo-bd50caf1.js');
10
10
 
@@ -2,12 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const snkDataUnit = require('./snk-data-unit-d75e6220.js');
5
+ const snkDataUnit = require('./snk-data-unit-9f5afe76.js');
6
6
  require('./index-f9e81701.js');
7
7
  require('@sankhyalabs/core');
8
8
  require('@sankhyalabs/ezui/dist/collection/utils');
9
9
  require('./SnkMessageBuilder-bae64d0d.js');
10
- require('./dataunit-fetcher-8291ac21.js');
10
+ require('./dataunit-fetcher-395ce370.js');
11
11
  require('./DataFetcher-65879b2c.js');
12
12
  require('./PrintUtils-bcaeb82f.js');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
@@ -12,12 +12,12 @@ const index$1 = require('./index-e3e39724.js');
12
12
  require('./ISave-e91b70a7.js');
13
13
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
14
14
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
15
- require('./dataunit-fetcher-8291ac21.js');
15
+ require('./dataunit-fetcher-395ce370.js');
16
16
  require('./filter-item-type.enum-a7ffdaa6.js');
17
17
  require('./form-config-fetcher-90126e4c.js');
18
18
  const constants = require('./constants-241934b3.js');
19
19
  const taskbarElements = require('./taskbar-elements-7e19882d.js');
20
- const snkGuidesViewer = require('./snk-guides-viewer-a029ff50.js');
20
+ const snkGuidesViewer = require('./snk-guides-viewer-66637a88.js');
21
21
  const SnkMessageBuilder = require('./SnkMessageBuilder-bae64d0d.js');
22
22
  require('./ConfigStorage-d024aec8.js');
23
23
  require('./PrintUtils-bcaeb82f.js');
@@ -140,7 +140,7 @@ function buildNumber(item) {
140
140
  const variation = props.variation;
141
141
  if (variation === filterNumberVariation.FilterNumberVariation.INTERVAL) {
142
142
  const { start, end } = value !== null && value !== void 0 ? value : { start: 0, end: 0 };
143
- if (!isNaN(start) && !isNaN(end)) {
143
+ if (start && end) {
144
144
  return {
145
145
  name: id,
146
146
  expression: props.intervalExpression.fullfill,
@@ -150,7 +150,7 @@ function buildNumber(item) {
150
150
  ]
151
151
  };
152
152
  }
153
- if (!isNaN(start)) {
153
+ if (start) {
154
154
  return {
155
155
  name: id,
156
156
  expression: props.intervalExpression.onlystart,
@@ -159,7 +159,7 @@ function buildNumber(item) {
159
159
  ]
160
160
  };
161
161
  }
162
- if (!isNaN(end)) {
162
+ if (end) {
163
163
  return {
164
164
  name: id,
165
165
  expression: props.intervalExpression.onlyend,
@@ -946,13 +946,13 @@ const SnkFilterItem = class {
946
946
  }
947
947
  if (type === filterItemType_enum.FilterItemType.NUMBER && props.variation === filterNumberVariation.FilterNumberVariation.INTERVAL) {
948
948
  const { start, end } = value;
949
- if (!isNaN(start) && !isNaN(end)) {
949
+ if (start && end) {
950
950
  return this.getMessage('snkFilterBar.fullIntervalTooltip', { LABEL: label, START_LABEL: start, END_LABEL: end });
951
951
  }
952
- if (!isNaN(start)) {
952
+ if (start) {
953
953
  return `${label}: ${this.getMessage('snkFilterBar.onlyStartToltip')} ${Number(start)}`;
954
954
  }
955
- if (!isNaN(end)) {
955
+ if (end) {
956
956
  return `${label}: ${this.getMessage('snkFilterBar.onlyEndToltip')} ${Number(end)}`;
957
957
  }
958
958
  }
@@ -26,7 +26,7 @@ const SnkFilterPeriod = class {
26
26
  if (this.getVariation() === filterNumberVariation.FilterNumberVariation.INTERVAL) {
27
27
  const start = this._startInterval.value;
28
28
  const end = this._endInterval.value;
29
- this.value = (!isNaN(start) || !isNaN(end) ? { start, end } : undefined);
29
+ this.value = (start || end ? { start, end } : undefined);
30
30
  this.valueChanged.emit(this.value);
31
31
  return;
32
32
  }
@@ -9,14 +9,14 @@ const ConfigStorage = require('./ConfigStorage-d024aec8.js');
9
9
  const index$1 = require('./index-e3e39724.js');
10
10
  const fieldSearch = require('./field-search-68e34bf4.js');
11
11
  const index$2 = require('./index-102ba62d.js');
12
- const ClientSideExporterProvider = require('./ClientSideExporterProvider-6b781452.js');
12
+ const ClientSideExporterProvider = require('./ClientSideExporterProvider-cf64934a.js');
13
13
  const DataUnit = require('@sankhyalabs/core/dist/dataunit/DataUnit');
14
14
  require('./DataFetcher-65879b2c.js');
15
15
  require('./pesquisa-fetcher-5c583c93.js');
16
16
  require('./ISave-e91b70a7.js');
17
17
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
18
18
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
19
- require('./dataunit-fetcher-8291ac21.js');
19
+ require('./dataunit-fetcher-395ce370.js');
20
20
  require('./filter-item-type.enum-a7ffdaa6.js');
21
21
  require('./form-config-fetcher-90126e4c.js');
22
22
  require('./constants-241934b3.js');
@@ -13,7 +13,7 @@ const index$1 = require('./index-e3e39724.js');
13
13
  require('./ISave-e91b70a7.js');
14
14
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
15
15
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
16
- require('./dataunit-fetcher-8291ac21.js');
16
+ require('./dataunit-fetcher-395ce370.js');
17
17
  require('./filter-item-type.enum-a7ffdaa6.js');
18
18
  require('./form-config-fetcher-90126e4c.js');
19
19
  const DataUnit = require('@sankhyalabs/core/dist/dataunit/DataUnit');
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const snkGuidesViewer = require('./snk-guides-viewer-a029ff50.js');
5
+ const snkGuidesViewer = require('./snk-guides-viewer-66637a88.js');
6
6
  require('./index-f9e81701.js');
7
7
  require('@sankhyalabs/core');
8
8
  require('./SnkFormConfigManager-c11d8468.js');
@@ -21,7 +21,7 @@ require('./index-102ba62d.js');
21
21
  require('./pesquisa-fetcher-5c583c93.js');
22
22
  require('./ISave-e91b70a7.js');
23
23
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
24
- require('./dataunit-fetcher-8291ac21.js');
24
+ require('./dataunit-fetcher-395ce370.js');
25
25
  require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
26
26
  require('@sankhyalabs/core/dist/utils/SortingUtils');
27
27
  require('./ResourceIDUtils-5ff86aa7.js');
@@ -10,7 +10,7 @@ require('./index-e3e39724.js');
10
10
  require('./ISave-e91b70a7.js');
11
11
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
12
12
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
13
- require('./dataunit-fetcher-8291ac21.js');
13
+ require('./dataunit-fetcher-395ce370.js');
14
14
  require('./filter-item-type.enum-a7ffdaa6.js');
15
15
  require('./form-config-fetcher-90126e4c.js');
16
16
  require('./constants-241934b3.js');
@@ -9,12 +9,12 @@ const constants = require('./constants-241934b3.js');
9
9
  const taskbarElements = require('./taskbar-elements-7e19882d.js');
10
10
  require('./DataFetcher-65879b2c.js');
11
11
  require('./pesquisa-fetcher-5c583c93.js');
12
- const ClientSideExporterProvider = require('./ClientSideExporterProvider-6b781452.js');
12
+ const ClientSideExporterProvider = require('./ClientSideExporterProvider-cf64934a.js');
13
13
  const index$1 = require('./index-e3e39724.js');
14
14
  require('./ISave-e91b70a7.js');
15
15
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
16
16
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
17
- const dataunitFetcher = require('./dataunit-fetcher-8291ac21.js');
17
+ const dataunitFetcher = require('./dataunit-fetcher-395ce370.js');
18
18
  require('./filter-item-type.enum-a7ffdaa6.js');
19
19
  const formConfigFetcher = require('./form-config-fetcher-90126e4c.js');
20
20
  const fieldSearch = require('./field-search-68e34bf4.js');
@@ -176,14 +176,7 @@ export class SnkApplication {
176
176
  const allAccess = {};
177
177
  allAccess['isSup'] = auths.isSup;
178
178
  Object.entries(AutorizationType).forEach((data) => {
179
- if (data[1] === AutorizationType.CLONE) {
180
- const insertPermission = auths.actions[AutorizationType.INSERT] || false;
181
- const clonePermission = auths.actions[AutorizationType.CLONE] || false;
182
- allAccess[data[0]] = insertPermission && clonePermission;
183
- }
184
- else {
185
- allAccess[data[0]] = auths.actions[data[1]] || false;
186
- }
179
+ allAccess[data[0]] = auths.actions[data[1]] || false;
187
180
  });
188
181
  resolve(allAccess);
189
182
  }).catch(error => reject(error));
@@ -1,9 +1,8 @@
1
- import { Action, ApplicationContext, StringUtils, } from '@sankhyalabs/core';
1
+ import { Action, ApplicationContext, DataUnitLoaderUtils, StringUtils, } from '@sankhyalabs/core';
2
2
  import { SaveErrorsEnum } from '../../../../../lib/http/data-fetcher/fetchers/AttachFetcher/interfaces';
3
3
  import { AutorizationType } from '../../../../../lib/http/data-fetcher/fetchers/auth-fetcher';
4
4
  import { attachFetcherMetadataBuilder } from '../../builder/attach-crud-config.builder';
5
5
  import { VIEW_MODE } from '../../../../../lib/utils/constants';
6
- import { buildLoadDataResponse } from '../../../../../lib/dataUnit/dataUnitInMemoryUtils';
7
6
  const SERVICE_LOAD = "Attach.load";
8
7
  export class AttachFetcherDataUnitFactory {
9
8
  constructor(getMessage) {
@@ -49,7 +48,7 @@ export class AttachFetcherDataUnitFactory {
49
48
  });
50
49
  this._records = records;
51
50
  }
52
- return buildLoadDataResponse(this._records, dataUnit, request);
51
+ return DataUnitLoaderUtils.buildLoadDataResponse(this._records, dataUnit, request);
53
52
  }
54
53
  saveLoader(changes, fetcher) {
55
54
  return new Promise((resolve) => {
@@ -297,6 +297,15 @@ export class SnkCrud {
297
297
  .bind("F8", handleAddRecord.bind(this), { description: "Adiciona um novo registro.", element: this._element })
298
298
  .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
299
299
  .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
300
+ .bind("ctrl + .", () => {
301
+ if (dataUnit.getSelectionInfo().records.length === 0) {
302
+ return dataUnit.selectFirst();
303
+ }
304
+ return dataUnit.nextRecord();
305
+ }, {
306
+ description: "Avança para o próximo registro.", element: this._element
307
+ })
308
+ .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
300
309
  .bind("F5", async () => {
301
310
  const currentView = await this._viewStack.getSelectedIndex();
302
311
  if (VIEW_MODE.GRID === currentView) {
@@ -324,6 +333,8 @@ export class SnkCrud {
324
333
  .unbind("F8")
325
334
  .unbind("F9")
326
335
  .unbind("ctrl + F9")
336
+ .unbind("ctrl + .")
337
+ .unbind("ctrl + ,")
327
338
  .unbind("F5")
328
339
  .unbind("Escape");
329
340
  }
@@ -125,7 +125,7 @@ function buildNumber(item) {
125
125
  const variation = props.variation;
126
126
  if (variation === FilterNumberVariation.INTERVAL) {
127
127
  const { start, end } = value !== null && value !== void 0 ? value : { start: 0, end: 0 };
128
- if (!isNaN(start) && !isNaN(end)) {
128
+ if (start && end) {
129
129
  return {
130
130
  name: id,
131
131
  expression: props.intervalExpression.fullfill,
@@ -135,7 +135,7 @@ function buildNumber(item) {
135
135
  ]
136
136
  };
137
137
  }
138
- if (!isNaN(start)) {
138
+ if (start) {
139
139
  return {
140
140
  name: id,
141
141
  expression: props.intervalExpression.onlystart,
@@ -144,7 +144,7 @@ function buildNumber(item) {
144
144
  ]
145
145
  };
146
146
  }
147
- if (!isNaN(end)) {
147
+ if (end) {
148
148
  return {
149
149
  name: id,
150
150
  expression: props.intervalExpression.onlyend,
@@ -19,7 +19,7 @@ export class SnkFilterPeriod {
19
19
  if (this.getVariation() === FilterNumberVariation.INTERVAL) {
20
20
  const start = this._startInterval.value;
21
21
  const end = this._endInterval.value;
22
- this.value = (!isNaN(start) || !isNaN(end) ? { start, end } : undefined);
22
+ this.value = (start || end ? { start, end } : undefined);
23
23
  this.valueChanged.emit(this.value);
24
24
  return;
25
25
  }
@@ -201,13 +201,13 @@ export class SnkFilterItem {
201
201
  }
202
202
  if (type === FilterItemType.NUMBER && props.variation === FilterNumberVariation.INTERVAL) {
203
203
  const { start, end } = value;
204
- if (!isNaN(start) && !isNaN(end)) {
204
+ if (start && end) {
205
205
  return this.getMessage('snkFilterBar.fullIntervalTooltip', { LABEL: label, START_LABEL: start, END_LABEL: end });
206
206
  }
207
- if (!isNaN(start)) {
207
+ if (start) {
208
208
  return `${label}: ${this.getMessage('snkFilterBar.onlyStartToltip')} ${Number(start)}`;
209
209
  }
210
- if (!isNaN(end)) {
210
+ if (end) {
211
211
  return `${label}: ${this.getMessage('snkFilterBar.onlyEndToltip')} ${Number(end)}`;
212
212
  }
213
213
  }