@sankhyalabs/sankhyablocks 10.1.0-dev.52 → 10.1.0-dev.54
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-a1fab5ca.js → ConfigStorage-4201dd3d.js} +2 -2
- package/dist/cjs/{DataFetcher-384d2ce8.js → DataFetcher-b3a8075d.js} +2830 -2
- package/dist/cjs/FormConfigHelper-c5f5473a.js +342 -0
- package/dist/cjs/{ISave-ecbe9336.js → ISave-4674c283.js} +1 -1
- package/dist/cjs/{PersonalizedFilterUtils-eccb267a.js → PersonalizedFilterUtils-263e4d24.js} +52 -5
- package/dist/cjs/{SnkFormConfigManager-44386305.js → SnkFormConfigManager-c3a49038.js} +2 -2
- package/dist/cjs/{SnkMultiSelectionListDataSource-d341dd02.js → SnkMultiSelectionListDataSource-3a13fd34.js} +4 -4
- package/dist/cjs/{auth-fetcher-6b134ec4.js → auth-fetcher-0ecc53ff.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-b9822794.js → dataunit-fetcher-c7e66f0d.js} +13 -4
- package/dist/cjs/{filter-type.enum-2bb46d2a.js → filter-type.enum-b3b388af.js} +7 -0
- package/dist/cjs/{form-config-fetcher-45d1964c.js → form-config-fetcher-f80dbc3b.js} +23 -5
- package/dist/cjs/index-1894343a.js +24 -36
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/pesquisa-grid_2.cjs.entry.js +4 -5
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-actions-button_9.cjs.entry.js +5 -6
- package/dist/cjs/snk-application.cjs.entry.js +7 -8
- package/dist/cjs/snk-attach_11.cjs.entry.js +2950 -0
- package/dist/cjs/snk-crud.cjs.entry.js +31 -243
- package/dist/cjs/snk-data-exporter.cjs.entry.js +5 -6
- package/dist/cjs/{snk-data-unit-4b6dc396.js → snk-data-unit-35f10e01.js} +11 -11
- package/dist/cjs/snk-data-unit.cjs.entry.js +3 -4
- package/dist/cjs/snk-detail-view.cjs.entry.js +9 -10
- package/dist/cjs/snk-dynaform-config-header_5.cjs.entry.js +739 -0
- package/dist/cjs/snk-dynaform-detail-view_2.cjs.entry.js +938 -0
- package/dist/cjs/snk-dynaform-field-config_2.cjs.entry.js +327 -0
- package/dist/cjs/snk-dynaform-guides-view-e98f7f3a.js +747 -0
- package/dist/cjs/snk-dynaform-guides-view.cjs.entry.js +23 -0
- package/dist/cjs/snk-dynaform.cjs.entry.js +675 -0
- 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 +41 -44
- package/dist/cjs/snk-form_2.cjs.entry.js +4 -5
- package/dist/cjs/snk-grid.cjs.entry.js +7 -8
- package/dist/cjs/{snk-guides-viewer-8e7a503b.js → snk-guides-viewer-3054d541.js} +1 -1
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +5 -6
- package/dist/cjs/snk-layout-form-config.cjs.entry.js +4 -5
- package/dist/cjs/snk-pesquisa.cjs.entry.js +4 -5
- package/dist/cjs/taskbarUtils-383c596e.js +231 -0
- package/dist/collection/collection-manifest.json +17 -0
- 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 +64 -0
- package/dist/collection/components/snk-dynaform/snk-dynaform.js +1657 -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 +112 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.js +992 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.css +64 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.js +588 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.css +98 -0
- package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.js +1167 -0
- package/dist/collection/components/snk-dynaform-form-config/FormConfigHelper.js +325 -0
- package/dist/collection/components/snk-dynaform-form-config/SnkFormConfigManager.js +212 -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-grid/snk-grid.css +4 -2
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -1
- package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +22 -4
- package/dist/components/dataunit-fetcher.js +11 -1
- package/dist/components/form-config-fetcher.js +22 -4
- package/dist/components/index.d.ts +12 -0
- package/dist/components/index.js +12 -0
- package/dist/components/snk-crud.js +1 -212
- 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 +1835 -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 +270 -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 +1003 -0
- package/dist/components/snk-grid2.js +1 -1
- package/dist/components/taskbarUtils.js +224 -0
- package/dist/esm/{ConfigStorage-76872695.js → ConfigStorage-e834d1ea.js} +2 -2
- package/dist/esm/{DataFetcher-e60f8d53.js → DataFetcher-5ed0a377.js} +2830 -3
- package/dist/esm/FormConfigHelper-efc29480.js +328 -0
- package/dist/esm/{ISave-4929c071.js → ISave-5b46d691.js} +1 -1
- package/dist/esm/{PersonalizedFilterUtils-d2439a9a.js → PersonalizedFilterUtils-45b5803c.js} +49 -2
- package/dist/esm/{SnkFormConfigManager-83f6b22f.js → SnkFormConfigManager-bfd575c2.js} +2 -2
- package/dist/esm/{SnkMultiSelectionListDataSource-18abafb1.js → SnkMultiSelectionListDataSource-22b50dd6.js} +4 -4
- package/dist/esm/{auth-fetcher-1a31c1e4.js → auth-fetcher-5283045d.js} +1 -1
- package/dist/esm/{dataunit-fetcher-c176e002.js → dataunit-fetcher-2200fdd6.js} +12 -3
- package/dist/esm/{filter-type.enum-f6a8fe23.js → filter-type.enum-62b7fe88.js} +8 -1
- package/dist/esm/{form-config-fetcher-b44b2727.js → form-config-fetcher-db1bf140.js} +23 -5
- package/dist/esm/index-04f73a26.js +24 -36
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pesquisa-grid_2.entry.js +4 -5
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-actions-button_9.entry.js +5 -6
- package/dist/esm/snk-application.entry.js +6 -7
- package/dist/esm/snk-attach_11.entry.js +2936 -0
- package/dist/esm/snk-crud.entry.js +6 -218
- package/dist/esm/snk-data-exporter.entry.js +5 -6
- package/dist/esm/{snk-data-unit-d8cfa950.js → snk-data-unit-e8bd4143.js} +2 -2
- package/dist/esm/snk-data-unit.entry.js +3 -4
- package/dist/esm/snk-detail-view.entry.js +7 -8
- package/dist/esm/snk-dynaform-config-header_5.entry.js +731 -0
- package/dist/esm/snk-dynaform-detail-view_2.entry.js +933 -0
- package/dist/esm/snk-dynaform-field-config_2.entry.js +322 -0
- package/dist/esm/snk-dynaform-guides-view-1f1455d6.js +744 -0
- package/dist/esm/snk-dynaform-guides-view.entry.js +15 -0
- package/dist/esm/snk-dynaform.entry.js +671 -0
- 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 +5 -8
- package/dist/esm/snk-form_2.entry.js +4 -5
- package/dist/esm/snk-grid.entry.js +7 -8
- package/dist/esm/{snk-guides-viewer-adf39ea2.js → snk-guides-viewer-95fefcaa.js} +1 -1
- package/dist/esm/snk-guides-viewer.entry.js +5 -6
- package/dist/esm/snk-layout-form-config.entry.js +4 -5
- package/dist/esm/snk-pesquisa.entry.js +4 -5
- package/dist/esm/taskbarUtils-682ca78c.js +225 -0
- package/dist/sankhyablocks/p-06b6c284.entry.js +1 -0
- package/dist/sankhyablocks/p-09e2255b.entry.js +1 -0
- package/dist/sankhyablocks/p-0dbd53d9.js +1 -0
- package/dist/sankhyablocks/{p-5c250661.js → p-1a04f537.js} +1 -1
- package/dist/sankhyablocks/{p-ab5e12fa.js → p-1cc4cf61.js} +1 -1
- package/dist/sankhyablocks/{p-f5ad0720.js → p-2040953e.js} +1 -1
- package/dist/sankhyablocks/p-22ddc1a5.entry.js +1 -0
- package/dist/sankhyablocks/p-24b059ee.entry.js +1 -0
- package/dist/sankhyablocks/p-2b581179.entry.js +1 -0
- package/dist/sankhyablocks/p-449dfe55.entry.js +1 -0
- package/dist/sankhyablocks/p-451b5bcc.entry.js +1 -0
- package/dist/sankhyablocks/p-46d7e2de.js +1 -0
- package/dist/sankhyablocks/{p-3c990841.js → p-51e853f2.js} +1 -1
- package/dist/sankhyablocks/p-51f1485c.entry.js +1 -0
- package/dist/sankhyablocks/p-58709cf9.js +1 -0
- package/dist/sankhyablocks/p-589016e2.entry.js +1 -0
- package/dist/sankhyablocks/p-5c6eede7.js +60 -0
- package/dist/sankhyablocks/p-5d02c032.js +1 -0
- package/dist/sankhyablocks/p-5d50f59a.entry.js +1 -0
- package/dist/sankhyablocks/p-670c43e3.entry.js +1 -0
- package/dist/sankhyablocks/{p-b1bb4cf1.js → p-70c2ee5c.js} +1 -1
- package/dist/sankhyablocks/p-77c26de0.js +1 -0
- package/dist/sankhyablocks/p-92c71225.entry.js +1 -0
- package/dist/sankhyablocks/p-9c89a76a.entry.js +1 -0
- package/dist/sankhyablocks/{p-4f7adf97.js → p-b1bf9564.js} +1 -1
- package/dist/sankhyablocks/p-c538bd6c.entry.js +1 -0
- package/dist/sankhyablocks/p-ccd61eb8.entry.js +1 -0
- package/dist/sankhyablocks/{p-3704bf1b.js → p-d5810110.js} +1 -1
- package/dist/sankhyablocks/p-d88278f8.js +28 -0
- package/dist/sankhyablocks/p-dc45e9e5.entry.js +1 -0
- package/dist/sankhyablocks/{p-8fe740b7.entry.js → p-dc83c70f.entry.js} +2 -2
- package/dist/sankhyablocks/p-e5362a5c.js +1 -0
- package/dist/sankhyablocks/p-edd44079.entry.js +1 -0
- package/dist/sankhyablocks/p-eff38390.entry.js +1 -0
- package/dist/sankhyablocks/p-ff28e5e4.entry.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- 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 +158 -0
- package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +107 -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.d.ts +2403 -1322
- package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +1 -0
- package/package.json +5 -1
- package/react/components.d.ts +12 -0
- package/react/components.js +12 -0
- package/react/components.js.map +1 -1
- package/dist/cjs/SnkMessageBuilder-a9300ebe.js +0 -2833
- 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 -948
- package/dist/cjs/snk-default-filter.cjs.entry.js +0 -77
- package/dist/cjs/snk-filter-advanced-mode_3.cjs.entry.js +0 -99
- 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 -160
- package/dist/cjs/snk-personalized-filter.cjs.entry.js +0 -358
- package/dist/cjs/snk-simple-crud.cjs.entry.js +0 -865
- package/dist/esm/SnkMessageBuilder-1eb7a1af.js +0 -2831
- 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 -944
- package/dist/esm/snk-default-filter.entry.js +0 -73
- package/dist/esm/snk-filter-advanced-mode_3.entry.js +0 -93
- 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 -156
- package/dist/esm/snk-personalized-filter.entry.js +0 -354
- package/dist/esm/snk-simple-crud.entry.js +0 -861
- package/dist/sankhyablocks/p-0a4cdcde.entry.js +0 -1
- package/dist/sankhyablocks/p-0afc64df.entry.js +0 -1
- package/dist/sankhyablocks/p-10f27dc6.entry.js +0 -1
- package/dist/sankhyablocks/p-20f03230.entry.js +0 -1
- package/dist/sankhyablocks/p-2af8aca3.js +0 -1
- package/dist/sankhyablocks/p-3870748a.js +0 -28
- package/dist/sankhyablocks/p-3d294185.entry.js +0 -1
- package/dist/sankhyablocks/p-438a225f.entry.js +0 -1
- package/dist/sankhyablocks/p-4d04bc75.entry.js +0 -1
- package/dist/sankhyablocks/p-554c0e54.js +0 -1
- package/dist/sankhyablocks/p-57c184a2.entry.js +0 -1
- package/dist/sankhyablocks/p-68c1a093.js +0 -1
- package/dist/sankhyablocks/p-6a4b21dd.js +0 -1
- package/dist/sankhyablocks/p-6ae7543b.entry.js +0 -1
- package/dist/sankhyablocks/p-6e278003.js +0 -60
- package/dist/sankhyablocks/p-82bcb4cf.entry.js +0 -1
- package/dist/sankhyablocks/p-84345e7a.js +0 -1
- package/dist/sankhyablocks/p-95af0bb1.entry.js +0 -1
- package/dist/sankhyablocks/p-a905712a.entry.js +0 -1
- package/dist/sankhyablocks/p-aff2d081.entry.js +0 -1
- package/dist/sankhyablocks/p-b0a357b4.entry.js +0 -1
- package/dist/sankhyablocks/p-b568c1d4.js +0 -1
- package/dist/sankhyablocks/p-bab4cde4.entry.js +0 -1
- package/dist/sankhyablocks/p-bd3c1aaa.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-d9ec8c4b.entry.js +0 -1
- package/dist/sankhyablocks/p-dbdbb77a.entry.js +0 -1
- package/dist/sankhyablocks/p-e8df1dea.entry.js +0 -1
- package/dist/sankhyablocks/p-ef9343c3.entry.js +0 -1
- package/dist/sankhyablocks/p-f4184ce7.js +0 -1
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
2
|
+
import { Action, UserInterface, ApplicationContext } from '@sankhyalabs/core';
|
|
3
|
+
import { focusOnFieldSerch, SEARCH_FIELD_FULL_WIDTH, FormLayout } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
4
|
+
import { DataBinder } from '@sankhyalabs/ezui/dist/collection/utils/form';
|
|
5
|
+
import { g as getPKs, d as defineCustomElement$1 } from './snk-image-input2.js';
|
|
6
|
+
|
|
7
|
+
const snkDynaformFormViewCss = ".sc-snk-dynaform-form-view-h{display:flex;flex-direction:column;width:100%;flex-wrap:wrap;background-color:var(--background--xlight);padding:var(--space--12, 12px);border-radius:var(--border--radius-medium);border:1px solid var(--color--petroleum-100, #C8CCD3);--ez-form-card-summary-field-content-weight:700}ez-form-view.sc-snk-dynaform-form-view{padding:var(--space--6 ,6px) 0;--ez-form-view__item--padding:0}.level-path.sc-snk-dynaform-form-view{color:var(--color--title-primary, #2B3A54);font-weight:var(--text-weight--medium, 400);padding-right:3px}.summary-wrapper.sc-snk-dynaform-form-view{display:flex;overflow:hidden}.summary-header.sc-snk-dynaform-form-view{border-bottom:1px solid var(--color--strokes);margin-bottom:var(--space--medium);padding-bottom:var(--space--medium)}.summary-container.sc-snk-dynaform-form-view{display:flex;flex-direction:column}.summary-container.sc-snk-dynaform-form-view{padding-right:calc(var(--space--extra-large) / 1.5)}.summary-field.sc-snk-dynaform-form-view{min-width:30px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-field__title.sc-snk-dynaform-form-view{color:var(--text--primary, #626e82);font-size:var(--title--small);white-space:nowrap;font-weight:var(--text-weight--medium)}.summary-field__content.sc-snk-dynaform-form-view{color:var(--title--primary, #2b3a54);font-size:var(--text--large);font-weight:var(--ez-form-card-summary-field-content-weight)}";
|
|
8
|
+
|
|
9
|
+
var __rest = (undefined && undefined.__rest) || function (s, e) {
|
|
10
|
+
var t = {};
|
|
11
|
+
for (var p in s)
|
|
12
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
13
|
+
t[p] = s[p];
|
|
14
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
15
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
16
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
17
|
+
t[p[i]] = s[p[i]];
|
|
18
|
+
}
|
|
19
|
+
return t;
|
|
20
|
+
};
|
|
21
|
+
const SnkDynaformFormView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
22
|
+
constructor() {
|
|
23
|
+
super();
|
|
24
|
+
this.__registerHost();
|
|
25
|
+
this.snkContentCardChanged = createEvent(this, "snkContentCardChanged", 7);
|
|
26
|
+
this.snkRequestClearFieldToFocus = createEvent(this, "snkRequestClearFieldToFocus", 7);
|
|
27
|
+
this._customEditors = new Map();
|
|
28
|
+
this._fieldProps = new Map();
|
|
29
|
+
this.dataUnitObserver = async (action) => {
|
|
30
|
+
var _a;
|
|
31
|
+
if (action.type === Action.RECORDS_COPIED) {
|
|
32
|
+
const sourcePK = this.buildSourceRecordPK(action);
|
|
33
|
+
(_a = this.getImageField()) === null || _a === void 0 ? void 0 : _a.forEach(async (field) => {
|
|
34
|
+
var _a;
|
|
35
|
+
(_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.setFieldValue(field.name, JSON.stringify(sourcePK));
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
this.customUiBuilders = new Map([
|
|
40
|
+
[UserInterface.IMAGE, (_a) => {
|
|
41
|
+
var { name } = _a, props = __rest(_a, ["name"]);
|
|
42
|
+
return h("snk-image-input", Object.assign({ dataUnit: this.dataUnit, maxSize: Infinity, fieldName: name, entityName: this.entityPath }, props));
|
|
43
|
+
}
|
|
44
|
+
]
|
|
45
|
+
]);
|
|
46
|
+
this._singleColumn = false;
|
|
47
|
+
this._currentFormLayout = undefined;
|
|
48
|
+
this.fieldSearch = undefined;
|
|
49
|
+
this.label = undefined;
|
|
50
|
+
this.name = undefined;
|
|
51
|
+
this.fields = undefined;
|
|
52
|
+
this.formMetadata = undefined;
|
|
53
|
+
this.dataUnit = undefined;
|
|
54
|
+
this.recordsValidator = undefined;
|
|
55
|
+
this.fieldToFocus = undefined;
|
|
56
|
+
this.customEditors = undefined;
|
|
57
|
+
this.fieldsProps = undefined;
|
|
58
|
+
this.entityPath = undefined;
|
|
59
|
+
}
|
|
60
|
+
async showUp() {
|
|
61
|
+
var _a, _b;
|
|
62
|
+
if (this._formView) {
|
|
63
|
+
(_b = (_a = this._formView).showUp) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Registra um editor customizado para campos da grade e formulário
|
|
68
|
+
*/
|
|
69
|
+
async addCustomEditor(fieldName, customEditor, detailContext) {
|
|
70
|
+
var _a, _b;
|
|
71
|
+
if (this._formView) {
|
|
72
|
+
(_b = (_a = this._formView).addCustomEditor) === null || _b === void 0 ? void 0 : _b.call(_a, fieldName, customEditor, detailContext);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const newCustomEditors = new Map(this._customEditors);
|
|
76
|
+
newCustomEditors.set(fieldName, { customEditor, detailContext: detailContext !== null && detailContext !== void 0 ? detailContext : "" });
|
|
77
|
+
this._customEditors = newCustomEditors;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Altera/adiciona uma propriedade nos metadados do campo.
|
|
81
|
+
*/
|
|
82
|
+
async setFieldProp(fieldName, propName, value) {
|
|
83
|
+
const props = this._fieldProps.get(fieldName) || [];
|
|
84
|
+
this._fieldProps.set(fieldName, [...props, { propName, value }]);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Exibe a busca de campos ancorada ao container de cabeçalho do snk-dynaform-form-view.
|
|
88
|
+
*/
|
|
89
|
+
async showSearchField() {
|
|
90
|
+
if (!this._headerContainer || !this._ezPopoverFieldColumn)
|
|
91
|
+
return;
|
|
92
|
+
const container = this._headerContainer.getBoundingClientRect();
|
|
93
|
+
if (this.fieldSearch) {
|
|
94
|
+
await focusOnFieldSerch(this.fieldSearch);
|
|
95
|
+
this._ezPopoverFieldColumn.showUnder(this._headerContainer, { horizontalGap: container.width - (SEARCH_FIELD_FULL_WIDTH), verticalGap: container.height * -1 });
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
observePropsCustomEditor(newValue) {
|
|
99
|
+
for (const fieldName in newValue) {
|
|
100
|
+
this.addCustomEditor(fieldName, newValue[fieldName]);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
async observeFieldsProps(newValue) {
|
|
104
|
+
for (const field in newValue) {
|
|
105
|
+
const fieldProps = newValue[field];
|
|
106
|
+
const propNames = Object.keys(fieldProps);
|
|
107
|
+
for (const propName of propNames) {
|
|
108
|
+
await this.setFieldProp(field, propName, fieldProps[propName]);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
async observeDataUnit(newValue, oldValue) {
|
|
113
|
+
if (newValue !== oldValue && newValue) {
|
|
114
|
+
newValue.subscribe(this.dataUnitObserver);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
bindFields(fields) {
|
|
118
|
+
var _a;
|
|
119
|
+
if (this._dataBinder == undefined && this.dataUnit != undefined) {
|
|
120
|
+
this._dataBinder = new DataBinder(this.dataUnit);
|
|
121
|
+
}
|
|
122
|
+
if (this._dataBinder && this.dataUnit && this.formMetadata) {
|
|
123
|
+
this._dataBinder.bind(fields, (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.dataUnitId, this.formMetadata, this.recordsValidator);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
disconnectedCallback() {
|
|
127
|
+
if (this._dataBinder != undefined) {
|
|
128
|
+
this._dataBinder.onDisconnectedCallback();
|
|
129
|
+
}
|
|
130
|
+
if (this.dataUnit) {
|
|
131
|
+
this.dataUnit.unsubscribe(this.dataUnitObserver);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
componentDidLoad() {
|
|
135
|
+
if (this.customEditors) {
|
|
136
|
+
this.observePropsCustomEditor(this.customEditors);
|
|
137
|
+
}
|
|
138
|
+
if (this.fieldsProps) {
|
|
139
|
+
this.observeFieldsProps(this.fieldsProps);
|
|
140
|
+
}
|
|
141
|
+
this.initLayoutFormConfig();
|
|
142
|
+
}
|
|
143
|
+
async initLayoutFormConfig() {
|
|
144
|
+
const _application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
|
145
|
+
const layoutFormConfig = await (_application === null || _application === void 0 ? void 0 : _application.getLayoutFormConfig());
|
|
146
|
+
if (layoutFormConfig) {
|
|
147
|
+
this.setSingleColumn(layoutFormConfig);
|
|
148
|
+
this.registerNotifyListeners(layoutFormConfig);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
setSingleColumn(layoutFormConfig) {
|
|
152
|
+
this._singleColumn = (layoutFormConfig === null || layoutFormConfig === void 0 ? void 0 : layoutFormConfig.config) === FormLayout.CASCADE || (layoutFormConfig === null || layoutFormConfig === void 0 ? void 0 : layoutFormConfig.config) === FormLayout.CLASSIC_CASCADE;
|
|
153
|
+
this._currentFormLayout = layoutFormConfig === null || layoutFormConfig === void 0 ? void 0 : layoutFormConfig.config;
|
|
154
|
+
}
|
|
155
|
+
registerNotifyListeners(layoutFormConfig) {
|
|
156
|
+
var _a;
|
|
157
|
+
if (!layoutFormConfig)
|
|
158
|
+
return;
|
|
159
|
+
(_a = layoutFormConfig.onConfigChange) === null || _a === void 0 ? void 0 : _a.call(layoutFormConfig, (config) => {
|
|
160
|
+
this._singleColumn = (config === FormLayout.CASCADE || config === FormLayout.CLASSIC_CASCADE);
|
|
161
|
+
this._currentFormLayout = config;
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
componentDidRender() {
|
|
165
|
+
var _a;
|
|
166
|
+
this.setCustomEditors();
|
|
167
|
+
this.setFieldProps();
|
|
168
|
+
if (!this.fieldToFocus) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
if (!((_a = this.fields) === null || _a === void 0 ? void 0 : _a.some(item => item.name === this.fieldToFocus))) {
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
requestAnimationFrame(() => {
|
|
175
|
+
var _a, _b;
|
|
176
|
+
(_a = this._dataBinder) === null || _a === void 0 ? void 0 : _a.setFocus(this.fieldToFocus);
|
|
177
|
+
(_b = this.snkRequestClearFieldToFocus) === null || _b === void 0 ? void 0 : _b.emit();
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
setCustomEditors() {
|
|
181
|
+
var _a, _b;
|
|
182
|
+
if (!this._formView) {
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
for (const [fieldName, customEditorProps] of this._customEditors) {
|
|
186
|
+
(_b = (_a = this._formView).addCustomEditor) === null || _b === void 0 ? void 0 : _b.call(_a, fieldName, customEditorProps.customEditor, customEditorProps.detailContext);
|
|
187
|
+
this._customEditors.delete(fieldName);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
setFieldProps() {
|
|
191
|
+
if (!this._formView) {
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
194
|
+
for (const [fieldName, propsToChange] of this._fieldProps) {
|
|
195
|
+
propsToChange.forEach(prop => {
|
|
196
|
+
var _a, _b;
|
|
197
|
+
(_b = (_a = this._formView).setFieldProp) === null || _b === void 0 ? void 0 : _b.call(_a, fieldName, prop.propName, prop.value);
|
|
198
|
+
this._fieldProps.delete(fieldName);
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
buildSourceRecordPK(action) {
|
|
203
|
+
var _a, _b, _c;
|
|
204
|
+
const currentRecord = ((_a = action.payload) === null || _a === void 0 ? void 0 : _a[0]) || {};
|
|
205
|
+
const sourceBase64 = currentRecord["__record__source__id__"];
|
|
206
|
+
const sourceRecord = JSON.parse(atob(sourceBase64 || ''));
|
|
207
|
+
delete sourceRecord["__DATA_UNIT_NAME__"];
|
|
208
|
+
if (!this.dataUnit) {
|
|
209
|
+
return {};
|
|
210
|
+
}
|
|
211
|
+
const pks = (_b = getPKs(this.dataUnit)) !== null && _b !== void 0 ? _b : {};
|
|
212
|
+
const pkFields = Object.keys(pks);
|
|
213
|
+
const filteredSourceRecord = {};
|
|
214
|
+
for (const pkField of pkFields) {
|
|
215
|
+
filteredSourceRecord[pkField] = (_c = sourceRecord[pkField]) === null || _c === void 0 ? void 0 : _c.value;
|
|
216
|
+
}
|
|
217
|
+
return filteredSourceRecord;
|
|
218
|
+
}
|
|
219
|
+
getImageField() {
|
|
220
|
+
var _a;
|
|
221
|
+
return (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.metadata.fields.filter(field => field.userInterface === UserInterface.IMAGE);
|
|
222
|
+
}
|
|
223
|
+
render() {
|
|
224
|
+
return (h(Host, null, h("slot", null), h("ez-form-view", { ref: (ref) => this._formView = ref, fields: this.fields, onEzContentReady: evt => this.bindFields(evt.detail), singleColumn: this._singleColumn, customUiBuilders: this.customUiBuilders, formLayout: this._currentFormLayout }), this.fieldSearch && h("ez-popover", { ref: elem => (this._ezPopoverFieldColumn = elem), overlayType: "none" }, this.fieldSearch)));
|
|
225
|
+
}
|
|
226
|
+
static get watchers() { return {
|
|
227
|
+
"customEditors": ["observePropsCustomEditor"],
|
|
228
|
+
"fieldsProps": ["observeFieldsProps"],
|
|
229
|
+
"dataUnit": ["observeDataUnit"]
|
|
230
|
+
}; }
|
|
231
|
+
static get style() { return snkDynaformFormViewCss; }
|
|
232
|
+
}, [6, "snk-dynaform-form-view", {
|
|
233
|
+
"fieldSearch": [16],
|
|
234
|
+
"label": [1],
|
|
235
|
+
"name": [1],
|
|
236
|
+
"fields": [16],
|
|
237
|
+
"formMetadata": [8, "form-metadata"],
|
|
238
|
+
"dataUnit": [16],
|
|
239
|
+
"recordsValidator": [16],
|
|
240
|
+
"fieldToFocus": [1, "field-to-focus"],
|
|
241
|
+
"customEditors": [16],
|
|
242
|
+
"fieldsProps": [16],
|
|
243
|
+
"entityPath": [1, "entity-path"],
|
|
244
|
+
"_singleColumn": [32],
|
|
245
|
+
"_currentFormLayout": [32],
|
|
246
|
+
"showUp": [64],
|
|
247
|
+
"addCustomEditor": [64],
|
|
248
|
+
"setFieldProp": [64],
|
|
249
|
+
"showSearchField": [64]
|
|
250
|
+
}]);
|
|
251
|
+
function defineCustomElement() {
|
|
252
|
+
if (typeof customElements === "undefined") {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
const components = ["snk-dynaform-form-view", "snk-image-input"];
|
|
256
|
+
components.forEach(tagName => { switch (tagName) {
|
|
257
|
+
case "snk-dynaform-form-view":
|
|
258
|
+
if (!customElements.get(tagName)) {
|
|
259
|
+
customElements.define(tagName, SnkDynaformFormView);
|
|
260
|
+
}
|
|
261
|
+
break;
|
|
262
|
+
case "snk-image-input":
|
|
263
|
+
if (!customElements.get(tagName)) {
|
|
264
|
+
defineCustomElement$1();
|
|
265
|
+
}
|
|
266
|
+
break;
|
|
267
|
+
} });
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
export { SnkDynaformFormView as S, defineCustomElement as d };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SnkDynaformGuidesConfigurator extends Components.SnkDynaformGuidesConfigurator, HTMLElement {}
|
|
4
|
+
export const SnkDynaformGuidesConfigurator: {
|
|
5
|
+
prototype: SnkDynaformGuidesConfigurator;
|
|
6
|
+
new (): SnkDynaformGuidesConfigurator;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { S as SnkDynaformGuidesConfigurator$1, d as defineCustomElement$1 } from './snk-dynaform-guides-configurator2.js';
|
|
2
|
+
|
|
3
|
+
const SnkDynaformGuidesConfigurator = SnkDynaformGuidesConfigurator$1;
|
|
4
|
+
const defineCustomElement = defineCustomElement$1;
|
|
5
|
+
|
|
6
|
+
export { SnkDynaformGuidesConfigurator, defineCustomElement };
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
|
|
2
|
+
import { ObjectUtils } from '@sankhyalabs/core';
|
|
3
|
+
import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
4
|
+
|
|
5
|
+
const snkDynaformGuidesConfiguratorCss = ".guides-tab-configurator.sc-snk-dynaform-guides-configurator{display:flex;flex-direction:column;width:100%;gap:var(--spece--8, 8px)}.tab-bar-row.sc-snk-dynaform-guides-configurator{display:flex;flex-direction:row;align-items:center;gap:var(--space--12, 12px);width:100%}.guides-tabselector.sc-snk-dynaform-guides-configurator{flex:1;min-width:0}.tab-actions.sc-snk-dynaform-guides-configurator{display:inline-flex;align-items:center;gap:var(--space--2, 2px);margin-left:var(--space--6, 6px)}.tab-actions.sc-snk-dynaform-guides-configurator ez-button.sc-snk-dynaform-guides-configurator{width:var(--space--20, 20px);align-items:center;justify-content:center;display:flex}.hidden-guides-bar.sc-snk-dynaform-guides-configurator{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space--8, 8px);padding:var(--space--8, 8px) 0;border-top:1px solid #dce0e8}.hidden-guides-label.sc-snk-dynaform-guides-configurator{font-size:var(--space--12, 12px);color:#afb6c0;white-space:nowrap}.hidden-guide-chip.sc-snk-dynaform-guides-configurator{display:flex;align-items:center;gap:4px;padding:2px var(--space--8, 8px);border:1px solid #dce0e8;border-radius:var(--space--12, 12px);background:#f5f7fa;transition:background 0.15s ease-in-out}.hidden-guide-chip.sc-snk-dynaform-guides-configurator:hover{background:#e2eaf4}.hidden-guide-chip.sc-snk-dynaform-guides-configurator ez-button.sc-snk-dynaform-guides-configurator{width:var(--space--20, 20px);align-items:center;justify-content:center;display:flex}.chip-label.sc-snk-dynaform-guides-configurator{font-size:13px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}";
|
|
6
|
+
|
|
7
|
+
const SnkDynaformGuidesConfigurator = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.__registerHost();
|
|
11
|
+
this.guideSelected = createEvent(this, "guideSelected", 7);
|
|
12
|
+
this.guideListChanged = createEvent(this, "guideListChanged", 7);
|
|
13
|
+
this.guideDeleted = createEvent(this, "guideDeleted", 7);
|
|
14
|
+
this.createNewGuide = createEvent(this, "createNewGuide", 7);
|
|
15
|
+
this.sortLogic = (a, b) => {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
const orderA = (_a = a.order) !== null && _a !== void 0 ? _a : Number.MAX_VALUE;
|
|
18
|
+
const orderB = (_b = b.order) !== null && _b !== void 0 ? _b : Number.MAX_VALUE;
|
|
19
|
+
return orderA - orderB;
|
|
20
|
+
};
|
|
21
|
+
this.handleAddGuide = () => {
|
|
22
|
+
this.createNewGuide.emit();
|
|
23
|
+
};
|
|
24
|
+
this.mainGuide = undefined;
|
|
25
|
+
this.visibleGuides = [];
|
|
26
|
+
this.hiddenGuides = [];
|
|
27
|
+
this.guidesList = [];
|
|
28
|
+
this.selectedGuide = undefined;
|
|
29
|
+
this.mainGuideName = undefined;
|
|
30
|
+
this.messagesBuilder = undefined;
|
|
31
|
+
}
|
|
32
|
+
observeGuidesList(newGuides) {
|
|
33
|
+
this.initGuidesConfig(newGuides);
|
|
34
|
+
}
|
|
35
|
+
observeMainGuideName() {
|
|
36
|
+
this.initGuidesConfig(this.guidesList);
|
|
37
|
+
}
|
|
38
|
+
observeSelectedGuide(newGuide) {
|
|
39
|
+
this.guideSelected.emit(newGuide);
|
|
40
|
+
}
|
|
41
|
+
componentWillLoad() {
|
|
42
|
+
this.initGuidesConfig(this.guidesList);
|
|
43
|
+
}
|
|
44
|
+
getMessage(key, params) {
|
|
45
|
+
return this.messagesBuilder.getMessage(key, params);
|
|
46
|
+
}
|
|
47
|
+
initGuidesConfig(newGuides) {
|
|
48
|
+
const mainName = this.mainGuideName;
|
|
49
|
+
const isMain = (guide) => !!mainName && guide.name === mainName;
|
|
50
|
+
const visibleAux = newGuides.filter(guide => guide.visible && !isMain(guide));
|
|
51
|
+
const hiddenAux = newGuides.filter(guide => !guide.visible && !isMain(guide));
|
|
52
|
+
this.visibleGuides = [...visibleAux].sort(this.sortLogic);
|
|
53
|
+
this.hiddenGuides = [...hiddenAux].sort(this.sortLogic);
|
|
54
|
+
this.mainGuide = newGuides.find(g => isMain(g));
|
|
55
|
+
}
|
|
56
|
+
handleSelectGuide(guide, evt) {
|
|
57
|
+
evt.stopPropagation();
|
|
58
|
+
this.selectedGuide = guide;
|
|
59
|
+
}
|
|
60
|
+
toggleGuideVisibility(guide, evt) {
|
|
61
|
+
evt.stopPropagation();
|
|
62
|
+
const updatedGuide = Object.assign(Object.assign({}, guide), { visible: !guide.visible });
|
|
63
|
+
let visibleAux;
|
|
64
|
+
let hiddenAux;
|
|
65
|
+
if (guide.visible) {
|
|
66
|
+
visibleAux = this.visibleGuides.filter(g => g.name !== guide.name);
|
|
67
|
+
hiddenAux = [...this.hiddenGuides, updatedGuide];
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
visibleAux = [...this.visibleGuides, updatedGuide];
|
|
71
|
+
hiddenAux = this.hiddenGuides.filter(g => g.name !== guide.name);
|
|
72
|
+
}
|
|
73
|
+
this.applyGuidesUpdate([...visibleAux, ...hiddenAux]);
|
|
74
|
+
}
|
|
75
|
+
adjustListOrder(guideList) {
|
|
76
|
+
return guideList.map((g, index) => (Object.assign(Object.assign({}, g), { order: index })));
|
|
77
|
+
}
|
|
78
|
+
applyGuidesUpdate(updatedGuideList) {
|
|
79
|
+
let newGuidesList = this.adjustListOrder(updatedGuideList);
|
|
80
|
+
if (this.mainGuide) {
|
|
81
|
+
newGuidesList = [this.mainGuide, ...newGuidesList];
|
|
82
|
+
}
|
|
83
|
+
if (!ObjectUtils.equals(newGuidesList, this.guidesList)) {
|
|
84
|
+
this.guideListChanged.emit(newGuidesList);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
async handleDeleteGuide(guide, e) {
|
|
88
|
+
e.stopPropagation();
|
|
89
|
+
const title = this.getMessage('snkFormConfig.confirm.title');
|
|
90
|
+
const message = this.getMessage('snkFormConfig.confirm.deleteGuide').replace('{0}', guide.label);
|
|
91
|
+
const canRemove = await ApplicationUtils.confirm(title, message);
|
|
92
|
+
if (!canRemove)
|
|
93
|
+
return;
|
|
94
|
+
this.guideDeleted.emit(guide);
|
|
95
|
+
const deletedMessage = this.getMessage('snkFormConfig.info.successfullyGuideDeleted').replace('{0}', guide.label);
|
|
96
|
+
ApplicationUtils.info(deletedMessage);
|
|
97
|
+
}
|
|
98
|
+
buildTabs() {
|
|
99
|
+
return this.visibleGuides.map((guide, i) => ({
|
|
100
|
+
tabKey: guide.name,
|
|
101
|
+
label: guide.label,
|
|
102
|
+
index: i,
|
|
103
|
+
}));
|
|
104
|
+
}
|
|
105
|
+
handleTabChange(tab) {
|
|
106
|
+
var _a;
|
|
107
|
+
if (!tab)
|
|
108
|
+
return;
|
|
109
|
+
const guide = this.guidesList.find(g => g.name === tab.tabKey);
|
|
110
|
+
if (guide && guide.name !== ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name)) {
|
|
111
|
+
this.selectedGuide = guide;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
handleReorder(reorderedTabs) {
|
|
115
|
+
const visibleReordered = reorderedTabs
|
|
116
|
+
.map(t => this.visibleGuides.find(g => g.name === t.tabKey))
|
|
117
|
+
.filter(Boolean);
|
|
118
|
+
this.applyGuidesUpdate([...visibleReordered, ...this.hiddenGuides]);
|
|
119
|
+
}
|
|
120
|
+
renderTabActions() {
|
|
121
|
+
return this.visibleGuides.map((guide, i) => {
|
|
122
|
+
const slotIndex = i;
|
|
123
|
+
const isProtected = guide.isCustom || guide.isDetail;
|
|
124
|
+
return (h("div", { key: guide.name, slot: `tab${slotIndex}`, class: "tab-actions", onClick: (e) => e.stopPropagation() }, h("ez-button", { mode: "icon", class: "ez-button--tertiary tab-action-btn", size: "small", iconName: "eye-off", title: this.getMessage('snkFormConfig.guidesConfigurator.actions.hide'), onClick: (e) => this.toggleGuideVisibility(guide, e) }), h("ez-button", { mode: "icon", class: "ez-button--tertiary tab-action-btn", size: "small", iconName: "delete", isDisabled: isProtected, title: isProtected
|
|
125
|
+
? this.getMessage('snkFormConfig.guidesConfigurator.canNotDeleteCustomGuide')
|
|
126
|
+
: this.getMessage('snkFormConfig.guidesConfigurator.actions.delete'), onClick: (e) => this.handleDeleteGuide(guide, e) })));
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
renderHiddenGuidesBar() {
|
|
130
|
+
if (this.hiddenGuides.length === 0)
|
|
131
|
+
return null;
|
|
132
|
+
return (h("div", { class: "hidden-guides-bar" }, h("span", { class: "hidden-guides-label" }, this.getMessage('snkFormConfig.guidesConfigurator.hiddenGuides'), ":"), this.hiddenGuides.map(guide => {
|
|
133
|
+
const isProtected = guide.isCustom || guide.isDetail;
|
|
134
|
+
return (h("div", { key: guide.name, class: "hidden-guide-chip", title: guide.label }, h("span", { class: "chip-label", onClick: (e) => this.handleSelectGuide(guide, e) }, guide.label), h("ez-button", { mode: "icon", class: "ez-button--tertiary", size: "small", iconName: "eye", title: this.getMessage('snkFormConfig.guidesConfigurator.actions.show'), onClick: (e) => this.toggleGuideVisibility(guide, e) }), h("ez-button", { mode: "icon", class: "ez-button--tertiary", size: "small", iconName: "delete", isDisabled: isProtected, title: isProtected
|
|
135
|
+
? this.getMessage('snkFormConfig.guidesConfigurator.canNotDeleteCustomGuide')
|
|
136
|
+
: this.getMessage('snkFormConfig.guidesConfigurator.actions.delete'), onClick: (e) => this.handleDeleteGuide(guide, e) })));
|
|
137
|
+
})));
|
|
138
|
+
}
|
|
139
|
+
render() {
|
|
140
|
+
var _a;
|
|
141
|
+
const tabs = this.buildTabs();
|
|
142
|
+
return (h("div", { class: "guides-tab-configurator" }, h("div", { class: "tab-bar-row" }, h("ez-tabselector", { class: "guides-tabselector", tabs: tabs, selectedTab: (_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.name, reorderable: true, onEzChange: (evt) => this.handleTabChange(evt.detail), onEzReorder: (evt) => this.handleReorder(evt.detail) }, this.renderTabActions()), h("ez-button", { label: this.getMessage('snkFormConfig.guidesConfigurator.createNewGuide'), variant: "secondary", size: "medium", leftIconName: "plus", onClick: this.handleAddGuide })), this.renderHiddenGuidesBar()));
|
|
143
|
+
}
|
|
144
|
+
static get watchers() { return {
|
|
145
|
+
"guidesList": ["observeGuidesList"],
|
|
146
|
+
"mainGuideName": ["observeMainGuideName"],
|
|
147
|
+
"selectedGuide": ["observeSelectedGuide"]
|
|
148
|
+
}; }
|
|
149
|
+
static get style() { return snkDynaformGuidesConfiguratorCss; }
|
|
150
|
+
}, [2, "snk-dynaform-guides-configurator", {
|
|
151
|
+
"guidesList": [16],
|
|
152
|
+
"selectedGuide": [16],
|
|
153
|
+
"mainGuideName": [1, "main-guide-name"],
|
|
154
|
+
"messagesBuilder": [1040],
|
|
155
|
+
"mainGuide": [32],
|
|
156
|
+
"visibleGuides": [32],
|
|
157
|
+
"hiddenGuides": [32]
|
|
158
|
+
}]);
|
|
159
|
+
function defineCustomElement() {
|
|
160
|
+
if (typeof customElements === "undefined") {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
const components = ["snk-dynaform-guides-configurator"];
|
|
164
|
+
components.forEach(tagName => { switch (tagName) {
|
|
165
|
+
case "snk-dynaform-guides-configurator":
|
|
166
|
+
if (!customElements.get(tagName)) {
|
|
167
|
+
customElements.define(tagName, SnkDynaformGuidesConfigurator);
|
|
168
|
+
}
|
|
169
|
+
break;
|
|
170
|
+
} });
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
export { SnkDynaformGuidesConfigurator as S, defineCustomElement as d };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SnkDynaformGuidesView extends Components.SnkDynaformGuidesView, HTMLElement {}
|
|
4
|
+
export const SnkDynaformGuidesView: {
|
|
5
|
+
prototype: SnkDynaformGuidesView;
|
|
6
|
+
new (): SnkDynaformGuidesView;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { b as SnkDynaformGuidesViewer, d as defineCustomElement$1 } from './snk-dynaform-detail-view2.js';
|
|
2
|
+
|
|
3
|
+
const SnkDynaformGuidesView = SnkDynaformGuidesViewer;
|
|
4
|
+
const defineCustomElement = defineCustomElement$1;
|
|
5
|
+
|
|
6
|
+
export { SnkDynaformGuidesView, defineCustomElement };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface SnkDynaform extends Components.SnkDynaform, HTMLElement {}
|
|
4
|
+
export const SnkDynaform: {
|
|
5
|
+
prototype: SnkDynaform;
|
|
6
|
+
new (): SnkDynaform;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|