@sankhyalabs/sankhyablocks 0.0.0-bugfix-dev-KB-131882.2 → 0.0.0-bugfix-dev-KB-174860.0
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/LICENSE +4 -1
- package/dist/cjs/{ConfigStorage-d9d24844.js → ConfigStorage-156bfcac.js} +19 -2
- package/dist/cjs/ContinuousInsertUtils-1ae0c6ac.js +41 -0
- package/dist/cjs/{DataFetcher-3a8ea521.js → DataFetcher-d13b4637.js} +2803 -2
- package/dist/cjs/FormConfigHelper-c5f5473a.js +342 -0
- package/dist/cjs/{ISave-a66bb65e.js → ISave-55d9dcc3.js} +1 -1
- package/dist/cjs/{ImageUtils-5e3f406b.js → ImageUtils-d6139911.js} +5 -3
- package/dist/cjs/{PersonalizedFilterUtils-eccb267a.js → PersonalizedFilterUtils-263e4d24.js} +52 -5
- package/dist/cjs/{SnkFormConfigManager-c88cf1e9.js → SnkFormConfigManager-5cb9a39c.js} +2 -2
- package/dist/cjs/{SnkMultiSelectionListDataSource-f53b60c4.js → SnkMultiSelectionListDataSource-5c5badfc.js} +146 -74
- package/dist/cjs/{auth-fetcher-faa61f64.js → auth-fetcher-d1715459.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-6febd6c4.js → dataunit-fetcher-fae710c5.js} +68 -110
- package/dist/cjs/fields-layout.cjs.entry.js +1 -1
- package/dist/cjs/fields-selector.cjs.entry.js +1 -1
- package/dist/cjs/{filter-type.enum-2bb46d2a.js → filter-type.enum-b3b388af.js} +7 -0
- package/dist/cjs/{form-config-fetcher-72cf0e3d.js → form-config-fetcher-bbebdcb8.js} +41 -5
- package/dist/cjs/guides-configurator.cjs.entry.js +2 -2
- package/dist/cjs/index-1894343a.js +28 -40
- package/dist/cjs/{index-e3e39724.js → index-bc950921.js} +6 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/pesquisa-grid_2.cjs.entry.js +5 -6
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/{snk-actions-button_8.cjs.entry.js → snk-actions-button_9.cjs.entry.js} +151 -63
- package/dist/cjs/snk-application.cjs.entry.js +8 -9
- package/dist/cjs/snk-attach_11.cjs.entry.js +2958 -0
- package/dist/cjs/snk-configurator.cjs.entry.js +2 -0
- package/dist/cjs/snk-crud.cjs.entry.js +140 -99
- package/dist/cjs/snk-data-exporter.cjs.entry.js +61 -16
- package/dist/cjs/{snk-data-unit-94757628.js → snk-data-unit-32237a2d.js} +11 -11
- package/dist/cjs/snk-data-unit.cjs.entry.js +3 -4
- package/dist/cjs/snk-detail-view.cjs.entry.js +28 -20
- package/dist/cjs/snk-dynaform-config-header_5.cjs.entry.js +739 -0
- package/dist/cjs/snk-dynaform-detail-view_2.cjs.entry.js +961 -0
- package/dist/cjs/snk-dynaform-field-config_2.cjs.entry.js +327 -0
- package/dist/cjs/snk-dynaform-guides-view-2c7c6ce4.js +1094 -0
- package/dist/cjs/snk-dynaform-guides-view.cjs.entry.js +23 -0
- package/dist/cjs/snk-dynaform.cjs.entry.js +679 -0
- package/dist/cjs/snk-entity-search.cjs.entry.js +211 -0
- package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
- package/dist/cjs/{snk-expression-group_2.cjs.entry.js → snk-expression-group_4.cjs.entry.js} +421 -18
- package/dist/cjs/snk-filter-bar_4.cjs.entry.js +137 -121
- package/dist/cjs/snk-filter-search.cjs.entry.js +10 -0
- package/dist/cjs/snk-form-view.cjs.entry.js +1 -4
- package/dist/cjs/snk-form_2.cjs.entry.js +4 -5
- package/dist/cjs/snk-grid.cjs.entry.js +53 -21
- package/dist/cjs/{snk-guides-viewer-315f8580.js → snk-guides-viewer-67b9cca9.js} +38 -161
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +8 -17
- package/dist/cjs/snk-layout-form-config.cjs.entry.js +5 -6
- package/dist/cjs/snk-pesquisa.cjs.entry.js +5 -6
- package/dist/cjs/snk-taskbar.cjs.entry.js +182 -125
- package/dist/cjs/{sortable.esm-9a110bb7.js → sortable.esm-b87669ab.js} +76 -90
- package/dist/cjs/taskbar-elements-25f800b3.js +152 -0
- package/dist/cjs/taskbarUtils-99aaa01f.js +236 -0
- package/dist/collection/collection-manifest.json +19 -0
- package/dist/collection/components/snk-actions-button/actions/executor/launch-screen.executor.js +6 -3
- package/dist/collection/components/snk-actions-button/snk-actions-button.js +30 -6
- package/dist/collection/components/snk-attach/snk-attach.css +29 -7
- package/dist/collection/components/snk-attach/snk-attach.js +93 -18
- package/dist/collection/components/snk-configurator/snk-configurator.js +2 -0
- package/dist/collection/components/snk-crud/snk-crud.css +55 -0
- package/dist/collection/components/snk-crud/snk-crud.js +147 -94
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +4 -1
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +18 -7
- package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.css +17 -0
- package/dist/collection/components/snk-crud/subcomponents/snk-entity-search.js +330 -0
- package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +0 -3
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +22 -8
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +36 -152
- package/dist/collection/components/snk-crud/utils/taskbarUtils.js +163 -0
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/snk-exporter-email-sender.js +1 -1
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +2 -2
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +78 -23
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +28 -5
- package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +43 -2
- package/dist/collection/components/snk-dynaform/interfaces/PropsCustomEditor.js +1 -0
- package/dist/collection/components/snk-dynaform/interfaces/PropsCustomRender.js +1 -0
- package/dist/collection/components/snk-dynaform/snk-dynaform.css +69 -0
- package/dist/collection/components/snk-dynaform/snk-dynaform.js +1661 -0
- package/dist/collection/components/snk-dynaform/subcomponents/CardFormResizeObserver.js +26 -0
- package/dist/collection/components/snk-dynaform/subcomponents/GuideBuilder.js +51 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.css +182 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.js +1015 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.css +98 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.js +590 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.css +321 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.js +1587 -0
- package/dist/collection/components/snk-dynaform-form-config/FormConfigHelper.js +325 -0
- package/dist/collection/components/snk-dynaform-form-config/SnkFormConfigManager.js +219 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.css +17 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.js +236 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.css +41 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.js +170 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.css +22 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.js +408 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-item.css +88 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-item.js +209 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.css +167 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.js +655 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.css +42 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.js +171 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-form-config.css +66 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-form-config.js +557 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.css +80 -0
- package/dist/collection/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.js +326 -0
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +30 -0
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +9 -3
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.css +2 -2
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +24 -4
- package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +6 -1
- package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +8 -5
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +1 -6
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +148 -77
- package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.css +0 -1
- package/dist/collection/components/snk-grid/snk-grid.css +21 -5
- package/dist/collection/components/snk-grid/snk-grid.js +161 -7
- package/dist/collection/components/snk-grid-config/snk-grid-config.js +111 -44
- package/dist/collection/components/snk-image-input/snk-image-input.js +15 -3
- package/dist/collection/components/snk-image-input/utils/ImageUtils.js +5 -3
- package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +1 -1
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +8 -0
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +38 -2
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +51 -35
- package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +27 -1
- package/dist/collection/components/snk-taskbar/processor/simple-taskbar-processor.js +55 -0
- package/dist/collection/components/snk-taskbar/snk-taskbar.css +44 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +248 -132
- package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.css +12 -0
- package/dist/collection/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.js +19 -0
- package/dist/collection/lib/@types/index.js +6 -0
- package/dist/collection/lib/configs/ConfigStorage.js +5 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +1 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +51 -4
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +15 -104
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +22 -4
- package/dist/collection/lib/http/data-fetcher/fetchers/grid-config-fetcher.js +12 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/resource-fetcher.js +18 -0
- package/dist/collection/lib/message/resources/en-us/dataUnitDataLoaderHelper.msg.js +0 -13
- package/dist/collection/lib/message/resources/en-us/snk-crud.msg.js +12 -0
- package/dist/collection/lib/message/resources/es-es/dataUnitDataLoaderHelper.msg.js +0 -13
- package/dist/collection/lib/message/resources/es-es/snk-crud.msg.js +12 -0
- package/dist/collection/lib/message/resources/pt-br/dataUnitDataLoaderHelper.msg.js +0 -13
- package/dist/collection/lib/message/resources/pt-br/snk-crud.msg.js +12 -0
- package/dist/collection/lib/utils/CrudUtils.js +7 -4
- package/dist/components/ConfigStorage.js +17 -0
- package/dist/components/ContinuousInsertUtils.js +86 -28
- package/dist/components/ISave.js +6 -0
- package/dist/components/SnkMessageBuilder.js +36 -39
- package/dist/components/dataunit-fetcher.js +67 -109
- package/dist/components/form-config-fetcher.js +40 -4
- package/dist/components/guides-configurator2.js +1 -1
- package/dist/components/index.d.ts +14 -0
- package/dist/components/index.js +14 -0
- package/dist/components/snk-actions-button2.js +15 -9
- package/dist/components/snk-attach2.js +67 -26
- package/dist/components/snk-configurator2.js +2 -0
- package/dist/components/snk-crud.js +229 -175
- package/dist/components/snk-data-exporter2.js +56 -9
- package/dist/components/snk-detail-view2.js +174 -267
- package/dist/components/snk-dynaform-config-header.d.ts +11 -0
- package/dist/components/snk-dynaform-config-header.js +6 -0
- package/dist/components/snk-dynaform-config-header2.js +103 -0
- package/dist/components/snk-dynaform-configs-button.d.ts +11 -0
- package/dist/components/snk-dynaform-configs-button.js +6 -0
- package/dist/components/snk-dynaform-configs-button2.js +76 -0
- package/dist/components/snk-dynaform-detail-view.d.ts +11 -0
- package/dist/components/snk-dynaform-detail-view.js +6 -0
- package/dist/components/snk-dynaform-detail-view2.js +2213 -0
- package/dist/components/snk-dynaform-field-config.d.ts +11 -0
- package/dist/components/snk-dynaform-field-config.js +6 -0
- package/dist/components/snk-dynaform-field-config2.js +605 -0
- package/dist/components/snk-dynaform-field-item.d.ts +11 -0
- package/dist/components/snk-dynaform-field-item.js +6 -0
- package/dist/components/snk-dynaform-field-item2.js +96 -0
- package/dist/components/snk-dynaform-fields-layout.d.ts +11 -0
- package/dist/components/snk-dynaform-fields-layout.js +6 -0
- package/dist/components/snk-dynaform-fields-layout2.js +428 -0
- package/dist/components/snk-dynaform-fields-selector.d.ts +11 -0
- package/dist/components/snk-dynaform-fields-selector.js +6 -0
- package/dist/components/snk-dynaform-fields-selector2.js +104 -0
- package/dist/components/snk-dynaform-form-config.d.ts +11 -0
- package/dist/components/snk-dynaform-form-config.js +6 -0
- package/dist/components/snk-dynaform-form-config2.js +430 -0
- package/dist/components/snk-dynaform-form-view.d.ts +11 -0
- package/dist/components/snk-dynaform-form-view.js +6 -0
- package/dist/components/snk-dynaform-form-view2.js +272 -0
- package/dist/components/snk-dynaform-guides-configurator.d.ts +11 -0
- package/dist/components/snk-dynaform-guides-configurator.js +6 -0
- package/dist/components/snk-dynaform-guides-configurator2.js +173 -0
- package/dist/components/snk-dynaform-guides-view.d.ts +11 -0
- package/dist/components/snk-dynaform-guides-view.js +6 -0
- package/dist/components/snk-dynaform.d.ts +11 -0
- package/dist/components/snk-dynaform.js +1007 -0
- package/dist/components/snk-entity-search.d.ts +11 -0
- package/dist/components/snk-entity-search.js +6 -0
- package/dist/components/snk-entity-search2.js +231 -0
- package/dist/components/snk-exporter-email-sender2.js +1 -1
- package/dist/components/snk-filter-bar2.js +98 -79
- package/dist/components/snk-filter-detail2.js +9 -3
- package/dist/components/snk-filter-item2.js +5 -5
- package/dist/components/snk-filter-modal2.js +8 -5
- package/dist/components/snk-filter-search.js +12 -1
- package/dist/components/snk-form-view2.js +0 -3
- package/dist/components/snk-grid-config2.js +92 -44
- package/dist/components/snk-grid2.js +95 -50
- package/dist/components/snk-image-input2.js +20 -6
- package/dist/components/snk-personalized-filter2.js +1 -1
- package/dist/components/snk-simple-crud2.js +29 -23
- package/dist/components/snk-taskbar-skeleton.d.ts +11 -0
- package/dist/components/snk-taskbar-skeleton.js +6 -0
- package/dist/components/snk-taskbar-skeleton2.js +29 -0
- package/dist/components/snk-taskbar2.js +253 -174
- package/dist/components/sortable.esm.js +76 -90
- package/dist/components/taskbar-actions-button2.js +21 -2
- package/dist/components/taskbar-split-button2.js +10 -1
- package/dist/components/taskbarUtils.js +229 -0
- package/dist/esm/{ConfigStorage-d15d2014.js → ConfigStorage-0d1c0695.js} +19 -2
- package/dist/esm/ContinuousInsertUtils-bce77dc1.js +39 -0
- package/dist/esm/{DataFetcher-1dd7e8c0.js → DataFetcher-70de9419.js} +2803 -3
- package/dist/esm/FormConfigHelper-efc29480.js +328 -0
- package/dist/esm/{ISave-498c4831.js → ISave-f5704813.js} +1 -1
- package/dist/esm/{ImageUtils-8fc8d905.js → ImageUtils-efbea0e4.js} +5 -3
- package/dist/esm/{PersonalizedFilterUtils-d2439a9a.js → PersonalizedFilterUtils-45b5803c.js} +49 -2
- package/dist/esm/{SnkFormConfigManager-86befa68.js → SnkFormConfigManager-e7f05f79.js} +2 -2
- package/dist/esm/{SnkMultiSelectionListDataSource-6e9496f0.js → SnkMultiSelectionListDataSource-6ac291a9.js} +141 -69
- package/dist/esm/{auth-fetcher-69cbda8d.js → auth-fetcher-e34880e5.js} +1 -1
- package/dist/esm/{dataunit-fetcher-21c43ec7.js → dataunit-fetcher-d26e4a08.js} +68 -110
- package/dist/esm/fields-layout.entry.js +1 -1
- package/dist/esm/fields-selector.entry.js +1 -1
- package/dist/esm/{filter-type.enum-f6a8fe23.js → filter-type.enum-62b7fe88.js} +8 -1
- package/dist/esm/{form-config-fetcher-fcc7b62f.js → form-config-fetcher-98c42169.js} +41 -5
- package/dist/esm/guides-configurator.entry.js +2 -2
- package/dist/esm/index-04f73a26.js +28 -40
- package/dist/esm/{index-b40568ff.js → index-c6721886.js} +6 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-grid_2.entry.js +5 -6
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/{snk-actions-button_8.entry.js → snk-actions-button_9.entry.js} +152 -65
- package/dist/esm/snk-application.entry.js +7 -8
- package/dist/esm/snk-attach_11.entry.js +2944 -0
- package/dist/esm/snk-configurator.entry.js +2 -0
- package/dist/esm/snk-crud.entry.js +140 -99
- package/dist/esm/snk-data-exporter.entry.js +61 -16
- package/dist/esm/{snk-data-unit-3b06a0f3.js → snk-data-unit-ff57ac90.js} +2 -2
- package/dist/esm/snk-data-unit.entry.js +3 -4
- package/dist/esm/snk-detail-view.entry.js +26 -18
- package/dist/esm/snk-dynaform-config-header_5.entry.js +731 -0
- package/dist/esm/snk-dynaform-detail-view_2.entry.js +956 -0
- package/dist/esm/snk-dynaform-field-config_2.entry.js +322 -0
- package/dist/esm/snk-dynaform-guides-view-0dfbefc1.js +1091 -0
- package/dist/esm/snk-dynaform-guides-view.entry.js +15 -0
- package/dist/esm/snk-dynaform.entry.js +675 -0
- package/dist/esm/snk-entity-search.entry.js +207 -0
- package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
- package/dist/esm/{snk-expression-group_2.entry.js → snk-expression-group_4.entry.js} +405 -4
- package/dist/esm/snk-filter-bar_4.entry.js +112 -96
- package/dist/esm/snk-filter-search.entry.js +10 -0
- package/dist/esm/snk-form-view.entry.js +1 -4
- package/dist/esm/snk-form_2.entry.js +4 -5
- package/dist/esm/snk-grid.entry.js +50 -18
- package/dist/esm/{snk-guides-viewer-a4e31f63.js → snk-guides-viewer-31a0a23d.js} +39 -162
- package/dist/esm/snk-guides-viewer.entry.js +8 -17
- package/dist/esm/snk-layout-form-config.entry.js +5 -6
- package/dist/esm/snk-pesquisa.entry.js +5 -6
- package/dist/esm/snk-taskbar.entry.js +183 -126
- package/dist/esm/{sortable.esm-842f85a3.js → sortable.esm-bc277c12.js} +76 -90
- package/dist/esm/taskbar-elements-ba9d6889.js +149 -0
- package/dist/esm/taskbarUtils-cb9db0d9.js +230 -0
- package/dist/sankhyablocks/{p-32ad76cc.js → p-097d75b3.js} +2 -2
- package/dist/sankhyablocks/p-0dbd53d9.js +1 -0
- package/dist/sankhyablocks/p-12579574.entry.js +1 -0
- package/dist/sankhyablocks/p-1d31aec3.entry.js +1 -0
- package/dist/sankhyablocks/{p-2cc2526e.entry.js → p-1d7d5814.entry.js} +1 -1
- package/dist/sankhyablocks/p-24b059ee.entry.js +1 -0
- package/dist/sankhyablocks/p-250b273e.entry.js +1 -0
- package/dist/sankhyablocks/p-26f1919e.entry.js +1 -0
- package/dist/sankhyablocks/p-2a83f20e.entry.js +1 -0
- package/dist/sankhyablocks/p-2c4f7fdd.entry.js +1 -0
- package/dist/sankhyablocks/p-2ec98523.js +1 -0
- package/dist/sankhyablocks/p-449dfe55.entry.js +1 -0
- package/dist/sankhyablocks/p-46d7e2de.js +1 -0
- package/dist/sankhyablocks/p-4dd574d6.js +1 -0
- package/dist/sankhyablocks/p-541c72ec.entry.js +1 -0
- package/dist/sankhyablocks/p-58709cf9.js +1 -0
- package/dist/sankhyablocks/p-5aeae67f.js +1 -0
- package/dist/sankhyablocks/p-5d50f59a.entry.js +1 -0
- package/dist/sankhyablocks/p-5ef0e9a8.entry.js +1 -0
- package/dist/sankhyablocks/p-6d3bcabf.entry.js +1 -0
- package/dist/sankhyablocks/p-6f60df43.js +1 -0
- package/dist/sankhyablocks/p-846d8f79.entry.js +1 -0
- package/dist/sankhyablocks/{p-e30acdca.entry.js → p-855ccf64.entry.js} +1 -1
- package/dist/sankhyablocks/p-885262ce.entry.js +1 -0
- package/dist/sankhyablocks/p-8d1ef77a.js +60 -0
- package/dist/sankhyablocks/{p-9114e869.js → p-8d81c8d3.js} +2 -2
- package/dist/sankhyablocks/p-8f5dd87d.entry.js +1 -0
- package/dist/sankhyablocks/p-90037547.js +1 -0
- package/dist/sankhyablocks/{p-7150eacf.entry.js → p-9742ea0e.entry.js} +1 -1
- package/dist/sankhyablocks/p-9e02a785.js +1 -0
- package/dist/sankhyablocks/{p-6564180d.entry.js → p-9e7dc97d.entry.js} +1 -1
- package/dist/sankhyablocks/p-a25ab2ff.entry.js +1 -0
- package/dist/sankhyablocks/p-a696bbcd.entry.js +1 -0
- package/dist/sankhyablocks/{p-88b0797e.entry.js → p-a9012341.entry.js} +2 -2
- package/dist/sankhyablocks/p-abcb646d.js +1 -0
- package/dist/sankhyablocks/{p-4ff3b494.js → p-af673291.js} +1 -1
- package/dist/sankhyablocks/p-bd2a845c.js +1 -0
- package/dist/sankhyablocks/p-c4b34e2b.entry.js +1 -0
- package/dist/sankhyablocks/{p-7e9f8fa4.js → p-c9440c8a.js} +1 -1
- package/dist/sankhyablocks/p-ca3728c0.entry.js +1 -0
- package/dist/sankhyablocks/p-cbb8e351.js +7 -0
- package/dist/sankhyablocks/p-cd153f71.entry.js +1 -0
- package/dist/sankhyablocks/p-ce8ccd72.entry.js +1 -0
- package/dist/sankhyablocks/p-ddb160eb.entry.js +1 -0
- package/dist/sankhyablocks/p-e5a3711f.js +1 -0
- package/dist/sankhyablocks/{p-2b882835.entry.js → p-e737fd5a.entry.js} +1 -1
- package/dist/sankhyablocks/{p-362e6e8c.js → p-eac48627.js} +1 -1
- package/dist/sankhyablocks/p-ec7c87bb.js +28 -0
- package/dist/sankhyablocks/p-fb6e3c65.entry.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +4 -0
- package/dist/types/components/snk-attach/snk-attach.d.ts +22 -4
- package/dist/types/components/snk-crud/snk-crud.d.ts +28 -10
- package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +3 -2
- package/dist/types/components/snk-crud/subcomponents/snk-entity-search.d.ts +62 -0
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +4 -18
- package/dist/types/components/snk-crud/utils/taskbarUtils.d.ts +13 -0
- package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +8 -0
- package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +4 -0
- package/dist/types/components/snk-data-exporter/structure/ItemBuilder.d.ts +16 -0
- package/dist/types/components/snk-dynaform/interfaces/PropsCustomEditor.d.ts +4 -0
- package/dist/types/components/snk-dynaform/interfaces/PropsCustomRender.d.ts +4 -0
- package/dist/types/components/snk-dynaform/subcomponents/CardFormResizeObserver.d.ts +1 -0
- package/dist/types/components/snk-dynaform/subcomponents/GuideBuilder.d.ts +14 -0
- package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.d.ts +169 -0
- package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +108 -0
- package/dist/types/components/snk-dynaform-form-config/FormConfigHelper.d.ts +36 -0
- package/dist/types/components/snk-dynaform-form-config/SnkFormConfigManager.d.ts +35 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-config-header.d.ts +23 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-config-header/snk-dynaform-configs-button/snk-dynaform-configs-button.d.ts +19 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-field-item/snk-dynaform-field-config/snk-dynaform-field-config.d.ts +56 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-layout/snk-dynaform-fields-layout.d.ts +74 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-fields-selector/snk-dynaform-fields-selector.d.ts +21 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-form-config.d.ts +95 -0
- package/dist/types/components/snk-dynaform-form-config/snk-dynaform-guides-configurator/snk-dynaform-guides-configurator.d.ts +35 -0
- package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +1 -0
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +1 -1
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +5 -1
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +33 -16
- package/dist/types/components/snk-grid/snk-grid.d.ts +29 -1
- package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +7 -0
- package/dist/types/components/snk-image-input/snk-image-input.d.ts +1 -0
- package/dist/types/components/snk-image-input/utils/ImageUtils.d.ts +1 -1
- package/dist/types/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.d.ts +6 -0
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +29 -2
- package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +5 -0
- package/dist/types/components/snk-taskbar/processor/simple-taskbar-processor.d.ts +31 -0
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +32 -21
- package/dist/types/components/snk-taskbar/subcomponents/snk-taskbar-skeleton.d.ts +3 -0
- package/dist/types/components.d.ts +2503 -1188
- package/dist/types/lib/@types/index.d.ts +6 -0
- package/dist/types/lib/configs/ConfigStorage.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +3 -1
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +2 -0
- package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/grid-config-fetcher.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/resource-fetcher.d.ts +1 -0
- package/package.json +11 -8
- package/react/components.d.ts +14 -0
- package/react/components.js +14 -0
- package/react/components.js.map +1 -1
- package/dist/cjs/SnkMessageBuilder-d9558dba.js +0 -2809
- package/dist/cjs/default-filters-a09bf82b.js +0 -8
- package/dist/cjs/index-62760a9c.js +0 -49
- package/dist/cjs/index-8d94b7e0.js +0 -7
- package/dist/cjs/snk-attach.cjs.entry.js +0 -911
- package/dist/cjs/snk-default-filter.cjs.entry.js +0 -77
- package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +0 -61
- package/dist/cjs/snk-filter-detail.cjs.entry.js +0 -198
- package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +0 -408
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +0 -109
- package/dist/cjs/snk-image-input.cjs.entry.js +0 -148
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +0 -358
- package/dist/cjs/snk-simple-bar.cjs.entry.js +0 -45
- package/dist/cjs/snk-simple-crud.cjs.entry.js +0 -865
- package/dist/cjs/taskbar-elements-a94d4318.js +0 -133
- package/dist/cjs/taskbar-processor-2fba34a8.js +0 -53
- package/dist/esm/SnkMessageBuilder-c0bc4424.js +0 -2807
- package/dist/esm/default-filters-50105e43.js +0 -8
- package/dist/esm/index-620ac460.js +0 -7
- package/dist/esm/index-8acbae97.js +0 -49
- package/dist/esm/snk-attach.entry.js +0 -907
- package/dist/esm/snk-default-filter.entry.js +0 -73
- package/dist/esm/snk-filter-advanced-mode_2.entry.js +0 -56
- package/dist/esm/snk-filter-detail.entry.js +0 -194
- package/dist/esm/snk-filter-field-search_2.entry.js +0 -403
- package/dist/esm/snk-filter-modal-item.entry.js +0 -105
- package/dist/esm/snk-image-input.entry.js +0 -144
- package/dist/esm/snk-personalized-filter.entry.js +0 -354
- package/dist/esm/snk-simple-bar.entry.js +0 -41
- package/dist/esm/snk-simple-crud.entry.js +0 -861
- package/dist/esm/taskbar-elements-97541bdd.js +0 -130
- package/dist/esm/taskbar-processor-3436124c.js +0 -51
- package/dist/sankhyablocks/p-07619e85.entry.js +0 -1
- package/dist/sankhyablocks/p-0d15b109.entry.js +0 -1
- package/dist/sankhyablocks/p-0f3698af.js +0 -1
- package/dist/sankhyablocks/p-10cad767.entry.js +0 -1
- package/dist/sankhyablocks/p-17653b22.entry.js +0 -1
- package/dist/sankhyablocks/p-1a0caadb.js +0 -1
- package/dist/sankhyablocks/p-25540da8.js +0 -1
- package/dist/sankhyablocks/p-27d6590e.js +0 -1
- package/dist/sankhyablocks/p-27e0cd68.entry.js +0 -1
- package/dist/sankhyablocks/p-2a356340.entry.js +0 -1
- package/dist/sankhyablocks/p-438a225f.entry.js +0 -1
- package/dist/sankhyablocks/p-45a830d9.js +0 -1
- package/dist/sankhyablocks/p-48c580b9.entry.js +0 -1
- package/dist/sankhyablocks/p-4a8d0917.entry.js +0 -1
- package/dist/sankhyablocks/p-4cdfa0e4.entry.js +0 -1
- package/dist/sankhyablocks/p-4fe8380b.entry.js +0 -1
- package/dist/sankhyablocks/p-51833248.js +0 -7
- package/dist/sankhyablocks/p-68c1a093.js +0 -1
- package/dist/sankhyablocks/p-6a4b21dd.js +0 -1
- package/dist/sankhyablocks/p-72d62f22.js +0 -1
- package/dist/sankhyablocks/p-73b455e1.entry.js +0 -1
- package/dist/sankhyablocks/p-84345e7a.js +0 -1
- package/dist/sankhyablocks/p-8bb4e86b.entry.js +0 -1
- package/dist/sankhyablocks/p-9c1ff75e.entry.js +0 -1
- package/dist/sankhyablocks/p-a9839628.js +0 -26
- package/dist/sankhyablocks/p-b25777fa.entry.js +0 -1
- package/dist/sankhyablocks/p-b568c1d4.js +0 -1
- package/dist/sankhyablocks/p-b9970342.js +0 -60
- package/dist/sankhyablocks/p-bdf0077f.js +0 -1
- package/dist/sankhyablocks/p-c8043a53.entry.js +0 -1
- package/dist/sankhyablocks/p-c860552e.entry.js +0 -1
- package/dist/sankhyablocks/p-cc64239c.entry.js +0 -1
- package/dist/sankhyablocks/p-cd00a3d1.entry.js +0 -1
- package/dist/sankhyablocks/p-e0a6818c.js +0 -1
- package/dist/sankhyablocks/p-e0e3914e.entry.js +0 -1
- package/dist/sankhyablocks/p-ebce5394.entry.js +0 -1
- package/dist/sankhyablocks/p-ef9343c3.entry.js +0 -1
- package/dist/sankhyablocks/p-f1110b78.entry.js +0 -1
- package/dist/sankhyablocks/p-f1bf7248.entry.js +0 -1
- package/dist/sankhyablocks/p-f1d541e9.entry.js +0 -1
- package/dist/sankhyablocks/p-f2472d12.entry.js +0 -1
- package/dist/sankhyablocks/p-f4184ce7.js +0 -1
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
import { Action as DUAction,
|
|
2
|
-
import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
|
|
1
|
+
import { Action as DUAction, KeyboardManager, ObjectUtils } from '@sankhyalabs/core';
|
|
3
2
|
import { buildFieldSearch, SHORTCUT_SEARCH_FIELD } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
4
3
|
import { buildFormMetadata, FormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
|
|
5
4
|
import { Fragment, h } from '@stencil/core';
|
|
6
|
-
import { PresentationMode } from '../../../lib';
|
|
7
5
|
import { VIEW_MODE } from '../../../lib/utils/constants';
|
|
8
6
|
import { SnkFormConfigManager } from '../../snk-form-config/SnkFormConfigManager';
|
|
9
7
|
import { TaskbarElement } from '../../snk-taskbar/elements/taskbar-elements';
|
|
10
|
-
import TaskbarProcessor from '../../snk-taskbar/processor/taskbar-processor';
|
|
11
8
|
const FORM_NAME_PREFIX = "__FORM:";
|
|
12
9
|
export class SnkGuidesViewer {
|
|
13
10
|
constructor() {
|
|
@@ -101,7 +98,7 @@ export class SnkGuidesViewer {
|
|
|
101
98
|
*/
|
|
102
99
|
async setFocus() {
|
|
103
100
|
var _a;
|
|
104
|
-
(_a = this._container) === null || _a === void 0 ? void 0 : _a.focus();
|
|
101
|
+
(_a = this._container) === null || _a === void 0 ? void 0 : _a.focus({ preventScroll: true });
|
|
105
102
|
}
|
|
106
103
|
/**
|
|
107
104
|
* Recarrega os guias baseada nos metadados atuais.
|
|
@@ -204,63 +201,6 @@ export class SnkGuidesViewer {
|
|
|
204
201
|
});
|
|
205
202
|
}
|
|
206
203
|
}
|
|
207
|
-
getTaskBarId() {
|
|
208
|
-
var _a;
|
|
209
|
-
if ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) {
|
|
210
|
-
return TASKBAR_ID.FINISH_EDITION;
|
|
211
|
-
}
|
|
212
|
-
if (this.dataUnit.isMultipleEdition) {
|
|
213
|
-
return TASKBAR_ID.MUTIPLE_EDITION;
|
|
214
|
-
}
|
|
215
|
-
return TASKBAR_ID.REGULAR;
|
|
216
|
-
}
|
|
217
|
-
loadTaskbarProcessor() {
|
|
218
|
-
const taskbarIDs = {};
|
|
219
|
-
taskbarIDs[TASKBAR_ID.REGULAR] = this.buildBtnsRegularMode();
|
|
220
|
-
taskbarIDs[TASKBAR_ID.FINISH_EDITION] = [TaskbarElement.CANCEL, TaskbarElement.SAVE, this.handleAddGridMode()];
|
|
221
|
-
taskbarIDs[TASKBAR_ID.MUTIPLE_EDITION] = [TaskbarElement.CANCEL];
|
|
222
|
-
this._taskbarProcessor = new TaskbarProcessor(taskbarIDs);
|
|
223
|
-
this._taskbarProcessor.process(this.getTaskBarId(), this.taskbarManager, this.dataState, this.buildDisabledButtons(), this.buildInvisibleButtons());
|
|
224
|
-
}
|
|
225
|
-
buildBtnsRegularMode() {
|
|
226
|
-
var _a, _b;
|
|
227
|
-
const btnsRegularMode = [
|
|
228
|
-
TaskbarElement.ATTACH, TaskbarElement.CLONE, TaskbarElement.REMOVE, TaskbarElement.MORE_OPTIONS,
|
|
229
|
-
TaskbarElement.ACTIONS_BUTTON, TaskbarElement.DIVIDER, TaskbarElement.GRID_MODE, TaskbarElement.CONFIGURATOR,
|
|
230
|
-
];
|
|
231
|
-
if (((_b = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.selectionInfo) === null || _b === void 0 ? void 0 : _b.length) <= 1) {
|
|
232
|
-
btnsRegularMode.unshift(TaskbarElement.PREVIOUS, TaskbarElement.NEXT, TaskbarElement.DIVIDER);
|
|
233
|
-
}
|
|
234
|
-
if (this.presentationMode == PresentationMode.SECONDARY) {
|
|
235
|
-
btnsRegularMode.unshift(TaskbarElement.INSERT);
|
|
236
|
-
}
|
|
237
|
-
else {
|
|
238
|
-
btnsRegularMode.push(TaskbarElement.INSERT);
|
|
239
|
-
}
|
|
240
|
-
return btnsRegularMode;
|
|
241
|
-
}
|
|
242
|
-
buildDisabledButtons() {
|
|
243
|
-
var _a, _b, _c, _d, _e, _f;
|
|
244
|
-
const disabledButtons = [];
|
|
245
|
-
if (!((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.hasPrevious))
|
|
246
|
-
disabledButtons.push(TaskbarElement.PREVIOUS);
|
|
247
|
-
if (!((_b = this.dataState) === null || _b === void 0 ? void 0 : _b.hasNext))
|
|
248
|
-
disabledButtons.push(TaskbarElement.NEXT);
|
|
249
|
-
if (((_d = (_c = this.dataState) === null || _c === void 0 ? void 0 : _c.selectionInfo) === null || _d === void 0 ? void 0 : _d.length) > 1)
|
|
250
|
-
disabledButtons.push(TaskbarElement.CLONE);
|
|
251
|
-
if ((_f = (_e = this.dataState) === null || _e === void 0 ? void 0 : _e.selectionInfo) === null || _f === void 0 ? void 0 : _f.isAllRecords())
|
|
252
|
-
disabledButtons.push(TaskbarElement.REMOVE);
|
|
253
|
-
return disabledButtons;
|
|
254
|
-
}
|
|
255
|
-
handleAddGridMode() {
|
|
256
|
-
return this.enableGridInsert ? TaskbarElement.GRID_MODE : "";
|
|
257
|
-
}
|
|
258
|
-
buildInvisibleButtons() {
|
|
259
|
-
const invisibleButtons = [];
|
|
260
|
-
if (this.dataState && this.dataState.selectionInfo.mode === SelectionMode.ALL_RECORDS)
|
|
261
|
-
invisibleButtons.push(TaskbarElement.ACTIONS_BUTTON);
|
|
262
|
-
return invisibleButtons;
|
|
263
|
-
}
|
|
264
204
|
static updateContentCard(formName, cardConfig, propertyChanged, configManager) {
|
|
265
205
|
return configManager.saveCardState(formName, cardConfig, propertyChanged);
|
|
266
206
|
}
|
|
@@ -328,7 +268,7 @@ export class SnkGuidesViewer {
|
|
|
328
268
|
if (!sheet)
|
|
329
269
|
return;
|
|
330
270
|
const cardConfig = (_b = (_a = this.masterFormConfig) === null || _a === void 0 ? void 0 : _a.cardsState) === null || _b === void 0 ? void 0 : _b.get(cardId);
|
|
331
|
-
return (h("snk-form-view", { ref: ref => this._mainForm = ref, fixed: cardConfig === null || cardConfig === void 0 ? void 0 : cardConfig.fixed, summaryFields: (_d = (_c = this.masterFormConfig) === null || _c === void 0 ? void 0 : _c.summary) === null || _d === void 0 ? void 0 : _d.get(cardId), name: cardId, label: sheet.label, fields: sheet.fields, dataUnit: this.dataUnit, formMetadata: this._masterFormMetadata, recordsValidator: this.recordsValidator, fieldToFocus: this._fieldToGetFocus, key: cardId, onSnkRequestClearFieldToFocus: _ => this.clearFieldToFocusHandler(), customEditors: this._customEditors, fieldsProps: this._fieldsProps, fieldSearch: this._fieldSearch, entityPath: this.entityPath }
|
|
271
|
+
return (h("snk-form-view", { ref: ref => this._mainForm = ref, fixed: cardConfig === null || cardConfig === void 0 ? void 0 : cardConfig.fixed, summaryFields: (_d = (_c = this.masterFormConfig) === null || _c === void 0 ? void 0 : _c.summary) === null || _d === void 0 ? void 0 : _d.get(cardId), name: cardId, label: sheet.label, fields: sheet.fields, dataUnit: this.dataUnit, formMetadata: this._masterFormMetadata, recordsValidator: this.recordsValidator, fieldToFocus: this._fieldToGetFocus, key: cardId, onSnkRequestClearFieldToFocus: _ => this.clearFieldToFocusHandler(), customEditors: this._customEditors, fieldsProps: this._fieldsProps, fieldSearch: this._fieldSearch, entityPath: this.entityPath }));
|
|
332
272
|
}
|
|
333
273
|
isDetailGuide(childEntityName, levels) {
|
|
334
274
|
return childEntityName || levels.length > 0;
|
|
@@ -351,12 +291,6 @@ export class SnkGuidesViewer {
|
|
|
351
291
|
var _a;
|
|
352
292
|
return (_a = this.customGuidesConfig) === null || _a === void 0 ? void 0 : _a.map(g => g.id).includes(guideId);
|
|
353
293
|
}
|
|
354
|
-
onBreadcrumbClickHandler(item) {
|
|
355
|
-
if ((item === null || item === void 0 ? void 0 : item.id) == undefined) {
|
|
356
|
-
return;
|
|
357
|
-
}
|
|
358
|
-
this._guideNavigator.selectGuide(item.id);
|
|
359
|
-
}
|
|
360
294
|
updateSelectedGuideHandler(currentItem) {
|
|
361
295
|
this._guideHasChanged = this.selectedGuide != currentItem;
|
|
362
296
|
this.selectedGuide = currentItem;
|
|
@@ -365,10 +299,6 @@ export class SnkGuidesViewer {
|
|
|
365
299
|
});
|
|
366
300
|
this.resetGuideBadge(currentItem);
|
|
367
301
|
}
|
|
368
|
-
changeGuideHandler(guideName) {
|
|
369
|
-
var _a;
|
|
370
|
-
(_a = this._guideNavigator) === null || _a === void 0 ? void 0 : _a.selectGuide(guideName);
|
|
371
|
-
}
|
|
372
302
|
clearFieldToFocusHandler() {
|
|
373
303
|
this._fieldToGetFocus = undefined;
|
|
374
304
|
}
|
|
@@ -438,59 +368,9 @@ export class SnkGuidesViewer {
|
|
|
438
368
|
if (!this._guideHasChanged) {
|
|
439
369
|
return;
|
|
440
370
|
}
|
|
441
|
-
|
|
442
|
-
this._currentDetail.showUp();
|
|
443
|
-
}
|
|
444
|
-
else {
|
|
445
|
-
if (this._mainForm) {
|
|
446
|
-
this._mainForm.showUp();
|
|
447
|
-
}
|
|
448
|
-
}
|
|
371
|
+
window.scrollTo(0, 0);
|
|
449
372
|
this._guideHasChanged = false;
|
|
450
373
|
}
|
|
451
|
-
getFieldsSearch(item) {
|
|
452
|
-
if (this._fieldSearch == undefined || this._hasToCreateFieldSearch) {
|
|
453
|
-
this._hasToCreateFieldSearch = false;
|
|
454
|
-
this._fieldSearch = buildFieldSearch(item, ({ argument }) => this.fieldsOptionLoader(argument), (option) => this.onSelectField(option));
|
|
455
|
-
}
|
|
456
|
-
return this._fieldSearch;
|
|
457
|
-
}
|
|
458
|
-
fieldsOptionLoader(argument) {
|
|
459
|
-
return Promise.resolve(this._configManager.getFieldsList(argument)
|
|
460
|
-
.map(field => ({ value: field.name, label: field.label })));
|
|
461
|
-
}
|
|
462
|
-
onSelectField(option) {
|
|
463
|
-
if (option == undefined) {
|
|
464
|
-
return;
|
|
465
|
-
}
|
|
466
|
-
this._fieldToGetFocus = option.value;
|
|
467
|
-
const fieldGuideName = this.getGuideName(option.value);
|
|
468
|
-
if (fieldGuideName !== this.selectedGuide.id) {
|
|
469
|
-
this.changeGuideHandler(fieldGuideName);
|
|
470
|
-
}
|
|
471
|
-
}
|
|
472
|
-
getActionsList() {
|
|
473
|
-
var _a;
|
|
474
|
-
const hardList = [];
|
|
475
|
-
if (this.taskbarManager != undefined && this.taskbarManager.getMoreOptions != undefined) {
|
|
476
|
-
return hardList.concat((_a = this.taskbarManager.getMoreOptions(this.getTaskBarId(), this.configName, this.dataState, this.actionsList)) !== null && _a !== void 0 ? _a : []);
|
|
477
|
-
}
|
|
478
|
-
return hardList.concat(this.actionsList);
|
|
479
|
-
}
|
|
480
|
-
getSettingsListForm() {
|
|
481
|
-
const hardList = [{
|
|
482
|
-
value: StringUtils.generateUUID(),
|
|
483
|
-
label: this.getMessage("snkCrud.findColumn"),
|
|
484
|
-
disableCloseOnSelect: true,
|
|
485
|
-
eagerInitialize: true,
|
|
486
|
-
itemBuilder: (_, item) => this.getFieldsSearch(item)
|
|
487
|
-
}];
|
|
488
|
-
return hardList;
|
|
489
|
-
}
|
|
490
|
-
buildTaskBar() {
|
|
491
|
-
var _a;
|
|
492
|
-
return h("div", { class: `snk-guides-viewer__header-taskbar ${this.presentationMode != PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.getActionsList(), actionsSettingsList: this.getSettingsListForm(), messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? TaskbarElement.SAVE : TaskbarElement.INSERT, "data-taskbar-owner": "master", dataUnit: this.dataUnit, resourceID: this.resourceID, customSlotId: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS", additionalSlotId: "GUIDES_VIEWER_DYNAMIC_SEARCH", alignRigth: true }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GUIDES_VIEWER_DYNAMIC_SEARCH" })));
|
|
493
|
-
}
|
|
494
374
|
async dataUnitActionHandler(action) {
|
|
495
375
|
var _a;
|
|
496
376
|
switch (action.type) {
|
|
@@ -545,30 +425,42 @@ export class SnkGuidesViewer {
|
|
|
545
425
|
}
|
|
546
426
|
return "";
|
|
547
427
|
}
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
return (_b = (_a = this.getCustomTitle) === null || _a === void 0 ? void 0 : _a.call(this)) !== null && _b !== void 0 ? _b : this.getMessage("snkCrud.title");
|
|
551
|
-
}
|
|
552
|
-
getTitleTooltip() {
|
|
553
|
-
if (!this.dataUnit.isMultipleEdition)
|
|
554
|
-
return;
|
|
555
|
-
return this.buildRecordIdsArray();
|
|
428
|
+
getCustomGuidesConfig() {
|
|
429
|
+
return this._currentDetail ? [] : this.customGuidesConfig;
|
|
556
430
|
}
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
431
|
+
getFieldsSearch() {
|
|
432
|
+
if (this._fieldSearch == undefined || this._hasToCreateFieldSearch) {
|
|
433
|
+
this._hasToCreateFieldSearch = false;
|
|
434
|
+
const item = {
|
|
435
|
+
label: this.getMessage("snkSimpleCrud.findFields"),
|
|
436
|
+
value: "findFields",
|
|
437
|
+
};
|
|
438
|
+
this._fieldSearch = buildFieldSearch(item, ({ argument }) => this.fieldsOptionLoader(argument), (option) => this.onSelectField(option));
|
|
562
439
|
}
|
|
563
|
-
|
|
564
|
-
return `[${labels.join(", ")}]`;
|
|
440
|
+
return this._fieldSearch;
|
|
565
441
|
}
|
|
566
|
-
|
|
567
|
-
return
|
|
442
|
+
fieldsOptionLoader(argument) {
|
|
443
|
+
return Promise.resolve(this._configManager.getFieldsList(argument)
|
|
444
|
+
.map(field => ({ value: field.name, label: field.label })));
|
|
445
|
+
}
|
|
446
|
+
changeGuideHandler(guideName) {
|
|
447
|
+
var _a;
|
|
448
|
+
(_a = this._guideNavigator) === null || _a === void 0 ? void 0 : _a.selectGuide(guideName);
|
|
449
|
+
}
|
|
450
|
+
onSelectField(option) {
|
|
451
|
+
if (option == undefined) {
|
|
452
|
+
return;
|
|
453
|
+
}
|
|
454
|
+
this._fieldToGetFocus = option.value;
|
|
455
|
+
const fieldGuideName = this.getGuideName(option.value);
|
|
456
|
+
if (fieldGuideName !== this.selectedGuide.id) {
|
|
457
|
+
this.changeGuideHandler(fieldGuideName);
|
|
458
|
+
}
|
|
568
459
|
}
|
|
569
460
|
componentDidLoad() {
|
|
570
461
|
this.dataUnit.subscribe(this.dataUnitActionHandler.bind(this));
|
|
571
462
|
this.initKeyboardManager();
|
|
463
|
+
this.getFieldsSearch();
|
|
572
464
|
}
|
|
573
465
|
disconnectedCallback() {
|
|
574
466
|
var _a;
|
|
@@ -588,15 +480,14 @@ export class SnkGuidesViewer {
|
|
|
588
480
|
}
|
|
589
481
|
}
|
|
590
482
|
renderGuidesNavigator(showGuides) {
|
|
591
|
-
var _a
|
|
592
|
-
return (h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabIndex: -1 }, h("div", { class: "
|
|
593
|
-
h("div", { class: "ez-margin-top--extra-small" }, h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != PresentationMode.SECONDARY && this.buildTaskBar()), h("div", { class: "snk-guides-viewer__container" }, showGuides ?
|
|
483
|
+
var _a;
|
|
484
|
+
return (h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabIndex: -1 }, h("div", { class: "snk-guides-viewer__container" }, showGuides ?
|
|
594
485
|
h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzSelectionChange: evt => this.updateSelectedGuideHandler(evt.detail) })
|
|
595
486
|
:
|
|
596
487
|
h("div", null), h("div", { class: "snk-guides-viewer__detail-container" }, SnkGuidesViewer.buildFixedForms({
|
|
597
488
|
formConfig: this.masterFormConfig,
|
|
598
489
|
formMetadata: this._masterFormMetadata,
|
|
599
|
-
selectedForm: (
|
|
490
|
+
selectedForm: (_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.id,
|
|
600
491
|
dataUnit: this.dataUnit,
|
|
601
492
|
recordsValidator: this.recordsValidator,
|
|
602
493
|
fieldToFocus: this._fieldToGetFocus,
|
|
@@ -610,7 +501,6 @@ export class SnkGuidesViewer {
|
|
|
610
501
|
if (!this.dataUnit || !this._configManager.isLoaded) {
|
|
611
502
|
return;
|
|
612
503
|
}
|
|
613
|
-
this.loadTaskbarProcessor();
|
|
614
504
|
const showGuides = this._guides && (this._guides.length > 1);
|
|
615
505
|
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "guides-viewer-stack" }, h("stack-item", null, this.renderGuidesNavigator(showGuides)), h("stack-item", null, this.renderFormConfig())));
|
|
616
506
|
}
|
|
@@ -1280,12 +1170,6 @@ export class SnkGuidesViewer {
|
|
|
1280
1170
|
}];
|
|
1281
1171
|
}
|
|
1282
1172
|
}
|
|
1283
|
-
var TASKBAR_ID;
|
|
1284
|
-
(function (TASKBAR_ID) {
|
|
1285
|
-
TASKBAR_ID["FINISH_EDITION"] = "snkGuideViewer.finish_edition";
|
|
1286
|
-
TASKBAR_ID["MUTIPLE_EDITION"] = "snkGuideViewer.multiple_edition";
|
|
1287
|
-
TASKBAR_ID["REGULAR"] = "snkGuideViewer.regular";
|
|
1288
|
-
})(TASKBAR_ID || (TASKBAR_ID = {}));
|
|
1289
1173
|
var GUIDES_VIEWER_VIEW_MODE;
|
|
1290
1174
|
(function (GUIDES_VIEWER_VIEW_MODE) {
|
|
1291
1175
|
GUIDES_VIEWER_VIEW_MODE[GUIDES_VIEWER_VIEW_MODE["GUIDES"] = 0] = "GUIDES";
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { PresentationMode } from "../../../lib";
|
|
2
|
+
import { VIEW_MODE } from "../../../lib/utils/constants";
|
|
3
|
+
import { TaskbarElement } from "../../snk-taskbar/elements/taskbar-elements";
|
|
4
|
+
export const DEFAULT_TASKBAR_BUTTONS = [
|
|
5
|
+
TaskbarElement.FORM_MODE,
|
|
6
|
+
TaskbarElement.PREVIOUS,
|
|
7
|
+
TaskbarElement.NEXT,
|
|
8
|
+
TaskbarElement.REFRESH,
|
|
9
|
+
TaskbarElement.SPACER,
|
|
10
|
+
TaskbarElement.ACTIONS_BUTTON,
|
|
11
|
+
TaskbarElement.DATA_EXPORTER,
|
|
12
|
+
TaskbarElement.ATTACH,
|
|
13
|
+
TaskbarElement.CLONE,
|
|
14
|
+
TaskbarElement.UPDATE,
|
|
15
|
+
TaskbarElement.REMOVE,
|
|
16
|
+
TaskbarElement.INSERT,
|
|
17
|
+
TaskbarElement.CONFIGURATOR,
|
|
18
|
+
TaskbarElement.MORE_OPTIONS,
|
|
19
|
+
];
|
|
20
|
+
export var CustomTaskbarButton;
|
|
21
|
+
(function (CustomTaskbarButton) {
|
|
22
|
+
CustomTaskbarButton["FILTER"] = "FILTER";
|
|
23
|
+
CustomTaskbarButton["ENTITY_SEARCH"] = "ENTITY_SEARCH";
|
|
24
|
+
})(CustomTaskbarButton || (CustomTaskbarButton = {}));
|
|
25
|
+
/**
|
|
26
|
+
* Insere os botões customizados à esquerda do elemento SPACER na lista de botões.
|
|
27
|
+
* Caso o SPACER não seja encontrado, os botões são inseridos no início da lista.
|
|
28
|
+
*/
|
|
29
|
+
function insertCustomButtonsBeforeSpacer(buttons, customButtons) {
|
|
30
|
+
const spacerIndex = buttons.findIndex(btn => btn === TaskbarElement.SPACER || (typeof btn === 'string' && btn === 'SPACER'));
|
|
31
|
+
if (spacerIndex > -1) {
|
|
32
|
+
return [
|
|
33
|
+
...buttons.slice(0, spacerIndex),
|
|
34
|
+
...customButtons,
|
|
35
|
+
...buttons.slice(spacerIndex),
|
|
36
|
+
];
|
|
37
|
+
}
|
|
38
|
+
return [...customButtons, ...buttons];
|
|
39
|
+
}
|
|
40
|
+
function buildNavigationDisabledBtns(dataState) {
|
|
41
|
+
const navigationDisabled = [];
|
|
42
|
+
if (!(dataState === null || dataState === void 0 ? void 0 : dataState.hasPrevious)) {
|
|
43
|
+
navigationDisabled.push(TaskbarElement.PREVIOUS);
|
|
44
|
+
}
|
|
45
|
+
if (!(dataState === null || dataState === void 0 ? void 0 : dataState.hasNext)) {
|
|
46
|
+
navigationDisabled.push(TaskbarElement.NEXT);
|
|
47
|
+
}
|
|
48
|
+
return navigationDisabled;
|
|
49
|
+
}
|
|
50
|
+
export function buildNativeTaskbarManager(currentViewMode, mergeTaskbarManager, messagesBuilder) {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
const CUSTOM_BUTTONS = [
|
|
53
|
+
{
|
|
54
|
+
name: CustomTaskbarButton.FILTER,
|
|
55
|
+
hint: (_a = messagesBuilder === null || messagesBuilder === void 0 ? void 0 : messagesBuilder.getMessage("snkCrud.customButtons.filter")) !== null && _a !== void 0 ? _a : "Abre o painel de filtros",
|
|
56
|
+
iconName: "filter",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: CustomTaskbarButton.ENTITY_SEARCH,
|
|
60
|
+
hint: (_b = messagesBuilder === null || messagesBuilder === void 0 ? void 0 : messagesBuilder.getMessage("snkCrud.customButtons.entitySearch")) !== null && _b !== void 0 ? _b : "Busca na entidade",
|
|
61
|
+
iconName: "search",
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
const EDITION_MODE_BUTTONS = [
|
|
65
|
+
TaskbarElement.CANCEL,
|
|
66
|
+
TaskbarElement.SAVE,
|
|
67
|
+
];
|
|
68
|
+
return {
|
|
69
|
+
getButtons: (taskbarID, dataState, defaultButtons) => {
|
|
70
|
+
var _a, _b;
|
|
71
|
+
if (!taskbarID) {
|
|
72
|
+
console.warn('taskbarID não fornecido');
|
|
73
|
+
return [];
|
|
74
|
+
}
|
|
75
|
+
const isInEditionMode = (dataState === null || dataState === void 0 ? void 0 : dataState.insertionMode) || (dataState === null || dataState === void 0 ? void 0 : dataState.isDirty);
|
|
76
|
+
if (isInEditionMode) {
|
|
77
|
+
return EDITION_MODE_BUTTONS;
|
|
78
|
+
}
|
|
79
|
+
if (currentViewMode === VIEW_MODE.FORM) {
|
|
80
|
+
const indexFormMode = defaultButtons.indexOf(TaskbarElement.FORM_MODE);
|
|
81
|
+
if (indexFormMode > -1) {
|
|
82
|
+
defaultButtons = [
|
|
83
|
+
...defaultButtons.slice(0, indexFormMode),
|
|
84
|
+
TaskbarElement.GRID_MODE,
|
|
85
|
+
...defaultButtons.slice(indexFormMode + 1)
|
|
86
|
+
];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
if (((_b = (_a = dataState === null || dataState === void 0 ? void 0 : dataState.selectionInfo) === null || _a === void 0 ? void 0 : _a.records) === null || _b === void 0 ? void 0 : _b.length) > 1) {
|
|
90
|
+
const indexUpdate = defaultButtons.indexOf(TaskbarElement.UPDATE);
|
|
91
|
+
if (indexUpdate > -1) {
|
|
92
|
+
defaultButtons = [
|
|
93
|
+
...defaultButtons.slice(0, indexUpdate),
|
|
94
|
+
TaskbarElement.UPDATE_MULTIPLE,
|
|
95
|
+
...defaultButtons.slice(indexUpdate + 1)
|
|
96
|
+
];
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
const defaultsWithCustomButtons = insertCustomButtonsBeforeSpacer(defaultButtons, CUSTOM_BUTTONS);
|
|
100
|
+
if (mergeTaskbarManager === null || mergeTaskbarManager === void 0 ? void 0 : mergeTaskbarManager.getButtons) {
|
|
101
|
+
return mergeTaskbarManager.getButtons(taskbarID, dataState, defaultsWithCustomButtons);
|
|
102
|
+
}
|
|
103
|
+
return defaultsWithCustomButtons;
|
|
104
|
+
},
|
|
105
|
+
isEnabled: (_, dataState, buttonName, originalValue) => {
|
|
106
|
+
var _a;
|
|
107
|
+
// Filtro só faz sentido no modo grade; a filter-bar fica oculta no
|
|
108
|
+
// form-view, então desabilita o botão que abre o painel de filtros.
|
|
109
|
+
if (currentViewMode === VIEW_MODE.FORM && buttonName === CustomTaskbarButton.FILTER) {
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
if (!dataState) {
|
|
113
|
+
return originalValue;
|
|
114
|
+
}
|
|
115
|
+
const hasSelectedRecord = dataState.selectedRecord !== undefined;
|
|
116
|
+
const buttonsRequiringSelection = [
|
|
117
|
+
TaskbarElement.UPDATE,
|
|
118
|
+
TaskbarElement.REMOVE,
|
|
119
|
+
TaskbarElement.ATTACH,
|
|
120
|
+
TaskbarElement.CLONE,
|
|
121
|
+
];
|
|
122
|
+
if (!hasSelectedRecord && buttonsRequiringSelection.includes(buttonName)) {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
const navigationDisabled = buildNavigationDisabledBtns(dataState);
|
|
126
|
+
if (navigationDisabled.includes(buttonName)) {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
return (_a = mergeTaskbarManager === null || mergeTaskbarManager === void 0 ? void 0 : mergeTaskbarManager.isEnabled(_, dataState, buttonName, originalValue)) !== null && _a !== void 0 ? _a : originalValue;
|
|
130
|
+
},
|
|
131
|
+
getMoreOptions(taskbarId, configName, dataState, currentActions) {
|
|
132
|
+
var _a;
|
|
133
|
+
return (_a = mergeTaskbarManager === null || mergeTaskbarManager === void 0 ? void 0 : mergeTaskbarManager.getMoreOptions) === null || _a === void 0 ? void 0 : _a.call(mergeTaskbarManager, taskbarId, configName, dataState, currentActions);
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
export function getHeaderTaskbarId(dataState, presentationMode) {
|
|
138
|
+
var _a;
|
|
139
|
+
const hasSelectedRecord = dataState && !!((_a = dataState.selectionInfo) === null || _a === void 0 ? void 0 : _a.length);
|
|
140
|
+
const taskbarIdPrefixLookup = {
|
|
141
|
+
primary: "snkGridHeaderTaskbar",
|
|
142
|
+
secondary: "snkGridHeaderTaskbar",
|
|
143
|
+
singleTaskbar: "snkGridHeaderTaskbar.singleTaskbar",
|
|
144
|
+
};
|
|
145
|
+
const taskbarIdPrefix = taskbarIdPrefixLookup[presentationMode];
|
|
146
|
+
let headerTaskbarId = hasSelectedRecord ? `${taskbarIdPrefix}.selected` : `${taskbarIdPrefix}.unselected`;
|
|
147
|
+
if ((dataState === null || dataState === void 0 ? void 0 : dataState.isDirty) && presentationMode === PresentationMode.SINGLE_TASKBAR) {
|
|
148
|
+
headerTaskbarId = "snkGridHeaderTaskbar.singleTaskbar.finish_edition";
|
|
149
|
+
}
|
|
150
|
+
return headerTaskbarId;
|
|
151
|
+
}
|
|
152
|
+
export function getTopTaskBarId(dataState, presentationMode) {
|
|
153
|
+
const suffixLookup = {
|
|
154
|
+
primary: '',
|
|
155
|
+
secondary: '.secondary',
|
|
156
|
+
singleTaskbar: '.singleTaskbar',
|
|
157
|
+
};
|
|
158
|
+
const sufix = suffixLookup[presentationMode];
|
|
159
|
+
if (dataState === null || dataState === void 0 ? void 0 : dataState.isDirty) {
|
|
160
|
+
return `snkGridTopTaskbar.finish_edition${sufix}`;
|
|
161
|
+
}
|
|
162
|
+
return `snkGridTopTaskbar.regular${sufix}`;
|
|
163
|
+
}
|
|
@@ -88,7 +88,7 @@ export class SnkExporterEmailSender {
|
|
|
88
88
|
return (h("ez-popup", { useHeader: false, size: "x-small", heightMode: "auto", opened: this._opened }, h("ez-modal-container", { onEzModalAction: (evt) => {
|
|
89
89
|
if (evt.detail === ModalAction.CLOSE)
|
|
90
90
|
this.close();
|
|
91
|
-
}, modalTitle: this.getMessage("snkExporter.emailSenderTitle"), modalSubTitle: this.getStepMessage("subTitle") }, h("ez-view-stack", { ref: ref => this._viewStack = ref }, h("stack-item", null, h(OptionsStep, { getMessage: this.getMessage, data: this._config, changeInfo: (field, value) => this.updateConfigInfo(field, value) })), h("stack-item", null, h(EmailInfoStep, { getMessage: this.getMessage, data: this._config, changeInfo: (field, value) => this.updateEmailInfo(field, value) }))), h("div", { class: "ez-col ez-col--sd-12 ez-flex--justify-end ez-margin-vertical--small" }, h("ez-button", Object.assign({ class: "ez-
|
|
91
|
+
}, modalTitle: this.getMessage("snkExporter.emailSenderTitle"), modalSubTitle: this.getStepMessage("subTitle") }, h("ez-view-stack", { ref: ref => this._viewStack = ref }, h("stack-item", null, h(OptionsStep, { getMessage: this.getMessage, data: this._config, changeInfo: (field, value) => this.updateConfigInfo(field, value) })), h("stack-item", null, h(EmailInfoStep, { getMessage: this.getMessage, data: this._config, changeInfo: (field, value) => this.updateEmailInfo(field, value) }))), h("div", { class: "ez-col ez-col--sd-12 ez-flex--justify-end ez-margin-vertical--small" }, h("ez-button", Object.assign({ class: "ez-padding-right--medium", label: this.getStepMessage("firstButton"), onClick: () => this.executeButtonAction(true), enabled: this.checkButtonEnabled(true) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("firstButton")}` }, { variant: "secondary", size: "medium" })), h("ez-button", Object.assign({ label: this.getStepMessage("secondButton"), onClick: () => this.executeButtonAction(false), enabled: this.checkButtonEnabled(false) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("secondButton")}` }, { variant: "primary", size: "medium" }))))));
|
|
92
92
|
}
|
|
93
93
|
static get is() { return "snk-exporter-email-sender"; }
|
|
94
94
|
static get properties() {
|
package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js
CHANGED
|
@@ -11,7 +11,7 @@ export default class ClientSideExporterStrategy {
|
|
|
11
11
|
return visibleColumns;
|
|
12
12
|
}
|
|
13
13
|
async executeExport(resolveProps) {
|
|
14
|
-
var _a;
|
|
14
|
+
var _a, _b;
|
|
15
15
|
const { methodName, gridTitle } = resolveProps;
|
|
16
16
|
const records = await this._provider.getRecords(resolveProps.type);
|
|
17
17
|
const columns = ((_a = getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) === null || _a === void 0 ? void 0 : _a.includes("PDF")) ? await this.getParsedColumns() : await this._provider.getColumnsMetadata();
|
|
@@ -23,7 +23,7 @@ export default class ClientSideExporterStrategy {
|
|
|
23
23
|
gridTitle,
|
|
24
24
|
columns: this.buildColumnsObject(columns),
|
|
25
25
|
rows: this.buildRowsObject(columns, records),
|
|
26
|
-
customOptions: { xlsxExtension: false }
|
|
26
|
+
customOptions: { xlsxExtension: (_b = resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.xlsxExtension) !== null && _b !== void 0 ? _b : false }
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
};
|
|
@@ -17,44 +17,46 @@ export class CommonsExporter {
|
|
|
17
17
|
return this.columnsState;
|
|
18
18
|
}
|
|
19
19
|
async buildColumnsMetadata(gridColumns) {
|
|
20
|
-
var _a
|
|
20
|
+
var _a;
|
|
21
21
|
const columnsMetadata = [];
|
|
22
|
+
const searchPlusDescriptionIds = this.collectSearchPlusDescriptionIds(gridColumns);
|
|
23
|
+
const gridColumnsByName = new Map(gridColumns.map(column => [column.name, column]));
|
|
22
24
|
for (const column of gridColumns) {
|
|
25
|
+
if (this.isHiddenColumn(column)) {
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
23
28
|
/**
|
|
24
|
-
*
|
|
29
|
+
* A grid adiciona uma coluna auxiliar para a descrição de campos SEARCHPLUS
|
|
30
|
+
* (ex.: "ENTITYNAME.DESCRIPTIONFIELD"). A descrição já é emitida ao processar
|
|
31
|
+
* o próprio SEARCHPLUS, então pulamos a auxiliar para evitar duplicar a coluna.
|
|
25
32
|
*/
|
|
26
|
-
if (
|
|
33
|
+
if (searchPlusDescriptionIds.has(column.name)) {
|
|
27
34
|
continue;
|
|
28
35
|
}
|
|
29
36
|
const fieldData = (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(column.name);
|
|
30
37
|
const customFormatter = await this.grid.getCustomValueFormatter(column.name);
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
const labelColumn = isUserInterfaceSEARCH ? "Cód. " : column.label;
|
|
34
|
-
let descriptionColumn = undefined;
|
|
38
|
+
const isSearchField = this.isSearchUserInterface(fieldData);
|
|
39
|
+
const labelColumn = isSearchField ? "Cód. " : column.label;
|
|
35
40
|
let columnData = {
|
|
36
41
|
id: column.name,
|
|
37
42
|
label: labelColumn,
|
|
38
|
-
width:
|
|
43
|
+
width: isSearchField ? (labelColumn.length * this.DEFAULT_FONT_SIZE) : column.width,
|
|
39
44
|
type: fieldData === null || fieldData === void 0 ? void 0 : fieldData.dataType,
|
|
40
45
|
userInterface: fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface,
|
|
41
46
|
customFormatter
|
|
42
47
|
};
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
const newWidth = this.getWidthByMetaData(column === null || column === void 0 ? void 0 : column.width, columnData === null || columnData === void 0 ? void 0 : columnData.width, descriptionColumn === null || descriptionColumn === void 0 ? void 0 : descriptionColumn.width);
|
|
56
|
-
columnData = Object.assign(Object.assign({}, columnData), { width: newWidth === null || newWidth === void 0 ? void 0 : newWidth.codWidth });
|
|
57
|
-
descriptionColumn = Object.assign(Object.assign({}, descriptionColumn), { width: newWidth === null || newWidth === void 0 ? void 0 : newWidth.descWidth, label: (descriptionColumn === null || descriptionColumn === void 0 ? void 0 : descriptionColumn.label) || (column === null || column === void 0 ? void 0 : column.label) });
|
|
48
|
+
let descriptionColumn = isSearchField ? this.buildDescriptionColumn(fieldData, column) : undefined;
|
|
49
|
+
if (descriptionColumn) {
|
|
50
|
+
const realDescriptionColumn = gridColumnsByName.get(descriptionColumn.id);
|
|
51
|
+
if (realDescriptionColumn === null || realDescriptionColumn === void 0 ? void 0 : realDescriptionColumn.width) {
|
|
52
|
+
columnData = Object.assign(Object.assign({}, columnData), { width: Math.min(columnData.width, this.MAX_WIDTH_COD) });
|
|
53
|
+
descriptionColumn = Object.assign(Object.assign({}, descriptionColumn), { width: realDescriptionColumn.width, label: (descriptionColumn === null || descriptionColumn === void 0 ? void 0 : descriptionColumn.label) || (column === null || column === void 0 ? void 0 : column.label) });
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
const newWidth = this.getWidthByMetaData(column === null || column === void 0 ? void 0 : column.width, columnData === null || columnData === void 0 ? void 0 : columnData.width, descriptionColumn === null || descriptionColumn === void 0 ? void 0 : descriptionColumn.width);
|
|
57
|
+
columnData = Object.assign(Object.assign({}, columnData), { width: newWidth === null || newWidth === void 0 ? void 0 : newWidth.codWidth });
|
|
58
|
+
descriptionColumn = Object.assign(Object.assign({}, descriptionColumn), { width: newWidth === null || newWidth === void 0 ? void 0 : newWidth.descWidth, label: (descriptionColumn === null || descriptionColumn === void 0 ? void 0 : descriptionColumn.label) || (column === null || column === void 0 ? void 0 : column.label) });
|
|
59
|
+
}
|
|
58
60
|
}
|
|
59
61
|
columnsMetadata.push(columnData);
|
|
60
62
|
if (descriptionColumn)
|
|
@@ -63,6 +65,59 @@ export class CommonsExporter {
|
|
|
63
65
|
;
|
|
64
66
|
return columnsMetadata || [];
|
|
65
67
|
}
|
|
68
|
+
collectSearchPlusDescriptionIds(gridColumns) {
|
|
69
|
+
var _a;
|
|
70
|
+
const descriptionIds = new Set();
|
|
71
|
+
for (const column of gridColumns) {
|
|
72
|
+
if (this.isHiddenColumn(column)) {
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
const fieldData = (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(column.name);
|
|
76
|
+
if (!this.isSearchUserInterface(fieldData)) {
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
const descriptionId = this.buildDescriptionColumnId(fieldData);
|
|
80
|
+
if (descriptionId) {
|
|
81
|
+
descriptionIds.add(descriptionId);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return descriptionIds;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* TODO: Analisar e criar uma melhor forma de tratar essa validação do "RECDESP".
|
|
88
|
+
*/
|
|
89
|
+
isHiddenColumn(column) {
|
|
90
|
+
return column.hidden && column.name !== "RECDESP";
|
|
91
|
+
}
|
|
92
|
+
isSearchUserInterface(fieldData) {
|
|
93
|
+
return (fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface) === UserInterface.SEARCH
|
|
94
|
+
|| (fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface) === UserInterface.SEARCHPLUS;
|
|
95
|
+
}
|
|
96
|
+
buildDescriptionColumnId(fieldData) {
|
|
97
|
+
const properties = fieldData === null || fieldData === void 0 ? void 0 : fieldData.properties;
|
|
98
|
+
if ((properties === null || properties === void 0 ? void 0 : properties.DESCRIPTIONFIELD) == undefined) {
|
|
99
|
+
return undefined;
|
|
100
|
+
}
|
|
101
|
+
const descriptionField = `${properties.ENTITYNAME}.${properties.DESCRIPTIONFIELD}`;
|
|
102
|
+
return properties.mergedFrom ? `${properties.mergedFrom}.${descriptionField}` : descriptionField;
|
|
103
|
+
}
|
|
104
|
+
buildDescriptionColumn(fieldData, column) {
|
|
105
|
+
var _a;
|
|
106
|
+
const id = this.buildDescriptionColumnId(fieldData);
|
|
107
|
+
if (!id) {
|
|
108
|
+
return undefined;
|
|
109
|
+
}
|
|
110
|
+
const labelDescription = (_a = fieldData === null || fieldData === void 0 ? void 0 : fieldData.properties) === null || _a === void 0 ? void 0 : _a.DESCRIPTIONENTITY;
|
|
111
|
+
const widthColumnDefault = 60;
|
|
112
|
+
return {
|
|
113
|
+
id,
|
|
114
|
+
label: labelDescription,
|
|
115
|
+
width: labelDescription ? (labelDescription.length * this.DEFAULT_FONT_SIZE - widthColumnDefault) : column.width,
|
|
116
|
+
type: DataType.TEXT,
|
|
117
|
+
userInterface: UserInterface.LONGTEXT,
|
|
118
|
+
descriptionFrom: fieldData.name
|
|
119
|
+
};
|
|
120
|
+
}
|
|
66
121
|
getWidthByMetaData(maxWidth, widthCod, widthDescription) {
|
|
67
122
|
const totalCurrentWidth = widthCod + widthDescription;
|
|
68
123
|
const codPercentage = widthCod / totalCurrentWidth;
|