@sankhyalabs/sankhyablocks 8.15.0-dev.8 → 8.15.0-rc.1
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.
- package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
- package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-e7dcf408.js} +13 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{dataunit-fetcher-14108bec.js → pesquisa-fetcher-e4a7c4c3.js} +235 -26
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-actions-button_2.cjs.entry.js +5 -4
- package/dist/cjs/snk-application.cjs.entry.js +12 -4
- package/dist/cjs/snk-attach.cjs.entry.js +388 -57
- package/dist/cjs/snk-crud.cjs.entry.js +3 -4
- package/dist/cjs/snk-data-exporter.cjs.entry.js +3 -3
- package/dist/cjs/{snk-data-unit-1bc69073.js → snk-data-unit-82c08a8c.js} +1 -1
- package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +4 -5
- package/dist/cjs/snk-filter-bar.cjs.entry.js +8 -1
- package/dist/cjs/snk-filter-item.cjs.entry.js +3 -0
- package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
- package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
- package/dist/cjs/{snk-guides-viewer-c8b9374f.js → snk-guides-viewer-d32c096f.js} +2 -3
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +3 -4
- package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +17 -6
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/snk-application/snk-application.js +52 -9
- package/dist/collection/components/snk-attach/snk-attach.js +188 -39
- package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
- package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
- package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
- package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
- package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
- package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +111 -0
- package/dist/collection/components/snk-attach/structure/index.js +6 -3
- package/dist/collection/components/snk-crud/snk-crud.js +1 -1
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +1 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +3 -0
- package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +22 -0
- package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
- package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +53 -1
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +3 -1
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +1 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +29 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +37 -23
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +7 -1
- package/dist/collection/lib/index.js +1 -1
- package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
- package/dist/components/SnkMessageBuilder.js +13 -0
- package/dist/components/dataunit-fetcher.js +74 -27
- package/dist/components/snk-actions-button2.js +1 -0
- package/dist/components/snk-application2.js +11 -1
- package/dist/components/snk-attach2.js +394 -57
- package/dist/components/snk-crud.js +1 -1
- package/dist/components/snk-data-exporter2.js +1 -1
- package/dist/components/snk-filter-bar2.js +9 -1
- package/dist/components/snk-filter-item2.js +3 -0
- package/dist/components/snk-filter-modal.js +4 -2
- package/dist/components/snk-filter-multi-select.js +2 -1
- package/dist/components/snk-pesquisa2.js +1 -1
- package/dist/components/snk-simple-crud2.js +15 -1
- package/dist/components/taskbar-actions-button2.js +3 -1
- package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
- package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-0fb796b9.js} +13 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{dataunit-fetcher-cbec1594.js → pesquisa-fetcher-fa0c2540.js} +235 -27
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button_2.entry.js +5 -4
- package/dist/esm/snk-application.entry.js +11 -3
- package/dist/esm/snk-attach.entry.js +389 -58
- package/dist/esm/snk-crud.entry.js +3 -4
- package/dist/esm/snk-data-exporter.entry.js +3 -3
- package/dist/esm/{snk-data-unit-6208ebf0.js → snk-data-unit-5d201fb3.js} +1 -1
- package/dist/esm/snk-data-unit.entry.js +2 -2
- package/dist/esm/snk-detail-view.entry.js +4 -5
- package/dist/esm/snk-filter-bar.entry.js +8 -1
- package/dist/esm/snk-filter-item.entry.js +3 -0
- package/dist/esm/snk-filter-modal.entry.js +2 -1
- package/dist/esm/snk-filter-multi-select.entry.js +2 -1
- package/dist/esm/{snk-guides-viewer-8da24475.js → snk-guides-viewer-f49613c6.js} +2 -3
- package/dist/esm/snk-guides-viewer.entry.js +3 -4
- package/dist/esm/snk-pesquisa.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +15 -4
- package/dist/sankhyablocks/p-02e3a45b.entry.js +1 -0
- package/dist/sankhyablocks/{p-ff6064e7.js → p-05243555.js} +1 -1
- package/dist/sankhyablocks/p-0ec5b2e5.js +1 -0
- package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
- package/dist/sankhyablocks/p-2582537c.entry.js +1 -0
- package/dist/sankhyablocks/p-282789a6.entry.js +1 -0
- package/dist/sankhyablocks/p-3b0e4e08.js +65 -0
- package/dist/sankhyablocks/{p-0874adb5.entry.js → p-40915359.entry.js} +1 -1
- package/dist/sankhyablocks/p-62896624.entry.js +1 -0
- package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
- package/dist/sankhyablocks/{p-6977a26c.entry.js → p-86801b08.entry.js} +1 -1
- package/dist/sankhyablocks/p-9b5944a4.entry.js +1 -0
- package/dist/sankhyablocks/p-9bdbc7d8.entry.js +1 -0
- package/dist/sankhyablocks/p-ac384baf.entry.js +1 -0
- package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
- package/dist/sankhyablocks/p-c4874327.entry.js +1 -0
- package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
- package/dist/sankhyablocks/{p-ba3d3fa9.entry.js → p-e817f254.entry.js} +3 -3
- package/dist/sankhyablocks/{p-32f0935f.js → p-f3d1c48e.js} +1 -1
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-actions-button/subcomponents/snk-actions-form.d.ts +1 -1
- package/dist/types/components/snk-application/snk-application.d.ts +7 -0
- package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
- package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
- package/dist/types/components/snk-attach/snk-attach.d.ts +27 -6
- package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
- package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +31 -0
- package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
- package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
- package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
- package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +15 -0
- package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +1 -1
- package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +5 -0
- package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +10 -1
- package/dist/types/components.d.ts +74 -2
- package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
- package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +1 -0
- package/dist/types/lib/index.d.ts +1 -1
- package/package.json +7 -5
- package/dist/cjs/pesquisa-fetcher-ef050a47.js +0 -167
- package/dist/esm/pesquisa-fetcher-dd3ca0a5.js +0 -165
- package/dist/sankhyablocks/p-20726710.entry.js +0 -1
- package/dist/sankhyablocks/p-25927311.entry.js +0 -1
- package/dist/sankhyablocks/p-3891ae6f.js +0 -60
- package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
- package/dist/sankhyablocks/p-7d8d7fe9.entry.js +0 -1
- package/dist/sankhyablocks/p-8d70b5d5.entry.js +0 -1
- package/dist/sankhyablocks/p-a9e4bb55.entry.js +0 -1
- package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
- package/dist/sankhyablocks/p-aa0ae6bc.entry.js +0 -1
- package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
- package/dist/sankhyablocks/p-c6e477ff.js +0 -1
- package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
- package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
- package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
- /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
- /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
- /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
- /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
- /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
- /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -17,6 +17,7 @@ export class SnkFilterModal {
|
|
17
17
|
this.editPersonalizedFilter = undefined;
|
18
18
|
this.deletePersonalizedFilter = undefined;
|
19
19
|
this.filtersToDelete = [];
|
20
|
+
this.disablePersonalizedFilter = undefined;
|
20
21
|
}
|
21
22
|
/**
|
22
23
|
* Emitido quando um filtro personalizado é deletado.
|
@@ -233,7 +234,7 @@ export class SnkFilterModal {
|
|
233
234
|
const customFilters = this.filters.filter(filter => filter.filterType === FilterType.CUSTOM_FILTER);
|
234
235
|
const quickFilters = this.filters.filter(filter => filter.filterType === FilterType.QUICK_FILTER);
|
235
236
|
const otherFilters = this.filters.filter(filter => filter.filterType === FilterType.OTHER_FILTERS);
|
236
|
-
return (h("ez-modal-container", { class: "snk-filter-modal__container", modalTitle: this._modalTitle, cancelButtonLabel: this._cancelButtonLabel, okButtonLabel: this._okButtonLabel, onEzModalAction: this.modalActionListener.bind(this) }, h("div", { class: "snk-filter-modal__content ez-col--sd-12" }, this.renderCollapsibleFilterBox(this.getCustomMessage('customFilters'), customFilters, false, false), this.renderCollapsibleFilterBox(this.getCustomMessage('quickFilters'), quickFilters, false), otherFilters.map(filter => this.renderCollapsibleFilterBox(filter.label, [filter], true)))));
|
237
|
+
return (h("ez-modal-container", { class: "snk-filter-modal__container", modalTitle: this._modalTitle, cancelButtonLabel: this._cancelButtonLabel, okButtonLabel: this._okButtonLabel, onEzModalAction: this.modalActionListener.bind(this) }, h("div", { class: "snk-filter-modal__content ez-col--sd-12" }, !this.disablePersonalizedFilter && this.renderCollapsibleFilterBox(this.getCustomMessage('customFilters'), customFilters, false, false), this.renderCollapsibleFilterBox(this.getCustomMessage('quickFilters'), quickFilters, false), otherFilters.map(filter => this.renderCollapsibleFilterBox(filter.label, [filter], true)))));
|
237
238
|
}
|
238
239
|
static get is() { return "snk-filter-modal"; }
|
239
240
|
static get originalStyleUrls() {
|
@@ -411,6 +412,23 @@ export class SnkFilterModal {
|
|
411
412
|
"text": "Guarda filtros a serem deletados no Apply do modal"
|
412
413
|
},
|
413
414
|
"defaultValue": "[]"
|
415
|
+
},
|
416
|
+
"disablePersonalizedFilter": {
|
417
|
+
"type": "boolean",
|
418
|
+
"mutable": false,
|
419
|
+
"complexType": {
|
420
|
+
"original": "boolean",
|
421
|
+
"resolved": "boolean",
|
422
|
+
"references": {}
|
423
|
+
},
|
424
|
+
"required": false,
|
425
|
+
"optional": false,
|
426
|
+
"docs": {
|
427
|
+
"tags": [],
|
428
|
+
"text": "Desabilita a apresenta\u00E7\u00E3o da op\u00E7\u00E3o de filtros personalizados na filter bar (chip de filtros) \ne no modal lateral de filtros (container de filtros personalizados)."
|
429
|
+
},
|
430
|
+
"attribute": "disable-personalized-filter",
|
431
|
+
"reflect": false
|
414
432
|
}
|
415
433
|
};
|
416
434
|
}
|
@@ -31,6 +31,7 @@ export class SnkFilterBar {
|
|
31
31
|
this.resourceID = undefined;
|
32
32
|
this.filterConfig = undefined;
|
33
33
|
this.messagesBuilder = undefined;
|
34
|
+
this.disablePersonalizedFilter = undefined;
|
34
35
|
this.allowDefault = undefined;
|
35
36
|
this.scrollerLocked = false;
|
36
37
|
this.showPersonalizedFilter = false;
|
@@ -179,6 +180,9 @@ export class SnkFilterBar {
|
|
179
180
|
*/
|
180
181
|
getMessage(key, params, defaultValue) {
|
181
182
|
var _a;
|
183
|
+
if (this.messagesBuilder == undefined && this._application) {
|
184
|
+
this.messagesBuilder = this._application.messagesBuilder;
|
185
|
+
}
|
182
186
|
return ((_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, params)) || defaultValue;
|
183
187
|
}
|
184
188
|
getFilter(_dataUnit) {
|
@@ -340,6 +344,7 @@ export class SnkFilterBar {
|
|
340
344
|
filterConfig: filtersConfigCopy,
|
341
345
|
configName: this.configName,
|
342
346
|
onComplete: callbackOnApplyFilter,
|
347
|
+
disablePersonalizedFilter: this.disablePersonalizedFilter,
|
343
348
|
getMessage: (key, props) => this.getMessage(key, props),
|
344
349
|
onAddPersonalizedFilter: () => this.addPersonalizedFilter(),
|
345
350
|
onEditPersonalizedFilter: (id) => this.editPersonalizedFilter(id),
|
@@ -510,6 +515,23 @@ export class SnkFilterBar {
|
|
510
515
|
"tags": [],
|
511
516
|
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
512
517
|
}
|
518
|
+
},
|
519
|
+
"disablePersonalizedFilter": {
|
520
|
+
"type": "boolean",
|
521
|
+
"mutable": false,
|
522
|
+
"complexType": {
|
523
|
+
"original": "boolean",
|
524
|
+
"resolved": "boolean",
|
525
|
+
"references": {}
|
526
|
+
},
|
527
|
+
"required": false,
|
528
|
+
"optional": false,
|
529
|
+
"docs": {
|
530
|
+
"tags": [],
|
531
|
+
"text": "Desabilita a apresenta\u00E7\u00E3o da op\u00E7\u00E3o de filtros personalizados na filter bar (chip de filtros) \ne no modal lateral de filtros (container de filtros personalizados)."
|
532
|
+
},
|
533
|
+
"attribute": "disable-personalized-filter",
|
534
|
+
"reflect": false
|
513
535
|
}
|
514
536
|
};
|
515
537
|
}
|
@@ -1,10 +1,11 @@
|
|
1
1
|
import { ApplicationUtils } from "@sankhyalabs/ezui/dist/collection/utils";
|
2
2
|
class SnkFilterModalFactory {
|
3
|
-
constructor({ filterConfig, configName, onComplete, getMessage, onAddPersonalizedFilter, onEditPersonalizedFilter, onDeletePersonalizedFilter }) {
|
3
|
+
constructor({ filterConfig, configName, onComplete, getMessage, disablePersonalizedFilter, onAddPersonalizedFilter, onEditPersonalizedFilter, onDeletePersonalizedFilter }) {
|
4
4
|
this._filterConfig = filterConfig;
|
5
5
|
this._configName = configName;
|
6
6
|
this._onComplete = onComplete;
|
7
7
|
this._getMessage = getMessage;
|
8
|
+
this._disablePersonalizedFilter = disablePersonalizedFilter;
|
8
9
|
this._addPersonalizedFilterFn = onAddPersonalizedFilter;
|
9
10
|
this._editPersonalizedFilterFn = onEditPersonalizedFilter;
|
10
11
|
this._onDeletePersonalizedFilter = onDeletePersonalizedFilter;
|
@@ -18,6 +19,7 @@ class SnkFilterModalFactory {
|
|
18
19
|
filterModal.className = "ez-size-height--full";
|
19
20
|
filterModal.filters = this._filterConfig;
|
20
21
|
filterModal.configName = this._configName;
|
22
|
+
filterModal.disablePersonalizedFilter = this._disablePersonalizedFilter;
|
21
23
|
filterModal.getMessage = this._getMessage.bind(this);
|
22
24
|
filterModal.applyFilters = this.applyFilters.bind(this);
|
23
25
|
filterModal.closeModal = () => this._closeModal();
|
@@ -6,7 +6,7 @@
|
|
6
6
|
--snk-pesquisa--font-family: var(--font-pattern, Arial);
|
7
7
|
/*@doc Define o peso da fonte do componente.*/
|
8
8
|
--snk-pesquisa--font-weight: var(--text-weight--medium, 400);
|
9
|
-
|
9
|
+
|
10
10
|
/* records */
|
11
11
|
/*@doc Define a cor da fonte do indicador de registros do componente.*/
|
12
12
|
--snk-pesquisa__records--color: var(--text--primary, #626e82);
|
@@ -39,7 +39,6 @@
|
|
39
39
|
/*@doc Define a largura da barra de rolagem do componente.*/
|
40
40
|
--snk-pesquisa__scrollbar--width: var(--space--medium, 12px);
|
41
41
|
|
42
|
-
max-height: 100%;
|
43
42
|
height: 100%;
|
44
43
|
display: flex;
|
45
44
|
flex-direction: column;
|
@@ -70,7 +69,6 @@
|
|
70
69
|
.snk-pesquisa__content {
|
71
70
|
display: flex;
|
72
71
|
flex-direction: column;
|
73
|
-
height: 100%;
|
74
72
|
overflow-y: auto;
|
75
73
|
scrollbar-width: thin;
|
76
74
|
|
@@ -148,4 +146,4 @@
|
|
148
146
|
.snk-pesquisa__btn:hover {
|
149
147
|
/*public*/
|
150
148
|
color: var(--snk-pesquisa__btn-hover--color);
|
151
|
-
}
|
149
|
+
}
|
@@ -34,6 +34,8 @@ export class SnkSimpleCrud {
|
|
34
34
|
this.taskbarManager = undefined;
|
35
35
|
this.messagesBuilder = undefined;
|
36
36
|
this.useEnterLikeTab = false;
|
37
|
+
this.actionsList = undefined;
|
38
|
+
this.configName = undefined;
|
37
39
|
}
|
38
40
|
resolveInMemoryBtns(taskbarButtons) {
|
39
41
|
const newTaskBarConfig = [...taskbarButtons];
|
@@ -232,7 +234,7 @@ export class SnkSimpleCrud {
|
|
232
234
|
}
|
233
235
|
getActionsList() {
|
234
236
|
var _a, _b;
|
235
|
-
|
237
|
+
const hardList = [{
|
236
238
|
value: StringUtils.generateUUID(),
|
237
239
|
label: (_b = (_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage("snkSimpleCrud.findColumn", undefined)) !== null && _b !== void 0 ? _b : "Buscar",
|
238
240
|
disableCloseOnSelect: true,
|
@@ -241,6 +243,16 @@ export class SnkSimpleCrud {
|
|
241
243
|
? this.getColumnSearch(actionButton, item)
|
242
244
|
: this.getFieldSearch(actionButton, item)
|
243
245
|
}];
|
246
|
+
if (this.taskbarManager != undefined && this.taskbarManager.getMoreOptions != undefined) {
|
247
|
+
const taskbarID = this.getTopTaskBarId();
|
248
|
+
return hardList.concat(this.taskbarManager.getMoreOptions(taskbarID, this.configName, this.dataState, this.actionsList));
|
249
|
+
}
|
250
|
+
return hardList.concat(this.actionsList);
|
251
|
+
}
|
252
|
+
getTopTaskBarId() {
|
253
|
+
var _a;
|
254
|
+
return ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? `snkGridTopTaskbar.finish_edition${PresentationMode.PRIMARY}` :
|
255
|
+
`snkGridTopTaskbar.regular${PresentationMode.PRIMARY}`;
|
244
256
|
}
|
245
257
|
async keyDownListener(event) {
|
246
258
|
if (!event.ctrlKey || event.key == undefined || event.key.toUpperCase() !== "F") {
|
@@ -494,6 +506,46 @@ export class SnkSimpleCrud {
|
|
494
506
|
"attribute": "use-enter-like-tab",
|
495
507
|
"reflect": false,
|
496
508
|
"defaultValue": "false"
|
509
|
+
},
|
510
|
+
"actionsList": {
|
511
|
+
"type": "unknown",
|
512
|
+
"mutable": false,
|
513
|
+
"complexType": {
|
514
|
+
"original": "Array<Action>",
|
515
|
+
"resolved": "Action[]",
|
516
|
+
"references": {
|
517
|
+
"Array": {
|
518
|
+
"location": "global"
|
519
|
+
},
|
520
|
+
"Action": {
|
521
|
+
"location": "import",
|
522
|
+
"path": "../snk-taskbar/snk-taskbar"
|
523
|
+
}
|
524
|
+
}
|
525
|
+
},
|
526
|
+
"required": false,
|
527
|
+
"optional": false,
|
528
|
+
"docs": {
|
529
|
+
"tags": [],
|
530
|
+
"text": "A\u00E7\u00F5es a serem colocadas no bot\u00E3o \"Mais op\u00E7\u00F5es\" do componente snk-taskbar."
|
531
|
+
}
|
532
|
+
},
|
533
|
+
"configName": {
|
534
|
+
"type": "string",
|
535
|
+
"mutable": true,
|
536
|
+
"complexType": {
|
537
|
+
"original": "string",
|
538
|
+
"resolved": "string",
|
539
|
+
"references": {}
|
540
|
+
},
|
541
|
+
"required": false,
|
542
|
+
"optional": false,
|
543
|
+
"docs": {
|
544
|
+
"tags": [],
|
545
|
+
"text": "Usado para salvar as configura\u00E7\u00F5es dos blocos de constru\u00E7\u00E3o."
|
546
|
+
},
|
547
|
+
"attribute": "config-name",
|
548
|
+
"reflect": false
|
497
549
|
}
|
498
550
|
};
|
499
551
|
}
|
@@ -67,7 +67,7 @@ export class TaskbarActionsButton {
|
|
67
67
|
}
|
68
68
|
}
|
69
69
|
getSelectedAction(id, actions) {
|
70
|
-
let selectedItem;
|
70
|
+
let selectedItem = null;
|
71
71
|
for (const item of actions) {
|
72
72
|
if (item.id === id) {
|
73
73
|
selectedItem = item;
|
@@ -76,6 +76,8 @@ export class TaskbarActionsButton {
|
|
76
76
|
if (!(item === null || item === void 0 ? void 0 : item.children))
|
77
77
|
continue;
|
78
78
|
selectedItem = this.getSelectedAction(id, item.children);
|
79
|
+
if (selectedItem)
|
80
|
+
break;
|
79
81
|
}
|
80
82
|
return selectedItem;
|
81
83
|
}
|
@@ -13,7 +13,7 @@ export default class InMemoryLoader {
|
|
13
13
|
this.dataUnit.loadMetadata().then(() => this.dataUnit.loadData());
|
14
14
|
}
|
15
15
|
getRecordsToLoad() {
|
16
|
-
if (this._initialRecords == undefined
|
16
|
+
if (this._initialRecords == undefined || this.dataUnit.records.length > 0) {
|
17
17
|
this._initialRecords = this.dataUnit.records;
|
18
18
|
}
|
19
19
|
return this._initialRecords;
|
@@ -1,6 +1,11 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
|
1
|
+
import { SaveErrorsEnum } from "./interfaces";
|
2
|
+
import { DataFetcher } from "../../DataFetcher";
|
3
|
+
const SERVICE = {
|
4
|
+
save: "AnexoSistemaSP.salvar",
|
5
|
+
delete: "AnexoSistemaSP.excluir",
|
6
|
+
download: "AnexoSistemaSP.baixar",
|
7
|
+
};
|
8
|
+
export class AnexoSistemaFetcher {
|
4
9
|
constructor(entityName, registerKey, dataUnitName) {
|
5
10
|
var _a;
|
6
11
|
this.entityName = entityName;
|
@@ -18,14 +23,13 @@ export class AttachFetcher {
|
|
18
23
|
}
|
19
24
|
async save(change) {
|
20
25
|
var _a, _b;
|
21
|
-
const serviceName = "AnexoSistemaSP.salvar";
|
22
26
|
let { updatingFields: fields } = change;
|
23
27
|
fields = Object.assign(Object.assign({}, fields), { NOMEARQUIVO: (_a = fields.NOMEARQUIVO) === null || _a === void 0 ? void 0 : _a[0] });
|
24
28
|
try {
|
25
29
|
this.validateFields(fields);
|
26
30
|
const fileInfo = !fields.LINK ? fields.NOMEARQUIVO : null;
|
27
31
|
const reqBody = {
|
28
|
-
serviceName,
|
32
|
+
serviceName: SERVICE.save,
|
29
33
|
requestBody: {
|
30
34
|
params: {
|
31
35
|
resourceID: this.resourceID,
|
@@ -41,7 +45,7 @@ export class AttachFetcher {
|
|
41
45
|
}
|
42
46
|
}
|
43
47
|
};
|
44
|
-
const result = await DataFetcher.get().callServiceBroker(
|
48
|
+
const result = await DataFetcher.get().callServiceBroker(SERVICE.save, JSON.stringify(reqBody));
|
45
49
|
return Promise.resolve([Object.assign(Object.assign(Object.assign({}, result), fields), { ARQUIVOOULINK: !!fields.LINK ? fields.LINK : fileInfo === null || fileInfo === void 0 ? void 0 : fileInfo.name, __owner__dataunit__name__: this.dataUnitName })]);
|
46
50
|
}
|
47
51
|
catch (error) {
|
@@ -50,7 +54,6 @@ export class AttachFetcher {
|
|
50
54
|
}
|
51
55
|
async edit(change) {
|
52
56
|
var _a, _b, _c;
|
53
|
-
const serviceName = "AnexoSistemaSP.salvar";
|
54
57
|
let { updatingFields: fields, record } = change;
|
55
58
|
const getFieldValue = (fieldValue) => {
|
56
59
|
if (fields[fieldValue] !== undefined)
|
@@ -64,7 +67,7 @@ export class AttachFetcher {
|
|
64
67
|
try {
|
65
68
|
this.validateFields(fields);
|
66
69
|
const reqBody = {
|
67
|
-
serviceName,
|
70
|
+
serviceName: SERVICE.save,
|
68
71
|
requestBody: {
|
69
72
|
params: {
|
70
73
|
resourceID: this.resourceID,
|
@@ -82,7 +85,7 @@ export class AttachFetcher {
|
|
82
85
|
}
|
83
86
|
}
|
84
87
|
};
|
85
|
-
const result = await DataFetcher.get().callServiceBroker(
|
88
|
+
const result = await DataFetcher.get().callServiceBroker(SERVICE.save, JSON.stringify(reqBody));
|
86
89
|
return Promise.resolve([Object.assign(Object.assign(Object.assign({}, result), fields), { ARQUIVOOULINK: !!fields.LINK ? fields.LINK : fileInfo === null || fileInfo === void 0 ? void 0 : fileInfo.name, __owner__dataunit__name__: this.dataUnitName })]);
|
87
90
|
}
|
88
91
|
catch (error) {
|
@@ -91,10 +94,9 @@ export class AttachFetcher {
|
|
91
94
|
}
|
92
95
|
delete(record) {
|
93
96
|
var _a;
|
94
|
-
const serviceName = "AnexoSistemaSP.excluir";
|
95
97
|
const attachField = ((_a = record.NOMEARQUIVO) === null || _a === void 0 ? void 0 : _a[0]) || {};
|
96
98
|
const reqBody = {
|
97
|
-
serviceName,
|
99
|
+
serviceName: SERVICE.delete,
|
98
100
|
requestBody: {
|
99
101
|
paramsDelete: {
|
100
102
|
keyAttach: record.CHAVEARQUIVO,
|
@@ -106,17 +108,16 @@ export class AttachFetcher {
|
|
106
108
|
}
|
107
109
|
};
|
108
110
|
return new Promise((resolve, reject) => {
|
109
|
-
DataFetcher.get().callServiceBroker(
|
111
|
+
DataFetcher.get().callServiceBroker(SERVICE.delete, JSON.stringify(reqBody))
|
110
112
|
.then(result => resolve(result))
|
111
113
|
.catch(error => reject(error));
|
112
114
|
});
|
113
115
|
}
|
114
116
|
getDownloadKey(record) {
|
115
117
|
var _a;
|
116
|
-
const serviceName = "AnexoSistemaSP.baixar";
|
117
118
|
const attachField = ((_a = record.NOMEARQUIVO) === null || _a === void 0 ? void 0 : _a[0]) || {};
|
118
119
|
const reqBody = {
|
119
|
-
serviceName,
|
120
|
+
serviceName: SERVICE.download,
|
120
121
|
requestBody: {
|
121
122
|
paramsDown: {
|
122
123
|
nameAttach: attachField === null || attachField === void 0 ? void 0 : attachField.name,
|
@@ -128,7 +129,7 @@ export class AttachFetcher {
|
|
128
129
|
}
|
129
130
|
};
|
130
131
|
return new Promise((resolve, reject) => {
|
131
|
-
DataFetcher.get().callServiceBroker(
|
132
|
+
DataFetcher.get().callServiceBroker(SERVICE.download, JSON.stringify(reqBody))
|
132
133
|
.then(result => resolve(result))
|
133
134
|
.catch(error => reject(error));
|
134
135
|
});
|
@@ -0,0 +1,90 @@
|
|
1
|
+
import { SaveErrorsEnum } from "./interfaces";
|
2
|
+
import { DataFetcher } from "../../DataFetcher";
|
3
|
+
const SERVICE = {
|
4
|
+
save: "Attach.save",
|
5
|
+
delete: "Attach.remove",
|
6
|
+
view: "Attach.view",
|
7
|
+
repository: "RepositorioArquivoSP.abreArquivo"
|
8
|
+
};
|
9
|
+
export class AttachFetcher {
|
10
|
+
constructor(dataUnitName) {
|
11
|
+
this.dataUnitName = dataUnitName;
|
12
|
+
}
|
13
|
+
async save({ dataUnit: dataUnitName, record, updatingFields: fields, operation }) {
|
14
|
+
var _a, _b;
|
15
|
+
const isInsert = operation == "INSERT";
|
16
|
+
const dataBody = isInsert ? fields : record;
|
17
|
+
if (!isInsert && (fields === null || fields === void 0 ? void 0 : fields.DESCRICAO) && (fields === null || fields === void 0 ? void 0 : fields.DESCRICAO) !== (record === null || record === void 0 ? void 0 : record.DESCRICAO)) {
|
18
|
+
throw new Error(SaveErrorsEnum.DESCRIPTION_CANNOT_BE_CHANGED);
|
19
|
+
}
|
20
|
+
const reqBody = {
|
21
|
+
"anexo": {
|
22
|
+
"codata": isInsert ? fields === null || fields === void 0 ? void 0 : fields.REGISTER_KEY : record === null || record === void 0 ? void 0 : record.CODATA,
|
23
|
+
"sequencia": (dataBody === null || dataBody === void 0 ? void 0 : dataBody.SEQUENCIA) || "0",
|
24
|
+
"tipo": (dataBody === null || dataBody === void 0 ? void 0 : dataBody.TIPO) || "N",
|
25
|
+
"descricao": dataBody === null || dataBody === void 0 ? void 0 : dataBody.DESCRICAO,
|
26
|
+
"arquivo": (_b = (_a = fields.CAMINHO_ARQUIVO) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.name,
|
27
|
+
"ehInclusao": isInsert ? "S" : "N",
|
28
|
+
"ehArquivoRepositorio": "N"
|
29
|
+
}
|
30
|
+
};
|
31
|
+
return new Promise((resolve, reject) => {
|
32
|
+
DataFetcher.get().callServiceBroker(SERVICE.save, JSON.stringify(reqBody))
|
33
|
+
.then(result => {
|
34
|
+
var _a;
|
35
|
+
return resolve([Object.assign(Object.assign(Object.assign({}, result), fields), { __owner__dataunit__name__: (_a = this.dataUnitName) !== null && _a !== void 0 ? _a : dataUnitName })]);
|
36
|
+
})
|
37
|
+
.catch(error => reject(error));
|
38
|
+
});
|
39
|
+
}
|
40
|
+
async edit(change) {
|
41
|
+
throw new Error("Method not implemented.");
|
42
|
+
}
|
43
|
+
async delete(record) {
|
44
|
+
var request = {
|
45
|
+
anexo: {
|
46
|
+
codata: record.CODATA,
|
47
|
+
tipo: record.TIPO,
|
48
|
+
descricao: record.DESCRICAO,
|
49
|
+
}
|
50
|
+
};
|
51
|
+
const result = await DataFetcher.get().callServiceBroker(SERVICE.delete, JSON.stringify(request));
|
52
|
+
return Promise.resolve(result);
|
53
|
+
}
|
54
|
+
async getDownloadKey(record) {
|
55
|
+
var _a, _b, _c;
|
56
|
+
if (record.EHARQUIVOREPOSITORIO == 'S') {
|
57
|
+
const request = {
|
58
|
+
config: {
|
59
|
+
path: record.ARQUIVO,
|
60
|
+
tipoconteudo: record.TIPOCONTEUDO
|
61
|
+
}
|
62
|
+
};
|
63
|
+
const result = await DataFetcher.get().callServiceBroker(SERVICE.repository, JSON.stringify(request));
|
64
|
+
return Promise.resolve({
|
65
|
+
chave: {
|
66
|
+
valor: (_b = (_a = result === null || result === void 0 ? void 0 : result.responseBody) === null || _a === void 0 ? void 0 : _a.chave) === null || _b === void 0 ? void 0 : _b.valor
|
67
|
+
}
|
68
|
+
});
|
69
|
+
}
|
70
|
+
const criteria = {
|
71
|
+
anexo: {
|
72
|
+
codata: record.CODATA,
|
73
|
+
codemp: record.CODEMP,
|
74
|
+
sequencia: record.SEQUENCIA,
|
75
|
+
tipo: record.TIPO,
|
76
|
+
descricao: record.DESCRICAO,
|
77
|
+
tipoConteudo: record.TIPOCONTEUDO
|
78
|
+
}
|
79
|
+
};
|
80
|
+
const result = await DataFetcher.get().callServiceBroker(SERVICE.view, JSON.stringify(criteria));
|
81
|
+
if (result === null || result === void 0 ? void 0 : result.chaveAnexo) {
|
82
|
+
return Promise.resolve({
|
83
|
+
chave: {
|
84
|
+
valor: (_c = result === null || result === void 0 ? void 0 : result.chaveAnexo) === null || _c === void 0 ? void 0 : _c.idChaveAnexo
|
85
|
+
}
|
86
|
+
});
|
87
|
+
}
|
88
|
+
return Promise.reject(new Error("File not found."));
|
89
|
+
}
|
90
|
+
}
|
package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -3,4 +3,5 @@ export var SaveErrorsEnum;
|
|
3
3
|
SaveErrorsEnum["LINK_AND_FILE_AT_THE_SAME_TIME"] = "LINK_AND_FILE_AT_THE_SAME_TIME";
|
4
4
|
SaveErrorsEnum["ANY_LINK_OR_FILE_FILLED"] = "ANY_LINK_OR_FILE_FILLED";
|
5
5
|
SaveErrorsEnum["UNKNOWN"] = "UNKNOWN";
|
6
|
+
SaveErrorsEnum["DESCRIPTION_CANNOT_BE_CHANGED"] = "DESCRIPTION_CANNOT_BE_CHANGED";
|
6
7
|
})(SaveErrorsEnum || (SaveErrorsEnum = {}));
|
@@ -171,14 +171,41 @@ export default class DataUnitFetcher {
|
|
171
171
|
});
|
172
172
|
});
|
173
173
|
}
|
174
|
+
addTransientProperties(dataUnit, updatingFields) {
|
175
|
+
const loaderProps = dataUnit.getGlobalLoaderProps();
|
176
|
+
if (loaderProps == undefined || loaderProps.size === 0) {
|
177
|
+
return updatingFields;
|
178
|
+
}
|
179
|
+
if (updatingFields == undefined) {
|
180
|
+
updatingFields = {};
|
181
|
+
}
|
182
|
+
Array.from(loaderProps.entries()).forEach(([name, value]) => {
|
183
|
+
updatingFields[`transient.${name}`] = value;
|
184
|
+
});
|
185
|
+
return updatingFields;
|
186
|
+
}
|
187
|
+
getUpdatingFields(dataUnit, originalUpdatingFields) {
|
188
|
+
if (originalUpdatingFields == undefined) {
|
189
|
+
return;
|
190
|
+
}
|
191
|
+
const updatingFields = Object.assign({}, originalUpdatingFields);
|
192
|
+
Object.keys(updatingFields).forEach(key => {
|
193
|
+
const descriptor = dataUnit.getField(key);
|
194
|
+
if (descriptor != undefined && descriptor.standAlone) {
|
195
|
+
delete updatingFields[key];
|
196
|
+
}
|
197
|
+
});
|
198
|
+
return this.addTransientProperties(dataUnit, updatingFields);
|
199
|
+
}
|
174
200
|
saveData(dataUnit, duChanges) {
|
175
201
|
const updatedRecordsIds = [];
|
176
202
|
const addedRecordsIds = [];
|
177
203
|
const changes = duChanges.map((change) => {
|
178
|
-
const { dataUnit: changeDU, record,
|
204
|
+
const { dataUnit: changeDU, record, operation } = change;
|
179
205
|
const dataUnitInstance = DataUnitStorage.get(changeDU);
|
206
|
+
const updatingFields = this.getUpdatingFields(dataUnitInstance, change.updatingFields);
|
180
207
|
let parsedUpdatingFields;
|
181
|
-
if (updatingFields) {
|
208
|
+
if (updatingFields != undefined) {
|
182
209
|
parsedUpdatingFields = Object.entries(updatingFields).map(([fieldName, value]) => {
|
183
210
|
const descriptor = dataUnitInstance.getField(fieldName);
|
184
211
|
const dataType = descriptor ? descriptor.dataType : DataType.TEXT;
|
package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js
CHANGED
@@ -6,30 +6,39 @@ export class DatasetStrategy {
|
|
6
6
|
canSlice() {
|
7
7
|
return false;
|
8
8
|
}
|
9
|
+
processSortingSide(request, dataUnit, serverSideFilters) {
|
10
|
+
const localSorting = [];
|
11
|
+
const serverSorting = [];
|
12
|
+
if (request.sort != undefined) {
|
13
|
+
if (serverSideFilters.length === 0) {
|
14
|
+
return { localSorting: request.sort, serverSorting: [] };
|
15
|
+
}
|
16
|
+
for (const sort of request.sort) {
|
17
|
+
const descriptor = dataUnit.getField(sort.field);
|
18
|
+
const local = descriptor != undefined
|
19
|
+
&& descriptor.properties != undefined
|
20
|
+
&& descriptor.properties.calculated === "true";
|
21
|
+
if (local) {
|
22
|
+
localSorting.push(sort);
|
23
|
+
}
|
24
|
+
else {
|
25
|
+
serverSorting.push(sort);
|
26
|
+
}
|
27
|
+
}
|
28
|
+
}
|
29
|
+
return { localSorting, serverSorting };
|
30
|
+
}
|
9
31
|
async load(dataUnit, request, loadingInfo) {
|
32
|
+
var _a, _b;
|
10
33
|
if (dataUnit.metadata == undefined) {
|
11
34
|
return Promise.resolve({ records: [], loadingInfo });
|
12
35
|
}
|
13
36
|
try {
|
14
|
-
const
|
15
|
-
const serverSorting =
|
16
|
-
if (request.sort != undefined) {
|
17
|
-
for (const sort of request.sort) {
|
18
|
-
const descriptor = dataUnit.getField(sort.field);
|
19
|
-
const local = descriptor != undefined
|
20
|
-
&& descriptor.properties != undefined
|
21
|
-
&& descriptor.properties.calculated === "true";
|
22
|
-
if (local) {
|
23
|
-
localSorting.push(sort);
|
24
|
-
}
|
25
|
-
else {
|
26
|
-
serverSorting.push(sort);
|
27
|
-
}
|
28
|
-
}
|
29
|
-
}
|
37
|
+
const serverSideFilters = (_b = (_a = request.filters) === null || _a === void 0 ? void 0 : _a.filter(filter => !filter.name.startsWith("FILTRO_COLUNA_"))) !== null && _b !== void 0 ? _b : [];
|
38
|
+
const { localSorting, serverSorting } = this.processSortingSide(request, dataUnit, serverSideFilters);
|
30
39
|
const fields = this.getFieldsList(dataUnit);
|
31
40
|
const serviceName = "DatasetSP.loadRecords";
|
32
|
-
const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting);
|
41
|
+
const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting, serverSideFilters);
|
33
42
|
const params = loadingInfo.quiet ? { urlParams: { quietMode: "true" } } : undefined;
|
34
43
|
const { result: responseRecords, pagerID: pagerId } = await DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
|
35
44
|
const records = this.processRecords(dataUnit, fields, responseRecords);
|
@@ -73,7 +82,7 @@ export class DatasetStrategy {
|
|
73
82
|
}
|
74
83
|
return [descriptor.name, descriptionField];
|
75
84
|
}
|
76
|
-
buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting) {
|
85
|
+
buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting, serverSideFilters) {
|
77
86
|
const dataSetID = dataUnit.dataUnitId;
|
78
87
|
const dataUnitName = dataUnit.name;
|
79
88
|
const entityName = DataUnitFetcher.parseDataUnitName(dataUnitName).entityName;
|
@@ -92,7 +101,7 @@ export class DatasetStrategy {
|
|
92
101
|
tryJoinedFields: true,
|
93
102
|
parallelLoader: useParallelLoader,
|
94
103
|
crudListener: `br.com.sankhya.bff.${this.getModuleName()}.BFFDataUnitDatasetAdapter`,
|
95
|
-
txProperties: this.getTxProperties(
|
104
|
+
txProperties: this.getTxProperties(dataUnit, request, sorting, serverSideFilters),
|
96
105
|
useDefaultRowsLimit: false
|
97
106
|
}
|
98
107
|
};
|
@@ -103,12 +112,10 @@ export class DatasetStrategy {
|
|
103
112
|
const moduleName = app.getModuleName();
|
104
113
|
return moduleName.replace("-bff", "");
|
105
114
|
}
|
106
|
-
getTxProperties(
|
107
|
-
var _a, _b;
|
115
|
+
getTxProperties(dataUnit, request, sorting, serverSideFilters) {
|
108
116
|
const txProperties = {
|
109
|
-
"__DATA_UNIT_ADAPTER__[dataUnitName]":
|
117
|
+
"__DATA_UNIT_ADAPTER__[dataUnitName]": dataUnit.name
|
110
118
|
};
|
111
|
-
const serverSideFilters = (_b = (_a = request.filters) === null || _a === void 0 ? void 0 : _a.filter(filter => !filter.name.startsWith("FILTRO_COLUNA_"))) !== null && _b !== void 0 ? _b : [];
|
112
119
|
if (serverSideFilters.length !== 0) {
|
113
120
|
txProperties["__DATA_UNIT_ADAPTER__[criteria]"] = JSON.stringify(serverSideFilters);
|
114
121
|
}
|
@@ -118,6 +125,13 @@ export class DatasetStrategy {
|
|
118
125
|
if (request.parentRecordId != undefined) {
|
119
126
|
txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
|
120
127
|
}
|
128
|
+
const loaderProps = dataUnit.getGlobalLoaderProps();
|
129
|
+
if (loaderProps == undefined || loaderProps.size === 0) {
|
130
|
+
return txProperties;
|
131
|
+
}
|
132
|
+
Array.from(loaderProps.entries()).forEach(([name, value]) => {
|
133
|
+
txProperties[name] = value;
|
134
|
+
});
|
121
135
|
return txProperties;
|
122
136
|
}
|
123
137
|
processRecords(dataUnit, fields, responseRecords) {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { DataType } from "@sankhyalabs/core";
|
1
|
+
import { ApplicationContext, DataType } from "@sankhyalabs/core";
|
2
2
|
import { gql } from "graphql-request";
|
3
3
|
import { DataFetcher } from "../DataFetcher";
|
4
4
|
export class PesquisaFetcher {
|
@@ -67,6 +67,12 @@ export class PesquisaFetcher {
|
|
67
67
|
externalCriteria.params = {
|
68
68
|
param: values.criteria.params.map(param => {
|
69
69
|
let value = param.value;
|
70
|
+
if (typeof value === "string") {
|
71
|
+
const match = /CTX\{([^}]+)\}/.exec(value);
|
72
|
+
if (match) {
|
73
|
+
value = ApplicationContext.getContextValue(`__SNK__APPLICATION__FILTER__CONTEXT(${match[1]})__`);
|
74
|
+
}
|
75
|
+
}
|
70
76
|
let type = param.dataType;
|
71
77
|
if (type === DataType.OBJECT) {
|
72
78
|
value = value.value;
|
@@ -4,7 +4,7 @@ export { CrudUtils } from './utils/CrudUtils';
|
|
4
4
|
export { PresentationMode } from "./@types";
|
5
5
|
export { TotalsFetcher } from './http/data-fetcher/fetchers/totals-fetcher';
|
6
6
|
export { default as ApplicationConfigFetcher } from './http/data-fetcher/fetchers/application-config-fetcher';
|
7
|
-
export { AttachFetcher } from './http/data-fetcher/fetchers/
|
7
|
+
export { AttachFetcher, AnexoSistemaFetcher } from './http/data-fetcher/fetchers/AttachFetcher';
|
8
8
|
export { default as DataUnitFetcher } from './http/data-fetcher/fetchers/data-unit/dataunit-fetcher';
|
9
9
|
export { default as FilterBarConfigFetcher } from './http/data-fetcher/fetchers/filter-bar-config-fetcher';
|
10
10
|
export { FormConfigFetcher } from './http/data-fetcher/fetchers/form-config-fetcher';
|