@ioca/react 1.5.19 → 1.5.21
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/lib/css/index.css +1 -2
- package/lib/es/components/affix/affix.js +1 -1
- package/lib/es/components/affix/index.js +0 -1
- package/lib/es/components/affix/totop.js +0 -1
- package/lib/es/components/badge/badge.js +1 -1
- package/lib/es/components/badge/index.js +0 -1
- package/lib/es/components/button/button.js +1 -1
- package/lib/es/components/button/confirm.js +0 -1
- package/lib/es/components/button/group.js +0 -1
- package/lib/es/components/button/index.js +0 -1
- package/lib/es/components/button/toggle.js +0 -1
- package/lib/es/components/card/card.js +1 -1
- package/lib/es/components/card/index.js +0 -1
- package/lib/es/components/checkbox/checkbox.js +2 -1
- package/lib/es/components/checkbox/index.js +0 -1
- package/lib/es/components/checkbox/item.js +0 -1
- package/lib/es/components/collapse/collapse.js +1 -1
- package/lib/es/components/collapse/index.js +0 -1
- package/lib/es/components/collapse/item.js +0 -1
- package/lib/es/components/datagrid/cell.js +0 -1
- package/lib/es/components/datagrid/datagrid.js +1 -1
- package/lib/es/components/datagrid/helper.js +0 -1
- package/lib/es/components/datagrid/index.js +0 -1
- package/lib/es/components/datagrid/resize.js +0 -1
- package/lib/es/components/datagrid/row.js +0 -1
- package/lib/es/components/datagrid/sorter.js +0 -1
- package/lib/es/components/datagrid/virtual.js +130 -104
- package/lib/es/components/description/description.js +1 -1
- package/lib/es/components/description/index.js +0 -1
- package/lib/es/components/drawer/drawer.js +1 -1
- package/lib/es/components/drawer/index.js +0 -1
- package/lib/es/components/dropdown/dropdown.js +1 -1
- package/lib/es/components/dropdown/index.js +0 -1
- package/lib/es/components/dropdown/item.js +0 -1
- package/lib/es/components/editor/controls.js +0 -1
- package/lib/es/components/editor/editor.js +1 -1
- package/lib/es/components/editor/index.js +0 -1
- package/lib/es/components/editor/memtion.js +0 -1
- package/lib/es/components/flex/flex.js +1 -1
- package/lib/es/components/flex/index.js +0 -1
- package/lib/es/components/form/context.js +0 -1
- package/lib/es/components/form/field.js +0 -1
- package/lib/es/components/form/form.js +1 -1
- package/lib/es/components/form/index.js +0 -1
- package/lib/es/components/form/useConfig.js +0 -1
- package/lib/es/components/form/useForm.js +1 -2
- package/lib/es/components/form/utils.js +0 -1
- package/lib/es/components/icon/icon.js +1 -1
- package/lib/es/components/icon/index.js +0 -1
- package/lib/es/components/image/image.js +1 -1
- package/lib/es/components/image/index.js +0 -1
- package/lib/es/components/image/list.js +0 -1
- package/lib/es/components/input/container.js +0 -1
- package/lib/es/components/input/index.js +0 -1
- package/lib/es/components/input/input.js +1 -1
- package/lib/es/components/input/number.js +1 -1
- package/lib/es/components/input/range.js +1 -1
- package/lib/es/components/input/textarea.js +1 -1
- package/lib/es/components/list/index.js +0 -1
- package/lib/es/components/list/item.js +0 -1
- package/lib/es/components/list/list.js +1 -1
- package/lib/es/components/loading/index.js +0 -1
- package/lib/es/components/loading/loading.js +1 -1
- package/lib/es/components/message/index.js +0 -1
- package/lib/es/components/message/message.js +1 -1
- package/lib/es/components/modal/content.js +1 -1
- package/lib/es/components/modal/context.js +0 -1
- package/lib/es/components/modal/hookModal.js +0 -1
- package/lib/es/components/modal/index.js +0 -1
- package/lib/es/components/modal/modal.js +1 -1
- package/lib/es/components/modal/modalManager.js +0 -1
- package/lib/es/components/modal/useModal.js +0 -1
- package/lib/es/components/pagination/index.js +0 -1
- package/lib/es/components/pagination/page.js +0 -1
- package/lib/es/components/pagination/pagination.js +1 -1
- package/lib/es/components/picker/colors/footer.js +0 -1
- package/lib/es/components/picker/colors/handle.js +0 -1
- package/lib/es/components/picker/colors/index.js +1 -1
- package/lib/es/components/picker/daterange/daterange.js +2 -1
- package/lib/es/components/picker/daterange/index.js +0 -1
- package/lib/es/components/picker/daterange/panel.js +0 -1
- package/lib/es/components/picker/dates/dates.js +0 -1
- package/lib/es/components/picker/dates/index.js +1 -1
- package/lib/es/components/picker/dates/panel.js +0 -1
- package/lib/es/components/picker/time/index.js +0 -1
- package/lib/es/components/picker/time/item.js +0 -1
- package/lib/es/components/picker/time/panel.js +1 -1
- package/lib/es/components/popconfirm/index.js +0 -1
- package/lib/es/components/popconfirm/popconfirm.js +1 -1
- package/lib/es/components/popup/content.js +0 -1
- package/lib/es/components/popup/index.js +0 -1
- package/lib/es/components/popup/popup.js +1 -1
- package/lib/es/components/progress/circle.js +0 -1
- package/lib/es/components/progress/index.js +0 -1
- package/lib/es/components/progress/line.js +0 -1
- package/lib/es/components/progress/progress.js +2 -1
- package/lib/es/components/radio/index.js +0 -1
- package/lib/es/components/radio/item.js +0 -1
- package/lib/es/components/radio/radio.js +2 -1
- package/lib/es/components/resizable/index.js +0 -1
- package/lib/es/components/resizable/resizable.js +1 -1
- package/lib/es/components/river/index.js +0 -1
- package/lib/es/components/river/river.js +1 -1
- package/lib/es/components/scroll/index.js +0 -1
- package/lib/es/components/scroll/scroll.js +1 -1
- package/lib/es/components/select/index.js +0 -1
- package/lib/es/components/select/options.js +0 -1
- package/lib/es/components/select/select.js +2 -1
- package/lib/es/components/step/divider.js +1 -1
- package/lib/es/components/step/index.js +0 -1
- package/lib/es/components/step/item.js +0 -1
- package/lib/es/components/step/step.js +1 -1
- package/lib/es/components/swiper/index.js +0 -1
- package/lib/es/components/swiper/item.js +0 -1
- package/lib/es/components/swiper/swiper.js +1 -1
- package/lib/es/components/tabs/contents.js +0 -1
- package/lib/es/components/tabs/helper.js +0 -1
- package/lib/es/components/tabs/index.js +0 -1
- package/lib/es/components/tabs/item.js +0 -1
- package/lib/es/components/tabs/navs.js +0 -1
- package/lib/es/components/tabs/tabs.js +9 -18
- package/lib/es/components/tag/index.js +0 -1
- package/lib/es/components/tag/tag.js +1 -1
- package/lib/es/components/text/highlight.js +0 -1
- package/lib/es/components/text/index.js +0 -1
- package/lib/es/components/text/number.js +0 -1
- package/lib/es/components/text/text.js +1 -1
- package/lib/es/components/text/time.js +0 -1
- package/lib/es/components/tree/index.js +0 -1
- package/lib/es/components/tree/item.js +44 -58
- package/lib/es/components/tree/tree.js +123 -20
- package/lib/es/components/tree/virtual.js +43 -0
- package/lib/es/components/upload/dropbox.js +0 -1
- package/lib/es/components/upload/index.js +0 -1
- package/lib/es/components/upload/renderFile.js +0 -1
- package/lib/es/components/upload/upload.js +1 -1
- package/lib/es/components/utils/empty/index.js +1 -1
- package/lib/es/components/utils/helpericon/helpericon.js +1 -1
- package/lib/es/components/utils/helpericon/index.js +0 -1
- package/lib/es/components/video/index.js +0 -1
- package/lib/es/components/video/video.js +1 -1
- package/lib/es/index.js +1 -1
- package/lib/es/js/hooks.js +0 -1
- package/lib/es/js/usePreview/content.js +3 -4
- package/lib/es/js/usePreview/index.js +1 -1
- package/lib/es/js/usePreview/renderFile.js +0 -1
- package/lib/es/js/usePreview/type.js +0 -1
- package/lib/es/js/useRipple/index.js +2 -1
- package/lib/es/js/useTheme/index.js +0 -1
- package/lib/es/js/utils.js +0 -1
- package/lib/index.js +338 -197
- package/lib/types/components/tabs/type.d.ts +1 -1
- package/lib/types/components/tree/type.d.ts +8 -5
- package/lib/types/js/usePreview/type.d.ts +1 -1
- package/package.json +8 -11
- package/lib/cjs/components/affix/affix.js +0 -80
- package/lib/cjs/components/affix/affix.js.map +0 -1
- package/lib/cjs/components/affix/index.js +0 -10
- package/lib/cjs/components/affix/index.js.map +0 -1
- package/lib/cjs/components/affix/totop.js +0 -21
- package/lib/cjs/components/affix/totop.js.map +0 -1
- package/lib/cjs/components/badge/badge.js +0 -21
- package/lib/cjs/components/badge/badge.js.map +0 -1
- package/lib/cjs/components/badge/index.js +0 -10
- package/lib/cjs/components/badge/index.js.map +0 -1
- package/lib/cjs/components/button/button.js +0 -72
- package/lib/cjs/components/button/button.js.map +0 -1
- package/lib/cjs/components/button/confirm.js +0 -58
- package/lib/cjs/components/button/confirm.js.map +0 -1
- package/lib/cjs/components/button/group.js +0 -29
- package/lib/cjs/components/button/group.js.map +0 -1
- package/lib/cjs/components/button/index.js +0 -10
- package/lib/cjs/components/button/index.js.map +0 -1
- package/lib/cjs/components/button/toggle.js +0 -47
- package/lib/cjs/components/button/toggle.js.map +0 -1
- package/lib/cjs/components/card/card.js +0 -21
- package/lib/cjs/components/card/card.js.map +0 -1
- package/lib/cjs/components/card/index.js +0 -10
- package/lib/cjs/components/card/index.js.map +0 -1
- package/lib/cjs/components/checkbox/checkbox.js +0 -47
- package/lib/cjs/components/checkbox/checkbox.js.map +0 -1
- package/lib/cjs/components/checkbox/index.js +0 -10
- package/lib/cjs/components/checkbox/index.js.map +0 -1
- package/lib/cjs/components/checkbox/item.js +0 -43
- package/lib/cjs/components/checkbox/item.js.map +0 -1
- package/lib/cjs/components/collapse/collapse.js +0 -80
- package/lib/cjs/components/collapse/collapse.js.map +0 -1
- package/lib/cjs/components/collapse/index.js +0 -10
- package/lib/cjs/components/collapse/index.js.map +0 -1
- package/lib/cjs/components/collapse/item.js +0 -12
- package/lib/cjs/components/collapse/item.js.map +0 -1
- package/lib/cjs/components/datagrid/cell.js +0 -34
- package/lib/cjs/components/datagrid/cell.js.map +0 -1
- package/lib/cjs/components/datagrid/datagrid.js +0 -219
- package/lib/cjs/components/datagrid/datagrid.js.map +0 -1
- package/lib/cjs/components/datagrid/helper.js +0 -83
- package/lib/cjs/components/datagrid/helper.js.map +0 -1
- package/lib/cjs/components/datagrid/index.js +0 -10
- package/lib/cjs/components/datagrid/index.js.map +0 -1
- package/lib/cjs/components/datagrid/resize.js +0 -72
- package/lib/cjs/components/datagrid/resize.js.map +0 -1
- package/lib/cjs/components/datagrid/row.js +0 -55
- package/lib/cjs/components/datagrid/row.js.map +0 -1
- package/lib/cjs/components/datagrid/sorter.js +0 -21
- package/lib/cjs/components/datagrid/sorter.js.map +0 -1
- package/lib/cjs/components/datagrid/virtual.js +0 -283
- package/lib/cjs/components/datagrid/virtual.js.map +0 -1
- package/lib/cjs/components/description/description.js +0 -36
- package/lib/cjs/components/description/description.js.map +0 -1
- package/lib/cjs/components/description/index.js +0 -10
- package/lib/cjs/components/description/index.js.map +0 -1
- package/lib/cjs/components/drawer/drawer.js +0 -77
- package/lib/cjs/components/drawer/drawer.js.map +0 -1
- package/lib/cjs/components/drawer/index.js +0 -10
- package/lib/cjs/components/drawer/index.js.map +0 -1
- package/lib/cjs/components/dropdown/dropdown.js +0 -36
- package/lib/cjs/components/dropdown/dropdown.js.map +0 -1
- package/lib/cjs/components/dropdown/index.js +0 -10
- package/lib/cjs/components/dropdown/index.js.map +0 -1
- package/lib/cjs/components/dropdown/item.js +0 -38
- package/lib/cjs/components/dropdown/item.js.map +0 -1
- package/lib/cjs/components/editor/controls.js +0 -64
- package/lib/cjs/components/editor/controls.js.map +0 -1
- package/lib/cjs/components/editor/editor.js +0 -287
- package/lib/cjs/components/editor/editor.js.map +0 -1
- package/lib/cjs/components/editor/index.js +0 -10
- package/lib/cjs/components/editor/index.js.map +0 -1
- package/lib/cjs/components/editor/memtion.js +0 -302
- package/lib/cjs/components/editor/memtion.js.map +0 -1
- package/lib/cjs/components/flex/flex.js +0 -36
- package/lib/cjs/components/flex/flex.js.map +0 -1
- package/lib/cjs/components/flex/index.js +0 -10
- package/lib/cjs/components/flex/index.js.map +0 -1
- package/lib/cjs/components/form/context.js +0 -10
- package/lib/cjs/components/form/context.js.map +0 -1
- package/lib/cjs/components/form/field.js +0 -81
- package/lib/cjs/components/form/field.js.map +0 -1
- package/lib/cjs/components/form/form.js +0 -76
- package/lib/cjs/components/form/form.js.map +0 -1
- package/lib/cjs/components/form/index.js +0 -10
- package/lib/cjs/components/form/index.js.map +0 -1
- package/lib/cjs/components/form/useConfig.js +0 -38
- package/lib/cjs/components/form/useConfig.js.map +0 -1
- package/lib/cjs/components/form/useForm.js +0 -127
- package/lib/cjs/components/form/useForm.js.map +0 -1
- package/lib/cjs/components/form/utils.js +0 -33
- package/lib/cjs/components/form/utils.js.map +0 -1
- package/lib/cjs/components/icon/icon.js +0 -31
- package/lib/cjs/components/icon/icon.js.map +0 -1
- package/lib/cjs/components/icon/index.js +0 -10
- package/lib/cjs/components/icon/index.js.map +0 -1
- package/lib/cjs/components/image/image.js +0 -103
- package/lib/cjs/components/image/image.js.map +0 -1
- package/lib/cjs/components/image/index.js +0 -10
- package/lib/cjs/components/image/index.js.map +0 -1
- package/lib/cjs/components/image/list.js +0 -47
- package/lib/cjs/components/image/list.js.map +0 -1
- package/lib/cjs/components/input/container.js +0 -22
- package/lib/cjs/components/input/container.js.map +0 -1
- package/lib/cjs/components/input/index.js +0 -10
- package/lib/cjs/components/input/index.js.map +0 -1
- package/lib/cjs/components/input/input.js +0 -85
- package/lib/cjs/components/input/input.js.map +0 -1
- package/lib/cjs/components/input/number.js +0 -118
- package/lib/cjs/components/input/number.js.map +0 -1
- package/lib/cjs/components/input/range.js +0 -82
- package/lib/cjs/components/input/range.js.map +0 -1
- package/lib/cjs/components/input/textarea.js +0 -64
- package/lib/cjs/components/input/textarea.js.map +0 -1
- package/lib/cjs/components/list/index.js +0 -10
- package/lib/cjs/components/list/index.js.map +0 -1
- package/lib/cjs/components/list/item.js +0 -23
- package/lib/cjs/components/list/item.js.map +0 -1
- package/lib/cjs/components/list/list.js +0 -33
- package/lib/cjs/components/list/list.js.map +0 -1
- package/lib/cjs/components/loading/index.js +0 -10
- package/lib/cjs/components/loading/index.js.map +0 -1
- package/lib/cjs/components/loading/loading.js +0 -26
- package/lib/cjs/components/loading/loading.js.map +0 -1
- package/lib/cjs/components/message/index.js +0 -11
- package/lib/cjs/components/message/index.js.map +0 -1
- package/lib/cjs/components/message/message.js +0 -239
- package/lib/cjs/components/message/message.js.map +0 -1
- package/lib/cjs/components/modal/content.js +0 -45
- package/lib/cjs/components/modal/content.js.map +0 -1
- package/lib/cjs/components/modal/context.js +0 -10
- package/lib/cjs/components/modal/context.js.map +0 -1
- package/lib/cjs/components/modal/hookModal.js +0 -31
- package/lib/cjs/components/modal/hookModal.js.map +0 -1
- package/lib/cjs/components/modal/index.js +0 -10
- package/lib/cjs/components/modal/index.js.map +0 -1
- package/lib/cjs/components/modal/modal.js +0 -140
- package/lib/cjs/components/modal/modal.js.map +0 -1
- package/lib/cjs/components/modal/modalManager.js +0 -83
- package/lib/cjs/components/modal/modalManager.js.map +0 -1
- package/lib/cjs/components/modal/useModal.js +0 -38
- package/lib/cjs/components/modal/useModal.js.map +0 -1
- package/lib/cjs/components/pagination/index.js +0 -10
- package/lib/cjs/components/pagination/index.js.map +0 -1
- package/lib/cjs/components/pagination/page.js +0 -32
- package/lib/cjs/components/pagination/page.js.map +0 -1
- package/lib/cjs/components/pagination/pagination.js +0 -52
- package/lib/cjs/components/pagination/pagination.js.map +0 -1
- package/lib/cjs/components/picker/colors/footer.js +0 -39
- package/lib/cjs/components/picker/colors/footer.js.map +0 -1
- package/lib/cjs/components/picker/colors/handle.js +0 -18
- package/lib/cjs/components/picker/colors/handle.js.map +0 -1
- package/lib/cjs/components/picker/colors/index.js +0 -72
- package/lib/cjs/components/picker/colors/index.js.map +0 -1
- package/lib/cjs/components/picker/daterange/daterange.js +0 -60
- package/lib/cjs/components/picker/daterange/daterange.js.map +0 -1
- package/lib/cjs/components/picker/daterange/index.js +0 -11
- package/lib/cjs/components/picker/daterange/index.js.map +0 -1
- package/lib/cjs/components/picker/daterange/panel.js +0 -55
- package/lib/cjs/components/picker/daterange/panel.js.map +0 -1
- package/lib/cjs/components/picker/dates/dates.js +0 -63
- package/lib/cjs/components/picker/dates/dates.js.map +0 -1
- package/lib/cjs/components/picker/dates/index.js +0 -73
- package/lib/cjs/components/picker/dates/index.js.map +0 -1
- package/lib/cjs/components/picker/dates/panel.js +0 -93
- package/lib/cjs/components/picker/dates/panel.js.map +0 -1
- package/lib/cjs/components/picker/time/index.js +0 -55
- package/lib/cjs/components/picker/time/index.js.map +0 -1
- package/lib/cjs/components/picker/time/item.js +0 -23
- package/lib/cjs/components/picker/time/item.js.map +0 -1
- package/lib/cjs/components/picker/time/panel.js +0 -104
- package/lib/cjs/components/picker/time/panel.js.map +0 -1
- package/lib/cjs/components/popconfirm/index.js +0 -10
- package/lib/cjs/components/popconfirm/index.js.map +0 -1
- package/lib/cjs/components/popconfirm/popconfirm.js +0 -55
- package/lib/cjs/components/popconfirm/popconfirm.js.map +0 -1
- package/lib/cjs/components/popup/content.js +0 -51
- package/lib/cjs/components/popup/content.js.map +0 -1
- package/lib/cjs/components/popup/index.js +0 -10
- package/lib/cjs/components/popup/index.js.map +0 -1
- package/lib/cjs/components/popup/popup.js +0 -495
- package/lib/cjs/components/popup/popup.js.map +0 -1
- package/lib/cjs/components/progress/circle.js +0 -16
- package/lib/cjs/components/progress/circle.js.map +0 -1
- package/lib/cjs/components/progress/index.js +0 -10
- package/lib/cjs/components/progress/index.js.map +0 -1
- package/lib/cjs/components/progress/line.js +0 -22
- package/lib/cjs/components/progress/line.js.map +0 -1
- package/lib/cjs/components/progress/progress.js +0 -90
- package/lib/cjs/components/progress/progress.js.map +0 -1
- package/lib/cjs/components/radio/index.js +0 -10
- package/lib/cjs/components/radio/index.js.map +0 -1
- package/lib/cjs/components/radio/item.js +0 -25
- package/lib/cjs/components/radio/item.js.map +0 -1
- package/lib/cjs/components/radio/radio.js +0 -40
- package/lib/cjs/components/radio/radio.js.map +0 -1
- package/lib/cjs/components/resizable/index.js +0 -10
- package/lib/cjs/components/resizable/index.js.map +0 -1
- package/lib/cjs/components/resizable/resizable.js +0 -68
- package/lib/cjs/components/resizable/resizable.js.map +0 -1
- package/lib/cjs/components/river/index.js +0 -10
- package/lib/cjs/components/river/index.js.map +0 -1
- package/lib/cjs/components/river/river.js +0 -114
- package/lib/cjs/components/river/river.js.map +0 -1
- package/lib/cjs/components/scroll/index.js +0 -10
- package/lib/cjs/components/scroll/index.js.map +0 -1
- package/lib/cjs/components/scroll/scroll.js +0 -78
- package/lib/cjs/components/scroll/scroll.js.map +0 -1
- package/lib/cjs/components/select/index.js +0 -10
- package/lib/cjs/components/select/index.js.map +0 -1
- package/lib/cjs/components/select/options.js +0 -55
- package/lib/cjs/components/select/options.js.map +0 -1
- package/lib/cjs/components/select/select.js +0 -103
- package/lib/cjs/components/select/select.js.map +0 -1
- package/lib/cjs/components/step/divider.js +0 -12
- package/lib/cjs/components/step/divider.js.map +0 -1
- package/lib/cjs/components/step/index.js +0 -10
- package/lib/cjs/components/step/index.js.map +0 -1
- package/lib/cjs/components/step/item.js +0 -30
- package/lib/cjs/components/step/item.js.map +0 -1
- package/lib/cjs/components/step/step.js +0 -44
- package/lib/cjs/components/step/step.js.map +0 -1
- package/lib/cjs/components/swiper/index.js +0 -10
- package/lib/cjs/components/swiper/index.js.map +0 -1
- package/lib/cjs/components/swiper/item.js +0 -33
- package/lib/cjs/components/swiper/item.js.map +0 -1
- package/lib/cjs/components/swiper/swiper.js +0 -241
- package/lib/cjs/components/swiper/swiper.js.map +0 -1
- package/lib/cjs/components/tabs/contents.js +0 -28
- package/lib/cjs/components/tabs/contents.js.map +0 -1
- package/lib/cjs/components/tabs/helper.js +0 -68
- package/lib/cjs/components/tabs/helper.js.map +0 -1
- package/lib/cjs/components/tabs/index.js +0 -10
- package/lib/cjs/components/tabs/index.js.map +0 -1
- package/lib/cjs/components/tabs/item.js +0 -12
- package/lib/cjs/components/tabs/item.js.map +0 -1
- package/lib/cjs/components/tabs/navs.js +0 -38
- package/lib/cjs/components/tabs/navs.js.map +0 -1
- package/lib/cjs/components/tabs/tabs.js +0 -264
- package/lib/cjs/components/tabs/tabs.js.map +0 -1
- package/lib/cjs/components/tag/index.js +0 -10
- package/lib/cjs/components/tag/index.js.map +0 -1
- package/lib/cjs/components/tag/tag.js +0 -26
- package/lib/cjs/components/tag/tag.js.map +0 -1
- package/lib/cjs/components/text/highlight.js +0 -32
- package/lib/cjs/components/text/highlight.js.map +0 -1
- package/lib/cjs/components/text/index.js +0 -10
- package/lib/cjs/components/text/index.js.map +0 -1
- package/lib/cjs/components/text/number.js +0 -31
- package/lib/cjs/components/text/number.js.map +0 -1
- package/lib/cjs/components/text/text.js +0 -42
- package/lib/cjs/components/text/text.js.map +0 -1
- package/lib/cjs/components/text/time.js +0 -24
- package/lib/cjs/components/text/time.js.map +0 -1
- package/lib/cjs/components/tree/index.js +0 -10
- package/lib/cjs/components/tree/index.js.map +0 -1
- package/lib/cjs/components/tree/item.js +0 -80
- package/lib/cjs/components/tree/item.js.map +0 -1
- package/lib/cjs/components/tree/tree.js +0 -134
- package/lib/cjs/components/tree/tree.js.map +0 -1
- package/lib/cjs/components/upload/dropbox.js +0 -54
- package/lib/cjs/components/upload/dropbox.js.map +0 -1
- package/lib/cjs/components/upload/index.js +0 -10
- package/lib/cjs/components/upload/index.js.map +0 -1
- package/lib/cjs/components/upload/renderFile.js +0 -66
- package/lib/cjs/components/upload/renderFile.js.map +0 -1
- package/lib/cjs/components/upload/upload.js +0 -163
- package/lib/cjs/components/upload/upload.js.map +0 -1
- package/lib/cjs/components/utils/empty/index.js +0 -19
- package/lib/cjs/components/utils/empty/index.js.map +0 -1
- package/lib/cjs/components/utils/helpericon/helpericon.js +0 -32
- package/lib/cjs/components/utils/helpericon/helpericon.js.map +0 -1
- package/lib/cjs/components/utils/helpericon/index.js +0 -10
- package/lib/cjs/components/utils/helpericon/index.js.map +0 -1
- package/lib/cjs/components/video/index.js +0 -10
- package/lib/cjs/components/video/index.js.map +0 -1
- package/lib/cjs/components/video/video.js +0 -181
- package/lib/cjs/components/video/video.js.map +0 -1
- package/lib/cjs/index.js +0 -92
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/js/hooks.js +0 -272
- package/lib/cjs/js/hooks.js.map +0 -1
- package/lib/cjs/js/usePreview/content.js +0 -164
- package/lib/cjs/js/usePreview/content.js.map +0 -1
- package/lib/cjs/js/usePreview/index.js +0 -27
- package/lib/cjs/js/usePreview/index.js.map +0 -1
- package/lib/cjs/js/usePreview/renderFile.js +0 -24
- package/lib/cjs/js/usePreview/renderFile.js.map +0 -1
- package/lib/cjs/js/usePreview/type.js +0 -13
- package/lib/cjs/js/usePreview/type.js.map +0 -1
- package/lib/cjs/js/useRipple/index.js +0 -51
- package/lib/cjs/js/useRipple/index.js.map +0 -1
- package/lib/cjs/js/useTheme/index.js +0 -155
- package/lib/cjs/js/useTheme/index.js.map +0 -1
- package/lib/cjs/js/utils.js +0 -302
- package/lib/cjs/js/utils.js.map +0 -1
- package/lib/css/colors.css +0 -792
- package/lib/css/index.css.map +0 -1
- package/lib/css/input.css +0 -214
- package/lib/css/reset.css +0 -140
- package/lib/css/tokens.css +0 -13
- package/lib/css/utilities.css +0 -1973
- package/lib/es/components/affix/affix.js.map +0 -1
- package/lib/es/components/affix/index.js.map +0 -1
- package/lib/es/components/affix/totop.js.map +0 -1
- package/lib/es/components/badge/badge.js.map +0 -1
- package/lib/es/components/badge/index.js.map +0 -1
- package/lib/es/components/button/button.js.map +0 -1
- package/lib/es/components/button/confirm.js.map +0 -1
- package/lib/es/components/button/group.js.map +0 -1
- package/lib/es/components/button/index.js.map +0 -1
- package/lib/es/components/button/toggle.js.map +0 -1
- package/lib/es/components/card/card.js.map +0 -1
- package/lib/es/components/card/index.js.map +0 -1
- package/lib/es/components/checkbox/checkbox.js.map +0 -1
- package/lib/es/components/checkbox/index.js.map +0 -1
- package/lib/es/components/checkbox/item.js.map +0 -1
- package/lib/es/components/collapse/collapse.js.map +0 -1
- package/lib/es/components/collapse/index.js.map +0 -1
- package/lib/es/components/collapse/item.js.map +0 -1
- package/lib/es/components/datagrid/cell.js.map +0 -1
- package/lib/es/components/datagrid/datagrid.js.map +0 -1
- package/lib/es/components/datagrid/helper.js.map +0 -1
- package/lib/es/components/datagrid/index.js.map +0 -1
- package/lib/es/components/datagrid/resize.js.map +0 -1
- package/lib/es/components/datagrid/row.js.map +0 -1
- package/lib/es/components/datagrid/sorter.js.map +0 -1
- package/lib/es/components/datagrid/virtual.js.map +0 -1
- package/lib/es/components/description/description.js.map +0 -1
- package/lib/es/components/description/index.js.map +0 -1
- package/lib/es/components/drawer/drawer.js.map +0 -1
- package/lib/es/components/drawer/index.js.map +0 -1
- package/lib/es/components/dropdown/dropdown.js.map +0 -1
- package/lib/es/components/dropdown/index.js.map +0 -1
- package/lib/es/components/dropdown/item.js.map +0 -1
- package/lib/es/components/editor/controls.js.map +0 -1
- package/lib/es/components/editor/editor.js.map +0 -1
- package/lib/es/components/editor/index.js.map +0 -1
- package/lib/es/components/editor/memtion.js.map +0 -1
- package/lib/es/components/flex/flex.js.map +0 -1
- package/lib/es/components/flex/index.js.map +0 -1
- package/lib/es/components/form/context.js.map +0 -1
- package/lib/es/components/form/field.js.map +0 -1
- package/lib/es/components/form/form.js.map +0 -1
- package/lib/es/components/form/index.js.map +0 -1
- package/lib/es/components/form/useConfig.js.map +0 -1
- package/lib/es/components/form/useForm.js.map +0 -1
- package/lib/es/components/form/utils.js.map +0 -1
- package/lib/es/components/icon/icon.js.map +0 -1
- package/lib/es/components/icon/index.js.map +0 -1
- package/lib/es/components/image/image.js.map +0 -1
- package/lib/es/components/image/index.js.map +0 -1
- package/lib/es/components/image/list.js.map +0 -1
- package/lib/es/components/input/container.js.map +0 -1
- package/lib/es/components/input/index.js.map +0 -1
- package/lib/es/components/input/input.js.map +0 -1
- package/lib/es/components/input/number.js.map +0 -1
- package/lib/es/components/input/range.js.map +0 -1
- package/lib/es/components/input/textarea.js.map +0 -1
- package/lib/es/components/list/index.js.map +0 -1
- package/lib/es/components/list/item.js.map +0 -1
- package/lib/es/components/list/list.js.map +0 -1
- package/lib/es/components/loading/index.js.map +0 -1
- package/lib/es/components/loading/loading.js.map +0 -1
- package/lib/es/components/message/index.js.map +0 -1
- package/lib/es/components/message/message.js.map +0 -1
- package/lib/es/components/modal/content.js.map +0 -1
- package/lib/es/components/modal/context.js.map +0 -1
- package/lib/es/components/modal/hookModal.js.map +0 -1
- package/lib/es/components/modal/index.js.map +0 -1
- package/lib/es/components/modal/modal.js.map +0 -1
- package/lib/es/components/modal/modalManager.js.map +0 -1
- package/lib/es/components/modal/useModal.js.map +0 -1
- package/lib/es/components/pagination/index.js.map +0 -1
- package/lib/es/components/pagination/page.js.map +0 -1
- package/lib/es/components/pagination/pagination.js.map +0 -1
- package/lib/es/components/picker/colors/footer.js.map +0 -1
- package/lib/es/components/picker/colors/handle.js.map +0 -1
- package/lib/es/components/picker/colors/index.js.map +0 -1
- package/lib/es/components/picker/daterange/daterange.js.map +0 -1
- package/lib/es/components/picker/daterange/index.js.map +0 -1
- package/lib/es/components/picker/daterange/panel.js.map +0 -1
- package/lib/es/components/picker/dates/dates.js.map +0 -1
- package/lib/es/components/picker/dates/index.js.map +0 -1
- package/lib/es/components/picker/dates/panel.js.map +0 -1
- package/lib/es/components/picker/time/index.js.map +0 -1
- package/lib/es/components/picker/time/item.js.map +0 -1
- package/lib/es/components/picker/time/panel.js.map +0 -1
- package/lib/es/components/popconfirm/index.js.map +0 -1
- package/lib/es/components/popconfirm/popconfirm.js.map +0 -1
- package/lib/es/components/popup/content.js.map +0 -1
- package/lib/es/components/popup/index.js.map +0 -1
- package/lib/es/components/popup/popup.js.map +0 -1
- package/lib/es/components/progress/circle.js.map +0 -1
- package/lib/es/components/progress/index.js.map +0 -1
- package/lib/es/components/progress/line.js.map +0 -1
- package/lib/es/components/progress/progress.js.map +0 -1
- package/lib/es/components/radio/index.js.map +0 -1
- package/lib/es/components/radio/item.js.map +0 -1
- package/lib/es/components/radio/radio.js.map +0 -1
- package/lib/es/components/resizable/index.js.map +0 -1
- package/lib/es/components/resizable/resizable.js.map +0 -1
- package/lib/es/components/river/index.js.map +0 -1
- package/lib/es/components/river/river.js.map +0 -1
- package/lib/es/components/scroll/index.js.map +0 -1
- package/lib/es/components/scroll/scroll.js.map +0 -1
- package/lib/es/components/select/index.js.map +0 -1
- package/lib/es/components/select/options.js.map +0 -1
- package/lib/es/components/select/select.js.map +0 -1
- package/lib/es/components/step/divider.js.map +0 -1
- package/lib/es/components/step/index.js.map +0 -1
- package/lib/es/components/step/item.js.map +0 -1
- package/lib/es/components/step/step.js.map +0 -1
- package/lib/es/components/swiper/index.js.map +0 -1
- package/lib/es/components/swiper/item.js.map +0 -1
- package/lib/es/components/swiper/swiper.js.map +0 -1
- package/lib/es/components/tabs/contents.js.map +0 -1
- package/lib/es/components/tabs/helper.js.map +0 -1
- package/lib/es/components/tabs/index.js.map +0 -1
- package/lib/es/components/tabs/item.js.map +0 -1
- package/lib/es/components/tabs/navs.js.map +0 -1
- package/lib/es/components/tabs/tabs.js.map +0 -1
- package/lib/es/components/tag/index.js.map +0 -1
- package/lib/es/components/tag/tag.js.map +0 -1
- package/lib/es/components/text/highlight.js.map +0 -1
- package/lib/es/components/text/index.js.map +0 -1
- package/lib/es/components/text/number.js.map +0 -1
- package/lib/es/components/text/text.js.map +0 -1
- package/lib/es/components/text/time.js.map +0 -1
- package/lib/es/components/tree/index.js.map +0 -1
- package/lib/es/components/tree/item.js.map +0 -1
- package/lib/es/components/tree/tree.js.map +0 -1
- package/lib/es/components/upload/dropbox.js.map +0 -1
- package/lib/es/components/upload/index.js.map +0 -1
- package/lib/es/components/upload/renderFile.js.map +0 -1
- package/lib/es/components/upload/upload.js.map +0 -1
- package/lib/es/components/utils/empty/index.js.map +0 -1
- package/lib/es/components/utils/helpericon/helpericon.js.map +0 -1
- package/lib/es/components/utils/helpericon/index.js.map +0 -1
- package/lib/es/components/video/index.js.map +0 -1
- package/lib/es/components/video/video.js.map +0 -1
- package/lib/es/index.js.map +0 -1
- package/lib/es/js/hooks.js.map +0 -1
- package/lib/es/js/usePreview/content.js.map +0 -1
- package/lib/es/js/usePreview/index.js.map +0 -1
- package/lib/es/js/usePreview/renderFile.js.map +0 -1
- package/lib/es/js/usePreview/type.js.map +0 -1
- package/lib/es/js/useRipple/index.js.map +0 -1
- package/lib/es/js/useTheme/index.js.map +0 -1
- package/lib/es/js/utils.js.map +0 -1
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
var classNames = require('classnames');
|
|
7
|
-
var PubSub = require('pubsub-js');
|
|
8
|
-
var radash = require('radash');
|
|
9
|
-
var react = require('react');
|
|
10
|
-
var context = require('./context.js');
|
|
11
|
-
var field = require('./field.js');
|
|
12
|
-
var useConfig = require('./useConfig.js');
|
|
13
|
-
var useForm = require('./useForm.js');
|
|
14
|
-
|
|
15
|
-
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
|
|
16
|
-
|
|
17
|
-
var classNames__default = /*#__PURE__*/_interopDefaultCompat(classNames);
|
|
18
|
-
var PubSub__default = /*#__PURE__*/_interopDefaultCompat(PubSub);
|
|
19
|
-
|
|
20
|
-
const Form = (props) => {
|
|
21
|
-
const { form = {}, rules, initialValues, style, className, width, columns, itemMaxWidth, gap = "1em", labelInline, labelWidth, labelRight, children, onKeyDown, onEnter, onChange, ...restProps } = props;
|
|
22
|
-
const handleKeyDown = (e) => {
|
|
23
|
-
onKeyDown?.(e);
|
|
24
|
-
if (e.keyCode !== 13)
|
|
25
|
-
return;
|
|
26
|
-
onEnter?.(e, form.data, form);
|
|
27
|
-
};
|
|
28
|
-
const gridColumns = react.useMemo(() => {
|
|
29
|
-
if (!columns && !itemMaxWidth)
|
|
30
|
-
return;
|
|
31
|
-
if (itemMaxWidth) {
|
|
32
|
-
return `repeat(auto-fill, minmax(${itemMaxWidth}, 1fr))`;
|
|
33
|
-
}
|
|
34
|
-
if (typeof columns === "number") {
|
|
35
|
-
return `minmax(0, 1fr) `.repeat(columns);
|
|
36
|
-
}
|
|
37
|
-
return columns;
|
|
38
|
-
}, [columns]);
|
|
39
|
-
const initialAppliedRef = react.useRef(false);
|
|
40
|
-
react.useEffect(() => {
|
|
41
|
-
if (!initialAppliedRef.current && initialValues) {
|
|
42
|
-
const flat = radash.crush(initialValues);
|
|
43
|
-
Object.keys(flat).forEach((key) => {
|
|
44
|
-
form.set(key, flat[key]);
|
|
45
|
-
});
|
|
46
|
-
initialAppliedRef.current = true;
|
|
47
|
-
}
|
|
48
|
-
if (rules) {
|
|
49
|
-
form.rules = rules;
|
|
50
|
-
}
|
|
51
|
-
}, [initialValues, rules, form]);
|
|
52
|
-
react.useEffect(() => {
|
|
53
|
-
const token = PubSub__default.subscribe(`${form.id}:change`, (_evt, v) => {
|
|
54
|
-
onChange?.(v.name, v.value);
|
|
55
|
-
});
|
|
56
|
-
return () => {
|
|
57
|
-
PubSub__default.unsubscribe(token);
|
|
58
|
-
};
|
|
59
|
-
}, [form.id, onChange]);
|
|
60
|
-
return (jsxRuntime.jsx(context.default, { value: form, children: jsxRuntime.jsx("form", { style: {
|
|
61
|
-
...style,
|
|
62
|
-
width,
|
|
63
|
-
gap,
|
|
64
|
-
gridTemplateColumns: gridColumns,
|
|
65
|
-
"--label-width": labelWidth,
|
|
66
|
-
"--label-align": labelRight ? "right" : undefined,
|
|
67
|
-
}, className: classNames__default("i-form", className, {
|
|
68
|
-
"i-form-inline": labelInline,
|
|
69
|
-
}), onKeyDown: handleKeyDown, ...restProps, children: children }) }));
|
|
70
|
-
};
|
|
71
|
-
Form.useForm = useForm.default;
|
|
72
|
-
Form.Field = field.default;
|
|
73
|
-
Form.useConfig = useConfig.default;
|
|
74
|
-
|
|
75
|
-
exports.default = Form;
|
|
76
|
-
//# sourceMappingURL=form.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","sources":["../../../../packages/components/form/form.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport PubSub from \"pubsub-js\";\nimport { crush } from \"radash\";\nimport { CSSProperties, useEffect, useMemo, useRef } from \"react\";\nimport Context from \"./context\";\nimport Field from \"./field\";\nimport \"./index.css\";\nimport { IForm } from \"./type\";\nimport useConfig from \"./useConfig\";\nimport useForm, { IFormInstance } from \"./useForm\";\n\nconst Form = (props: IForm) => {\n\tconst {\n\t\tform = {} as IFormInstance,\n\t\trules,\n\t\tinitialValues,\n\t\tstyle,\n\t\tclassName,\n\t\twidth,\n\t\tcolumns,\n\t\titemMaxWidth,\n\t\tgap = \"1em\",\n\t\tlabelInline,\n\t\tlabelWidth,\n\t\tlabelRight,\n\t\tchildren,\n\t\tonKeyDown,\n\t\tonEnter,\n\t\tonChange,\n\t\t...restProps\n\t} = props;\n\n\tconst handleKeyDown = (e) => {\n\t\tonKeyDown?.(e);\n\n\t\tif (e.keyCode !== 13) return;\n\n\t\tonEnter?.(e, form.data, form);\n\t};\n\n\tconst gridColumns = useMemo(() => {\n\t\tif (!columns && !itemMaxWidth) return;\n\n\t\tif (itemMaxWidth) {\n\t\t\treturn `repeat(auto-fill, minmax(${itemMaxWidth}, 1fr))`;\n\t\t}\n\n\t\tif (typeof columns === \"number\") {\n\t\t\treturn `minmax(0, 1fr) `.repeat(columns);\n\t\t}\n\n\t\treturn columns;\n\t}, [columns]);\n\n\tconst initialAppliedRef = useRef(false);\n\n\tuseEffect(() => {\n\t\tif (!initialAppliedRef.current && initialValues) {\n\t\t\tconst flat = crush(initialValues);\n\t\t\tObject.keys(flat).forEach((key) => {\n\t\t\t\tform.set(key, flat[key]);\n\t\t\t});\n\t\t\tinitialAppliedRef.current = true;\n\t\t}\n\n\t\tif (rules) {\n\t\t\tform.rules = rules;\n\t\t}\n\t}, [initialValues, rules, form]);\n\n\tuseEffect(() => {\n\t\tconst token = PubSub.subscribe(`${form.id}:change`, (_evt, v) => {\n\t\t\tonChange?.(v.name, v.value);\n\t\t});\n\n\t\treturn () => {\n\t\t\tPubSub.unsubscribe(token);\n\t\t};\n\t}, [form.id, onChange]);\n\n\treturn (\n\t\t<Context value={form}>\n\t\t\t<form\n\t\t\t\tstyle={\n\t\t\t\t\t{\n\t\t\t\t\t\t...style,\n\t\t\t\t\t\twidth,\n\t\t\t\t\t\tgap,\n\t\t\t\t\t\tgridTemplateColumns: gridColumns as any,\n\t\t\t\t\t\t\"--label-width\": labelWidth,\n\t\t\t\t\t\t\"--label-align\": labelRight ? \"right\" : undefined,\n\t\t\t\t\t} as CSSProperties\n\t\t\t\t}\n\t\t\t\tclassName={classNames(\"i-form\", className, {\n\t\t\t\t\t\"i-form-inline\": labelInline,\n\t\t\t\t})}\n\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t{...restProps}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</form>\n\t\t</Context>\n\t);\n};\n\nForm.useForm = useForm;\nForm.Field = Field;\nForm.useConfig = useConfig;\n\nexport default Form;\n"],"names":["useMemo","useRef","useEffect","crush","PubSub","_jsx","Context","classNames","useForm","Field","useConfig"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
var react = require('react');
|
|
7
|
-
var field = require('./field.js');
|
|
8
|
-
var form = require('./form.js');
|
|
9
|
-
var useForm = require('./useForm.js');
|
|
10
|
-
|
|
11
|
-
function useConfig(configs, formProps) {
|
|
12
|
-
const form$1 = useForm.default();
|
|
13
|
-
const { onChange } = formProps ?? {};
|
|
14
|
-
const [values, setValues] = react.useState({});
|
|
15
|
-
const handleChange = (name, value) => {
|
|
16
|
-
setValues(() => ({ ...form$1.get() }));
|
|
17
|
-
onChange?.(name, value);
|
|
18
|
-
};
|
|
19
|
-
const node = react.useMemo(() => {
|
|
20
|
-
return (jsxRuntime.jsx(form.default, { ...formProps, onChange: handleChange, form: form$1, children: configs.map((config) => {
|
|
21
|
-
const { name, label, required, component: El, componentProps = {}, colspan = 1, render, shouldRender, } = config;
|
|
22
|
-
const { className, style } = componentProps;
|
|
23
|
-
if (shouldRender && !shouldRender(values, form$1)) {
|
|
24
|
-
return jsxRuntime.jsx(react.Fragment, {}, name);
|
|
25
|
-
}
|
|
26
|
-
return (jsxRuntime.jsx(field.default, { name: name, required: required, children: render?.(config, values) ?? (jsxRuntime.jsx(El, { label: label, required: required, ...componentProps, className: `${className ?? ""} ${colspan !== 1
|
|
27
|
-
? `colspan-${colspan}`
|
|
28
|
-
: ""}` })) }, name));
|
|
29
|
-
}) }));
|
|
30
|
-
}, [configs, values]);
|
|
31
|
-
return {
|
|
32
|
-
form: form$1,
|
|
33
|
-
node,
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
exports.default = useConfig;
|
|
38
|
-
//# sourceMappingURL=useConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useConfig.js","sources":["../../../../packages/components/form/useConfig.tsx"],"sourcesContent":["import { Fragment, useMemo, useState } from \"react\";\nimport Field from \"./field\";\nimport Form from \"./form\";\nimport { IForm, IFormItem } from \"./type\";\nimport useForm from \"./useForm\";\n\nexport default function useConfig(configs: IFormItem[], formProps?: IForm) {\n\tconst form = useForm();\n\tconst { onChange } = formProps ?? {};\n\tconst [values, setValues] = useState({});\n\n\tconst handleChange = (name, value) => {\n\t\tsetValues(() => ({ ...form.get() }));\n\t\tonChange?.(name, value);\n\t};\n\n\tconst node = useMemo(() => {\n\t\treturn (\n\t\t\t<Form {...formProps} onChange={handleChange} form={form}>\n\t\t\t\t{configs.map((config) => {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tlabel,\n\t\t\t\t\t\trequired,\n\t\t\t\t\t\tcomponent: El,\n\t\t\t\t\t\tcomponentProps = {},\n\t\t\t\t\t\tcolspan = 1,\n\t\t\t\t\t\trender,\n\t\t\t\t\t\tshouldRender,\n\t\t\t\t\t} = config;\n\t\t\t\t\tconst { className, style } = componentProps;\n\n\t\t\t\t\tif (shouldRender && !shouldRender(values, form)) {\n\t\t\t\t\t\treturn <Fragment key={name} />;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Field key={name} name={name} required={required}>\n\t\t\t\t\t\t\t{render?.(config, values) ?? (\n\t\t\t\t\t\t\t\t<El\n\t\t\t\t\t\t\t\t\tlabel={label}\n\t\t\t\t\t\t\t\t\trequired={required}\n\t\t\t\t\t\t\t\t\t{...componentProps}\n\t\t\t\t\t\t\t\t\tclassName={`${className ?? \"\"} ${\n\t\t\t\t\t\t\t\t\t\tcolspan !== 1\n\t\t\t\t\t\t\t\t\t\t\t? `colspan-${colspan}`\n\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Field>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</Form>\n\t\t);\n\t}, [configs, values]);\n\n\treturn {\n\t\tform,\n\t\tnode,\n\t};\n}\n"],"names":["form","useForm","useState","useMemo","_jsx","Form","Fragment","Field"],"mappings":";;;;;;;;;;AAMc,SAAU,SAAS,CAAC,OAAoB,EAAE,SAAiB,EAAA;AACxE,IAAA,MAAMA,MAAI,GAAGC,eAAO,EAAE;AACtB,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,IAAI,EAAE;IACpC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAC,EAAE,CAAC;AAExC,IAAA,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,KAAK,KAAI;AACpC,QAAA,SAAS,CAAC,OAAO,EAAE,GAAGF,MAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACpC,QAAA,QAAQ,GAAG,IAAI,EAAE,KAAK,CAAC;AACxB,IAAA,CAAC;AAED,IAAA,MAAM,IAAI,GAAGG,aAAO,CAAC,MAAK;QACzB,QACCC,eAACC,YAAI,EAAA,EAAA,GAAK,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAEL,MAAI,YACrD,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAI;gBACvB,MAAM,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,SAAS,EAAE,EAAE,EACb,cAAc,GAAG,EAAE,EACnB,OAAO,GAAG,CAAC,EACX,MAAM,EACN,YAAY,GACZ,GAAG,MAAM;AACV,gBAAA,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,cAAc;gBAE3C,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,EAAEA,MAAI,CAAC,EAAE;AAChD,oBAAA,OAAOI,cAAA,CAACE,cAAQ,EAAA,EAAA,EAAM,IAAI,CAAI;gBAC/B;AAEA,gBAAA,QACCF,cAAA,CAACG,aAAK,IAAY,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAA,QAAA,EAC9C,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,KACxBH,eAAC,EAAE,EAAA,EACF,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAAA,GACd,cAAc,EAClB,SAAS,EAAE,GAAG,SAAS,IAAI,EAAE,CAAA,CAAA,EAC5B,OAAO,KAAK;8BACT,CAAA,QAAA,EAAW,OAAO,CAAA;8BAClB,EACJ,CAAA,CAAE,EAAA,CACD,CACF,EAAA,EAZU,IAAI,CAaR;YAEV,CAAC,CAAC,EAAA,CACI;AAET,IAAA,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAErB,OAAO;cACNJ,MAAI;QACJ,IAAI;KACJ;AACF;;;;"}
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var PubSub = require('pubsub-js');
|
|
6
|
-
var radash = require('radash');
|
|
7
|
-
var react = require('react');
|
|
8
|
-
var utils = require('./utils.js');
|
|
9
|
-
|
|
10
|
-
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
|
|
11
|
-
|
|
12
|
-
var PubSub__default = /*#__PURE__*/_interopDefaultCompat(PubSub);
|
|
13
|
-
|
|
14
|
-
class IFormInstance {
|
|
15
|
-
id;
|
|
16
|
-
data = {};
|
|
17
|
-
cacheData = {};
|
|
18
|
-
rules;
|
|
19
|
-
constructor() {
|
|
20
|
-
this.id = radash.uid(8);
|
|
21
|
-
this.data = {};
|
|
22
|
-
}
|
|
23
|
-
get(field) {
|
|
24
|
-
return field ? utils.getDeep(this.data, field) : this.data;
|
|
25
|
-
}
|
|
26
|
-
set(field, value) {
|
|
27
|
-
const id = this.id;
|
|
28
|
-
if (!this.data)
|
|
29
|
-
return;
|
|
30
|
-
if (typeof field === "string") {
|
|
31
|
-
if (field.includes(".")) {
|
|
32
|
-
const parts = field.split(".");
|
|
33
|
-
for (let i = 1; i < parts.length; i++) {
|
|
34
|
-
const ancestor = parts.slice(0, i).join(".");
|
|
35
|
-
if (ancestor in this.data) {
|
|
36
|
-
console.warn(`[ioca-form] Field "${field}" conflicts with "${ancestor}". ` +
|
|
37
|
-
"Nested representation in form.get() may be inconsistent.");
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
utils.setDeep(this.data, field, value);
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
this.data[field] = value;
|
|
44
|
-
}
|
|
45
|
-
this.cacheData[field] = value;
|
|
46
|
-
PubSub__default.publish(`${id}:set:${field}`, value);
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
Object.keys(field).forEach((name) => {
|
|
50
|
-
if (name.includes("."))
|
|
51
|
-
utils.setDeep(this.data, name, field[name]);
|
|
52
|
-
else
|
|
53
|
-
this.data[name] = field[name];
|
|
54
|
-
this.cacheData[name] = field[name];
|
|
55
|
-
PubSub__default.publish(`${id}:set:${name}`, field[name]);
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
delete(field) {
|
|
59
|
-
delete this.cacheData[field];
|
|
60
|
-
if (field.includes("."))
|
|
61
|
-
utils.deleteDeep(this.data, field);
|
|
62
|
-
else
|
|
63
|
-
delete this.data[field];
|
|
64
|
-
}
|
|
65
|
-
clear() {
|
|
66
|
-
if (!this.data)
|
|
67
|
-
return;
|
|
68
|
-
const names = Object.keys(this.cacheData);
|
|
69
|
-
this.cacheData = {};
|
|
70
|
-
names.forEach((name) => {
|
|
71
|
-
if (name.includes("."))
|
|
72
|
-
utils.deleteDeep(this.data, name);
|
|
73
|
-
else
|
|
74
|
-
this.data[name] = undefined;
|
|
75
|
-
PubSub__default.publish(`${this.id}:set:${name}`, undefined);
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
async validate(field) {
|
|
79
|
-
const { id, rules, data } = this;
|
|
80
|
-
if (!rules)
|
|
81
|
-
return data;
|
|
82
|
-
const names = field ? [field] : Object.keys(this.cacheData);
|
|
83
|
-
let isAllValid = true;
|
|
84
|
-
names.forEach((name) => {
|
|
85
|
-
const o = rules[name];
|
|
86
|
-
if (!field && o === undefined)
|
|
87
|
-
return;
|
|
88
|
-
const rule = {
|
|
89
|
-
validator: (v) => Array.isArray(v) ? v.length > 0 : ![undefined, null, ""].includes(v),
|
|
90
|
-
};
|
|
91
|
-
if (typeof o === "function")
|
|
92
|
-
rule.validator = o;
|
|
93
|
-
else if (o === true)
|
|
94
|
-
rule.message = "required";
|
|
95
|
-
else if (o)
|
|
96
|
-
Object.assign(rule, o);
|
|
97
|
-
const isValid = rule.validator?.(utils.getDeep(data, name), this);
|
|
98
|
-
if (typeof isValid === "string")
|
|
99
|
-
rule.message = isValid;
|
|
100
|
-
if (isValid !== true) {
|
|
101
|
-
PubSub__default.publish(`${id}:invalid:${name}`, {
|
|
102
|
-
message: rule.message,
|
|
103
|
-
status: "error",
|
|
104
|
-
});
|
|
105
|
-
isAllValid = false;
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
PubSub__default.publish(`${id}:invalid:${name}`, {
|
|
109
|
-
message: null,
|
|
110
|
-
status: "normal",
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
return field ? isAllValid : isAllValid ? data : false;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
function useForm(form) {
|
|
118
|
-
const formRef = react.useRef(null);
|
|
119
|
-
if (!formRef.current) {
|
|
120
|
-
formRef.current = form ?? new IFormInstance();
|
|
121
|
-
}
|
|
122
|
-
return formRef.current;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
exports.IFormInstance = IFormInstance;
|
|
126
|
-
exports.default = useForm;
|
|
127
|
-
//# sourceMappingURL=useForm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useForm.js","sources":["../../../../packages/components/form/useForm.ts"],"sourcesContent":["import PubSub from \"pubsub-js\";\nimport { uid } from \"radash\";\nimport { useRef } from \"react\";\nimport { TValidator, TRule } from \"./type\";\nimport { getDeep, setDeep, deleteDeep } from \"./utils\";\n\nexport class IFormInstance {\n\treadonly id?: string;\n\tdata: Record<string, any> = {};\n\tcacheData: Record<string, any> = {};\n\trules?: Record<string, boolean | TValidator | TRule>;\n\n\tconstructor() {\n\t\tthis.id = uid(8);\n\t\tthis.data = {};\n\t}\n\n\tget(field?: string) {\n\t\treturn field ? getDeep(this.data, field) : this.data;\n\t}\n\n\tset(field: any, value?: any) {\n\t\tconst id = this.id;\n\t\tif (!this.data) return;\n\n\t\tif (typeof field === \"string\") {\n\t\t\tif (field.includes(\".\")) {\n\t\t\t\tconst parts = field.split(\".\");\n\t\t\t\tfor (let i = 1; i < parts.length; i++) {\n\t\t\t\t\tconst ancestor = parts.slice(0, i).join(\".\");\n\t\t\t\t\tif (ancestor in this.data) {\n\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t`[ioca-form] Field \"${field}\" conflicts with \"${ancestor}\". ` +\n\t\t\t\t\t\t\t\t\"Nested representation in form.get() may be inconsistent.\",\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tsetDeep(this.data, field, value);\n\t\t\t} else {\n\t\t\t\tthis.data[field] = value;\n\t\t\t}\n\n\t\t\tthis.cacheData[field] = value;\n\t\t\tPubSub.publish(`${id}:set:${field}`, value);\n\t\t\treturn;\n\t\t}\n\n\t\tObject.keys(field).forEach((name) => {\n\t\t\tif (name.includes(\".\")) setDeep(this.data, name, field[name]);\n\t\t\telse this.data[name] = field[name];\n\n\t\t\tthis.cacheData[name] = field[name];\n\t\t\tPubSub.publish(`${id}:set:${name}`, field[name]);\n\t\t});\n\t}\n\n\tdelete(field: string) {\n\t\tdelete this.cacheData[field];\n\t\tif (field.includes(\".\")) deleteDeep(this.data, field);\n\t\telse delete this.data[field];\n\t}\n\n\tclear() {\n\t\tif (!this.data) return;\n\t\tconst names = Object.keys(this.cacheData);\n\t\tthis.cacheData = {};\n\n\t\tnames.forEach((name) => {\n\t\t\tif (name.includes(\".\")) deleteDeep(this.data, name);\n\t\t\telse this.data[name] = undefined;\n\n\t\t\tPubSub.publish(`${this.id}:set:${name}`, undefined);\n\t\t});\n\t}\n\n\tasync validate(field?: string) {\n\t\tconst { id, rules, data } = this;\n\t\tif (!rules) return data;\n\n\t\tconst names = field ? [field] : Object.keys(this.cacheData);\n\t\tlet isAllValid = true;\n\n\t\tnames.forEach((name) => {\n\t\t\tconst o = rules[name];\n\t\t\tif (!field && o === undefined) return;\n\n\t\t\tconst rule: TRule = {\n\t\t\t\tvalidator: (v) =>\n\t\t\t\t\tArray.isArray(v) ? v.length > 0 : ![undefined, null, \"\"].includes(v),\n\t\t\t};\n\n\t\t\tif (typeof o === \"function\") rule.validator = o;\n\t\t\telse if (o === true) rule.message = \"required\";\n\t\t\telse if (o) Object.assign(rule, o);\n\n\t\t\tconst isValid = rule.validator?.(getDeep(data, name), this);\n\t\t\tif (typeof isValid === \"string\") rule.message = isValid;\n\n\t\t\tif (isValid !== true) {\n\t\t\t\tPubSub.publish(`${id}:invalid:${name}`, {\n\t\t\t\t\tmessage: rule.message,\n\t\t\t\t\tstatus: \"error\",\n\t\t\t\t});\n\t\t\t\tisAllValid = false;\n\t\t\t} else {\n\t\t\t\tPubSub.publish(`${id}:invalid:${name}`, {\n\t\t\t\t\tmessage: null,\n\t\t\t\t\tstatus: \"normal\",\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\treturn field ? isAllValid : isAllValid ? data : false;\n\t}\n}\n\nexport default function useForm(form?: IFormInstance) {\n\tconst formRef = useRef<IFormInstance>(null);\n\n\tif (!formRef.current) {\n\t\tformRef.current = form ?? new IFormInstance();\n\t}\n\n\treturn formRef.current;\n}\n"],"names":["uid","getDeep","setDeep","PubSub","deleteDeep","useRef"],"mappings":"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"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
function getDeep(obj, path) {
|
|
4
|
-
if (!path.includes("."))
|
|
5
|
-
return obj[path];
|
|
6
|
-
return path.split(".").reduce((acc, key) => (acc != null ? acc[key] : undefined), obj);
|
|
7
|
-
}
|
|
8
|
-
function setDeep(obj, path, value) {
|
|
9
|
-
const parts = path.split(".");
|
|
10
|
-
let current = obj;
|
|
11
|
-
for (let i = 0; i < parts.length - 1; i++) {
|
|
12
|
-
const key = parts[i];
|
|
13
|
-
if (current[key] == null || typeof current[key] !== "object") {
|
|
14
|
-
current[key] = {};
|
|
15
|
-
}
|
|
16
|
-
current = current[key];
|
|
17
|
-
}
|
|
18
|
-
current[parts[parts.length - 1]] = value;
|
|
19
|
-
}
|
|
20
|
-
function deleteDeep(obj, path) {
|
|
21
|
-
const parts = path.split(".");
|
|
22
|
-
const parent = parts
|
|
23
|
-
.slice(0, -1)
|
|
24
|
-
.reduce((acc, key) => (acc != null ? acc[key] : undefined), obj);
|
|
25
|
-
if (parent != null) {
|
|
26
|
-
delete parent[parts[parts.length - 1]];
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
exports.deleteDeep = deleteDeep;
|
|
31
|
-
exports.getDeep = getDeep;
|
|
32
|
-
exports.setDeep = setDeep;
|
|
33
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../packages/components/form/utils.ts"],"sourcesContent":["export function getDeep(obj: any, path: string): any {\n\tif (!path.includes(\".\")) return obj[path];\n\treturn path.split(\".\").reduce((acc, key) => (acc != null ? acc[key] : undefined), obj);\n}\n\nexport function setDeep(obj: any, path: string, value: any) {\n\tconst parts = path.split(\".\");\n\tlet current = obj;\n\tfor (let i = 0; i < parts.length - 1; i++) {\n\t\tconst key = parts[i];\n\t\tif (current[key] == null || typeof current[key] !== \"object\") {\n\t\t\tcurrent[key] = {};\n\t\t}\n\t\tcurrent = current[key];\n\t}\n\tcurrent[parts[parts.length - 1]] = value;\n}\n\nexport function deleteDeep(obj: any, path: string) {\n\tconst parts = path.split(\".\");\n\tconst parent = parts\n\t\t.slice(0, -1)\n\t\t.reduce((acc, key) => (acc != null ? acc[key] : undefined), obj);\n\tif (parent != null) {\n\t\tdelete parent[parts[parts.length - 1]];\n\t}\n}\n"],"names":[],"mappings":";;AAAM,SAAU,OAAO,CAAC,GAAQ,EAAE,IAAY,EAAA;AAC7C,IAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;AAAE,QAAA,OAAO,GAAG,CAAC,IAAI,CAAC;AACzC,IAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,CAAC;AACvF;SAEgB,OAAO,CAAC,GAAQ,EAAE,IAAY,EAAE,KAAU,EAAA;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7B,IAAI,OAAO,GAAG,GAAG;AACjB,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAC1C,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;AACpB,QAAA,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;AAC7D,YAAA,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE;QAClB;AACA,QAAA,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IACvB;AACA,IAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK;AACzC;AAEM,SAAU,UAAU,CAAC,GAAQ,EAAE,IAAY,EAAA;IAChD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7B,MAAM,MAAM,GAAG;AACb,SAAA,KAAK,CAAC,CAAC,EAAE,EAAE;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,CAAC;AACjE,IAAA,IAAI,MAAM,IAAI,IAAI,EAAE;QACnB,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvC;AACD;;;;;;"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var classNames = require('classnames');
|
|
6
|
-
var react = require('react');
|
|
7
|
-
|
|
8
|
-
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
|
|
9
|
-
|
|
10
|
-
var classNames__default = /*#__PURE__*/_interopDefaultCompat(classNames);
|
|
11
|
-
|
|
12
|
-
const Icon = (props) => {
|
|
13
|
-
const { ref, icon, size = "1.425em", rotate, style, className, ...restProps } = props;
|
|
14
|
-
if (!react.isValidElement(icon))
|
|
15
|
-
return icon;
|
|
16
|
-
const iconProps = {
|
|
17
|
-
ref,
|
|
18
|
-
style: {
|
|
19
|
-
transform: rotate ? `rotate(${rotate}deg)` : undefined,
|
|
20
|
-
...style,
|
|
21
|
-
width: size,
|
|
22
|
-
height: size,
|
|
23
|
-
},
|
|
24
|
-
className: classNames__default("i-icon", className),
|
|
25
|
-
...restProps,
|
|
26
|
-
};
|
|
27
|
-
return react.cloneElement(icon, iconProps);
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
exports.default = Icon;
|
|
31
|
-
//# sourceMappingURL=icon.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"icon.js","sources":["../../../../packages/components/icon/icon.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { cloneElement, isValidElement } from \"react\";\nimport \"./index.css\";\nimport { IIcon } from \"./type\";\n\nconst Icon = (props: IIcon) => {\n\tconst {\n\t\tref,\n\t\ticon,\n\t\tsize = \"1.425em\",\n\t\trotate,\n\t\tstyle,\n\t\tclassName,\n\t\t...restProps\n\t} = props;\n\n\tif (!isValidElement(icon)) return icon;\n\n\tconst iconProps = {\n\t\tref,\n\t\tstyle: {\n\t\t\ttransform: rotate ? `rotate(${rotate}deg)` : undefined,\n\t\t\t...style,\n\t\t\twidth: size,\n\t\t\theight: size,\n\t\t},\n\t\tclassName: classNames(\"i-icon\", className),\n\t\t...restProps,\n\t};\n\n\treturn cloneElement(icon, iconProps);\n};\n\nexport default Icon;\n"],"names":["isValidElement","classNames","cloneElement"],"mappings":";;;;;;;;;;;AAKA,MAAM,IAAI,GAAG,CAAC,KAAY,KAAI;IAC7B,MAAM,EACL,GAAG,EACH,IAAI,EACJ,IAAI,GAAG,SAAS,EAChB,MAAM,EACN,KAAK,EACL,SAAS,EACT,GAAG,SAAS,EACZ,GAAG,KAAK;AAET,IAAA,IAAI,CAACA,oBAAc,CAAC,IAAI,CAAC;AAAE,QAAA,OAAO,IAAI;AAEtC,IAAA,MAAM,SAAS,GAAG;QACjB,GAAG;AACH,QAAA,KAAK,EAAE;YACN,SAAS,EAAE,MAAM,GAAG,CAAA,OAAA,EAAU,MAAM,CAAA,IAAA,CAAM,GAAG,SAAS;AACtD,YAAA,GAAG,KAAK;AACR,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,MAAM,EAAE,IAAI;AACZ,SAAA;AACD,QAAA,SAAS,EAAEC,mBAAU,CAAC,QAAQ,EAAE,SAAS,CAAC;AAC1C,QAAA,GAAG,SAAS;KACZ;AAED,IAAA,OAAOC,kBAAY,CAAC,IAAI,EAAE,SAAS,CAAC;AACrC;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
var classNames = require('classnames');
|
|
7
|
-
var react = require('react');
|
|
8
|
-
var hooks = require('../../js/hooks.js');
|
|
9
|
-
var index = require('../../js/usePreview/index.js');
|
|
10
|
-
var loading = require('../loading/loading.js');
|
|
11
|
-
var list = require('./list.js');
|
|
12
|
-
|
|
13
|
-
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
|
|
14
|
-
|
|
15
|
-
var classNames__default = /*#__PURE__*/_interopDefaultCompat(classNames);
|
|
16
|
-
|
|
17
|
-
const STATUS_LOADING = "loading";
|
|
18
|
-
const STATUS_ERROR = "error";
|
|
19
|
-
const Image = (props) => {
|
|
20
|
-
const { src, thumb, round, size, height, width, ratio, initSize, lazyload, fallback, fit, style, className, cover, coverClass, usePreview: previewable, onLoad, onError, onClick, ...restProps } = props;
|
|
21
|
-
const state = hooks.useReactive({
|
|
22
|
-
status: STATUS_LOADING,
|
|
23
|
-
});
|
|
24
|
-
const ref = react.useRef(null);
|
|
25
|
-
const { observe, unobserve } = hooks.useIntersectionObserver();
|
|
26
|
-
const preview = index.default();
|
|
27
|
-
const setStatus = react.useCallback((status) => {
|
|
28
|
-
if (state.status === status)
|
|
29
|
-
return;
|
|
30
|
-
state.status = status;
|
|
31
|
-
}, [state]);
|
|
32
|
-
const handleError = react.useCallback((err) => {
|
|
33
|
-
onError?.(err);
|
|
34
|
-
setStatus(STATUS_ERROR);
|
|
35
|
-
}, [onError, setStatus]);
|
|
36
|
-
const handleLoad = react.useCallback((e) => {
|
|
37
|
-
onLoad?.(e);
|
|
38
|
-
setStatus(undefined);
|
|
39
|
-
}, [onLoad, setStatus]);
|
|
40
|
-
const handleClick = react.useCallback((e) => {
|
|
41
|
-
onClick?.(e);
|
|
42
|
-
if (!previewable || !src)
|
|
43
|
-
return;
|
|
44
|
-
const previewConfigs = typeof previewable === "boolean" ? {} : previewable;
|
|
45
|
-
preview({
|
|
46
|
-
...previewConfigs,
|
|
47
|
-
items: [
|
|
48
|
-
{
|
|
49
|
-
src,
|
|
50
|
-
type: "IMAGE",
|
|
51
|
-
},
|
|
52
|
-
],
|
|
53
|
-
});
|
|
54
|
-
}, [onClick, preview, previewable, src]);
|
|
55
|
-
react.useEffect(() => {
|
|
56
|
-
if (!src || typeof window === "undefined")
|
|
57
|
-
return;
|
|
58
|
-
const img = ref.current;
|
|
59
|
-
if (!img)
|
|
60
|
-
return;
|
|
61
|
-
const hasSrcAttr = img?.getAttribute("src");
|
|
62
|
-
const canSyncStatus = Boolean(img && (!lazyload || hasSrcAttr));
|
|
63
|
-
if (canSyncStatus && img.complete) {
|
|
64
|
-
setStatus(img.naturalWidth > 0 ? undefined : STATUS_ERROR);
|
|
65
|
-
}
|
|
66
|
-
if (!img.complete && observe && lazyload) {
|
|
67
|
-
setStatus(STATUS_LOADING);
|
|
68
|
-
}
|
|
69
|
-
if (!lazyload || !observe)
|
|
70
|
-
return;
|
|
71
|
-
observe(img, (tar, visible) => {
|
|
72
|
-
if (!visible)
|
|
73
|
-
return;
|
|
74
|
-
tar.setAttribute("src", tar.dataset.src || "");
|
|
75
|
-
unobserve(tar);
|
|
76
|
-
});
|
|
77
|
-
return () => {
|
|
78
|
-
unobserve(img);
|
|
79
|
-
};
|
|
80
|
-
}, [lazyload, observe, setStatus, src, unobserve]);
|
|
81
|
-
const imageStatus = state.status;
|
|
82
|
-
const iSize = imageStatus === STATUS_LOADING ? initSize : undefined;
|
|
83
|
-
const wrapperStyle = react.useMemo(() => ({
|
|
84
|
-
width: width ?? size ?? iSize,
|
|
85
|
-
height: height ?? size ?? iSize,
|
|
86
|
-
aspectRatio: ratio,
|
|
87
|
-
...style,
|
|
88
|
-
}), [height, iSize, ratio, size, style, width]);
|
|
89
|
-
const wrapperClassName = react.useMemo(() => classNames__default("i-image", className, {
|
|
90
|
-
rounded: round,
|
|
91
|
-
[`i-image-${imageStatus}`]: imageStatus,
|
|
92
|
-
}), [className, imageStatus, round]);
|
|
93
|
-
const imageStyle = react.useMemo(() => ({ objectFit: fit }), [fit]);
|
|
94
|
-
const imageSrcProps = lazyload
|
|
95
|
-
? { "data-src": thumb ?? src }
|
|
96
|
-
: { src: thumb ?? src };
|
|
97
|
-
return (jsxRuntime.jsx("div", { style: wrapperStyle, className: wrapperClassName, onClick: handleClick, children: imageStatus === STATUS_ERROR ? ((fallback ?? null)) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [src && (jsxRuntime.jsx("img", { ref: ref, style: imageStyle, ...imageSrcProps, ...restProps, onLoad: handleLoad, onError: handleError })), src && imageStatus === STATUS_LOADING && (jsxRuntime.jsx(loading.default, { absolute: true })), cover && (jsxRuntime.jsx("div", { className: classNames__default("i-image-cover", coverClass), children: cover }))] })) }));
|
|
98
|
-
};
|
|
99
|
-
const MemoImage = react.memo(Image);
|
|
100
|
-
MemoImage.List = list.default;
|
|
101
|
-
|
|
102
|
-
exports.default = MemoImage;
|
|
103
|
-
//# sourceMappingURL=image.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"image.js","sources":["../../../../packages/components/image/image.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { memo, useCallback, useEffect, useMemo, useRef } from \"react\";\nimport { useIntersectionObserver, useReactive } from \"../../js/hooks\";\nimport usePreview from \"../../js/usePreview\";\nimport Loading from \"../loading\";\nimport \"./index.css\";\nimport List from \"./list\";\nimport type { CompositionImage, IImage } from \"./type\";\n\nconst STATUS_LOADING = \"loading\";\nconst STATUS_ERROR = \"error\";\n\nconst Image = (props: IImage) => {\n const {\n src,\n thumb,\n round,\n size,\n height,\n width,\n ratio,\n initSize,\n lazyload,\n fallback,\n fit,\n style,\n className,\n cover,\n coverClass,\n usePreview: previewable,\n onLoad,\n onError,\n onClick,\n ...restProps\n } = props;\n\n const state = useReactive<{ status?: string }>({\n status: STATUS_LOADING,\n });\n const ref = useRef<HTMLImageElement>(null);\n\n const { observe, unobserve } = useIntersectionObserver();\n const preview = usePreview();\n\n const setStatus = useCallback(\n (status?: string) => {\n if (state.status === status) return;\n state.status = status;\n },\n [state],\n );\n\n const handleError = useCallback(\n (err) => {\n onError?.(err);\n setStatus(STATUS_ERROR);\n },\n [onError, setStatus],\n );\n\n const handleLoad = useCallback(\n (e) => {\n onLoad?.(e);\n setStatus(undefined);\n },\n [onLoad, setStatus],\n );\n\n const handleClick = useCallback(\n (e) => {\n onClick?.(e);\n\n if (!previewable || !src) return;\n\n const previewConfigs =\n typeof previewable === \"boolean\" ? {} : previewable;\n\n preview({\n ...previewConfigs,\n items: [\n {\n src,\n type: \"IMAGE\",\n },\n ],\n });\n },\n [onClick, preview, previewable, src],\n );\n\n useEffect(() => {\n if (!src || typeof window === \"undefined\") return;\n\n const img = ref.current;\n if (!img) return;\n\n const hasSrcAttr = img?.getAttribute(\"src\");\n const canSyncStatus = Boolean(img && (!lazyload || hasSrcAttr));\n if (canSyncStatus && img.complete) {\n setStatus(img.naturalWidth > 0 ? undefined : STATUS_ERROR);\n }\n\n if (!img.complete && observe && lazyload) {\n setStatus(STATUS_LOADING);\n }\n\n if (!lazyload || !observe) return;\n\n observe(img, (tar: HTMLElement, visible: boolean) => {\n if (!visible) return;\n\n tar.setAttribute(\"src\", tar.dataset.src || \"\");\n unobserve(tar);\n });\n\n return () => {\n unobserve(img);\n };\n }, [lazyload, observe, setStatus, src, unobserve]);\n\n const imageStatus = state.status;\n const iSize = imageStatus === STATUS_LOADING ? initSize : undefined;\n\n const wrapperStyle = useMemo(\n () => ({\n width: width ?? size ?? iSize,\n height: height ?? size ?? iSize,\n aspectRatio: ratio,\n ...style,\n }),\n [height, iSize, ratio, size, style, width],\n );\n\n const wrapperClassName = useMemo(\n () =>\n classNames(\"i-image\", className, {\n rounded: round,\n [`i-image-${imageStatus}`]: imageStatus,\n }),\n [className, imageStatus, round],\n );\n\n const imageStyle = useMemo(() => ({ objectFit: fit }), [fit]);\n const imageSrcProps = lazyload\n ? { \"data-src\": thumb ?? src }\n : { src: thumb ?? src };\n\n return (\n <div\n style={wrapperStyle}\n className={wrapperClassName}\n onClick={handleClick}\n >\n {imageStatus === STATUS_ERROR ? (\n (fallback ?? null)\n ) : (\n <>\n {src && (\n <img\n ref={ref}\n style={imageStyle}\n {...imageSrcProps}\n {...restProps}\n onLoad={handleLoad}\n onError={handleError}\n />\n )}\n\n {src && imageStatus === STATUS_LOADING && (\n <Loading absolute />\n )}\n\n {cover && (\n <div\n className={classNames(\"i-image-cover\", coverClass)}\n >\n {cover}\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nconst MemoImage = memo(Image) as unknown as CompositionImage;\n\nMemoImage.List = List;\n\nexport default MemoImage;\n"],"names":["useReactive","useRef","useIntersectionObserver","usePreview","useCallback","useEffect","useMemo","classNames","_jsx","_jsxs","Loading","memo","List"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
var react = require('react');
|
|
7
|
-
var index = require('../../js/usePreview/index.js');
|
|
8
|
-
var utils = require('../../js/utils.js');
|
|
9
|
-
var flex = require('../flex/flex.js');
|
|
10
|
-
var image = require('./image.js');
|
|
11
|
-
|
|
12
|
-
function List(props) {
|
|
13
|
-
const { items = [], gap = 8, columns, wrap, direction, usePreview: previewable, onClick, ...restProps } = props;
|
|
14
|
-
const preview = index.default();
|
|
15
|
-
const files = react.useMemo(() => {
|
|
16
|
-
return items.map((item) => {
|
|
17
|
-
const o = {
|
|
18
|
-
src: "",
|
|
19
|
-
};
|
|
20
|
-
if (typeof item === "string") {
|
|
21
|
-
o.src = item;
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
Object.assign(o, item);
|
|
25
|
-
}
|
|
26
|
-
o.suffix = utils.getSuffixByUrl(o.src) || "";
|
|
27
|
-
o.type = utils.getFileType(o.suffix, item["type"]);
|
|
28
|
-
return o;
|
|
29
|
-
});
|
|
30
|
-
}, [items]);
|
|
31
|
-
const handleClick = (e, i) => {
|
|
32
|
-
onClick?.(e);
|
|
33
|
-
previewable &&
|
|
34
|
-
preview({
|
|
35
|
-
items: files,
|
|
36
|
-
initial: i,
|
|
37
|
-
});
|
|
38
|
-
};
|
|
39
|
-
if (!files.length)
|
|
40
|
-
return "";
|
|
41
|
-
return (jsxRuntime.jsx(flex.default, { className: 'i-image-list', gap: gap, columns: columns, wrap: wrap, direction: direction, children: files.map((img, i) => {
|
|
42
|
-
return (jsxRuntime.jsx(image.default, { src: img.src, usePreview: false, onClick: (e) => handleClick(e, i), ...restProps }, i));
|
|
43
|
-
}) }));
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
exports.default = List;
|
|
47
|
-
//# sourceMappingURL=list.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sources":["../../../../packages/components/image/list.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport usePreview from \"../../js/usePreview\";\nimport { TPreviewItem } from \"../../js/usePreview/type\";\nimport { getFileType, getSuffixByUrl } from \"../../js/utils\";\nimport Flex from \"../flex\";\nimport Image from \"./image\";\nimport { IImageList } from \"./type\";\n\nexport default function List(props: IImageList) {\n\tconst {\n\t\titems = [],\n\t\tgap = 8,\n\t\tcolumns,\n\t\twrap,\n\t\tdirection,\n\t\tusePreview: previewable,\n\t\tonClick,\n\t\t...restProps\n\t} = props;\n\tconst preview = usePreview();\n\n\tconst files = useMemo(() => {\n\t\treturn items.map((item) => {\n\t\t\tconst o: TPreviewItem = {\n\t\t\t\tsrc: \"\",\n\t\t\t};\n\t\t\tif (typeof item === \"string\") {\n\t\t\t\to.src = item;\n\t\t\t} else {\n\t\t\t\tObject.assign(o, item);\n\t\t\t}\n\n\t\t\to.suffix = getSuffixByUrl(o.src) || \"\";\n\t\t\to.type = getFileType(o.suffix, item[\"type\"]);\n\n\t\t\treturn o;\n\t\t});\n\t}, [items]);\n\n\tconst handleClick = (e, i) => {\n\t\tonClick?.(e);\n\n\t\tpreviewable &&\n\t\t\tpreview({\n\t\t\t\titems: files,\n\t\t\t\tinitial: i,\n\t\t\t});\n\t};\n\n\tif (!files.length) return \"\";\n\n\treturn (\n\t\t<Flex\n\t\t\tclassName='i-image-list'\n\t\t\tgap={gap}\n\t\t\tcolumns={columns}\n\t\t\twrap={wrap}\n\t\t\tdirection={direction}\n\t\t>\n\t\t\t{files.map((img, i) => {\n\t\t\t\treturn (\n\t\t\t\t\t<Image\n\t\t\t\t\t\tkey={i}\n\t\t\t\t\t\tsrc={img.src}\n\t\t\t\t\t\tusePreview={false}\n\t\t\t\t\t\tonClick={(e) => handleClick(e, i)}\n\t\t\t\t\t\t{...restProps}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t})}\n\t\t</Flex>\n\t);\n}\n"],"names":["usePreview","useMemo","getSuffixByUrl","getFileType","_jsx","Flex","Image"],"mappings":";;;;;;;;;;;AAQc,SAAU,IAAI,CAAC,KAAiB,EAAA;IAC7C,MAAM,EACL,KAAK,GAAG,EAAE,EACV,GAAG,GAAG,CAAC,EACP,OAAO,EACP,IAAI,EACJ,SAAS,EACT,UAAU,EAAE,WAAW,EACvB,OAAO,EACP,GAAG,SAAS,EACZ,GAAG,KAAK;AACT,IAAA,MAAM,OAAO,GAAGA,aAAU,EAAE;AAE5B,IAAA,MAAM,KAAK,GAAGC,aAAO,CAAC,MAAK;AAC1B,QAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;AACzB,YAAA,MAAM,CAAC,GAAiB;AACvB,gBAAA,GAAG,EAAE,EAAE;aACP;AACD,YAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC7B,gBAAA,CAAC,CAAC,GAAG,GAAG,IAAI;YACb;iBAAO;AACN,gBAAA,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC;YACvB;YAEA,CAAC,CAAC,MAAM,GAAGC,oBAAc,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;AACtC,YAAA,CAAC,CAAC,IAAI,GAAGC,iBAAW,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AAE5C,YAAA,OAAO,CAAC;AACT,QAAA,CAAC,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAEX,IAAA,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,KAAI;AAC5B,QAAA,OAAO,GAAG,CAAC,CAAC;QAEZ,WAAW;AACV,YAAA,OAAO,CAAC;AACP,gBAAA,KAAK,EAAE,KAAK;AACZ,gBAAA,OAAO,EAAE,CAAC;AACV,aAAA,CAAC;AACJ,IAAA,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,MAAM;AAAE,QAAA,OAAO,EAAE;AAE5B,IAAA,QACCC,cAAA,CAACC,YAAI,EAAA,EACJ,SAAS,EAAC,cAAc,EACxB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EAAA,QAAA,EAEnB,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,KAAI;AACrB,YAAA,QACCD,cAAA,CAACE,aAAK,EAAA,EAEL,GAAG,EAAE,GAAG,CAAC,GAAG,EACZ,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,KAC7B,SAAS,EAAA,EAJR,CAAC,CAKL;QAEJ,CAAC,CAAC,EAAA,CACI;AAET;;;;"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
-
var classNames = require('classnames');
|
|
7
|
-
|
|
8
|
-
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
|
|
9
|
-
|
|
10
|
-
var classNames__default = /*#__PURE__*/_interopDefaultCompat(classNames);
|
|
11
|
-
|
|
12
|
-
function InputContainer(props) {
|
|
13
|
-
const { as: As = "label", label, className, labelInline, style, children, status, tip, required, } = props;
|
|
14
|
-
return (jsxRuntime.jsxs(As, { className: classNames__default("i-input-label", className, {
|
|
15
|
-
"i-input-inline": labelInline,
|
|
16
|
-
}), style: style, children: [label && (jsxRuntime.jsxs("span", { className: 'i-input-label-text', children: [required && jsxRuntime.jsx("span", { className: 'error', children: "*" }), label] })), children, tip && (jsxRuntime.jsx("span", { className: classNames__default("i-input-message", {
|
|
17
|
-
[`i-input-${status}`]: status !== "normal",
|
|
18
|
-
}), children: tip }))] }));
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
exports.default = InputContainer;
|
|
22
|
-
//# sourceMappingURL=container.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sources":["../../../../packages/components/input/container.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport { IInputContainer } from \"./type\";\n\nexport default function InputContainer(props: IInputContainer) {\n\tconst {\n\t\tas: As = \"label\",\n\t\tlabel,\n\t\tclassName,\n\t\tlabelInline,\n\t\tstyle,\n\t\tchildren,\n\t\tstatus,\n\t\ttip,\n\t\trequired,\n\t} = props;\n\n\treturn (\n\t\t<As\n\t\t\tclassName={classNames(\"i-input-label\", className, {\n\t\t\t\t\"i-input-inline\": labelInline,\n\t\t\t})}\n\t\t\tstyle={style}\n\t\t>\n\t\t\t{label && (\n\t\t\t\t<span className='i-input-label-text'>\n\t\t\t\t\t{required && <span className='error'>*</span>}\n\t\t\t\t\t{label}\n\t\t\t\t</span>\n\t\t\t)}\n\n\t\t\t{children}\n\n\t\t\t{tip && (\n\t\t\t\t<span\n\t\t\t\t\tclassName={classNames(\"i-input-message\", {\n\t\t\t\t\t\t[`i-input-${status}`]: status !== \"normal\",\n\t\t\t\t\t})}\n\t\t\t\t>\n\t\t\t\t\t{tip}\n\t\t\t\t</span>\n\t\t\t)}\n\t\t</As>\n\t);\n}\n"],"names":["_jsxs","classNames","_jsx"],"mappings":";;;;;;;;;;;AAGc,SAAU,cAAc,CAAC,KAAsB,EAAA;IAC5D,MAAM,EACL,EAAE,EAAE,EAAE,GAAG,OAAO,EAChB,KAAK,EACL,SAAS,EACT,WAAW,EACX,KAAK,EACL,QAAQ,EACR,MAAM,EACN,GAAG,EACH,QAAQ,GACR,GAAG,KAAK;IAET,QACCA,eAAA,CAAC,EAAE,EAAA,EACF,SAAS,EAAEC,mBAAU,CAAC,eAAe,EAAE,SAAS,EAAE;AACjD,YAAA,gBAAgB,EAAE,WAAW;AAC7B,SAAA,CAAC,EACF,KAAK,EAAE,KAAK,EAAA,QAAA,EAAA,CAEX,KAAK,KACLD,eAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,oBAAoB,EAAA,QAAA,EAAA,CAClC,QAAQ,IAAIE,yBAAM,SAAS,EAAC,OAAO,EAAA,QAAA,EAAA,GAAA,EAAA,CAAS,EAC5C,KAAK,CAAA,EAAA,CACA,CACP,EAEA,QAAQ,EAER,GAAG,KACHA,yBACC,SAAS,EAAED,mBAAU,CAAC,iBAAiB,EAAE;AACxC,oBAAA,CAAC,WAAW,MAAM,CAAA,CAAE,GAAG,MAAM,KAAK,QAAQ;AAC1C,iBAAA,CAAC,YAED,GAAG,EAAA,CACE,CACP,CAAA,EAAA,CACG;AAEP;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|