geoiq-frontend-ui-kit 2.0.0 → 2.0.2
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/components/atoms/badge/badge.styles.d.ts +2 -2
- package/dist/components/atoms/button/button.styles.d.ts +2 -2
- package/dist/components/atoms/checkbox/checkbox.styles.d.ts +2 -2
- package/dist/components/atoms/switch/switch.styles.d.ts +2 -2
- package/dist/components/molecules/alert/alert.styles.d.ts +1 -1
- package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.d.ts +4 -0
- package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.d.ts.map +1 -0
- package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.types.d.ts +49 -0
- package/dist/components/molecules/creatable-multi-combobox/creatable-multi-combobox.types.d.ts.map +1 -0
- package/dist/components/molecules/creatable-multi-combobox/index.d.ts +4 -0
- package/dist/components/molecules/creatable-multi-combobox/index.d.ts.map +1 -0
- package/dist/components/molecules/single-select/index.d.ts.map +1 -1
- package/dist/components/molecules/single-select/single-select-components.d.ts +3 -1
- package/dist/components/molecules/single-select/single-select-components.d.ts.map +1 -1
- package/dist/components/molecules/single-select/single-select.types.d.ts +9 -0
- package/dist/components/molecules/single-select/single-select.types.d.ts.map +1 -1
- package/dist/components/molecules/split-button/split-button.styles.d.ts +3 -3
- package/dist/components/molecules/swatch-grid/index.d.ts +3 -0
- package/dist/components/molecules/swatch-grid/index.d.ts.map +1 -0
- package/dist/components/molecules/swatch-grid/swatch-grid.d.ts +4 -0
- package/dist/components/molecules/swatch-grid/swatch-grid.d.ts.map +1 -0
- package/dist/components/molecules/swatch-grid/swatch-grid.types.d.ts +17 -0
- package/dist/components/molecules/swatch-grid/swatch-grid.types.d.ts.map +1 -0
- package/dist/components/molecules/tabs/tabs.d.ts.map +1 -1
- package/dist/components/molecules/tabs/tabs.styles.d.ts +2 -2
- package/dist/components/molecules/tabs/tabs.types.d.ts +1 -0
- package/dist/components/molecules/tabs/tabs.types.d.ts.map +1 -1
- package/dist/components/organisms/dialog/dialog.d.ts +1 -1
- package/dist/components/organisms/dialog/dialog.d.ts.map +1 -1
- package/dist/components/organisms/dialog/dialog.types.d.ts +9 -0
- package/dist/components/organisms/dialog/dialog.types.d.ts.map +1 -1
- package/dist/components/organisms/image-editor/components/color-picker.d.ts +7 -0
- package/dist/components/organisms/image-editor/components/color-picker.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/layers-list.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/layers-list.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/panel-adjust.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/panel-adjust.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/panel-crop.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/panel-crop.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/panel-insert.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/panel-insert.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/panel-selected.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/panel-selected.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/panel.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/panel.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/portal-context.d.ts +3 -0
- package/dist/components/organisms/image-editor/components/portal-context.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/ribbon.d.ts +9 -0
- package/dist/components/organisms/image-editor/components/ribbon.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/shape-icons.d.ts +4 -0
- package/dist/components/organisms/image-editor/components/shape-icons.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/stage.d.ts +18 -0
- package/dist/components/organisms/image-editor/components/stage.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/components/status-bar.d.ts +6 -0
- package/dist/components/organisms/image-editor/components/status-bar.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/image-editor-modal.d.ts +10 -0
- package/dist/components/organisms/image-editor/image-editor-modal.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/image-editor.d.ts +5 -0
- package/dist/components/organisms/image-editor/image-editor.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/image-editor.types.d.ts +182 -0
- package/dist/components/organisms/image-editor/image-editor.types.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/index.d.ts +4 -0
- package/dist/components/organisms/image-editor/index.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/native-bridge.d.ts +3 -0
- package/dist/components/organisms/image-editor/native-bridge.d.ts.map +1 -0
- package/dist/components/organisms/image-editor/picture-studio-engine.d.ts +16 -0
- package/dist/components/organisms/image-editor/use-image-editor.d.ts +4 -0
- package/dist/components/organisms/image-editor/use-image-editor.d.ts.map +1 -0
- package/dist/components/organisms/navbar/navbar-desktop.d.ts.map +1 -1
- package/dist/components/organisms/navbar/navbar-extended.d.ts.map +1 -1
- package/dist/components/organisms/navbar/navbar-mobile.d.ts.map +1 -1
- package/dist/components/organisms/navbar/navbar.types.d.ts +17 -0
- package/dist/components/organisms/navbar/navbar.types.d.ts.map +1 -1
- package/dist/components/organisms/sheet/sheet.d.ts +1 -1
- package/dist/components/organisms/sheet/sheet.d.ts.map +1 -1
- package/dist/components/organisms/sheet/sheet.types.d.ts +1 -0
- package/dist/components/organisms/sheet/sheet.types.d.ts.map +1 -1
- package/dist/components/organisms/sidebar/sidebar-components.d.ts +1 -1
- package/dist/components/ui/brand-switcher/brand-switcher.d.ts +5 -0
- package/dist/components/ui/brand-switcher/brand-switcher.d.ts.map +1 -0
- package/dist/components/ui/brand-switcher/brand-switcher.types.d.ts +29 -0
- package/dist/components/ui/brand-switcher/brand-switcher.types.d.ts.map +1 -0
- package/dist/components/ui/brand-switcher/index.d.ts +3 -0
- package/dist/components/ui/brand-switcher/index.d.ts.map +1 -0
- package/dist/components/ui/credit-sheet/credit-sheet.d.ts.map +1 -1
- package/dist/components/ui/credit-sheet/credit-sheet.types.d.ts +3 -0
- package/dist/components/ui/credit-sheet/credit-sheet.types.d.ts.map +1 -1
- package/dist/components/ui/credits-indicator/credits-indicator.d.ts +6 -0
- package/dist/components/ui/credits-indicator/credits-indicator.d.ts.map +1 -0
- package/dist/components/ui/credits-indicator/credits-indicator.styles.d.ts +7 -0
- package/dist/components/ui/credits-indicator/credits-indicator.styles.d.ts.map +1 -0
- package/dist/components/ui/credits-indicator/credits-indicator.types.d.ts +14 -0
- package/dist/components/ui/credits-indicator/credits-indicator.types.d.ts.map +1 -0
- package/dist/components/ui/credits-indicator/index.d.ts +3 -0
- package/dist/components/ui/credits-indicator/index.d.ts.map +1 -0
- package/dist/components/ui/form-renderer/components/form-fields/components/multi-image-picker/index.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/components/form-fields/components/single-image-picker/index.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/components/form-fields/components/taggable-multi-image-picker/index.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/components/form-fields/components/taggable-multi-image-picker-with-input/index.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/components/form-fields/index.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/components/form-read-only-view.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/context/form-values/form-values.context.d.ts +4 -0
- package/dist/components/ui/form-renderer/context/form-values/form-values.context.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/context/form-values/form-values.provider.d.ts +2 -0
- package/dist/components/ui/form-renderer/context/form-values/form-values.provider.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/form-renderer.d.ts +10 -0
- package/dist/components/ui/form-renderer/form-renderer.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/form.enums.d.ts +1 -0
- package/dist/components/ui/form-renderer/form.enums.d.ts.map +1 -1
- package/dist/components/ui/form-renderer/form.types.d.ts +20 -1
- package/dist/components/ui/form-renderer/form.types.d.ts.map +1 -1
- package/dist/components/ui/map-marker-hover-card/components/map-cluster-hover-card.d.ts +1 -1
- package/dist/components/ui/map-marker-hover-card/components/map-cluster-hover-card.d.ts.map +1 -1
- package/dist/components/ui/report-snippet-view/report-snippet-view-components.d.ts.map +1 -1
- package/dist/components/ui/request-credits-view/component/request-credit-dialog.d.ts.map +1 -1
- package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts +3 -0
- package/dist/components/ui/request-credits-view/component/request-credit-dialog.types.d.ts.map +1 -1
- package/dist/components/ui/request-credits-view/index.d.ts +1 -0
- package/dist/components/ui/request-credits-view/index.d.ts.map +1 -1
- package/dist/components/ui/request-credits-view/request-credits-view.d.ts.map +1 -1
- package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts +3 -0
- package/dist/components/ui/request-credits-view/request-credits-view.types.d.ts.map +1 -1
- package/dist/components/unstyled/spinner/spinner.styles.d.ts +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +210 -193
- package/dist/index.es.js.map +1 -1
- package/dist/index.es10.js +30 -23
- package/dist/index.es10.js.map +1 -1
- package/dist/index.es100.js +120 -10
- package/dist/index.es100.js.map +1 -1
- package/dist/index.es101.js +16 -97
- package/dist/index.es101.js.map +1 -1
- package/dist/index.es102.js +41 -60
- package/dist/index.es102.js.map +1 -1
- package/dist/index.es103.js +13 -54
- package/dist/index.es103.js.map +1 -1
- package/dist/index.es104.js +68 -5
- package/dist/index.es104.js.map +1 -1
- package/dist/index.es105.js +32 -9
- package/dist/index.es105.js.map +1 -1
- package/dist/index.es106.js +19 -32
- package/dist/index.es106.js.map +1 -1
- package/dist/index.es107.js +18 -61
- package/dist/index.es107.js.map +1 -1
- package/dist/index.es108.js +12 -22
- package/dist/index.es108.js.map +1 -1
- package/dist/index.es109.js +98 -22
- package/dist/index.es109.js.map +1 -1
- package/dist/index.es11.js +77 -25
- package/dist/index.es11.js.map +1 -1
- package/dist/index.es110.js +62 -21
- package/dist/index.es110.js.map +1 -1
- package/dist/index.es111.js +48 -174
- package/dist/index.es111.js.map +1 -1
- package/dist/index.es112.js +39 -37
- package/dist/index.es112.js.map +1 -1
- package/dist/index.es113.js +10 -40
- package/dist/index.es113.js.map +1 -1
- package/dist/index.es114.js +88 -37
- package/dist/index.es114.js.map +1 -1
- package/dist/index.es115.js +15 -13
- package/dist/index.es115.js.map +1 -1
- package/dist/index.es116.js +88 -261
- package/dist/index.es116.js.map +1 -1
- package/dist/index.es117.js +14 -9
- package/dist/index.es117.js.map +1 -1
- package/dist/index.es118.js +101 -67
- package/dist/index.es118.js.map +1 -1
- package/dist/index.es119.js +23 -185
- package/dist/index.es119.js.map +1 -1
- package/dist/index.es12.js +26 -14
- package/dist/index.es12.js.map +1 -1
- package/dist/index.es120.js +25 -23
- package/dist/index.es120.js.map +1 -1
- package/dist/index.es121.js +22 -177
- package/dist/index.es121.js.map +1 -1
- package/dist/index.es122.js +43 -7
- package/dist/index.es122.js.map +1 -1
- package/dist/index.es123.js +32 -84
- package/dist/index.es123.js.map +1 -1
- package/dist/index.es124.js +63 -37
- package/dist/index.es124.js.map +1 -1
- package/dist/index.es125.js +180 -11
- package/dist/index.es125.js.map +1 -1
- package/dist/index.es126.js +13 -35
- package/dist/index.es126.js.map +1 -1
- package/dist/index.es127.js +9 -16
- package/dist/index.es127.js.map +1 -1
- package/dist/index.es128.js +68 -5
- package/dist/index.es128.js.map +1 -1
- package/dist/index.es129.js +185 -10
- package/dist/index.es129.js.map +1 -1
- package/dist/index.es13.js +27 -19
- package/dist/index.es13.js.map +1 -1
- package/dist/index.es130.js +22 -10
- package/dist/index.es130.js.map +1 -1
- package/dist/index.es131.js +203 -2
- package/dist/index.es131.js.map +1 -1
- package/dist/index.es132.js +40 -22
- package/dist/index.es132.js.map +1 -1
- package/dist/index.es133.js +11 -257
- package/dist/index.es133.js.map +1 -1
- package/dist/index.es134.js +7 -35
- package/dist/index.es134.js.map +1 -1
- package/dist/index.es135.js +34 -8
- package/dist/index.es135.js.map +1 -1
- package/dist/index.es136.js +36 -78
- package/dist/index.es136.js.map +1 -1
- package/dist/index.es137.js +2 -76
- package/dist/index.es137.js.map +1 -1
- package/dist/index.es138.js +21 -110
- package/dist/index.es138.js.map +1 -1
- package/dist/index.es139.js +14 -107
- package/dist/index.es139.js.map +1 -1
- package/dist/index.es14.js +16 -46
- package/dist/index.es14.js.map +1 -1
- package/dist/index.es140.js +7 -87
- package/dist/index.es140.js.map +1 -1
- package/dist/index.es141.js +21 -128
- package/dist/index.es141.js.map +1 -1
- package/dist/index.es142.js +155 -114
- package/dist/index.es142.js.map +1 -1
- package/dist/index.es143.js +82 -6
- package/dist/index.es143.js.map +1 -1
- package/dist/index.es144.js +8 -0
- package/dist/index.es144.js.map +1 -0
- package/dist/index.es145.js +59 -0
- package/dist/index.es145.js.map +1 -0
- package/dist/index.es146.js +120 -0
- package/dist/index.es146.js.map +1 -0
- package/dist/index.es147.js +325 -0
- package/dist/index.es147.js.map +1 -0
- package/dist/index.es148.js +31 -0
- package/dist/index.es148.js.map +1 -0
- package/dist/index.es149.js +71 -0
- package/dist/index.es149.js.map +1 -0
- package/dist/index.es15.js +18 -21
- package/dist/index.es15.js.map +1 -1
- package/dist/index.es150.js +35 -0
- package/dist/index.es150.js.map +1 -0
- package/dist/index.es151.js +28 -0
- package/dist/index.es151.js.map +1 -0
- package/dist/index.es152.js +41 -0
- package/dist/index.es152.js.map +1 -0
- package/dist/index.es153.js +146 -0
- package/dist/index.es153.js.map +1 -0
- package/dist/index.es154.js +147 -0
- package/dist/index.es154.js.map +1 -0
- package/dist/index.es155.js +50 -0
- package/dist/index.es155.js.map +1 -0
- package/dist/index.es156.js +15 -0
- package/dist/index.es156.js.map +1 -0
- package/dist/index.es157.js +47 -0
- package/dist/index.es157.js.map +1 -0
- package/dist/index.es158.js +8 -0
- package/dist/index.es158.js.map +1 -0
- package/dist/index.es159.js +14 -0
- package/dist/index.es159.js.map +1 -0
- package/dist/index.es16.js +44 -22
- package/dist/index.es16.js.map +1 -1
- package/dist/index.es160.js +14 -0
- package/dist/index.es160.js.map +1 -0
- package/dist/index.es161.js +5 -0
- package/dist/index.es161.js.map +1 -0
- package/dist/index.es162.js +94 -0
- package/dist/index.es162.js.map +1 -0
- package/dist/index.es163.js +216 -0
- package/dist/index.es163.js.map +1 -0
- package/dist/index.es164.js +57 -0
- package/dist/index.es164.js.map +1 -0
- package/dist/index.es165.js +39 -0
- package/dist/index.es165.js.map +1 -0
- package/dist/index.es166.js +36 -0
- package/dist/index.es166.js.map +1 -0
- package/dist/index.es167.js +36 -0
- package/dist/index.es167.js.map +1 -0
- package/dist/index.es168.js +94 -0
- package/dist/index.es168.js.map +1 -0
- package/dist/index.es169.js +120 -0
- package/dist/index.es169.js.map +1 -0
- package/dist/index.es17.js +22 -20
- package/dist/index.es17.js.map +1 -1
- package/dist/index.es170.js +289 -0
- package/dist/index.es170.js.map +1 -0
- package/dist/index.es171.js +38 -0
- package/dist/index.es171.js.map +1 -0
- package/dist/index.es172.js +14 -0
- package/dist/index.es172.js.map +1 -0
- package/dist/index.es173.js +87 -0
- package/dist/index.es173.js.map +1 -0
- package/dist/index.es174.js +79 -0
- package/dist/index.es174.js.map +1 -0
- package/dist/index.es175.js +118 -0
- package/dist/index.es175.js.map +1 -0
- package/dist/index.es176.js +112 -0
- package/dist/index.es176.js.map +1 -0
- package/dist/index.es177.js +90 -0
- package/dist/index.es177.js.map +1 -0
- package/dist/index.es178.js +133 -0
- package/dist/index.es178.js.map +1 -0
- package/dist/index.es179.js +133 -0
- package/dist/index.es179.js.map +1 -0
- package/dist/index.es18.js +23 -73
- package/dist/index.es18.js.map +1 -1
- package/dist/index.es180.js +29 -0
- package/dist/index.es180.js.map +1 -0
- package/dist/index.es181.js +27 -0
- package/dist/index.es181.js.map +1 -0
- package/dist/index.es182.js +9 -0
- package/dist/index.es182.js.map +1 -0
- package/dist/index.es19.js +18 -48
- package/dist/index.es19.js.map +1 -1
- package/dist/index.es2.js +120 -22
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es20.js +70 -45
- package/dist/index.es20.js.map +1 -1
- package/dist/index.es21.js +43 -122
- package/dist/index.es21.js.map +1 -1
- package/dist/index.es22.js +39 -96
- package/dist/index.es22.js.map +1 -1
- package/dist/index.es23.js +113 -152
- package/dist/index.es23.js.map +1 -1
- package/dist/index.es24.js +98 -64
- package/dist/index.es24.js.map +1 -1
- package/dist/index.es25.js +160 -77
- package/dist/index.es25.js.map +1 -1
- package/dist/index.es26.js +69 -51
- package/dist/index.es26.js.map +1 -1
- package/dist/index.es27.js +82 -17
- package/dist/index.es27.js.map +1 -1
- package/dist/index.es28.js +274 -2
- package/dist/index.es28.js.map +1 -1
- package/dist/index.es29.js +55 -5
- package/dist/index.es29.js.map +1 -1
- package/dist/index.es3.js +40 -41
- package/dist/index.es3.js.map +1 -1
- package/dist/index.es30.js +16 -75
- package/dist/index.es30.js.map +1 -1
- package/dist/index.es31.js +2 -28
- package/dist/index.es31.js.map +1 -1
- package/dist/index.es32.js +4 -84
- package/dist/index.es32.js.map +1 -1
- package/dist/index.es33.js +72 -43
- package/dist/index.es33.js.map +1 -1
- package/dist/index.es34.js +25 -68
- package/dist/index.es34.js.map +1 -1
- package/dist/index.es35.js +85 -12
- package/dist/index.es35.js.map +1 -1
- package/dist/index.es36.js +47 -85
- package/dist/index.es36.js.map +1 -1
- package/dist/index.es37.js +63 -32
- package/dist/index.es37.js.map +1 -1
- package/dist/index.es38.js +49 -40
- package/dist/index.es38.js.map +1 -1
- package/dist/index.es39.js +12 -98
- package/dist/index.es39.js.map +1 -1
- package/dist/index.es4.js +17 -17
- package/dist/index.es4.js.map +1 -1
- package/dist/index.es40.js +81 -156
- package/dist/index.es40.js.map +1 -1
- package/dist/index.es41.js +39 -226
- package/dist/index.es41.js.map +1 -1
- package/dist/index.es42.js +40 -269
- package/dist/index.es42.js.map +1 -1
- package/dist/index.es43.js +97 -21
- package/dist/index.es43.js.map +1 -1
- package/dist/index.es44.js +15 -9
- package/dist/index.es44.js.map +1 -1
- package/dist/index.es45.js +64 -20
- package/dist/index.es45.js.map +1 -1
- package/dist/index.es46.js +159 -61
- package/dist/index.es46.js.map +1 -1
- package/dist/index.es47.js +226 -123
- package/dist/index.es47.js.map +1 -1
- package/dist/index.es48.js +300 -109
- package/dist/index.es48.js.map +1 -1
- package/dist/index.es49.js +19 -31
- package/dist/index.es49.js.map +1 -1
- package/dist/index.es5.js +33 -31
- package/dist/index.es5.js.map +1 -1
- package/dist/index.es50.js +8 -142
- package/dist/index.es50.js.map +1 -1
- package/dist/index.es51.js +18 -70
- package/dist/index.es51.js.map +1 -1
- package/dist/index.es52.js +69 -21
- package/dist/index.es52.js.map +1 -1
- package/dist/index.es53.js +143 -103
- package/dist/index.es53.js.map +1 -1
- package/dist/index.es54.js +123 -11
- package/dist/index.es54.js.map +1 -1
- package/dist/index.es55.js +103 -18
- package/dist/index.es55.js.map +1 -1
- package/dist/index.es56.js +73 -11
- package/dist/index.es56.js.map +1 -1
- package/dist/index.es57.js +141 -16
- package/dist/index.es57.js.map +1 -1
- package/dist/index.es58.js +67 -40
- package/dist/index.es58.js.map +1 -1
- package/dist/index.es59.js +22 -86
- package/dist/index.es59.js.map +1 -1
- package/dist/index.es6.js +19 -23
- package/dist/index.es6.js.map +1 -1
- package/dist/index.es60.js +104 -7
- package/dist/index.es60.js.map +1 -1
- package/dist/index.es61.js +11 -41
- package/dist/index.es61.js.map +1 -1
- package/dist/index.es62.js +19 -79
- package/dist/index.es62.js.map +1 -1
- package/dist/index.es63.js +10 -35
- package/dist/index.es63.js.map +1 -1
- package/dist/index.es64.js +16 -86
- package/dist/index.es64.js.map +1 -1
- package/dist/index.es65.js +43 -58
- package/dist/index.es65.js.map +1 -1
- package/dist/index.es66.js +86 -69
- package/dist/index.es66.js.map +1 -1
- package/dist/index.es67.js +7 -32
- package/dist/index.es67.js.map +1 -1
- package/dist/index.es68.js +39 -65
- package/dist/index.es68.js.map +1 -1
- package/dist/index.es69.js +79 -28
- package/dist/index.es69.js.map +1 -1
- package/dist/index.es7.js +38 -43
- package/dist/index.es7.js.map +1 -1
- package/dist/index.es70.js +66 -84
- package/dist/index.es70.js.map +1 -1
- package/dist/index.es71.js +88 -11
- package/dist/index.es71.js.map +1 -1
- package/dist/index.es72.js +59 -46
- package/dist/index.es72.js.map +1 -1
- package/dist/index.es73.js +65 -108
- package/dist/index.es73.js.map +1 -1
- package/dist/index.es74.js +30 -15
- package/dist/index.es74.js.map +1 -1
- package/dist/index.es75.js +56 -35
- package/dist/index.es75.js.map +1 -1
- package/dist/index.es76.js +18 -19
- package/dist/index.es76.js.map +1 -1
- package/dist/index.es77.js +30 -38
- package/dist/index.es77.js.map +1 -1
- package/dist/index.es78.js +85 -28
- package/dist/index.es78.js.map +1 -1
- package/dist/index.es79.js +10 -94
- package/dist/index.es79.js.map +1 -1
- package/dist/index.es8.js +26 -33
- package/dist/index.es8.js.map +1 -1
- package/dist/index.es80.js +47 -2
- package/dist/index.es80.js.map +1 -1
- package/dist/index.es81.js +113 -6
- package/dist/index.es81.js.map +1 -1
- package/dist/index.es82.js +16 -26
- package/dist/index.es82.js.map +1 -1
- package/dist/index.es83.js +42 -109
- package/dist/index.es83.js.map +1 -1
- package/dist/index.es84.js +27 -22
- package/dist/index.es84.js.map +1 -1
- package/dist/index.es85.js +39 -18
- package/dist/index.es85.js.map +1 -1
- package/dist/index.es86.js +27 -18
- package/dist/index.es86.js.map +1 -1
- package/dist/index.es87.js +94 -18
- package/dist/index.es87.js.map +1 -1
- package/dist/index.es88.js +1 -18
- package/dist/index.es88.js.map +1 -1
- package/dist/index.es89.js +6 -49
- package/dist/index.es89.js.map +1 -1
- package/dist/index.es9.js +37 -72
- package/dist/index.es9.js.map +1 -1
- package/dist/index.es90.js +23 -84
- package/dist/index.es90.js.map +1 -1
- package/dist/index.es91.js +96 -99
- package/dist/index.es91.js.map +1 -1
- package/dist/index.es92.js +24 -16
- package/dist/index.es92.js.map +1 -1
- package/dist/index.es93.js +16 -22
- package/dist/index.es93.js.map +1 -1
- package/dist/index.es94.js +17 -100
- package/dist/index.es94.js.map +1 -1
- package/dist/index.es95.js +16 -71
- package/dist/index.es95.js.map +1 -1
- package/dist/index.es96.js +16 -42
- package/dist/index.es96.js.map +1 -1
- package/dist/index.es97.js +9 -32
- package/dist/index.es97.js.map +1 -1
- package/dist/index.es98.js +269 -15
- package/dist/index.es98.js.map +1 -1
- package/dist/index.es99.js +85 -17
- package/dist/index.es99.js.map +1 -1
- package/dist/lib/constants.d.ts +2 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/styles.css +363 -31
- package/dist/ui-kit-preset.js +2 -1
- package/package.json +1 -1
package/dist/index.es129.js
CHANGED
|
@@ -1,14 +1,189 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { Typography as s } from "./index.es19.js";
|
|
3
|
+
import { Checkbox as N } from "@radix-ui/react-checkbox";
|
|
4
|
+
import { AccordionDemo as I } from "./index.es4.js";
|
|
5
|
+
import { Badge as b } from "./index.es8.js";
|
|
6
|
+
import { FormFieldType as a } from "./index.es161.js";
|
|
7
|
+
const x = ({
|
|
8
|
+
structure: u,
|
|
9
|
+
values: o
|
|
10
|
+
}) => {
|
|
11
|
+
const E = (r, n) => {
|
|
12
|
+
if (r.type === a.REPEATABLE_GROUP_FIELD) {
|
|
13
|
+
const t = `${r.id}||`, c = /* @__PURE__ */ new Set();
|
|
14
|
+
Object.keys(o).forEach((i) => {
|
|
15
|
+
if (i.startsWith(t)) {
|
|
16
|
+
const m = i.match(new RegExp(`^${r.id}\\|\\|(\\d+)\\|\\|`));
|
|
17
|
+
m && m[1] && c.add(parseInt(m[1]));
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
const l = Array.from(c).sort((i, m) => i - m);
|
|
21
|
+
return l.length === 0 ? [] : l.flatMap((i) => r.options.map((m) => {
|
|
22
|
+
const d = `${r.id}||${i}||${m.id}`, _ = o[d], p = {
|
|
23
|
+
...m,
|
|
24
|
+
id: d
|
|
25
|
+
};
|
|
26
|
+
return /* @__PURE__ */ e.createElement(e.Fragment, { key: d }, g(p), E(p, _));
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
29
|
+
if (n == null || n === "")
|
|
30
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-4" }, "Not answered");
|
|
31
|
+
switch (r.type) {
|
|
32
|
+
case a.SHORT_TEXT:
|
|
33
|
+
case a.LONG_TEXT:
|
|
34
|
+
case a.EMAIL:
|
|
35
|
+
case a.NUMBER:
|
|
36
|
+
case a.MOBILE_NUMBER:
|
|
37
|
+
case a.SINGLE_VIDEO_PICKER_WITH_INPUT:
|
|
38
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, n);
|
|
39
|
+
case a.DATE_PICKER:
|
|
40
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, new Date(n * 1e3).toLocaleDateString());
|
|
41
|
+
case a.SINGLE_COMBOBOX:
|
|
42
|
+
case a.RADIO_GROUP:
|
|
43
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, n);
|
|
44
|
+
case a.CHECKBOX_GROUP: {
|
|
45
|
+
const t = o[r.id];
|
|
46
|
+
return /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-2" }, r.options.map((c) => /* @__PURE__ */ e.createElement("div", { key: c, className: "flex items-center space-x-2" }, /* @__PURE__ */ e.createElement(
|
|
47
|
+
N,
|
|
48
|
+
{
|
|
49
|
+
disabled: !0,
|
|
50
|
+
id: c,
|
|
51
|
+
checked: t?.split(",").includes(c)
|
|
52
|
+
}
|
|
53
|
+
), /* @__PURE__ */ e.createElement(s, { variant: "body1", className: "text-light-4" }, c))));
|
|
54
|
+
}
|
|
55
|
+
case a.MULTI_COMBOBOX:
|
|
56
|
+
case a.CREATABLE_MULTI_COMBOBOX:
|
|
57
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, typeof n == "string" ? n.split(",").join(", ") : null);
|
|
58
|
+
case a.RADIO_GROUP_WITH_OPTIONAL_INPUT: {
|
|
59
|
+
const t = n;
|
|
60
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-1" }, t.radio_value, t.input_value && t.radio_value === r.inputTriggerOptionValue && `: ${t.input_value}`);
|
|
61
|
+
}
|
|
62
|
+
case a.SINGLE_IMAGE_PICKER: {
|
|
63
|
+
const t = n;
|
|
64
|
+
return /* @__PURE__ */ e.createElement("div", { className: "mt-1" }, /* @__PURE__ */ e.createElement(
|
|
65
|
+
"a",
|
|
66
|
+
{
|
|
67
|
+
href: t.public_url,
|
|
68
|
+
target: "_blank",
|
|
69
|
+
rel: "noopener noreferrer"
|
|
70
|
+
},
|
|
71
|
+
/* @__PURE__ */ e.createElement(
|
|
72
|
+
"img",
|
|
73
|
+
{
|
|
74
|
+
src: t.public_url,
|
|
75
|
+
alt: r.name,
|
|
76
|
+
className: "object-cover w-full h-32 rounded-md hover:opacity-90"
|
|
77
|
+
}
|
|
78
|
+
)
|
|
79
|
+
));
|
|
80
|
+
}
|
|
81
|
+
case a.SINGLE_VIDEO_PICKER: {
|
|
82
|
+
const t = n;
|
|
83
|
+
return /* @__PURE__ */ e.createElement("div", { className: "mt-1" }, /* @__PURE__ */ e.createElement(
|
|
84
|
+
"video",
|
|
85
|
+
{
|
|
86
|
+
src: t.public_url,
|
|
87
|
+
controls: !0,
|
|
88
|
+
className: "w-full h-32 rounded-md"
|
|
89
|
+
},
|
|
90
|
+
/* @__PURE__ */ e.createElement(
|
|
91
|
+
"track",
|
|
92
|
+
{
|
|
93
|
+
kind: "captions",
|
|
94
|
+
label: "English captions",
|
|
95
|
+
srcLang: "en",
|
|
96
|
+
src: "",
|
|
97
|
+
default: !0
|
|
98
|
+
}
|
|
99
|
+
)
|
|
100
|
+
));
|
|
101
|
+
}
|
|
102
|
+
case a.MULTI_IMAGE_PICKER: {
|
|
103
|
+
const t = n;
|
|
104
|
+
return /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4" }, t.map((c, l) => /* @__PURE__ */ e.createElement(
|
|
105
|
+
"a",
|
|
106
|
+
{
|
|
107
|
+
key: l,
|
|
108
|
+
href: c.public_url,
|
|
109
|
+
target: "_blank",
|
|
110
|
+
rel: "noopener noreferrer"
|
|
111
|
+
},
|
|
112
|
+
/* @__PURE__ */ e.createElement(
|
|
113
|
+
"img",
|
|
114
|
+
{
|
|
115
|
+
src: c.public_url,
|
|
116
|
+
alt: r.name,
|
|
117
|
+
className: "object-cover w-full h-32 rounded-md hover:opacity-90"
|
|
118
|
+
}
|
|
119
|
+
)
|
|
120
|
+
)));
|
|
121
|
+
}
|
|
122
|
+
case a.MULTI_VIDEO_PICKER: {
|
|
123
|
+
const t = n;
|
|
124
|
+
return /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-1 gap-4 mt-1 sm:grid-cols-2" }, t.map((c, l) => /* @__PURE__ */ e.createElement("div", { key: l, className: "flex flex-col" }, /* @__PURE__ */ e.createElement(
|
|
125
|
+
"video",
|
|
126
|
+
{
|
|
127
|
+
src: c.public_url,
|
|
128
|
+
controls: !0,
|
|
129
|
+
className: "h-32 rounded-md"
|
|
130
|
+
},
|
|
131
|
+
/* @__PURE__ */ e.createElement(
|
|
132
|
+
"track",
|
|
133
|
+
{
|
|
134
|
+
kind: "captions",
|
|
135
|
+
label: "English captions",
|
|
136
|
+
srcLang: "en",
|
|
137
|
+
src: "",
|
|
138
|
+
default: !0
|
|
139
|
+
}
|
|
140
|
+
)
|
|
141
|
+
))));
|
|
142
|
+
}
|
|
143
|
+
case a.TAGGABLE_MULTI_IMAGE_PICKER:
|
|
144
|
+
case a.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT: {
|
|
145
|
+
const t = n;
|
|
146
|
+
return /* @__PURE__ */ e.createElement("div", { className: "grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4" }, t.map((c, l) => /* @__PURE__ */ e.createElement("div", { key: l, className: "relative" }, /* @__PURE__ */ e.createElement(
|
|
147
|
+
"a",
|
|
148
|
+
{
|
|
149
|
+
key: l,
|
|
150
|
+
href: c.public_url,
|
|
151
|
+
target: "_blank",
|
|
152
|
+
rel: "noopener noreferrer"
|
|
153
|
+
},
|
|
154
|
+
/* @__PURE__ */ e.createElement(
|
|
155
|
+
"img",
|
|
156
|
+
{
|
|
157
|
+
src: c.public_url,
|
|
158
|
+
alt: r.name,
|
|
159
|
+
className: "object-cover w-full h-32 rounded-md hover:opacity-90"
|
|
160
|
+
}
|
|
161
|
+
)
|
|
162
|
+
), /* @__PURE__ */ e.createElement(
|
|
163
|
+
b,
|
|
164
|
+
{
|
|
165
|
+
className: "absolute bottom-2 right-2 ",
|
|
166
|
+
variant: "select"
|
|
167
|
+
},
|
|
168
|
+
c.tag && c.tag.length > 8 ? `${c.tag.substring(0, 8)}...` : c.tag
|
|
169
|
+
))));
|
|
170
|
+
}
|
|
171
|
+
default:
|
|
172
|
+
return /* @__PURE__ */ e.createElement(s, { variant: "body2", className: "text-light-4" }, "Unsupported field type");
|
|
173
|
+
}
|
|
174
|
+
}, g = (r) => /* @__PURE__ */ e.createElement(s, { variant: "body1", className: "mb-1 text-light-3" }, r.name, r.required && /* @__PURE__ */ e.createElement("span", { className: "text-danger-1" }, "*"));
|
|
175
|
+
return /* @__PURE__ */ e.createElement("div", { className: "" }, u.steps.map((r) => /* @__PURE__ */ e.createElement(
|
|
176
|
+
I,
|
|
177
|
+
{
|
|
178
|
+
key: r.id,
|
|
179
|
+
trigger: /* @__PURE__ */ e.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ e.createElement(s, { variant: "h3", className: "text-light-2" }, r.name)),
|
|
180
|
+
triggerProps: { className: "mt-4 " },
|
|
181
|
+
contentProps: { className: "mt-4 p-2 bg-light-2 rounded" },
|
|
182
|
+
content: r.sections.map((n) => /* @__PURE__ */ e.createElement("div", { key: n.id, className: "mb-4" }, /* @__PURE__ */ e.createElement(s, { variant: "h3", className: "mb-2 text-light-2" }, n.name), /* @__PURE__ */ e.createElement("div", { className: "flex flex-col gap-3" }, n.fields.map((t) => /* @__PURE__ */ e.createElement("div", { key: t.id, className: "last:border-b-0" }, g(t), E(t, o[t.id]))))))
|
|
183
|
+
}
|
|
184
|
+
)));
|
|
9
185
|
};
|
|
10
186
|
export {
|
|
11
|
-
|
|
12
|
-
n as useFormStructure
|
|
187
|
+
x as FormReadOnlyView
|
|
13
188
|
};
|
|
14
189
|
//# sourceMappingURL=index.es129.js.map
|
package/dist/index.es129.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es129.js","sources":["../src/components/ui/form-renderer/context/form-structure/form-structure.context.ts"],"sourcesContent":["// contexts/FormStructureContext.tsx\nimport { createContext, useContext } from 'react'\nimport { FormStructure, FormStep } from '../../form.types'\n\ninterface FormStructureContextType {\n structure: FormStructure\n currentStepIndex: number\n currentStep: FormStep\n goToNextStep: () => void\n goToPreviousStep: () => void\n goToStep: (stepIndex: number) => void\n isFirstStep: boolean\n isLastStep: boolean\n totalSteps: number\n}\n\nexport const FormStructureContext =\n createContext<FormStructureContextType | null>(null)\n\nexport const useFormStructure = () => {\n const context = useContext(FormStructureContext)\n if (!context) {\n throw new Error(\n 'useFormStructure must be used within a FormStructureProvider'\n )\n }\n return context\n}\n"],"names":["FormStructureContext","createContext","useFormStructure","context","useContext"],"mappings":";AAgBO,MAAMA,IACXC,EAA+C,IAAI,GAExCC,IAAmB,MAAM;AACpC,QAAMC,IAAUC,EAAWJ,CAAoB;AAC/C,MAAI,CAACG;AACH,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAGJ,SAAOA;AACT;"}
|
|
1
|
+
{"version":3,"file":"index.es129.js","sources":["../src/components/ui/form-renderer/components/form-read-only-view.tsx"],"sourcesContent":["// components/form-readonly-view.tsx\nimport React, { ReactNode } from 'react'\nimport {\n FormStructure,\n FormValues,\n FormField,\n FormFieldValue,\n AssetValue,\n TaggableAssetValue,\n RadioGroupWithInputFieldValue,\n} from './../form.types'\nimport { Typography } from '@/components/atoms/typography'\nimport { Checkbox } from '@radix-ui/react-checkbox'\nimport { Accordion } from '@/components/atoms/accordion'\nimport { Badge } from '@/components/atoms/badge'\n\nimport { FormFieldType } from '../form.enums'\n\ninterface FormReadOnlyViewProps {\n structure: FormStructure\n values: FormValues\n}\n\nexport const FormReadOnlyView: React.FC<FormReadOnlyViewProps> = ({\n structure,\n values,\n}) => {\n // Helper function to render field value based on type\n const renderFieldValue = (\n field: FormField,\n value: FormFieldValue\n ): ReactNode => {\n // Special handling for repeatable groups, Since values[field.id] wont exist for repeatable groups\n\n if (field.type === FormFieldType.REPEATABLE_GROUP_FIELD) {\n const prefix = `${field.id}||`\n const entryIndices = new Set<number>()\n\n // Extract unique entry indices from the keys present in `values`\n Object.keys(values).forEach((key) => {\n if (key.startsWith(prefix)) {\n // Regex to capture the index part: field.id||INDEX||subfield.id\n // Assuming field.id does not contain characters that need escaping for RegExp\n const match = key.match(new RegExp(`^${field.id}\\\\|\\\\|(\\\\d+)\\\\|\\\\|`))\n if (match && match[1]) {\n entryIndices.add(parseInt(match[1]))\n }\n }\n })\n\n // Sort indices numerically\n const sortedIndices = Array.from(entryIndices).sort((a, b) => a - b)\n\n if (sortedIndices.length === 0) {\n return [] // No entries to render\n }\n\n // Use flatMap to iterate through each entry index, then each sub-field template,\n // and flatten the results into a single array of React elements.\n return sortedIndices.flatMap((entryIndex) => {\n // For each entry, map over its defined sub-fields from the field's options\n return field.options.map((subFieldTemplate) => {\n // Construct the unique key for this specific instance of the sub-field\n const instanceKey = `${field.id}||${entryIndex}||${subFieldTemplate.id}`\n const value = values[instanceKey] // Get the value for this specific instance\n\n // Create a new field object for this instance,\n // using the subFieldTemplate and overriding its 'id' with the unique instanceKey.\n const instanceSpecificSubField: FormField = {\n ...subFieldTemplate,\n id: instanceKey,\n }\n\n return (\n <React.Fragment key={instanceKey}>\n {renderQuestionLabel(instanceSpecificSubField)}\n {renderFieldValue(instanceSpecificSubField, value)}\n </React.Fragment>\n )\n })\n })\n }\n\n if (value === undefined || value === null || value === '') {\n return (\n <Typography variant=\"body2\" className=\"text-light-4\">\n Not answered\n </Typography>\n )\n }\n\n switch (field.type) {\n case FormFieldType.SHORT_TEXT:\n case FormFieldType.LONG_TEXT:\n case FormFieldType.EMAIL:\n case FormFieldType.NUMBER:\n case FormFieldType.MOBILE_NUMBER:\n case FormFieldType.SINGLE_VIDEO_PICKER_WITH_INPUT:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {value as string}\n </Typography>\n )\n\n case FormFieldType.DATE_PICKER:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {new Date((value as number) * 1000).toLocaleDateString()}\n </Typography>\n )\n\n case FormFieldType.SINGLE_COMBOBOX:\n case FormFieldType.RADIO_GROUP:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {value as string}\n </Typography>\n )\n\n case FormFieldType.CHECKBOX_GROUP: {\n const value = values[field.id] as string\n return (\n <div className=\"flex flex-col gap-2\">\n {field.options.map((option) => {\n return (\n <div key={option} className=\"flex items-center space-x-2\">\n <Checkbox\n disabled\n id={option}\n checked={value?.split(',').includes(option)}\n />\n <Typography variant=\"body1\" className=\"text-light-4\">\n {option}\n </Typography>\n </div>\n )\n })}\n </div>\n )\n }\n case FormFieldType.MULTI_COMBOBOX:\n case FormFieldType.CREATABLE_MULTI_COMBOBOX:\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {typeof value === 'string' ? value.split(',').join(', ') : null}\n </Typography>\n )\n\n case FormFieldType.RADIO_GROUP_WITH_OPTIONAL_INPUT: {\n const radioValue = value as RadioGroupWithInputFieldValue\n return (\n <Typography variant=\"body2\" className=\"text-light-1\">\n {radioValue.radio_value}\n {radioValue.input_value &&\n radioValue.radio_value === field.inputTriggerOptionValue &&\n `: ${radioValue.input_value}`}\n </Typography>\n )\n }\n\n // For single image/video uploads\n case FormFieldType.SINGLE_IMAGE_PICKER: {\n const asset = value as AssetValue\n return (\n <div className=\"mt-1\">\n <a\n href={asset.public_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <img\n src={asset.public_url}\n alt={field.name}\n className=\"object-cover w-full h-32 rounded-md hover:opacity-90\"\n />\n </a>\n </div>\n )\n }\n\n case FormFieldType.SINGLE_VIDEO_PICKER: {\n const asset = value as AssetValue\n return (\n <div className=\"mt-1\">\n <video\n src={asset.public_url}\n controls\n className=\"w-full h-32 rounded-md\"\n >\n <track\n kind=\"captions\"\n label=\"English captions\"\n srcLang=\"en\"\n src=\"\"\n default\n />\n </video>\n </div>\n )\n }\n\n case FormFieldType.MULTI_IMAGE_PICKER: {\n const assets = value as AssetValue[]\n return (\n <div className=\"grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4\">\n {assets.map((asset, index) => (\n <a\n key={index}\n href={asset.public_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <img\n src={asset.public_url}\n alt={field.name}\n className=\"object-cover w-full h-32 rounded-md hover:opacity-90\"\n />\n </a>\n ))}\n </div>\n )\n }\n\n case FormFieldType.MULTI_VIDEO_PICKER: {\n const assets = value as AssetValue[]\n return (\n <div className=\"grid grid-cols-1 gap-4 mt-1 sm:grid-cols-2\">\n {assets.map((asset, index) => (\n <div key={index} className=\"flex flex-col\">\n <video\n src={asset.public_url}\n controls\n className=\"h-32 rounded-md\"\n >\n <track\n kind=\"captions\"\n label=\"English captions\"\n srcLang=\"en\"\n src=\"\"\n default\n />\n </video>\n </div>\n ))}\n </div>\n )\n }\n\n case FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER:\n case FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT: {\n const taggedAssets = value as TaggableAssetValue[]\n return (\n <div className=\"grid grid-cols-1 gap-2 mt-1 sm:grid-cols-3 md:grid-cols-4\">\n {taggedAssets.map((asset, index) => (\n <div key={index} className=\"relative\">\n <a\n key={index}\n href={asset.public_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <img\n src={asset.public_url}\n alt={field.name}\n className=\"object-cover w-full h-32 rounded-md hover:opacity-90\"\n />\n </a>\n <Badge\n className=\"absolute bottom-2 right-2 \"\n variant={'select'}\n >\n {asset.tag && asset.tag.length > 8\n ? `${asset.tag.substring(0, 8)}...`\n : asset.tag}\n </Badge>\n </div>\n ))}\n </div>\n )\n }\n\n default:\n return (\n <Typography variant=\"body2\" className=\"text-light-4\">\n Unsupported field type\n </Typography>\n )\n }\n }\n\n const renderQuestionLabel = (field: FormField): ReactNode => {\n return (\n <Typography variant=\"body1\" className=\"mb-1 text-light-3\">\n {field.name}\n {field.required && <span className=\"text-danger-1\">*</span>}\n </Typography>\n )\n }\n\n return (\n <div className=\"\">\n {structure.steps.map((step) => (\n <Accordion\n key={step.id}\n trigger={\n <div className=\"flex items-center gap-2\">\n <Typography variant=\"h3\" className=\"text-light-2\">\n {step.name}\n </Typography>\n </div>\n }\n triggerProps={{ className: 'mt-4 ' }}\n contentProps={{ className: 'mt-4 p-2 bg-light-2 rounded' }}\n content={step.sections.map((section) => (\n <div key={section.id} className=\"mb-4\">\n <Typography variant=\"h3\" className=\"mb-2 text-light-2\">\n {section.name}\n </Typography>\n\n <div className=\"flex flex-col gap-3\">\n {section.fields.map((field) => (\n <div key={field.id} className=\"last:border-b-0\">\n {renderQuestionLabel(field)}\n {renderFieldValue(field, values[field.id])}\n </div>\n ))}\n </div>\n </div>\n ))}\n />\n ))}\n </div>\n )\n}\n"],"names":["FormReadOnlyView","structure","values","renderFieldValue","field","value","FormFieldType","prefix","entryIndices","key","match","sortedIndices","a","b","entryIndex","subFieldTemplate","instanceKey","instanceSpecificSubField","React","renderQuestionLabel","Typography","option","Checkbox","radioValue","asset","assets","index","taggedAssets","Badge","step","Accordion","section"],"mappings":";;;;;;AAuBO,MAAMA,IAAoD,CAAC;AAAA,EAChE,WAAAC;AAAA,EACA,QAAAC;AACF,MAAM;AAEJ,QAAMC,IAAmB,CACvBC,GACAC,MACc;AAGd,QAAID,EAAM,SAASE,EAAc,wBAAwB;AACvD,YAAMC,IAAS,GAAGH,EAAM,EAAE,MACpBI,wBAAmB,IAAA;AAGzB,aAAO,KAAKN,CAAM,EAAE,QAAQ,CAACO,MAAQ;AACnC,YAAIA,EAAI,WAAWF,CAAM,GAAG;AAG1B,gBAAMG,IAAQD,EAAI,MAAM,IAAI,OAAO,IAAIL,EAAM,EAAE,oBAAoB,CAAC;AACpE,UAAIM,KAASA,EAAM,CAAC,KAClBF,EAAa,IAAI,SAASE,EAAM,CAAC,CAAC,CAAC;AAAA,QAEvC;AAAA,MACF,CAAC;AAGD,YAAMC,IAAgB,MAAM,KAAKH,CAAY,EAAE,KAAK,CAACI,GAAGC,MAAMD,IAAIC,CAAC;AAEnE,aAAIF,EAAc,WAAW,IACpB,CAAA,IAKFA,EAAc,QAAQ,CAACG,MAErBV,EAAM,QAAQ,IAAI,CAACW,MAAqB;AAE7C,cAAMC,IAAc,GAAGZ,EAAM,EAAE,KAAKU,CAAU,KAAKC,EAAiB,EAAE,IAChEV,IAAQH,EAAOc,CAAW,GAI1BC,IAAsC;AAAA,UAC1C,GAAGF;AAAA,UACH,IAAIC;AAAA,QAAA;AAGN,eACEE,gBAAAA,EAAA,cAACA,EAAM,UAAN,EAAe,KAAKF,KAClBG,EAAoBF,CAAwB,GAC5Cd,EAAiBc,GAA0BZ,CAAK,CACnD;AAAA,MAEJ,CAAC,CACF;AAAA,IACH;AAEA,QAA2BA,KAAU,QAAQA,MAAU;AACrD,6CACGe,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBAAe,cAErD;AAIJ,YAAQhB,EAAM,MAAA;AAAA,MACZ,KAAKE,EAAc;AAAA,MACnB,KAAKA,EAAc;AAAA,MACnB,KAAKA,EAAc;AAAA,MACnB,KAAKA,EAAc;AAAA,MACnB,KAAKA,EAAc;AAAA,MACnB,KAAKA,EAAc;AACjB,+CACGc,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnCf,CACH;AAAA,MAGJ,KAAKC,EAAc;AACjB,eACEY,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,eAAA,GACnC,IAAI,KAAMf,IAAmB,GAAI,EAAE,mBAAA,CACtC;AAAA,MAGJ,KAAKC,EAAc;AAAA,MACnB,KAAKA,EAAc;AACjB,+CACGc,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnCf,CACH;AAAA,MAGJ,KAAKC,EAAc,gBAAgB;AACjC,cAAMD,IAAQH,EAAOE,EAAM,EAAE;AAC7B,eACEc,gBAAAA,EAAA,cAAC,SAAI,WAAU,sBAAA,GACZd,EAAM,QAAQ,IAAI,CAACiB,MAEhBH,gBAAAA,EAAA,cAAC,OAAA,EAAI,KAAKG,GAAQ,WAAU,iCAC1BH,gBAAAA,EAAA;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,UAAQ;AAAA,YACR,IAAID;AAAA,YACJ,SAAShB,GAAO,MAAM,GAAG,EAAE,SAASgB,CAAM;AAAA,UAAA;AAAA,QAAA,mCAE3CD,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnCC,CACH,CACF,CAEH,CACH;AAAA,MAEJ;AAAA,MACA,KAAKf,EAAc;AAAA,MACnB,KAAKA,EAAc;AACjB,+CACGc,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnC,OAAOf,KAAU,WAAWA,EAAM,MAAM,GAAG,EAAE,KAAK,IAAI,IAAI,IAC7D;AAAA,MAGJ,KAAKC,EAAc,iCAAiC;AAClD,cAAMiB,IAAalB;AACnB,+CACGe,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBACnCG,EAAW,aACXA,EAAW,eACVA,EAAW,gBAAgBnB,EAAM,2BACjC,KAAKmB,EAAW,WAAW,EAC/B;AAAA,MAEJ;AAAA,MAGA,KAAKjB,EAAc,qBAAqB;AACtC,cAAMkB,IAAQnB;AACd,eACEa,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,OAAA,GACbA,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAMM,EAAM;AAAA,YACZ,QAAO;AAAA,YACP,KAAI;AAAA,UAAA;AAAA,UAEJN,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,KAAKM,EAAM;AAAA,cACX,KAAKpB,EAAM;AAAA,cACX,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,CAEJ;AAAA,MAEJ;AAAA,MAEA,KAAKE,EAAc,qBAAqB;AACtC,cAAMkB,IAAQnB;AACd,eACEa,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,OAAA,GACbA,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKM,EAAM;AAAA,YACX,UAAQ;AAAA,YACR,WAAU;AAAA,UAAA;AAAA,UAEVN,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAM;AAAA,cACN,SAAQ;AAAA,cACR,KAAI;AAAA,cACJ,SAAO;AAAA,YAAA;AAAA,UAAA;AAAA,QACT,CAEJ;AAAA,MAEJ;AAAA,MAEA,KAAKZ,EAAc,oBAAoB;AACrC,cAAMmB,IAASpB;AACf,eACEa,gBAAAA,EAAA,cAAC,SAAI,WAAU,4DAAA,GACZO,EAAO,IAAI,CAACD,GAAOE,MAClBR,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKQ;AAAA,YACL,MAAMF,EAAM;AAAA,YACZ,QAAO;AAAA,YACP,KAAI;AAAA,UAAA;AAAA,UAEJN,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,KAAKM,EAAM;AAAA,cACX,KAAKpB,EAAM;AAAA,cACX,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,CAEH,CACH;AAAA,MAEJ;AAAA,MAEA,KAAKE,EAAc,oBAAoB;AACrC,cAAMmB,IAASpB;AACf,eACEa,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,gDACZO,EAAO,IAAI,CAACD,GAAOE,MAClBR,gBAAAA,EAAA,cAAC,OAAA,EAAI,KAAKQ,GAAO,WAAU,mBACzBR,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKM,EAAM;AAAA,YACX,UAAQ;AAAA,YACR,WAAU;AAAA,UAAA;AAAA,UAEVN,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAM;AAAA,cACN,SAAQ;AAAA,cACR,KAAI;AAAA,cACJ,SAAO;AAAA,YAAA;AAAA,UAAA;AAAA,QACT,CAEJ,CACD,CACH;AAAA,MAEJ;AAAA,MAEA,KAAKZ,EAAc;AAAA,MACnB,KAAKA,EAAc,wCAAwC;AACzD,cAAMqB,IAAetB;AACrB,eACEa,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,+DACZS,EAAa,IAAI,CAACH,GAAOE,MACxBR,gBAAAA,EAAA,cAAC,OAAA,EAAI,KAAKQ,GAAO,WAAU,cACzBR,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKQ;AAAA,YACL,MAAMF,EAAM;AAAA,YACZ,QAAO;AAAA,YACP,KAAI;AAAA,UAAA;AAAA,UAEJN,gBAAAA,EAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,KAAKM,EAAM;AAAA,cACX,KAAKpB,EAAM;AAAA,cACX,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,GAEFc,gBAAAA,EAAA;AAAA,UAACU;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,SAAS;AAAA,UAAA;AAAA,UAERJ,EAAM,OAAOA,EAAM,IAAI,SAAS,IAC7B,GAAGA,EAAM,IAAI,UAAU,GAAG,CAAC,CAAC,QAC5BA,EAAM;AAAA,QAAA,CAEd,CACD,CACH;AAAA,MAEJ;AAAA,MAEA;AACE,+CACGJ,GAAA,EAAW,SAAQ,SAAQ,WAAU,kBAAe,wBAErD;AAAA,IAAA;AAAA,EAGR,GAEMD,IAAsB,CAACf,MAEzBc,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,SAAQ,WAAU,oBAAA,GACnChB,EAAM,MACNA,EAAM,YAAYc,gBAAAA,EAAA,cAAC,QAAA,EAAK,WAAU,mBAAgB,GAAC,CACtD;AAIJ,SACEA,gBAAAA,EAAA,cAAC,SAAI,WAAU,GAAA,GACZjB,EAAU,MAAM,IAAI,CAAC4B,MACpBX,gBAAAA,EAAA;AAAA,IAACY;AAAAA,IAAA;AAAA,MACC,KAAKD,EAAK;AAAA,MACV,SACEX,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,0BAAA,GACbA,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,MAAK,WAAU,kBAChCS,EAAK,IACR,CACF;AAAA,MAEF,cAAc,EAAE,WAAW,QAAA;AAAA,MAC3B,cAAc,EAAE,WAAW,8BAAA;AAAA,MAC3B,SAASA,EAAK,SAAS,IAAI,CAACE,MAC1Bb,gBAAAA,EAAA,cAAC,OAAA,EAAI,KAAKa,EAAQ,IAAI,WAAU,OAAA,GAC9Bb,gBAAAA,EAAA,cAACE,GAAA,EAAW,SAAQ,MAAK,WAAU,uBAChCW,EAAQ,IACX,GAEAb,gBAAAA,EAAA,cAAC,OAAA,EAAI,WAAU,yBACZa,EAAQ,OAAO,IAAI,CAAC3B,MACnBc,gBAAAA,EAAA,cAAC,SAAI,KAAKd,EAAM,IAAI,WAAU,kBAAA,GAC3Be,EAAoBf,CAAK,GACzBD,EAAiBC,GAAOF,EAAOE,EAAM,EAAE,CAAC,CAC3C,CACD,CACH,CACF,CACD;AAAA,IAAA;AAAA,EAAA,CAEJ,CACH;AAEJ;"}
|
package/dist/index.es13.js
CHANGED
|
@@ -1,22 +1,30 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import * as
|
|
3
|
-
import { cn as
|
|
4
|
-
import {
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
r
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
import * as e from "react";
|
|
2
|
+
import * as a from "@radix-ui/react-radio-group";
|
|
3
|
+
import { cn as d } from "./index.es89.js";
|
|
4
|
+
import { RadioGroupVariants as i } from "./index.es79.js";
|
|
5
|
+
const m = e.forwardRef(({ className: r, ...t }, o) => /* @__PURE__ */ e.createElement(
|
|
6
|
+
a.Root,
|
|
7
|
+
{
|
|
8
|
+
className: d("grid gap-2", r),
|
|
9
|
+
...t,
|
|
10
|
+
ref: o
|
|
11
|
+
}
|
|
12
|
+
));
|
|
13
|
+
m.displayName = a.Root.displayName;
|
|
14
|
+
const c = e.forwardRef(({ className: r, ...t }, o) => /* @__PURE__ */ e.createElement(
|
|
15
|
+
a.Item,
|
|
16
|
+
{
|
|
17
|
+
ref: o,
|
|
18
|
+
className: d(i({ className: r })),
|
|
19
|
+
...t
|
|
20
|
+
},
|
|
21
|
+
t.children,
|
|
22
|
+
/* @__PURE__ */ e.createElement(a.Indicator, { className: "flex data=[state=unchecked]:hover:bg-primary-1 data-[state=checked]:bg-rest-p1 data-[state=checked]:hover:bg-hover-p1 h-2.5 w-2.5 rounded-full t-7 l-y disabled:opacity-50 items-center justify-center border-none" })
|
|
23
|
+
));
|
|
24
|
+
c.displayName = a.Item.displayName;
|
|
18
25
|
export {
|
|
19
|
-
|
|
20
|
-
|
|
26
|
+
m as RadioGroup,
|
|
27
|
+
c as RadioGroupItem,
|
|
28
|
+
i as RadioGroupVariants
|
|
21
29
|
};
|
|
22
30
|
//# sourceMappingURL=index.es13.js.map
|
package/dist/index.es13.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es13.js","sources":["../src/components/atoms/
|
|
1
|
+
{"version":3,"file":"index.es13.js","sources":["../src/components/atoms/radio-group/radio-group.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\n\nimport { cn } from '@/lib/utils'\nimport { RadioGroupVariants } from './radio-group-style'\nconst RadioGroup = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>\n>(({ className, ...props }, ref) => {\n return (\n <RadioGroupPrimitive.Root\n className={cn('grid gap-2', className)}\n {...props}\n ref={ref}\n />\n )\n})\n\nRadioGroup.displayName = RadioGroupPrimitive.Root.displayName\n\nconst RadioGroupItem = React.forwardRef<\n React.ElementRef<typeof RadioGroupPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>\n>(({ className, ...props }, ref) => {\n return (\n <RadioGroupPrimitive.Item\n ref={ref}\n className={cn(RadioGroupVariants({ className }))}\n {...props}\n >\n {props.children}\n <RadioGroupPrimitive.Indicator className=\"flex data=[state=unchecked]:hover:bg-primary-1 data-[state=checked]:bg-rest-p1 data-[state=checked]:hover:bg-hover-p1 h-2.5 w-2.5 rounded-full t-7 l-y disabled:opacity-50 items-center justify-center border-none\"></RadioGroupPrimitive.Indicator>\n </RadioGroupPrimitive.Item>\n )\n})\nRadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName\n\nexport { RadioGroup, RadioGroupItem, RadioGroupVariants }\n"],"names":["RadioGroup","React","className","props","ref","RadioGroupPrimitive","cn","RadioGroupItem","RadioGroupVariants"],"mappings":";;;;AAMA,MAAMA,IAAaC,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAExB,gBAAAH,EAAA;AAAA,EAACI,EAAoB;AAAA,EAApB;AAAA,IACC,WAAWC,EAAG,cAAcJ,CAAS;AAAA,IACpC,GAAGC;AAAA,IACJ,KAAAC;AAAA,EAAA;AAAA,CAGL;AAEDJ,EAAW,cAAcK,EAAoB,KAAK;AAElD,MAAME,IAAiBN,EAAM,WAG3B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAExB,gBAAAH,EAAA;AAAA,EAACI,EAAoB;AAAA,EAApB;AAAA,IACC,KAAAD;AAAA,IACA,WAAWE,EAAGE,EAAmB,EAAE,WAAAN,EAAA,CAAW,CAAC;AAAA,IAC9C,GAAGC;AAAA,EAAA;AAAA,EAEHA,EAAM;AAAA,EACP,gBAAAF,EAAA,cAACI,EAAoB,WAApB,EAA8B,WAAU,sNAAA,CAAsN;AAAA,CAGpQ;AACDE,EAAe,cAAcF,EAAoB,KAAK;"}
|
package/dist/index.es130.js
CHANGED
|
@@ -1,14 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
),
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import l, { useState as a } from "react";
|
|
2
|
+
import { FormStructureContext as c } from "./index.es159.js";
|
|
3
|
+
const f = ({ children: n, structure: e }) => {
|
|
4
|
+
const [t, o] = a(0), r = () => {
|
|
5
|
+
t < e.steps.length - 1 && o(t + 1);
|
|
6
|
+
}, p = () => {
|
|
7
|
+
t > 0 && o(t - 1);
|
|
8
|
+
}, S = (s) => {
|
|
9
|
+
s >= 0 && s < e.steps.length && o(s);
|
|
10
|
+
}, i = {
|
|
11
|
+
structure: e,
|
|
12
|
+
currentStepIndex: t,
|
|
13
|
+
currentStep: e.steps[t],
|
|
14
|
+
goToNextStep: r,
|
|
15
|
+
goToPreviousStep: p,
|
|
16
|
+
goToStep: S,
|
|
17
|
+
isFirstStep: t === 0,
|
|
18
|
+
isLastStep: t === e.steps.length - 1,
|
|
19
|
+
totalSteps: e.steps.length
|
|
20
|
+
};
|
|
21
|
+
return /* @__PURE__ */ l.createElement(c.Provider, { value: i }, n);
|
|
9
22
|
};
|
|
10
23
|
export {
|
|
11
|
-
|
|
12
|
-
n as useFormValues
|
|
24
|
+
f as FormStructureProvider
|
|
13
25
|
};
|
|
14
26
|
//# sourceMappingURL=index.es130.js.map
|
package/dist/index.es130.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es130.js","sources":["../src/components/ui/form-renderer/context/form-
|
|
1
|
+
{"version":3,"file":"index.es130.js","sources":["../src/components/ui/form-renderer/context/form-structure/form-structure.provider.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport { FormStructureContext } from './form-structure.context'\nimport { FormStructure } from '../../form.types'\n\nexport const FormStructureProvider: React.FC<{\n children: React.ReactNode\n structure: FormStructure\n}> = ({ children, structure }) => {\n const [currentStepIndex, setCurrentStepIndex] = useState(0)\n\n const goToNextStep = () => {\n if (currentStepIndex < structure.steps.length - 1) {\n setCurrentStepIndex(currentStepIndex + 1)\n }\n }\n\n const goToPreviousStep = () => {\n if (currentStepIndex > 0) {\n setCurrentStepIndex(currentStepIndex - 1)\n }\n }\n\n const goToStep = (stepIndex: number) => {\n if (stepIndex >= 0 && stepIndex < structure.steps.length) {\n setCurrentStepIndex(stepIndex)\n }\n }\n\n const value = {\n structure,\n currentStepIndex,\n currentStep: structure.steps[currentStepIndex],\n goToNextStep,\n goToPreviousStep,\n goToStep,\n isFirstStep: currentStepIndex === 0,\n isLastStep: currentStepIndex === structure.steps.length - 1,\n totalSteps: structure.steps.length,\n }\n\n return (\n <FormStructureContext.Provider value={value}>\n {children}\n </FormStructureContext.Provider>\n )\n}\n"],"names":["FormStructureProvider","children","structure","currentStepIndex","setCurrentStepIndex","useState","goToNextStep","goToPreviousStep","goToStep","stepIndex","value","React","FormStructureContext"],"mappings":";;AAIO,MAAMA,IAGR,CAAC,EAAE,UAAAC,GAAU,WAAAC,QAAgB;AAChC,QAAM,CAACC,GAAkBC,CAAmB,IAAIC,EAAS,CAAC,GAEpDC,IAAe,MAAM;AACzB,IAAIH,IAAmBD,EAAU,MAAM,SAAS,KAC9CE,EAAoBD,IAAmB,CAAC;AAAA,EAE5C,GAEMI,IAAmB,MAAM;AAC7B,IAAIJ,IAAmB,KACrBC,EAAoBD,IAAmB,CAAC;AAAA,EAE5C,GAEMK,IAAW,CAACC,MAAsB;AACtC,IAAIA,KAAa,KAAKA,IAAYP,EAAU,MAAM,UAChDE,EAAoBK,CAAS;AAAA,EAEjC,GAEMC,IAAQ;AAAA,IACZ,WAAAR;AAAA,IACA,kBAAAC;AAAA,IACA,aAAaD,EAAU,MAAMC,CAAgB;AAAA,IAC7C,cAAAG;AAAA,IACA,kBAAAC;AAAA,IACA,UAAAC;AAAA,IACA,aAAaL,MAAqB;AAAA,IAClC,YAAYA,MAAqBD,EAAU,MAAM,SAAS;AAAA,IAC1D,YAAYA,EAAU,MAAM;AAAA,EAAA;AAG9B,SACES,gBAAAA,EAAA,cAACC,EAAqB,UAArB,EAA8B,OAAAF,KAC5BT,CACH;AAEJ;"}
|
package/dist/index.es131.js
CHANGED
|
@@ -1,5 +1,206 @@
|
|
|
1
|
-
|
|
1
|
+
import G, { useState as E } from "react";
|
|
2
|
+
import { FormValuesContext as L } from "./index.es160.js";
|
|
3
|
+
import { FormFieldType as r } from "./index.es161.js";
|
|
4
|
+
const B = ({
|
|
5
|
+
children: I,
|
|
6
|
+
initialValues: m = {},
|
|
7
|
+
onSubmit: c,
|
|
8
|
+
onAssetUpload: p,
|
|
9
|
+
onToggleImageEditor: T,
|
|
10
|
+
getRequestHeaders: V,
|
|
11
|
+
getCreateOptionExtraBody: A
|
|
12
|
+
}) => {
|
|
13
|
+
const [n, f] = E(m), [M, P] = E({}), b = (s, e) => {
|
|
14
|
+
f((a) => ({ ...a, [s]: e })), M[s] && P((a) => {
|
|
15
|
+
const t = { ...a };
|
|
16
|
+
return delete t[s], t;
|
|
17
|
+
});
|
|
18
|
+
}, O = (s) => {
|
|
19
|
+
f(() => s);
|
|
20
|
+
}, u = (s) => {
|
|
21
|
+
if (s.type === r.REPEATABLE_GROUP_FIELD) {
|
|
22
|
+
const a = `${s.id}||`, t = Object.keys(n).filter((i) => i.startsWith(a));
|
|
23
|
+
if (t.length === 0)
|
|
24
|
+
return { isValid: !1, errorMessage: "This field is required" };
|
|
25
|
+
for (const i of t) {
|
|
26
|
+
const o = { ...s.options.find(
|
|
27
|
+
(g) => g.id === i.split("||")[2]
|
|
28
|
+
), id: i }, { isValid: d, errorMessage: _ } = u(
|
|
29
|
+
o
|
|
30
|
+
);
|
|
31
|
+
if (!d)
|
|
32
|
+
return { isValid: !1, errorMessage: _ };
|
|
33
|
+
}
|
|
34
|
+
return { isValid: !0, errorMessage: "" };
|
|
35
|
+
}
|
|
36
|
+
const e = n[s.id];
|
|
37
|
+
if (s.required && e == null)
|
|
38
|
+
return { isValid: !1, errorMessage: "This field is required" };
|
|
39
|
+
if (!s.required && (e == null || e === ""))
|
|
40
|
+
return { isValid: !0, errorMessage: "" };
|
|
41
|
+
switch (s.type) {
|
|
42
|
+
case r.SHORT_TEXT:
|
|
43
|
+
case r.LONG_TEXT:
|
|
44
|
+
case r.SINGLE_VIDEO_PICKER_WITH_INPUT:
|
|
45
|
+
if (e === "")
|
|
46
|
+
return { isValid: !1, errorMessage: "This field cannot be empty" };
|
|
47
|
+
break;
|
|
48
|
+
case r.EMAIL:
|
|
49
|
+
if (e === "")
|
|
50
|
+
return { isValid: !1, errorMessage: "Email is required" };
|
|
51
|
+
if (!/^\S+@\S+\.\S+$/.test(e))
|
|
52
|
+
return {
|
|
53
|
+
isValid: !1,
|
|
54
|
+
errorMessage: "Please enter a valid email address"
|
|
55
|
+
};
|
|
56
|
+
break;
|
|
57
|
+
case r.NUMBER:
|
|
58
|
+
if (e === "")
|
|
59
|
+
return { isValid: !1, errorMessage: "Number is required" };
|
|
60
|
+
if (isNaN(Number(e)))
|
|
61
|
+
return { isValid: !1, errorMessage: "Please enter a valid number" };
|
|
62
|
+
break;
|
|
63
|
+
case r.MOBILE_NUMBER:
|
|
64
|
+
if (e === "")
|
|
65
|
+
return { isValid: !1, errorMessage: "Mobile number is required" };
|
|
66
|
+
if (!/^\d{10,15}$/.test(e.replace(/\D/g, "")))
|
|
67
|
+
return {
|
|
68
|
+
isValid: !1,
|
|
69
|
+
errorMessage: "Please enter a valid mobile number"
|
|
70
|
+
};
|
|
71
|
+
break;
|
|
72
|
+
case r.DATE_PICKER:
|
|
73
|
+
if (!e || e === "")
|
|
74
|
+
return { isValid: !1, errorMessage: "Date is required" };
|
|
75
|
+
break;
|
|
76
|
+
case r.SINGLE_COMBOBOX:
|
|
77
|
+
if (!e || e === "")
|
|
78
|
+
return {
|
|
79
|
+
isValid: !1,
|
|
80
|
+
errorMessage: "Please select or enter a value"
|
|
81
|
+
};
|
|
82
|
+
break;
|
|
83
|
+
case r.MULTI_COMBOBOX:
|
|
84
|
+
if (Array.isArray(e)) {
|
|
85
|
+
if (e.length === 0)
|
|
86
|
+
return {
|
|
87
|
+
isValid: !1,
|
|
88
|
+
errorMessage: "Please select at least one option"
|
|
89
|
+
};
|
|
90
|
+
} else if (typeof e == "string" && (!e || e.split(",").filter(Boolean).length === 0))
|
|
91
|
+
return {
|
|
92
|
+
isValid: !1,
|
|
93
|
+
errorMessage: "Please select at least one option"
|
|
94
|
+
};
|
|
95
|
+
break;
|
|
96
|
+
case r.CREATABLE_MULTI_COMBOBOX: {
|
|
97
|
+
const a = Array.isArray(e) ? e : typeof e == "string" ? e.split(",").filter(Boolean) : [], t = s.minSelected ?? 0, i = s.maxSelected;
|
|
98
|
+
if (t > 0 && a.length < t)
|
|
99
|
+
return {
|
|
100
|
+
isValid: !1,
|
|
101
|
+
errorMessage: i != null ? `Select at least ${t} option(s) (max ${i})` : `Select at least ${t} option(s)`
|
|
102
|
+
};
|
|
103
|
+
if (i != null && a.length > i)
|
|
104
|
+
return {
|
|
105
|
+
isValid: !1,
|
|
106
|
+
errorMessage: `Select at most ${i} option(s)`
|
|
107
|
+
};
|
|
108
|
+
if (s.required && a.length === 0)
|
|
109
|
+
return {
|
|
110
|
+
isValid: !1,
|
|
111
|
+
errorMessage: "This field is required"
|
|
112
|
+
};
|
|
113
|
+
break;
|
|
114
|
+
}
|
|
115
|
+
case r.CHECKBOX_GROUP:
|
|
116
|
+
case r.RADIO_GROUP:
|
|
117
|
+
if (!e || e === "")
|
|
118
|
+
return { isValid: !1, errorMessage: "Please select an option" };
|
|
119
|
+
break;
|
|
120
|
+
case r.RADIO_GROUP_WITH_OPTIONAL_INPUT: {
|
|
121
|
+
const a = e;
|
|
122
|
+
if (!a || !a.radio_value)
|
|
123
|
+
return { isValid: !1, errorMessage: "Please select an option" };
|
|
124
|
+
if (a.radio_value === s.inputTriggerOptionValue && !a.input_value)
|
|
125
|
+
return {
|
|
126
|
+
isValid: !1,
|
|
127
|
+
errorMessage: "Please provide additional information for your selection"
|
|
128
|
+
};
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
case r.SINGLE_IMAGE_PICKER:
|
|
132
|
+
if (!e || !e.public_url)
|
|
133
|
+
return { isValid: !1, errorMessage: "Please upload an image" };
|
|
134
|
+
break;
|
|
135
|
+
case r.SINGLE_VIDEO_PICKER:
|
|
136
|
+
if (!e || !e.public_url)
|
|
137
|
+
return { isValid: !1, errorMessage: "Please upload a video" };
|
|
138
|
+
break;
|
|
139
|
+
case r.MULTI_IMAGE_PICKER:
|
|
140
|
+
if (!Array.isArray(e) || e.length === 0)
|
|
141
|
+
return {
|
|
142
|
+
isValid: !1,
|
|
143
|
+
errorMessage: "Please upload at least one image"
|
|
144
|
+
};
|
|
145
|
+
break;
|
|
146
|
+
case r.MULTI_VIDEO_PICKER:
|
|
147
|
+
if (!Array.isArray(e) || e.length === 0)
|
|
148
|
+
return {
|
|
149
|
+
isValid: !1,
|
|
150
|
+
errorMessage: "Please upload at least one video"
|
|
151
|
+
};
|
|
152
|
+
break;
|
|
153
|
+
case r.TAGGABLE_MULTI_IMAGE_PICKER:
|
|
154
|
+
case r.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT: {
|
|
155
|
+
if (!Array.isArray(e) || e.length === 0)
|
|
156
|
+
return {
|
|
157
|
+
isValid: !1,
|
|
158
|
+
errorMessage: "Please upload at least one image"
|
|
159
|
+
};
|
|
160
|
+
if (e.some((i) => !i.tag))
|
|
161
|
+
return {
|
|
162
|
+
isValid: !1,
|
|
163
|
+
errorMessage: "Please add tags to all uploaded images"
|
|
164
|
+
};
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
return { isValid: !0, errorMessage: "" };
|
|
169
|
+
}, y = {
|
|
170
|
+
values: n,
|
|
171
|
+
errors: M,
|
|
172
|
+
setValue: b,
|
|
173
|
+
setFormValues: O,
|
|
174
|
+
submitForm: () => {
|
|
175
|
+
c && c(n);
|
|
176
|
+
},
|
|
177
|
+
onAssetUpload: p,
|
|
178
|
+
validateField: u,
|
|
179
|
+
validateStep: (s) => {
|
|
180
|
+
let e = !0;
|
|
181
|
+
const a = {}, t = {};
|
|
182
|
+
return s.sections.forEach((i) => {
|
|
183
|
+
i.fields.forEach((l) => {
|
|
184
|
+
t[l.id] = l;
|
|
185
|
+
});
|
|
186
|
+
}), Object.entries(t).forEach(([i, l]) => {
|
|
187
|
+
if (l.required) {
|
|
188
|
+
const { isValid: o, errorMessage: d } = u(l);
|
|
189
|
+
o || (a[l.id] = d, e = !1);
|
|
190
|
+
}
|
|
191
|
+
if ((l.type === r.TAGGABLE_MULTI_IMAGE_PICKER || l.type === r.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT) && !l.required) {
|
|
192
|
+
const o = n[l.id];
|
|
193
|
+
Array.isArray(o) && o.length > 0 && o.some((g) => !g.tag) && (a[l.id] = "Please add tags to all uploaded images", e = !1);
|
|
194
|
+
}
|
|
195
|
+
}), { isStepValid: e, errors: a };
|
|
196
|
+
},
|
|
197
|
+
onToggleImageEditor: T,
|
|
198
|
+
getRequestHeaders: V,
|
|
199
|
+
getCreateOptionExtraBody: A
|
|
200
|
+
};
|
|
201
|
+
return /* @__PURE__ */ G.createElement(L.Provider, { value: y }, I);
|
|
202
|
+
};
|
|
2
203
|
export {
|
|
3
|
-
|
|
204
|
+
B as FormValuesProvider
|
|
4
205
|
};
|
|
5
206
|
//# sourceMappingURL=index.es131.js.map
|
package/dist/index.es131.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es131.js","sources":["../src/components/ui/form-renderer/form.enums.ts"],"sourcesContent":["export enum FormFieldType {\n // Text fields\n SHORT_TEXT = 'short-text',\n EMAIL = 'email',\n LONG_TEXT = 'long-text',\n // Number fields\n NUMBER = 'number',\n MOBILE_NUMBER = 'mobile-number',\n DATE_PICKER = 'date-picker',\n\n // Selection fields\n SINGLE_COMBOBOX = 'single-combobox',\n MULTI_COMBOBOX = 'multi-combobox',\n RADIO_GROUP = 'radio-group',\n RADIO_GROUP_WITH_OPTIONAL_INPUT = 'radio-group-with-optional-input',\n CHECKBOX_GROUP = 'checkbox-group',\n\n // Upload fields\n SINGLE_IMAGE_PICKER = 'single-image-picker',\n MULTI_IMAGE_PICKER = 'multi-image-picker',\n TAGGABLE_MULTI_IMAGE_PICKER = 'taggable-multi-image-picker',\n SINGLE_VIDEO_PICKER = 'single-video-picker',\n MULTI_VIDEO_PICKER = 'multi-video-picker',\n SINGLE_VIDEO_PICKER_WITH_INPUT = 'single-video-picker-with-input',\n TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT = 'taggable-multi-image-picker-with-input',\n\n REPEATABLE_GROUP_FIELD = 'repeatable-group-field',\n}\n"],"names":["FormFieldType"],"mappings":"AAAO,IAAKA,sBAAAA,OAEVA,EAAA,aAAa,cACbA,EAAA,QAAQ,SACRA,EAAA,YAAY,aAEZA,EAAA,SAAS,UACTA,EAAA,gBAAgB,iBAChBA,EAAA,cAAc,eAGdA,EAAA,kBAAkB,mBAClBA,EAAA,iBAAiB,kBACjBA,EAAA,cAAc,eACdA,EAAA,kCAAkC,mCAClCA,EAAA,iBAAiB,kBAGjBA,EAAA,sBAAsB,uBACtBA,EAAA,qBAAqB,sBACrBA,EAAA,8BAA8B,+BAC9BA,EAAA,sBAAsB,uBACtBA,EAAA,qBAAqB,sBACrBA,EAAA,iCAAiC,kCACjCA,EAAA,yCAAyC,0CAEzCA,EAAA,yBAAyB,0BA1BfA,IAAAA,KAAA,CAAA,CAAA;"}
|
|
1
|
+
{"version":3,"file":"index.es131.js","sources":["../src/components/ui/form-renderer/context/form-values/form-values.provider.tsx"],"sourcesContent":["import React, { useState } from 'react'\nimport {\n AssetValue,\n FormField,\n FormFieldValue,\n FormStep,\n FormValues,\n RadioGroupWithInputFieldValue,\n TaggableAssetValue,\n onToggleImageEditor,\n} from '../../form.types'\nimport { FormValuesContext } from './form-values.context'\nimport { FormFieldType } from '../../form.enums'\n\nexport const FormValuesProvider: React.FC<{\n children: React.ReactNode\n initialValues?: FormValues\n onSubmit?: (values: FormValues) => void\n onAssetUpload?: (file: File) => Promise<AssetValue>\n onToggleImageEditor?: onToggleImageEditor\n getRequestHeaders?: () =>\n | Record<string, string>\n | Promise<Record<string, string>>\n getCreateOptionExtraBody?: () =>\n | Record<string, unknown>\n | Promise<Record<string, unknown>>\n}> = ({\n children,\n initialValues = {},\n onSubmit,\n onAssetUpload,\n onToggleImageEditor,\n getRequestHeaders,\n getCreateOptionExtraBody,\n}) => {\n const [values, setValues] = useState<FormValues>(initialValues)\n const [errors, setErrors] = useState<Record<string, string>>({})\n\n // to update field value\n const setValue = (fieldId: string, value: FormFieldValue) => {\n setValues((prev) => ({ ...prev, [fieldId]: value }))\n // Clear error when value changes\n if (errors[fieldId]) {\n setErrors((prev) => {\n const newErrors = { ...prev }\n delete newErrors[fieldId]\n return newErrors\n })\n }\n }\n\n // to update state all at once\n const setFormValues = (newValues: FormValues) => {\n setValues(() => newValues)\n }\n\n /**\n * Validates a field based on its type\n * @param field - The field object with all properties\n * @returns Object containing validation status and error message\n */\n const validateField = (\n field: FormField\n ): { isValid: boolean; errorMessage: string } => {\n // Special handling for repeatable groups, Since values[field.id] wont exist for repeatable groups\n if (field.type === FormFieldType.REPEATABLE_GROUP_FIELD) {\n const prefix = `${field.id}||`\n // find all the keys that start with the prefix inside values\n const keys = Object.keys(values).filter((key) => key.startsWith(prefix))\n\n // if there are no keys, return invalid, since the field is required\n if (keys.length === 0) {\n return { isValid: false, errorMessage: 'This field is required' }\n }\n\n // loop through all the keys and validate each field if it is required using the same function validation field\n for (const key of keys) {\n const subField = field.options.find(\n (option) => option.id === key.split('||')[2]\n )\n\n const modifiedSubField = { ...subField, id: key }\n const { isValid, errorMessage } = validateField(\n modifiedSubField as FormField\n )\n if (!isValid) {\n return { isValid: false, errorMessage }\n }\n }\n\n // if all the fields are valid, return valid\n return { isValid: true, errorMessage: '' }\n }\n\n // For normal fields, proceed with regular validation\n const value = values[field.id]\n\n // Common check for undefined/null values for all required fields\n if (field.required && (value === undefined || value === null)) {\n return { isValid: false, errorMessage: 'This field is required' }\n }\n\n // If not required and no value, it's valid\n if (\n !field.required &&\n (value === undefined || value === null || value === '')\n ) {\n return { isValid: true, errorMessage: '' }\n }\n\n // Type-specific validation\n switch (field.type) {\n // Text fields\n case FormFieldType.SHORT_TEXT:\n case FormFieldType.LONG_TEXT:\n case FormFieldType.SINGLE_VIDEO_PICKER_WITH_INPUT:\n if (value === '') {\n return { isValid: false, errorMessage: 'This field cannot be empty' }\n }\n break\n\n case FormFieldType.EMAIL:\n if (value === '') {\n return { isValid: false, errorMessage: 'Email is required' }\n }\n // Basic email validation regex\n if (!/^\\S+@\\S+\\.\\S+$/.test(value as string)) {\n return {\n isValid: false,\n errorMessage: 'Please enter a valid email address',\n }\n }\n break\n\n // Number fields\n case FormFieldType.NUMBER:\n if (value === '') {\n return { isValid: false, errorMessage: 'Number is required' }\n }\n // Check if it's actually a number\n if (isNaN(Number(value))) {\n return { isValid: false, errorMessage: 'Please enter a valid number' }\n }\n break\n\n case FormFieldType.MOBILE_NUMBER:\n if (value === '') {\n return { isValid: false, errorMessage: 'Mobile number is required' }\n }\n // Mobile number validation\n if (!/^\\d{10,15}$/.test((value as string).replace(/\\D/g, ''))) {\n return {\n isValid: false,\n errorMessage: 'Please enter a valid mobile number',\n }\n }\n break\n\n case FormFieldType.DATE_PICKER:\n if (!value || value === '') {\n return { isValid: false, errorMessage: 'Date is required' }\n }\n break\n\n // Selection fields\n case FormFieldType.SINGLE_COMBOBOX:\n if (!value || value === '') {\n return {\n isValid: false,\n errorMessage: 'Please select or enter a value',\n }\n }\n break\n\n case FormFieldType.MULTI_COMBOBOX:\n // Could be array or comma-separated string depending on implementation\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return {\n isValid: false,\n errorMessage: 'Please select at least one option',\n }\n }\n } else if (typeof value === 'string') {\n if (!value || value.split(',').filter(Boolean).length === 0) {\n return {\n isValid: false,\n errorMessage: 'Please select at least one option',\n }\n }\n }\n break\n\n case FormFieldType.CREATABLE_MULTI_COMBOBOX: {\n const arr = Array.isArray(value)\n ? value\n : typeof value === 'string'\n ? value.split(',').filter(Boolean)\n : []\n const minSelected = field.minSelected ?? 0\n const maxSelected = field.maxSelected\n if (minSelected > 0 && arr.length < minSelected) {\n return {\n isValid: false,\n errorMessage:\n maxSelected != null\n ? `Select at least ${minSelected} option(s) (max ${maxSelected})`\n : `Select at least ${minSelected} option(s)`,\n }\n }\n if (maxSelected != null && arr.length > maxSelected) {\n return {\n isValid: false,\n errorMessage: `Select at most ${maxSelected} option(s)`,\n }\n }\n if (field.required && arr.length === 0) {\n return {\n isValid: false,\n errorMessage: 'This field is required',\n }\n }\n break\n }\n\n case FormFieldType.CHECKBOX_GROUP:\n case FormFieldType.RADIO_GROUP:\n if (!value || value === '') {\n return { isValid: false, errorMessage: 'Please select an option' }\n }\n break\n\n case FormFieldType.RADIO_GROUP_WITH_OPTIONAL_INPUT: {\n const radioValue = value as RadioGroupWithInputFieldValue\n if (!radioValue || !radioValue.radio_value) {\n return { isValid: false, errorMessage: 'Please select an option' }\n }\n\n // If \"Other\" option is selected, check if input is provided\n if (\n radioValue.radio_value === field.inputTriggerOptionValue &&\n !radioValue.input_value\n ) {\n return {\n isValid: false,\n errorMessage:\n 'Please provide additional information for your selection',\n }\n }\n break\n }\n\n // Media upload fields\n case FormFieldType.SINGLE_IMAGE_PICKER:\n if (!value || !(value as AssetValue).public_url) {\n return { isValid: false, errorMessage: 'Please upload an image' }\n }\n break\n\n case FormFieldType.SINGLE_VIDEO_PICKER:\n if (!value || !(value as AssetValue).public_url) {\n return { isValid: false, errorMessage: 'Please upload a video' }\n }\n break\n\n case FormFieldType.MULTI_IMAGE_PICKER:\n if (!Array.isArray(value) || value.length === 0) {\n return {\n isValid: false,\n errorMessage: 'Please upload at least one image',\n }\n }\n break\n\n case FormFieldType.MULTI_VIDEO_PICKER:\n if (!Array.isArray(value) || value.length === 0) {\n return {\n isValid: false,\n errorMessage: 'Please upload at least one video',\n }\n }\n break\n\n case FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER:\n case FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT: {\n if (!Array.isArray(value) || value.length === 0) {\n return {\n isValid: false,\n errorMessage: 'Please upload at least one image',\n }\n }\n\n // Check if all uploaded images have tags assigned\n const taggedAssets = value as TaggableAssetValue[]\n const missingTags = taggedAssets.some((asset) => !asset.tag)\n if (missingTags) {\n return {\n isValid: false,\n errorMessage: 'Please add tags to all uploaded images',\n }\n }\n break\n }\n }\n\n // If we reach here, validation passed\n return { isValid: true, errorMessage: '' }\n }\n // New function to validate an entire step\n const validateStep = (\n step: FormStep\n ): { isStepValid: boolean; errors: Record<string, string> } => {\n let isStepValid = true\n const errors = {} as Record<string, string>\n const fieldIdTypeMap = {} as Record<string, FormField>\n\n // Collect all required field IDs from this step\n step.sections.forEach((section) => {\n section.fields.forEach((field) => {\n fieldIdTypeMap[field.id] = field\n })\n })\n\n // Validate each required field\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Object.entries(fieldIdTypeMap).forEach(([_fieldId, field]) => {\n // Only validate required fields\n if (field.required) {\n // We can now pass the field type to a more specialized validation function\n const { isValid, errorMessage } = validateField(field)\n if (!isValid) {\n errors[field.id] = errorMessage\n isStepValid = false\n }\n }\n\n // For taggable image fields, validate tags even if field is optional\n // If images are uploaded, their tags must be filled in\n if (\n (field.type === FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER ||\n field.type ===\n FormFieldType.TAGGABLE_MULTI_IMAGE_PICKER_WITH_INPUT) &&\n !field.required\n ) {\n const value = values[field.id]\n if (Array.isArray(value) && value.length > 0) {\n const taggedAssets = value as TaggableAssetValue[]\n const missingTags = taggedAssets.some((asset) => !asset.tag)\n if (missingTags) {\n errors[field.id] = 'Please add tags to all uploaded images'\n isStepValid = false\n }\n }\n }\n })\n\n return { isStepValid, errors }\n }\n\n const submitForm = () => {\n if (onSubmit) {\n onSubmit(values)\n }\n }\n\n const value = {\n values,\n errors,\n setValue,\n setFormValues,\n submitForm,\n onAssetUpload,\n validateField,\n validateStep,\n onToggleImageEditor,\n getRequestHeaders,\n getCreateOptionExtraBody,\n }\n\n return (\n <FormValuesContext.Provider value={value}>\n {children}\n </FormValuesContext.Provider>\n )\n}\n"],"names":["FormValuesProvider","children","initialValues","onSubmit","onAssetUpload","onToggleImageEditor","getRequestHeaders","getCreateOptionExtraBody","values","setValues","useState","errors","setErrors","setValue","fieldId","value","prev","newErrors","setFormValues","newValues","validateField","field","FormFieldType","prefix","keys","key","modifiedSubField","option","isValid","errorMessage","arr","minSelected","maxSelected","radioValue","asset","step","isStepValid","fieldIdTypeMap","section","_fieldId","React","FormValuesContext"],"mappings":"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"}
|