@sankhyalabs/sankhyablocks 6.10.0 → 7.0.0

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 (145) hide show
  1. package/dist/cjs/{ConfigStorage-da2bf3bf.js → ConfigStorage-97468a0f.js} +28 -22
  2. package/dist/cjs/{PersonalizedFilterUtils-cfcd9af2.js → PersonalizedFilterUtils-9848e09b.js} +18 -64
  3. package/dist/cjs/{SnkFormConfigManager-d7cc9118.js → SnkFormConfigManager-bef6e022.js} +1 -1
  4. package/dist/cjs/{SnkMessageBuilder-a5a9b437.js → SnkMessageBuilder-f40df6d4.js} +18 -2
  5. package/dist/cjs/{filter-bar-config-fetcher-58cfc12e.js → filter-bar-config-fetcher-a7747f69.js} +22 -5
  6. package/dist/cjs/index-8d94b7e0.js +7 -0
  7. package/dist/cjs/index-c5771aba.js +44 -0
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  10. package/dist/cjs/snk-application.cjs.entry.js +3 -3
  11. package/dist/cjs/snk-data-exporter.cjs.entry.js +2 -2
  12. package/dist/cjs/{snk-data-unit-9d03800c.js → snk-data-unit-b0cc2d42.js} +1 -1
  13. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  14. package/dist/cjs/snk-detail-view.cjs.entry.js +5 -5
  15. package/dist/cjs/snk-expression-group_2.cjs.entry.js +542 -0
  16. package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +66 -0
  17. package/dist/cjs/snk-filter-bar.cjs.entry.js +14 -14
  18. package/dist/cjs/snk-filter-detail.cjs.entry.js +3 -3
  19. package/dist/cjs/{snk-expression-item_3.cjs.entry.js → snk-filter-field-search_2.cjs.entry.js} +23 -315
  20. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +2 -2
  21. package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -2
  22. package/dist/cjs/snk-form.cjs.entry.js +3 -3
  23. package/dist/cjs/snk-grid-config.cjs.entry.js +2 -2
  24. package/dist/cjs/snk-grid.cjs.entry.js +2 -2
  25. package/dist/cjs/{snk-guides-viewer-36766466.js → snk-guides-viewer-897368ea.js} +1 -1
  26. package/dist/cjs/snk-guides-viewer.cjs.entry.js +4 -4
  27. package/dist/cjs/snk-personalized-filter.cjs.entry.js +122 -31
  28. package/dist/collection/collection-manifest.json +2 -0
  29. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +1 -1
  30. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.css +5 -1
  31. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +114 -23
  32. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.js +4 -6
  33. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js +2 -1
  34. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode.css +10 -0
  35. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode.js +95 -0
  36. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.css +66 -0
  37. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.js +158 -0
  38. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js +8 -2
  39. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +14 -23
  40. package/dist/collection/lib/configs/ConfigStorage.js +5 -3
  41. package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +22 -5
  42. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +22 -18
  43. package/dist/collection/lib/message/resources/snk-personalized-filter.msg.js +18 -2
  44. package/dist/components/ConfigStorage.js +27 -21
  45. package/dist/components/PersonalizedFilterUtils.js +14 -23
  46. package/dist/components/SnkMessageBuilder.js +18 -2
  47. package/dist/components/filter-bar-config-fetcher.js +22 -5
  48. package/dist/components/index.d.ts +2 -0
  49. package/dist/components/index.js +2 -0
  50. package/dist/components/snk-crud.js +34 -22
  51. package/dist/components/snk-detail-view2.js +49 -27
  52. package/dist/components/snk-expression-group2.js +4 -6
  53. package/dist/components/snk-expression-item2.js +2 -1
  54. package/dist/components/snk-filter-advanced-mode.d.ts +11 -0
  55. package/dist/components/snk-filter-advanced-mode.js +6 -0
  56. package/dist/components/snk-filter-advanced-mode2.js +46 -0
  57. package/dist/components/snk-filter-assistent-mode.d.ts +11 -0
  58. package/dist/components/snk-filter-assistent-mode.js +6 -0
  59. package/dist/components/snk-filter-assistent-mode2.js +77 -0
  60. package/dist/components/snk-filter-bar2.js +17 -5
  61. package/dist/components/snk-filter-param-config2.js +6 -0
  62. package/dist/components/snk-grid2.js +22 -10
  63. package/dist/components/snk-personalized-filter2.js +131 -28
  64. package/dist/esm/{ConfigStorage-f1e805a0.js → ConfigStorage-02f17a26.js} +28 -22
  65. package/dist/esm/{PersonalizedFilterUtils-1a167d89.js → PersonalizedFilterUtils-731cae01.js} +16 -62
  66. package/dist/esm/{SnkFormConfigManager-324f6dc7.js → SnkFormConfigManager-cd9e6cab.js} +1 -1
  67. package/dist/esm/{SnkMessageBuilder-76f62087.js → SnkMessageBuilder-5be56185.js} +18 -2
  68. package/dist/esm/{filter-bar-config-fetcher-a358b8e0.js → filter-bar-config-fetcher-790283d8.js} +22 -5
  69. package/dist/esm/index-620ac460.js +7 -0
  70. package/dist/esm/index-ae591a44.js +44 -0
  71. package/dist/esm/loader.js +1 -1
  72. package/dist/esm/sankhyablocks.js +1 -1
  73. package/dist/esm/snk-application.entry.js +3 -3
  74. package/dist/esm/snk-data-exporter.entry.js +2 -2
  75. package/dist/esm/{snk-data-unit-0ff2d644.js → snk-data-unit-b9b4bb5f.js} +1 -1
  76. package/dist/esm/snk-data-unit.entry.js +2 -2
  77. package/dist/esm/snk-detail-view.entry.js +5 -5
  78. package/dist/esm/snk-expression-group_2.entry.js +537 -0
  79. package/dist/esm/snk-filter-advanced-mode_2.entry.js +61 -0
  80. package/dist/esm/snk-filter-bar.entry.js +5 -5
  81. package/dist/esm/snk-filter-detail.entry.js +3 -3
  82. package/dist/esm/{snk-expression-item_3.entry.js → snk-filter-field-search_2.entry.js} +12 -303
  83. package/dist/esm/snk-filter-modal-item.entry.js +2 -2
  84. package/dist/esm/snk-filter-modal.entry.js +2 -2
  85. package/dist/esm/snk-form.entry.js +3 -3
  86. package/dist/esm/snk-grid-config.entry.js +2 -2
  87. package/dist/esm/snk-grid.entry.js +2 -2
  88. package/dist/esm/{snk-guides-viewer-e7209909.js → snk-guides-viewer-579c70cc.js} +1 -1
  89. package/dist/esm/snk-guides-viewer.entry.js +4 -4
  90. package/dist/esm/snk-personalized-filter.entry.js +119 -28
  91. package/dist/sankhyablocks/{p-8f6575c8.entry.js → p-19fdcf88.entry.js} +1 -1
  92. package/dist/sankhyablocks/{p-18b74675.entry.js → p-1fe2976e.entry.js} +1 -1
  93. package/dist/sankhyablocks/p-2227bb94.js +1 -0
  94. package/dist/sankhyablocks/p-386102a7.entry.js +1 -0
  95. package/dist/sankhyablocks/{p-7a075ae6.js → p-3b059f4e.js} +1 -1
  96. package/dist/sankhyablocks/p-4af6cbef.entry.js +1 -0
  97. package/dist/sankhyablocks/p-4bbc7aac.entry.js +1 -0
  98. package/dist/sankhyablocks/{p-3251999f.entry.js → p-4f687570.entry.js} +1 -1
  99. package/dist/sankhyablocks/p-5098f618.js +1 -0
  100. package/dist/sankhyablocks/p-7e636457.entry.js +1 -0
  101. package/dist/sankhyablocks/p-7f1c4687.js +56 -0
  102. package/dist/sankhyablocks/{p-ed9e1e52.entry.js → p-88f4ef73.entry.js} +1 -1
  103. package/dist/sankhyablocks/{p-4f3df9b6.js → p-90a926c7.js} +1 -1
  104. package/dist/sankhyablocks/{p-eef26a01.entry.js → p-90e7c3a2.entry.js} +1 -1
  105. package/dist/sankhyablocks/p-933c0c0b.js +1 -0
  106. package/dist/sankhyablocks/p-9666c0d0.entry.js +1 -0
  107. package/dist/sankhyablocks/p-97720467.entry.js +1 -0
  108. package/dist/sankhyablocks/{p-522172e1.entry.js → p-97c586ab.entry.js} +1 -1
  109. package/dist/sankhyablocks/{p-bd840081.entry.js → p-9fa9331b.entry.js} +1 -1
  110. package/dist/sankhyablocks/{p-652b9081.js → p-acd8b97b.js} +1 -1
  111. package/dist/sankhyablocks/{p-40a5d35e.entry.js → p-ad6673fb.entry.js} +1 -1
  112. package/dist/sankhyablocks/p-bd86c9d3.entry.js +1 -0
  113. package/dist/sankhyablocks/{p-8d583a79.entry.js → p-cdbdcf13.entry.js} +1 -1
  114. package/dist/sankhyablocks/p-f4184ce7.js +1 -0
  115. package/dist/sankhyablocks/{p-56378a3b.js → p-fb1e5b6d.js} +1 -1
  116. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  117. package/dist/types/components/snk-personalized-filter/interfaces/IPersonalizedFilter.d.ts +4 -0
  118. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +17 -6
  119. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.d.ts +2 -2
  120. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode.d.ts +20 -0
  121. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.d.ts +31 -0
  122. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.d.ts +6 -0
  123. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.d.ts +2 -2
  124. package/dist/types/components.d.ts +103 -2
  125. package/dist/types/lib/configs/ConfigStorage.d.ts +3 -2
  126. package/dist/types/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.d.ts +2 -1
  127. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  128. package/package.json +1 -1
  129. package/react/components.d.ts +2 -0
  130. package/react/components.js +2 -0
  131. package/react/components.js.map +1 -1
  132. package/dist/cjs/IExpressionItem-0e32ebb7.js +0 -7
  133. package/dist/cjs/snk-expression-group.cjs.entry.js +0 -250
  134. package/dist/esm/IExpressionItem-21f225bf.js +0 -7
  135. package/dist/esm/snk-expression-group.entry.js +0 -246
  136. package/dist/sankhyablocks/p-432a73a8.js +0 -1
  137. package/dist/sankhyablocks/p-63bff2a8.js +0 -1
  138. package/dist/sankhyablocks/p-6490021d.entry.js +0 -1
  139. package/dist/sankhyablocks/p-7d68a43a.js +0 -1
  140. package/dist/sankhyablocks/p-7fd8a0ab.entry.js +0 -1
  141. package/dist/sankhyablocks/p-9f34a127.entry.js +0 -1
  142. package/dist/sankhyablocks/p-d4adf773.js +0 -68
  143. package/dist/sankhyablocks/p-d9586ead.entry.js +0 -1
  144. package/dist/sankhyablocks/p-eb30a52a.entry.js +0 -1
  145. package/dist/sankhyablocks/p-f8ce17d3.entry.js +0 -1
@@ -93,24 +93,6 @@ class PersonalizedFilterFetcher {
93
93
  active
94
94
  expression
95
95
  warningMessage
96
- parameters {
97
- entityName
98
- fieldName
99
- dataType
100
- description
101
- userInterface
102
- label
103
- searchContext {
104
- entity
105
- entityDescription
106
- searchOptions {
107
- rootEntity
108
- descriptionFieldName
109
- codeFieldName
110
- showInactives
111
- }
112
- }
113
- }
114
96
  assistent
115
97
  }
116
98
  }`);
@@ -128,6 +110,13 @@ class PersonalizedFilterFetcher {
128
110
  name
129
111
  }
130
112
  }`);
113
+ this.templateByQuery.set("validateExpression", dist.gql `
114
+ query($dataUnitName: String!, $expression: String!) {
115
+ $queryAlias$: validateExpression(dataUnitName: $dataUnitName, expression: $expression) {
116
+ valid
117
+ message
118
+ }
119
+ }`);
131
120
  }
132
121
  async loadPersonalizedFilter(resourceID, filterID, configName) {
133
122
  return new Promise((resolve, reject) => {
@@ -177,6 +166,21 @@ class PersonalizedFilterFetcher {
177
166
  });
178
167
  });
179
168
  }
169
+ async validatePersonalizedFilter(dataUnitName, expression) {
170
+ return new Promise((resolve, reject) => {
171
+ DataFetcher.get()
172
+ .callGraphQL({
173
+ values: { dataUnitName: dataUnitName, expression: expression },
174
+ query: this.templateByQuery.get("validateExpression"),
175
+ })
176
+ .then((resp) => {
177
+ resolve(resp);
178
+ })
179
+ .catch((error) => {
180
+ reject(error);
181
+ });
182
+ });
183
+ }
180
184
  loadFields(uri) {
181
185
  return new Promise((resolve, reject) => {
182
186
  DataFetcher.get()
@@ -222,17 +226,16 @@ class ConfigStorage {
222
226
  const resourceID = await application.getResourceID();
223
227
  ConfigStorage.instance = new ConfigStorage();
224
228
  ConfigStorage.resourceID = resourceID;
225
- ConfigStorage.instance.loadFilterBarConfig(configName);
226
229
  ConfigStorage.instance.loadFormConfig(configName);
227
230
  ConfigStorage.instance.loadGridConfig(configName);
228
231
  }
229
232
  }
230
233
  return this.instance;
231
234
  }
232
- async loadFilterBarConfig(name) {
235
+ async loadFilterBarConfig(name, urlParams) {
233
236
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.filterBar);
234
237
  if (!ConfigStorage.configById.has(cacheID)) {
235
- ConfigStorage.configById.set(cacheID, ConfigStorage.filterBarConfigFetcher.getConfig(ConfigStorage.resourceID, name));
238
+ ConfigStorage.configById.set(cacheID, ConfigStorage.filterBarConfigFetcher.getConfig(ConfigStorage.resourceID, name, urlParams));
236
239
  }
237
240
  return ConfigStorage.configById.get(cacheID);
238
241
  }
@@ -284,6 +287,9 @@ class ConfigStorage {
284
287
  static async removePersonalizedFilter(personalizedFilter, configName) {
285
288
  return this.personalizedFilterFetcher.removePersonalizedFilter(personalizedFilter, this.resourceID, configName);
286
289
  }
290
+ static async validatePersonalizedFilter(dataUnitName, expression) {
291
+ return this.personalizedFilterFetcher.validatePersonalizedFilter(dataUnitName, expression);
292
+ }
287
293
  static buildCacheID(name, source) {
288
294
  if (name == undefined) {
289
295
  return `req_${source}_${this.resourceID}`;
@@ -50,14 +50,12 @@ class PersonalizedFilterUtils {
50
50
  * @param expressionItem - Objeto com os parâmetros necessários para montar a expressão.
51
51
  * @returns Retorna a expressão de filtro.
52
52
  */
53
- static buildFilterExpression(expressionItem, ignoreInvalidExpressions = false) {
53
+ static buildFilterExpression(expressionItem) {
54
+ var _a;
54
55
  if (expressionItem == undefined) {
55
56
  return;
56
57
  }
57
- if (!this.validateExpressionItem(expressionItem) && ignoreInvalidExpressions) {
58
- return "";
59
- }
60
- let value = this.buildVariableParameterValue(expressionItem);
58
+ let value = (_a = this.buildVariableParameterValue(expressionItem)) !== null && _a !== void 0 ? _a : undefined;
61
59
  let expression = expressionItem.expression || "";
62
60
  let commas = "'";
63
61
  if (expressionItem.paramVariable) {
@@ -81,8 +79,13 @@ class PersonalizedFilterUtils {
81
79
  expression += ` LIKE '%${value}'`;
82
80
  break;
83
81
  default:
84
- value = typeof value === 'string' ? `${commas}${value}${commas}` : value;
85
- expression += ` ${FilterOperand[expressionItem.operand]} ${value}`;
82
+ if (expressionItem.operand) {
83
+ expression += ` ${FilterOperand[expressionItem.operand]}`;
84
+ }
85
+ if (value) {
86
+ value = isNaN(value) ? `${commas}${value}${commas}` : value;
87
+ expression += ` ${value}`;
88
+ }
86
89
  }
87
90
  return expression;
88
91
  }
@@ -106,7 +109,7 @@ class PersonalizedFilterUtils {
106
109
  pois para filtros herdados do HTML5 não temos o tipo OBJECT, fazendo com que a expressão
107
110
  fique inválida para campos do tipo pesquisa.
108
111
  */
109
- if (UserInterface.SEARCH === expressionItem.userInterface || DataType.OBJECT == type) {
112
+ if (UserInterface.SEARCH === expressionItem.userInterface || expressionItem.userInterface === UserInterface.OPTIONSELECTOR || DataType.OBJECT == type) {
110
113
  value = (_a = value === null || value === void 0 ? void 0 : value.value) !== null && _a !== void 0 ? _a : value;
111
114
  }
112
115
  if (DataType.NUMBER == type && value != undefined) {
@@ -148,11 +151,11 @@ class PersonalizedFilterUtils {
148
151
  /*
149
152
  * Cria uma expressão de filtro para um grupo de itens.
150
153
  */
151
- static buildGroupExpression(expressionGroup, ignoreInvalidExpressions = false) {
154
+ static buildGroupExpression(expressionGroup) {
152
155
  var _a, _b;
153
156
  if (!((_a = expressionGroup === null || expressionGroup === void 0 ? void 0 : expressionGroup.items) === null || _a === void 0 ? void 0 : _a.length))
154
157
  return "";
155
- const itemExpressions = expressionGroup.items.map((item) => this.buildFilterExpression(item, ignoreInvalidExpressions)).join(` ${expressionGroup.operand} `);
158
+ const itemExpressions = expressionGroup.items.map((item) => this.buildFilterExpression(item)).join(` ${expressionGroup.operand} `);
156
159
  if (((_b = expressionGroup === null || expressionGroup === void 0 ? void 0 : expressionGroup.childrenGroups) === null || _b === void 0 ? void 0 : _b.length) > 0) {
157
160
  const childGroupExpressions = expressionGroup.childrenGroups.map((children) => this.buildGroupExpression(children)).join(` ${expressionGroup.operand} `);
158
161
  return `(${itemExpressions} ${expressionGroup.operand} (${childGroupExpressions}))`;
@@ -239,7 +242,6 @@ class PersonalizedFilterUtils {
239
242
  * do tipo variavel;
240
243
  */
241
244
  static buildVariableParameters(expressionGroup) {
242
- var _a, _b, _c, _d;
243
245
  const allItems = this.buildPlainExpressionItems(expressionGroup);
244
246
  const allParams = [];
245
247
  for (const item of allItems) {
@@ -248,18 +250,7 @@ class PersonalizedFilterUtils {
248
250
  }
249
251
  allParams.push({
250
252
  entityName: item.entityName,
251
- fieldName: item.fieldName,
252
- dataType: item.type,
253
- description: item.description,
254
- userInterface: item.userInterface,
255
- label: item.fieldLabel,
256
- searchContext: {
257
- entity: (_b = (_a = item.props) === null || _a === void 0 ? void 0 : _a.find(prop => prop.name == "ENTITYNAME")) === null || _b === void 0 ? void 0 : _b.value,
258
- entityDescription: (_d = (_c = item.props) === null || _c === void 0 ? void 0 : _c.find(prop => prop.name == "DESCRIPTIONENTITY")) === null || _d === void 0 ? void 0 : _d.value,
259
- searchOptions: {
260
- showInactives: false
261
- }
262
- }
253
+ fieldName: item.fieldName
263
254
  });
264
255
  }
265
256
  return allParams;
@@ -359,12 +359,16 @@ const snkPersonalizedFilterMessages = {
359
359
  labelCancel: "Cancelar",
360
360
  labelSave: "Salvar",
361
361
  labelNameFilter: "Nome do filtro",
362
- labelExpression: "Expressão SQL",
362
+ labelExpression: "Expressão",
363
363
  badgeVariable: "variável",
364
364
  noDataFound: "Nenhum filtro encontrado",
365
365
  condition: "Condição",
366
366
  addGroup: "Adicionar grupo",
367
- applyExpression: "Expressão a ser aplicada:"
367
+ addField: "Adicionar campo",
368
+ applyExpression: "Expressão a ser aplicada:",
369
+ tooltipDisabledAssistentMode: "Expressão não suportada pelo assistente.",
370
+ activeModeAdvanced: "Ativar modo avançado",
371
+ activeModeAssistent: "Ativar modo assistente"
368
372
  },
369
373
  confirmExpression: {
370
374
  title: "Aviso",
@@ -378,6 +382,18 @@ const snkPersonalizedFilterMessages = {
378
382
  title: "Aviso",
379
383
  description: `As alterações realizadas serão descartadas.</br></br><b>Gostaria de continuar?</b>`
380
384
  },
385
+ confirmChangeModeAssistent: {
386
+ title: "Aviso",
387
+ description: `Ao modificar a expressão, o modo assistente será desabilitado.</br></br><b>Gostaria de continuar?</b>`
388
+ },
389
+ confirmChangeModeAdvanced: {
390
+ title: "Aviso",
391
+ description: `Ao retornar ao modo assistente suas alterações serão perdidas.</br></br><b>Gostaria de continuar?</b>`
392
+ },
393
+ confirmSaveModeAdvanced: {
394
+ title: "Aviso",
395
+ description: `Ao modificar a expressão, o modo assistente será desabilitado.</br></br><b>Gostaria de continuar?</b>`
396
+ },
381
397
  operador: {
382
398
  firstLevel: "A seleção será habilitada a partir da adição da segunda linha de regras.",
383
399
  and: "Será verdadeiro se todas as condições forem obedecidas.",
@@ -75,9 +75,9 @@ class FilterBarConfigFetcher extends ResourceFetcher {
75
75
  saveConfig(items, resourceID, configName) {
76
76
  return this.saveResource(this.normalize(items), this.getPath(resourceID, configName));
77
77
  }
78
- getConfig(resourceID, configName) {
78
+ getConfig(resourceID, configName, urlParams) {
79
79
  return new Promise((accept, reject) => {
80
- this.loadResource(this.getPath(resourceID, configName))
80
+ this.loadResource(this.getPath(resourceID, configName, urlParams))
81
81
  .then((configAsString) => {
82
82
  let fieldsList;
83
83
  if (configAsString) {
@@ -125,11 +125,28 @@ class FilterBarConfigFetcher extends ResourceFetcher {
125
125
  return item;
126
126
  });
127
127
  }
128
- getPath(resourceID, name) {
128
+ getPath(resourceID, name, urlParams) {
129
+ let path = `cfg://filter/FilterBarState:${resourceID}`;
129
130
  if (name) {
130
- return `cfg://filter/FilterBarState:${resourceID}.${name}`;
131
+ path += `.${name}`;
131
132
  }
132
- return `cfg://filter/FilterBarState:${resourceID}`;
133
+ if (urlParams) {
134
+ path += this.buildQueryString(urlParams);
135
+ }
136
+ return path;
137
+ }
138
+ buildQueryString(urlParams) {
139
+ let queryString = '?';
140
+ for (let key in urlParams) {
141
+ if (!urlParams.hasOwnProperty(key)) {
142
+ continue;
143
+ }
144
+ if (queryString.length > 1) {
145
+ queryString += '&';
146
+ }
147
+ queryString += key + '=' + urlParams[key];
148
+ }
149
+ return queryString;
133
150
  }
134
151
  }
135
152
 
@@ -15,6 +15,8 @@ export { SnkExporterEmailSender as SnkExporterEmailSender } from '../types/compo
15
15
  export { SnkExpressionGroup as SnkExpressionGroup } from '../types/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group';
16
16
  export { SnkExpressionItem as SnkExpressionItem } from '../types/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item';
17
17
  export { SnkFieldConfig as SnkFieldConfig } from '../types/components/snk-form/subcomponents/snk-field-config/snk-field-config';
18
+ export { SnkFilterAdvancedMode as SnkFilterAdvancedMode } from '../types/components/snk-personalized-filter/subcomponents/snk-filter-advanced-mode/snk-filter-advanced-mode';
19
+ export { SnkFilterAssistentMode as SnkFilterAssistentMode } from '../types/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode';
18
20
  export { SnkFilterBar as SnkFilterBar } from '../types/components/snk-filter-bar/snk-filter-bar';
19
21
  export { SnkFilterBinarySelect as SnkFilterBinarySelect } from '../types/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select';
20
22
  export { SnkFilterDetail as SnkFilterDetail } from '../types/components/snk-filter-bar/filter-item/snk-filter-detail';
@@ -15,6 +15,8 @@ export { SnkExporterEmailSender, defineCustomElement as defineCustomElementSnkEx
15
15
  export { SnkExpressionGroup, defineCustomElement as defineCustomElementSnkExpressionGroup } from './snk-expression-group.js';
16
16
  export { SnkExpressionItem, defineCustomElement as defineCustomElementSnkExpressionItem } from './snk-expression-item.js';
17
17
  export { SnkFieldConfig, defineCustomElement as defineCustomElementSnkFieldConfig } from './snk-field-config.js';
18
+ export { SnkFilterAdvancedMode, defineCustomElement as defineCustomElementSnkFilterAdvancedMode } from './snk-filter-advanced-mode.js';
19
+ export { SnkFilterAssistentMode, defineCustomElement as defineCustomElementSnkFilterAssistentMode } from './snk-filter-assistent-mode.js';
18
20
  export { SnkFilterBar, defineCustomElement as defineCustomElementSnkFilterBar } from './snk-filter-bar.js';
19
21
  export { SnkFilterBinarySelect, defineCustomElement as defineCustomElementSnkFilterBinarySelect } from './snk-filter-binary-select.js';
20
22
  export { SnkFilterDetail, defineCustomElement as defineCustomElementSnkFilterDetail } from './snk-filter-detail.js';
@@ -5,17 +5,19 @@ import './DataFetcher.js';
5
5
  import './pesquisa-fetcher.js';
6
6
  import { P as PresentationMode } from './index2.js';
7
7
  import { V as VIEW_MODE } from './constants.js';
8
- import { d as defineCustomElement$t } from './snk-actions-button2.js';
9
- import { d as defineCustomElement$s } from './snk-attach2.js';
10
- import { d as defineCustomElement$r } from './snk-config-options2.js';
11
- import { d as defineCustomElement$q } from './snk-configurator2.js';
12
- import { d as defineCustomElement$p } from './snk-data-exporter2.js';
13
- import { d as defineCustomElement$o } from './snk-data-unit2.js';
14
- import { d as defineCustomElement$8, a as defineCustomElement$n } from './snk-detail-view2.js';
15
- import { d as defineCustomElement$m } from './snk-exporter-email-sender2.js';
16
- import { d as defineCustomElement$l } from './snk-expression-group2.js';
17
- import { d as defineCustomElement$k } from './snk-expression-item2.js';
18
- import { d as defineCustomElement$j } from './snk-field-config2.js';
8
+ import { d as defineCustomElement$v } from './snk-actions-button2.js';
9
+ import { d as defineCustomElement$u } from './snk-attach2.js';
10
+ import { d as defineCustomElement$t } from './snk-config-options2.js';
11
+ import { d as defineCustomElement$s } from './snk-configurator2.js';
12
+ import { d as defineCustomElement$r } from './snk-data-exporter2.js';
13
+ import { d as defineCustomElement$q } from './snk-data-unit2.js';
14
+ import { d as defineCustomElement$8, a as defineCustomElement$p } from './snk-detail-view2.js';
15
+ import { d as defineCustomElement$o } from './snk-exporter-email-sender2.js';
16
+ import { d as defineCustomElement$n } from './snk-expression-group2.js';
17
+ import { d as defineCustomElement$m } from './snk-expression-item2.js';
18
+ import { d as defineCustomElement$l } from './snk-field-config2.js';
19
+ import { d as defineCustomElement$k } from './snk-filter-advanced-mode2.js';
20
+ import { d as defineCustomElement$j } from './snk-filter-assistent-mode2.js';
19
21
  import { d as defineCustomElement$i } from './snk-filter-bar2.js';
20
22
  import { d as defineCustomElement$h } from './snk-filter-detail2.js';
21
23
  import { d as defineCustomElement$g } from './snk-filter-field-search2.js';
@@ -216,7 +218,7 @@ function defineCustomElement$1() {
216
218
  if (typeof customElements === "undefined") {
217
219
  return;
218
220
  }
219
- const components = ["snk-crud", "snk-actions-button", "snk-attach", "snk-config-options", "snk-configurator", "snk-data-exporter", "snk-data-unit", "snk-detail-view", "snk-exporter-email-sender", "snk-expression-group", "snk-expression-item", "snk-field-config", "snk-filter-bar", "snk-filter-detail", "snk-filter-field-search", "snk-filter-item", "snk-filter-param-config", "snk-form-config", "snk-form-summary", "snk-form-view", "snk-grid", "snk-grid-config", "snk-guides-viewer", "snk-personalized-filter", "snk-select-box", "snk-simple-bar", "snk-simple-crud", "snk-tab-config", "snk-taskbar"];
221
+ const components = ["snk-crud", "snk-actions-button", "snk-attach", "snk-config-options", "snk-configurator", "snk-data-exporter", "snk-data-unit", "snk-detail-view", "snk-exporter-email-sender", "snk-expression-group", "snk-expression-item", "snk-field-config", "snk-filter-advanced-mode", "snk-filter-assistent-mode", "snk-filter-bar", "snk-filter-detail", "snk-filter-field-search", "snk-filter-item", "snk-filter-param-config", "snk-form-config", "snk-form-summary", "snk-form-view", "snk-grid", "snk-grid-config", "snk-guides-viewer", "snk-personalized-filter", "snk-select-box", "snk-simple-bar", "snk-simple-crud", "snk-tab-config", "snk-taskbar"];
220
222
  components.forEach(tagName => { switch (tagName) {
221
223
  case "snk-crud":
222
224
  if (!customElements.get(tagName)) {
@@ -225,55 +227,65 @@ function defineCustomElement$1() {
225
227
  break;
226
228
  case "snk-actions-button":
227
229
  if (!customElements.get(tagName)) {
228
- defineCustomElement$t();
230
+ defineCustomElement$v();
229
231
  }
230
232
  break;
231
233
  case "snk-attach":
232
234
  if (!customElements.get(tagName)) {
233
- defineCustomElement$s();
235
+ defineCustomElement$u();
234
236
  }
235
237
  break;
236
238
  case "snk-config-options":
237
239
  if (!customElements.get(tagName)) {
238
- defineCustomElement$r();
240
+ defineCustomElement$t();
239
241
  }
240
242
  break;
241
243
  case "snk-configurator":
242
244
  if (!customElements.get(tagName)) {
243
- defineCustomElement$q();
245
+ defineCustomElement$s();
244
246
  }
245
247
  break;
246
248
  case "snk-data-exporter":
247
249
  if (!customElements.get(tagName)) {
248
- defineCustomElement$p();
250
+ defineCustomElement$r();
249
251
  }
250
252
  break;
251
253
  case "snk-data-unit":
252
254
  if (!customElements.get(tagName)) {
253
- defineCustomElement$o();
255
+ defineCustomElement$q();
254
256
  }
255
257
  break;
256
258
  case "snk-detail-view":
257
259
  if (!customElements.get(tagName)) {
258
- defineCustomElement$n();
260
+ defineCustomElement$p();
259
261
  }
260
262
  break;
261
263
  case "snk-exporter-email-sender":
262
264
  if (!customElements.get(tagName)) {
263
- defineCustomElement$m();
265
+ defineCustomElement$o();
264
266
  }
265
267
  break;
266
268
  case "snk-expression-group":
267
269
  if (!customElements.get(tagName)) {
268
- defineCustomElement$l();
270
+ defineCustomElement$n();
269
271
  }
270
272
  break;
271
273
  case "snk-expression-item":
272
274
  if (!customElements.get(tagName)) {
273
- defineCustomElement$k();
275
+ defineCustomElement$m();
274
276
  }
275
277
  break;
276
278
  case "snk-field-config":
279
+ if (!customElements.get(tagName)) {
280
+ defineCustomElement$l();
281
+ }
282
+ break;
283
+ case "snk-filter-advanced-mode":
284
+ if (!customElements.get(tagName)) {
285
+ defineCustomElement$k();
286
+ }
287
+ break;
288
+ case "snk-filter-assistent-mode":
277
289
  if (!customElements.get(tagName)) {
278
290
  defineCustomElement$j();
279
291
  }
@@ -8,16 +8,18 @@ import { P as PresentationMode } from './index2.js';
8
8
  import { T as TaskbarElement, d as defineCustomElement$2 } from './snk-taskbar2.js';
9
9
  import { V as VIEW_MODE } from './constants.js';
10
10
  import { T as TaskbarProcessor } from './SnkMultiSelectionListDataSource.js';
11
- import { d as defineCustomElement$r } from './snk-actions-button2.js';
12
- import { d as defineCustomElement$q } from './snk-attach2.js';
13
- import { d as defineCustomElement$p } from './snk-config-options2.js';
14
- import { d as defineCustomElement$o } from './snk-configurator2.js';
15
- import { d as defineCustomElement$n } from './snk-data-exporter2.js';
16
- import { d as defineCustomElement$m } from './snk-data-unit2.js';
11
+ import { d as defineCustomElement$t } from './snk-actions-button2.js';
12
+ import { d as defineCustomElement$s } from './snk-attach2.js';
13
+ import { d as defineCustomElement$r } from './snk-config-options2.js';
14
+ import { d as defineCustomElement$q } from './snk-configurator2.js';
15
+ import { d as defineCustomElement$p } from './snk-data-exporter2.js';
16
+ import { d as defineCustomElement$o } from './snk-data-unit2.js';
17
17
  import { S as SnkMessageBuilder } from './SnkMessageBuilder.js';
18
- import { d as defineCustomElement$l } from './snk-exporter-email-sender2.js';
19
- import { d as defineCustomElement$k } from './snk-expression-group2.js';
20
- import { d as defineCustomElement$j } from './snk-expression-item2.js';
18
+ import { d as defineCustomElement$n } from './snk-exporter-email-sender2.js';
19
+ import { d as defineCustomElement$m } from './snk-expression-group2.js';
20
+ import { d as defineCustomElement$l } from './snk-expression-item2.js';
21
+ import { d as defineCustomElement$j } from './snk-filter-advanced-mode2.js';
22
+ import { d as defineCustomElement$i } from './snk-filter-assistent-mode2.js';
21
23
  import { d as defineCustomElement$h } from './snk-filter-bar2.js';
22
24
  import { d as defineCustomElement$g } from './snk-filter-detail2.js';
23
25
  import { d as defineCustomElement$f } from './snk-filter-field-search2.js';
@@ -31,7 +33,7 @@ import { d as defineCustomElement$7 } from './snk-personalized-filter2.js';
31
33
  import { d as defineCustomElement$6 } from './snk-select-box2.js';
32
34
  import { d as defineCustomElement$5 } from './snk-simple-bar2.js';
33
35
  import { d as defineCustomElement$4 } from './snk-simple-crud2.js';
34
- import { d as defineCustomElement$i } from './snk-field-config2.js';
36
+ import { d as defineCustomElement$k } from './snk-field-config2.js';
35
37
  import { d as defineCustomElement$c } from './snk-form-config2.js';
36
38
  import { d as defineCustomElement$3 } from './snk-tab-config2.js';
37
39
 
@@ -368,7 +370,7 @@ function defineCustomElement$1() {
368
370
  if (typeof customElements === "undefined") {
369
371
  return;
370
372
  }
371
- const components = ["snk-guides-viewer", "snk-actions-button", "snk-attach", "snk-config-options", "snk-configurator", "snk-data-exporter", "snk-data-unit", "snk-detail-view", "snk-exporter-email-sender", "snk-expression-group", "snk-expression-item", "snk-field-config", "snk-filter-bar", "snk-filter-detail", "snk-filter-field-search", "snk-filter-item", "snk-filter-param-config", "snk-form-config", "snk-form-summary", "snk-form-view", "snk-grid", "snk-grid-config", "snk-personalized-filter", "snk-select-box", "snk-simple-bar", "snk-simple-crud", "snk-tab-config", "snk-taskbar"];
373
+ const components = ["snk-guides-viewer", "snk-actions-button", "snk-attach", "snk-config-options", "snk-configurator", "snk-data-exporter", "snk-data-unit", "snk-detail-view", "snk-exporter-email-sender", "snk-expression-group", "snk-expression-item", "snk-field-config", "snk-filter-advanced-mode", "snk-filter-assistent-mode", "snk-filter-bar", "snk-filter-detail", "snk-filter-field-search", "snk-filter-item", "snk-filter-param-config", "snk-form-config", "snk-form-summary", "snk-form-view", "snk-grid", "snk-grid-config", "snk-personalized-filter", "snk-select-box", "snk-simple-bar", "snk-simple-crud", "snk-tab-config", "snk-taskbar"];
372
374
  components.forEach(tagName => { switch (tagName) {
373
375
  case "snk-guides-viewer":
374
376
  if (!customElements.get(tagName)) {
@@ -377,32 +379,32 @@ function defineCustomElement$1() {
377
379
  break;
378
380
  case "snk-actions-button":
379
381
  if (!customElements.get(tagName)) {
380
- defineCustomElement$r();
382
+ defineCustomElement$t();
381
383
  }
382
384
  break;
383
385
  case "snk-attach":
384
386
  if (!customElements.get(tagName)) {
385
- defineCustomElement$q();
387
+ defineCustomElement$s();
386
388
  }
387
389
  break;
388
390
  case "snk-config-options":
389
391
  if (!customElements.get(tagName)) {
390
- defineCustomElement$p();
392
+ defineCustomElement$r();
391
393
  }
392
394
  break;
393
395
  case "snk-configurator":
394
396
  if (!customElements.get(tagName)) {
395
- defineCustomElement$o();
397
+ defineCustomElement$q();
396
398
  }
397
399
  break;
398
400
  case "snk-data-exporter":
399
401
  if (!customElements.get(tagName)) {
400
- defineCustomElement$n();
402
+ defineCustomElement$p();
401
403
  }
402
404
  break;
403
405
  case "snk-data-unit":
404
406
  if (!customElements.get(tagName)) {
405
- defineCustomElement$m();
407
+ defineCustomElement$o();
406
408
  }
407
409
  break;
408
410
  case "snk-detail-view":
@@ -412,20 +414,30 @@ function defineCustomElement$1() {
412
414
  break;
413
415
  case "snk-exporter-email-sender":
414
416
  if (!customElements.get(tagName)) {
415
- defineCustomElement$l();
417
+ defineCustomElement$n();
416
418
  }
417
419
  break;
418
420
  case "snk-expression-group":
419
421
  if (!customElements.get(tagName)) {
420
- defineCustomElement$k();
422
+ defineCustomElement$m();
421
423
  }
422
424
  break;
423
425
  case "snk-expression-item":
424
426
  if (!customElements.get(tagName)) {
425
- defineCustomElement$j();
427
+ defineCustomElement$l();
426
428
  }
427
429
  break;
428
430
  case "snk-field-config":
431
+ if (!customElements.get(tagName)) {
432
+ defineCustomElement$k();
433
+ }
434
+ break;
435
+ case "snk-filter-advanced-mode":
436
+ if (!customElements.get(tagName)) {
437
+ defineCustomElement$j();
438
+ }
439
+ break;
440
+ case "snk-filter-assistent-mode":
429
441
  if (!customElements.get(tagName)) {
430
442
  defineCustomElement$i();
431
443
  }
@@ -772,7 +784,7 @@ function defineCustomElement() {
772
784
  if (typeof customElements === "undefined") {
773
785
  return;
774
786
  }
775
- const components = ["snk-detail-view", "snk-actions-button", "snk-attach", "snk-data-exporter", "snk-data-unit", "snk-exporter-email-sender", "snk-expression-group", "snk-expression-item", "snk-filter-bar", "snk-filter-detail", "snk-filter-field-search", "snk-filter-item", "snk-filter-param-config", "snk-form-summary", "snk-form-view", "snk-grid", "snk-grid-config", "snk-personalized-filter", "snk-select-box", "snk-simple-bar", "snk-simple-crud", "snk-taskbar"];
787
+ const components = ["snk-detail-view", "snk-actions-button", "snk-attach", "snk-data-exporter", "snk-data-unit", "snk-exporter-email-sender", "snk-expression-group", "snk-expression-item", "snk-filter-advanced-mode", "snk-filter-assistent-mode", "snk-filter-bar", "snk-filter-detail", "snk-filter-field-search", "snk-filter-item", "snk-filter-param-config", "snk-form-summary", "snk-form-view", "snk-grid", "snk-grid-config", "snk-personalized-filter", "snk-select-box", "snk-simple-bar", "snk-simple-crud", "snk-taskbar"];
776
788
  components.forEach(tagName => { switch (tagName) {
777
789
  case "snk-detail-view":
778
790
  if (!customElements.get(tagName)) {
@@ -781,39 +793,49 @@ function defineCustomElement() {
781
793
  break;
782
794
  case "snk-actions-button":
783
795
  if (!customElements.get(tagName)) {
784
- defineCustomElement$r();
796
+ defineCustomElement$t();
785
797
  }
786
798
  break;
787
799
  case "snk-attach":
788
800
  if (!customElements.get(tagName)) {
789
- defineCustomElement$q();
801
+ defineCustomElement$s();
790
802
  }
791
803
  break;
792
804
  case "snk-data-exporter":
793
805
  if (!customElements.get(tagName)) {
794
- defineCustomElement$n();
806
+ defineCustomElement$p();
795
807
  }
796
808
  break;
797
809
  case "snk-data-unit":
798
810
  if (!customElements.get(tagName)) {
799
- defineCustomElement$m();
811
+ defineCustomElement$o();
800
812
  }
801
813
  break;
802
814
  case "snk-exporter-email-sender":
803
815
  if (!customElements.get(tagName)) {
804
- defineCustomElement$l();
816
+ defineCustomElement$n();
805
817
  }
806
818
  break;
807
819
  case "snk-expression-group":
808
820
  if (!customElements.get(tagName)) {
809
- defineCustomElement$k();
821
+ defineCustomElement$m();
810
822
  }
811
823
  break;
812
824
  case "snk-expression-item":
825
+ if (!customElements.get(tagName)) {
826
+ defineCustomElement$l();
827
+ }
828
+ break;
829
+ case "snk-filter-advanced-mode":
813
830
  if (!customElements.get(tagName)) {
814
831
  defineCustomElement$j();
815
832
  }
816
833
  break;
834
+ case "snk-filter-assistent-mode":
835
+ if (!customElements.get(tagName)) {
836
+ defineCustomElement$i();
837
+ }
838
+ break;
817
839
  case "snk-filter-bar":
818
840
  if (!customElements.get(tagName)) {
819
841
  defineCustomElement$h();
@@ -36,8 +36,8 @@ const SnkExpressionGroup = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
36
36
  this.updateDashes();
37
37
  }
38
38
  /*
39
- * Retorna o grupo da expressão.
40
- */
39
+ * Retorna o grupo da expressão.
40
+ */
41
41
  async getExpressionGroup() {
42
42
  return this._group;
43
43
  }
@@ -51,9 +51,7 @@ const SnkExpressionGroup = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
51
51
  if (!this.getDataGroupLevel()) {
52
52
  this._element.setAttribute('data-group-level', this.FIRST_LEVEL);
53
53
  }
54
- if (!this.filterId) {
55
- this.canAddExpression = false;
56
- }
54
+ this.canAddExpression = this.group.items.every(this.isFilledItem);
57
55
  }
58
56
  componentDidRender() {
59
57
  this.setSelfTop();
@@ -238,7 +236,7 @@ const SnkExpressionGroup = /*@__PURE__*/ proxyCustomElement(class extends HTMLEl
238
236
  }
239
237
  render() {
240
238
  const canAddGroup = this.canAddGroup();
241
- return (h(Host, null, h("div", { class: !this.isFirstLevel() && this._showDashes ? 'dashes' : 'hidden', style: this.buildGroupStyle() }), h("div", { class: !this.isFirstLevel() && this._showDashes ? 'horizontal-dashes' : 'hidden' }), h("div", { class: 'ez-flex ez-flex--align-items-center' }, h("div", { class: 'snk-expression-group__container-condition ez-flex ez-flex-item--align-center ez-flex--align-items-center', "data-condition": this._conditionOperator, title: this.getTooltipMessageForOperator() }, h("label", { class: "ez-label ez-padding-right--medium ez-padding-left--medium ez-title--primary" }, this.getMessage("snkPersonalizedFilter.info.condition")), h("div", null, h("ez-combo-box", Object.assign({ class: "snk-expression-group__container-option", canShowError: false, mode: "slim", suppressEmptyOption: true, enabled: this.canChangeGroupCondition(), value: this._conditionOperator, onEzChange: (evt) => this.handleConditionOperatorChange(evt.detail.value) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `comboBoxConditions_level_${this.getDataGroupLevel()}` }), h("option", { value: FilterGroupCondition.AND }, "E"), h("option", { value: FilterGroupCondition.OR }, "OU")))), h("ez-button", { class: "ez-padding-right--medium ez-padding-left--medium", mode: "icon", iconName: "plus", size: "small", enabled: this.canAddExpression, title: this.getMessageAddTooltip(), onClick: () => this.handleAddExpression() }), h("ez-button", { label: this.getMessage("snkPersonalizedFilter.info.addGroup"), size: "small", enabled: canAddGroup, title: !canAddGroup ? this.getMessage('snkPersonalizedFilter.info.labelDisabledAddGroupButton', { LIMIT_GROUP_LEVEL: this.LIMIT_GROUP_LEVEL + 1 }) : '', onClick: () => this.handleAddGroup() }, h("ez-icon", { slot: "leftIcon", iconName: "plus" })), !this.isFirstLevel() && h("ez-button", { title: this.getMessage("snkPersonalizedFilter.info.labelDeleteExpression"), class: "ez-padding-left--medium", mode: "icon", iconName: "delete", size: "small", onClick: (evt) => this.confirmRemoveGroup(evt) })), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderExpressionItems())), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderGroups()))));
239
+ return (h(Host, null, h("div", { class: !this.isFirstLevel() && this._showDashes ? 'dashes' : 'hidden', style: this.buildGroupStyle() }), h("div", { class: !this.isFirstLevel() && this._showDashes ? 'horizontal-dashes' : 'hidden' }), h("div", { class: 'ez-flex ez-flex--align-items-center' }, h("div", { class: 'snk-expression-group__container-condition ez-flex ez-flex-item--align-center ez-flex--align-items-center', "data-condition": this._conditionOperator, title: this.getTooltipMessageForOperator() }, h("label", { class: "ez-label ez-padding-right--medium ez-padding-left--medium ez-title--primary" }, this.getMessage("snkPersonalizedFilter.info.condition")), h("div", null, h("ez-combo-box", Object.assign({ class: "snk-expression-group__container-option", canShowError: false, mode: "slim", suppressEmptyOption: true, enabled: this.canChangeGroupCondition(), value: this._conditionOperator, onEzChange: (evt) => this.handleConditionOperatorChange(evt.detail.value) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `comboBoxConditions_level_${this.getDataGroupLevel()}` }), h("option", { value: FilterGroupCondition.AND }, "E"), h("option", { value: FilterGroupCondition.OR }, "OU")))), h("ez-button", { class: "ez-padding-right--medium ez-padding-left--medium", mode: "icon", iconName: "plus", size: "small", enabled: this.canAddExpression, title: this.getMessageAddTooltip(), onClick: () => this.handleAddExpression() }), h("ez-button", { label: this.getMessage("snkPersonalizedFilter.info.addGroup"), size: "small", enabled: canAddGroup, title: !canAddGroup ? this.getMessage('snkPersonalizedFilter.info.labelDisabledAddGroupButton', { LIMIT_GROUP_LEVEL: this.LIMIT_GROUP_LEVEL + 1 }) : '', onClick: () => this.handleAddGroup() }, h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: "plus" })), !this.isFirstLevel() && h("ez-button", { title: this.getMessage("snkPersonalizedFilter.info.labelDeleteExpression"), class: "ez-padding-left--medium", mode: "icon", iconName: "delete", size: "small", onClick: (evt) => this.confirmRemoveGroup(evt) })), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderExpressionItems())), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderGroups()))));
242
240
  }
243
241
  get _element() { return this; }
244
242
  static get watchers() { return {
@@ -71,7 +71,8 @@ const SnkExpressionItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
71
71
  }
72
72
  }
73
73
  componentDidRender() {
74
- this._showValueVariable = this._elValueVariable.value;
74
+ var _a;
75
+ this._showValueVariable = (_a = this._elValueVariable) === null || _a === void 0 ? void 0 : _a.value;
75
76
  }
76
77
  updateFieldSelected() {
77
78
  const field = {
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface SnkFilterAdvancedMode extends Components.SnkFilterAdvancedMode, HTMLElement {}
4
+ export const SnkFilterAdvancedMode: {
5
+ prototype: SnkFilterAdvancedMode;
6
+ new (): SnkFilterAdvancedMode;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,6 @@
1
+ import { S as SnkFilterAdvancedMode$1, d as defineCustomElement$1 } from './snk-filter-advanced-mode2.js';
2
+
3
+ const SnkFilterAdvancedMode = SnkFilterAdvancedMode$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { SnkFilterAdvancedMode, defineCustomElement };