@sankhyalabs/sankhyablocks 8.15.0-dev.8 → 8.15.0-dev.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{ConfigStorage-302bbbd4.js → ConfigStorage-942ce74b.js} +70 -7
- package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-313debd8.js} +18 -8
- package/dist/cjs/IExporterProvider-0c814e9a.js +230 -0
- package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
- package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
- package/dist/cjs/{SnkFormConfigManager-71c4768e.js → SnkFormConfigManager-52f99b4d.js} +23 -15
- package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-4a95fe86.js} +25 -13
- package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-54f5ff9d.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-14108bec.js → dataunit-fetcher-620b29a1.js} +409 -77
- package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-2dd00e5b.js} +13 -1
- package/dist/cjs/index-f9e81701.js +2 -10
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pesquisa-fetcher-ef050a47.js → pesquisa-fetcher-680e198f.js} +12 -13
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +526 -8
- package/dist/cjs/snk-application.cjs.entry.js +88 -26
- package/dist/cjs/snk-attach.cjs.entry.js +441 -65
- package/dist/cjs/snk-configurator.cjs.entry.js +1 -1
- package/dist/cjs/snk-crud.cjs.entry.js +125 -28
- package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +6 -2
- package/dist/cjs/snk-data-exporter.cjs.entry.js +207 -83
- package/dist/cjs/snk-data-unit-eca53cfc.js +671 -0
- package/dist/cjs/snk-data-unit.cjs.entry.js +11 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +52 -13
- package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
- package/dist/cjs/snk-filter-bar.cjs.entry.js +65 -8
- package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
- package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
- package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
- package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
- package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
- package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
- package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
- package/dist/cjs/snk-form.cjs.entry.js +60 -8
- package/dist/cjs/snk-grid.cjs.entry.js +200 -122
- package/dist/cjs/{snk-guides-viewer-c8b9374f.js → snk-guides-viewer-5d5f0f25.js} +56 -20
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
- package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
- package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +512 -40
- package/dist/cjs/snk-taskbar.cjs.entry.js +143 -20
- package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
- package/dist/collection/collection-manifest.json +8 -8
- package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
- package/dist/collection/components/snk-application/snk-application.js +148 -24
- package/dist/collection/components/snk-attach/snk-attach.js +231 -44
- package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
- package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
- package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
- package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
- package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
- package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +118 -0
- package/dist/collection/components/snk-attach/structure/index.js +6 -3
- package/dist/collection/components/snk-configurator/snk-configurator.js +1 -1
- package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
- package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
- package/dist/collection/components/snk-crud/snk-crud.js +359 -19
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +137 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +163 -13
- package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.css +1 -1
- package/dist/collection/components/snk-custom-slot-elements/snk-custom-slot-elements.js +22 -1
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
- package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
- package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
- package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
- package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +44 -50
- package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
- package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +501 -216
- package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
- package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
- package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
- package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
- package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +24 -1
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +175 -3
- package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
- package/dist/collection/components/snk-form/snk-form.js +126 -5
- package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +22 -14
- package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
- package/dist/collection/components/snk-grid/snk-grid.js +360 -115
- package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
- package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
- package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
- package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +847 -23
- package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
- package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +195 -19
- package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
- package/dist/collection/lib/configs/ConfigStorage.js +63 -3
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +15 -42
- package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
- package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
- package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
- package/dist/collection/lib/http/data-fetcher/DataFetcher.js +18 -8
- package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +30 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +87 -24
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
- package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
- package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
- package/dist/collection/lib/index.js +1 -1
- package/dist/collection/lib/message/SnkMessageBuilder.js +25 -32
- package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
- package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -0
- package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
- package/dist/collection/lib/utils/CrudUtils.js +13 -1
- package/dist/components/ConfigStorage.js +68 -5
- package/dist/components/DataFetcher.js +18 -8
- package/dist/components/IExporterProvider.js +298 -0
- package/dist/components/ISave.js +42 -0
- package/dist/components/SnkFormConfigManager.js +21 -13
- package/dist/components/SnkMessageBuilder.js +25 -13
- package/dist/components/dataunit-fetcher.js +185 -241
- package/dist/components/form-config-fetcher.js +12 -0
- package/dist/components/index.d.ts +6 -6
- package/dist/components/index2.js +198 -33
- package/dist/{esm/pesquisa-fetcher-dd3ca0a5.js → components/pesquisa-fetcher.js} +13 -14
- package/dist/components/snk-actions-button2.js +4 -10
- package/dist/components/snk-application2.js +86 -20
- package/dist/components/snk-attach2.js +496 -72
- package/dist/components/snk-configurator2.js +1 -1
- package/dist/components/snk-crud.js +133 -23
- package/dist/components/snk-custom-slot-elements.js +7 -3
- package/dist/components/snk-data-exporter2.js +202 -83
- package/dist/components/snk-data-unit2.js +464 -214
- package/dist/components/snk-detail-view2.js +137 -23
- package/dist/components/snk-entity-list.js +5 -3
- package/dist/components/snk-expression-item2.js +1 -1
- package/dist/components/snk-filter-bar2.js +69 -6
- package/dist/components/snk-filter-detail2.js +5 -1
- package/dist/components/snk-filter-item2.js +14 -6
- package/dist/components/snk-filter-modal.js +4 -2
- package/dist/components/snk-filter-multi-select.js +2 -1
- package/dist/components/snk-form-config2.js +46 -26
- package/dist/components/snk-form-view2.js +72 -1
- package/dist/components/snk-form.js +60 -5
- package/dist/components/snk-grid-config2.js +128 -102
- package/dist/components/snk-grid2.js +209 -119
- package/dist/components/snk-personalized-filter-editor.js +3 -1
- package/dist/components/snk-personalized-filter2.js +1 -1
- package/dist/components/snk-pesquisa2.js +1 -1
- package/dist/components/snk-simple-crud2.js +574 -36
- package/dist/components/snk-taskbar2.js +164 -35
- package/dist/components/taskbar-actions-button2.js +4 -2
- package/dist/esm/{ConfigStorage-4151acc8.js → ConfigStorage-86187da3.js} +70 -7
- package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-c1baf61d.js} +18 -8
- package/dist/esm/IExporterProvider-c0194569.js +221 -0
- package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
- package/dist/esm/RecordIDUtils-87d02110.js +41 -0
- package/dist/esm/{SnkFormConfigManager-5c7d3771.js → SnkFormConfigManager-5b0d69cd.js} +23 -15
- package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-3a767111.js} +25 -13
- package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-039abba3.js} +1 -1
- package/dist/esm/{dataunit-fetcher-cbec1594.js → dataunit-fetcher-3fbf9d12.js} +392 -70
- package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-30fb808f.js} +13 -1
- package/dist/esm/index-a7d3d3f1.js +2 -10
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-fetcher-03c8f919.js +164 -0
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +525 -9
- package/dist/esm/snk-application.entry.js +88 -26
- package/dist/esm/snk-attach.entry.js +441 -65
- package/dist/esm/snk-configurator.entry.js +1 -1
- package/dist/esm/snk-crud.entry.js +125 -28
- package/dist/esm/snk-custom-slot-elements.entry.js +7 -3
- package/dist/esm/snk-data-exporter.entry.js +208 -84
- package/dist/esm/snk-data-unit-49b898f7.js +669 -0
- package/dist/esm/snk-data-unit.entry.js +11 -2
- package/dist/esm/snk-detail-view.entry.js +52 -13
- package/dist/esm/snk-entity-list.entry.js +5 -3
- package/dist/esm/snk-filter-bar.entry.js +65 -8
- package/dist/esm/snk-filter-detail.entry.js +4 -1
- package/dist/esm/snk-filter-item.entry.js +13 -6
- package/dist/esm/snk-filter-modal-item.entry.js +3 -3
- package/dist/esm/snk-filter-modal.entry.js +2 -1
- package/dist/esm/snk-filter-multi-select.entry.js +2 -1
- package/dist/esm/snk-form-config.entry.js +48 -28
- package/dist/esm/snk-form-view.entry.js +67 -0
- package/dist/esm/snk-form.entry.js +60 -8
- package/dist/esm/snk-grid.entry.js +200 -122
- package/dist/esm/{snk-guides-viewer-8da24475.js → snk-guides-viewer-ef8c4eec.js} +56 -20
- package/dist/esm/snk-guides-viewer.entry.js +10 -10
- package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
- package/dist/esm/snk-personalized-filter.entry.js +3 -3
- package/dist/esm/snk-pesquisa.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +505 -33
- package/dist/esm/snk-taskbar.entry.js +144 -21
- package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
- package/dist/sankhyablocks/p-039c7148.entry.js +1 -0
- package/dist/sankhyablocks/p-04821c60.entry.js +1 -0
- package/dist/sankhyablocks/p-060fdb6c.js +1 -0
- package/dist/sankhyablocks/p-14a08904.entry.js +1 -0
- package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
- package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
- package/dist/sankhyablocks/p-21a81901.entry.js +1 -0
- package/dist/sankhyablocks/p-294df368.entry.js +1 -0
- package/dist/sankhyablocks/p-2ac8bd11.entry.js +1 -0
- package/dist/sankhyablocks/p-32062be4.entry.js +1 -0
- package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
- package/dist/sankhyablocks/p-3d0cc5c0.entry.js +1 -0
- package/dist/sankhyablocks/p-3f1efb97.entry.js +1 -0
- package/dist/sankhyablocks/p-47b60deb.entry.js +1 -0
- package/dist/sankhyablocks/p-4ce73e88.js +1 -0
- package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
- package/dist/sankhyablocks/p-5fa1576b.entry.js +11 -0
- package/dist/sankhyablocks/p-61dd89eb.js +1 -0
- package/dist/sankhyablocks/p-672302c3.js +60 -0
- package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
- package/dist/sankhyablocks/p-7663f597.entry.js +1 -0
- package/dist/sankhyablocks/p-8322ccdb.entry.js +1 -0
- package/dist/sankhyablocks/p-913a9979.js +1 -0
- package/dist/sankhyablocks/p-9863d682.js +1 -0
- package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-a1d72395.entry.js} +1 -1
- package/dist/sankhyablocks/p-a64baa0f.entry.js +1 -0
- package/dist/sankhyablocks/p-af8efd95.js +6 -0
- package/dist/sankhyablocks/p-aff76a53.js +56 -0
- package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
- package/dist/sankhyablocks/p-ba05fdb8.entry.js +1 -0
- package/dist/sankhyablocks/p-babe7665.js +1 -0
- package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
- package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
- package/dist/sankhyablocks/p-d26365ad.js +1 -0
- package/dist/sankhyablocks/{p-9695f78b.js → p-dc7c9047.js} +1 -1
- package/dist/sankhyablocks/p-df5451c7.js +26 -0
- package/dist/sankhyablocks/p-e5c25e0b.entry.js +1 -0
- package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
- package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-eae7a817.entry.js} +1 -1
- package/dist/sankhyablocks/p-f88cfc3c.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
- package/dist/types/components/snk-application/snk-application.d.ts +27 -5
- package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
- package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
- package/dist/types/components/snk-attach/snk-attach.d.ts +34 -10
- package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
- package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +40 -0
- package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
- package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
- package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
- package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +16 -0
- package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
- package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
- package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +57 -1
- package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +24 -1
- package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +30 -1
- package/dist/types/components/snk-custom-slot-elements/snk-custom-slot-elements.d.ts +6 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
- package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
- package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
- package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
- package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
- package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
- package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
- package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
- package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +61 -2
- package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
- package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
- package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +31 -1
- package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
- package/dist/types/components/snk-form/snk-form.d.ts +20 -1
- package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
- package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
- package/dist/types/components/snk-grid/snk-grid.d.ts +69 -7
- package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
- package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
- package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +142 -6
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +36 -1
- package/dist/types/components.d.ts +536 -18
- package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
- package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
- package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -3
- package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
- package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
- package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
- package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
- package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +7 -0
- package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
- package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
- package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
- package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
- package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
- package/dist/types/lib/index.d.ts +1 -1
- package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
- package/package.json +15 -6
- package/dist/cjs/PreloadManager-84466da6.js +0 -224
- package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
- package/dist/cjs/snk-data-unit-1bc69073.js +0 -462
- package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
- package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
- package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
- package/dist/components/field-search.js +0 -121
- package/dist/components/index3.js +0 -199
- package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
- package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
- package/dist/esm/snk-data-unit-6208ebf0.js +0 -460
- package/dist/esm/snk-grid-config.entry.js +0 -479
- package/dist/esm/snk-select-box.entry.js +0 -21
- package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
- package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
- package/dist/sankhyablocks/p-094c30cb.js +0 -1
- package/dist/sankhyablocks/p-0d7863ed.js +0 -26
- package/dist/sankhyablocks/p-1d75d9f9.entry.js +0 -1
- package/dist/sankhyablocks/p-20726710.entry.js +0 -1
- package/dist/sankhyablocks/p-25927311.entry.js +0 -1
- package/dist/sankhyablocks/p-32f0935f.js +0 -1
- package/dist/sankhyablocks/p-374d03f6.js +0 -1
- package/dist/sankhyablocks/p-3891ae6f.js +0 -60
- package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
- package/dist/sankhyablocks/p-573a07c5.js +0 -1
- package/dist/sankhyablocks/p-5f74c859.entry.js +0 -1
- package/dist/sankhyablocks/p-69754d94.entry.js +0 -1
- package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
- package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
- package/dist/sankhyablocks/p-761ed32f.entry.js +0 -1
- package/dist/sankhyablocks/p-7d8d7fe9.entry.js +0 -1
- package/dist/sankhyablocks/p-8d70b5d5.entry.js +0 -1
- package/dist/sankhyablocks/p-98674137.entry.js +0 -1
- package/dist/sankhyablocks/p-a9e4bb55.entry.js +0 -1
- package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
- package/dist/sankhyablocks/p-aa0ae6bc.entry.js +0 -1
- package/dist/sankhyablocks/p-aa95fb2c.js +0 -56
- package/dist/sankhyablocks/p-b05ab13d.entry.js +0 -1
- package/dist/sankhyablocks/p-ba3d3fa9.entry.js +0 -11
- package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
- package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
- package/dist/sankhyablocks/p-c6e477ff.js +0 -1
- package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
- package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
- package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
- package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
- package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
- package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
- package/dist/sankhyablocks/p-e6380c60.js +0 -1
- package/dist/sankhyablocks/p-ff6064e7.js +0 -1
- package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
- package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
- /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
- /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
- /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
- /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
- /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
- /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
- /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
- /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
- /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
- /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
- /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
- /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
- /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
import { DataType } from "@sankhyalabs/core";
|
2
|
+
const metadataMock = {
|
3
|
+
label: 'metadataMock',
|
4
|
+
name: 'metadataMock',
|
5
|
+
fields: [
|
6
|
+
{
|
7
|
+
name: 'TESTE',
|
8
|
+
label: 'Teste',
|
9
|
+
dataType: DataType.TEXT,
|
10
|
+
properties: {
|
11
|
+
rm_precision: 'TESTERMP.PRODUTORMP.decVlr'
|
12
|
+
}
|
13
|
+
},
|
14
|
+
{
|
15
|
+
name: 'TESTERMP',
|
16
|
+
label: 'Teste com RMP',
|
17
|
+
dataType: DataType.TEXT,
|
18
|
+
properties: {
|
19
|
+
rmp: 'PRODUTORMP'
|
20
|
+
}
|
21
|
+
}
|
22
|
+
]
|
23
|
+
};
|
24
|
+
export default metadataMock;
|
@@ -56,16 +56,18 @@ export class SnkEntityList {
|
|
56
56
|
this.loadListSource();
|
57
57
|
}
|
58
58
|
optionLoader(searchArgument) {
|
59
|
-
var _a, _b, _c, _d;
|
59
|
+
var _a, _b, _c, _d, _e, _f;
|
60
60
|
const { mode, argument } = searchArgument;
|
61
61
|
if (this._application === undefined) {
|
62
62
|
return;
|
63
63
|
}
|
64
64
|
const searchOptions = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.searchContext) === null || _c === void 0 ? void 0 : _c.searchOptions;
|
65
|
+
const criteria = (_e = (_d = this.config) === null || _d === void 0 ? void 0 : _d.props) === null || _e === void 0 ? void 0 : _e.criteria;
|
65
66
|
const options = {
|
66
|
-
entityDescription: (
|
67
|
+
entityDescription: (_f = this.config) === null || _f === void 0 ? void 0 : _f.label,
|
67
68
|
entity: this._entityName,
|
68
|
-
searchOptions: searchOptions
|
69
|
+
searchOptions: searchOptions,
|
70
|
+
criteria,
|
69
71
|
};
|
70
72
|
return this._application.executePreparedSearch(mode, argument, options);
|
71
73
|
}
|
package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js
CHANGED
@@ -10,7 +10,8 @@ export class SnkFilterMultiSelect {
|
|
10
10
|
* Emitido quando acontece a alteração de valor do componente snk-filter-multi-select
|
11
11
|
*/
|
12
12
|
ezChangeListener(evt) {
|
13
|
-
|
13
|
+
var _a;
|
14
|
+
this.value = (_a = evt.detail) === null || _a === void 0 ? void 0 : _a.value;
|
14
15
|
this.valueChanged.emit(this.value);
|
15
16
|
}
|
16
17
|
/**
|
@@ -55,8 +55,10 @@ export class SnkFilterPersonalized {
|
|
55
55
|
return this.presentationMode === EPresentationMode.MODAL;
|
56
56
|
}
|
57
57
|
doSearch(mode, argument, param) {
|
58
|
+
const context = Object.assign({}, param.searchContext);
|
59
|
+
context.searchOptions = Object.assign(Object.assign({}, context.searchOptions), { showInactives: "true" });
|
58
60
|
return new Promise((resolve, reject) => {
|
59
|
-
this._application.executePreparedSearch(mode, argument,
|
61
|
+
this._application.executePreparedSearch(mode, argument, context)
|
60
62
|
.then(result => {
|
61
63
|
resolve(result);
|
62
64
|
}).catch(reason => {
|
@@ -8,6 +8,7 @@ export class SnkFilterDetail {
|
|
8
8
|
constructor() {
|
9
9
|
this.config = undefined;
|
10
10
|
this.getMessage = undefined;
|
11
|
+
this.showHardFixed = true;
|
11
12
|
}
|
12
13
|
/**
|
13
14
|
* Exibe o componente snk-filter-detail.
|
@@ -85,7 +86,9 @@ export class SnkFilterDetail {
|
|
85
86
|
return Object.assign(Object.assign({}, item), { visible: false, fixed: false, value: undefined });
|
86
87
|
}
|
87
88
|
getPopUpHeaderButtons() {
|
88
|
-
return (h(Fragment, null, !this.config.removalBlocked &&
|
89
|
+
return (h(Fragment, null, !this.config.removalBlocked &&
|
90
|
+
this.buildIcon(this.getMessage("snkFilterBar.removeFilter"), "delete", () => this.removeItem()), this.showHardFixed && !this.config.hardFixed &&
|
91
|
+
this.buildIcon(this.getMessage(this.config.fixed ? "snkFilterBar.unpinFilter" : "snkFilterBar.pinFilter"), this.config.fixed ? "un-pin" : "push-pin", () => this.changeConfig(Object.assign(Object.assign({}, this.config), { fixed: !this.config.fixed })))));
|
89
92
|
}
|
90
93
|
buildIcon(title, iconName, action) {
|
91
94
|
return (h("button", { onClick: () => action(), class: "sc-snk-filter-bar snk-filter-item__editor-header-button", ref: elem => elem && this.buildIdButton(elem, title) }, h("ez-icon", Object.assign({ title: title, iconName: iconName }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`_${title}`)}` }))));
|
@@ -196,6 +199,24 @@ export class SnkFilterDetail {
|
|
196
199
|
"tags": [],
|
197
200
|
"text": "Usado pra flexibilizar os verbetes e mensagens de acordo com o SnkMessageBuilder."
|
198
201
|
}
|
202
|
+
},
|
203
|
+
"showHardFixed": {
|
204
|
+
"type": "boolean",
|
205
|
+
"mutable": false,
|
206
|
+
"complexType": {
|
207
|
+
"original": "boolean",
|
208
|
+
"resolved": "boolean",
|
209
|
+
"references": {}
|
210
|
+
},
|
211
|
+
"required": false,
|
212
|
+
"optional": false,
|
213
|
+
"docs": {
|
214
|
+
"tags": [],
|
215
|
+
"text": "Controla a visibilidade do bot\u00E3o de fixar elemento"
|
216
|
+
},
|
217
|
+
"attribute": "show-hard-fixed",
|
218
|
+
"reflect": false,
|
219
|
+
"defaultValue": "true"
|
199
220
|
}
|
200
221
|
};
|
201
222
|
}
|
@@ -14,6 +14,7 @@ export class SnkFilterItem {
|
|
14
14
|
this.detailIsVisible = undefined;
|
15
15
|
this.config = undefined;
|
16
16
|
this.getMessage = undefined;
|
17
|
+
this.showChips = true;
|
17
18
|
}
|
18
19
|
observeDetailIsVisible(value) {
|
19
20
|
this.visibleChanged.emit(value);
|
@@ -45,19 +46,22 @@ export class SnkFilterItem {
|
|
45
46
|
autoClose: true,
|
46
47
|
innerClickTest: this.innerClickCheck,
|
47
48
|
backClickListener: () => this.onDetailCloseCallback(),
|
48
|
-
left: this.
|
49
|
-
top: this.
|
49
|
+
left: this.getOffsetLeft(),
|
50
|
+
top: this.getOffsetTop(),
|
50
51
|
useOverlay: true,
|
51
52
|
overlayClassName: 'ez-scrim ez-scrim--light',
|
52
53
|
isFixed: true
|
53
54
|
};
|
54
55
|
}
|
55
|
-
|
56
|
+
getOffsetLeft() {
|
56
57
|
const padding = getComputedStyle(this._filterItemElement).getPropertyValue("padding-left");
|
57
58
|
const rect = this._filterItemElement.getBoundingClientRect();
|
58
|
-
|
59
|
+
// Width baseado no conteudo do snk-filter-detail. Nesse momento ele retorna 0px pois ainda não foi criado em tela.
|
60
|
+
const filterDetailWidth = 430;
|
61
|
+
const adjustRightPosition = filterDetailWidth - (document.body.clientWidth - rect.left);
|
62
|
+
return `calc(${rect.x}px + ${padding} - ${adjustRightPosition > 0 ? adjustRightPosition : 0}px)`;
|
59
63
|
}
|
60
|
-
|
64
|
+
getOffsetTop() {
|
61
65
|
const rect = this._filterItemElement.getBoundingClientRect();
|
62
66
|
return (rect.y + rect.height) + "px";
|
63
67
|
}
|
@@ -254,6 +258,9 @@ export class SnkFilterItem {
|
|
254
258
|
}
|
255
259
|
canClearFilter() {
|
256
260
|
const { value, groupedItems = [] } = this.config;
|
261
|
+
if (value != undefined && this.config.type === FilterItemType.MULTI_LIST) {
|
262
|
+
return value.some((item) => item.check);
|
263
|
+
}
|
257
264
|
return value !== undefined || groupedItems.some(item => item.visible);
|
258
265
|
}
|
259
266
|
getRightIconName() {
|
@@ -286,7 +293,7 @@ export class SnkFilterItem {
|
|
286
293
|
}
|
287
294
|
render() {
|
288
295
|
const leftIcon = this.getLeftIconName();
|
289
|
-
return (h(Host, null, h("ez-chip", { id: this.config.id, ref: ref => this._chipElement = ref, label: this.getLabel(), value: this.getEnabledChip() }, leftIcon
|
296
|
+
return (h(Host, null, this.showChips && (h("ez-chip", { id: this.config.id, ref: ref => this._chipElement = ref, label: this.getLabel(), value: this.getEnabledChip() }, leftIcon && (h("ez-icon", { ref: ref => this._leftIconElement = ref, iconName: leftIcon, class: "ez-padding-right--small", slot: "leftIcon" })), h("ez-icon", { ref: ref => this._rightIconElement = ref, iconName: this.getRightIconName(), class: "ez-padding-left--small", slot: "rightIcon", id: "removeFilter" }))), h("section", { class: "ez-margin-top--small sc-snk-filter-bar snk-filter__popover-container", ref: elem => this._popoverContainer = elem }, h("snk-filter-detail", { config: this.config, getMessage: this.getMessage, class: "sc-snk-filter-bar snk-filter__popover ez-padding--small ez-elevation--16", ref: elem => this._popover = elem, key: this.config.id, "data-element-id": this._idSnkFilterDetail, showHardFixed: this.showChips }))));
|
290
297
|
}
|
291
298
|
static get is() { return "snk-filter-item"; }
|
292
299
|
static get properties() {
|
@@ -324,6 +331,24 @@ export class SnkFilterItem {
|
|
324
331
|
"tags": [],
|
325
332
|
"text": "Usado pra flexibilizar os verbetes e mensagens de acordo com o SnkMessageBuilder."
|
326
333
|
}
|
334
|
+
},
|
335
|
+
"showChips": {
|
336
|
+
"type": "boolean",
|
337
|
+
"mutable": false,
|
338
|
+
"complexType": {
|
339
|
+
"original": "boolean",
|
340
|
+
"resolved": "boolean",
|
341
|
+
"references": {}
|
342
|
+
},
|
343
|
+
"required": false,
|
344
|
+
"optional": false,
|
345
|
+
"docs": {
|
346
|
+
"tags": [],
|
347
|
+
"text": "Usado para controlar a visibilidade dos chips de filtros"
|
348
|
+
},
|
349
|
+
"attribute": "show-chips",
|
350
|
+
"reflect": false,
|
351
|
+
"defaultValue": "true"
|
327
352
|
}
|
328
353
|
};
|
329
354
|
}
|
@@ -17,6 +17,7 @@ export class SnkFilterModal {
|
|
17
17
|
this.editPersonalizedFilter = undefined;
|
18
18
|
this.deletePersonalizedFilter = undefined;
|
19
19
|
this.filtersToDelete = [];
|
20
|
+
this.disablePersonalizedFilter = undefined;
|
20
21
|
}
|
21
22
|
/**
|
22
23
|
* Emitido quando um filtro personalizado é deletado.
|
@@ -233,7 +234,7 @@ export class SnkFilterModal {
|
|
233
234
|
const customFilters = this.filters.filter(filter => filter.filterType === FilterType.CUSTOM_FILTER);
|
234
235
|
const quickFilters = this.filters.filter(filter => filter.filterType === FilterType.QUICK_FILTER);
|
235
236
|
const otherFilters = this.filters.filter(filter => filter.filterType === FilterType.OTHER_FILTERS);
|
236
|
-
return (h("ez-modal-container", { class: "snk-filter-modal__container", modalTitle: this._modalTitle, cancelButtonLabel: this._cancelButtonLabel, okButtonLabel: this._okButtonLabel, onEzModalAction: this.modalActionListener.bind(this) }, h("div", { class: "snk-filter-modal__content ez-col--sd-12" }, this.renderCollapsibleFilterBox(this.getCustomMessage('customFilters'), customFilters, false, false), this.renderCollapsibleFilterBox(this.getCustomMessage('quickFilters'), quickFilters, false), otherFilters.map(filter => this.renderCollapsibleFilterBox(filter.label, [filter], true)))));
|
237
|
+
return (h("ez-modal-container", { class: "snk-filter-modal__container", modalTitle: this._modalTitle, cancelButtonLabel: this._cancelButtonLabel, okButtonLabel: this._okButtonLabel, onEzModalAction: this.modalActionListener.bind(this) }, h("div", { class: "snk-filter-modal__content ez-col--sd-12" }, !this.disablePersonalizedFilter && this.renderCollapsibleFilterBox(this.getCustomMessage('customFilters'), customFilters, false, false), this.renderCollapsibleFilterBox(this.getCustomMessage('quickFilters'), quickFilters, false), otherFilters.map(filter => this.renderCollapsibleFilterBox(filter.label, [filter], true)))));
|
237
238
|
}
|
238
239
|
static get is() { return "snk-filter-modal"; }
|
239
240
|
static get originalStyleUrls() {
|
@@ -411,6 +412,23 @@ export class SnkFilterModal {
|
|
411
412
|
"text": "Guarda filtros a serem deletados no Apply do modal"
|
412
413
|
},
|
413
414
|
"defaultValue": "[]"
|
415
|
+
},
|
416
|
+
"disablePersonalizedFilter": {
|
417
|
+
"type": "boolean",
|
418
|
+
"mutable": false,
|
419
|
+
"complexType": {
|
420
|
+
"original": "boolean",
|
421
|
+
"resolved": "boolean",
|
422
|
+
"references": {}
|
423
|
+
},
|
424
|
+
"required": false,
|
425
|
+
"optional": false,
|
426
|
+
"docs": {
|
427
|
+
"tags": [],
|
428
|
+
"text": "Desabilita a apresenta\u00E7\u00E3o da op\u00E7\u00E3o de filtros personalizados na filter bar (chip de filtros) \ne no modal lateral de filtros (container de filtros personalizados)."
|
429
|
+
},
|
430
|
+
"attribute": "disable-personalized-filter",
|
431
|
+
"reflect": false
|
414
432
|
}
|
415
433
|
};
|
416
434
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
:host {
|
2
2
|
display: grid;
|
3
|
-
grid-template-columns: minmax(100px, 100%) 1fr 1fr;
|
3
|
+
grid-template-columns: 1fr minmax(100px, 100%) 1fr 1fr;
|
4
4
|
|
5
5
|
/*@doc Define o z-index do componente.*/
|
6
6
|
--snk-personalized-filter--z-index: var(--elevation--20, 20);
|
@@ -8,6 +8,29 @@
|
|
8
8
|
--snk-personalized-filter--background-color: var(--background--xlight, #fff);
|
9
9
|
}
|
10
10
|
|
11
|
+
.snk-filter-bar__title {
|
12
|
+
max-width: 260px;
|
13
|
+
display: inline-block;
|
14
|
+
text-overflow: ellipsis;
|
15
|
+
overflow: hidden;
|
16
|
+
white-space: nowrap;
|
17
|
+
font-size: 16px;
|
18
|
+
font-family: var(--font-pattern, Arial);
|
19
|
+
font-weight: var(--text-weight--large, 600);
|
20
|
+
color: var(--color--title-primary, #2B3A54);
|
21
|
+
margin-top: 8px;
|
22
|
+
}
|
23
|
+
|
24
|
+
:host([data-mode="hidden"]) {
|
25
|
+
width: 0px;
|
26
|
+
height: 0px;
|
27
|
+
}
|
28
|
+
|
29
|
+
:host([data-mode="button"]) {
|
30
|
+
grid-template-columns: 1fr;
|
31
|
+
width: fit-content;
|
32
|
+
}
|
33
|
+
|
11
34
|
.snk-filter__popover-container{
|
12
35
|
/*private*/
|
13
36
|
display: flex;
|
@@ -11,6 +11,7 @@ export class SnkFilterBar {
|
|
11
11
|
this._updateSequence = [];
|
12
12
|
this._loadingPending = false;
|
13
13
|
this._configUpdated = false;
|
14
|
+
this._firstLoad = true;
|
14
15
|
this._pendingVariables = false;
|
15
16
|
this._customfiltersToBeUpdated = [];
|
16
17
|
this._calculateSortIndex = (item) => {
|
@@ -27,16 +28,26 @@ export class SnkFilterBar {
|
|
27
28
|
return this._calculateSortIndex(b) - this._calculateSortIndex(a);
|
28
29
|
};
|
29
30
|
this.dataUnit = undefined;
|
31
|
+
this.title = undefined;
|
30
32
|
this.configName = undefined;
|
31
33
|
this.resourceID = undefined;
|
34
|
+
this.mode = "regular";
|
32
35
|
this.filterConfig = undefined;
|
33
36
|
this.messagesBuilder = undefined;
|
37
|
+
this.disablePersonalizedFilter = undefined;
|
38
|
+
this.filterBarLegacyConfigName = undefined;
|
39
|
+
this.autoLoad = undefined;
|
34
40
|
this.allowDefault = undefined;
|
35
41
|
this.scrollerLocked = false;
|
36
42
|
this.showPersonalizedFilter = false;
|
37
43
|
this.personalizedFilterId = undefined;
|
38
44
|
}
|
39
45
|
observeFilterConfig(newValue, oldValue) {
|
46
|
+
if (ObjectUtils.equals(newValue, oldValue))
|
47
|
+
return;
|
48
|
+
this.handleFilterConfigsChanged(oldValue, newValue);
|
49
|
+
}
|
50
|
+
handleFilterConfigsChanged(oldValue, newValue) {
|
40
51
|
if (oldValue != undefined && newValue == undefined) {
|
41
52
|
this._loadingPending = true;
|
42
53
|
this._configUpdated = true;
|
@@ -164,13 +175,30 @@ export class SnkFilterBar {
|
|
164
175
|
return;
|
165
176
|
}
|
166
177
|
this._loadingPending = false;
|
167
|
-
this.dataUnit.
|
178
|
+
this.doLoadData(this.dataUnit.getLastLoadRequest() != undefined);
|
168
179
|
}
|
169
180
|
if (this._configUpdated) {
|
170
181
|
this._configUpdated = false;
|
171
182
|
ConfigStorage.saveFilterBarConfig(this.filterConfig, this.configName, this.resourceID);
|
172
183
|
}
|
173
184
|
}
|
185
|
+
async doLoadData(forceReload = false) {
|
186
|
+
try {
|
187
|
+
if (this._firstLoad && this.autoLoad === false) {
|
188
|
+
return;
|
189
|
+
}
|
190
|
+
if (this._firstLoad && !forceReload && this.autoLoad === undefined) {
|
191
|
+
let autoLoad = await this._application.getBooleanParam("global.carregar.registros.iniciar.tela");
|
192
|
+
if (!autoLoad) {
|
193
|
+
return;
|
194
|
+
}
|
195
|
+
}
|
196
|
+
this.dataUnit.loadData(undefined, undefined, true);
|
197
|
+
}
|
198
|
+
finally {
|
199
|
+
this._firstLoad = false;
|
200
|
+
}
|
201
|
+
}
|
174
202
|
/**
|
175
203
|
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
176
204
|
* através de um pequeno modulo na estrutura da aplicação:
|
@@ -179,6 +207,9 @@ export class SnkFilterBar {
|
|
179
207
|
*/
|
180
208
|
getMessage(key, params, defaultValue) {
|
181
209
|
var _a;
|
210
|
+
if (this.messagesBuilder == undefined && this._application) {
|
211
|
+
this.messagesBuilder = this._application.messagesBuilder;
|
212
|
+
}
|
182
213
|
return ((_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, params)) || defaultValue;
|
183
214
|
}
|
184
215
|
getFilter(_dataUnit) {
|
@@ -205,7 +236,7 @@ export class SnkFilterBar {
|
|
205
236
|
registryFilterProvider() {
|
206
237
|
this.dataUnit.addFilterProvider(this);
|
207
238
|
if (this.filterConfig) {
|
208
|
-
this.
|
239
|
+
this.doLoadData();
|
209
240
|
}
|
210
241
|
}
|
211
242
|
itemFocused(selectedItem) {
|
@@ -223,6 +254,17 @@ export class SnkFilterBar {
|
|
223
254
|
filterActiveFilter(item) {
|
224
255
|
return item.visible || item.removalBlocked;
|
225
256
|
}
|
257
|
+
filterPersonalizedItems(item) {
|
258
|
+
return item.type === FilterItemType.PERSONALIZED;
|
259
|
+
}
|
260
|
+
getPersonalizedFilterVariableItems() {
|
261
|
+
return this.filterConfig
|
262
|
+
.filter(this.filterPersonalizedItems)
|
263
|
+
.map(item => {
|
264
|
+
const itemId = `filter-${item.id}`;
|
265
|
+
return (h("snk-filter-item", { key: item.id, id: itemId, config: Object.assign({}, item), onFocusin: () => this.itemFocused(itemId), onVisibleChanged: (evt) => this.scrollerLocked = evt.detail, onFilterChange: (event) => this.updateFilter(event.detail), getMessage: (key, props) => this.getMessage(key, props), showChips: false }));
|
266
|
+
});
|
267
|
+
}
|
226
268
|
getFilterItems() {
|
227
269
|
const pinnedItems = [];
|
228
270
|
const unpinnedItems = [];
|
@@ -282,6 +324,11 @@ export class SnkFilterBar {
|
|
282
324
|
loadPermitions() {
|
283
325
|
this._application.isUserSup().then(value => this.allowDefault = value);
|
284
326
|
}
|
327
|
+
addFilterBarLegacyConfigName() {
|
328
|
+
if (this.filterBarLegacyConfigName && this.configName) {
|
329
|
+
ConfigStorage.addFilterBarLegacyConfig(this.configName, this.filterBarLegacyConfigName);
|
330
|
+
}
|
331
|
+
}
|
285
332
|
async loadConfigFromStorage(clearCache) {
|
286
333
|
if (clearCache) {
|
287
334
|
await ConfigStorage.deleteFilterBarConfigCache(this.configName, this.resourceID);
|
@@ -328,6 +375,9 @@ export class SnkFilterBar {
|
|
328
375
|
filterChangeListener(evt) {
|
329
376
|
this.updateFilter(evt.detail);
|
330
377
|
}
|
378
|
+
/**
|
379
|
+
* Abre o modal de filtros
|
380
|
+
*/
|
331
381
|
async showFilterModal() {
|
332
382
|
const callbackOnApplyFilter = (filters) => {
|
333
383
|
this.filterConfig = filters.map(this.normalizeItem).sort((a, b) => this._filtersComparator(a, b));
|
@@ -340,6 +390,7 @@ export class SnkFilterBar {
|
|
340
390
|
filterConfig: filtersConfigCopy,
|
341
391
|
configName: this.configName,
|
342
392
|
onComplete: callbackOnApplyFilter,
|
393
|
+
disablePersonalizedFilter: this.disablePersonalizedFilter,
|
343
394
|
getMessage: (key, props) => this.getMessage(key, props),
|
344
395
|
onAddPersonalizedFilter: () => this.addPersonalizedFilter(),
|
345
396
|
onEditPersonalizedFilter: (id) => this.editPersonalizedFilter(id),
|
@@ -384,6 +435,7 @@ export class SnkFilterBar {
|
|
384
435
|
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
385
436
|
if (this._application) {
|
386
437
|
this.loadPermitions();
|
438
|
+
this.addFilterBarLegacyConfigName();
|
387
439
|
this.loadConfigFromStorage();
|
388
440
|
}
|
389
441
|
this.attachDataUnit();
|
@@ -398,7 +450,10 @@ export class SnkFilterBar {
|
|
398
450
|
if (this.showPersonalizedFilter) {
|
399
451
|
return h("snk-personalized-filter", { class: "filter-bar__personalized-filter", filterId: this.personalizedFilterId, ref: (el) => this._elPersonalizedFilter = el, onEzCancel: () => this.handleHidePersonalizedFilter(false), onEzAfterSave: () => this.handleHidePersonalizedFilter(true), entityUri: this.dataUnit.name, configName: this.configName, resourceID: this.resourceID });
|
400
452
|
}
|
401
|
-
|
453
|
+
if (this.mode !== "regular") {
|
454
|
+
return (h(Host, { "data-mode": this.mode }, this.getPersonalizedFilterVariableItems(), this.mode === 'button' && (h("ez-button", { class: "ez-margin-left--medium", size: "small", label: this.getMessage('snkFilterBar.filters', undefined, 'Filtros'), onClick: this.showFilterModal.bind(this) }))));
|
455
|
+
}
|
456
|
+
return (h(Host, null, h("div", null, h("span", { class: "snk-filter-bar__title", title: this.title, "data-tooltip": this.title, "data-flow": "bottom" }, this.title)), h("ez-scroller", { class: "snk-filter-bar__scroller", direction: EzScrollDirection.HORIZONTAL, activeShadow: true, locked: this.scrollerLocked }, h("section", { class: "snk-filter-bar__filter-item-container" }, this.getFilterItems())), h("ez-button", { class: "ez-padding-left--medium", size: "small", label: this.getMessage('snkFilterBar.filters', undefined, 'Filtros'), onClick: this.showFilterModal.bind(this) }, h("ez-icon", { slot: "leftIcon", iconName: "plus", class: "ez-padding-right--small" }))));
|
402
457
|
}
|
403
458
|
static get is() { return "snk-filter-bar"; }
|
404
459
|
static get encapsulation() { return "scoped"; }
|
@@ -434,6 +489,23 @@ export class SnkFilterBar {
|
|
434
489
|
"text": "Recebe o DataUnit do ambiente. Se n\u00E3o for informado, procura pela refer\u00EAncia\ndo SnkDataUnit. Necess\u00E1rio para se registrar como provedor de filtros."
|
435
490
|
}
|
436
491
|
},
|
492
|
+
"title": {
|
493
|
+
"type": "string",
|
494
|
+
"mutable": false,
|
495
|
+
"complexType": {
|
496
|
+
"original": "string",
|
497
|
+
"resolved": "string",
|
498
|
+
"references": {}
|
499
|
+
},
|
500
|
+
"required": false,
|
501
|
+
"optional": false,
|
502
|
+
"docs": {
|
503
|
+
"tags": [],
|
504
|
+
"text": "T\u00EDtulo que ser\u00E1 apresentado na barra de filtros"
|
505
|
+
},
|
506
|
+
"attribute": "title",
|
507
|
+
"reflect": false
|
508
|
+
},
|
437
509
|
"configName": {
|
438
510
|
"type": "string",
|
439
511
|
"mutable": false,
|
@@ -468,6 +540,24 @@ export class SnkFilterBar {
|
|
468
540
|
"attribute": "resource-i-d",
|
469
541
|
"reflect": false
|
470
542
|
},
|
543
|
+
"mode": {
|
544
|
+
"type": "string",
|
545
|
+
"mutable": false,
|
546
|
+
"complexType": {
|
547
|
+
"original": "\"regular\" | \"button\" | \"hidden\"",
|
548
|
+
"resolved": "\"button\" | \"hidden\" | \"regular\"",
|
549
|
+
"references": {}
|
550
|
+
},
|
551
|
+
"required": false,
|
552
|
+
"optional": false,
|
553
|
+
"docs": {
|
554
|
+
"tags": [],
|
555
|
+
"text": "Modo de apresenta\u00E7\u00E3o da filterbar."
|
556
|
+
},
|
557
|
+
"attribute": "mode",
|
558
|
+
"reflect": false,
|
559
|
+
"defaultValue": "\"regular\""
|
560
|
+
},
|
471
561
|
"filterConfig": {
|
472
562
|
"type": "unknown",
|
473
563
|
"mutable": true,
|
@@ -510,6 +600,57 @@ export class SnkFilterBar {
|
|
510
600
|
"tags": [],
|
511
601
|
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
512
602
|
}
|
603
|
+
},
|
604
|
+
"disablePersonalizedFilter": {
|
605
|
+
"type": "boolean",
|
606
|
+
"mutable": false,
|
607
|
+
"complexType": {
|
608
|
+
"original": "boolean",
|
609
|
+
"resolved": "boolean",
|
610
|
+
"references": {}
|
611
|
+
},
|
612
|
+
"required": false,
|
613
|
+
"optional": false,
|
614
|
+
"docs": {
|
615
|
+
"tags": [],
|
616
|
+
"text": "Desabilita a apresenta\u00E7\u00E3o da op\u00E7\u00E3o de filtros personalizados na filter bar (chip de filtros)\ne no modal lateral de filtros (container de filtros personalizados)."
|
617
|
+
},
|
618
|
+
"attribute": "disable-personalized-filter",
|
619
|
+
"reflect": false
|
620
|
+
},
|
621
|
+
"filterBarLegacyConfigName": {
|
622
|
+
"type": "string",
|
623
|
+
"mutable": false,
|
624
|
+
"complexType": {
|
625
|
+
"original": "string",
|
626
|
+
"resolved": "string",
|
627
|
+
"references": {}
|
628
|
+
},
|
629
|
+
"required": false,
|
630
|
+
"optional": false,
|
631
|
+
"docs": {
|
632
|
+
"tags": [],
|
633
|
+
"text": "Chave da configura\u00E7\u00E3o legado da barra de filtros."
|
634
|
+
},
|
635
|
+
"attribute": "filter-bar-legacy-config-name",
|
636
|
+
"reflect": false
|
637
|
+
},
|
638
|
+
"autoLoad": {
|
639
|
+
"type": "boolean",
|
640
|
+
"mutable": false,
|
641
|
+
"complexType": {
|
642
|
+
"original": "boolean",
|
643
|
+
"resolved": "boolean",
|
644
|
+
"references": {}
|
645
|
+
},
|
646
|
+
"required": false,
|
647
|
+
"optional": true,
|
648
|
+
"docs": {
|
649
|
+
"tags": [],
|
650
|
+
"text": "Define se a carga dos dados ser\u00E1 feita assim que o componente for carregado."
|
651
|
+
},
|
652
|
+
"attribute": "auto-load",
|
653
|
+
"reflect": false
|
513
654
|
}
|
514
655
|
};
|
515
656
|
}
|
@@ -671,6 +812,37 @@ export class SnkFilterBar {
|
|
671
812
|
"text": "- Retorna o item de filtro removido, ou undefined caso n\u00E3o encontrado."
|
672
813
|
}]
|
673
814
|
}
|
815
|
+
},
|
816
|
+
"showFilterModal": {
|
817
|
+
"complexType": {
|
818
|
+
"signature": "() => Promise<void>",
|
819
|
+
"parameters": [],
|
820
|
+
"references": {
|
821
|
+
"Promise": {
|
822
|
+
"location": "global"
|
823
|
+
},
|
824
|
+
"SnkFilterItemConfig": {
|
825
|
+
"location": "import",
|
826
|
+
"path": "./filter-item/snk-filter-item"
|
827
|
+
},
|
828
|
+
"Array": {
|
829
|
+
"location": "global"
|
830
|
+
},
|
831
|
+
"SnkFilterModalFactoryParams": {
|
832
|
+
"location": "import",
|
833
|
+
"path": "./utils/SnkFilterModalFactory"
|
834
|
+
},
|
835
|
+
"IPersonalizedFilter": {
|
836
|
+
"location": "import",
|
837
|
+
"path": "../snk-personalized-filter/interfaces/IPersonalizedFilter"
|
838
|
+
}
|
839
|
+
},
|
840
|
+
"return": "Promise<void>"
|
841
|
+
},
|
842
|
+
"docs": {
|
843
|
+
"text": "Abre o modal de filtros",
|
844
|
+
"tags": []
|
845
|
+
}
|
674
846
|
}
|
675
847
|
};
|
676
848
|
}
|
@@ -1,10 +1,11 @@
|
|
1
1
|
import { ApplicationUtils } from "@sankhyalabs/ezui/dist/collection/utils";
|
2
2
|
class SnkFilterModalFactory {
|
3
|
-
constructor({ filterConfig, configName, onComplete, getMessage, onAddPersonalizedFilter, onEditPersonalizedFilter, onDeletePersonalizedFilter }) {
|
3
|
+
constructor({ filterConfig, configName, onComplete, getMessage, disablePersonalizedFilter, onAddPersonalizedFilter, onEditPersonalizedFilter, onDeletePersonalizedFilter }) {
|
4
4
|
this._filterConfig = filterConfig;
|
5
5
|
this._configName = configName;
|
6
6
|
this._onComplete = onComplete;
|
7
7
|
this._getMessage = getMessage;
|
8
|
+
this._disablePersonalizedFilter = disablePersonalizedFilter;
|
8
9
|
this._addPersonalizedFilterFn = onAddPersonalizedFilter;
|
9
10
|
this._editPersonalizedFilterFn = onEditPersonalizedFilter;
|
10
11
|
this._onDeletePersonalizedFilter = onDeletePersonalizedFilter;
|
@@ -18,6 +19,7 @@ class SnkFilterModalFactory {
|
|
18
19
|
filterModal.className = "ez-size-height--full";
|
19
20
|
filterModal.filters = this._filterConfig;
|
20
21
|
filterModal.configName = this._configName;
|
22
|
+
filterModal.disablePersonalizedFilter = this._disablePersonalizedFilter;
|
21
23
|
filterModal.getMessage = this._getMessage.bind(this);
|
22
24
|
filterModal.applyFilters = this.applyFilters.bind(this);
|
23
25
|
filterModal.closeModal = () => this._closeModal();
|