@sankhyalabs/sankhyablocks 8.16.0-dev.8 → 8.16.0-dev.80
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-a343e418.js → ConfigStorage-d024aec8.js} +2 -2
- package/dist/cjs/{IExporterProvider-597949f9.js → ContinuousInsertUtils-c27b439e.js} +66 -23
- package/dist/cjs/{DataFetcher-313debd8.js → DataFetcher-65879b2c.js} +216 -76
- package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
- package/dist/cjs/{SnkFormConfigManager-166cbd1f.js → SnkFormConfigManager-c11d8468.js} +75 -17
- package/dist/cjs/{SnkMessageBuilder-722b104e.js → SnkMessageBuilder-bae64d0d.js} +7 -3
- package/dist/cjs/{auth-fetcher-54f5ff9d.js → auth-fetcher-8480751c.js} +1 -1
- package/dist/cjs/{constants-35ddd366.js → constants-241934b3.js} +9 -0
- package/dist/cjs/{dataunit-fetcher-688d3f05.js → dataunit-fetcher-8291ac21.js} +239 -43
- package/dist/cjs/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
- package/dist/cjs/{form-config-fetcher-2dd00e5b.js → form-config-fetcher-90126e4c.js} +42 -2
- package/dist/cjs/index-f9e81701.js +16 -32
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/pesquisa-fetcher-5c583c93.js +365 -0
- package/dist/cjs/pesquisa-grid_2.cjs.entry.js +156 -0
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_5.cjs.entry.js} +138 -42
- package/dist/cjs/snk-application.cjs.entry.js +293 -69
- package/dist/cjs/snk-attach.cjs.entry.js +47 -34
- package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +399 -13
- package/dist/cjs/snk-configurator.cjs.entry.js +2 -2
- package/dist/cjs/snk-crud.cjs.entry.js +23 -9
- package/dist/cjs/snk-data-exporter.cjs.entry.js +35 -23
- package/dist/cjs/{snk-data-unit-04df81bf.js → snk-data-unit-d75e6220.js} +54 -32
- package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
- package/dist/cjs/snk-detail-view.cjs.entry.js +13 -13
- 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 +1436 -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-text.cjs.entry.js +2 -1
- package/dist/cjs/snk-grid.cjs.entry.js +89 -24
- package/dist/cjs/{snk-guides-viewer-bdc41281.js → snk-guides-viewer-bff0d27d.js} +30 -14
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
- 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 +111 -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 +102 -45
- package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
- package/dist/cjs/snk-taskbar.cjs.entry.js +70 -38
- package/dist/collection/collection-manifest.json +14 -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/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/snk-application.css +36 -0
- package/dist/collection/components/snk-application/snk-application.js +315 -64
- package/dist/collection/components/snk-attach/snk-attach.js +25 -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 +2 -4
- package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
- package/dist/collection/components/snk-crud/snk-crud.js +122 -3
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +3 -3
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +72 -6
- 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 +13 -7
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +1 -1
- package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +1 -1
- package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +3 -5
- 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/snk-data-unit.js +52 -30
- 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-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 +5 -1
- 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 +1 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +118 -28
- 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-grid/snk-grid.css +2 -0
- package/dist/collection/components/snk-grid/snk-grid.js +170 -11
- package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
- 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 +174 -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 +164 -35
- 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/processor/taskbar-processor.js +5 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +112 -38
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +3 -3
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +2 -4
- package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +34 -9
- package/dist/collection/lib/http/data-fetcher/DataFetcher.js +29 -21
- 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/helpers/DataUnitDataLoaderHelper.js +108 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +17 -9
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +45 -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 +107 -7
- package/dist/collection/lib/index.js +1 -0
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -1
- 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/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 +9 -0
- package/dist/collection/sw.js +46 -0
- package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +67 -23
- package/dist/components/DataFetcher.js +217 -77
- package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
- package/dist/components/ISave.js +362 -1
- package/dist/components/SnkFormConfigManager.js +73 -15
- package/dist/components/SnkMessageBuilder.js +7 -3
- package/dist/components/constants.js +10 -1
- package/dist/components/dataunit-fetcher.js +238 -40
- package/dist/components/form-config-fetcher.js +41 -1
- package/dist/components/index.d.ts +3 -0
- package/dist/components/index.js +3 -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 +312 -68
- package/dist/components/snk-attach2.js +54 -60
- package/dist/components/snk-config-options2.js +1 -1
- package/dist/components/snk-configurator2.js +1 -1
- package/dist/components/snk-crud.js +83 -59
- package/dist/components/snk-data-exporter2.js +28 -17
- package/dist/components/snk-data-unit2.js +55 -70
- package/dist/components/snk-detail-view2.js +115 -106
- package/dist/components/snk-exporter-email-sender2.js +1 -1
- package/dist/components/snk-filter-bar2.js +64 -30
- 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 +5 -1
- package/dist/components/snk-filter-modal.js +4 -2
- package/dist/components/snk-filter-text.js +2 -1
- package/dist/components/snk-form-config2.js +35 -10
- package/dist/components/snk-form.js +2 -2
- package/dist/components/snk-grid-config2.js +1 -1
- package/dist/components/snk-grid2.js +86 -16
- package/dist/components/snk-personalized-filter-editor.js +4 -4
- package/dist/components/snk-pesquisa2.js +125 -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 +108 -65
- 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 +72 -40
- package/dist/components/teste-pesquisa.js +13 -1
- package/dist/esm/{ConfigStorage-3806514e.js → ConfigStorage-373bb440.js} +2 -2
- package/dist/esm/{IExporterProvider-63a188b6.js → ContinuousInsertUtils-6bf78c5e.js} +67 -25
- package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-5221b992.js} +217 -77
- package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
- package/dist/esm/{SnkFormConfigManager-31b24066.js → SnkFormConfigManager-5022f87f.js} +75 -17
- package/dist/esm/{SnkMessageBuilder-89925609.js → SnkMessageBuilder-6fff4a4c.js} +7 -3
- package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-e32fe8a4.js} +1 -1
- package/dist/esm/{constants-8457af36.js → constants-75abb876.js} +10 -1
- package/dist/esm/{dataunit-fetcher-264191b2.js → dataunit-fetcher-5247a708.js} +239 -41
- package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
- package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-126e2471.js} +42 -2
- package/dist/esm/index-a7d3d3f1.js +16 -32
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-fetcher-4284f2a3.js +362 -0
- package/dist/esm/pesquisa-grid_2.entry.js +151 -0
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_5.entry.js} +139 -44
- package/dist/esm/snk-application.entry.js +295 -71
- package/dist/esm/snk-attach.entry.js +47 -34
- package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +399 -15
- package/dist/esm/snk-configurator.entry.js +2 -2
- package/dist/esm/snk-crud.entry.js +23 -9
- package/dist/esm/snk-data-exporter.entry.js +35 -23
- package/dist/esm/{snk-data-unit-8eec78bd.js → snk-data-unit-bfd10c71.js} +54 -32
- package/dist/esm/snk-data-unit.entry.js +5 -5
- package/dist/esm/snk-detail-view.entry.js +13 -13
- 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 +1429 -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-text.entry.js +2 -1
- package/dist/esm/snk-grid.entry.js +84 -19
- package/dist/esm/{snk-guides-viewer-dda0fede.js → snk-guides-viewer-454ebc07.js} +30 -14
- package/dist/esm/snk-guides-viewer.entry.js +9 -9
- 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 +111 -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 +99 -42
- package/dist/esm/snk-tab-config.entry.js +1 -1
- package/dist/esm/snk-taskbar.entry.js +71 -39
- package/dist/sankhyablocks/p-03e6825e.js +1 -0
- package/dist/sankhyablocks/p-1435701f.js +26 -0
- package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
- package/dist/sankhyablocks/p-17425c72.js +1 -0
- package/dist/sankhyablocks/{p-52920496.js → p-19dc71e9.js} +1 -1
- package/dist/sankhyablocks/{p-47db7e88.entry.js → p-1cf39cfd.entry.js} +1 -1
- package/dist/sankhyablocks/{p-b0ef4383.js → p-1d19a5b0.js} +1 -1
- package/dist/sankhyablocks/p-23736d75.js +1 -0
- package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-23cd6abf.entry.js} +1 -1
- package/dist/sankhyablocks/p-28ca3908.entry.js +1 -0
- package/dist/sankhyablocks/{p-95df461f.entry.js → p-2953c481.entry.js} +1 -1
- package/dist/sankhyablocks/p-38179225.js +60 -0
- package/dist/sankhyablocks/p-3ba431c9.js +1 -0
- package/dist/sankhyablocks/p-41c3bee5.js +6 -0
- package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
- package/dist/sankhyablocks/p-47178038.entry.js +1 -0
- package/dist/sankhyablocks/p-478ab2b6.js +1 -0
- package/dist/sankhyablocks/{p-7663f597.entry.js → p-4c9adf1c.entry.js} +1 -1
- package/dist/sankhyablocks/p-50bf8dbc.entry.js +1 -0
- package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
- package/dist/sankhyablocks/p-643b2aaa.entry.js +1 -0
- package/dist/sankhyablocks/p-655bdd60.js +1 -0
- package/dist/sankhyablocks/p-6fc8bfa2.entry.js +1 -0
- package/dist/sankhyablocks/p-73b037a8.entry.js +1 -0
- package/dist/sankhyablocks/p-7dd49d15.js +1 -0
- package/dist/sankhyablocks/{p-2c68b3ae.entry.js → p-82ee6dc3.entry.js} +1 -1
- package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
- package/dist/sankhyablocks/p-8ad7c8bc.entry.js +1 -0
- package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
- package/dist/sankhyablocks/p-91e34755.entry.js +1 -0
- package/dist/sankhyablocks/p-9a99c67b.entry.js +1 -0
- package/dist/sankhyablocks/p-a04f38aa.entry.js +1 -0
- package/dist/sankhyablocks/p-ae26e8d0.entry.js +1 -0
- package/dist/sankhyablocks/p-bd234604.entry.js +1 -0
- package/dist/sankhyablocks/p-c021a3a9.entry.js +1 -0
- package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
- package/dist/sankhyablocks/p-d62228fb.js +1 -0
- package/dist/sankhyablocks/p-d9bb48c4.entry.js +11 -0
- package/dist/sankhyablocks/p-edbe8e15.entry.js +1 -0
- package/dist/sankhyablocks/{p-913a9979.js → p-f0b9303b.js} +1 -1
- package/dist/sankhyablocks/p-f8db6795.entry.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/snk-application.d.ts +38 -14
- package/dist/types/components/snk-attach/snk-attach.d.ts +1 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +21 -0
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +15 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +1 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
- 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/snk-data-unit.d.ts +2 -0
- 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/snk-grid.d.ts +28 -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 +35 -1
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +27 -3
- package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
- package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +11 -0
- package/dist/types/components.d.ts +388 -14
- package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +12 -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/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 +1 -1
- package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +8 -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 +17 -1
- package/dist/types/lib/index.d.ts +1 -0
- 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 +7 -0
- package/package.json +4 -3
- package/react/components.d.ts +3 -0
- package/react/components.js +3 -0
- package/react/components.js.map +1 -1
- package/dist/cjs/pesquisa-fetcher-680e198f.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/components/pesquisa-fetcher.js +0 -164
- package/dist/esm/pesquisa-fetcher-03c8f919.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-045eae4d.entry.js +0 -11
- package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
- package/dist/sankhyablocks/p-2a408684.js +0 -1
- package/dist/sankhyablocks/p-3a212712.js +0 -1
- package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
- package/dist/sankhyablocks/p-450c60e4.entry.js +0 -1
- package/dist/sankhyablocks/p-4e5e1313.entry.js +0 -1
- package/dist/sankhyablocks/p-547eeac8.entry.js +0 -1
- package/dist/sankhyablocks/p-62ba211a.entry.js +0 -1
- package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
- package/dist/sankhyablocks/p-7505da04.entry.js +0 -1
- package/dist/sankhyablocks/p-75e674ed.entry.js +0 -1
- package/dist/sankhyablocks/p-7a337364.js +0 -1
- package/dist/sankhyablocks/p-7a85fd49.entry.js +0 -1
- package/dist/sankhyablocks/p-7b08d0f8.entry.js +0 -1
- package/dist/sankhyablocks/p-80042dc6.entry.js +0 -1
- package/dist/sankhyablocks/p-88aa931b.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-af8efd95.js +0 -6
- package/dist/sankhyablocks/p-b05d8893.entry.js +0 -1
- package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
- package/dist/sankhyablocks/p-c1d57831.entry.js +0 -1
- package/dist/sankhyablocks/p-c2495304.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-d6e26ea8.entry.js +0 -1
- package/dist/sankhyablocks/p-dc7c9047.js +0 -1
- package/dist/sankhyablocks/p-df5451c7.js +0 -26
- package/dist/sankhyablocks/p-e549f7d1.js +0 -1
- package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
- package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
- package/dist/sankhyablocks/p-fa4d8cb4.js +0 -1
- package/dist/sankhyablocks/p-fe79f83a.js +0 -60
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js
ADDED
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
export async function showAskCancelPaginationPopup() {
|
|
2
|
+
return new Promise((resolve) => {
|
|
3
|
+
const { checkboxContainer, checkbox } = buildCheckboxContainer();
|
|
4
|
+
const popup = builPopup(resolve, checkbox);
|
|
5
|
+
const contentContainer = buildContentContainer();
|
|
6
|
+
contentContainer.appendChild(buildMessage());
|
|
7
|
+
contentContainer.appendChild(checkboxContainer);
|
|
8
|
+
const actionsContainer = buildActionsContainer();
|
|
9
|
+
actionsContainer.appendChild(buildContinuePaginationBtn(popup, checkbox, resolve));
|
|
10
|
+
actionsContainer.appendChild(buildCancelPaginationBtn(popup, resolve));
|
|
11
|
+
contentContainer.appendChild(actionsContainer);
|
|
12
|
+
popup.appendChild(contentContainer);
|
|
13
|
+
document.body.appendChild(popup);
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
function buildCheckboxContainer() {
|
|
17
|
+
const checkboxContainer = document.createElement('div');
|
|
18
|
+
checkboxContainer.style.marginBottom = '14px';
|
|
19
|
+
checkboxContainer.style.display = 'flex';
|
|
20
|
+
checkboxContainer.style.alignItems = 'center';
|
|
21
|
+
const { checkbox, checkboxLabel } = buildCheckbox();
|
|
22
|
+
checkboxContainer.appendChild(checkbox);
|
|
23
|
+
checkboxContainer.appendChild(checkboxLabel);
|
|
24
|
+
return { checkboxContainer, checkbox };
|
|
25
|
+
}
|
|
26
|
+
function buildCheckbox() {
|
|
27
|
+
const checkbox = document.createElement('input');
|
|
28
|
+
checkbox.type = 'checkbox';
|
|
29
|
+
checkbox.id = 'loadAll';
|
|
30
|
+
const checkboxLabel = document.createElement('label');
|
|
31
|
+
checkboxLabel.htmlFor = 'loadAll';
|
|
32
|
+
checkboxLabel.textContent = 'Carregar tudo';
|
|
33
|
+
checkboxLabel.style.marginLeft = '5px';
|
|
34
|
+
return { checkbox, checkboxLabel };
|
|
35
|
+
}
|
|
36
|
+
function buildActionsContainer() {
|
|
37
|
+
const actionsContainer = document.createElement('div');
|
|
38
|
+
actionsContainer.style.display = 'flex';
|
|
39
|
+
actionsContainer.style.flexDirection = 'row';
|
|
40
|
+
actionsContainer.style.justifyContent = 'end';
|
|
41
|
+
actionsContainer.style.gap = '5px';
|
|
42
|
+
return actionsContainer;
|
|
43
|
+
}
|
|
44
|
+
function buildContentContainer() {
|
|
45
|
+
const contentContainer = document.createElement('div');
|
|
46
|
+
contentContainer.style.display = 'flex';
|
|
47
|
+
contentContainer.style.flexDirection = 'column';
|
|
48
|
+
contentContainer.style.fontFamily = 'var(--font-pattern, Roboto)';
|
|
49
|
+
contentContainer.style.fontSize = 'var(--text--medium)';
|
|
50
|
+
return contentContainer;
|
|
51
|
+
}
|
|
52
|
+
function buildMessage() {
|
|
53
|
+
const message = document.createElement('div');
|
|
54
|
+
const line1 = document.createElement('p');
|
|
55
|
+
const line2 = document.createElement('p');
|
|
56
|
+
const line3 = document.createElement('p');
|
|
57
|
+
line3.style.fontWeight = 'var(--text-weight--large, 600)';
|
|
58
|
+
line1.textContent = 'Uma quantidade de registros muito grande está sendo carregada.';
|
|
59
|
+
line2.textContent = 'Recomendamos que a paginação seja cancelada e que seja criado um filtro para os registros.';
|
|
60
|
+
line3.textContent = 'Deseja cancelar o carregamento?';
|
|
61
|
+
message.appendChild(line1);
|
|
62
|
+
message.appendChild(line2);
|
|
63
|
+
message.appendChild(line3);
|
|
64
|
+
return message;
|
|
65
|
+
}
|
|
66
|
+
function buildCancelPaginationBtn(popup, resolve) {
|
|
67
|
+
const cancelPaginationBtn = document.createElement('ez-button');
|
|
68
|
+
cancelPaginationBtn.label = 'Cancelar paginação';
|
|
69
|
+
cancelPaginationBtn.size = 'medium';
|
|
70
|
+
cancelPaginationBtn.classList.add('ez-button--primary');
|
|
71
|
+
cancelPaginationBtn.onclick = () => {
|
|
72
|
+
document.body.removeChild(popup);
|
|
73
|
+
resolve(CancelPaginationResponse.CANCEL);
|
|
74
|
+
};
|
|
75
|
+
return cancelPaginationBtn;
|
|
76
|
+
}
|
|
77
|
+
function buildContinuePaginationBtn(popup, checkBox, resolve) {
|
|
78
|
+
const continuePaginationBtn = document.createElement('ez-button');
|
|
79
|
+
continuePaginationBtn.label = 'Continuar';
|
|
80
|
+
continuePaginationBtn.size = 'medium';
|
|
81
|
+
continuePaginationBtn.onclick = () => {
|
|
82
|
+
document.body.removeChild(popup);
|
|
83
|
+
resolve(checkBox.checked ? CancelPaginationResponse.LOAD_ALL : CancelPaginationResponse.CONTINUE);
|
|
84
|
+
};
|
|
85
|
+
return continuePaginationBtn;
|
|
86
|
+
}
|
|
87
|
+
function builPopup(resolve, checkBox) {
|
|
88
|
+
const popup = document.createElement('ez-popup');
|
|
89
|
+
popup.opened = true;
|
|
90
|
+
popup.size = 'x-small';
|
|
91
|
+
popup.ezTitle = 'Aviso';
|
|
92
|
+
popup.heightMode = "auto";
|
|
93
|
+
popup.addEventListener('ezClosePopup', () => {
|
|
94
|
+
document.body.removeChild(popup);
|
|
95
|
+
resolve(checkBox.checked ? CancelPaginationResponse.LOAD_ALL : CancelPaginationResponse.CONTINUE);
|
|
96
|
+
}, { once: true });
|
|
97
|
+
popup.addEventListener('ezPopupAction', () => {
|
|
98
|
+
document.body.removeChild(popup);
|
|
99
|
+
resolve(CancelPaginationResponse.CANCEL);
|
|
100
|
+
}, { once: true });
|
|
101
|
+
return popup;
|
|
102
|
+
}
|
|
103
|
+
export var CancelPaginationResponse;
|
|
104
|
+
(function (CancelPaginationResponse) {
|
|
105
|
+
CancelPaginationResponse["CANCEL"] = "CANCEL";
|
|
106
|
+
CancelPaginationResponse["CONTINUE"] = "CONTINUE";
|
|
107
|
+
CancelPaginationResponse["LOAD_ALL"] = "LOAD_ALL";
|
|
108
|
+
})(CancelPaginationResponse || (CancelPaginationResponse = {}));
|
package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ApplicationContext, StringUtils, UserInterface, } from '@sankhyalabs/core';
|
|
2
|
-
import { DataFetcher } from
|
|
3
|
-
import DataUnitFetcher from
|
|
4
|
-
import InMemoryLoader from
|
|
2
|
+
import { DataFetcher } from '../../../DataFetcher';
|
|
3
|
+
import DataUnitFetcher from '../dataunit-fetcher';
|
|
4
|
+
import InMemoryLoader from '../../../../../dataUnit/InMemoryLoader';
|
|
5
5
|
import { getRecordValue } from '../../../../../dataUnit/ValueFormatter';
|
|
6
6
|
export class DatasetStrategy {
|
|
7
7
|
canSlice() {
|
|
@@ -40,16 +40,25 @@ export class DatasetStrategy {
|
|
|
40
40
|
const serviceName = "DatasetSP.loadRecords";
|
|
41
41
|
const requestBody = this.buildRequestBody(serviceName, fields, dataUnit, request, loadingInfo, serverSorting, serverSideFilters);
|
|
42
42
|
const params = loadingInfo.quiet ? { urlParams: { quietMode: "true" } } : undefined;
|
|
43
|
-
const { result: responseRecords, pagerID: pagerId } = await DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
|
|
43
|
+
const { result: responseRecords, pagerID: pagerId, askRowsLimit } = await DataFetcher.get().callServiceBroker(serviceName, requestBody, params);
|
|
44
44
|
const records = this.processRecords(dataUnit, fields, responseRecords);
|
|
45
45
|
const loadingInProgress = pagerId != undefined;
|
|
46
46
|
const count = loadingInfo.count + records.length;
|
|
47
|
-
const
|
|
47
|
+
const isInsertingNewRecord = dataUnit.hasNewRecord();
|
|
48
|
+
const hasLocalSorting = localSorting.length > 0;
|
|
49
|
+
const needReload = !loadingInProgress && hasLocalSorting;
|
|
50
|
+
/**
|
|
51
|
+
* Caso precise recarregar dados, porém está no meio de uma inserção, os dados não devem recarregados instantaneamente,
|
|
52
|
+
* Mas sim, sinalizar que o dataUnit está aguardando para der recarregado.
|
|
53
|
+
*/
|
|
54
|
+
if (needReload && isInsertingNewRecord) {
|
|
55
|
+
dataUnit.setWaitingToReload(true);
|
|
56
|
+
}
|
|
48
57
|
return Promise.resolve({
|
|
49
58
|
records,
|
|
50
59
|
loadingInfo: Object.assign(Object.assign({}, loadingInfo), { pagerId,
|
|
51
|
-
loadingInProgress, total: loadingInProgress ? undefined : count, count,
|
|
52
|
-
|
|
60
|
+
loadingInProgress, total: loadingInProgress ? undefined : count, count, needReload: needReload && !isInsertingNewRecord, askRowsLimit,
|
|
61
|
+
hasLocalSorting })
|
|
53
62
|
});
|
|
54
63
|
}
|
|
55
64
|
catch (error) {
|
|
@@ -101,8 +110,7 @@ export class DatasetStrategy {
|
|
|
101
110
|
},
|
|
102
111
|
}
|
|
103
112
|
};
|
|
104
|
-
|
|
105
|
-
return parsedRequestBody;
|
|
113
|
+
return JSON.stringify(requestBody);
|
|
106
114
|
}
|
|
107
115
|
getFieldsList(dataUnit) {
|
|
108
116
|
let fields = ["__record__id__", "__record__label__"];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { gql } from
|
|
2
|
-
import { ObjectUtils } from
|
|
3
|
-
import { ResourceFetcher } from
|
|
4
|
-
import { DataFetcher } from
|
|
1
|
+
import { gql } from 'graphql-request';
|
|
2
|
+
import { ObjectUtils } from '@sankhyalabs/core';
|
|
3
|
+
import { ResourceFetcher } from './resource-fetcher';
|
|
4
|
+
import { DataFetcher } from '../DataFetcher';
|
|
5
5
|
export class FormConfigFetcher extends ResourceFetcher {
|
|
6
6
|
constructor() {
|
|
7
7
|
super();
|
|
@@ -155,7 +155,10 @@ export class FormConfigFetcher extends ResourceFetcher {
|
|
|
155
155
|
query: this.queryConfig.get("fetchDefaultConfig"),
|
|
156
156
|
})
|
|
157
157
|
.then((result) => {
|
|
158
|
-
|
|
158
|
+
if (!(result === null || result === void 0 ? void 0 : result.resource)) {
|
|
159
|
+
resolve(null);
|
|
160
|
+
}
|
|
161
|
+
resolve(ObjectUtils.stringToObject(result === null || result === void 0 ? void 0 : result.resource));
|
|
159
162
|
})
|
|
160
163
|
.catch((error) => {
|
|
161
164
|
reject(error);
|
|
@@ -175,6 +178,43 @@ export class FormConfigFetcher extends ResourceFetcher {
|
|
|
175
178
|
return undefined;
|
|
176
179
|
return this.buildLegacyConfigurableForm(response);
|
|
177
180
|
}
|
|
181
|
+
async fetchSimpleFormConfig(configName) {
|
|
182
|
+
const payload = { 'requestBody': { 'formConfig': { 'configName': configName } } };
|
|
183
|
+
const response = await DataFetcher.get().callServiceBroker('FormConfig.getFormConfig', JSON.stringify(payload));
|
|
184
|
+
return this.processConfig(response);
|
|
185
|
+
}
|
|
186
|
+
async saveSimpleFormConfig(configName, fieldList) {
|
|
187
|
+
const payload = this.buildSaveSimpleFormConfigPayload(configName, fieldList);
|
|
188
|
+
const response = await DataFetcher.get().callServiceBroker('FormConfig.saveFormConfig', JSON.stringify(payload));
|
|
189
|
+
this.processConfig(response);
|
|
190
|
+
}
|
|
191
|
+
processConfig(response) {
|
|
192
|
+
if (ObjectUtils.isEmpty(response))
|
|
193
|
+
return [];
|
|
194
|
+
const fields = this.getResponseAsArray(response);
|
|
195
|
+
return fields.map(field => field.name);
|
|
196
|
+
}
|
|
197
|
+
getResponseAsArray(response) {
|
|
198
|
+
var _a, _b, _c;
|
|
199
|
+
const rawFields = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.formConfig) === null || _a === void 0 ? void 0 : _a.layout) === null || _b === void 0 ? void 0 : _b.field) !== null && _c !== void 0 ? _c : [];
|
|
200
|
+
return Array.isArray(rawFields) ? rawFields : [rawFields];
|
|
201
|
+
}
|
|
202
|
+
buildSaveSimpleFormConfigPayload(configName, fieldNameList) {
|
|
203
|
+
const fieldList = fieldNameList.map(fieldName => { return { name: fieldName }; });
|
|
204
|
+
return {
|
|
205
|
+
formConfig: {
|
|
206
|
+
configName,
|
|
207
|
+
layout: {
|
|
208
|
+
field: fieldList,
|
|
209
|
+
},
|
|
210
|
+
metadata: { field: [] },
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
async restoreFormConfig(configName) {
|
|
215
|
+
const payload = { 'requestBody': { 'formConfig': { 'configName': configName } } };
|
|
216
|
+
await DataFetcher.get().callServiceBroker('FormConfig.restoreFormConfig', JSON.stringify(payload));
|
|
217
|
+
}
|
|
178
218
|
buildLegacyConfigurableForm(config) {
|
|
179
219
|
var _a, _b, _c;
|
|
180
220
|
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 : [];
|
|
@@ -4,6 +4,7 @@ import { DataFetcher } from "../DataFetcher";
|
|
|
4
4
|
export default class ParametersFetcher {
|
|
5
5
|
constructor() {
|
|
6
6
|
this._embeddedParams = new Map();
|
|
7
|
+
this._cachedParams = new Map();
|
|
7
8
|
this.templateByQuery = new Map();
|
|
8
9
|
try {
|
|
9
10
|
if (window["MGE_PARAMS"] != undefined) {
|
|
@@ -33,11 +34,16 @@ export default class ParametersFetcher {
|
|
|
33
34
|
if (this._embeddedParams.has(name)) {
|
|
34
35
|
return Promise.resolve(this._embeddedParams.get(name));
|
|
35
36
|
}
|
|
37
|
+
if (this._cachedParams.has(name)) {
|
|
38
|
+
return this._cachedParams.get(name);
|
|
39
|
+
}
|
|
36
40
|
const completPath = `param://application?params=${name}`;
|
|
37
|
-
|
|
41
|
+
const param = await DataFetcher.get().callGraphQL({
|
|
38
42
|
values: { name: completPath },
|
|
39
43
|
query: this.templateByQuery.get("fetchParam"),
|
|
40
44
|
});
|
|
45
|
+
this._cachedParams.set(name, param);
|
|
46
|
+
return param;
|
|
41
47
|
}
|
|
42
48
|
async asString(name) {
|
|
43
49
|
const paramArr = await this.getParam(name);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { parseGridConfig, parseLegacyTree } from '../../../../components/snk-pesquisa/pesquisaHelper';
|
|
2
|
+
import { ApplicationContext, DataType, ErrorException } from '@sankhyalabs/core';
|
|
3
|
+
import { gql } from 'graphql-request';
|
|
4
|
+
import { DataFetcher } from '../DataFetcher';
|
|
4
5
|
export class PesquisaFetcher {
|
|
5
6
|
constructor() {
|
|
6
7
|
this._defaultPageSize = 100;
|
|
@@ -73,6 +74,9 @@ export class PesquisaFetcher {
|
|
|
73
74
|
value = ApplicationContext.getContextValue(`__SNK__APPLICATION__FILTER__CONTEXT(${match[1]})__`);
|
|
74
75
|
}
|
|
75
76
|
}
|
|
77
|
+
if (param.dataType === DataType.NUMBER && value === undefined) {
|
|
78
|
+
throw new ErrorException("Falha detectada", `O campo ${param.name} deve ser informado.`);
|
|
79
|
+
}
|
|
76
80
|
let type = param.dataType;
|
|
77
81
|
if (type === DataType.OBJECT) {
|
|
78
82
|
value = value.value;
|
|
@@ -96,9 +100,14 @@ export class PesquisaFetcher {
|
|
|
96
100
|
}
|
|
97
101
|
}
|
|
98
102
|
};
|
|
103
|
+
const urlOptions = {
|
|
104
|
+
urlParams: {
|
|
105
|
+
"quietMode": true
|
|
106
|
+
}
|
|
107
|
+
};
|
|
99
108
|
return new Promise((resolve, reject) => {
|
|
100
109
|
DataFetcher.get()
|
|
101
|
-
.callServiceBroker("PesquisaSP.getSuggestion", JSON.stringify(reqBody))
|
|
110
|
+
.callServiceBroker("PesquisaSP.getSuggestion", JSON.stringify(reqBody), urlOptions)
|
|
102
111
|
.then(result => resolve(result))
|
|
103
112
|
.catch(error => reject(error));
|
|
104
113
|
});
|
|
@@ -142,11 +151,102 @@ export class PesquisaFetcher {
|
|
|
142
151
|
return;
|
|
143
152
|
return listener[listenerType]({ argument, criteria, searchOptions });
|
|
144
153
|
}
|
|
154
|
+
async loadPresentationConfig(entityName) {
|
|
155
|
+
var _a, _b;
|
|
156
|
+
let payload = buildLoadConfig(entityName);
|
|
157
|
+
const response = await DataFetcher.get().callServiceBroker("SystemUtilsSP.getConf", JSON.stringify(payload));
|
|
158
|
+
return (_b = (_a = response === null || response === void 0 ? void 0 : response.config) === null || _a === void 0 ? void 0 : _a.lastUsedMode) !== null && _b !== void 0 ? _b : 'list';
|
|
159
|
+
}
|
|
160
|
+
async savePresentationConfig(entityName, lastUsedMode) {
|
|
161
|
+
let payload = buildSaveConfig(entityName, lastUsedMode);
|
|
162
|
+
await DataFetcher.get().callServiceBroker("SystemUtilsSP.saveConf", JSON.stringify(payload));
|
|
163
|
+
}
|
|
164
|
+
async loadPesquisaGridConfig(entityName) {
|
|
165
|
+
const payload = buildLoadGridConfigPayload(entityName);
|
|
166
|
+
const response = await DataFetcher.get().callServiceBroker("GridConfig.getGridConfigFromJson", JSON.stringify(payload));
|
|
167
|
+
return parseGridConfig(response);
|
|
168
|
+
}
|
|
169
|
+
async savePesquisaGridConfig(entityName, columns) {
|
|
170
|
+
const payload = buildSaveGridConfigPayload(entityName, columns);
|
|
171
|
+
await DataFetcher.get().callServiceBroker("GridConfig.saveGridConfigFromJSON", JSON.stringify(payload));
|
|
172
|
+
}
|
|
173
|
+
async loadTree(entityName, argument, criteria, searchOptions) {
|
|
174
|
+
const requestBody = this.buildLoadTreeRequestBody(entityName, argument, criteria, searchOptions);
|
|
175
|
+
const response = await DataFetcher.get().callServiceBroker("Pesquisa.getStructuredData", JSON.stringify(requestBody));
|
|
176
|
+
return parseLegacyTree(response);
|
|
177
|
+
}
|
|
178
|
+
buildLoadTreeRequestBody(entityName, argument, criteria, searchOptions) {
|
|
179
|
+
var _a, _b;
|
|
180
|
+
const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
|
|
181
|
+
const incomeSearchOptions = (_a = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions) !== null && _a !== void 0 ? _a : searchOptions;
|
|
182
|
+
const rootEntity = incomeSearchOptions === null || incomeSearchOptions === void 0 ? void 0 : incomeSearchOptions.rootEntity;
|
|
183
|
+
const codeFieldName = incomeSearchOptions === null || incomeSearchOptions === void 0 ? void 0 : incomeSearchOptions.codeFieldName;
|
|
184
|
+
const expression = (_b = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) === null || _b === void 0 ? void 0 : _b.expression;
|
|
185
|
+
const params = this.buildParams(listenerResult);
|
|
186
|
+
const instancia = {
|
|
187
|
+
'nome': entityName,
|
|
188
|
+
'nomeInstanciaLocal': rootEntity,
|
|
189
|
+
'codeFieldName': codeFieldName,
|
|
190
|
+
};
|
|
191
|
+
if (expression) {
|
|
192
|
+
instancia['criterioLiteral'] = {
|
|
193
|
+
'expressao': {
|
|
194
|
+
'$': expression,
|
|
195
|
+
},
|
|
196
|
+
'parametro': params,
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
return {
|
|
200
|
+
'instancia': instancia,
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
buildParams(listenerResult) {
|
|
204
|
+
var _a, _b;
|
|
205
|
+
let params = (_b = (_a = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) === null || _a === void 0 ? void 0 : _a.params) !== null && _b !== void 0 ? _b : [];
|
|
206
|
+
params = params.map(param => {
|
|
207
|
+
return Object.assign(Object.assign({}, param), { tipo: convertParamType(param.dataType), $: param.value });
|
|
208
|
+
});
|
|
209
|
+
return params;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
function buildLoadGridConfigPayload(entityName) {
|
|
213
|
+
return {
|
|
214
|
+
'gridConfig': {
|
|
215
|
+
'configName': `GrdCfgHtml5:grdcfg.dynaform.pesquisa.${entityName}`,
|
|
216
|
+
},
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
function buildSaveGridConfigPayload(entityName, columns) {
|
|
220
|
+
const field = {};
|
|
221
|
+
columns === null || columns === void 0 ? void 0 : columns.forEach((col, index) => field[`field${index}`] = col);
|
|
222
|
+
return {
|
|
223
|
+
'gridConfig': {
|
|
224
|
+
'compactMode': true,
|
|
225
|
+
'configName': `GrdCfgHtml5:grdcfg.dynaform.pesquisa.${entityName}`,
|
|
226
|
+
field,
|
|
227
|
+
},
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
function buildLoadConfig(entityName) {
|
|
231
|
+
return {
|
|
232
|
+
'config': {
|
|
233
|
+
'chave': `PesquisaContent:${entityName}`,
|
|
234
|
+
'tipo': 'T',
|
|
235
|
+
},
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
function buildSaveConfig(entityName, lastUsedMode) {
|
|
239
|
+
return {
|
|
240
|
+
'config': {
|
|
241
|
+
lastUsedMode,
|
|
242
|
+
'chave': `PesquisaContent:${entityName}`,
|
|
243
|
+
'tipo': 'T',
|
|
244
|
+
}
|
|
245
|
+
};
|
|
145
246
|
}
|
|
146
247
|
function convertParamType(dataType) {
|
|
147
|
-
//Alerta: Cuidado
|
|
148
|
-
//
|
|
149
|
-
//data (com ou sem hora) e string são realmente relevantes
|
|
248
|
+
// Alerta: Cuidado para não contaminar o DataType com a implementação atual da pesquisa!
|
|
249
|
+
// Em geral, somente inteiros, data (com ou sem hora) e string são realmente relevantes.
|
|
150
250
|
switch (dataType) {
|
|
151
251
|
case DataType.NUMBER:
|
|
152
252
|
return "I";
|
|
@@ -12,3 +12,4 @@ export { default as GridConfigFetcher } from './http/data-fetcher/fetchers/grid-
|
|
|
12
12
|
export { default as ParametersFetcher } from './http/data-fetcher/fetchers/parameters-fecher';
|
|
13
13
|
export { default as PersonalizedFilterFetcher } from './http/data-fetcher/fetchers/personalized-filter-fetcher';
|
|
14
14
|
export { ResourceFetcher } from './http/data-fetcher/fetchers/resource-fetcher';
|
|
15
|
+
export { TEMPLATES_SKELETON } from './utils/constants';
|
|
@@ -7,7 +7,7 @@ const snkExporterMessages = {
|
|
|
7
7
|
emailSenderOptStep_subtitle: "Primeiro, escolha o formato do arquivo",
|
|
8
8
|
emailSenderOptStep_lblFormat: "Formato:",
|
|
9
9
|
emailSenderOptStep_formatPDF: "PDF (.pdf)",
|
|
10
|
-
|
|
10
|
+
emailSenderOptStep_formatXLS: "Planilha (.xls)",
|
|
11
11
|
emailSenderOptStep_export: "Exportar:",
|
|
12
12
|
emailSenderOptStep_allData: "Toda a grade",
|
|
13
13
|
emailSenderOptStep_currentPage: "Somente a página atual",
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export const snkGridMessages = {
|
|
2
|
-
findColumn: "Busca de colunas"
|
|
2
|
+
findColumn: "Busca de colunas",
|
|
3
|
+
cancelConfirmation: {
|
|
4
|
+
title: "Aviso",
|
|
5
|
+
message: "As alterações realizadas serão descartadas<br/><br/><b>Você realmente gostaria de cancelar?</b>",
|
|
6
|
+
}
|
|
3
7
|
};
|
|
4
8
|
export const snkGridConfigMessages = {
|
|
5
9
|
gridConfiguration: "Configuração da Grade",
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { h } from '@stencil/core';
|
|
2
|
+
import { StringUtils } from '@sankhyalabs/core';
|
|
3
|
+
export class ContinuousInsertUtils {
|
|
4
|
+
constructor(snkApplication, resourceID, configName) {
|
|
5
|
+
this.snkApplication = snkApplication;
|
|
6
|
+
this.keyConfigEnableContinuousInsert = `${resourceID}enableContinuousInsert${configName ? configName : ''}`;
|
|
7
|
+
}
|
|
8
|
+
handleSaveConfig(enableContinuousInsert) {
|
|
9
|
+
return this.snkApplication.saveConfig(this.keyConfigEnableContinuousInsert, enableContinuousInsert);
|
|
10
|
+
}
|
|
11
|
+
getConfig() {
|
|
12
|
+
return this.snkApplication.getConfig(this.keyConfigEnableContinuousInsert).then(value => {
|
|
13
|
+
if (value) {
|
|
14
|
+
return value == "true" ? true : false;
|
|
15
|
+
}
|
|
16
|
+
return false;
|
|
17
|
+
}).catch(() => {
|
|
18
|
+
return false;
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
actionContinuousInsert(enableContinuousInsert, handleEnableContinuousInsert) {
|
|
22
|
+
return {
|
|
23
|
+
value: StringUtils.generateUUID(),
|
|
24
|
+
label: enableContinuousInsert ? 'Desativar inclusão contínua' : 'Ativar inclusão contínua',
|
|
25
|
+
enabled: true,
|
|
26
|
+
itemBuilder: () => {
|
|
27
|
+
return (h("div", { class: "ez-dropdown__item-wrapper", onClick: handleEnableContinuousInsert }, h("span", { class: "ez-dropdown__item-label" }, enableContinuousInsert ? 'Desativar inclusão contínua' : 'Ativar inclusão contínua')));
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -13,6 +13,28 @@ export class CrudUtils {
|
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
+
static parseCrudResults(entities, onlyFirst) {
|
|
17
|
+
if (!Array.isArray(entities)) {
|
|
18
|
+
entities = [entities];
|
|
19
|
+
}
|
|
20
|
+
const crudFindResults = [];
|
|
21
|
+
for (const entity of entities) {
|
|
22
|
+
let crudFindResult = {
|
|
23
|
+
fields: new Map()
|
|
24
|
+
};
|
|
25
|
+
for (let key in entity) {
|
|
26
|
+
let fieldValue = entity[key];
|
|
27
|
+
if (fieldValue.hasOwnProperty('$')) {
|
|
28
|
+
crudFindResult.fields.set(key, fieldValue.$);
|
|
29
|
+
}
|
|
30
|
+
if (onlyFirst) {
|
|
31
|
+
break;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
crudFindResults.push(crudFindResult);
|
|
35
|
+
}
|
|
36
|
+
return crudFindResults.length > 1 ? crudFindResults : crudFindResults[0];
|
|
37
|
+
}
|
|
16
38
|
static find(entityName, fields, criteria, onlyFirst = true, criteriaExpression, orderBy) {
|
|
17
39
|
const SERVICE_CRUD_FIND = "mge@crud.find";
|
|
18
40
|
let parsedFields = [];
|
|
@@ -61,24 +83,11 @@ export class CrudUtils {
|
|
|
61
83
|
DataFetcher.get().callServiceBroker(SERVICE_CRUD_FIND, JSON.stringify(request)).then((result) => {
|
|
62
84
|
var _a;
|
|
63
85
|
let entities = (_a = result.entidades) === null || _a === void 0 ? void 0 : _a.entidade;
|
|
64
|
-
if (entities
|
|
65
|
-
let crudFindResult = {
|
|
66
|
-
fields: new Map()
|
|
67
|
-
};
|
|
68
|
-
for (let key in entities) {
|
|
69
|
-
let fieldValue = entities[key];
|
|
70
|
-
if (fieldValue.hasOwnProperty('$')) {
|
|
71
|
-
crudFindResult.fields.set(key, fieldValue.$);
|
|
72
|
-
}
|
|
73
|
-
if (onlyFirst) {
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
resolve(crudFindResult);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
86
|
+
if (!entities) {
|
|
80
87
|
resolve(null);
|
|
81
88
|
}
|
|
89
|
+
const crudFindResults = this.parseCrudResults(entities, onlyFirst);
|
|
90
|
+
resolve(crudFindResults);
|
|
82
91
|
});
|
|
83
92
|
});
|
|
84
93
|
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import { DataType, JSUtils } from "@sankhyalabs/core";
|
|
2
|
-
export
|
|
3
|
-
const selectionInfo = dataUnit.getSelectionInfo();
|
|
2
|
+
export function getSelectedRecordsIDsInfo(dataUnit) {
|
|
3
|
+
const selectionInfo = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getSelectionInfo();
|
|
4
4
|
if (selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.isAllRecords()) {
|
|
5
5
|
return [];
|
|
6
6
|
}
|
|
7
7
|
const selectedRecordsIDsInfo = [];
|
|
8
|
-
const selectedRecords = selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.
|
|
8
|
+
const selectedRecords = selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.records;
|
|
9
9
|
if ((selectedRecords === null || selectedRecords === void 0 ? void 0 : selectedRecords.length) > 0) {
|
|
10
|
-
selectedRecords.forEach(
|
|
11
|
-
if (!dataUnit.isNewRecord(
|
|
10
|
+
selectedRecords.forEach(({ __record__id__ }) => {
|
|
11
|
+
if (!dataUnit.isNewRecord(__record__id__)) {
|
|
12
12
|
/*
|
|
13
13
|
Esse if foi necessário para tratar corretamente o ID
|
|
14
14
|
do record quando está sendo utilizado no modo standAlone
|
|
15
15
|
isso não faz a exportação da grid funcionar no modo standAlone
|
|
16
16
|
mas deixa de causar erro nas oprações de CRUD.
|
|
17
17
|
*/
|
|
18
|
-
if (!JSUtils.isBase64(
|
|
18
|
+
if (!JSUtils.isBase64(__record__id__)) {
|
|
19
19
|
selectedRecordsIDsInfo.push({
|
|
20
20
|
name: "__record__id__",
|
|
21
21
|
type: DataType.TEXT,
|
|
22
|
-
value:
|
|
22
|
+
value: __record__id__
|
|
23
23
|
});
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
|
-
const revertBase64ToObject = JSON.parse(window.atob(
|
|
26
|
+
const revertBase64ToObject = JSON.parse(window.atob(__record__id__));
|
|
27
27
|
Object.entries(revertBase64ToObject).forEach(([name, value]) => {
|
|
28
28
|
const metadataField = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getField(name);
|
|
29
29
|
if (metadataField == undefined) {
|
|
@@ -35,4 +35,4 @@ export const getSelectedIDs = (dataUnit) => {
|
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
37
|
return selectedRecordsIDsInfo;
|
|
38
|
-
}
|
|
38
|
+
}
|
|
@@ -103,3 +103,12 @@ export var SIMPLE_CRUD_MODE;
|
|
|
103
103
|
SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["SERVER"] = 0] = "SERVER";
|
|
104
104
|
SIMPLE_CRUD_MODE[SIMPLE_CRUD_MODE["IN_MEMORY"] = 1] = "IN_MEMORY";
|
|
105
105
|
})(SIMPLE_CRUD_MODE || (SIMPLE_CRUD_MODE = {}));
|
|
106
|
+
// TODO: validar forma de compartilhar os templates com outros projetos
|
|
107
|
+
export var TEMPLATES_SKELETON;
|
|
108
|
+
(function (TEMPLATES_SKELETON) {
|
|
109
|
+
TEMPLATES_SKELETON[TEMPLATES_SKELETON["CUSTOM_TEMPLATE"] = 0] = "CUSTOM_TEMPLATE";
|
|
110
|
+
TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID"] = 1] = "GRID";
|
|
111
|
+
TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID_WITH_SIDEBAR"] = 2] = "GRID_WITH_SIDEBAR";
|
|
112
|
+
TEMPLATES_SKELETON[TEMPLATES_SKELETON["GRID_WITH_PANEL"] = 3] = "GRID_WITH_PANEL";
|
|
113
|
+
TEMPLATES_SKELETON[TEMPLATES_SKELETON["FORM_WITH_SIDEBAR"] = 4] = "FORM_WITH_SIDEBAR";
|
|
114
|
+
})(TEMPLATES_SKELETON || (TEMPLATES_SKELETON = {}));
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { precacheAndRoute, createHandlerBoundToURL } from 'workbox-precaching';
|
|
2
|
+
import { registerRoute } from 'workbox-routing';
|
|
3
|
+
import { StaleWhileRevalidate, CacheFirst } from 'workbox-strategies';
|
|
4
|
+
import { CacheableResponsePlugin } from 'workbox-cacheable-response';
|
|
5
|
+
import { ExpirationPlugin } from 'workbox-expiration';
|
|
6
|
+
|
|
7
|
+
// Placeholder for Workbox to inject the precache manifest
|
|
8
|
+
precacheAndRoute([]);
|
|
9
|
+
|
|
10
|
+
// Additional custom logic follows...
|
|
11
|
+
registerRoute(
|
|
12
|
+
({ url }) =>
|
|
13
|
+
url.pathname.endsWith('/service.sbr') &&
|
|
14
|
+
url.searchParams.has('serviceName'),
|
|
15
|
+
new StaleWhileRevalidate({
|
|
16
|
+
cacheName: 'api-cache',
|
|
17
|
+
plugins: [new CacheableResponsePlugin({ statuses: [200] })],
|
|
18
|
+
})
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
registerRoute(
|
|
22
|
+
({ request }) =>
|
|
23
|
+
['image', 'font', 'style'].includes(request.destination),
|
|
24
|
+
new CacheFirst({
|
|
25
|
+
cacheName: 'assets-cache',
|
|
26
|
+
plugins: [
|
|
27
|
+
new CacheableResponsePlugin({ statuses: [0, 200] }),
|
|
28
|
+
new ExpirationPlugin({ maxEntries: 50, maxAgeSeconds: 30 * 24 * 60 * 60 }),
|
|
29
|
+
],
|
|
30
|
+
})
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
registerRoute(
|
|
34
|
+
({ request }) => request.mode === 'navigate',
|
|
35
|
+
createHandlerBoundToURL('/index.html')
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
self.addEventListener('install', (event) => {
|
|
39
|
+
console.log('Service Worker installing.');
|
|
40
|
+
self.skipWaiting();
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
self.addEventListener('activate', (event) => {
|
|
44
|
+
console.log('Service Worker activating.');
|
|
45
|
+
clients.claim();
|
|
46
|
+
});
|