@sankhyalabs/sankhyablocks 8.15.0-dev.8 → 8.15.0-dev.81
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/{ConfigStorage-302bbbd4.js → ConfigStorage-942ce74b.js} +70 -7
- package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-313debd8.js} +18 -8
- package/dist/cjs/IExporterProvider-0c814e9a.js +230 -0
- package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
- package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
- package/dist/cjs/{SnkFormConfigManager-71c4768e.js → SnkFormConfigManager-52f99b4d.js} +23 -15
- package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-4a95fe86.js} +25 -13
- package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-54f5ff9d.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-14108bec.js → dataunit-fetcher-620b29a1.js} +409 -77
- package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-2dd00e5b.js} +13 -1
- package/dist/cjs/index-f9e81701.js +2 -10
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pesquisa-fetcher-ef050a47.js → pesquisa-fetcher-680e198f.js} +12 -13
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +526 -8
- package/dist/cjs/snk-application.cjs.entry.js +88 -26
- package/dist/cjs/snk-attach.cjs.entry.js +441 -65
- package/dist/cjs/snk-configurator.cjs.entry.js +1 -1
- package/dist/cjs/snk-crud.cjs.entry.js +125 -28
- package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +6 -2
- package/dist/cjs/snk-data-exporter.cjs.entry.js +207 -83
- package/dist/cjs/snk-data-unit-eca53cfc.js +671 -0
- package/dist/cjs/snk-data-unit.cjs.entry.js +11 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +52 -13
- package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
- package/dist/cjs/snk-filter-bar.cjs.entry.js +65 -8
- package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
- package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
- 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-form-config.cjs.entry.js +47 -27
- package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
- package/dist/cjs/snk-form.cjs.entry.js +60 -8
- package/dist/cjs/snk-grid.cjs.entry.js +200 -122
- package/dist/cjs/{snk-guides-viewer-c8b9374f.js → snk-guides-viewer-5d5f0f25.js} +56 -20
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
- package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
- package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +512 -40
- package/dist/cjs/snk-taskbar.cjs.entry.js +164 -21
- package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
- package/dist/collection/collection-manifest.json +8 -8
- package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
- package/dist/collection/components/snk-application/snk-application.js +148 -24
- package/dist/collection/components/snk-attach/snk-attach.js +231 -44
- 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 +118 -0
- package/dist/collection/components/snk-attach/structure/index.js +6 -3
- package/dist/collection/components/snk-configurator/snk-configurator.js +1 -1
- package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
- package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
- package/dist/collection/components/snk-crud/snk-crud.js +359 -19
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +137 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +163 -13
- package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.css +1 -1
- package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.js +22 -1
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
- package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
- package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +44 -50
- package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
- package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +501 -216
- package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
- package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
- 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/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
- 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.css +24 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +175 -3
- package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
- package/dist/collection/components/snk-form/snk-form.js +126 -5
- package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +22 -14
- package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
- package/dist/collection/components/snk-grid/snk-grid.js +360 -115
- package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
- package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
- package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
- package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +847 -23
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
- package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +218 -20
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
- package/dist/collection/lib/configs/ConfigStorage.js +63 -3
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +15 -42
- package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
- package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
- package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
- package/dist/collection/lib/http/data-fetcher/DataFetcher.js +18 -8
- 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/DataUnitDataLoader.js +3 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +30 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +87 -24
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
- package/dist/collection/lib/index.js +1 -1
- package/dist/collection/lib/message/SnkMessageBuilder.js +25 -32
- package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
- package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -0
- package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
- package/dist/collection/lib/utils/CrudUtils.js +13 -1
- package/dist/components/ConfigStorage.js +68 -5
- package/dist/components/DataFetcher.js +18 -8
- package/dist/components/IExporterProvider.js +298 -0
- package/dist/components/ISave.js +42 -0
- package/dist/components/SnkFormConfigManager.js +21 -13
- package/dist/components/SnkMessageBuilder.js +25 -13
- package/dist/components/dataunit-fetcher.js +185 -241
- package/dist/components/form-config-fetcher.js +12 -0
- package/dist/components/index.d.ts +6 -6
- package/dist/components/index2.js +198 -33
- package/dist/{esm/pesquisa-fetcher-dd3ca0a5.js → components/pesquisa-fetcher.js} +13 -14
- package/dist/components/snk-actions-button2.js +4 -10
- package/dist/components/snk-application2.js +86 -20
- package/dist/components/snk-attach2.js +496 -72
- package/dist/components/snk-configurator2.js +1 -1
- package/dist/components/snk-crud.js +133 -23
- package/dist/components/snk-custom-slot-elements.js +7 -3
- package/dist/components/snk-data-exporter2.js +202 -83
- package/dist/components/snk-data-unit2.js +464 -214
- package/dist/components/snk-detail-view2.js +137 -23
- package/dist/components/snk-entity-list.js +5 -3
- package/dist/components/snk-expression-item2.js +1 -1
- package/dist/components/snk-filter-bar2.js +69 -6
- package/dist/components/snk-filter-detail2.js +5 -1
- package/dist/components/snk-filter-item2.js +14 -6
- package/dist/components/snk-filter-modal.js +4 -2
- package/dist/components/snk-filter-multi-select.js +2 -1
- package/dist/components/snk-form-config2.js +46 -26
- package/dist/components/snk-form-view2.js +72 -1
- package/dist/components/snk-form.js +60 -5
- package/dist/components/snk-grid-config2.js +128 -102
- package/dist/components/snk-grid2.js +209 -119
- package/dist/components/snk-personalized-filter-editor.js +3 -1
- package/dist/components/snk-personalized-filter2.js +1 -1
- package/dist/components/snk-pesquisa2.js +1 -1
- package/dist/components/snk-simple-crud2.js +574 -36
- package/dist/components/snk-taskbar2.js +186 -36
- package/dist/components/taskbar-actions-button2.js +4 -2
- package/dist/esm/{ConfigStorage-4151acc8.js → ConfigStorage-86187da3.js} +70 -7
- package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-c1baf61d.js} +18 -8
- package/dist/esm/IExporterProvider-c0194569.js +221 -0
- package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
- package/dist/esm/RecordIDUtils-87d02110.js +41 -0
- package/dist/esm/{SnkFormConfigManager-5c7d3771.js → SnkFormConfigManager-5b0d69cd.js} +23 -15
- package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-3a767111.js} +25 -13
- package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-039abba3.js} +1 -1
- package/dist/esm/{dataunit-fetcher-cbec1594.js → dataunit-fetcher-3fbf9d12.js} +392 -70
- package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-30fb808f.js} +13 -1
- package/dist/esm/index-a7d3d3f1.js +2 -10
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-fetcher-03c8f919.js +164 -0
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +525 -9
- package/dist/esm/snk-application.entry.js +88 -26
- package/dist/esm/snk-attach.entry.js +441 -65
- package/dist/esm/snk-configurator.entry.js +1 -1
- package/dist/esm/snk-crud.entry.js +125 -28
- package/dist/esm/snk-custom-slot-elements.entry.js +7 -3
- package/dist/esm/snk-data-exporter.entry.js +208 -84
- package/dist/esm/snk-data-unit-49b898f7.js +669 -0
- package/dist/esm/snk-data-unit.entry.js +11 -2
- package/dist/esm/snk-detail-view.entry.js +52 -13
- package/dist/esm/snk-entity-list.entry.js +5 -3
- package/dist/esm/snk-filter-bar.entry.js +65 -8
- package/dist/esm/snk-filter-detail.entry.js +4 -1
- package/dist/esm/snk-filter-item.entry.js +13 -6
- package/dist/esm/snk-filter-modal-item.entry.js +3 -3
- 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-form-config.entry.js +48 -28
- package/dist/esm/snk-form-view.entry.js +67 -0
- package/dist/esm/snk-form.entry.js +60 -8
- package/dist/esm/snk-grid.entry.js +200 -122
- package/dist/esm/{snk-guides-viewer-8da24475.js → snk-guides-viewer-ef8c4eec.js} +56 -20
- package/dist/esm/snk-guides-viewer.entry.js +10 -10
- package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
- package/dist/esm/snk-personalized-filter.entry.js +3 -3
- package/dist/esm/snk-pesquisa.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +505 -33
- package/dist/esm/snk-taskbar.entry.js +165 -22
- package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
- package/dist/sankhyablocks/p-039c7148.entry.js +1 -0
- package/dist/sankhyablocks/p-04821c60.entry.js +1 -0
- package/dist/sankhyablocks/p-060fdb6c.js +1 -0
- package/dist/sankhyablocks/p-14a08904.entry.js +1 -0
- package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
- package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
- package/dist/sankhyablocks/p-21a81901.entry.js +1 -0
- package/dist/sankhyablocks/p-294df368.entry.js +1 -0
- package/dist/sankhyablocks/p-2ac8bd11.entry.js +1 -0
- package/dist/sankhyablocks/p-32062be4.entry.js +1 -0
- package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
- package/dist/sankhyablocks/p-3f1efb97.entry.js +1 -0
- package/dist/sankhyablocks/p-47b60deb.entry.js +1 -0
- package/dist/sankhyablocks/p-4ce73e88.js +1 -0
- package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
- package/dist/sankhyablocks/p-58687027.entry.js +1 -0
- package/dist/sankhyablocks/p-5fa1576b.entry.js +11 -0
- package/dist/sankhyablocks/p-61dd89eb.js +1 -0
- package/dist/sankhyablocks/p-672302c3.js +60 -0
- package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
- package/dist/sankhyablocks/p-7663f597.entry.js +1 -0
- package/dist/sankhyablocks/p-8322ccdb.entry.js +1 -0
- package/dist/sankhyablocks/p-913a9979.js +1 -0
- package/dist/sankhyablocks/p-9863d682.js +1 -0
- package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-a1d72395.entry.js} +1 -1
- package/dist/sankhyablocks/p-a64baa0f.entry.js +1 -0
- package/dist/sankhyablocks/p-af8efd95.js +6 -0
- package/dist/sankhyablocks/p-aff76a53.js +56 -0
- package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
- package/dist/sankhyablocks/p-ba05fdb8.entry.js +1 -0
- package/dist/sankhyablocks/p-babe7665.js +1 -0
- package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
- package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
- package/dist/sankhyablocks/p-d26365ad.js +1 -0
- package/dist/sankhyablocks/{p-9695f78b.js → p-dc7c9047.js} +1 -1
- package/dist/sankhyablocks/p-df5451c7.js +26 -0
- package/dist/sankhyablocks/p-e5c25e0b.entry.js +1 -0
- package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
- package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-eae7a817.entry.js} +1 -1
- package/dist/sankhyablocks/p-f88cfc3c.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
- package/dist/types/components/snk-application/snk-application.d.ts +27 -5
- 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 +34 -10
- 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 +40 -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 +16 -0
- package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
- package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
- package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +57 -1
- package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +24 -1
- package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +30 -1
- package/dist/types/components/snk-custom-slot-elements/snk-custom-slot-elements.d.ts +6 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
- package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
- package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
- package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
- package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
- package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
- package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +61 -2
- package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
- 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 +31 -1
- package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
- package/dist/types/components/snk-form/snk-form.d.ts +20 -1
- package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
- package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
- package/dist/types/components/snk-grid/snk-grid.d.ts +69 -7
- package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
- package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
- package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +142 -6
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +38 -1
- package/dist/types/components.d.ts +536 -18
- package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
- package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
- package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -3
- package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
- package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
- package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
- 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/DataUnitDataLoader.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
- 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/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +7 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
- package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
- package/dist/types/lib/index.d.ts +1 -1
- package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
- package/package.json +15 -6
- package/dist/cjs/PreloadManager-84466da6.js +0 -224
- package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
- package/dist/cjs/snk-data-unit-1bc69073.js +0 -462
- package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
- package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
- package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
- package/dist/components/field-search.js +0 -121
- package/dist/components/index3.js +0 -199
- package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
- package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
- package/dist/esm/snk-data-unit-6208ebf0.js +0 -460
- package/dist/esm/snk-grid-config.entry.js +0 -479
- package/dist/esm/snk-select-box.entry.js +0 -21
- package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
- package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
- package/dist/sankhyablocks/p-094c30cb.js +0 -1
- package/dist/sankhyablocks/p-0d7863ed.js +0 -26
- package/dist/sankhyablocks/p-1d75d9f9.entry.js +0 -1
- package/dist/sankhyablocks/p-20726710.entry.js +0 -1
- package/dist/sankhyablocks/p-25927311.entry.js +0 -1
- package/dist/sankhyablocks/p-32f0935f.js +0 -1
- package/dist/sankhyablocks/p-374d03f6.js +0 -1
- package/dist/sankhyablocks/p-3891ae6f.js +0 -60
- package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
- package/dist/sankhyablocks/p-573a07c5.js +0 -1
- package/dist/sankhyablocks/p-5f74c859.entry.js +0 -1
- package/dist/sankhyablocks/p-69754d94.entry.js +0 -1
- package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
- package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
- package/dist/sankhyablocks/p-761ed32f.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-98674137.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-aa95fb2c.js +0 -56
- package/dist/sankhyablocks/p-b05ab13d.entry.js +0 -1
- package/dist/sankhyablocks/p-ba3d3fa9.entry.js +0 -11
- package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
- package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
- package/dist/sankhyablocks/p-c6e477ff.js +0 -1
- package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
- package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
- package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
- package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
- package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
- package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
- package/dist/sankhyablocks/p-e6380c60.js +0 -1
- package/dist/sankhyablocks/p-ff6064e7.js +0 -1
- package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
- /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/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
- /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
- /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
- /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
- /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
- /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
- /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +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
package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js
CHANGED
@@ -2,34 +2,43 @@ import { ApplicationContext, StringUtils, UserInterface, } from '@sankhyalabs/co
|
|
2
2
|
import { DataFetcher } from "../../../DataFetcher";
|
3
3
|
import DataUnitFetcher from "../dataunit-fetcher";
|
4
4
|
import InMemoryLoader from "../../../../../dataUnit/InMemoryLoader";
|
5
|
+
import { getRecordValue } from '../../../../../dataUnit/ValueFormatter';
|
5
6
|
export class DatasetStrategy {
|
6
7
|
canSlice() {
|
7
8
|
return false;
|
8
9
|
}
|
10
|
+
processSortingSide(request, dataUnit, serverSideFilters) {
|
11
|
+
var _a;
|
12
|
+
const localSorting = [];
|
13
|
+
const serverSorting = [];
|
14
|
+
if (request.sort != undefined) {
|
15
|
+
if (serverSideFilters.length === 0) {
|
16
|
+
return { localSorting: request.sort, serverSorting: [] };
|
17
|
+
}
|
18
|
+
for (const sort of request.sort) {
|
19
|
+
const descriptor = dataUnit.getField(sort.field);
|
20
|
+
const local = ((_a = descriptor === null || descriptor === void 0 ? void 0 : descriptor.properties) === null || _a === void 0 ? void 0 : _a.calculated) === "true" || (descriptor === null || descriptor === void 0 ? void 0 : descriptor.userInterface) === UserInterface.LONGTEXT;
|
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);
|
@@ -48,6 +57,53 @@ export class DatasetStrategy {
|
|
48
57
|
return Promise.reject(error);
|
49
58
|
}
|
50
59
|
}
|
60
|
+
async loadRowMetadata(snkDataUnit, fieldName, metadataName, updatedFields = {}) {
|
61
|
+
try {
|
62
|
+
const serviceName = "DatasetSP.loadRowMetadata";
|
63
|
+
const parsedRequestBody = await this.buildRequestBodyLoadRowMetadata({ snkDataUnit, fieldName, metadataName, serviceName, updatedFields });
|
64
|
+
const response = await DataFetcher.get().callServiceBroker(serviceName, parsedRequestBody);
|
65
|
+
return response;
|
66
|
+
}
|
67
|
+
catch (error) {
|
68
|
+
console.error(error);
|
69
|
+
return Promise.reject(error);
|
70
|
+
}
|
71
|
+
}
|
72
|
+
async buildRequestBodyLoadRowMetadata({ snkDataUnit, serviceName, fieldName, metadataName, updatedFields, }) {
|
73
|
+
const dataUnit = snkDataUnit.dataUnit;
|
74
|
+
const entityName = DataUnitFetcher.parseDataUnitName(dataUnit.name).entityName;
|
75
|
+
const recordIdInfo = await snkDataUnit.getSelectedRecordsIDsInfo();
|
76
|
+
const pk = recordIdInfo.reduce((accumulator, currentValue) => {
|
77
|
+
accumulator[currentValue.name] = currentValue.value;
|
78
|
+
return accumulator;
|
79
|
+
}, {});
|
80
|
+
const record = dataUnit.getSelectedRecord();
|
81
|
+
const fields = dataUnit.metadata.fields.filter(({ standAlone, name }) => !standAlone && !name.includes(".")).map(({ name }) => name);
|
82
|
+
const values = fields.reduce((accumulator, currentValue, currentIndex) => {
|
83
|
+
const recordValue = getRecordValue(record, currentValue);
|
84
|
+
const updatedFieldValue = getRecordValue(updatedFields, currentValue);
|
85
|
+
accumulator[currentIndex] = updatedFieldValue !== undefined ? updatedFieldValue : recordValue;
|
86
|
+
return accumulator;
|
87
|
+
}, {});
|
88
|
+
const requestBody = {
|
89
|
+
serviceName,
|
90
|
+
requestBody: {
|
91
|
+
dataSetID: dataUnit.dataUnitId,
|
92
|
+
entityName,
|
93
|
+
standAlone: false,
|
94
|
+
metadataName,
|
95
|
+
fieldName,
|
96
|
+
fields,
|
97
|
+
record: {
|
98
|
+
pk,
|
99
|
+
oldPk: pk,
|
100
|
+
values,
|
101
|
+
},
|
102
|
+
}
|
103
|
+
};
|
104
|
+
const parsedRequestBody = JSON.stringify(requestBody);
|
105
|
+
return parsedRequestBody;
|
106
|
+
}
|
51
107
|
getFieldsList(dataUnit) {
|
52
108
|
let fields = ["__record__id__", "__record__label__"];
|
53
109
|
dataUnit.metadata.fields.forEach((descriptor) => {
|
@@ -73,7 +129,7 @@ export class DatasetStrategy {
|
|
73
129
|
}
|
74
130
|
return [descriptor.name, descriptionField];
|
75
131
|
}
|
76
|
-
buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting) {
|
132
|
+
buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, sorting, serverSideFilters) {
|
77
133
|
const dataSetID = dataUnit.dataUnitId;
|
78
134
|
const dataUnitName = dataUnit.name;
|
79
135
|
const entityName = DataUnitFetcher.parseDataUnitName(dataUnitName).entityName;
|
@@ -92,7 +148,7 @@ export class DatasetStrategy {
|
|
92
148
|
tryJoinedFields: true,
|
93
149
|
parallelLoader: useParallelLoader,
|
94
150
|
crudListener: `br.com.sankhya.bff.${this.getModuleName()}.BFFDataUnitDatasetAdapter`,
|
95
|
-
txProperties: this.getTxProperties(
|
151
|
+
txProperties: this.getTxProperties(dataUnit, request, sorting, serverSideFilters),
|
96
152
|
useDefaultRowsLimit: false
|
97
153
|
}
|
98
154
|
};
|
@@ -103,12 +159,10 @@ export class DatasetStrategy {
|
|
103
159
|
const moduleName = app.getModuleName();
|
104
160
|
return moduleName.replace("-bff", "");
|
105
161
|
}
|
106
|
-
getTxProperties(
|
107
|
-
var _a, _b;
|
162
|
+
getTxProperties(dataUnit, request, sorting, serverSideFilters) {
|
108
163
|
const txProperties = {
|
109
|
-
"__DATA_UNIT_ADAPTER__[dataUnitName]":
|
164
|
+
"__DATA_UNIT_ADAPTER__[dataUnitName]": dataUnit.name
|
110
165
|
};
|
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
166
|
if (serverSideFilters.length !== 0) {
|
113
167
|
txProperties["__DATA_UNIT_ADAPTER__[criteria]"] = JSON.stringify(serverSideFilters);
|
114
168
|
}
|
@@ -118,13 +172,22 @@ export class DatasetStrategy {
|
|
118
172
|
if (request.parentRecordId != undefined) {
|
119
173
|
txProperties["__DATA_UNIT_ADAPTER__[parentRecordId]"] = request.parentRecordId;
|
120
174
|
}
|
175
|
+
const loaderProps = dataUnit.getGlobalLoaderProps();
|
176
|
+
if (loaderProps == undefined || loaderProps.size === 0) {
|
177
|
+
return txProperties;
|
178
|
+
}
|
179
|
+
Array.from(loaderProps.entries()).forEach(([name, value]) => {
|
180
|
+
txProperties[name] = value;
|
181
|
+
});
|
121
182
|
return txProperties;
|
122
183
|
}
|
123
184
|
processRecords(dataUnit, fields, responseRecords) {
|
124
185
|
return responseRecords.map((dataFrame) => {
|
186
|
+
const lastElement = dataFrame[dataFrame.length - 1];
|
125
187
|
const duRecord = {
|
126
188
|
__record__id__: dataFrame[0],
|
127
|
-
__record__label__: dataFrame[1]
|
189
|
+
__record__label__: dataFrame[1],
|
190
|
+
__record__metadata__: lastElement['_rmd'],
|
128
191
|
};
|
129
192
|
dataUnit.metadata.fields.forEach(fieldDescriptor => {
|
130
193
|
duRecord[fieldDescriptor.name] = this.buildFieldValue(fieldDescriptor, fields, dataFrame);
|
@@ -0,0 +1,22 @@
|
|
1
|
+
const metadataMock = {
|
2
|
+
"label": "metadataMock",
|
3
|
+
"name": "metadataMock",
|
4
|
+
"fields": [
|
5
|
+
{
|
6
|
+
"name": "TESTE",
|
7
|
+
"label": "Teste",
|
8
|
+
"dataType": "TEXT"
|
9
|
+
},
|
10
|
+
{
|
11
|
+
"name": "TESTERMP",
|
12
|
+
"label": "Teste com RMP",
|
13
|
+
"dataType": "TEXT",
|
14
|
+
"properties": {
|
15
|
+
"rmp": {
|
16
|
+
"value": "PRODUTORMP"
|
17
|
+
}
|
18
|
+
}
|
19
|
+
}
|
20
|
+
]
|
21
|
+
};
|
22
|
+
export default metadataMock;
|
@@ -168,6 +168,18 @@ export class FormConfigFetcher extends ResourceFetcher {
|
|
168
168
|
}
|
169
169
|
return `cfg://${authority}/${resourceID}`;
|
170
170
|
}
|
171
|
+
async fetchLegacyConfigurableForm(configName) {
|
172
|
+
const payload = { 'requestBody': { 'config': { 'chave': configName, 'tipo': 'T' } } };
|
173
|
+
const response = await DataFetcher.get().callServiceBroker('SystemUtilsSP.getConf', JSON.stringify(payload));
|
174
|
+
if (ObjectUtils.isEmpty(response))
|
175
|
+
return undefined;
|
176
|
+
return this.buildLegacyConfigurableForm(response);
|
177
|
+
}
|
178
|
+
buildLegacyConfigurableForm(config) {
|
179
|
+
var _a, _b, _c;
|
180
|
+
const rawFields = (_c = (_b = (_a = config === null || config === void 0 ? void 0 : config.formConfig) === null || _a === void 0 ? void 0 : _a.layout) === null || _b === void 0 ? void 0 : _b.field) !== null && _c !== void 0 ? _c : [];
|
181
|
+
return { emptyConfig: false, fields: Array.isArray(rawFields) ? rawFields : [rawFields] };
|
182
|
+
}
|
171
183
|
}
|
172
184
|
export var UserConfigType;
|
173
185
|
(function (UserConfigType) {
|
@@ -3,7 +3,22 @@ import { DateUtils, StringUtils, ObjectUtils } from "@sankhyalabs/core";
|
|
3
3
|
import { DataFetcher } from "../DataFetcher";
|
4
4
|
export default class ParametersFetcher {
|
5
5
|
constructor() {
|
6
|
+
this._embeddedParams = new Map();
|
6
7
|
this.templateByQuery = new Map();
|
8
|
+
try {
|
9
|
+
if (window["MGE_PARAMS"] != undefined) {
|
10
|
+
const source = atob(window['MGE_PARAMS']);
|
11
|
+
const params = source.split('__;__');
|
12
|
+
params.forEach(param => {
|
13
|
+
const [key, value] = param.split("__=__");
|
14
|
+
this._embeddedParams.set(key, value);
|
15
|
+
});
|
16
|
+
}
|
17
|
+
}
|
18
|
+
catch (error) {
|
19
|
+
console.error("Problemas ao obter parâmetros embarcados");
|
20
|
+
console.error(error);
|
21
|
+
}
|
7
22
|
this.buldTemplates();
|
8
23
|
}
|
9
24
|
buldTemplates() {
|
@@ -15,6 +30,9 @@ export default class ParametersFetcher {
|
|
15
30
|
}`);
|
16
31
|
}
|
17
32
|
async getParam(name) {
|
33
|
+
if (this._embeddedParams.has(name)) {
|
34
|
+
return Promise.resolve(this._embeddedParams.get(name));
|
35
|
+
}
|
18
36
|
const completPath = `param://application?params=${name}`;
|
19
37
|
return DataFetcher.get().callGraphQL({
|
20
38
|
values: { name: completPath },
|
@@ -52,6 +70,9 @@ export default class ParametersFetcher {
|
|
52
70
|
if (Array.isArray(obj) && obj.length > 0) {
|
53
71
|
obj = obj[0];
|
54
72
|
}
|
73
|
+
if (typeof obj === "string") {
|
74
|
+
return obj;
|
75
|
+
}
|
55
76
|
if (StringUtils.isEmpty(obj.resource))
|
56
77
|
return "";
|
57
78
|
try {
|
@@ -52,7 +52,7 @@ export default class PersonalizedFilterFetcher {
|
|
52
52
|
assistent
|
53
53
|
}
|
54
54
|
}`);
|
55
|
-
this.templateByQuery.set("savePersonalizedFilter", gql `
|
55
|
+
this.templateByQuery.set("savePersonalizedFilter", gql `
|
56
56
|
mutation($name: String!, $filterAssistent: InputFilterAssistent!) {
|
57
57
|
$queryAlias$: savePersonalizedFilter(name: $name, filterAssistent: $filterAssistent) {
|
58
58
|
id
|
@@ -74,11 +74,11 @@ export default class PersonalizedFilterFetcher {
|
|
74
74
|
}
|
75
75
|
}`);
|
76
76
|
}
|
77
|
-
async loadPersonalizedFilter(resourceID, filterID, configName) {
|
77
|
+
async loadPersonalizedFilter(resourceID, filterID, configName, legacyConfigName) {
|
78
78
|
return new Promise((resolve, reject) => {
|
79
79
|
DataFetcher.get()
|
80
80
|
.callGraphQL({
|
81
|
-
values: { name: this.resolveURI(resourceID, configName) + "/" + filterID },
|
81
|
+
values: { name: this.resolveURI(resourceID, configName) + "/" + filterID + this.resolveLegacyConfigName(legacyConfigName) },
|
82
82
|
query: this.templateByQuery.get("fetchFilterAssistent"),
|
83
83
|
})
|
84
84
|
.then((resp) => {
|
@@ -90,6 +90,9 @@ export default class PersonalizedFilterFetcher {
|
|
90
90
|
});
|
91
91
|
});
|
92
92
|
}
|
93
|
+
resolveLegacyConfigName(legacyConfigName) {
|
94
|
+
return legacyConfigName ? `?legacyResourceID=${legacyConfigName}` : '';
|
95
|
+
}
|
93
96
|
async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
|
94
97
|
if (!personalizedFilter || Object.keys(personalizedFilter).length == 0) {
|
95
98
|
return Promise.reject(new Error("personalizedFilter não pode ser vazio"));
|
@@ -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 {
|
@@ -50,12 +50,12 @@ export class PesquisaFetcher {
|
|
50
50
|
});
|
51
51
|
}
|
52
52
|
loadAdvancedSearch(entityName, argument, criteria, searchOptions) {
|
53
|
-
var _a, _b, _c;
|
53
|
+
var _a, _b, _c, _d, _e;
|
54
54
|
const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
|
55
55
|
const values = {
|
56
56
|
argument: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.argument) || argument,
|
57
57
|
criteria: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) || criteria,
|
58
|
-
searchOptions: (listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions)
|
58
|
+
searchOptions: Object.assign(Object.assign({}, searchOptions), listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions),
|
59
59
|
};
|
60
60
|
const serviceName = "PesquisaSP.getSuggestion";
|
61
61
|
const externalCriteria = {
|
@@ -63,10 +63,16 @@ export class PesquisaFetcher {
|
|
63
63
|
$: (_a = values.criteria) === null || _a === void 0 ? void 0 : _a.expression
|
64
64
|
}
|
65
65
|
};
|
66
|
-
if (((_b = values.criteria) === null || _b === void 0 ? void 0 : _b.params.length) > 0) {
|
66
|
+
if (((_c = (_b = values.criteria) === null || _b === void 0 ? void 0 : _b.params) === null || _c === void 0 ? void 0 : _c.length) > 0) {
|
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;
|
@@ -80,18 +86,11 @@ export class PesquisaFetcher {
|
|
80
86
|
};
|
81
87
|
}
|
82
88
|
const options = searchOptions != undefined
|
83
|
-
? {
|
84
|
-
"pkFieldName": searchOptions.codeFieldName,
|
85
|
-
"label": searchOptions.descriptionFieldName,
|
86
|
-
"fieldName": searchOptions.codeFieldName,
|
87
|
-
"useDescriptionOptions": false,
|
88
|
-
"enableRowsCounter": true
|
89
|
-
}
|
90
|
-
: undefined;
|
89
|
+
? Object.assign(Object.assign({}, values === null || values === void 0 ? void 0 : values.searchOptions), { "pkFieldName": searchOptions.codeFieldName, "label": searchOptions.descriptionFieldName, "fieldName": searchOptions.codeFieldName, "useDescriptionOptions": false, "enableRowsCounter": true }) : undefined;
|
91
90
|
const reqBody = {
|
92
91
|
"serviceName": serviceName,
|
93
92
|
"requestBody": {
|
94
|
-
"criteria": Object.assign({ "entityName": entityName, "compacted": false, "ignoreEntityCriteria": false, "limit": this._defaultPageSize, "query": { "$": values.argument }, "orderByDesc": false, "externalCriteria": externalCriteria, "localEntityName": (
|
93
|
+
"criteria": Object.assign({ "entityName": entityName, "compacted": false, "ignoreEntityCriteria": (_d = options === null || options === void 0 ? void 0 : options.ignoreEntityCriteria) !== null && _d !== void 0 ? _d : false, "limit": this._defaultPageSize, "query": { "$": values.argument }, "orderByDesc": false, "externalCriteria": externalCriteria, "localEntityName": (_e = values.searchOptions) === null || _e === void 0 ? void 0 : _e.rootEntity }, { options }),
|
95
94
|
"clientEventList": {
|
96
95
|
"clientEvent": []
|
97
96
|
}
|
@@ -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';
|
@@ -1,24 +1,24 @@
|
|
1
|
-
import snkDataUnitMessages from "./resources/snk-data-unit.msg
|
2
|
-
import snkFilterBarMessages from "./resources/snk-filter-bar.msg
|
3
|
-
import snkTaskbarMessages from "./resources/snk-taskbar.msg
|
4
|
-
import crudUtilsMessages from "./resources/crud-utils.msg
|
5
|
-
import snkExporterMessages from "./resources/snk-exporter.msg
|
6
|
-
import snkCrudMessages from "./resources/snk-crud.msg
|
7
|
-
import snkSimpleCrudMessages from "./resources/snk-simple-crud.msg
|
8
|
-
import fileViewerMessages from "./resources/file-viewer.msg
|
9
|
-
import snkApplicationMessages from "./resources/snk-application.msg
|
10
|
-
import { snkFormConfigMessages, snkConfigOptionsMessages, snkFieldConfigMessages, snkTabConfigMessages } from "./resources/snk-form.msg
|
11
|
-
import { snkConfiguratorMessages } from "./resources/snk-configurator.msg
|
12
|
-
import { snkGridMessages, snkGridConfigMessages } from "./resources/snk-grid.msg
|
13
|
-
import { snkDataExporterMessages } from "./resources/snk-data-exporter.msg
|
14
|
-
import { snkFilterParamConfigMessages } from "./resources/snk-filter-param-config.msg
|
15
|
-
import { snkFilterFieldSearchMessages } from "./resources/snk-filter-field-search.msg
|
16
|
-
import { snkSimpleBarMessages } from './resources/snk-simple-bar.msg
|
1
|
+
import snkDataUnitMessages from "./resources/snk-data-unit.msg";
|
2
|
+
import snkFilterBarMessages from "./resources/snk-filter-bar.msg";
|
3
|
+
import snkTaskbarMessages from "./resources/snk-taskbar.msg";
|
4
|
+
import crudUtilsMessages from "./resources/crud-utils.msg";
|
5
|
+
import snkExporterMessages from "./resources/snk-exporter.msg";
|
6
|
+
import snkCrudMessages from "./resources/snk-crud.msg";
|
7
|
+
import snkSimpleCrudMessages from "./resources/snk-simple-crud.msg";
|
8
|
+
import fileViewerMessages from "./resources/file-viewer.msg";
|
9
|
+
import snkApplicationMessages from "./resources/snk-application.msg";
|
10
|
+
import { snkFormConfigMessages, snkConfigOptionsMessages, snkFieldConfigMessages, snkTabConfigMessages } from "./resources/snk-form.msg";
|
11
|
+
import { snkConfiguratorMessages } from "./resources/snk-configurator.msg";
|
12
|
+
import { snkGridMessages, snkGridConfigMessages } from "./resources/snk-grid.msg";
|
13
|
+
import { snkDataExporterMessages } from "./resources/snk-data-exporter.msg";
|
14
|
+
import { snkFilterParamConfigMessages } from "./resources/snk-filter-param-config.msg";
|
15
|
+
import { snkFilterFieldSearchMessages } from "./resources/snk-filter-field-search.msg";
|
16
|
+
import { snkSimpleBarMessages } from './resources/snk-simple-bar.msg';
|
17
17
|
import { snkAttachMessages } from "./resources/snk-attach.msg";
|
18
|
-
import { snkPersonalizedFilterMessages } from "./resources/snk-personalized-filter.msg
|
19
|
-
import { snkEntityListMessages } from "./resources/snk-entity-list.msg
|
20
|
-
import { snkActionsButtonMessages } from "./resources/snk-actions-button.msg
|
21
|
-
import { snkPrintSelectorMessages } from "./resources/snk-print-selector.msg
|
18
|
+
import { snkPersonalizedFilterMessages } from "./resources/snk-personalized-filter.msg";
|
19
|
+
import { snkEntityListMessages } from "./resources/snk-entity-list.msg";
|
20
|
+
import { snkActionsButtonMessages } from "./resources/snk-actions-button.msg";
|
21
|
+
import { snkPrintSelectorMessages } from "./resources/snk-print-selector.msg";
|
22
22
|
import { ApplicationContext } from "@sankhyalabs/core";
|
23
23
|
export class SnkMessageBuilder {
|
24
24
|
constructor(domainName) {
|
@@ -55,7 +55,7 @@ export class SnkMessageBuilder {
|
|
55
55
|
this.loadAppMessages().then((msgs) => {
|
56
56
|
this._appMessages = msgs;
|
57
57
|
}, error => {
|
58
|
-
console.info('O arquivo de mensagens personalizadas não foi encontrado no caminho /messages/appmessages
|
58
|
+
console.info('O arquivo de mensagens personalizadas não foi encontrado no caminho /messages/appmessages', error);
|
59
59
|
});
|
60
60
|
}
|
61
61
|
/**
|
@@ -147,17 +147,10 @@ export class SnkMessageBuilder {
|
|
147
147
|
return message;
|
148
148
|
}
|
149
149
|
}
|
150
|
-
loadAppMessages() {
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
.then(module => {
|
155
|
-
accept(module.default);
|
156
|
-
})
|
157
|
-
.catch(reason => {
|
158
|
-
reject(reason);
|
159
|
-
});
|
160
|
-
});
|
150
|
+
async loadAppMessages() {
|
151
|
+
const messagesUrl = await this._application.getApplicationPath();
|
152
|
+
const module = await import(/* webpackIgnore: true */ `${messagesUrl}/messages/appmessages.js`);
|
153
|
+
return module.default;
|
161
154
|
}
|
162
155
|
}
|
163
156
|
export var OperationMap;
|
@@ -17,11 +17,24 @@ export const snkAttachMessages = {
|
|
17
17
|
anyLinkOrFileFilled: {
|
18
18
|
title: "Atenção",
|
19
19
|
message: `É necessário preencher o campo "Link" ou anexar um arquivo.`
|
20
|
+
},
|
21
|
+
descriptionCannotBeChanged: {
|
22
|
+
title: "Atenção",
|
23
|
+
message: "O campo 'Descrição' não pode ser alterado."
|
20
24
|
}
|
21
25
|
},
|
22
26
|
taskbar: {
|
23
27
|
titleDownload: "Fazer download",
|
24
28
|
titleLink: "Abrir link",
|
29
|
+
},
|
30
|
+
attachMetadata: {
|
31
|
+
lblCode: "Código",
|
32
|
+
lblDescription: "Descrição",
|
33
|
+
lblFileOrLink: "Arquivo / Link",
|
34
|
+
lblUser: "Usuário",
|
35
|
+
lblDate: "Data de alteração",
|
36
|
+
lblFile: "Arquivo",
|
37
|
+
lblSubTitle: "Clique para selecionar um arquivo",
|
25
38
|
}
|
26
39
|
};
|
27
40
|
export default snkAttachMessages;
|
@@ -16,7 +16,8 @@ export const snkDataExporterMessages = {
|
|
16
16
|
},
|
17
17
|
message: {
|
18
18
|
emailSuccess: "E-mail enviado com sucesso",
|
19
|
-
exportError: "
|
19
|
+
exportError: "Falha ao exportar dados",
|
20
|
+
unknownFailure: "O motivo da falha não pode ser identificado.",
|
20
21
|
exportPermission: "O usuário não possui permissão para exportar o arquivo.",
|
21
22
|
},
|
22
23
|
title: {
|
@@ -27,5 +27,6 @@ const snkDataUnitMessages = {
|
|
27
27
|
forbiddenRemove: "Não é possível remover. Verifique as permissões de acesso.",
|
28
28
|
removeAllConfirmation: "Os <strong>{{size}} registros selecionados</strong> serão excluídos.<br/><br/><strong>Você realmente gostaria de continuar?</strong>",
|
29
29
|
removeAllInfo: "Os {{size}} registros foram removidos com sucesso!",
|
30
|
+
fieldNameRequired: "É necessário informar o nome da coluna."
|
30
31
|
};
|
31
32
|
export default snkDataUnitMessages;
|
@@ -1,4 +1,8 @@
|
|
1
1
|
export const snkSimpleCrudMessages = {
|
2
2
|
findColumn: "Busca de colunas",
|
3
|
+
formConfigUnavaliable: {
|
4
|
+
title: "Aviso",
|
5
|
+
message: 'A opção "Configurar formulário" será disponibilizada em breve. Enquanto isso, acesse a configuração do fomulário através dos layouts anteriores, HTML5 ou Flex.'
|
6
|
+
}
|
3
7
|
};
|
4
8
|
export default snkSimpleCrudMessages;
|
@@ -1,6 +1,18 @@
|
|
1
1
|
import { DataFetcher } from '../';
|
2
|
-
import { ApplicationContext } from '@sankhyalabs/core';
|
2
|
+
import { ApplicationContext, SortMode } from '@sankhyalabs/core';
|
3
3
|
export class CrudUtils {
|
4
|
+
static assertDefaultSorting(gridConfig, dataUnit) {
|
5
|
+
if (gridConfig && dataUnit) {
|
6
|
+
dataUnit.defaultSorting = gridConfig
|
7
|
+
.columns
|
8
|
+
.filter(col => col.ascending != undefined)
|
9
|
+
.sort((colA, colB) => colA.orderIndex - colB.orderIndex)
|
10
|
+
.map(({ name: field, ascending }) => {
|
11
|
+
const { dataType } = dataUnit.getField(field);
|
12
|
+
return { field, dataType, mode: ascending ? SortMode.ASC : SortMode.DESC };
|
13
|
+
});
|
14
|
+
}
|
15
|
+
}
|
4
16
|
static find(entityName, fields, criteria, onlyFirst = true, criteriaExpression, orderBy) {
|
5
17
|
const SERVICE_CRUD_FIND = "mge@crud.find";
|
6
18
|
let parsedFields = [];
|
@@ -232,7 +232,7 @@ class PersonalizedFilterFetcher {
|
|
232
232
|
assistent
|
233
233
|
}
|
234
234
|
}`);
|
235
|
-
this.templateByQuery.set("savePersonalizedFilter", dist.gql `
|
235
|
+
this.templateByQuery.set("savePersonalizedFilter", dist.gql `
|
236
236
|
mutation($name: String!, $filterAssistent: InputFilterAssistent!) {
|
237
237
|
$queryAlias$: savePersonalizedFilter(name: $name, filterAssistent: $filterAssistent) {
|
238
238
|
id
|
@@ -254,11 +254,11 @@ class PersonalizedFilterFetcher {
|
|
254
254
|
}
|
255
255
|
}`);
|
256
256
|
}
|
257
|
-
async loadPersonalizedFilter(resourceID, filterID, configName) {
|
257
|
+
async loadPersonalizedFilter(resourceID, filterID, configName, legacyConfigName) {
|
258
258
|
return new Promise((resolve, reject) => {
|
259
259
|
DataFetcher.get()
|
260
260
|
.callGraphQL({
|
261
|
-
values: { name: this.resolveURI(resourceID, configName) + "/" + filterID },
|
261
|
+
values: { name: this.resolveURI(resourceID, configName) + "/" + filterID + this.resolveLegacyConfigName(legacyConfigName) },
|
262
262
|
query: this.templateByQuery.get("fetchFilterAssistent"),
|
263
263
|
})
|
264
264
|
.then((resp) => {
|
@@ -270,6 +270,9 @@ class PersonalizedFilterFetcher {
|
|
270
270
|
});
|
271
271
|
});
|
272
272
|
}
|
273
|
+
resolveLegacyConfigName(legacyConfigName) {
|
274
|
+
return legacyConfigName ? `?legacyResourceID=${legacyConfigName}` : '';
|
275
|
+
}
|
273
276
|
async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
|
274
277
|
if (!personalizedFilter || Object.keys(personalizedFilter).length == 0) {
|
275
278
|
return Promise.reject(new Error("personalizedFilter não pode ser vazio"));
|
@@ -358,11 +361,30 @@ var CONFIG_SOURCE;
|
|
358
361
|
CONFIG_SOURCE["filterBar"] = "filterBar";
|
359
362
|
})(CONFIG_SOURCE || (CONFIG_SOURCE = {}));
|
360
363
|
class ConfigStorage {
|
361
|
-
static
|
364
|
+
static addFilterBarLegacyConfig(configName, legacyConfigName) {
|
365
|
+
this.validateConfigName(configName, legacyConfigName);
|
366
|
+
this.filterBarLegacyConfig.set(configName, legacyConfigName);
|
367
|
+
}
|
368
|
+
static addFormLegacyConfig(configName, legacyConfigName) {
|
369
|
+
this.validateConfigName(configName, legacyConfigName);
|
370
|
+
this.formLegacyConfig.set(configName, legacyConfigName);
|
371
|
+
}
|
372
|
+
static addGridLegacyConfig(configName, legacyConfigName) {
|
373
|
+
this.validateConfigName(configName, legacyConfigName);
|
374
|
+
this.gridLegacyConfig.set(configName, legacyConfigName);
|
375
|
+
}
|
376
|
+
static preload(resourceID, configName, legacyConfigs) {
|
377
|
+
if (configName && (legacyConfigs === null || legacyConfigs === void 0 ? void 0 : legacyConfigs.gridLegacyConfig)) {
|
378
|
+
ConfigStorage.addGridLegacyConfig(configName, legacyConfigs.gridLegacyConfig);
|
379
|
+
}
|
380
|
+
if (configName && (legacyConfigs === null || legacyConfigs === void 0 ? void 0 : legacyConfigs.formLegacyConfig)) {
|
381
|
+
ConfigStorage.addFormLegacyConfig(configName, legacyConfigs.formLegacyConfig);
|
382
|
+
}
|
362
383
|
ConfigStorage.loadFormConfig(configName, resourceID);
|
363
384
|
ConfigStorage.loadGridConfig(configName, resourceID);
|
364
385
|
}
|
365
386
|
static async loadFilterBarConfig(name, resourceID, urlParams) {
|
387
|
+
urlParams = this.handleLegacyConfig(name, CONFIG_SOURCE.filterBar, urlParams);
|
366
388
|
const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.filterBar, resourceID);
|
367
389
|
if (!ConfigStorage.configById.has(cacheID)) {
|
368
390
|
ConfigStorage.configById.set(cacheID, ConfigStorage.filterBarConfigFetcher.getConfig(resourceID, name, urlParams));
|
@@ -370,6 +392,7 @@ class ConfigStorage {
|
|
370
392
|
return ConfigStorage.configById.get(cacheID);
|
371
393
|
}
|
372
394
|
static async loadFormConfig(name, resourceID) {
|
395
|
+
name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.form);
|
373
396
|
const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.form, resourceID);
|
374
397
|
if (!ConfigStorage.configById.has(cacheID)) {
|
375
398
|
ConfigStorage.configById.set(cacheID, ConfigStorage.formConfigFetcher.loadFormConfig(name, resourceID));
|
@@ -377,6 +400,7 @@ class ConfigStorage {
|
|
377
400
|
return ConfigStorage.configById.get(cacheID);
|
378
401
|
}
|
379
402
|
static async loadGridConfig(name, resourceID) {
|
403
|
+
name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.grid);
|
380
404
|
const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.grid, resourceID);
|
381
405
|
if (!ConfigStorage.configById.has(cacheID)) {
|
382
406
|
ConfigStorage.configById.set(cacheID, ConfigStorage.gridConfigFetcher.getConfig(name, resourceID));
|
@@ -388,6 +412,7 @@ class ConfigStorage {
|
|
388
412
|
return this.filterBarConfigFetcher.saveConfig(config, resourceID, name);
|
389
413
|
}
|
390
414
|
static async saveFormConfig(config, name, resourceID) {
|
415
|
+
name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.form);
|
391
416
|
await this.deleteFormConfigCache(name, resourceID);
|
392
417
|
return this.formConfigFetcher.saveConfig(config, name, resourceID);
|
393
418
|
}
|
@@ -402,7 +427,8 @@ class ConfigStorage {
|
|
402
427
|
return this.gridConfigFetcher.saveConfig(config, name, resourceID);
|
403
428
|
}
|
404
429
|
static async loadPersonalizedFilter(filterId, resourceID, configName) {
|
405
|
-
|
430
|
+
const legacyConfigName = this.filterBarLegacyConfig.get(configName);
|
431
|
+
return this.personalizedFilterFetcher.loadPersonalizedFilter(resourceID, filterId, configName, legacyConfigName);
|
406
432
|
}
|
407
433
|
static async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
|
408
434
|
//Ao criar ou alterar um filtro personalizado,
|
@@ -425,6 +451,38 @@ class ConfigStorage {
|
|
425
451
|
static async deleteFilterBarConfigCache(name, resourceID) {
|
426
452
|
await this.deleteConfigCache(name, resourceID, CONFIG_SOURCE.filterBar);
|
427
453
|
}
|
454
|
+
static validateConfigName(configName, legacyConfigName) {
|
455
|
+
if (!configName)
|
456
|
+
throw Error(this.CONFIG_NAME_ERROR_MESSAGE);
|
457
|
+
if (!legacyConfigName)
|
458
|
+
throw Error(this.LEGACY_CONFIG_NAME_ERROR_MESSAGE);
|
459
|
+
}
|
460
|
+
static handleLegacyConfig(configName, configSource, urlParams) {
|
461
|
+
let legacyConfigName;
|
462
|
+
switch (configSource) {
|
463
|
+
case CONFIG_SOURCE.filterBar:
|
464
|
+
legacyConfigName = this.filterBarLegacyConfig.get(configName);
|
465
|
+
break;
|
466
|
+
case CONFIG_SOURCE.grid:
|
467
|
+
legacyConfigName = this.gridLegacyConfig.get(configName);
|
468
|
+
break;
|
469
|
+
case CONFIG_SOURCE.form:
|
470
|
+
legacyConfigName = this.formLegacyConfig.get(configName);
|
471
|
+
}
|
472
|
+
const params = urlParams ? Object.assign({}, urlParams) : {};
|
473
|
+
if (legacyConfigName) {
|
474
|
+
params['legacyResourceID'] = legacyConfigName;
|
475
|
+
}
|
476
|
+
return params;
|
477
|
+
}
|
478
|
+
static handleLegacyConfigAsString(name, source) {
|
479
|
+
const params = this.handleLegacyConfig(name, source);
|
480
|
+
const legacyResourceID = params['legacyResourceID'];
|
481
|
+
if (legacyResourceID) {
|
482
|
+
name = name + `?legacyResourceID=${legacyResourceID}`;
|
483
|
+
}
|
484
|
+
return name;
|
485
|
+
}
|
428
486
|
static async deleteConfigCache(name, resourceID, source) {
|
429
487
|
const cacheID = ConfigStorage.buildCacheID(name, source, resourceID);
|
430
488
|
this.configById.delete(cacheID);
|
@@ -436,6 +494,11 @@ class ConfigStorage {
|
|
436
494
|
return `req_${source}_${name}_${resourceID}`;
|
437
495
|
}
|
438
496
|
}
|
497
|
+
ConfigStorage.CONFIG_NAME_ERROR_MESSAGE = "ConfigName precisa ser informado.";
|
498
|
+
ConfigStorage.LEGACY_CONFIG_NAME_ERROR_MESSAGE = "LegacyConfigName precisa ser informado.";
|
499
|
+
ConfigStorage.filterBarLegacyConfig = new Map();
|
500
|
+
ConfigStorage.formLegacyConfig = new Map();
|
501
|
+
ConfigStorage.gridLegacyConfig = new Map();
|
439
502
|
ConfigStorage.configById = new Map();
|
440
503
|
ConfigStorage.filterBarConfigFetcher = new FilterBarConfigFetcher();
|
441
504
|
ConfigStorage.formConfigFetcher = new FormConfigFetcher();
|