@sankhyalabs/sankhyablocks 8.16.0-dev.11 → 8.16.0-dev.111
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/ClientSideExporterProvider-a2753c93.js +378 -0
- package/dist/cjs/{ConfigStorage-e49214c6.js → ConfigStorage-df09fb78.js} +2 -2
- package/dist/cjs/{DataFetcher-77729a93.js → DataFetcher-1afdb18e.js} +231 -84
- package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
- package/dist/cjs/IFetchDataExporterParams-e78ec415.js +8 -0
- package/dist/cjs/ISave-c76e2c51.js +397 -0
- package/dist/cjs/{SnkFormConfigManager-beebf47a.js → SnkFormConfigManager-45a8d7b7.js} +75 -17
- package/dist/cjs/{SnkMessageBuilder-897ffd08.js → SnkMessageBuilder-9deeae08.js} +40 -28
- package/dist/cjs/{auth-fetcher-29bb791c.js → auth-fetcher-1687ac0a.js} +1 -1
- package/dist/cjs/{constants-35ddd366.js → constants-77c1b8bd.js} +10 -0
- package/dist/cjs/{dataunit-fetcher-d4873076.js → dataunit-fetcher-a723f0dc.js} +225 -175
- package/dist/cjs/{form-config-fetcher-feb08214.js → form-config-fetcher-40d3f752.js} +56 -2
- package/dist/cjs/{index-1dfc7a6e.js → index-e3e39724.js} +5 -0
- package/dist/cjs/index-f9e81701.js +16 -32
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/pesquisa-grid_2.cjs.entry.js +155 -0
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_8.cjs.entry.js} +264 -46
- package/dist/cjs/snk-application.cjs.entry.js +471 -79
- package/dist/cjs/snk-attach.cjs.entry.js +91 -50
- package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +401 -13
- package/dist/cjs/snk-configurator.cjs.entry.js +10 -3
- package/dist/cjs/snk-crud.cjs.entry.js +57 -84
- package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -30
- package/dist/cjs/{snk-data-unit-ece44c4a.js → snk-data-unit-57916de4.js} +275 -37
- package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
- package/dist/cjs/snk-detail-view.cjs.entry.js +69 -17
- package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
- package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1438 -0
- package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
- package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-search.cjs.entry.js +18 -5
- package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
- package/dist/cjs/snk-form-view.cjs.entry.js +19 -7
- package/dist/cjs/snk-grid.cjs.entry.js +132 -51
- package/dist/cjs/{snk-guides-viewer-aafc3073.js → snk-guides-viewer-d33379cd.js} +151 -74
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +12 -12
- package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +4 -4
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
- package/dist/cjs/snk-pesquisa.cjs.entry.js +116 -31
- package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +237 -200
- package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
- package/dist/cjs/snk-taskbar.cjs.entry.js +79 -42
- package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-6f4e06af.js} +12 -1
- package/dist/cjs/{field-search-f56aa7d6.js → taskbar-processor-2fba34a8.js} +5 -36
- package/dist/collection/collection-manifest.json +17 -31
- package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
- package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
- package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
- package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +5 -2
- package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
- package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
- package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
- package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +107 -0
- package/dist/collection/components/snk-application/snk-application.css +36 -0
- package/dist/collection/components/snk-application/snk-application.js +450 -72
- package/dist/collection/components/snk-attach/snk-attach.js +51 -16
- package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
- package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +19 -18
- package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
- package/dist/collection/components/snk-configurator/snk-configurator.js +26 -1
- package/dist/collection/components/snk-crud/snk-crud.js +181 -76
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +10 -1
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +84 -6
- package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +54 -7
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +198 -82
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +41 -10
- package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
- package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
- package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
- package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
- package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
- package/dist/collection/components/snk-data-unit/MultipleUpdateHelper.js +128 -0
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +156 -37
- package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +18 -5
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
- package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +10 -4
- package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
- package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +2 -6
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +119 -29
- package/dist/collection/components/snk-form/snk-form.js +2 -2
- package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
- package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
- package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
- package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.js +5 -3
- package/dist/collection/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.js +2 -2
- package/dist/collection/components/snk-grid/snk-grid.css +8 -0
- package/dist/collection/components/snk-grid/snk-grid.js +269 -51
- package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
- package/dist/collection/components/snk-grid-config/snk-grid-config.js +2 -0
- package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.css +3 -0
- package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +73 -0
- package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.css +78 -0
- package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +57 -0
- package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
- package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
- package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
- package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
- package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
- package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
- package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +181 -32
- package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
- package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +342 -123
- package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
- package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +13 -0
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -0
- package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.css +0 -0
- package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +220 -0
- package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +141 -41
- package/dist/collection/lib/@types/index.js +5 -0
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +11 -5
- package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
- package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
- package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -29
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +5 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
- package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
- package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
- package/dist/collection/lib/index.js +1 -0
- package/dist/collection/lib/message/SnkMessageBuilder.js +1 -0
- package/dist/collection/lib/message/resources/snk-crud.msg.js +1 -1
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +28 -23
- package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
- package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
- package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +2 -1
- package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
- package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
- package/dist/collection/lib/utils/CrudUtils.js +25 -16
- package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
- package/dist/collection/lib/utils/constants.js +10 -0
- package/dist/collection/sw.js +46 -0
- package/dist/components/ContinuousInsertUtils.js +416 -0
- package/dist/components/DataFetcher.js +231 -84
- package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
- package/dist/components/ISave.js +391 -1
- package/dist/components/SnkFormConfigManager.js +73 -15
- package/dist/components/SnkMessageBuilder.js +40 -28
- package/dist/components/constants.js +11 -1
- package/dist/components/dataunit-fetcher.js +243 -190
- package/dist/components/form-config-fetcher.js +55 -1
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.js +6 -0
- package/dist/components/pesquisa-grid.d.ts +11 -0
- package/dist/components/pesquisa-grid.js +6 -0
- package/dist/components/pesquisa-grid2.js +102 -0
- package/dist/components/pesquisa-tree.d.ts +11 -0
- package/dist/components/pesquisa-tree.js +6 -0
- package/dist/components/pesquisa-tree2.js +91 -0
- package/dist/components/snk-actions-button2.js +44 -40
- package/dist/components/snk-application2.js +494 -77
- package/dist/components/snk-attach2.js +114 -73
- package/dist/components/snk-config-options2.js +6 -4
- package/dist/components/snk-configurator2.js +23 -3
- package/dist/components/snk-crud.js +143 -139
- package/dist/components/snk-data-exporter2.js +37 -23
- package/dist/components/snk-data-unit2.js +275 -74
- package/dist/components/snk-detail-view2.js +329 -171
- package/dist/components/snk-exporter-email-sender2.js +1 -1
- package/dist/components/snk-filter-bar2.js +68 -34
- package/dist/components/snk-filter-binary-select.js +1 -1
- package/dist/components/snk-filter-checkbox-list.js +1 -1
- package/dist/components/snk-filter-item2.js +10 -4
- package/dist/components/snk-filter-modal.js +4 -2
- package/dist/components/snk-filter-number.js +1 -1
- package/dist/components/snk-filter-search.js +18 -5
- package/dist/components/snk-filter-text.js +2 -1
- package/dist/components/snk-form-config2.js +35 -10
- package/dist/components/snk-form-view2.js +22 -8
- package/dist/components/snk-form.js +2 -2
- package/dist/components/snk-grid-config2.js +3 -1
- package/dist/components/snk-grid2.js +169 -75
- package/dist/components/snk-layout-form-config.d.ts +11 -0
- package/dist/components/snk-layout-form-config.js +6 -0
- package/dist/components/snk-layout-form-config2.js +73 -0
- package/dist/components/snk-personalized-filter-editor.js +4 -4
- package/dist/components/snk-pesquisa2.js +132 -33
- package/dist/components/snk-print-selector.js +1 -1
- package/dist/components/snk-simple-bar2.js +1 -1
- package/dist/components/snk-simple-crud2.js +246 -203
- package/dist/components/snk-simple-form-config.d.ts +11 -0
- package/dist/components/snk-simple-form-config.js +6 -0
- package/dist/components/snk-simple-form-config2.js +121 -0
- package/dist/components/snk-tab-config2.js +1 -1
- package/dist/components/snk-taskbar2.js +105 -50
- package/dist/components/snk-view-representation.d.ts +11 -0
- package/dist/components/snk-view-representation.js +6 -0
- package/dist/components/snk-view-representation2.js +41 -0
- package/dist/components/taskbar-actions-button2.js +2 -2
- package/dist/components/taskbar-split-button.d.ts +11 -0
- package/dist/components/taskbar-split-button.js +6 -0
- package/dist/components/taskbar-split-button2.js +87 -0
- package/dist/components/teste-pesquisa.js +13 -1
- package/dist/esm/ClientSideExporterProvider-b3871edb.js +367 -0
- package/dist/esm/{ConfigStorage-e476378d.js → ConfigStorage-71e6766f.js} +2 -2
- package/dist/esm/{DataFetcher-773a3e4b.js → DataFetcher-88e56266.js} +231 -84
- package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
- package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
- package/dist/esm/ISave-5efafc97.js +394 -0
- package/dist/esm/{SnkFormConfigManager-298cd647.js → SnkFormConfigManager-be490a33.js} +75 -17
- package/dist/esm/{SnkMessageBuilder-571462fb.js → SnkMessageBuilder-2dbd8fa2.js} +40 -28
- package/dist/esm/{auth-fetcher-a411f73c.js → auth-fetcher-3510520e.js} +1 -1
- package/dist/esm/{constants-8457af36.js → constants-7db1128a.js} +11 -1
- package/dist/esm/{dataunit-fetcher-3d2ec959.js → dataunit-fetcher-0e025732.js} +227 -174
- package/dist/esm/{form-config-fetcher-e0382e5a.js → form-config-fetcher-fa208a6c.js} +56 -2
- package/dist/esm/index-a7d3d3f1.js +16 -32
- package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-grid_2.entry.js +150 -0
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_8.entry.js} +263 -49
- package/dist/esm/snk-application.entry.js +472 -80
- package/dist/esm/snk-attach.entry.js +92 -51
- package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +401 -15
- package/dist/esm/snk-configurator.entry.js +10 -3
- package/dist/esm/snk-crud.entry.js +58 -85
- package/dist/esm/snk-data-exporter.entry.js +38 -30
- package/dist/esm/{snk-data-unit-2a1d5d09.js → snk-data-unit-65c9dd1a.js} +275 -37
- package/dist/esm/snk-data-unit.entry.js +5 -5
- package/dist/esm/snk-detail-view.entry.js +71 -19
- package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
- package/dist/esm/snk-field-config.entry.js +1 -1
- package/dist/esm/snk-filter-bar_4.entry.js +1431 -0
- package/dist/esm/snk-filter-binary-select.entry.js +1 -1
- package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
- package/dist/esm/snk-filter-modal-item.entry.js +3 -3
- package/dist/esm/snk-filter-number.entry.js +1 -1
- package/dist/esm/snk-filter-search.entry.js +18 -5
- package/dist/esm/snk-filter-text.entry.js +2 -1
- package/dist/esm/snk-form-view.entry.js +19 -7
- package/dist/esm/snk-grid.entry.js +125 -44
- package/dist/esm/{snk-guides-viewer-62124f3d.js → snk-guides-viewer-72953334.js} +153 -76
- package/dist/esm/snk-guides-viewer.entry.js +12 -12
- package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
- package/dist/esm/snk-personalized-filter.entry.js +3 -3
- package/dist/esm/snk-pesquisa.entry.js +116 -31
- package/dist/esm/snk-print-selector.entry.js +1 -1
- package/dist/esm/snk-simple-bar.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +224 -187
- package/dist/esm/snk-tab-config.entry.js +1 -1
- package/dist/esm/snk-taskbar.entry.js +80 -43
- package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-f2cb4922.js} +12 -1
- package/dist/esm/{field-search-efbe307f.js → taskbar-processor-3436124c.js} +6 -35
- package/dist/sankhyablocks/{p-3287a6cc.js → p-03b68a74.js} +1 -1
- package/dist/sankhyablocks/p-0f3698af.js +1 -0
- package/dist/sankhyablocks/p-0fadb620.js +1 -0
- package/dist/sankhyablocks/{p-9dfda04a.entry.js → p-165cde3b.entry.js} +1 -1
- package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
- package/dist/sankhyablocks/p-1a0caadb.js +1 -0
- package/dist/sankhyablocks/p-1bdffb17.entry.js +11 -0
- package/dist/sankhyablocks/p-1f80174b.entry.js +1 -0
- package/dist/sankhyablocks/p-24a0dbd2.entry.js +1 -0
- package/dist/sankhyablocks/p-2f7e2251.entry.js +1 -0
- package/dist/sankhyablocks/p-3372178e.entry.js +1 -0
- package/dist/sankhyablocks/{p-95df461f.entry.js → p-3749dffb.entry.js} +1 -1
- package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
- package/dist/sankhyablocks/p-4689c2e6.js +1 -0
- package/dist/sankhyablocks/p-47178038.entry.js +1 -0
- package/dist/sankhyablocks/{p-bd008859.entry.js → p-490b75b5.entry.js} +1 -1
- package/dist/sankhyablocks/p-52d10014.entry.js +1 -0
- package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
- package/dist/sankhyablocks/p-5ffa0493.entry.js +1 -0
- package/dist/sankhyablocks/p-60137b7a.entry.js +1 -0
- package/dist/sankhyablocks/p-601b252b.js +26 -0
- package/dist/sankhyablocks/p-6a03b190.entry.js +1 -0
- package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
- package/dist/sankhyablocks/{p-0cd3c0a9.js → p-73285a8a.js} +1 -1
- package/dist/sankhyablocks/p-7993b2e3.js +60 -0
- package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
- package/dist/sankhyablocks/p-7beeabc1.entry.js +1 -0
- package/dist/sankhyablocks/p-7dd49d15.js +1 -0
- package/dist/sankhyablocks/p-885802c3.js +1 -0
- package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
- package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
- package/dist/sankhyablocks/p-8f3f2306.js +1 -0
- package/dist/sankhyablocks/p-90684a75.entry.js +1 -0
- package/dist/sankhyablocks/{p-b0ef4383.js → p-9261d8a0.js} +1 -1
- package/dist/sankhyablocks/p-a14a09c3.entry.js +1 -0
- package/dist/sankhyablocks/p-a4ebeec4.entry.js +1 -0
- package/dist/sankhyablocks/p-b0ab5066.entry.js +1 -0
- package/dist/sankhyablocks/p-b6200d32.entry.js +1 -0
- package/dist/sankhyablocks/p-bc101064.entry.js +1 -0
- package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-c0eb761b.entry.js} +1 -1
- package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
- package/dist/sankhyablocks/p-c9675d64.js +1 -0
- package/dist/sankhyablocks/p-ce94e6c4.entry.js +1 -0
- package/dist/sankhyablocks/p-d07b18a4.js +1 -0
- package/dist/sankhyablocks/p-ddf93f36.entry.js +1 -0
- package/dist/sankhyablocks/p-ebdb9d89.js +1 -0
- package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
- package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
- package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
- package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
- package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
- package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
- package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
- package/dist/types/components/snk-application/snk-application.d.ts +55 -16
- package/dist/types/components/snk-attach/snk-attach.d.ts +2 -0
- package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +30 -3
- package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +17 -0
- package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +11 -1
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +26 -7
- package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
- package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
- package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
- package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
- package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
- package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
- package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
- package/dist/types/components/snk-data-unit/MultipleUpdateHelper.d.ts +9 -0
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +19 -0
- package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
- package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
- package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
- package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
- package/dist/types/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.d.ts +2 -1
- package/dist/types/components/snk-grid/snk-grid.d.ts +45 -5
- package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
- package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
- package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
- package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
- package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
- package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
- package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +36 -1
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +51 -15
- package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
- package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +44 -0
- package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +17 -0
- package/dist/types/components.d.ts +608 -24
- package/dist/types/lib/@types/index.d.ts +4 -0
- package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
- package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
- package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
- package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
- package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
- package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
- package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
- package/dist/types/lib/index.d.ts +1 -0
- package/dist/types/lib/message/SnkMessageBuilder.d.ts +2 -1
- package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
- package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
- package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
- package/dist/types/lib/utils/constants.d.ts +8 -0
- package/package.json +4 -3
- package/react/components.d.ts +6 -0
- package/react/components.js +6 -0
- package/react/components.js.map +1 -1
- package/dist/cjs/IExporterProvider-10b7fed5.js +0 -230
- package/dist/cjs/ISave-e91b70a7.js +0 -9
- package/dist/cjs/pesquisa-fetcher-a1d0353f.js +0 -166
- package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
- package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
- package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
- package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
- package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
- package/dist/cjs/snk-form.cjs.entry.js +0 -143
- package/dist/collection/components/snk-taskbar/subcomponents/field-search.js +0 -31
- package/dist/components/IExporterProvider.js +0 -298
- package/dist/components/pesquisa-fetcher.js +0 -164
- package/dist/esm/IExporterProvider-d597f27d.js +0 -221
- package/dist/esm/ISave-d8c8bc59.js +0 -9
- package/dist/esm/pesquisa-fetcher-a87445a0.js +0 -164
- package/dist/esm/snk-config-options.entry.js +0 -235
- package/dist/esm/snk-filter-bar.entry.js +0 -710
- package/dist/esm/snk-filter-item.entry.js +0 -308
- package/dist/esm/snk-filter-list.entry.js +0 -148
- package/dist/esm/snk-filter-modal.entry.js +0 -245
- package/dist/esm/snk-form.entry.js +0 -139
- package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
- package/dist/sankhyablocks/p-091ce761.js +0 -60
- package/dist/sankhyablocks/p-14b8b656.entry.js +0 -1
- package/dist/sankhyablocks/p-181975f1.js +0 -26
- package/dist/sankhyablocks/p-1db45d26.entry.js +0 -1
- package/dist/sankhyablocks/p-1e971cb0.entry.js +0 -1
- package/dist/sankhyablocks/p-21749402.js +0 -1
- package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
- package/dist/sankhyablocks/p-25f1fc39.js +0 -6
- package/dist/sankhyablocks/p-2e9c764c.entry.js +0 -1
- package/dist/sankhyablocks/p-30cf616e.js +0 -1
- package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
- package/dist/sankhyablocks/p-421bec84.entry.js +0 -1
- package/dist/sankhyablocks/p-42f7b05d.entry.js +0 -1
- package/dist/sankhyablocks/p-51999ab5.entry.js +0 -1
- package/dist/sankhyablocks/p-594bc21d.js +0 -1
- package/dist/sankhyablocks/p-5f016aed.js +0 -1
- package/dist/sankhyablocks/p-62f34e6f.entry.js +0 -1
- package/dist/sankhyablocks/p-631954eb.entry.js +0 -1
- package/dist/sankhyablocks/p-65f8c11c.entry.js +0 -1
- package/dist/sankhyablocks/p-684a2590.entry.js +0 -1
- package/dist/sankhyablocks/p-70001ac1.js +0 -1
- package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
- package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
- package/dist/sankhyablocks/p-76a65660.js +0 -1
- package/dist/sankhyablocks/p-7e7a7473.js +0 -1
- package/dist/sankhyablocks/p-7ef9c55c.js +0 -1
- package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
- package/dist/sankhyablocks/p-939e15d3.entry.js +0 -1
- package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
- package/dist/sankhyablocks/p-9863d682.js +0 -1
- package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
- package/dist/sankhyablocks/p-c2495304.js +0 -1
- package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
- package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
- package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
- package/dist/sankhyablocks/p-d65d98ed.entry.js +0 -1
- package/dist/sankhyablocks/p-d6610d11.entry.js +0 -11
- package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
- package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
- package/dist/sankhyablocks/p-ffa5e4ff.js +0 -1
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
- package/dist/types/components/snk-taskbar/subcomponents/field-search.d.ts +0 -4
@@ -1,11 +1,10 @@
|
|
1
1
|
import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
|
2
2
|
import { ApplicationContext, ObjectUtils, UserInterface, DataType, ElementIDUtils } from '@sankhyalabs/core';
|
3
3
|
import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
|
4
|
-
import { D as DataExporterOption,
|
4
|
+
import { D as DataExporterOption, b as DataExporterType, c as DataExporterFormat } from './ISave.js';
|
5
5
|
import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants.js';
|
6
6
|
import { D as DataFetcher } from './DataFetcher.js';
|
7
7
|
import { S as SnkDataUnit } from './snk-data-unit2.js';
|
8
|
-
import './pesquisa-fetcher.js';
|
9
8
|
import '@sankhyalabs/ezui/dist/collection/utils/constants';
|
10
9
|
import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
|
11
10
|
import './dataunit-fetcher.js';
|
@@ -13,6 +12,13 @@ import './filter-item-type.enum.js';
|
|
13
12
|
import './form-config-fetcher.js';
|
14
13
|
import { d as defineCustomElement$1 } from './snk-exporter-email-sender2.js';
|
15
14
|
|
15
|
+
var IExportType;
|
16
|
+
(function (IExportType) {
|
17
|
+
IExportType["ALL"] = "all";
|
18
|
+
IExportType["PAGE"] = "page";
|
19
|
+
IExportType["SELECTION"] = "selection";
|
20
|
+
})(IExportType || (IExportType = {}));
|
21
|
+
|
16
22
|
class ItemBuilder {
|
17
23
|
constructor(getMessage, selectedNumber) {
|
18
24
|
this._selectedNumber = 0;
|
@@ -124,7 +130,7 @@ class ItemBuilder {
|
|
124
130
|
getExportToXLS(groupName) {
|
125
131
|
return {
|
126
132
|
id: DataExporterOption.EXPORT_TO_XLS,
|
127
|
-
label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.
|
133
|
+
label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xls)`,
|
128
134
|
group: groupName
|
129
135
|
};
|
130
136
|
}
|
@@ -167,7 +173,7 @@ class ItemBuilder {
|
|
167
173
|
getExportPageToXLS() {
|
168
174
|
return {
|
169
175
|
id: DataExporterOption.EXPORT_PAGE_TO_XLS,
|
170
|
-
label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.
|
176
|
+
label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xls)`
|
171
177
|
};
|
172
178
|
}
|
173
179
|
/**
|
@@ -243,7 +249,7 @@ function getFormatResponse(result) {
|
|
243
249
|
return ObjectUtils.stringToObject(response);
|
244
250
|
}
|
245
251
|
|
246
|
-
const DOC_MAX_WIDTH =
|
252
|
+
const DOC_MAX_WIDTH = 860;
|
247
253
|
function getVisibleColumns(columns) {
|
248
254
|
const visibleColumns = [];
|
249
255
|
let totalWidth = 0;
|
@@ -283,10 +289,17 @@ class ServerSideExporterStrategy {
|
|
283
289
|
const visibleColumns = getVisibleColumns(columns);
|
284
290
|
return visibleColumns;
|
285
291
|
}
|
292
|
+
async getColumns(resolveProps) {
|
293
|
+
var _a;
|
294
|
+
if ((_a = getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) === null || _a === void 0 ? void 0 : _a.includes("PDF")) {
|
295
|
+
return await this.getParsedColumns();
|
296
|
+
}
|
297
|
+
return await this._provider.getColumnsMetadata();
|
298
|
+
}
|
286
299
|
async getParams(resolveProps) {
|
287
300
|
var _a, _b, _c, _d, _e, _f;
|
288
301
|
const filters = (_b = (_a = this._provider).getFilters) === null || _b === void 0 ? void 0 : _b.call(_a);
|
289
|
-
const columns =
|
302
|
+
const columns = await this.getColumns(resolveProps);
|
290
303
|
const sort = (_d = (_c = this._provider).getOrders) === null || _d === void 0 ? void 0 : _d.call(_c);
|
291
304
|
const resourceURI = (_f = (_e = this._provider).getResourceURI) === null || _f === void 0 ? void 0 : _f.call(_e);
|
292
305
|
const selectedIDs = this._provider.getSelectedIDs();
|
@@ -343,15 +356,16 @@ class ClientSideExporterStrategy {
|
|
343
356
|
return visibleColumns;
|
344
357
|
}
|
345
358
|
async executeExport(resolveProps) {
|
346
|
-
|
347
|
-
const
|
348
|
-
const
|
359
|
+
var _a;
|
360
|
+
const { methodName, gridTitle } = resolveProps;
|
361
|
+
const records = await this._provider.getRecords(resolveProps.type);
|
362
|
+
const columns = ((_a = getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) === null || _a === void 0 ? void 0 : _a.includes("PDF")) ? await this.getParsedColumns() : await this._provider.getColumnsMetadata();
|
349
363
|
const [serviceName, processor] = this.getExecutor(methodName);
|
350
364
|
const payload = {
|
351
365
|
serviceName,
|
352
366
|
requestBody: {
|
353
367
|
grid: {
|
354
|
-
|
368
|
+
gridTitle,
|
355
369
|
columns: this.buildColumnsObject(columns),
|
356
370
|
rows: this.buildRowsObject(columns, records),
|
357
371
|
customOptions: { xlsxExtension: false }
|
@@ -382,10 +396,10 @@ class ClientSideExporterStrategy {
|
|
382
396
|
"GridXLSBuilderSP.buildXLSFromJson",
|
383
397
|
responseBody => ({
|
384
398
|
fileSessionKey: responseBody.chaveXLS.valor,
|
385
|
-
canPrint:
|
386
|
-
canExport:
|
399
|
+
canPrint: true,
|
400
|
+
canExport: true,
|
401
|
+
canSendEmail: true,
|
387
402
|
useAppPrint: false,
|
388
|
-
canSendEmail: false
|
389
403
|
})
|
390
404
|
];
|
391
405
|
}
|
@@ -462,7 +476,7 @@ const SnkDataExporter = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
|
|
462
476
|
resolver: ({ type, format, email: { to, subject, message } }) => {
|
463
477
|
var _a;
|
464
478
|
const methodName = (_a = DataExporterFormat[format === null || format === void 0 ? void 0 : format.toUpperCase()]) !== null && _a !== void 0 ? _a : DataExporterFormat.PDF;
|
465
|
-
this.resolveExporter({ type, methodName, to, subject, message, fileName: this._appLabel,
|
479
|
+
this.resolveExporter({ type, methodName, to, subject, message, fileName: this._appLabel, gridTitle: this._appLabel }, () => {
|
466
480
|
this._snkEmailSender.close();
|
467
481
|
ApplicationUtils.info(this.getMessage("snkDataExporter.message.emailSuccess"), { iconName: "check" });
|
468
482
|
});
|
@@ -525,7 +539,9 @@ const SnkDataExporter = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
|
|
525
539
|
});
|
526
540
|
}
|
527
541
|
getExporterStrategy() {
|
528
|
-
return this.provider.getRecords == undefined
|
542
|
+
return this.provider.getRecords == undefined
|
543
|
+
? new ServerSideExporterStrategy(this.provider)
|
544
|
+
: new ClientSideExporterStrategy(this.provider);
|
529
545
|
}
|
530
546
|
getOptionKey(option) {
|
531
547
|
return Object.keys(DataExporterOption)
|
@@ -535,30 +551,28 @@ const SnkDataExporter = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
|
|
535
551
|
}
|
536
552
|
getExportType(option) {
|
537
553
|
if (option === DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF || option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS) {
|
538
|
-
return
|
554
|
+
return IExportType.ALL;
|
539
555
|
}
|
540
556
|
if (option === DataExporterOption.EXPORT_PAGE_TO_PDF || option === DataExporterOption.EXPORT_PAGE_TO_XLS) {
|
541
|
-
return
|
557
|
+
return IExportType.PAGE;
|
542
558
|
}
|
543
|
-
return
|
559
|
+
return IExportType.SELECTION;
|
544
560
|
}
|
545
561
|
async dispatchExporter(option) {
|
546
562
|
var _a, _b, _c;
|
547
563
|
const optionKey = this.getOptionKey(option);
|
548
564
|
const fileType = (_a = DataExporterType[optionKey]) !== null && _a !== void 0 ? _a : DataExporterType.EXPORT_TO_PDF;
|
549
|
-
const isDownload = DataExporterType[optionKey] === DataExporterType.EXPORT_TO_XLS;
|
550
565
|
const params = {
|
551
566
|
methodName: DataExporterOption[`EXPORT_TO_${fileType}`],
|
552
567
|
fileName: this._appLabel,
|
553
|
-
|
568
|
+
gridTitle: this._appLabel,
|
554
569
|
exportOption: option,
|
555
570
|
limit: (_c = (_b = this.provider) === null || _b === void 0 ? void 0 : _b.getExportLimit) === null || _c === void 0 ? void 0 : _c.call(_b),
|
556
571
|
type: this.getExportType(option),
|
557
572
|
};
|
558
573
|
await this.resolveExporter(params, (response) => {
|
559
574
|
if (response.canExport || fileType === DataExporterType.EXPORT_TO_PDF) {
|
560
|
-
fileViewer(Object.assign(Object.assign({}, response), { fileType
|
561
|
-
isDownload }));
|
575
|
+
fileViewer(Object.assign(Object.assign({}, response), { fileType }));
|
562
576
|
}
|
563
577
|
else {
|
564
578
|
ApplicationUtils.error(this.getMessage("snkDataExporter.title.permission"), this.getMessage("snkDataExporter.message.exportPermission"));
|
@@ -766,4 +780,4 @@ function defineCustomElement() {
|
|
766
780
|
} });
|
767
781
|
}
|
768
782
|
|
769
|
-
export { SnkDataExporter as S, defineCustomElement as d };
|
783
|
+
export { IExportType as I, SnkDataExporter as S, defineCustomElement as d };
|
@@ -1,47 +1,139 @@
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
2
|
-
import {
|
2
|
+
import { Action, ObjectUtils, DataUnitAction, StringUtils, ApplicationContext } from '@sankhyalabs/core';
|
3
3
|
import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
|
4
4
|
import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder.js';
|
5
|
-
import { g as getRecordValue,
|
5
|
+
import { g as getRecordValue, a as DatasetStrategy } from './dataunit-fetcher.js';
|
6
6
|
import { convertType } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
|
7
|
+
import { g as getSelectedRecordsIDsInfo } from './GetSelectedRecordsIDsInfo.js';
|
7
8
|
|
8
|
-
const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
9
|
+
const NO_TAB_NAME = "__NO_TAB_NAME__";
|
10
|
+
const MAIN_TAB_NAME = "__main";
|
11
|
+
async function showConfirmMultipleUpdatePopup({ title, labelBtnConfirm, labelBtnCancel, message, changingFields, }) {
|
12
|
+
return new Promise((resolve) => {
|
13
|
+
const popup = builPopup(title, resolve);
|
14
|
+
const contentContainer = buildContentContainer();
|
15
|
+
contentContainer.appendChild(buildMessage(message));
|
16
|
+
contentContainer.appendChild(buildChangesContainer(changingFields));
|
17
|
+
const actionsContainer = buildActionsContainer();
|
18
|
+
actionsContainer.appendChild(buildCancelBtn(popup, labelBtnCancel, resolve));
|
19
|
+
actionsContainer.appendChild(buildConfirmBtn(popup, labelBtnConfirm, resolve));
|
20
|
+
contentContainer.appendChild(actionsContainer);
|
21
|
+
popup.appendChild(contentContainer);
|
22
|
+
document.body.appendChild(popup);
|
23
|
+
});
|
24
|
+
}
|
25
|
+
function groupChanges(changingFields) {
|
26
|
+
const changesMap = new Map();
|
27
|
+
changingFields.forEach(change => {
|
28
|
+
var _a;
|
29
|
+
const key = (_a = change.tabName) !== null && _a !== void 0 ? _a : NO_TAB_NAME;
|
30
|
+
if (!changesMap.has(key))
|
31
|
+
changesMap.set(key, []);
|
32
|
+
changesMap.get(key).push(change);
|
33
|
+
});
|
34
|
+
return changesMap;
|
35
|
+
}
|
36
|
+
function getTabName(tabName) {
|
37
|
+
switch (tabName) {
|
38
|
+
case NO_TAB_NAME:
|
39
|
+
return "";
|
40
|
+
case MAIN_TAB_NAME:
|
41
|
+
return "Principal";
|
42
|
+
default:
|
43
|
+
return tabName;
|
42
44
|
}
|
43
|
-
|
44
|
-
|
45
|
+
}
|
46
|
+
function buildChangesDiv(tabName, changes) {
|
47
|
+
const changeLabel = document.createElement('span');
|
48
|
+
changeLabel.innerText = getTabName(tabName);
|
49
|
+
changeLabel.style.display = 'block';
|
50
|
+
changeLabel.style.fontWeight = 'var(--text-weight--large, 500)';
|
51
|
+
changeLabel.style.fontSize = 'var(--text--medium, 14px)';
|
52
|
+
changeLabel.style.marginBottom = 'var(--space--small, 6px)';
|
53
|
+
const changeDiv = document.createElement('div');
|
54
|
+
changeDiv.style.padding = 'var(--space--medium, 12px) 0';
|
55
|
+
changeDiv.style.borderTop = '1px solid var(--color--disable-secondary, #f2f5f8)';
|
56
|
+
changeDiv.appendChild(changeLabel);
|
57
|
+
changes.forEach(change => {
|
58
|
+
const changeLine = document.createElement('span');
|
59
|
+
changeLine.innerHTML = `${change.label}: <span style="color: var(--text--primary, #626e82)">${change.value}</span>`;
|
60
|
+
changeLine.style.display = 'block';
|
61
|
+
changeLine.style.marginBottom = 'var(--space--extra-small, 3px)';
|
62
|
+
changeDiv.appendChild(changeLine);
|
63
|
+
});
|
64
|
+
return changeDiv;
|
65
|
+
}
|
66
|
+
function buildChangesContainer(changingFields) {
|
67
|
+
const changesContainer = document.createElement('div');
|
68
|
+
changesContainer.style.flexDirection = 'column';
|
69
|
+
changesContainer.style.display = 'flex';
|
70
|
+
changesContainer.style.overflow = 'auto';
|
71
|
+
changesContainer.style.maxHeight = '300px';
|
72
|
+
const changesMap = groupChanges(changingFields);
|
73
|
+
changesMap.forEach((changes, key) => {
|
74
|
+
changesContainer.appendChild(buildChangesDiv(key, changes));
|
75
|
+
});
|
76
|
+
return changesContainer;
|
77
|
+
}
|
78
|
+
function buildMessage(messageContent) {
|
79
|
+
const message = document.createElement('p');
|
80
|
+
message.textContent = messageContent;
|
81
|
+
message.style.fontSize = 'var(--text--medium, 14px)';
|
82
|
+
return message;
|
83
|
+
}
|
84
|
+
function buildContentContainer() {
|
85
|
+
const contentContainer = document.createElement('div');
|
86
|
+
contentContainer.style.display = 'flex';
|
87
|
+
contentContainer.style.flexDirection = 'column';
|
88
|
+
contentContainer.style.fontFamily = 'var(--font-pattern, Roboto)';
|
89
|
+
contentContainer.style.fontSize = 'var(--text--medium, 14px)';
|
90
|
+
return contentContainer;
|
91
|
+
}
|
92
|
+
function buildActionsContainer() {
|
93
|
+
const actionsContainer = document.createElement('div');
|
94
|
+
actionsContainer.style.display = 'flex';
|
95
|
+
actionsContainer.style.flexDirection = 'row';
|
96
|
+
actionsContainer.style.justifyContent = 'flex-end';
|
97
|
+
actionsContainer.style.gap = '5px';
|
98
|
+
return actionsContainer;
|
99
|
+
}
|
100
|
+
function builPopup(title, resolve) {
|
101
|
+
const popup = document.createElement('ez-popup');
|
102
|
+
popup.opened = true;
|
103
|
+
popup.size = 'small';
|
104
|
+
popup.ezTitle = title;
|
105
|
+
popup.heightMode = 'auto';
|
106
|
+
popup.addEventListener('ezClosePopup', () => {
|
107
|
+
document.body.removeChild(popup);
|
108
|
+
resolve(false);
|
109
|
+
}, { once: true });
|
110
|
+
popup.addEventListener('ezPopupAction', () => {
|
111
|
+
document.body.removeChild(popup);
|
112
|
+
resolve(false);
|
113
|
+
}, { once: true });
|
114
|
+
return popup;
|
115
|
+
}
|
116
|
+
function buildConfirmBtn(popup, confirmBtnLabel, resolve) {
|
117
|
+
const confirmBtn = document.createElement('ez-button');
|
118
|
+
confirmBtn.label = confirmBtnLabel;
|
119
|
+
confirmBtn.size = 'medium';
|
120
|
+
confirmBtn.classList.add('ez-button--primary');
|
121
|
+
confirmBtn.onclick = () => {
|
122
|
+
document.body.removeChild(popup);
|
123
|
+
resolve(true);
|
124
|
+
};
|
125
|
+
return confirmBtn;
|
126
|
+
}
|
127
|
+
function buildCancelBtn(popup, cancelBtnLabel, resolve) {
|
128
|
+
const cancelBtn = document.createElement('ez-button');
|
129
|
+
cancelBtn.label = cancelBtnLabel;
|
130
|
+
cancelBtn.size = 'medium';
|
131
|
+
cancelBtn.onclick = () => {
|
132
|
+
document.body.removeChild(popup);
|
133
|
+
resolve(false);
|
134
|
+
};
|
135
|
+
return cancelBtn;
|
136
|
+
}
|
45
137
|
|
46
138
|
const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
47
139
|
constructor() {
|
@@ -59,9 +151,10 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
59
151
|
this._fieldsWithRmPrecision = [];
|
60
152
|
this._metadataByRow = new Map();
|
61
153
|
this._rowMetadataCache = new Map();
|
154
|
+
this._formFieldsConfig = [];
|
62
155
|
this.REGEX_DATAUNIT_NAME = /dd:\/\/(.+?)\//;
|
63
156
|
this._dataUnitObserver = async (action) => {
|
64
|
-
const duState = this.buildDataState(action.type);
|
157
|
+
const duState = await this.buildDataState(action.type);
|
65
158
|
this.dataState = duState;
|
66
159
|
this.messagesBuilder.currentOperation = this.getMessageOperation();
|
67
160
|
switch (action.type) {
|
@@ -135,6 +228,10 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
135
228
|
this.messagesBuilderUpdated.emit(newValue);
|
136
229
|
}
|
137
230
|
}
|
231
|
+
onMasterFormConfigChange({ detail }) {
|
232
|
+
var _a;
|
233
|
+
this._formFieldsConfig = (_a = detail === null || detail === void 0 ? void 0 : detail.fields) !== null && _a !== void 0 ? _a : [];
|
234
|
+
}
|
138
235
|
/**
|
139
236
|
* Obtém o dataUnit.
|
140
237
|
*/
|
@@ -153,7 +250,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
153
250
|
* @returns Retorna a lista de IDs dos registros selecionados.
|
154
251
|
*/
|
155
252
|
async getSelectedRecordsIDsInfo() {
|
156
|
-
return
|
253
|
+
return getSelectedRecordsIDsInfo(this.dataUnit);
|
157
254
|
}
|
158
255
|
/**
|
159
256
|
* Retorna os campos que possuem a propriedade "rmp" (Row Metadata Provider).
|
@@ -173,14 +270,22 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
173
270
|
async getRowMetadata(record) {
|
174
271
|
return this.doGetRowMetadata(record);
|
175
272
|
}
|
176
|
-
doGetRowMetadata(record) {
|
273
|
+
async doGetRowMetadata(record) {
|
177
274
|
const selectedRecord = this.dataUnit.getSelectedRecord();
|
178
275
|
if (!record && !selectedRecord) {
|
179
276
|
return;
|
180
277
|
}
|
181
278
|
const currentRecord = record || selectedRecord;
|
182
279
|
const recordId = typeof currentRecord === 'string' ? currentRecord : currentRecord.__record__id__;
|
183
|
-
|
280
|
+
let rowMetadata = this._metadataByRow.get(recordId);
|
281
|
+
/*
|
282
|
+
Nao fazemos cache de metadataByRow pra registros novos, pois a chave do mesmo
|
283
|
+
muda ao ser salvo, por isso essa tratativa é necessária para que o dataState fique com metadados
|
284
|
+
corretos nao confiando apenas no _metadataByRow
|
285
|
+
*/
|
286
|
+
if (this.dataUnit.isNewRecord(recordId) && !rowMetadata) {
|
287
|
+
rowMetadata = await this.handleLoadRowMetadata(selectedRecord);
|
288
|
+
}
|
184
289
|
if (!rowMetadata) {
|
185
290
|
return;
|
186
291
|
}
|
@@ -286,7 +391,9 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
286
391
|
return new DataUnitAction(Action.RECORDS_COPIED, this.handleRecordsCopied(action.payload));
|
287
392
|
}
|
288
393
|
async interceptDataChange(action) {
|
289
|
-
|
394
|
+
var _a;
|
395
|
+
const recordId = (_a = this.dataUnit.getSelectedRecord()) === null || _a === void 0 ? void 0 : _a.__record__id__;
|
396
|
+
if (this.isAllowed("UPDATE") || this.dataUnit.isNewRecord(recordId)) {
|
290
397
|
return action;
|
291
398
|
}
|
292
399
|
if (this._openedAlert) {
|
@@ -299,9 +406,13 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
299
406
|
this._openedAlert = false;
|
300
407
|
}
|
301
408
|
async interceptSavingData(action) {
|
302
|
-
if (
|
303
|
-
|
409
|
+
if (this.dataUnit.isMultipleEdition) {
|
410
|
+
const confirm = await this.confirmMultipleSavingData();
|
411
|
+
if (!confirm)
|
412
|
+
return undefined;
|
304
413
|
}
|
414
|
+
if (!this.beforeSave)
|
415
|
+
return action;
|
305
416
|
const continueAction = this.beforeSave(this.dataUnit);
|
306
417
|
if (continueAction instanceof Promise) {
|
307
418
|
const result = await continueAction;
|
@@ -309,6 +420,46 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
309
420
|
}
|
310
421
|
return continueAction ? action : undefined;
|
311
422
|
}
|
423
|
+
async confirmMultipleSavingData() {
|
424
|
+
const selectedRecords = this.dataUnit.getSelectionInfo().records;
|
425
|
+
const title = this.getMessage('snkDataUnit.multipleUpdateConfirmationTitle');
|
426
|
+
const message = this.getMessage('snkDataUnit.multipleUpdateConfirmationMessage', { size: selectedRecords.length });
|
427
|
+
const labelBtnCancel = this.getMessage('snkDataUnit.confirm.cancel');
|
428
|
+
const labelBtnConfirm = this.getMessage('snkDataUnit.confirm.updateMultipleConfirm');
|
429
|
+
return await showConfirmMultipleUpdatePopup({
|
430
|
+
title,
|
431
|
+
message,
|
432
|
+
labelBtnConfirm,
|
433
|
+
labelBtnCancel,
|
434
|
+
changingFields: this.getChangingFields(),
|
435
|
+
});
|
436
|
+
}
|
437
|
+
getChangingFields() {
|
438
|
+
const changes = this.dataUnit.buildChangesToSave();
|
439
|
+
if (!(changes === null || changes === void 0 ? void 0 : changes.length))
|
440
|
+
return [];
|
441
|
+
const change = changes[0];
|
442
|
+
const changingFields = Object.keys(change.updatingFields).map(key => this.buildChangingField(key, change[key]));
|
443
|
+
return changingFields;
|
444
|
+
}
|
445
|
+
buildChangingField(key, value) {
|
446
|
+
const fieldLabel = this.dataUnit.getField(key).label;
|
447
|
+
const formattedValue = this.dataUnit.getFormattedValue(key, value);
|
448
|
+
return {
|
449
|
+
label: fieldLabel,
|
450
|
+
value: formattedValue,
|
451
|
+
tabName: this.getFieldTabName(key),
|
452
|
+
};
|
453
|
+
}
|
454
|
+
getFieldTabName(fieldName) {
|
455
|
+
var _a;
|
456
|
+
const tab = (_a = this._formFieldsConfig.find(f => f.name === fieldName)) === null || _a === void 0 ? void 0 : _a.tab;
|
457
|
+
if (!tab)
|
458
|
+
return undefined;
|
459
|
+
if (typeof tab === 'string')
|
460
|
+
return tab;
|
461
|
+
return tab.label;
|
462
|
+
}
|
312
463
|
interceptDataSaved(action) {
|
313
464
|
if (this.afterSave) {
|
314
465
|
this.afterSave(this.dataUnit);
|
@@ -328,7 +479,17 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
328
479
|
}
|
329
480
|
const cancelConfirmationTitle = this.getMessage("snkDataUnit.cancelConfirmationTitle");
|
330
481
|
const confirm = await ApplicationUtils.confirm(cancelConfirmationTitle, cancelConfirmation);
|
331
|
-
|
482
|
+
if (confirm) {
|
483
|
+
let editionCanceledMessage;
|
484
|
+
if (this.dataUnit.isMultipleEdition) {
|
485
|
+
const selectedRecords = this.dataUnit.getSelectionInfo().records;
|
486
|
+
editionCanceledMessage = this.buildMultipleUpdateMessage(selectedRecords, true);
|
487
|
+
}
|
488
|
+
else {
|
489
|
+
editionCanceledMessage = this.getMessage("snkDataUnit.cancelInfo");
|
490
|
+
}
|
491
|
+
this.showSuccessMessage(editionCanceledMessage);
|
492
|
+
}
|
332
493
|
return confirm ? action : undefined;
|
333
494
|
}
|
334
495
|
async interceptRemovingRecords(action) {
|
@@ -374,7 +535,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
374
535
|
case Action.RECORDS_COPIED:
|
375
536
|
return this.interceptRecordsCopied(action);
|
376
537
|
case Action.DATA_CHANGED:
|
377
|
-
await this.handleLoadRowMetadata(action);
|
538
|
+
await this.handleLoadRowMetadata(action.payload);
|
378
539
|
return await this.interceptDataChange(action);
|
379
540
|
case Action.CHANGING_DATA:
|
380
541
|
return await this.interceptDataChange(action);
|
@@ -394,8 +555,9 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
394
555
|
return action;
|
395
556
|
}
|
396
557
|
}
|
397
|
-
async handleLoadRowMetadata(
|
398
|
-
|
558
|
+
async handleLoadRowMetadata(record) {
|
559
|
+
if (!record)
|
560
|
+
return;
|
399
561
|
const keysPayload = Object.keys(record);
|
400
562
|
const rmpField = keysPayload.find((field) => this._fieldsWithRmp.includes(field));
|
401
563
|
if (rmpField) {
|
@@ -474,7 +636,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
474
636
|
isAllowed(flag) {
|
475
637
|
return this._permissions ? this._permissions.isSup || this._permissions[flag] : false;
|
476
638
|
}
|
477
|
-
buildDataState(actionType) {
|
639
|
+
async buildDataState(actionType) {
|
478
640
|
var _a;
|
479
641
|
const selectionInfo = this.dataUnit.getSelectionInfo();
|
480
642
|
const isStartingInsertionMode = (this.dataUnit.hasDirtyRecords() || this.dataUnit.hasWaitingChanges()) && (selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.isEmpty());
|
@@ -482,7 +644,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
482
644
|
let rowMetadata = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.rowMetadata;
|
483
645
|
const allowedOverwrite = [Action.SELECTION_CHANGED, Action.EDITION_CANCELED, Action.NEXT_SELECTED, Action.PREVIOUS_SELECTED];
|
484
646
|
if (selectedRecord && (!rowMetadata || allowedOverwrite.includes(actionType))) {
|
485
|
-
rowMetadata = this.doGetRowMetadata(selectedRecord);
|
647
|
+
rowMetadata = await this.doGetRowMetadata(selectedRecord);
|
486
648
|
}
|
487
649
|
else if (rowMetadata) {
|
488
650
|
rowMetadata.getProp = this.buildGetPropRowMetadata(rowMetadata);
|
@@ -504,32 +666,54 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
504
666
|
});
|
505
667
|
}
|
506
668
|
async handleDataSaved(action) {
|
507
|
-
|
669
|
+
var _a, _b, _c;
|
670
|
+
const changes = (_a = action === null || action === void 0 ? void 0 : action.payload) === null || _a === void 0 ? void 0 : _a.changes;
|
671
|
+
const affectedRecords = (_b = action === null || action === void 0 ? void 0 : action.payload) === null || _b === void 0 ? void 0 : _b.records;
|
672
|
+
const newRowMetadata = await this.handleLoadRowMetadata((_c = changes === null || changes === void 0 ? void 0 : changes[0]) === null || _c === void 0 ? void 0 : _c.record);
|
508
673
|
if (newRowMetadata) {
|
509
674
|
newRowMetadata.getProp = this.buildGetPropRowMetadata(newRowMetadata);
|
510
675
|
}
|
511
|
-
const recordId =
|
676
|
+
const recordId = affectedRecords[0].__record__id__;
|
512
677
|
this._metadataByRow.set(recordId, newRowMetadata);
|
513
|
-
this.dataState = this.buildDataState();
|
514
|
-
|
515
|
-
|
678
|
+
this.dataState = await this.buildDataState();
|
679
|
+
let saveOperation = changes[0]._operation.toLowerCase();
|
680
|
+
if (saveOperation == 'copy') {
|
681
|
+
saveOperation = OperationMap.CLONE;
|
516
682
|
}
|
517
|
-
|
518
|
-
|
683
|
+
if (this.canIgnoreOperationMessage(saveOperation))
|
684
|
+
return;
|
685
|
+
let msg = this.buildOperationMessage(saveOperation, affectedRecords);
|
519
686
|
if (msg != undefined) {
|
520
687
|
this.showSuccessMessage(msg);
|
521
688
|
}
|
522
689
|
}
|
690
|
+
canIgnoreOperationMessage(saveOperation) {
|
691
|
+
return this.ignoreSaveMessage && !this.isCloneOrInsertOperation(saveOperation);
|
692
|
+
}
|
693
|
+
isCloneOrInsertOperation(saveOperation) {
|
694
|
+
return [OperationMap.CLONE, OperationMap.INSERT].includes(saveOperation);
|
695
|
+
}
|
696
|
+
buildOperationMessage(saveOperation, records) {
|
697
|
+
if (this.isMultiplesUpdate(saveOperation, records)) {
|
698
|
+
return this.buildMultipleUpdateMessage(records);
|
699
|
+
}
|
700
|
+
return this.getMessage('snkDataUnit.saveInfo', records[0], saveOperation);
|
701
|
+
}
|
702
|
+
buildMultipleUpdateMessage(records, isCancel) {
|
703
|
+
/**
|
704
|
+
* FIXME: No futuro, precisamos pensar em um mecanismo para deixar as mensagens de feedback mais dinâmicas.
|
705
|
+
* Podemo ocorrer cenários onde temos mais de um registro selecionado e também cenários onde a chave primária
|
706
|
+
* de um registro se trata de uma chave composta.
|
707
|
+
*/
|
708
|
+
const key = `snkDataUnit.${isCancel ? 'cancelInfo' : 'saveInfo'}`;
|
709
|
+
return this.getMessage(key, { records: records }, OperationMap.UPDATE_MULTIPLES);
|
710
|
+
}
|
711
|
+
isMultiplesUpdate(saveOperation, records) {
|
712
|
+
return saveOperation === OperationMap.UPDATE && records.length > 1;
|
713
|
+
}
|
523
714
|
handleRecordsRemoved(action) {
|
524
715
|
var _a, _b;
|
525
|
-
|
526
|
-
let removeFinishMsg;
|
527
|
-
if ((cachedRecords === null || cachedRecords === void 0 ? void 0 : cachedRecords.length) > 1) {
|
528
|
-
removeFinishMsg = this.getMessage("snkDataUnit.removeAllInfo", { size: cachedRecords.length });
|
529
|
-
}
|
530
|
-
else {
|
531
|
-
removeFinishMsg = this.getMessage("snkDataUnit.removeInfo", action.payload.cachedRecords[0]);
|
532
|
-
}
|
716
|
+
let removeFinishMsg = this.buildRemoveFinishMessage(action);
|
533
717
|
if (removeFinishMsg != undefined) {
|
534
718
|
this.showSuccessMessage(removeFinishMsg);
|
535
719
|
}
|
@@ -540,6 +724,14 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
540
724
|
this.dataUnit.gotoPage(page);
|
541
725
|
}
|
542
726
|
}
|
727
|
+
buildRemoveFinishMessage(action) {
|
728
|
+
const records = action.payload.records;
|
729
|
+
if (!records || !records.length)
|
730
|
+
return undefined;
|
731
|
+
if ((records === null || records === void 0 ? void 0 : records.length) > 1)
|
732
|
+
return this.getMessage('snkDataUnit.removeAllInfo', { size: records.length });
|
733
|
+
return this.getMessage('snkDataUnit.removeInfo', records);
|
734
|
+
}
|
543
735
|
/**
|
544
736
|
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
545
737
|
* através de um pequeno modulo na estrutura da aplicação:
|
@@ -583,21 +775,30 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
583
775
|
return await this._application.getDataUnit(this.entityName, cacheName, null, this.configName, this.resourceID);
|
584
776
|
}
|
585
777
|
}
|
778
|
+
updateMetadataWithRMP() {
|
779
|
+
this.fillFieldsWithRmp(this.dataUnit.metadata);
|
780
|
+
this.fillFieldsWithRmPrecision(this.dataUnit.metadata);
|
781
|
+
const dataUnitUpdatedMetadata = this.handleDULinksOnMetadataLoaded(this.dataUnit.metadata);
|
782
|
+
this.dataUnit.metadata = dataUnitUpdatedMetadata;
|
783
|
+
}
|
586
784
|
async loadDataUnit() {
|
587
|
-
var _a;
|
785
|
+
var _a, _b;
|
588
786
|
if (this.dataUnit == null && this._application && this.entityName) {
|
589
787
|
this.dataUnit = await this.getDataUnitParentOrChild();
|
590
788
|
}
|
591
789
|
if (this.dataUnit) {
|
592
790
|
this.dataUnit.pageSize = this.pageSize;
|
593
791
|
this.dataUnit.unsubscribe(this._dataUnitObserver);
|
594
|
-
this.dataUnit.addInterceptor(this);
|
595
792
|
this.dataUnit.subscribe(this._dataUnitObserver);
|
596
|
-
|
597
|
-
|
598
|
-
|
793
|
+
if ((_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.metadata) {
|
794
|
+
this.updateMetadataWithRMP();
|
795
|
+
}
|
796
|
+
this.dataUnit.addInterceptor(this);
|
797
|
+
if ((_b = this.dataUnit.records) === null || _b === void 0 ? void 0 : _b.length) {
|
798
|
+
const { records } = this.getMetadataByRow(this.dataUnit);
|
799
|
+
this.dataUnit.records = records;
|
599
800
|
}
|
600
|
-
this.dataState = this.buildDataState();
|
801
|
+
this.dataState = await this.buildDataState();
|
601
802
|
let resolver;
|
602
803
|
while (resolver = this._onDataUnitResolve.pop()) {
|
603
804
|
resolver(this.dataUnit);
|
@@ -716,7 +917,7 @@ const SnkDataUnit = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
716
917
|
"getFieldsWithRmp": [64],
|
717
918
|
"getFieldsWithRmPrecision": [64],
|
718
919
|
"getRowMetadata": [64]
|
719
|
-
}]);
|
920
|
+
}, [[0, "snkMasterFormConfigChange", "onMasterFormConfigChange"]]]);
|
720
921
|
class DataStateImpl {
|
721
922
|
constructor(datastate) {
|
722
923
|
this.copyMode = datastate.copyMode;
|
@@ -755,4 +956,4 @@ function defineCustomElement() {
|
|
755
956
|
} });
|
756
957
|
}
|
757
958
|
|
758
|
-
export { SnkDataUnit as S, defineCustomElement as d
|
959
|
+
export { SnkDataUnit as S, defineCustomElement as d };
|