@sankhyalabs/sankhyablocks 8.16.0-dev.5 → 8.16.0-dev.51
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/{ConfigStorage-942ce74b.js → ConfigStorage-f079f5fd.js} +3 -2
- package/dist/cjs/{IExporterProvider-597949f9.js → ContinuousInsertUtils-64e47516.js} +64 -22
- package/dist/cjs/{DataFetcher-313debd8.js → DataFetcher-e059eb72.js} +28 -20
- package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
- package/dist/cjs/{SnkFormConfigManager-26dfc762.js → SnkFormConfigManager-63369164.js} +72 -16
- package/dist/cjs/{SnkMessageBuilder-722b104e.js → SnkMessageBuilder-bae64d0d.js} +7 -3
- package/dist/cjs/{auth-fetcher-54f5ff9d.js → auth-fetcher-4f853233.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-688d3f05.js → dataunit-fetcher-228016f4.js} +48 -20
- package/dist/cjs/{field-search-f56aa7d6.js → field-search-68e34bf4.js} +5 -1
- package/dist/cjs/{form-config-fetcher-2dd00e5b.js → form-config-fetcher-39397ac5.js} +5 -2
- package/dist/cjs/index-f9e81701.js +8 -28
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pesquisa-fetcher-680e198f.js → pesquisa-fetcher-a9bfeb22.js} +7 -2
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-actions-button_4.cjs.entry.js +42 -36
- package/dist/cjs/snk-application.cjs.entry.js +119 -61
- package/dist/cjs/snk-attach.cjs.entry.js +38 -29
- package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +398 -12
- package/dist/cjs/snk-crud.cjs.entry.js +23 -8
- package/dist/cjs/snk-data-exporter.cjs.entry.js +19 -18
- package/dist/cjs/{snk-data-unit-685272e7.js → snk-data-unit-3d9b6ed4.js} +66 -34
- package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
- package/dist/cjs/snk-detail-view.cjs.entry.js +11 -11
- package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
- package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1420 -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 +66 -21
- package/dist/cjs/{snk-guides-viewer-28122419.js → snk-guides-viewer-2139481c.js} +29 -13
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
- package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +1 -1
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
- 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 +68 -26
- package/dist/cjs/snk-taskbar.cjs.entry.js +64 -38
- package/dist/collection/collection-manifest.json +11 -31
- package/dist/collection/components/snk-actions-button/actions/index.js +12 -9
- 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 +28 -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.js +44 -54
- package/dist/collection/components/snk-attach/snk-attach.js +25 -16
- package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +2 -4
- 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 +2 -2
- 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 +4 -4
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +5 -5
- 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 +2 -2
- 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-unit/snk-data-unit.js +81 -32
- 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.js +1 -1
- 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/snk-filter-bar.css +1 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +79 -21
- package/dist/collection/components/snk-form/snk-form.js +2 -2
- package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +70 -14
- 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 +100 -8
- 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 +0 -1
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +111 -15
- package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +106 -38
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +3 -3
- package/dist/collection/lib/configs/ConfigStorage.js +1 -0
- 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 +2 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +9 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +4 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +6 -1
- 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/sw.js +46 -0
- package/dist/components/ConfigStorage.js +1 -0
- package/dist/components/{IExporterProvider.js → ContinuousInsertUtils.js} +65 -21
- package/dist/components/DataFetcher.js +29 -21
- package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
- package/dist/components/SnkFormConfigManager.js +70 -14
- package/dist/components/SnkMessageBuilder.js +7 -3
- package/dist/components/dataunit-fetcher.js +47 -17
- package/dist/components/form-config-fetcher.js +4 -1
- package/dist/components/pesquisa-fetcher.js +6 -1
- package/dist/components/snk-actions-button2.js +39 -35
- package/dist/components/snk-application2.js +114 -55
- package/dist/components/snk-attach2.js +34 -25
- package/dist/components/snk-crud.js +23 -3
- package/dist/components/snk-data-exporter2.js +12 -11
- package/dist/components/snk-data-unit2.js +68 -72
- package/dist/components/snk-detail-view2.js +29 -10
- package/dist/components/snk-exporter-email-sender2.js +1 -1
- package/dist/components/snk-filter-bar2.js +41 -22
- 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-text.js +2 -1
- package/dist/components/snk-form-config2.js +34 -9
- package/dist/components/snk-form.js +2 -2
- package/dist/components/snk-grid2.js +60 -12
- package/dist/components/snk-personalized-filter-editor.js +1 -1
- 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 +62 -15
- package/dist/components/snk-taskbar2.js +66 -40
- package/dist/esm/{ConfigStorage-86187da3.js → ConfigStorage-6514d66e.js} +3 -2
- package/dist/esm/{IExporterProvider-63a188b6.js → ContinuousInsertUtils-b62906f9.js} +65 -24
- package/dist/esm/{DataFetcher-c1baf61d.js → DataFetcher-5034df59.js} +29 -21
- package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
- package/dist/esm/{SnkFormConfigManager-5782d6cf.js → SnkFormConfigManager-b409c745.js} +72 -16
- package/dist/esm/{SnkMessageBuilder-89925609.js → SnkMessageBuilder-6fff4a4c.js} +7 -3
- package/dist/esm/{auth-fetcher-039abba3.js → auth-fetcher-ca5d3a49.js} +1 -1
- package/dist/esm/{constants-8457af36.js → constants-7302ee87.js} +1 -1
- package/dist/esm/{dataunit-fetcher-264191b2.js → dataunit-fetcher-56cb648b.js} +48 -18
- package/dist/esm/{field-search-efbe307f.js → field-search-f8b1d91e.js} +5 -1
- package/dist/esm/{form-config-fetcher-30fb808f.js → form-config-fetcher-a7d3e277.js} +5 -2
- package/dist/esm/index-a7d3d3f1.js +8 -28
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pesquisa-fetcher-03c8f919.js → pesquisa-fetcher-6bc2e41a.js} +7 -2
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button_4.entry.js +44 -38
- package/dist/esm/snk-application.entry.js +119 -61
- package/dist/esm/snk-attach.entry.js +39 -30
- package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +399 -15
- package/dist/esm/snk-configurator.entry.js +1 -1
- package/dist/esm/snk-crud.entry.js +24 -9
- package/dist/esm/snk-data-exporter.entry.js +20 -19
- package/dist/esm/{snk-data-unit-63f83504.js → snk-data-unit-9fa7d2b9.js} +66 -34
- package/dist/esm/snk-data-unit.entry.js +5 -5
- package/dist/esm/snk-detail-view.entry.js +12 -12
- 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 +1413 -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 +61 -16
- package/dist/esm/{snk-guides-viewer-7460fe10.js → snk-guides-viewer-b7ed39eb.js} +30 -14
- package/dist/esm/snk-guides-viewer.entry.js +9 -9
- package/dist/esm/snk-personalized-filter-editor.entry.js +1 -1
- package/dist/esm/snk-personalized-filter.entry.js +3 -3
- 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 +65 -23
- package/dist/esm/snk-tab-config.entry.js +1 -1
- package/dist/esm/snk-taskbar.entry.js +65 -39
- package/dist/sankhyablocks/p-00278e07.js +1 -0
- package/dist/sankhyablocks/p-0d2a2e9e.entry.js +1 -0
- package/dist/sankhyablocks/p-0e206e62.js +1 -0
- package/dist/sankhyablocks/{p-df5451c7.js → p-126c58ea.js} +2 -2
- package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
- package/dist/sankhyablocks/p-17425c72.js +1 -0
- package/dist/sankhyablocks/p-1d3ce0d9.entry.js +1 -0
- package/dist/sankhyablocks/p-23736d75.js +1 -0
- package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-2d3f9482.entry.js} +1 -1
- package/dist/sankhyablocks/{p-af8efd95.js → p-341465ce.js} +2 -2
- package/dist/sankhyablocks/p-342eeb3b.js +1 -0
- package/dist/sankhyablocks/p-3728d2aa.entry.js +11 -0
- package/dist/sankhyablocks/p-4138da61.entry.js +1 -0
- package/dist/sankhyablocks/{p-7663f597.entry.js → p-41793e17.entry.js} +1 -1
- package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
- package/dist/sankhyablocks/p-47d24ac8.js +60 -0
- package/dist/sankhyablocks/p-4e1f992e.entry.js +1 -0
- package/dist/sankhyablocks/p-5b51491f.entry.js +1 -0
- package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
- package/dist/sankhyablocks/p-619aeac8.entry.js +1 -0
- package/dist/sankhyablocks/p-7075b789.entry.js +1 -0
- package/dist/sankhyablocks/p-7dd49d15.js +1 -0
- package/dist/sankhyablocks/p-83e71703.entry.js +1 -0
- package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
- package/dist/sankhyablocks/{p-95df461f.entry.js → p-8b4fc28f.entry.js} +1 -1
- package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
- package/dist/sankhyablocks/{p-b0ef4383.js → p-95ce311a.js} +1 -1
- package/dist/sankhyablocks/{p-aff76a53.js → p-9ffd9fc7.js} +2 -2
- package/dist/sankhyablocks/p-a2c790ac.entry.js +1 -0
- package/dist/sankhyablocks/p-a3fadd0b.entry.js +1 -0
- package/dist/sankhyablocks/{p-a1d72395.entry.js → p-aa003d4e.entry.js} +1 -1
- package/dist/sankhyablocks/p-aaf94476.js +1 -0
- package/dist/sankhyablocks/p-af7f7b3e.entry.js +1 -0
- package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
- package/dist/sankhyablocks/{p-17359530.entry.js → p-e390641b.entry.js} +1 -1
- package/dist/sankhyablocks/p-e4391e16.js +1 -0
- package/dist/sankhyablocks/p-e97be1c8.js +1 -0
- package/dist/sankhyablocks/p-ec43fcc8.entry.js +1 -0
- package/dist/sankhyablocks/{p-eae7a817.entry.js → p-fca0e5cc.entry.js} +1 -1
- 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 +9 -13
- 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/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +7 -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 +9 -0
- 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 +15 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +15 -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 +143 -0
- 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/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +1 -1
- package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.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/package.json +4 -3
- 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/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-219f888d.entry.js +0 -1
- package/dist/sankhyablocks/p-3a212712.js +0 -1
- package/dist/sankhyablocks/p-3a216b81.entry.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-47b60deb.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-75f83d1d.entry.js +0 -1
- package/dist/sankhyablocks/p-7a337364.js +0 -1
- package/dist/sankhyablocks/p-82a0bfb0.entry.js +0 -11
- package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
- package/dist/sankhyablocks/p-913a9979.js +0 -1
- package/dist/sankhyablocks/p-941bf3ef.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-b8d06bb3.entry.js +0 -1
- package/dist/sankhyablocks/p-bad55caa.entry.js +0 -1
- package/dist/sankhyablocks/p-c2495304.js +0 -1
- package/dist/sankhyablocks/p-c5268346.entry.js +0 -1
- package/dist/sankhyablocks/p-c640163b.entry.js +0 -1
- package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
- package/dist/sankhyablocks/p-dc7c9047.js +0 -1
- package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
- package/dist/sankhyablocks/p-f1b31208.entry.js +0 -1
- package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
- package/dist/sankhyablocks/p-f4d7fa81.js +0 -1
- package/dist/sankhyablocks/p-f51acb38.js +0 -1
- package/dist/sankhyablocks/p-fcac4dfc.js +0 -1
- package/dist/sankhyablocks/p-fe79f83a.js +0 -60
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
@@ -0,0 +1,16 @@
|
|
1
|
+
import DebouncedRequestListener from "./DebouncedRequestListener";
|
2
|
+
import RequestListenerLoadingBar from "./RequestListenerLoadingBar";
|
3
|
+
class RequestListenerFactory {
|
4
|
+
static create({ strategy }) {
|
5
|
+
switch (strategy) {
|
6
|
+
case 'request_name':
|
7
|
+
return new RequestListenerLoadingBar();
|
8
|
+
case 'request_time':
|
9
|
+
return new DebouncedRequestListener();
|
10
|
+
default:
|
11
|
+
throw new Error('Strategy not found');
|
12
|
+
}
|
13
|
+
;
|
14
|
+
}
|
15
|
+
}
|
16
|
+
export default RequestListenerFactory;
|
package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
class RequestListenerLoadingBar {
|
2
|
+
constructor() {
|
3
|
+
this._debounceTime = 1000;
|
4
|
+
this._ignoredNameTypes = ["totals"];
|
5
|
+
this._countRequest = 0;
|
6
|
+
}
|
7
|
+
onRequestStart(param) {
|
8
|
+
if (this.isIgnoreLoadingOnRequest(param)) {
|
9
|
+
return;
|
10
|
+
}
|
11
|
+
this._countRequest++;
|
12
|
+
this.ezLoadingBar.show();
|
13
|
+
if (this._timerLoading) {
|
14
|
+
clearTimeout(this._timerLoading);
|
15
|
+
}
|
16
|
+
}
|
17
|
+
;
|
18
|
+
onRequestEnd(param) {
|
19
|
+
if (this.isIgnoreLoadingOnRequest(param)) {
|
20
|
+
return;
|
21
|
+
}
|
22
|
+
this._countRequest--;
|
23
|
+
this._timerLoading = setTimeout(() => {
|
24
|
+
if (this._countRequest <= 0) {
|
25
|
+
this.ezLoadingBar.hide();
|
26
|
+
}
|
27
|
+
}, this._debounceTime);
|
28
|
+
}
|
29
|
+
;
|
30
|
+
isIgnoreLoadingOnRequest(param) {
|
31
|
+
if (param == undefined) {
|
32
|
+
return false;
|
33
|
+
}
|
34
|
+
if (param.url.includes("quietMode=true")) {
|
35
|
+
return true;
|
36
|
+
}
|
37
|
+
if (param.requestBody == undefined) {
|
38
|
+
return false;
|
39
|
+
}
|
40
|
+
if (param.requestBody.length == 1) {
|
41
|
+
const { name } = param.requestBody[0].variables;
|
42
|
+
if (name) {
|
43
|
+
const nameParts = name.split(":");
|
44
|
+
const nameType = nameParts[0];
|
45
|
+
return this._ignoredNameTypes.indexOf(nameType) >= 0;
|
46
|
+
}
|
47
|
+
}
|
48
|
+
return false;
|
49
|
+
}
|
50
|
+
;
|
51
|
+
}
|
52
|
+
export default RequestListenerLoadingBar;
|
@@ -15,6 +15,8 @@ import { SnkMessageBuilder } from "../../lib/message/SnkMessageBuilder";
|
|
15
15
|
import UrlUtils from "../../lib/utils/urlutils";
|
16
16
|
import Workspace from "../../lib/workspace/workspace";
|
17
17
|
import { SnkErrorHandler } from "./errorhandler/snk-error-handler";
|
18
|
+
import RequestListenerFactory from "./request-listener/RequestListenerFactory";
|
19
|
+
import PreloadManager from "../../lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager";
|
18
20
|
/**
|
19
21
|
* É possível customizar as mensagens dos blocos de construção através de um pequeno modulo na estrutura da aplicação:
|
20
22
|
* - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
|
@@ -28,7 +30,7 @@ export class SnkApplication {
|
|
28
30
|
this._waitingAppReady = new Array();
|
29
31
|
this._duCache = new Map();
|
30
32
|
this._duPromises = new Map();
|
31
|
-
this._requestListener =
|
33
|
+
this._requestListener = RequestListenerFactory.create({ strategy: 'request_time' });
|
32
34
|
this._pendingActions = new Map;
|
33
35
|
this._loadPkParameter = null;
|
34
36
|
this._isLoadedByPk = false;
|
@@ -516,6 +518,16 @@ export class SnkApplication {
|
|
516
518
|
async isLoadedByPk() {
|
517
519
|
return Promise.resolve(this._isLoadedByPk);
|
518
520
|
}
|
521
|
+
/**
|
522
|
+
* Remove registro do cache do PreLoader do dataunit.
|
523
|
+
* Deve ser usado quando existe um dataunit usando loader do application, mas o removeLoader está sendo sobrescrito.
|
524
|
+
*/
|
525
|
+
async preloadMangerRemoveRecord(dataUnit, recordsIDs) {
|
526
|
+
const records = recordsIDs.map(id => {
|
527
|
+
return { "__record__id__": id };
|
528
|
+
});
|
529
|
+
PreloadManager.removeRecords(dataUnit, records);
|
530
|
+
}
|
519
531
|
async getAuthList(auth) {
|
520
532
|
return await (new MGEAuthorization()).parseFromJSON(auth);
|
521
533
|
}
|
@@ -1004,7 +1016,7 @@ export class SnkApplication {
|
|
1004
1016
|
.unbind("F1");
|
1005
1017
|
}
|
1006
1018
|
render() {
|
1007
|
-
return (h("div", null, h("ez-loading-bar", { ref: (ref) => this._requestListener.
|
1019
|
+
return (h("div", null, h("ez-loading-bar", { ref: (ref) => this._requestListener.ezLoadingBar = ref }), h("ez-popup", { opened: false, ref: (ref) => this._popUp = ref, onEzClosePopup: () => this.closePopUp() }), h("ez-modal", { opened: false, ref: (ref) => this._rightModal = ref, "modal-size": "small", closeOutsideClick: true, closeEsc: true })));
|
1008
1020
|
}
|
1009
1021
|
static get is() { return "snk-application"; }
|
1010
1022
|
static get encapsulation() { return "scoped"; }
|
@@ -1096,7 +1108,7 @@ export class SnkApplication {
|
|
1096
1108
|
"mutable": false,
|
1097
1109
|
"complexType": {
|
1098
1110
|
"original": "LoadByPkHandler",
|
1099
|
-
"resolved": "(objPK: { pk:
|
1111
|
+
"resolved": "(objPK: { pk: any; }, redirectFrom?: string) => void",
|
1100
1112
|
"references": {
|
1101
1113
|
"LoadByPkHandler": {
|
1102
1114
|
"location": "global"
|
@@ -2200,6 +2212,35 @@ export class SnkApplication {
|
|
2200
2212
|
}]
|
2201
2213
|
}
|
2202
2214
|
},
|
2215
|
+
"preloadMangerRemoveRecord": {
|
2216
|
+
"complexType": {
|
2217
|
+
"signature": "(dataUnit: DataUnit, recordsIDs: Array<string>) => Promise<void>",
|
2218
|
+
"parameters": [{
|
2219
|
+
"tags": [],
|
2220
|
+
"text": ""
|
2221
|
+
}, {
|
2222
|
+
"tags": [],
|
2223
|
+
"text": ""
|
2224
|
+
}],
|
2225
|
+
"references": {
|
2226
|
+
"Promise": {
|
2227
|
+
"location": "global"
|
2228
|
+
},
|
2229
|
+
"DataUnit": {
|
2230
|
+
"location": "import",
|
2231
|
+
"path": "@sankhyalabs/core"
|
2232
|
+
},
|
2233
|
+
"Array": {
|
2234
|
+
"location": "global"
|
2235
|
+
}
|
2236
|
+
},
|
2237
|
+
"return": "Promise<void>"
|
2238
|
+
},
|
2239
|
+
"docs": {
|
2240
|
+
"text": "Remove registro do cache do PreLoader do dataunit.\nDeve ser usado quando existe um dataunit usando loader do application, mas o removeLoader est\u00E1 sendo sobrescrito.",
|
2241
|
+
"tags": []
|
2242
|
+
}
|
2243
|
+
},
|
2203
2244
|
"executeSearch": {
|
2204
2245
|
"complexType": {
|
2205
2246
|
"signature": "(searchArgument: ISearchArgument, fieldName: string, dataUnit: DataUnit) => Promise<Array<IOption> | IOption>",
|
@@ -2513,57 +2554,6 @@ export class SnkApplication {
|
|
2513
2554
|
}];
|
2514
2555
|
}
|
2515
2556
|
}
|
2516
|
-
class RequestListenerLoadingBar {
|
2517
|
-
constructor() {
|
2518
|
-
this._debounceTime = 1000;
|
2519
|
-
this._ignoredNameTypes = ["totals"];
|
2520
|
-
this._countRequest = 0;
|
2521
|
-
}
|
2522
|
-
onRequestStart(param) {
|
2523
|
-
if (this.isIgnoreLoadingOnRequest(param)) {
|
2524
|
-
return;
|
2525
|
-
}
|
2526
|
-
this._countRequest++;
|
2527
|
-
this.loadingBar.show();
|
2528
|
-
if (this._timerLoading) {
|
2529
|
-
clearTimeout(this._timerLoading);
|
2530
|
-
}
|
2531
|
-
}
|
2532
|
-
;
|
2533
|
-
onRequestEnd(param) {
|
2534
|
-
if (this.isIgnoreLoadingOnRequest(param)) {
|
2535
|
-
return;
|
2536
|
-
}
|
2537
|
-
this._countRequest--;
|
2538
|
-
this._timerLoading = setTimeout(() => {
|
2539
|
-
if (this._countRequest <= 0) {
|
2540
|
-
this.loadingBar.hide();
|
2541
|
-
}
|
2542
|
-
}, this._debounceTime);
|
2543
|
-
}
|
2544
|
-
;
|
2545
|
-
isIgnoreLoadingOnRequest(param) {
|
2546
|
-
if (param == undefined) {
|
2547
|
-
return false;
|
2548
|
-
}
|
2549
|
-
if (param.url.includes("quietMode=true")) {
|
2550
|
-
return true;
|
2551
|
-
}
|
2552
|
-
if (param.requestBody == undefined) {
|
2553
|
-
return false;
|
2554
|
-
}
|
2555
|
-
if (param.requestBody.length == 1) {
|
2556
|
-
const { name } = param.requestBody[0].variables;
|
2557
|
-
if (name) {
|
2558
|
-
const nameParts = name.split(":");
|
2559
|
-
const nameType = nameParts[0];
|
2560
|
-
return this._ignoredNameTypes.indexOf(nameType) >= 0;
|
2561
|
-
}
|
2562
|
-
}
|
2563
|
-
return false;
|
2564
|
-
}
|
2565
|
-
;
|
2566
|
-
}
|
2567
2557
|
class PendingPromise {
|
2568
2558
|
constructor(resolve, reject) {
|
2569
2559
|
this.resolve = resolve;
|
@@ -46,11 +46,20 @@ export class SnkAttach {
|
|
46
46
|
this.loadAttachmentDataUnit();
|
47
47
|
}
|
48
48
|
if (oldRegisterKey !== newRegisterKey) {
|
49
|
+
if (this._currentFetcher instanceof AnexoSistemaFetcher) {
|
50
|
+
this._currentFetcher.registerKey = newRegisterKey;
|
51
|
+
}
|
49
52
|
await ((_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.loadData());
|
50
53
|
}
|
51
54
|
}
|
55
|
+
getAnexoSistemaFetcherInstance() {
|
56
|
+
var _a;
|
57
|
+
const anexoSistemaFetcher = new AnexoSistemaFetcher(this.entityName, (_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.name);
|
58
|
+
anexoSistemaFetcher.registerKey = this.registerKey;
|
59
|
+
return anexoSistemaFetcher;
|
60
|
+
}
|
52
61
|
async initAttach() {
|
53
|
-
var _a, _b, _c, _d, _e
|
62
|
+
var _a, _b, _c, _d, _e;
|
54
63
|
if (!this.fetcherType && !this.registerKey)
|
55
64
|
return;
|
56
65
|
if (!this.fetcherType) {
|
@@ -58,18 +67,18 @@ export class SnkAttach {
|
|
58
67
|
}
|
59
68
|
this.returnToGridMode();
|
60
69
|
if (this.fetcherType === "AnexoSistema") {
|
61
|
-
this._currentFetcher =
|
62
|
-
(
|
63
|
-
await ((
|
70
|
+
this._currentFetcher = this.getAnexoSistemaFetcherInstance();
|
71
|
+
(_a = this._currentDataUnitBuilder) === null || _a === void 0 ? void 0 : _a.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
|
72
|
+
await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadData());
|
64
73
|
return;
|
65
74
|
}
|
66
75
|
if (this.fetcherType === "Attach") {
|
67
|
-
const hasMoreOneItem = ((
|
76
|
+
const hasMoreOneItem = ((_c = this.registerKey) === null || _c === void 0 ? void 0 : _c.split("_").length) > 1;
|
68
77
|
if (hasMoreOneItem)
|
69
78
|
return;
|
70
79
|
}
|
71
|
-
await ((
|
72
|
-
await ((
|
80
|
+
await ((_d = this._currentDataUnit) === null || _d === void 0 ? void 0 : _d.loadMetadata());
|
81
|
+
await ((_e = this._currentDataUnit) === null || _e === void 0 ? void 0 : _e.loadData(undefined, undefined, true, this.registerKey));
|
73
82
|
}
|
74
83
|
/**
|
75
84
|
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
@@ -128,11 +137,11 @@ export class SnkAttach {
|
|
128
137
|
}
|
129
138
|
}
|
130
139
|
async loadAnexoSistema() {
|
131
|
-
var _a, _b
|
140
|
+
var _a, _b;
|
132
141
|
this._currentDataUnit = new DataUnitFetcher().getDataUnit(RESOURCE_ID, DATA_UNIT_NAME);
|
133
|
-
this._currentFetcher =
|
142
|
+
this._currentFetcher = this.getAnexoSistemaFetcherInstance();
|
134
143
|
if (!this._currentDataUnit.metadata) {
|
135
|
-
await ((
|
144
|
+
await ((_a = this._currentDataUnit) === null || _a === void 0 ? void 0 : _a.loadMetadata());
|
136
145
|
this.crudConfig = Object.assign({}, anexoSistemaCrudConfig);
|
137
146
|
}
|
138
147
|
this.initDataUnitLoaders();
|
@@ -142,7 +151,7 @@ export class SnkAttach {
|
|
142
151
|
this._currentDataUnit.addInterceptor({
|
143
152
|
interceptAction: (action) => this._currentDataUnitBuilder.getInterceptions(this._currentDataUnit, action, this._crudElement)
|
144
153
|
});
|
145
|
-
await ((
|
154
|
+
await ((_b = this._currentDataUnit) === null || _b === void 0 ? void 0 : _b.loadData());
|
146
155
|
this.disableEditFieldsNotInForm();
|
147
156
|
}
|
148
157
|
async loadAttach() {
|
@@ -168,16 +177,16 @@ export class SnkAttach {
|
|
168
177
|
}
|
169
178
|
}
|
170
179
|
initDataUnitLoaders() {
|
171
|
-
var _a, _b
|
180
|
+
var _a, _b;
|
172
181
|
if (this.fetcherType === "AnexoSistema") {
|
173
|
-
this._currentFetcher =
|
182
|
+
this._currentFetcher = this.getAnexoSistemaFetcherInstance();
|
174
183
|
this._currentDataUnitBuilder = new AnexoSistemaDataUnitFactory(this.entityName, this.getMessage.bind(this));
|
175
|
-
(
|
184
|
+
(_a = this._currentDataUnitBuilder) === null || _a === void 0 ? void 0 : _a.initLoaders(this._currentDataUnit, this._currentFetcher, this.returnToGridMode.bind(this));
|
176
185
|
}
|
177
186
|
if (this.fetcherType === "Attach") {
|
178
187
|
this._currentFetcher = new AttachFetcher();
|
179
188
|
this._currentDataUnitBuilder = new AttachFetcherDataUnitFactory(this.getMessage.bind(this));
|
180
|
-
(
|
189
|
+
(_b = this._currentDataUnitBuilder) === null || _b === void 0 ? void 0 : _b.initLoaders(this._currentDataUnit, this._currentFetcher, async () => {
|
181
190
|
this.returnToGridMode();
|
182
191
|
await this._currentDataUnit.loadData(undefined, undefined, true, this.registerKey);
|
183
192
|
});
|
@@ -221,7 +230,7 @@ export class SnkAttach {
|
|
221
230
|
var _a, _b;
|
222
231
|
if (!this._currentDataUnit)
|
223
232
|
return null;
|
224
|
-
return (h("main", { class: "snk-attach__main" }, h("header", { class: "snk-attach__header" }, h("snk-simple-bar", { onExit: this.handleBack, messagesBuilder: this.messagesBuilder }, h("div", { slot: "rightSlot" }, h("ez-button", { class: "ez-button--primary", label: this.getMessage("snkAttach.finish"), onClick: this.handleFinish })))), h("div", { class: "snk-attach__crud-section ez-size-height--full ez-size-width--full ez-flex ez-flex--column" }, h("div", { class: "ez-box__container" }, h("snk-simple-crud", { ref: (el) => this._crudElement = el, dataUnit: this._currentDataUnit, taskbarManager: buildTaskBarManager(), gridConfig: (_a = this.crudConfig) === null || _a === void 0 ? void 0 : _a.grid, formConfig: (_b = this.crudConfig) === null || _b === void 0 ? void 0 : _b.form, useCancelConfirm: false, onActionClick: this.handleTaskbarClick, messagesBuilder: this.messagesBuilder, onDataStateChange: this.handleOnDataStateChange.bind(this) }, h("div", { slot: "snkSimpleCrudHeader" }, h("div", { class: "ez-flex ez-flex--column" }, h("span", { class: "ez-title--primary ez-text ez-text--large ez-text--bold ez-padding-bottom--medium" }, this.getMessage("snkAttach.title")), h("span", { class: "ez-text ez-text--medium ez-text--secondary" }, this.getMessage("snkAttach.description")))))))));
|
233
|
+
return (h("main", { class: "snk-attach__main" }, h("header", { class: "snk-attach__header" }, h("snk-simple-bar", { onExit: this.handleBack, messagesBuilder: this.messagesBuilder }, h("div", { slot: "rightSlot" }, h("ez-button", { class: "ez-button--primary", label: this.getMessage("snkAttach.finish"), onClick: this.handleFinish })))), h("div", { class: "snk-attach__crud-section ez-size-height--full ez-size-width--full ez-flex ez-flex--column" }, h("div", { class: "ez-box__container" }, h("snk-simple-crud", { ref: (el) => this._crudElement = el, dataUnit: this._currentDataUnit, taskbarManager: buildTaskBarManager(), gridConfig: (_a = this.crudConfig) === null || _a === void 0 ? void 0 : _a.grid, formConfig: (_b = this.crudConfig) === null || _b === void 0 ? void 0 : _b.form, useCancelConfirm: false, onActionClick: this.handleTaskbarClick, messagesBuilder: this.messagesBuilder, onDataStateChange: this.handleOnDataStateChange.bind(this) }, h("div", { slot: "snkSimpleCrudHeader" }, h("div", { class: "ez-flex ez-flex--column" }, h("span", { class: "ez-title--primary ez-text ez-text--large ez-text--bold ez-padding-bottom--medium" }, this.getMessage("snkAttach.title")), h("span", { class: "ez-text ez-text--medium ez-text--secondary ez-padding-bottom--medium" }, this.getMessage("snkAttach.description")))))))));
|
225
234
|
}
|
226
235
|
static get is() { return "snk-attach"; }
|
227
236
|
static get encapsulation() { return "scoped"; }
|
@@ -3,7 +3,7 @@ import { SaveErrorsEnum } from '../../../../../lib/http/data-fetcher/fetchers/At
|
|
3
3
|
import { AutorizationType } from '../../../../../lib/http/data-fetcher/fetchers/auth-fetcher';
|
4
4
|
import { attachFetcherMetadataBuilder } from '../../builder/attach-crud-config.builder';
|
5
5
|
import { VIEW_MODE } from '../../../../../lib/utils/constants';
|
6
|
-
import {
|
6
|
+
import { buildLoadDataResponse } from '../../../../../lib/dataUnit/dataUnitInMemoryUtils';
|
7
7
|
const SERVICE_LOAD = "Attach.load";
|
8
8
|
export class AttachFetcherDataUnitFactory {
|
9
9
|
constructor(getMessage) {
|
@@ -49,9 +49,7 @@ export class AttachFetcherDataUnitFactory {
|
|
49
49
|
});
|
50
50
|
this._records = records;
|
51
51
|
}
|
52
|
-
|
53
|
-
records = applySorting(records, dataUnit, request.sort);
|
54
|
-
return Promise.resolve({ records, paginationInfo: buildPaginationInfo(records, request.offset, request.limit) });
|
52
|
+
return buildLoadDataResponse(this._records, dataUnit, request);
|
55
53
|
}
|
56
54
|
saveLoader(changes, fetcher) {
|
57
55
|
return new Promise((resolve) => {
|
@@ -39,6 +39,11 @@ export class SnkCrud {
|
|
39
39
|
this.disablePersonalizedFilter = undefined;
|
40
40
|
this.autoLoad = undefined;
|
41
41
|
this.autoFocus = true;
|
42
|
+
this.enableGridInsert = false;
|
43
|
+
this.domainMessagesBuilder = undefined;
|
44
|
+
this.ignoreReadOnlyFormFields = undefined;
|
45
|
+
this.enableLockManger = false;
|
46
|
+
this.setCustomFormTitle = undefined;
|
42
47
|
this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
|
43
48
|
}
|
44
49
|
/**
|
@@ -147,6 +152,7 @@ export class SnkCrud {
|
|
147
152
|
else if (viewMode === VIEW_MODE.FORM) {
|
148
153
|
this._guidesViewer.setFocus();
|
149
154
|
}
|
155
|
+
this.viewModeChanged.emit(viewMode);
|
150
156
|
}
|
151
157
|
openConfig(viewMode) {
|
152
158
|
this._snkConfigurator.close();
|
@@ -162,6 +168,8 @@ export class SnkCrud {
|
|
162
168
|
ElementIDUtils.addIDInfo(this._element, null, dataInfo);
|
163
169
|
}
|
164
170
|
insertionModeHandler() {
|
171
|
+
if (this.enableGridInsert)
|
172
|
+
return;
|
165
173
|
this.gridToForm();
|
166
174
|
}
|
167
175
|
cancelHandler() {
|
@@ -210,6 +218,7 @@ export class SnkCrud {
|
|
210
218
|
this._snkDataUnit = parent;
|
211
219
|
this._snkDataUnit.addEventListener("insertionMode", () => this.insertionModeHandler());
|
212
220
|
this._snkDataUnit.addEventListener("cancelEdition", () => this.cancelHandler());
|
221
|
+
this._snkDataUnit.domainMessagesBuilder = this.domainMessagesBuilder;
|
213
222
|
this._dataUnit = this._snkDataUnit.dataUnit;
|
214
223
|
this._dataState = this._snkDataUnit.dataState;
|
215
224
|
if (!this._dataUnit) {
|
@@ -275,11 +284,16 @@ export class SnkCrud {
|
|
275
284
|
if (!isDocumentBody)
|
276
285
|
element.focus();
|
277
286
|
}
|
287
|
+
async function handleAddRecord() {
|
288
|
+
if (!dataUnit.hasNewRecord()) {
|
289
|
+
dataUnit.addRecord();
|
290
|
+
}
|
291
|
+
}
|
278
292
|
keyboardManager
|
279
293
|
.bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade.", element: this._element })
|
280
294
|
.bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
|
281
295
|
.bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
|
282
|
-
.bind("F8",
|
296
|
+
.bind("F8", handleAddRecord.bind(this), { description: "Adiciona um novo registro.", element: this._element })
|
283
297
|
.bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
|
284
298
|
.bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
|
285
299
|
.bind("ctrl + .", () => {
|
@@ -375,8 +389,8 @@ export class SnkCrud {
|
|
375
389
|
if (this._resourceID == undefined) {
|
376
390
|
return;
|
377
391
|
}
|
378
|
-
this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
|
379
|
-
return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
|
392
|
+
this._snkDataUnit.ignoreSaveMessage = (this._currentViewMode === VIEW_MODE.GRID && !this.enableGridInsert);
|
393
|
+
return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableLockManger: this.enableLockManger }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName, enableGridInsert: this.enableGridInsert, getCustomTitle: this.setCustomFormTitle, ignoreReadOnlyFormFields: this.ignoreReadOnlyFormFields }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
|
380
394
|
}
|
381
395
|
static get is() { return "snk-crud"; }
|
382
396
|
static get encapsulation() { return "scoped"; }
|
@@ -732,6 +746,91 @@ export class SnkCrud {
|
|
732
746
|
"attribute": "auto-focus",
|
733
747
|
"reflect": false,
|
734
748
|
"defaultValue": "true"
|
749
|
+
},
|
750
|
+
"enableGridInsert": {
|
751
|
+
"type": "boolean",
|
752
|
+
"mutable": false,
|
753
|
+
"complexType": {
|
754
|
+
"original": "boolean",
|
755
|
+
"resolved": "boolean",
|
756
|
+
"references": {}
|
757
|
+
},
|
758
|
+
"required": false,
|
759
|
+
"optional": true,
|
760
|
+
"docs": {
|
761
|
+
"tags": [],
|
762
|
+
"text": "Ativa inser\u00E7\u00E3o de registros no modo grade."
|
763
|
+
},
|
764
|
+
"attribute": "enable-grid-insert",
|
765
|
+
"reflect": false,
|
766
|
+
"defaultValue": "false"
|
767
|
+
},
|
768
|
+
"domainMessagesBuilder": {
|
769
|
+
"type": "string",
|
770
|
+
"mutable": false,
|
771
|
+
"complexType": {
|
772
|
+
"original": "string",
|
773
|
+
"resolved": "string",
|
774
|
+
"references": {}
|
775
|
+
},
|
776
|
+
"required": false,
|
777
|
+
"optional": false,
|
778
|
+
"docs": {
|
779
|
+
"tags": [],
|
780
|
+
"text": "Define a chave customizada para sobrescrever as mensagens (N\u00E3o pegando pela entidade)"
|
781
|
+
},
|
782
|
+
"attribute": "domain-messages-builder",
|
783
|
+
"reflect": false
|
784
|
+
},
|
785
|
+
"ignoreReadOnlyFormFields": {
|
786
|
+
"type": "boolean",
|
787
|
+
"mutable": false,
|
788
|
+
"complexType": {
|
789
|
+
"original": "boolean",
|
790
|
+
"resolved": "boolean",
|
791
|
+
"references": {}
|
792
|
+
},
|
793
|
+
"required": false,
|
794
|
+
"optional": true,
|
795
|
+
"docs": {
|
796
|
+
"tags": [],
|
797
|
+
"text": "Ignora os campos \"somente leitura\" no modo de inser\u00E7\u00E3o."
|
798
|
+
},
|
799
|
+
"attribute": "ignore-read-only-form-fields",
|
800
|
+
"reflect": false
|
801
|
+
},
|
802
|
+
"enableLockManger": {
|
803
|
+
"type": "boolean",
|
804
|
+
"mutable": false,
|
805
|
+
"complexType": {
|
806
|
+
"original": "boolean",
|
807
|
+
"resolved": "boolean",
|
808
|
+
"references": {}
|
809
|
+
},
|
810
|
+
"required": false,
|
811
|
+
"optional": true,
|
812
|
+
"docs": {
|
813
|
+
"tags": [],
|
814
|
+
"text": "Ativa o gerenciamento de locks na grade."
|
815
|
+
},
|
816
|
+
"attribute": "enable-lock-manger",
|
817
|
+
"reflect": false,
|
818
|
+
"defaultValue": "false"
|
819
|
+
},
|
820
|
+
"setCustomFormTitle": {
|
821
|
+
"type": "unknown",
|
822
|
+
"mutable": false,
|
823
|
+
"complexType": {
|
824
|
+
"original": "() => string",
|
825
|
+
"resolved": "() => string",
|
826
|
+
"references": {}
|
827
|
+
},
|
828
|
+
"required": false,
|
829
|
+
"optional": false,
|
830
|
+
"docs": {
|
831
|
+
"tags": [],
|
832
|
+
"text": "Define uma fun\u00E7\u00E3o para configurar um t\u00EDtulo cusotmizado no modo formul\u00E1rio."
|
833
|
+
}
|
735
834
|
}
|
736
835
|
};
|
737
836
|
}
|
@@ -814,6 +913,26 @@ export class SnkCrud {
|
|
814
913
|
}
|
815
914
|
}
|
816
915
|
}
|
916
|
+
}, {
|
917
|
+
"method": "viewModeChanged",
|
918
|
+
"name": "viewModeChanged",
|
919
|
+
"bubbles": true,
|
920
|
+
"cancelable": true,
|
921
|
+
"composed": true,
|
922
|
+
"docs": {
|
923
|
+
"tags": [],
|
924
|
+
"text": ""
|
925
|
+
},
|
926
|
+
"complexType": {
|
927
|
+
"original": "VIEW_MODE",
|
928
|
+
"resolved": "VIEW_MODE.ATTACHMENT | VIEW_MODE.FORM | VIEW_MODE.GRID",
|
929
|
+
"references": {
|
930
|
+
"VIEW_MODE": {
|
931
|
+
"location": "import",
|
932
|
+
"path": "../../lib/utils/constants"
|
933
|
+
}
|
934
|
+
}
|
935
|
+
}
|
817
936
|
}];
|
818
937
|
}
|
819
938
|
static get methods() {
|
package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js
CHANGED
@@ -198,7 +198,7 @@ export class SnkDetailView {
|
|
198
198
|
this.emitSwitchEvent(VIEW_MODE.GRID);
|
199
199
|
evt.stopPropagation();
|
200
200
|
}
|
201
|
-
if (evt.detail === TaskbarElement.FORM_MODE) {
|
201
|
+
if (evt.detail === TaskbarElement.FORM_MODE || evt.detail === TaskbarElement.UPDATE) {
|
202
202
|
this.emitSwitchEvent(VIEW_MODE.FORM);
|
203
203
|
evt.stopPropagation();
|
204
204
|
}
|
@@ -222,7 +222,7 @@ export class SnkDetailView {
|
|
222
222
|
}
|
223
223
|
componentWillLoad() {
|
224
224
|
this._configName = `dynaform.${this.entityName}`;
|
225
|
-
this.formConfigManager = new SnkFormConfigManager(this._configName, this.resourceID, () => this.loadMetadata());
|
225
|
+
this.formConfigManager = new SnkFormConfigManager(this._configName, this.resourceID, () => this.loadMetadata(), this.dataUnit);
|
226
226
|
this.formConfigManager.loadConfig();
|
227
227
|
if (this.messagesBuilder == undefined) {
|
228
228
|
this.messagesBuilder = new SnkMessageBuilder(this.entityName);
|
@@ -2,9 +2,9 @@
|
|
2
2
|
/*@doc Define o espaçamento maior utilizado no componente.*/
|
3
3
|
--snk-guides-viewer--space-large: var(--space--large, 24px);
|
4
4
|
/*@doc Define o espaçamento médio utilizado no componente.*/
|
5
|
-
--snk-guides-viewer--space-
|
5
|
+
--snk-guides-viewer--space-small: var(--space--2xs, 8px);
|
6
6
|
/*@doc Define a altura mínima do cabeçalho do componente.*/
|
7
|
-
--snk-guides-viewer__header--min-height:
|
7
|
+
--snk-guides-viewer__header--min-height: 68px;
|
8
8
|
/*@doc Define a posição de z-index do cabeçalho do componente.*/
|
9
9
|
--snk-guides-viewer__header--z-index: var(--more-visible, 2);
|
10
10
|
/*@doc Define a cor de fundo do cabeçalho do componente.*/
|
@@ -51,10 +51,10 @@ snk-form-view {
|
|
51
51
|
padding-left: var(--snk-guides-viewer--space-large);
|
52
52
|
padding-right: var(--snk-guides-viewer--space-large);
|
53
53
|
padding-top: var(--snk-guides-viewer--space-large);
|
54
|
-
padding-bottom: var(--snk-guides-viewer--space-
|
54
|
+
padding-bottom: var(--snk-guides-viewer--space-small);
|
55
55
|
margin-left: calc(var(--snk-guides-viewer--space-large) * -1);
|
56
56
|
margin-right: calc(var(--snk-guides-viewer--space-large) * -1);
|
57
|
-
margin-bottom: var(--snk-guides-viewer--space-
|
57
|
+
margin-bottom: var(--snk-guides-viewer--space-small);
|
58
58
|
}
|
59
59
|
|
60
60
|
.snk-guides-viewer__header-breadcrumb{
|
@@ -81,8 +81,8 @@ snk-form-view {
|
|
81
81
|
position: sticky;
|
82
82
|
|
83
83
|
/*public*/
|
84
|
-
top: calc(var(--snk-guides-viewer__header--min-height) + var(--snk-guides-viewer--space-
|
85
|
-
height: calc(100vh - var(--snk-guides-viewer__header--min-height) - var(--snk-guides-viewer--space-large) - var(--snk-guides-viewer--space-
|
84
|
+
top: calc(var(--snk-guides-viewer__header--min-height) + var(--snk-guides-viewer--space-small));
|
85
|
+
height: calc(100vh - var(--snk-guides-viewer__header--min-height) - var(--snk-guides-viewer--space-large) - var(--snk-guides-viewer--space-small));
|
86
86
|
}
|
87
87
|
|
88
88
|
.snk-guides-viewer__guide-navigator[open] {
|