@sankhyalabs/sankhyablocks 8.8.5 → 8.8.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 (55) hide show
  1. package/dist/cjs/{PersonalizedFilterUtils-1aeb625d.js → PersonalizedFilterUtils-2f7823fc.js} +11 -4
  2. package/dist/cjs/{dataunit-fetcher-af1c655d.js → dataunit-fetcher-55f98541.js} +3 -0
  3. package/dist/cjs/snk-actions-button.cjs.entry.js +1 -1
  4. package/dist/cjs/snk-application.cjs.entry.js +1 -1
  5. package/dist/cjs/snk-attach.cjs.entry.js +1 -1
  6. package/dist/cjs/snk-crud.cjs.entry.js +1 -1
  7. package/dist/cjs/snk-detail-view.cjs.entry.js +2 -2
  8. package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +2 -2
  9. package/dist/cjs/snk-filter-bar.cjs.entry.js +1 -1
  10. package/dist/cjs/snk-filter-detail.cjs.entry.js +1 -1
  11. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +1 -1
  12. package/dist/cjs/snk-filter-modal.cjs.entry.js +1 -1
  13. package/dist/cjs/{snk-guides-viewer-7d6ad1c8.js → snk-guides-viewer-6dfeec5c.js} +1 -1
  14. package/dist/cjs/snk-guides-viewer.cjs.entry.js +2 -2
  15. package/dist/cjs/snk-personalized-filter.cjs.entry.js +1 -1
  16. package/dist/cjs/snk-simple-crud.cjs.entry.js +1 -1
  17. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +13 -4
  18. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +3 -0
  19. package/dist/components/PersonalizedFilterUtils.js +10 -3
  20. package/dist/components/dataunit-fetcher.js +3 -0
  21. package/dist/esm/{PersonalizedFilterUtils-75fb0106.js → PersonalizedFilterUtils-49a5dcb7.js} +11 -4
  22. package/dist/esm/{dataunit-fetcher-d5e6cc8c.js → dataunit-fetcher-6725cb0e.js} +3 -0
  23. package/dist/esm/snk-actions-button.entry.js +1 -1
  24. package/dist/esm/snk-application.entry.js +1 -1
  25. package/dist/esm/snk-attach.entry.js +1 -1
  26. package/dist/esm/snk-crud.entry.js +1 -1
  27. package/dist/esm/snk-detail-view.entry.js +2 -2
  28. package/dist/esm/snk-filter-advanced-mode_2.entry.js +2 -2
  29. package/dist/esm/snk-filter-bar.entry.js +1 -1
  30. package/dist/esm/snk-filter-detail.entry.js +1 -1
  31. package/dist/esm/snk-filter-field-search_2.entry.js +1 -1
  32. package/dist/esm/snk-filter-modal.entry.js +1 -1
  33. package/dist/esm/{snk-guides-viewer-cd6f8ff7.js → snk-guides-viewer-8b47f38c.js} +1 -1
  34. package/dist/esm/snk-guides-viewer.entry.js +2 -2
  35. package/dist/esm/snk-personalized-filter.entry.js +1 -1
  36. package/dist/esm/snk-simple-crud.entry.js +1 -1
  37. package/dist/sankhyablocks/{p-05f6c9dc.entry.js → p-0383e477.entry.js} +1 -1
  38. package/dist/sankhyablocks/{p-5b1b2c33.js → p-08fca9d1.js} +1 -1
  39. package/dist/sankhyablocks/{p-8a08eda7.entry.js → p-2eb547d9.entry.js} +1 -1
  40. package/dist/sankhyablocks/{p-5c1aacc7.js → p-43b2aad5.js} +1 -1
  41. package/dist/sankhyablocks/{p-a675e706.entry.js → p-47d20cb0.entry.js} +1 -1
  42. package/dist/sankhyablocks/{p-f661e804.entry.js → p-4efe1a8a.entry.js} +1 -1
  43. package/dist/sankhyablocks/{p-056cb6c4.entry.js → p-651b4f89.entry.js} +1 -1
  44. package/dist/sankhyablocks/{p-70150991.entry.js → p-6d765e32.entry.js} +1 -1
  45. package/dist/sankhyablocks/{p-7f4435e2.js → p-73407f35.js} +1 -1
  46. package/dist/sankhyablocks/{p-7a85dcd3.entry.js → p-7749c662.entry.js} +1 -1
  47. package/dist/sankhyablocks/{p-0885ed3c.entry.js → p-c0931902.entry.js} +1 -1
  48. package/dist/sankhyablocks/{p-989937ee.entry.js → p-c606c748.entry.js} +1 -1
  49. package/dist/sankhyablocks/{p-25c5428f.entry.js → p-c78a80ae.entry.js} +1 -1
  50. package/dist/sankhyablocks/{p-0814adec.entry.js → p-cab6a969.entry.js} +1 -1
  51. package/dist/sankhyablocks/{p-5d04ae42.entry.js → p-e11c5038.entry.js} +1 -1
  52. package/dist/sankhyablocks/{p-767db365.entry.js → p-e60325bc.entry.js} +1 -1
  53. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  54. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.d.ts +1 -1
  55. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  const core = require('@sankhyalabs/core');
4
- const index = require('./index-c5771aba.js');
5
4
  const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
5
+ const index = require('./index-c5771aba.js');
6
6
 
7
7
  class PersonalizedFilterUtils {
8
8
  /**
@@ -188,9 +188,16 @@ class PersonalizedFilterUtils {
188
188
  const activeFilters = (config.groupedItems || []).filter(item => item.visible);
189
189
  const allFilterWithVariableParams = activeFilters.filter(activeFilter => { var _a, _b, _c; return !!((_c = (_b = (_a = activeFilter.props) === null || _a === void 0 ? void 0 : _a.personalizedFilter) === null || _b === void 0 ? void 0 : _b.parameters) === null || _c === void 0 ? void 0 : _c.length); });
190
190
  const allParamsWithValues = allFilterWithVariableParams.flatMap(filter => { var _a; return (_a = filter.props.personalizedFilter) === null || _a === void 0 ? void 0 : _a.parameters; });
191
- const valuesFromParams = allFilterWithVariableParams.flatMap(filter => {
192
- const isBoolean = filter.props.personalizedFilter.parameters[0].dataType === core.DataType.BOOLEAN;
193
- return isBoolean ? false : filter.value;
191
+ const valuesFromParams = allFilterWithVariableParams.flatMap((filter) => {
192
+ return filter.props.personalizedFilter.parameters.flatMap((param, index) => {
193
+ if (!filter.value) {
194
+ return null;
195
+ }
196
+ if (filter.value[index] === undefined && param.dataType === core.DataType.BOOLEAN) {
197
+ return false;
198
+ }
199
+ return filter.value[index];
200
+ });
194
201
  });
195
202
  valuesArray = this.getNormalizedValue(allParamsWithValues, valuesArray);
196
203
  isValid = allParamsWithValues.length === valuesFromParams.length && valuesFromParams.every(value => value != null);
@@ -249,6 +249,9 @@ class DatasetStrategy {
249
249
  if (sorting != undefined && sorting.length !== 0) {
250
250
  txProperties["__DATA_UNIT_ADAPTER__[sorting]"] = JSON.stringify(sorting);
251
251
  }
252
+ if (request.parentRecordId != undefined) {
253
+ txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
254
+ }
252
255
  return txProperties;
253
256
  }
254
257
  processRecords(dataUnit, fields, responseRecords) {
@@ -11,7 +11,7 @@ require('./index-0e663819.js');
11
11
  require('./ISave-d68ce3cd.js');
12
12
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
14
- require('./dataunit-fetcher-af1c655d.js');
14
+ require('./dataunit-fetcher-55f98541.js');
15
15
  require('./PreloadManager-84466da6.js');
16
16
  require('./filter-item-type.enum-aa823a00.js');
17
17
  require('./form-config-fetcher-17775a75.js');
@@ -8,7 +8,7 @@ const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
8
  const ConfigStorage = require('./ConfigStorage-c15716fd.js');
9
9
  const DataFetcher = require('./DataFetcher-713f0749.js');
10
10
  const authFetcher = require('./auth-fetcher-555ff856.js');
11
- const dataunitFetcher = require('./dataunit-fetcher-af1c655d.js');
11
+ const dataunitFetcher = require('./dataunit-fetcher-55f98541.js');
12
12
  const pesquisaFetcher = require('./pesquisa-fetcher-34922b83.js');
13
13
  const SnkMessageBuilder = require('./SnkMessageBuilder-dbc8d14e.js');
14
14
  require('./form-config-fetcher-17775a75.js');
@@ -7,7 +7,7 @@ const core = require('@sankhyalabs/core');
7
7
  const DataFetcher = require('./DataFetcher-713f0749.js');
8
8
  const ISave = require('./ISave-d68ce3cd.js');
9
9
  const constants = require('./constants-d187e03e.js');
10
- const dataunitFetcher = require('./dataunit-fetcher-af1c655d.js');
10
+ const dataunitFetcher = require('./dataunit-fetcher-55f98541.js');
11
11
  const taskbarElements = require('./taskbar-elements-39949c7a.js');
12
12
  require('./_commonjsHelpers-537d719a.js');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
@@ -11,7 +11,7 @@ const index$1 = require('./index-0e663819.js');
11
11
  require('./ISave-d68ce3cd.js');
12
12
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
13
13
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
14
- require('./dataunit-fetcher-af1c655d.js');
14
+ require('./dataunit-fetcher-55f98541.js');
15
15
  require('./PreloadManager-84466da6.js');
16
16
  require('./filter-item-type.enum-aa823a00.js');
17
17
  require('./form-config-fetcher-17775a75.js');
@@ -12,13 +12,13 @@ const index$1 = require('./index-0e663819.js');
12
12
  require('./ISave-d68ce3cd.js');
13
13
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
14
14
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
15
- require('./dataunit-fetcher-af1c655d.js');
15
+ require('./dataunit-fetcher-55f98541.js');
16
16
  require('./PreloadManager-84466da6.js');
17
17
  require('./filter-item-type.enum-aa823a00.js');
18
18
  require('./form-config-fetcher-17775a75.js');
19
19
  const taskbarElements = require('./taskbar-elements-39949c7a.js');
20
20
  const constants = require('./constants-d187e03e.js');
21
- const snkGuidesViewer = require('./snk-guides-viewer-7d6ad1c8.js');
21
+ const snkGuidesViewer = require('./snk-guides-viewer-6dfeec5c.js');
22
22
  const SnkMessageBuilder = require('./SnkMessageBuilder-dbc8d14e.js');
23
23
  require('./ConfigStorage-c15716fd.js');
24
24
  require('./_commonjsHelpers-537d719a.js');
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-f9e81701.js');
6
- const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-1aeb625d.js');
6
+ const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-2f7823fc.js');
7
7
  require('@sankhyalabs/core');
8
- require('./index-c5771aba.js');
9
8
  require('./filter-item-type.enum-aa823a00.js');
9
+ require('./index-c5771aba.js');
10
10
 
11
11
  const snkFilterAdvancedModeCss = ".sc-snk-filter-advanced-mode-h{display:block;--snk-personalized-filter--title--color:var(--title--primary, #2B3A54)}.snk-filter-advanced-mode__title.sc-snk-filter-advanced-mode{color:var(--snk-personalized-filter--title--color)}";
12
12
 
@@ -10,7 +10,7 @@ const DataType = require('@sankhyalabs/core/dist/dataunit/metadata/DataType');
10
10
  const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
11
11
  const index = require('./index-c5771aba.js');
12
12
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
13
- const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-1aeb625d.js');
13
+ const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-2f7823fc.js');
14
14
  require('./form-config-fetcher-17775a75.js');
15
15
  require('./DataFetcher-713f0749.js');
16
16
  require('./_commonjsHelpers-537d719a.js');
@@ -7,7 +7,7 @@ const utils = require('@sankhyalabs/ezui/dist/collection/utils');
7
7
  const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
8
8
  const core = require('@sankhyalabs/core');
9
9
  const presentationMode = require('./presentationMode-52ec3bdd.js');
10
- const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-1aeb625d.js');
10
+ const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-2f7823fc.js');
11
11
  require('./index-c5771aba.js');
12
12
 
13
13
  const SnkFilterDetail = class {
@@ -7,7 +7,7 @@ const index$1 = require('./index-8d94b7e0.js');
7
7
  const core = require('@sankhyalabs/core');
8
8
  const ezModalContainer = require('@sankhyalabs/ezui/dist/collection/components/ez-modal-container');
9
9
  const index$2 = require('./index-c5771aba.js');
10
- const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-1aeb625d.js');
10
+ const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-2f7823fc.js');
11
11
  require('./filter-item-type.enum-aa823a00.js');
12
12
 
13
13
  const ICON_MODES = {
@@ -8,7 +8,7 @@ const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
8
  const filterType_enum = require('./filter-type.enum-b14ce507.js');
9
9
  const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
10
10
  const core = require('@sankhyalabs/core');
11
- const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-1aeb625d.js');
11
+ const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-2f7823fc.js');
12
12
  require('./index-c5771aba.js');
13
13
 
14
14
  const snkFilterModalCss = "ez-modal{--ez-modal-content-padding:24px 12px}.snk-filter-modal__container{width:344px;max-width:344px;min-width:344px;overflow:hidden}.snk-filter-modal__content{display:flex;flex-direction:column;gap:var(--space--medium, 12px);padding-right:var(--space--3xs, 4px)}.snk-filter-modal__collapsible-box{border:var(--border--small, 1px solid) var(--color--strokes, #DCE0E8);border-radius:var(--border--radius-medium);padding:var(--space--medium, 12px) var(--space--small, 6px)}.snk-filter-modal__rendered-items{max-height:760px;overflow-x:clip;overflow-y:auto}.snk-filter-modal__rendered-items::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}";
@@ -13,7 +13,7 @@ const index$1 = require('./index-0e663819.js');
13
13
  require('./ISave-d68ce3cd.js');
14
14
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
15
15
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
16
- require('./dataunit-fetcher-af1c655d.js');
16
+ require('./dataunit-fetcher-55f98541.js');
17
17
  require('./PreloadManager-84466da6.js');
18
18
  require('./filter-item-type.enum-aa823a00.js');
19
19
  require('./form-config-fetcher-17775a75.js');
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const snkGuidesViewer = require('./snk-guides-viewer-7d6ad1c8.js');
5
+ const snkGuidesViewer = require('./snk-guides-viewer-6dfeec5c.js');
6
6
  require('./index-f9e81701.js');
7
7
  require('@sankhyalabs/core');
8
8
  require('./SnkFormConfigManager-29101e20.js');
@@ -22,7 +22,7 @@ require('./constants-d187e03e.js');
22
22
  require('./pesquisa-fetcher-34922b83.js');
23
23
  require('./ISave-d68ce3cd.js');
24
24
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
25
- require('./dataunit-fetcher-af1c655d.js');
25
+ require('./dataunit-fetcher-55f98541.js');
26
26
  require('./PreloadManager-84466da6.js');
27
27
  require('@sankhyalabs/ezui/dist/collection/components/ez-grid/utils');
28
28
  require('./ResourceIDUtils-5ff86aa7.js');
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-f9e81701.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-1aeb625d.js');
7
+ const PersonalizedFilterUtils = require('./PersonalizedFilterUtils-2f7823fc.js');
8
8
  const ConfigStorage = require('./ConfigStorage-c15716fd.js');
9
9
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
10
10
  const index$1 = require('./index-c5771aba.js');
@@ -12,7 +12,7 @@ const index$1 = require('./index-0e663819.js');
12
12
  require('./ISave-d68ce3cd.js');
13
13
  require('@sankhyalabs/ezui/dist/collection/utils/constants');
14
14
  require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
15
- const dataunitFetcher = require('./dataunit-fetcher-af1c655d.js');
15
+ const dataunitFetcher = require('./dataunit-fetcher-55f98541.js');
16
16
  require('./PreloadManager-84466da6.js');
17
17
  require('./filter-item-type.enum-aa823a00.js');
18
18
  require('./form-config-fetcher-17775a75.js');
@@ -1,6 +1,6 @@
1
1
  import { DataType, DateUtils, NumberUtils, UserInterface } from "@sankhyalabs/core";
2
- import { FilterOperand } from "../../../interfaces/index";
3
2
  import FilterItemType from "../../../../snk-filter-bar/filter-item/filter-item-type.enum";
3
+ import { FilterOperand } from "../../../interfaces/index";
4
4
  export class PersonalizedFilterUtils {
5
5
  /**
6
6
  * Cria uma expressão de filtro a partir de um IExpressionItem.
@@ -185,9 +185,18 @@ export class PersonalizedFilterUtils {
185
185
  const activeFilters = (config.groupedItems || []).filter(item => item.visible);
186
186
  const allFilterWithVariableParams = activeFilters.filter(activeFilter => { var _a, _b, _c; return !!((_c = (_b = (_a = activeFilter.props) === null || _a === void 0 ? void 0 : _a.personalizedFilter) === null || _b === void 0 ? void 0 : _b.parameters) === null || _c === void 0 ? void 0 : _c.length); });
187
187
  const allParamsWithValues = allFilterWithVariableParams.flatMap(filter => { var _a; return (_a = filter.props.personalizedFilter) === null || _a === void 0 ? void 0 : _a.parameters; });
188
- const valuesFromParams = allFilterWithVariableParams.flatMap(filter => {
189
- const isBoolean = filter.props.personalizedFilter.parameters[0].dataType === DataType.BOOLEAN;
190
- return isBoolean ? false : filter.value;
188
+ const valuesFromParams = allFilterWithVariableParams.flatMap((filter) => {
189
+ return filter.props.personalizedFilter.parameters.flatMap((param, index) => {
190
+ if (!filter.value) {
191
+ return null;
192
+ }
193
+ ;
194
+ if (filter.value[index] === undefined && param.dataType === DataType.BOOLEAN) {
195
+ return false;
196
+ }
197
+ ;
198
+ return filter.value[index];
199
+ });
191
200
  });
192
201
  valuesArray = this.getNormalizedValue(allParamsWithValues, valuesArray);
193
202
  isValid = allParamsWithValues.length === valuesFromParams.length && valuesFromParams.every(value => value != null);
@@ -103,6 +103,9 @@ export class DatasetStrategy {
103
103
  if (sorting != undefined && sorting.length !== 0) {
104
104
  txProperties["__DATA_UNIT_ADAPTER__[sorting]"] = JSON.stringify(sorting);
105
105
  }
106
+ if (request.parentRecordId != undefined) {
107
+ txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
108
+ }
106
109
  return txProperties;
107
110
  }
108
111
  processRecords(dataUnit, fields, responseRecords) {
@@ -228,9 +228,16 @@ class PersonalizedFilterUtils {
228
228
  const activeFilters = (config.groupedItems || []).filter(item => item.visible);
229
229
  const allFilterWithVariableParams = activeFilters.filter(activeFilter => { var _a, _b, _c; return !!((_c = (_b = (_a = activeFilter.props) === null || _a === void 0 ? void 0 : _a.personalizedFilter) === null || _b === void 0 ? void 0 : _b.parameters) === null || _c === void 0 ? void 0 : _c.length); });
230
230
  const allParamsWithValues = allFilterWithVariableParams.flatMap(filter => { var _a; return (_a = filter.props.personalizedFilter) === null || _a === void 0 ? void 0 : _a.parameters; });
231
- const valuesFromParams = allFilterWithVariableParams.flatMap(filter => {
232
- const isBoolean = filter.props.personalizedFilter.parameters[0].dataType === DataType.BOOLEAN;
233
- return isBoolean ? false : filter.value;
231
+ const valuesFromParams = allFilterWithVariableParams.flatMap((filter) => {
232
+ return filter.props.personalizedFilter.parameters.flatMap((param, index) => {
233
+ if (!filter.value) {
234
+ return null;
235
+ }
236
+ if (filter.value[index] === undefined && param.dataType === DataType.BOOLEAN) {
237
+ return false;
238
+ }
239
+ return filter.value[index];
240
+ });
234
241
  });
235
242
  valuesArray = this.getNormalizedValue(allParamsWithValues, valuesArray);
236
243
  isValid = allParamsWithValues.length === valuesFromParams.length && valuesFromParams.every(value => value != null);
@@ -625,6 +625,9 @@ class DatasetStrategy {
625
625
  if (sorting != undefined && sorting.length !== 0) {
626
626
  txProperties["__DATA_UNIT_ADAPTER__[sorting]"] = JSON.stringify(sorting);
627
627
  }
628
+ if (request.parentRecordId != undefined) {
629
+ txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
630
+ }
628
631
  return txProperties;
629
632
  }
630
633
  processRecords(dataUnit, fields, responseRecords) {
@@ -1,6 +1,6 @@
1
1
  import { DataType, NumberUtils, DateUtils, UserInterface } from '@sankhyalabs/core';
2
- import { F as FilterOperand } from './index-ae591a44.js';
3
2
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
3
+ import { F as FilterOperand } from './index-ae591a44.js';
4
4
 
5
5
  class PersonalizedFilterUtils {
6
6
  /**
@@ -186,9 +186,16 @@ class PersonalizedFilterUtils {
186
186
  const activeFilters = (config.groupedItems || []).filter(item => item.visible);
187
187
  const allFilterWithVariableParams = activeFilters.filter(activeFilter => { var _a, _b, _c; return !!((_c = (_b = (_a = activeFilter.props) === null || _a === void 0 ? void 0 : _a.personalizedFilter) === null || _b === void 0 ? void 0 : _b.parameters) === null || _c === void 0 ? void 0 : _c.length); });
188
188
  const allParamsWithValues = allFilterWithVariableParams.flatMap(filter => { var _a; return (_a = filter.props.personalizedFilter) === null || _a === void 0 ? void 0 : _a.parameters; });
189
- const valuesFromParams = allFilterWithVariableParams.flatMap(filter => {
190
- const isBoolean = filter.props.personalizedFilter.parameters[0].dataType === DataType.BOOLEAN;
191
- return isBoolean ? false : filter.value;
189
+ const valuesFromParams = allFilterWithVariableParams.flatMap((filter) => {
190
+ return filter.props.personalizedFilter.parameters.flatMap((param, index) => {
191
+ if (!filter.value) {
192
+ return null;
193
+ }
194
+ if (filter.value[index] === undefined && param.dataType === DataType.BOOLEAN) {
195
+ return false;
196
+ }
197
+ return filter.value[index];
198
+ });
192
199
  });
193
200
  valuesArray = this.getNormalizedValue(allParamsWithValues, valuesArray);
194
201
  isValid = allParamsWithValues.length === valuesFromParams.length && valuesFromParams.every(value => value != null);
@@ -247,6 +247,9 @@ class DatasetStrategy {
247
247
  if (sorting != undefined && sorting.length !== 0) {
248
248
  txProperties["__DATA_UNIT_ADAPTER__[sorting]"] = JSON.stringify(sorting);
249
249
  }
250
+ if (request.parentRecordId != undefined) {
251
+ txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
252
+ }
250
253
  return txProperties;
251
254
  }
252
255
  processRecords(dataUnit, fields, responseRecords) {
@@ -7,7 +7,7 @@ import './index-1564817d.js';
7
7
  import './ISave-4412b20c.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './dataunit-fetcher-d5e6cc8c.js';
10
+ import './dataunit-fetcher-6725cb0e.js';
11
11
  import './PreloadManager-c1c2f2b4.js';
12
12
  import './filter-item-type.enum-5028ed3f.js';
13
13
  import './form-config-fetcher-e1603e66.js';
@@ -4,7 +4,7 @@ import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { C as ConfigStorage } from './ConfigStorage-79c81f36.js';
5
5
  import { d as dist, D as DataFetcher, U as UrlUtils } from './DataFetcher-79f78222.js';
6
6
  import { A as AutorizationType, a as AuthFetcher } from './auth-fetcher-e260d0cd.js';
7
- import { D as DataUnitFetcher } from './dataunit-fetcher-d5e6cc8c.js';
7
+ import { D as DataUnitFetcher } from './dataunit-fetcher-6725cb0e.js';
8
8
  import { P as PesquisaFetcher } from './pesquisa-fetcher-8e922c9d.js';
9
9
  import { S as SnkMessageBuilder } from './SnkMessageBuilder-7ac66e9c.js';
10
10
  import './form-config-fetcher-e1603e66.js';
@@ -3,7 +3,7 @@ import { ApplicationContext, DataType, Action } from '@sankhyalabs/core';
3
3
  import { D as DataFetcher } from './DataFetcher-79f78222.js';
4
4
  import { S as SaveErrorsEnum } from './ISave-4412b20c.js';
5
5
  import { c as VIEW_MODE } from './constants-3644f1b6.js';
6
- import { D as DataUnitFetcher } from './dataunit-fetcher-d5e6cc8c.js';
6
+ import { D as DataUnitFetcher } from './dataunit-fetcher-6725cb0e.js';
7
7
  import { T as TaskbarElement } from './taskbar-elements-0a6b8b95.js';
8
8
  import './_commonjsHelpers-9943807e.js';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
@@ -7,7 +7,7 @@ import { P as PresentationMode } from './index-1564817d.js';
7
7
  import './ISave-4412b20c.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './dataunit-fetcher-d5e6cc8c.js';
10
+ import './dataunit-fetcher-6725cb0e.js';
11
11
  import './PreloadManager-c1c2f2b4.js';
12
12
  import './filter-item-type.enum-5028ed3f.js';
13
13
  import './form-config-fetcher-e1603e66.js';
@@ -8,13 +8,13 @@ import { P as PresentationMode } from './index-1564817d.js';
8
8
  import './ISave-4412b20c.js';
9
9
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
10
10
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
- import './dataunit-fetcher-d5e6cc8c.js';
11
+ import './dataunit-fetcher-6725cb0e.js';
12
12
  import './PreloadManager-c1c2f2b4.js';
13
13
  import './filter-item-type.enum-5028ed3f.js';
14
14
  import './form-config-fetcher-e1603e66.js';
15
15
  import { T as TaskbarElement } from './taskbar-elements-0a6b8b95.js';
16
16
  import { c as VIEW_MODE } from './constants-3644f1b6.js';
17
- import { S as SnkGuidesViewer } from './snk-guides-viewer-cd6f8ff7.js';
17
+ import { S as SnkGuidesViewer } from './snk-guides-viewer-8b47f38c.js';
18
18
  import { S as SnkMessageBuilder } from './SnkMessageBuilder-7ac66e9c.js';
19
19
  import './ConfigStorage-79c81f36.js';
20
20
  import './_commonjsHelpers-9943807e.js';
@@ -1,8 +1,8 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host } from './index-a7d3d3f1.js';
2
- import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
2
+ import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-49a5dcb7.js';
3
3
  import '@sankhyalabs/core';
4
- import './index-ae591a44.js';
5
4
  import './filter-item-type.enum-5028ed3f.js';
5
+ import './index-ae591a44.js';
6
6
 
7
7
  const snkFilterAdvancedModeCss = ".sc-snk-filter-advanced-mode-h{display:block;--snk-personalized-filter--title--color:var(--title--primary, #2B3A54)}.snk-filter-advanced-mode__title.sc-snk-filter-advanced-mode{color:var(--snk-personalized-filter--title--color)}";
8
8
 
@@ -6,7 +6,7 @@ import { toString } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
6
6
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
7
7
  import { F as FilterOperand } from './index-ae591a44.js';
8
8
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
9
- import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
9
+ import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-49a5dcb7.js';
10
10
  import './form-config-fetcher-e1603e66.js';
11
11
  import './DataFetcher-79f78222.js';
12
12
  import './_commonjsHelpers-9943807e.js';
@@ -3,7 +3,7 @@ import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
3
3
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
4
4
  import { ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
5
5
  import { E as EPresentationMode } from './presentationMode-783bbf9d.js';
6
- import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
6
+ import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-49a5dcb7.js';
7
7
  import './index-ae591a44.js';
8
8
 
9
9
  const SnkFilterDetail = class {
@@ -3,7 +3,7 @@ import { S as SelectedItemType } from './index-620ac460.js';
3
3
  import { UserInterface, JSUtils, ElementIDUtils, ApplicationContext, StringUtils, DataType } from '@sankhyalabs/core';
4
4
  import { ModalAction } from '@sankhyalabs/ezui/dist/collection/components/ez-modal-container';
5
5
  import { b as FilterConfigType, c as FilterEntities, d as FilterUserConfigTypes } from './index-ae591a44.js';
6
- import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
6
+ import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-49a5dcb7.js';
7
7
  import './filter-item-type.enum-5028ed3f.js';
8
8
 
9
9
  const ICON_MODES = {
@@ -4,7 +4,7 @@ import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { F as FilterType } from './filter-type.enum-a80c1b6b.js';
5
5
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
6
6
  import { ObjectUtils } from '@sankhyalabs/core';
7
- import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
7
+ import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-49a5dcb7.js';
8
8
  import './index-ae591a44.js';
9
9
 
10
10
  const snkFilterModalCss = "ez-modal{--ez-modal-content-padding:24px 12px}.snk-filter-modal__container{width:344px;max-width:344px;min-width:344px;overflow:hidden}.snk-filter-modal__content{display:flex;flex-direction:column;gap:var(--space--medium, 12px);padding-right:var(--space--3xs, 4px)}.snk-filter-modal__collapsible-box{border:var(--border--small, 1px solid) var(--color--strokes, #DCE0E8);border-radius:var(--border--radius-medium);padding:var(--space--medium, 12px) var(--space--small, 6px)}.snk-filter-modal__rendered-items{max-height:760px;overflow-x:clip;overflow-y:auto}.snk-filter-modal__rendered-items::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}";
@@ -11,7 +11,7 @@ import { P as PresentationMode } from './index-1564817d.js';
11
11
  import './ISave-4412b20c.js';
12
12
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
13
13
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
14
- import './dataunit-fetcher-d5e6cc8c.js';
14
+ import './dataunit-fetcher-6725cb0e.js';
15
15
  import './PreloadManager-c1c2f2b4.js';
16
16
  import './filter-item-type.enum-5028ed3f.js';
17
17
  import './form-config-fetcher-e1603e66.js';
@@ -1,4 +1,4 @@
1
- export { S as snk_guides_viewer } from './snk-guides-viewer-cd6f8ff7.js';
1
+ export { S as snk_guides_viewer } from './snk-guides-viewer-8b47f38c.js';
2
2
  import './index-a7d3d3f1.js';
3
3
  import '@sankhyalabs/core';
4
4
  import './SnkFormConfigManager-7723f3ec.js';
@@ -18,7 +18,7 @@ import './constants-3644f1b6.js';
18
18
  import './pesquisa-fetcher-8e922c9d.js';
19
19
  import './ISave-4412b20c.js';
20
20
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
21
- import './dataunit-fetcher-d5e6cc8c.js';
21
+ import './dataunit-fetcher-6725cb0e.js';
22
22
  import './PreloadManager-c1c2f2b4.js';
23
23
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
24
24
  import './ResourceIDUtils-a114189a.js';
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host } from './index-a7d3d3f1.js';
2
2
  import { StringUtils, ObjectUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
3
- import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
3
+ import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-49a5dcb7.js';
4
4
  import { P as PersonalizedFilterFetcher, C as ConfigStorage } from './ConfigStorage-79c81f36.js';
5
5
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
6
6
  import { a as FilterGroupCondition } from './index-ae591a44.js';
@@ -8,7 +8,7 @@ import { P as PresentationMode } from './index-1564817d.js';
8
8
  import './ISave-4412b20c.js';
9
9
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
10
10
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
- import { I as InMemoryLoader } from './dataunit-fetcher-d5e6cc8c.js';
11
+ import { I as InMemoryLoader } from './dataunit-fetcher-6725cb0e.js';
12
12
  import './PreloadManager-c1c2f2b4.js';
13
13
  import './filter-item-type.enum-5028ed3f.js';
14
14
  import './form-config-fetcher-e1603e66.js';
@@ -1 +1 @@
1
- import{r as t,c as i,h as e}from"./p-d2d301a6.js";import{ApplicationContext as s,DataType as n,Action as a}from"@sankhyalabs/core";import{D as r}from"./p-c9399ce6.js";import{S as o}from"./p-9e7d65a4.js";import{c as h}from"./p-4a78e118.js";import{D as d}from"./p-7f4435e2.js";import{T as l}from"./p-c9841939.js";import"./p-112455b1.js";import"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import"./p-8d884fab.js";import"@sankhyalabs/ezui/dist/collection/utils/constants";import"./p-c22c1d8e.js";import"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils";import"./p-688dcb4c.js";import"./p-5534e08c.js";import"./p-6dc031de.js";class c{constructor(t,i,e){var s;this.entityName=t,this.registerKey=i,this.dataUnitName=e,this.validateFields=t=>{if(t.LINK&&t.NOMEARQUIVO)throw new Error(o.LINK_AND_FILE_AT_THE_SAME_TIME);if(!t.LINK&&!t.NOMEARQUIVO)throw new Error(o.ANY_LINK_OR_FILE_FILLED);if(!this.registerKey)throw new Error("Register key can not be null")},this.resourceID=window.resourceID||(null===(s=window.workspace)||void 0===s?void 0:s.resourceID)}async save(t){var i,e;const s="AnexoSistemaSP.salvar";let{updatingFields:n}=t;n=Object.assign(Object.assign({},n),{NOMEARQUIVO:null===(i=n.NOMEARQUIVO)||void 0===i?void 0:i[0]});try{this.validateFields(n);const t=n.LINK?null:n.NOMEARQUIVO,i={serviceName:s,requestBody:{params:{resourceID:this.resourceID,description:n.DESCRICAO,fileSelect:t?1:0,keySession:null===(e=null==t?void 0:t.properties)||void 0===e?void 0:e.fileNameTmp,nameAttach:null==t?void 0:t.name,link:n.LINK,nameEntity:this.entityName,pkEntity:this.registerKey,typeAcess:n.TIPOACESSO,typeApres:n.TIPOAPRES}}},a=await r.get().callServiceBroker(s,JSON.stringify(i));return Promise.resolve([Object.assign(Object.assign(Object.assign({},a),n),{ARQUIVOOULINK:n.LINK?n.LINK:null==t?void 0:t.name,__owner__dataunit__name__:this.dataUnitName})])}catch(t){return Promise.reject(t)}}async edit(t){var i,e,s;const n="AnexoSistemaSP.salvar";let{updatingFields:a,record:o}=t;const h=t=>void 0!==a[t]?a[t]:o[t],d=h("NOMEARQUIVO"),l=null===(e=null===(i=a.NOMEARQUIVO)||void 0===i?void 0:i[0])||void 0===e?void 0:e.downloadURL;a=Object.assign(Object.assign({},a),{DESCRICAO:h("DESCRICAO"),LINK:h("LINK"),TIPOACESSO:h("TIPOACESSO"),TIPOAPRES:h("TIPOAPRES"),CHAVEARQUIVO:o.CHAVEARQUIVO,NOMEARQUIVO:null==d?void 0:d[0]});const c=a.LINK?null:a.NOMEARQUIVO;try{this.validateFields(a);const t={serviceName:n,requestBody:{params:{resourceID:this.resourceID,nuAttach:null==o?void 0:o.NUATTACH,description:a.DESCRICAO,fileSelect:l?1:0,keySession:null===(s=null==c?void 0:c.properties)||void 0===s?void 0:s.fileNameTmp,keyAttach:a.CHAVEARQUIVO,nameAttach:null==c?void 0:c.name,link:a.LINK,nameEntity:this.entityName,pkEntity:this.registerKey,typeAcess:a.TIPOACESSO,typeApres:a.TIPOAPRES}}},i=await r.get().callServiceBroker(n,JSON.stringify(t));return Promise.resolve([Object.assign(Object.assign(Object.assign({},i),a),{ARQUIVOOULINK:a.LINK?a.LINK:null==c?void 0:c.name,__owner__dataunit__name__:this.dataUnitName})])}catch(t){return Promise.reject(t)}}delete(t){var i;const e="AnexoSistemaSP.excluir",s=(null===(i=t.NOMEARQUIVO)||void 0===i?void 0:i[0])||{},n={serviceName:e,requestBody:{paramsDelete:{keyAttach:t.CHAVEARQUIVO,nameAttach:null==s?void 0:s.name,nameEntity:t.NOMEINSTANCIA,nuAttach:t.NUATTACH,pkEntity:t.PKREGISTRO}}};return new Promise(((t,i)=>{r.get().callServiceBroker(e,JSON.stringify(n)).then((i=>t(i))).catch((t=>i(t)))}))}getDownloadKey(t){var i;const e="AnexoSistemaSP.baixar",s=(null===(i=t.NOMEARQUIVO)||void 0===i?void 0:i[0])||{},n={serviceName:e,requestBody:{paramsDown:{nameAttach:null==s?void 0:s.name,nameEntity:t.NOMEINSTANCIA,nuAttach:t.NUATTACH,pkEntity:t.PKREGISTRO,keyAttach:t.CHAVEARQUIVO}}};return new Promise(((t,i)=>{r.get().callServiceBroker(e,JSON.stringify(n)).then((i=>t(i))).catch((t=>i(t)))}))}}class m{constructor(t,i){this.entityName=t,this.getMessage=i,this._application=s.getContextValue("__SNK__APPLICATION__")}initLoaders(t,i,e){this.loader||(this.loader=t.dataLoader),t.dataLoader=(t,i)=>this.dataLoader(t,i),t.saveLoader=(t,s)=>this.saveLoader(s,i).then((t=>(t.length&&e(),t))),t.removeLoader=(t,s)=>this.removeLoader(t,s,i).then((t=>(t.length&&e(),t)))}dataLoader(t,i){return new Promise((e=>{this.loader(t,i).then((t=>{const i=((null==t?void 0:t.records)||[]).map((t=>{let i;return t.LINK||(i=[{name:t.NOMEARQUIVO}]),Object.assign(Object.assign({},t),{ARQUIVOOULINK:t.LINK?t.LINK:t.NOMEARQUIVO,NOMEARQUIVO:i})}));e(Object.assign(Object.assign({},t),{records:i}))}))}))}saveLoader(t,i){return new Promise((e=>{var s;const n=Array.isArray(t)?t[0]:{};((null===(s=null==n?void 0:n.record)||void 0===s?void 0:s.NUATTACH)>=0?i.edit.bind(i):i.save.bind(i))(n).then((t=>{e(t)})).catch((t=>t.message===o.LINK_AND_FILE_AT_THE_SAME_TIME?(this._application.alert(this.getMessage("snkAttach.alertValidation.fileAndLinkAtTheSameTime.title"),this.getMessage("snkAttach.alertValidation.fileAndLinkAtTheSameTime.message")),e([])):t.message===o.ANY_LINK_OR_FILE_FILLED?(this._application.alert(this.getMessage("snkAttach.alertValidation.anyLinkOrFileFilled.title"),this.getMessage("snkAttach.alertValidation.anyLinkOrFileFilled.message")),e([])):t.message?(this._application.error(t.title||t.name,t.message),e([])):void e([])))}))}removeLoader(t,i,e){return new Promise((s=>{const{records:n}=t.getSelectionInfo();e.delete(n[0]).then((()=>s(i)))}))}getFilters(t){return[{name:"AttachmentsByPK",expression:"this.PKREGISTRO = :PKREGISTRO",params:[{name:"PKREGISTRO",dataType:n.TEXT,value:`${t}_${this.entityName}`}]}]}getInterceptions(t,i,e){return new Promise((s=>i.type===a.EDITION_CANCELED?t.isDirty()?this._application.confirm(this.getMessage("snkAttach.cancelConfirmation.title"),this.getMessage("snkAttach.cancelConfirmation.message")).then((t=>t?(e.goToView(h.GRID),s(i)):s(void 0))):s(i):i.type===a.DATA_SAVED?(t.loadData(),s(i)):void s(i)))}}const u=s.getContextValue("__SNK__APPLICATION__"),v=t=>{var i,e;return null===(e=null===(i=null==u?void 0:u.messagesBuilder)||void 0===i?void 0:i.getMessage)||void 0===e?void 0:e.call(i,t,null)},A={DOWNLOAD:{hint:v("snkAttach.taskbar.titleDownload"),name:"DOWNLOAD",iconName:"file-download"},LINK:{hint:v("snkAttach.taskbar.titleLink"),name:"LINK",iconName:"launch"}},O=()=>{const t=[l.REMOVE,"DOWNLOAD","LINK"];return{getButtons:(t,i,e)=>{if((null==i?void 0:i.insertionMode)||(null==i?void 0:i.isDirty))return e.reverse();e.splice(e.indexOf(l.REFRESH),1);const{selectedRecord:s}=i||{},n=(null==s?void 0:s.LINK)?A.LINK:A.DOWNLOAD;e.splice(e.indexOf(l.DIVIDER)+1,0,l.REMOVE,n,l.DIVIDER);const a=Array.from(new Set(e.filter((t=>t!==l.CLONE))));return a.splice(a.indexOf(n)+1,0,l.DIVIDER),a},isEnabled:(i,e,s)=>{const n=void 0!==(null==e?void 0:e.selectedRecord);return!(t.includes(s)&&!n)}}},p={grid:{columns:[{name:"ARQUIVOOULINK",orderIndex:0,width:0},{name:"DESCRICAO",orderIndex:1,width:0},{name:"DHCAD",orderIndex:2,width:0},{name:"DHALTER",orderIndex:3,width:0},{name:"TIPOAPRES",orderIndex:4,width:0},{name:"TIPOACESSO",orderIndex:5,width:0},{name:"CODUSU",orderIndex:6,width:0},{name:"CODUSUALT",orderIndex:7,width:0}]},form:{emptyConfig:!1,fields:[{name:"DESCRICAO",required:!0},{name:"TIPOAPRES",required:!0},{name:"TIPOACESSO",required:!0},{name:"LINK"},{name:"NOMEARQUIVO"}]}},k=class{constructor(e){t(this,e),this.back=i(this,"back",7),this.handleTaskbarClick=({detail:t})=>{if(["DOWNLOAD","LINK"].includes(t))return this.downloadAttachment(this.dataUnit.getSelectedRecord())},this.handleBack=()=>{this.dataUnit.cancelEdition().then((t=>{t&&this.back.emit()}))},this.handleFinish=()=>{if(!this.dataUnit.isDirty())return this.back.emit();this.dataUnit.saveData().then((()=>{this.showFinishedToast(),this.back.emit()}))},this.registerKey=void 0,this.entityName=void 0,this.messagesBuilder=void 0,this.dataUnit=void 0,this.crudConfig=void 0}registerKeyWatcher(t,i){var e;i!==t&&(this.returnToGridMode(),this._attachFetcher=new c(this.entityName,this.registerKey,null===(e=this.dataUnit)||void 0===e?void 0:e.name),this._dataUnitBuilder.initLoaders(this.dataUnit,this._attachFetcher,(()=>{this.returnToGridMode()})),this.dataUnit.loadData())}getMessage(t,i){if(this.messagesBuilder)return this.messagesBuilder.getMessage(t,i)}showFinishedToast(){this._application.info(this.getMessage("snkAttach.finishedMessage"),{iconName:"check"})}downloadAttachment(t){if(!t)throw new Error("Nenhum registro selecionado");t.LINK?window.open(`${t.LINK}`):this._attachFetcher.getDownloadKey(t).then((({chave:t})=>{window.open(`/mge/visualizadorArquivos.mge?chaveArquivo=${t.valor}&forcarDownload=S`)}))}returnToGridMode(){this.dataUnit.clearSelection(),this._crudElement&&this._crudElement.goToView(h.GRID)}loadAttachmentDataUnit(){var t;try{const i=this.dataUnit||(new d).getDataUnit("AnexoSistema","br.com.sankhya.core.v3.anexoSistema");return this._attachFetcher=new c(this.entityName,this.registerKey,null===(t=this.dataUnit)||void 0===t?void 0:t.name),i.metadata||i.loadMetadata().then((()=>{this.crudConfig=p})),this._dataUnitBuilder=new m(this.entityName,this.getMessage.bind(this)),i.addFilterProvider({getFilter:()=>this._dataUnitBuilder.getFilters(this.registerKey)}),i.addInterceptor({interceptAction:t=>this._dataUnitBuilder.getInterceptions(i,t,this._crudElement)}),this.dataUnit=i,this.dataUnit.loadData().then((()=>{this.disableEditFieldsNotInForm()})),this.dataUnit}catch(t){throw new Error("There was an error while creating the data unit")}}disableEditFieldsNotInForm(){var t;null===(t=this.crudConfig)||void 0===t||t.grid.columns.forEach((t=>{var i;const e=t.name;(null===(i=this.crudConfig)||void 0===i?void 0:i.form.fields.some((t=>t.name===e)))||this.dataUnit.disableField(e)}))}componentWillLoad(){this._application=s.getContextValue("__SNK__APPLICATION__"),this.loadAttachmentDataUnit()}render(){var t,i;return this.dataUnit?e("main",{class:"snk-attach__main"},e("header",{class:"snk-attach__header"},e("snk-simple-bar",{onExit:this.handleBack,messagesBuilder:this.messagesBuilder},e("div",{slot:"rightSlot"},e("ez-button",{class:"ez-button--primary",label:this.getMessage("snkAttach.finish"),onClick:this.handleFinish})))),e("div",{class:"snk-attach__crud-section ez-size-height--full ez-size-width--full ez-flex ez-flex--column"},e("div",{class:"ez-box__container"},e("snk-simple-crud",{ref:t=>this._crudElement=t,dataUnit:this.dataUnit,taskbarManager:O(),gridConfig:null===(t=this.crudConfig)||void 0===t?void 0:t.grid,formConfig:null===(i=this.crudConfig)||void 0===i?void 0:i.form,useCancelConfirm:!1,onActionClick:this.handleTaskbarClick},e("div",{slot:"snkSimpleCrudHeader"},e("div",{class:"ez-flex ez-flex--column"},e("span",{class:"ez-title--primary ez-text ez-text--large ez-text--bold ez-padding-bottom--medium"},this.getMessage("snkAttach.title")),e("span",{class:"ez-text ez-text--medium ez-text--secondary"},this.getMessage("snkAttach.description")))))))):null}static get watchers(){return{registerKey:["registerKeyWatcher"]}}};k.style=".snk-attach__header.sc-snk-attach,.snk-attach__crud-section.sc-snk-attach{padding:0 var(--space--lg)}.snk-attach__file-info.sc-snk-attach{padding:var(--space--small);max-width:50%}.snk-attach__main.sc-snk-attach{height:85%}.ez-box__container.sc-snk-attach{height:100%}";export{k as snk_attach}
1
+ import{r as t,c as i,h as e}from"./p-d2d301a6.js";import{ApplicationContext as s,DataType as n,Action as a}from"@sankhyalabs/core";import{D as r}from"./p-c9399ce6.js";import{S as o}from"./p-9e7d65a4.js";import{c as h}from"./p-4a78e118.js";import{D as d}from"./p-73407f35.js";import{T as l}from"./p-c9841939.js";import"./p-112455b1.js";import"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import"./p-8d884fab.js";import"@sankhyalabs/ezui/dist/collection/utils/constants";import"./p-c22c1d8e.js";import"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils";import"./p-688dcb4c.js";import"./p-5534e08c.js";import"./p-6dc031de.js";class c{constructor(t,i,e){var s;this.entityName=t,this.registerKey=i,this.dataUnitName=e,this.validateFields=t=>{if(t.LINK&&t.NOMEARQUIVO)throw new Error(o.LINK_AND_FILE_AT_THE_SAME_TIME);if(!t.LINK&&!t.NOMEARQUIVO)throw new Error(o.ANY_LINK_OR_FILE_FILLED);if(!this.registerKey)throw new Error("Register key can not be null")},this.resourceID=window.resourceID||(null===(s=window.workspace)||void 0===s?void 0:s.resourceID)}async save(t){var i,e;const s="AnexoSistemaSP.salvar";let{updatingFields:n}=t;n=Object.assign(Object.assign({},n),{NOMEARQUIVO:null===(i=n.NOMEARQUIVO)||void 0===i?void 0:i[0]});try{this.validateFields(n);const t=n.LINK?null:n.NOMEARQUIVO,i={serviceName:s,requestBody:{params:{resourceID:this.resourceID,description:n.DESCRICAO,fileSelect:t?1:0,keySession:null===(e=null==t?void 0:t.properties)||void 0===e?void 0:e.fileNameTmp,nameAttach:null==t?void 0:t.name,link:n.LINK,nameEntity:this.entityName,pkEntity:this.registerKey,typeAcess:n.TIPOACESSO,typeApres:n.TIPOAPRES}}},a=await r.get().callServiceBroker(s,JSON.stringify(i));return Promise.resolve([Object.assign(Object.assign(Object.assign({},a),n),{ARQUIVOOULINK:n.LINK?n.LINK:null==t?void 0:t.name,__owner__dataunit__name__:this.dataUnitName})])}catch(t){return Promise.reject(t)}}async edit(t){var i,e,s;const n="AnexoSistemaSP.salvar";let{updatingFields:a,record:o}=t;const h=t=>void 0!==a[t]?a[t]:o[t],d=h("NOMEARQUIVO"),l=null===(e=null===(i=a.NOMEARQUIVO)||void 0===i?void 0:i[0])||void 0===e?void 0:e.downloadURL;a=Object.assign(Object.assign({},a),{DESCRICAO:h("DESCRICAO"),LINK:h("LINK"),TIPOACESSO:h("TIPOACESSO"),TIPOAPRES:h("TIPOAPRES"),CHAVEARQUIVO:o.CHAVEARQUIVO,NOMEARQUIVO:null==d?void 0:d[0]});const c=a.LINK?null:a.NOMEARQUIVO;try{this.validateFields(a);const t={serviceName:n,requestBody:{params:{resourceID:this.resourceID,nuAttach:null==o?void 0:o.NUATTACH,description:a.DESCRICAO,fileSelect:l?1:0,keySession:null===(s=null==c?void 0:c.properties)||void 0===s?void 0:s.fileNameTmp,keyAttach:a.CHAVEARQUIVO,nameAttach:null==c?void 0:c.name,link:a.LINK,nameEntity:this.entityName,pkEntity:this.registerKey,typeAcess:a.TIPOACESSO,typeApres:a.TIPOAPRES}}},i=await r.get().callServiceBroker(n,JSON.stringify(t));return Promise.resolve([Object.assign(Object.assign(Object.assign({},i),a),{ARQUIVOOULINK:a.LINK?a.LINK:null==c?void 0:c.name,__owner__dataunit__name__:this.dataUnitName})])}catch(t){return Promise.reject(t)}}delete(t){var i;const e="AnexoSistemaSP.excluir",s=(null===(i=t.NOMEARQUIVO)||void 0===i?void 0:i[0])||{},n={serviceName:e,requestBody:{paramsDelete:{keyAttach:t.CHAVEARQUIVO,nameAttach:null==s?void 0:s.name,nameEntity:t.NOMEINSTANCIA,nuAttach:t.NUATTACH,pkEntity:t.PKREGISTRO}}};return new Promise(((t,i)=>{r.get().callServiceBroker(e,JSON.stringify(n)).then((i=>t(i))).catch((t=>i(t)))}))}getDownloadKey(t){var i;const e="AnexoSistemaSP.baixar",s=(null===(i=t.NOMEARQUIVO)||void 0===i?void 0:i[0])||{},n={serviceName:e,requestBody:{paramsDown:{nameAttach:null==s?void 0:s.name,nameEntity:t.NOMEINSTANCIA,nuAttach:t.NUATTACH,pkEntity:t.PKREGISTRO,keyAttach:t.CHAVEARQUIVO}}};return new Promise(((t,i)=>{r.get().callServiceBroker(e,JSON.stringify(n)).then((i=>t(i))).catch((t=>i(t)))}))}}class m{constructor(t,i){this.entityName=t,this.getMessage=i,this._application=s.getContextValue("__SNK__APPLICATION__")}initLoaders(t,i,e){this.loader||(this.loader=t.dataLoader),t.dataLoader=(t,i)=>this.dataLoader(t,i),t.saveLoader=(t,s)=>this.saveLoader(s,i).then((t=>(t.length&&e(),t))),t.removeLoader=(t,s)=>this.removeLoader(t,s,i).then((t=>(t.length&&e(),t)))}dataLoader(t,i){return new Promise((e=>{this.loader(t,i).then((t=>{const i=((null==t?void 0:t.records)||[]).map((t=>{let i;return t.LINK||(i=[{name:t.NOMEARQUIVO}]),Object.assign(Object.assign({},t),{ARQUIVOOULINK:t.LINK?t.LINK:t.NOMEARQUIVO,NOMEARQUIVO:i})}));e(Object.assign(Object.assign({},t),{records:i}))}))}))}saveLoader(t,i){return new Promise((e=>{var s;const n=Array.isArray(t)?t[0]:{};((null===(s=null==n?void 0:n.record)||void 0===s?void 0:s.NUATTACH)>=0?i.edit.bind(i):i.save.bind(i))(n).then((t=>{e(t)})).catch((t=>t.message===o.LINK_AND_FILE_AT_THE_SAME_TIME?(this._application.alert(this.getMessage("snkAttach.alertValidation.fileAndLinkAtTheSameTime.title"),this.getMessage("snkAttach.alertValidation.fileAndLinkAtTheSameTime.message")),e([])):t.message===o.ANY_LINK_OR_FILE_FILLED?(this._application.alert(this.getMessage("snkAttach.alertValidation.anyLinkOrFileFilled.title"),this.getMessage("snkAttach.alertValidation.anyLinkOrFileFilled.message")),e([])):t.message?(this._application.error(t.title||t.name,t.message),e([])):void e([])))}))}removeLoader(t,i,e){return new Promise((s=>{const{records:n}=t.getSelectionInfo();e.delete(n[0]).then((()=>s(i)))}))}getFilters(t){return[{name:"AttachmentsByPK",expression:"this.PKREGISTRO = :PKREGISTRO",params:[{name:"PKREGISTRO",dataType:n.TEXT,value:`${t}_${this.entityName}`}]}]}getInterceptions(t,i,e){return new Promise((s=>i.type===a.EDITION_CANCELED?t.isDirty()?this._application.confirm(this.getMessage("snkAttach.cancelConfirmation.title"),this.getMessage("snkAttach.cancelConfirmation.message")).then((t=>t?(e.goToView(h.GRID),s(i)):s(void 0))):s(i):i.type===a.DATA_SAVED?(t.loadData(),s(i)):void s(i)))}}const u=s.getContextValue("__SNK__APPLICATION__"),v=t=>{var i,e;return null===(e=null===(i=null==u?void 0:u.messagesBuilder)||void 0===i?void 0:i.getMessage)||void 0===e?void 0:e.call(i,t,null)},A={DOWNLOAD:{hint:v("snkAttach.taskbar.titleDownload"),name:"DOWNLOAD",iconName:"file-download"},LINK:{hint:v("snkAttach.taskbar.titleLink"),name:"LINK",iconName:"launch"}},O=()=>{const t=[l.REMOVE,"DOWNLOAD","LINK"];return{getButtons:(t,i,e)=>{if((null==i?void 0:i.insertionMode)||(null==i?void 0:i.isDirty))return e.reverse();e.splice(e.indexOf(l.REFRESH),1);const{selectedRecord:s}=i||{},n=(null==s?void 0:s.LINK)?A.LINK:A.DOWNLOAD;e.splice(e.indexOf(l.DIVIDER)+1,0,l.REMOVE,n,l.DIVIDER);const a=Array.from(new Set(e.filter((t=>t!==l.CLONE))));return a.splice(a.indexOf(n)+1,0,l.DIVIDER),a},isEnabled:(i,e,s)=>{const n=void 0!==(null==e?void 0:e.selectedRecord);return!(t.includes(s)&&!n)}}},p={grid:{columns:[{name:"ARQUIVOOULINK",orderIndex:0,width:0},{name:"DESCRICAO",orderIndex:1,width:0},{name:"DHCAD",orderIndex:2,width:0},{name:"DHALTER",orderIndex:3,width:0},{name:"TIPOAPRES",orderIndex:4,width:0},{name:"TIPOACESSO",orderIndex:5,width:0},{name:"CODUSU",orderIndex:6,width:0},{name:"CODUSUALT",orderIndex:7,width:0}]},form:{emptyConfig:!1,fields:[{name:"DESCRICAO",required:!0},{name:"TIPOAPRES",required:!0},{name:"TIPOACESSO",required:!0},{name:"LINK"},{name:"NOMEARQUIVO"}]}},k=class{constructor(e){t(this,e),this.back=i(this,"back",7),this.handleTaskbarClick=({detail:t})=>{if(["DOWNLOAD","LINK"].includes(t))return this.downloadAttachment(this.dataUnit.getSelectedRecord())},this.handleBack=()=>{this.dataUnit.cancelEdition().then((t=>{t&&this.back.emit()}))},this.handleFinish=()=>{if(!this.dataUnit.isDirty())return this.back.emit();this.dataUnit.saveData().then((()=>{this.showFinishedToast(),this.back.emit()}))},this.registerKey=void 0,this.entityName=void 0,this.messagesBuilder=void 0,this.dataUnit=void 0,this.crudConfig=void 0}registerKeyWatcher(t,i){var e;i!==t&&(this.returnToGridMode(),this._attachFetcher=new c(this.entityName,this.registerKey,null===(e=this.dataUnit)||void 0===e?void 0:e.name),this._dataUnitBuilder.initLoaders(this.dataUnit,this._attachFetcher,(()=>{this.returnToGridMode()})),this.dataUnit.loadData())}getMessage(t,i){if(this.messagesBuilder)return this.messagesBuilder.getMessage(t,i)}showFinishedToast(){this._application.info(this.getMessage("snkAttach.finishedMessage"),{iconName:"check"})}downloadAttachment(t){if(!t)throw new Error("Nenhum registro selecionado");t.LINK?window.open(`${t.LINK}`):this._attachFetcher.getDownloadKey(t).then((({chave:t})=>{window.open(`/mge/visualizadorArquivos.mge?chaveArquivo=${t.valor}&forcarDownload=S`)}))}returnToGridMode(){this.dataUnit.clearSelection(),this._crudElement&&this._crudElement.goToView(h.GRID)}loadAttachmentDataUnit(){var t;try{const i=this.dataUnit||(new d).getDataUnit("AnexoSistema","br.com.sankhya.core.v3.anexoSistema");return this._attachFetcher=new c(this.entityName,this.registerKey,null===(t=this.dataUnit)||void 0===t?void 0:t.name),i.metadata||i.loadMetadata().then((()=>{this.crudConfig=p})),this._dataUnitBuilder=new m(this.entityName,this.getMessage.bind(this)),i.addFilterProvider({getFilter:()=>this._dataUnitBuilder.getFilters(this.registerKey)}),i.addInterceptor({interceptAction:t=>this._dataUnitBuilder.getInterceptions(i,t,this._crudElement)}),this.dataUnit=i,this.dataUnit.loadData().then((()=>{this.disableEditFieldsNotInForm()})),this.dataUnit}catch(t){throw new Error("There was an error while creating the data unit")}}disableEditFieldsNotInForm(){var t;null===(t=this.crudConfig)||void 0===t||t.grid.columns.forEach((t=>{var i;const e=t.name;(null===(i=this.crudConfig)||void 0===i?void 0:i.form.fields.some((t=>t.name===e)))||this.dataUnit.disableField(e)}))}componentWillLoad(){this._application=s.getContextValue("__SNK__APPLICATION__"),this.loadAttachmentDataUnit()}render(){var t,i;return this.dataUnit?e("main",{class:"snk-attach__main"},e("header",{class:"snk-attach__header"},e("snk-simple-bar",{onExit:this.handleBack,messagesBuilder:this.messagesBuilder},e("div",{slot:"rightSlot"},e("ez-button",{class:"ez-button--primary",label:this.getMessage("snkAttach.finish"),onClick:this.handleFinish})))),e("div",{class:"snk-attach__crud-section ez-size-height--full ez-size-width--full ez-flex ez-flex--column"},e("div",{class:"ez-box__container"},e("snk-simple-crud",{ref:t=>this._crudElement=t,dataUnit:this.dataUnit,taskbarManager:O(),gridConfig:null===(t=this.crudConfig)||void 0===t?void 0:t.grid,formConfig:null===(i=this.crudConfig)||void 0===i?void 0:i.form,useCancelConfirm:!1,onActionClick:this.handleTaskbarClick},e("div",{slot:"snkSimpleCrudHeader"},e("div",{class:"ez-flex ez-flex--column"},e("span",{class:"ez-title--primary ez-text ez-text--large ez-text--bold ez-padding-bottom--medium"},this.getMessage("snkAttach.title")),e("span",{class:"ez-text ez-text--medium ez-text--secondary"},this.getMessage("snkAttach.description")))))))):null}static get watchers(){return{registerKey:["registerKeyWatcher"]}}};k.style=".snk-attach__header.sc-snk-attach,.snk-attach__crud-section.sc-snk-attach{padding:0 var(--space--lg)}.snk-attach__file-info.sc-snk-attach{padding:var(--space--small);max-width:50%}.snk-attach__main.sc-snk-attach{height:85%}.ez-box__container.sc-snk-attach{height:100%}";export{k as snk_attach}