@canlooks/can-ui 0.0.69 → 0.0.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/actionSheet/actionSheet.js +9 -4
- package/dist/cjs/components/alert/alert.style.d.ts +2 -2
- package/dist/cjs/components/app/appDialog.js +28 -24
- package/dist/cjs/components/autocomplete/autocomplete.js +21 -27
- package/dist/cjs/components/avatar/avatar.d.ts +2 -2
- package/dist/cjs/components/avatar/avatar.js +6 -5
- package/dist/cjs/components/avatar/avatarGroup.js +1 -1
- package/dist/cjs/components/bubbleConfirm/bubbleConfirm.js +9 -2
- package/dist/cjs/components/bubbleConfirm/bubbleConfirm.style.d.ts +1 -1
- package/dist/cjs/components/cascade/cascade.d.ts +2 -2
- package/dist/cjs/components/cascade/cascade.js +33 -21
- package/dist/cjs/components/cascade/cascadePanel.js +23 -13
- package/dist/cjs/components/checkboxBase/checkboxBase.d.ts +2 -2
- package/dist/cjs/components/checkboxBase/checkboxBase.js +9 -2
- package/dist/cjs/components/checkboxBase/checkboxBase.style.d.ts +1 -1
- package/dist/cjs/components/checkboxBaseGroup/checkboxBaseGroup.js +2 -2
- package/dist/cjs/components/clickAway/clickAway.d.ts +27 -27
- package/dist/cjs/components/colorPicker/colorPicker.d.ts +2 -2
- package/dist/cjs/components/colorPicker/colorPicker.js +2 -2
- package/dist/cjs/components/counter/counter.js +9 -10
- package/dist/cjs/components/curd/curd.d.ts +10 -12
- package/dist/cjs/components/curd/curd.js +39 -34
- package/dist/cjs/components/curd/curd.style.d.ts +2 -1
- package/dist/cjs/components/curd/curd.style.js +14 -4
- package/dist/cjs/components/curd/curdDialog.js +2 -1
- package/dist/cjs/components/curd/curdFilterable.d.ts +21 -0
- package/dist/cjs/components/curd/{curdFilter.js → curdFilterable.js} +19 -24
- package/dist/cjs/components/curd/index.d.ts +1 -1
- package/dist/cjs/components/curd/index.js +1 -1
- package/dist/cjs/components/dataGrid/columnResize.js +2 -2
- package/dist/cjs/components/dataGrid/dataGrid.d.ts +29 -12
- package/dist/cjs/components/dataGrid/dataGrid.js +46 -20
- package/dist/cjs/components/dataGrid/dataGrid.style.d.ts +5 -3
- package/dist/cjs/components/dataGrid/dataGrid.style.js +38 -33
- package/dist/cjs/components/dataGrid/dataGridHead.d.ts +4 -1
- package/dist/cjs/components/dataGrid/dataGridHead.js +28 -19
- package/dist/cjs/components/dataGrid/dataGridRows.js +1 -1
- package/dist/cjs/components/dataGrid/filterBubbleContent.d.ts +19 -0
- package/dist/cjs/components/dataGrid/filterBubbleContent.js +42 -0
- package/dist/cjs/components/dateTimePicker/dateTimePicker.d.ts +2 -2
- package/dist/cjs/components/dateTimePicker/dateTimePicker.js +27 -9
- package/dist/cjs/components/dateTimePicker/dateTimePicker.style.d.ts +1 -1
- package/dist/cjs/components/dateTimeRangePicker/dateTimeRangePicker.d.ts +4 -3
- package/dist/cjs/components/dateTimeRangePicker/dateTimeRangePicker.js +45 -23
- package/dist/cjs/components/descriptions/descriptions.js +2 -0
- package/dist/cjs/components/descriptions/descriptions.style.d.ts +1 -1
- package/dist/cjs/components/dialog/dialog.d.ts +1 -1
- package/dist/cjs/components/dialog/dialog.js +2 -2
- package/dist/cjs/components/dialog/dialog.style.d.ts +2 -2
- package/dist/cjs/components/draggable/draggable.d.ts +12 -2
- package/dist/cjs/components/draggable/draggable.js +34 -4
- package/dist/cjs/components/flex/flex.d.ts +7 -4
- package/dist/cjs/components/flex/flex.js +3 -3
- package/dist/cjs/components/form/form.d.ts +10 -5
- package/dist/cjs/components/form/form.js +45 -9
- package/dist/cjs/components/form/formItem.d.ts +12 -7
- package/dist/cjs/components/form/formItem.js +47 -33
- package/dist/cjs/components/form/formRelatable.js +2 -1
- package/dist/cjs/components/gallery/gallery.style.d.ts +1 -1
- package/dist/cjs/components/gallery/imageItem.js +1 -1
- package/dist/cjs/components/grid/grid.d.ts +5 -5
- package/dist/cjs/components/grid/gridItem.d.ts +8 -7
- package/dist/cjs/components/grid/gridItem.js +2 -3
- package/dist/cjs/components/image/image.d.ts +4 -4
- package/dist/cjs/components/input/input.d.ts +2 -2
- package/dist/cjs/components/input/input.js +9 -2
- package/dist/cjs/components/inputBase/inputBase.d.ts +16 -11
- package/dist/cjs/components/inputBase/inputBase.js +23 -12
- package/dist/cjs/components/loading/loading.d.ts +3 -1
- package/dist/cjs/components/loading/loading.js +2 -2
- package/dist/cjs/components/loading/loading.style.js +4 -3
- package/dist/cjs/components/loadingIndicator/loadingIndicator.d.ts +4 -2
- package/dist/cjs/components/loadingIndicator/loadingIndicator.js +2 -2
- package/dist/cjs/components/loadingIndicator/loadingIndicator.style.d.ts +1 -1
- package/dist/cjs/components/loadingIndicator/loadingIndicator.style.js +1 -2
- package/dist/cjs/components/loadingMask/loadingMask.js +1 -1
- package/dist/cjs/components/menu/menu.js +1 -1
- package/dist/cjs/components/menuItem/menuItem.d.ts +2 -2
- package/dist/cjs/components/optionsBase/optionsBase.js +1 -0
- package/dist/cjs/components/overlayBase/overlayBase.js +9 -6
- package/dist/cjs/components/overlayBase/overlayBase.style.js +0 -3
- package/dist/cjs/components/palette/palette.style.d.ts +1 -1
- package/dist/cjs/components/pickerDialog/pickerDialog.js +20 -7
- package/dist/cjs/components/pickerDialog/pickerDialog.style.d.ts +1 -1
- package/dist/cjs/components/popper/popper.d.ts +5 -2
- package/dist/cjs/components/popper/popper.js +31 -12
- package/dist/cjs/components/popper/popper.style.js +1 -2
- package/dist/cjs/components/progress/progress.js +1 -1
- package/dist/cjs/components/resizable/resizable.style.d.ts +1 -1
- package/dist/cjs/components/segmented/segmented.style.d.ts +1 -1
- package/dist/cjs/components/select/select.d.ts +2 -2
- package/dist/cjs/components/select/select.js +44 -20
- package/dist/cjs/components/selectedList/selectedItem.d.ts +1 -1
- package/dist/cjs/components/selectedList/selectedItem.js +2 -2
- package/dist/cjs/components/selectionContext/selectionContext.d.ts +0 -1
- package/dist/cjs/components/selectionContext/selectionHook.d.ts +1 -1
- package/dist/cjs/components/selectionContext/selectionHook.js +2 -2
- package/dist/cjs/components/serialInput/index.d.ts +1 -0
- package/dist/cjs/components/serialInput/index.js +4 -0
- package/dist/cjs/components/serialInput/serialInput.d.ts +21 -0
- package/dist/cjs/components/serialInput/serialInput.js +58 -0
- package/dist/cjs/components/serialInput/serialInput.style.d.ts +6 -0
- package/dist/cjs/components/serialInput/serialInput.style.js +13 -0
- package/dist/cjs/components/skeleton/skeleton.d.ts +2 -2
- package/dist/cjs/components/slidableActions/slidableActionsAction.js +15 -6
- package/dist/cjs/components/slider/slider.d.ts +2 -2
- package/dist/cjs/components/slider/slider.js +15 -21
- package/dist/cjs/components/snackbarBase/snackbarBase.style.d.ts +1 -1
- package/dist/cjs/components/snackbarBase/snackbarBase.style.js +1 -3
- package/dist/cjs/components/sortableItem/sortableItem.js +9 -10
- package/dist/cjs/components/switch/switch.d.ts +2 -2
- package/dist/cjs/components/table/table.d.ts +3 -3
- package/dist/cjs/components/table/table.style.d.ts +1 -1
- package/dist/cjs/components/table/tableSticky.d.ts +5 -5
- package/dist/cjs/components/table/tableSticky.js +4 -4
- package/dist/cjs/components/tabs/tabs.style.d.ts +3 -3
- package/dist/cjs/components/tag/tag.d.ts +1 -1
- package/dist/cjs/components/tag/tag.js +2 -1
- package/dist/cjs/components/tag/tag.style.d.ts +1 -1
- package/dist/cjs/components/textarea/textarea.d.ts +2 -2
- package/dist/cjs/components/textarea/textarea.js +5 -1
- package/dist/cjs/components/toggleButton/toggleButton.js +1 -1
- package/dist/cjs/components/transfer/transfer.style.d.ts +2 -2
- package/dist/cjs/components/transitionBase/collapse.js +36 -14
- package/dist/cjs/components/transitionBase/transitionBase.js +1 -1
- package/dist/cjs/components/transitionBase/transitionBase.style.js +1 -1
- package/dist/cjs/components/transportStyle/transportStyle.d.ts +1 -1
- package/dist/cjs/components/transportStyle/transportStyle.js +2 -3
- package/dist/cjs/components/tree/tree.d.ts +17 -4
- package/dist/cjs/components/tree/tree.js +15 -14
- package/dist/cjs/components/tree/tree.style.d.ts +9 -3
- package/dist/cjs/components/tree/tree.style.js +135 -4
- package/dist/cjs/components/tree/treeDnd.d.ts +25 -0
- package/dist/cjs/components/tree/treeDnd.js +23 -0
- package/dist/cjs/components/tree/treeNode.d.ts +2 -2
- package/dist/cjs/components/tree/treeNode.js +94 -16
- package/dist/cjs/components/treeSelect/treeSelect.d.ts +2 -2
- package/dist/cjs/components/treeSelect/treeSelect.js +3 -3
- package/dist/cjs/components/upload/upload.d.ts +2 -2
- package/dist/cjs/components/upload/upload.js +5 -2
- package/dist/cjs/components/upload/upload.style.d.ts +2 -2
- package/dist/cjs/extensions/curd/curd.d.ts +20 -0
- package/dist/cjs/extensions/curd/curd.js +20 -0
- package/dist/cjs/extensions/documentViewer/pdfViewer.d.ts +2 -2
- package/dist/cjs/extensions/reactiveForm/index.d.ts +2 -0
- package/dist/cjs/extensions/reactiveForm/index.js +5 -0
- package/dist/cjs/extensions/reactiveForm/reactiveForm.d.ts +19 -0
- package/dist/cjs/extensions/reactiveForm/reactiveForm.js +29 -0
- package/dist/cjs/extensions/reactiveForm/reactiveFormItem.d.ts +7 -0
- package/dist/cjs/extensions/reactiveForm/reactiveFormItem.js +39 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/types.d.ts +2 -2
- package/dist/cjs/utils/curd.js +5 -2
- package/dist/cjs/utils/dataGrid.d.ts +3 -2
- package/dist/cjs/utils/hooks.js +3 -3
- package/dist/cjs/utils/index.d.ts +2 -2
- package/dist/cjs/utils/index.js +2 -2
- package/dist/cjs/utils/utils.d.ts +17 -9
- package/dist/cjs/utils/utils.js +59 -16
- package/dist/esm/components/actionSheet/actionSheet.js +10 -5
- package/dist/esm/components/alert/alert.style.d.ts +2 -2
- package/dist/esm/components/app/appDialog.js +28 -24
- package/dist/esm/components/autocomplete/autocomplete.js +22 -28
- package/dist/esm/components/avatar/avatar.d.ts +2 -2
- package/dist/esm/components/avatar/avatar.js +7 -6
- package/dist/esm/components/avatar/avatarGroup.js +1 -1
- package/dist/esm/components/bubbleConfirm/bubbleConfirm.js +10 -3
- package/dist/esm/components/bubbleConfirm/bubbleConfirm.style.d.ts +1 -1
- package/dist/esm/components/cascade/cascade.d.ts +2 -2
- package/dist/esm/components/cascade/cascade.js +34 -22
- package/dist/esm/components/cascade/cascadePanel.js +24 -14
- package/dist/esm/components/checkboxBase/checkboxBase.d.ts +2 -2
- package/dist/esm/components/checkboxBase/checkboxBase.js +10 -3
- package/dist/esm/components/checkboxBase/checkboxBase.style.d.ts +1 -1
- package/dist/esm/components/checkboxBaseGroup/checkboxBaseGroup.js +3 -3
- package/dist/esm/components/clickAway/clickAway.d.ts +27 -27
- package/dist/esm/components/colorPicker/colorPicker.d.ts +2 -2
- package/dist/esm/components/colorPicker/colorPicker.js +3 -3
- package/dist/esm/components/counter/counter.js +10 -11
- package/dist/esm/components/curd/curd.d.ts +10 -12
- package/dist/esm/components/curd/curd.js +40 -35
- package/dist/esm/components/curd/curd.style.d.ts +2 -1
- package/dist/esm/components/curd/curd.style.js +14 -4
- package/dist/esm/components/curd/curdDialog.js +2 -1
- package/dist/esm/components/curd/curdFilterable.d.ts +21 -0
- package/dist/esm/components/curd/{curdFilter.js → curdFilterable.js} +20 -25
- package/dist/esm/components/curd/index.d.ts +1 -1
- package/dist/esm/components/curd/index.js +1 -1
- package/dist/esm/components/dataGrid/columnResize.js +3 -3
- package/dist/esm/components/dataGrid/dataGrid.d.ts +29 -12
- package/dist/esm/components/dataGrid/dataGrid.js +48 -22
- package/dist/esm/components/dataGrid/dataGrid.style.d.ts +5 -3
- package/dist/esm/components/dataGrid/dataGrid.style.js +38 -33
- package/dist/esm/components/dataGrid/dataGridHead.d.ts +4 -1
- package/dist/esm/components/dataGrid/dataGridHead.js +29 -20
- package/dist/esm/components/dataGrid/dataGridRows.js +1 -1
- package/dist/esm/components/dataGrid/filterBubbleContent.d.ts +19 -0
- package/dist/esm/components/dataGrid/filterBubbleContent.js +39 -0
- package/dist/esm/components/dateTimePicker/dateTimePicker.d.ts +2 -2
- package/dist/esm/components/dateTimePicker/dateTimePicker.js +28 -10
- package/dist/esm/components/dateTimePicker/dateTimePicker.style.d.ts +1 -1
- package/dist/esm/components/dateTimeRangePicker/dateTimeRangePicker.d.ts +4 -3
- package/dist/esm/components/dateTimeRangePicker/dateTimeRangePicker.js +46 -24
- package/dist/esm/components/descriptions/descriptions.js +2 -0
- package/dist/esm/components/descriptions/descriptions.style.d.ts +1 -1
- package/dist/esm/components/dialog/dialog.d.ts +1 -1
- package/dist/esm/components/dialog/dialog.js +2 -2
- package/dist/esm/components/dialog/dialog.style.d.ts +2 -2
- package/dist/esm/components/draggable/draggable.d.ts +12 -2
- package/dist/esm/components/draggable/draggable.js +35 -5
- package/dist/esm/components/flex/flex.d.ts +7 -4
- package/dist/esm/components/flex/flex.js +2 -2
- package/dist/esm/components/form/form.d.ts +10 -5
- package/dist/esm/components/form/form.js +43 -9
- package/dist/esm/components/form/formItem.d.ts +12 -7
- package/dist/esm/components/form/formItem.js +49 -35
- package/dist/esm/components/form/formRelatable.js +3 -2
- package/dist/esm/components/gallery/gallery.style.d.ts +1 -1
- package/dist/esm/components/gallery/imageItem.js +1 -1
- package/dist/esm/components/grid/grid.d.ts +5 -5
- package/dist/esm/components/grid/gridItem.d.ts +8 -7
- package/dist/esm/components/grid/gridItem.js +2 -2
- package/dist/esm/components/image/image.d.ts +4 -4
- package/dist/esm/components/input/input.d.ts +2 -2
- package/dist/esm/components/input/input.js +10 -3
- package/dist/esm/components/inputBase/inputBase.d.ts +16 -11
- package/dist/esm/components/inputBase/inputBase.js +25 -14
- package/dist/esm/components/loading/loading.d.ts +3 -1
- package/dist/esm/components/loading/loading.js +2 -2
- package/dist/esm/components/loading/loading.style.js +4 -3
- package/dist/esm/components/loadingIndicator/loadingIndicator.d.ts +4 -2
- package/dist/esm/components/loadingIndicator/loadingIndicator.js +2 -2
- package/dist/esm/components/loadingIndicator/loadingIndicator.style.d.ts +1 -1
- package/dist/esm/components/loadingIndicator/loadingIndicator.style.js +1 -2
- package/dist/esm/components/loadingMask/loadingMask.js +1 -1
- package/dist/esm/components/menu/menu.js +2 -2
- package/dist/esm/components/menuItem/menuItem.d.ts +2 -2
- package/dist/esm/components/optionsBase/optionsBase.js +1 -0
- package/dist/esm/components/overlayBase/overlayBase.js +10 -7
- package/dist/esm/components/overlayBase/overlayBase.style.js +0 -3
- package/dist/esm/components/palette/palette.style.d.ts +1 -1
- package/dist/esm/components/pickerDialog/pickerDialog.js +21 -8
- package/dist/esm/components/pickerDialog/pickerDialog.style.d.ts +1 -1
- package/dist/esm/components/popper/popper.d.ts +5 -2
- package/dist/esm/components/popper/popper.js +31 -12
- package/dist/esm/components/popper/popper.style.js +1 -2
- package/dist/esm/components/progress/progress.js +1 -1
- package/dist/esm/components/resizable/resizable.style.d.ts +1 -1
- package/dist/esm/components/segmented/segmented.style.d.ts +1 -1
- package/dist/esm/components/select/select.d.ts +2 -2
- package/dist/esm/components/select/select.js +46 -22
- package/dist/esm/components/selectedList/selectedItem.d.ts +1 -1
- package/dist/esm/components/selectedList/selectedItem.js +2 -2
- package/dist/esm/components/selectionContext/selectionContext.d.ts +0 -1
- package/dist/esm/components/selectionContext/selectionHook.d.ts +1 -1
- package/dist/esm/components/selectionContext/selectionHook.js +1 -1
- package/dist/esm/components/serialInput/index.d.ts +1 -0
- package/dist/esm/components/serialInput/index.js +1 -0
- package/dist/esm/components/serialInput/serialInput.d.ts +21 -0
- package/dist/esm/components/serialInput/serialInput.js +55 -0
- package/dist/esm/components/serialInput/serialInput.style.d.ts +6 -0
- package/dist/esm/components/serialInput/serialInput.style.js +10 -0
- package/dist/esm/components/skeleton/skeleton.d.ts +2 -2
- package/dist/esm/components/slidableActions/slidableActionsAction.js +16 -7
- package/dist/esm/components/slider/slider.d.ts +2 -2
- package/dist/esm/components/slider/slider.js +16 -22
- package/dist/esm/components/snackbarBase/snackbarBase.style.d.ts +1 -1
- package/dist/esm/components/snackbarBase/snackbarBase.style.js +1 -3
- package/dist/esm/components/sortableItem/sortableItem.js +10 -11
- package/dist/esm/components/switch/switch.d.ts +2 -2
- package/dist/esm/components/table/table.d.ts +3 -3
- package/dist/esm/components/table/table.style.d.ts +1 -1
- package/dist/esm/components/table/tableSticky.d.ts +5 -5
- package/dist/esm/components/table/tableSticky.js +3 -3
- package/dist/esm/components/tabs/tabs.style.d.ts +3 -3
- package/dist/esm/components/tag/tag.d.ts +1 -1
- package/dist/esm/components/tag/tag.js +2 -1
- package/dist/esm/components/tag/tag.style.d.ts +1 -1
- package/dist/esm/components/textarea/textarea.d.ts +2 -2
- package/dist/esm/components/textarea/textarea.js +6 -2
- package/dist/esm/components/toggleButton/toggleButton.js +2 -2
- package/dist/esm/components/transfer/transfer.style.d.ts +2 -2
- package/dist/esm/components/transitionBase/collapse.js +38 -16
- package/dist/esm/components/transitionBase/transitionBase.js +1 -1
- package/dist/esm/components/transitionBase/transitionBase.style.js +1 -1
- package/dist/esm/components/transportStyle/transportStyle.d.ts +1 -1
- package/dist/esm/components/transportStyle/transportStyle.js +2 -2
- package/dist/esm/components/tree/tree.d.ts +17 -4
- package/dist/esm/components/tree/tree.js +17 -16
- package/dist/esm/components/tree/tree.style.d.ts +9 -3
- package/dist/esm/components/tree/tree.style.js +135 -4
- package/dist/esm/components/tree/treeDnd.d.ts +25 -0
- package/dist/esm/components/tree/treeDnd.js +19 -0
- package/dist/esm/components/tree/treeNode.d.ts +2 -2
- package/dist/esm/components/tree/treeNode.js +96 -18
- package/dist/esm/components/treeSelect/treeSelect.d.ts +2 -2
- package/dist/esm/components/treeSelect/treeSelect.js +4 -4
- package/dist/esm/components/upload/upload.d.ts +2 -2
- package/dist/esm/components/upload/upload.js +6 -3
- package/dist/esm/components/upload/upload.style.d.ts +2 -2
- package/dist/esm/extensions/curd/curd.d.ts +20 -0
- package/dist/esm/extensions/curd/curd.js +20 -0
- package/dist/esm/extensions/documentViewer/pdfViewer.d.ts +2 -2
- package/dist/esm/extensions/reactiveForm/index.d.ts +2 -0
- package/dist/esm/extensions/reactiveForm/index.js +2 -0
- package/dist/esm/extensions/reactiveForm/reactiveForm.d.ts +19 -0
- package/dist/esm/extensions/reactiveForm/reactiveForm.js +25 -0
- package/dist/esm/extensions/reactiveForm/reactiveFormItem.d.ts +7 -0
- package/dist/esm/extensions/reactiveForm/reactiveFormItem.js +36 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/types.d.ts +2 -2
- package/dist/esm/utils/curd.js +5 -2
- package/dist/esm/utils/dataGrid.d.ts +3 -2
- package/dist/esm/utils/hooks.js +3 -3
- package/dist/esm/utils/index.d.ts +2 -2
- package/dist/esm/utils/index.js +2 -2
- package/dist/esm/utils/utils.d.ts +17 -9
- package/dist/esm/utils/utils.js +58 -16
- package/extensions/reactiveForm.cjs +5 -0
- package/extensions/reactiveForm.d.ts +1 -0
- package/extensions/reactiveForm.js +1 -0
- package/package.json +2 -1
- package/dist/cjs/components/curd/curdFilter.d.ts +0 -16
- package/dist/esm/components/curd/curdFilter.d.ts +0 -16
- package/documentation/bootstrap.mjs +0 -8
- package/documentation/vite.config.mjs +0 -18
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { Model, RC, useReactor } from '@canlooks/reactive/react';
|
|
3
|
+
import { FormItem } from '../../components/form';
|
|
4
|
+
import { cloneElement, isValidElement, useRef } from 'react';
|
|
5
|
+
import { cloneRef } from '../../utils';
|
|
6
|
+
import { useReactiveFormContext } from './reactiveForm';
|
|
7
|
+
export const ReactiveFormItem = RC(({ refer, postValue, dependencies, ...props }) => {
|
|
8
|
+
if (refer && (typeof props.children === 'function' || isValidElement(props.children))) {
|
|
9
|
+
return (_jsx(Model, { refer: refer, postValue: postValue, children: _jsx(InnerFormItem, { ...props, dependencies: dependencies }) }));
|
|
10
|
+
}
|
|
11
|
+
return _jsx(FormItem, { ...props });
|
|
12
|
+
});
|
|
13
|
+
function InnerFormItem({ dependencies, checked, value, onChange, ...props }) {
|
|
14
|
+
const formItemRef = useRef(null);
|
|
15
|
+
useReactor(() => dependencies?.(), () => {
|
|
16
|
+
formItemRef.current.validate().then();
|
|
17
|
+
});
|
|
18
|
+
const context = useReactiveFormContext();
|
|
19
|
+
const fieldProps = {
|
|
20
|
+
checked,
|
|
21
|
+
value,
|
|
22
|
+
onChange(e) {
|
|
23
|
+
onChange?.(e);
|
|
24
|
+
context.onChange?.();
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
return (_jsx(FormItem, { ...props, ref: cloneRef(formItemRef, props.ref), _fieldValue: checked ?? value, children: (_, styleProps, key) => {
|
|
28
|
+
return typeof props.children === 'function'
|
|
29
|
+
? props.children(fieldProps, styleProps, key)
|
|
30
|
+
: cloneElement(props.children, {
|
|
31
|
+
key,
|
|
32
|
+
...fieldProps,
|
|
33
|
+
...styleProps
|
|
34
|
+
});
|
|
35
|
+
} }));
|
|
36
|
+
}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -67,6 +67,7 @@ export * from './components/segmented';
|
|
|
67
67
|
export * from './components/select';
|
|
68
68
|
export * from './components/selectedList';
|
|
69
69
|
export * from './components/selectionContext';
|
|
70
|
+
export * from './components/serialInput';
|
|
70
71
|
export * from './components/skeleton';
|
|
71
72
|
export * from './components/slidableActions';
|
|
72
73
|
export * from './components/slider';
|
package/dist/esm/index.js
CHANGED
|
@@ -67,6 +67,7 @@ export * from './components/segmented';
|
|
|
67
67
|
export * from './components/select';
|
|
68
68
|
export * from './components/selectedList';
|
|
69
69
|
export * from './components/selectionContext';
|
|
70
|
+
export * from './components/serialInput';
|
|
70
71
|
export * from './components/skeleton';
|
|
71
72
|
export * from './components/slidableActions';
|
|
72
73
|
export * from './components/slider';
|
package/dist/esm/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ComponentPropsWithRef, ElementType,
|
|
1
|
+
import { ComponentProps, ComponentPropsWithRef, ElementType, ReactElement } from 'react';
|
|
2
2
|
/**
|
|
3
3
|
* ----------------------------------------------------------------------------------
|
|
4
4
|
* Helpers
|
|
@@ -35,7 +35,7 @@ export type ResponsiveProp<T = number> = T | ResponsiveValue<T>;
|
|
|
35
35
|
* ----------------------------------------------------------------------------------
|
|
36
36
|
* Override props
|
|
37
37
|
*/
|
|
38
|
-
export type DivProps =
|
|
38
|
+
export type DivProps = ComponentProps<'div'>;
|
|
39
39
|
export type MergeProps<P, OverrideProps> = P & Omit<OverrideProps, keyof P>;
|
|
40
40
|
export type OverridableProps<P, C extends ElementType> = {
|
|
41
41
|
component?: C;
|
package/dist/esm/utils/curd.js
CHANGED
|
@@ -117,8 +117,11 @@ export function useCurdColumns({ columns, columnConfigurable }) {
|
|
|
117
117
|
if (!isUnset(col._key) && visibleSet.has(col._key)) {
|
|
118
118
|
const symbolArr = symbolBoundToNext.current.get(col) || [];
|
|
119
119
|
// 移除DataGrid不需要的属性
|
|
120
|
-
const { filter, form, ...c } = col;
|
|
121
|
-
return [
|
|
120
|
+
const { filterInline, filter, form, ...c } = col;
|
|
121
|
+
return [
|
|
122
|
+
...symbolArr,
|
|
123
|
+
{ ...c, filter: filterInline }
|
|
124
|
+
];
|
|
122
125
|
}
|
|
123
126
|
return [];
|
|
124
127
|
});
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { Id, Obj } from '../types';
|
|
2
2
|
import { ColumnType, DataGridProps, RowType } from '../components/dataGrid';
|
|
3
|
+
import { CurdColumn } from '../components/curd';
|
|
3
4
|
/**
|
|
4
5
|
* 为列添加key
|
|
5
6
|
* @param col
|
|
6
7
|
* @param index
|
|
7
8
|
*/
|
|
8
|
-
export declare function setDefaultColumnKey<R extends Obj>(col: Pick<ColumnType<R>, 'key' | 'field'>, index: number):
|
|
9
|
+
export declare function setDefaultColumnKey<R extends Obj>(col: Pick<ColumnType<R>, 'key' | 'field'>, index: number): Id;
|
|
9
10
|
/**
|
|
10
11
|
* 索引列
|
|
11
12
|
* @param columns
|
|
12
13
|
*/
|
|
13
|
-
export declare function useColumnMap<C extends ColumnType<any>>(columns?: (C | symbol)[]): Map<Id, C>;
|
|
14
|
+
export declare function useColumnMap<C extends ColumnType<any> | CurdColumn<any>>(columns?: (C | symbol)[]): Map<Id, C>;
|
|
14
15
|
/**
|
|
15
16
|
* 统一处理DataGrid列
|
|
16
17
|
* @param param0
|
package/dist/esm/utils/hooks.js
CHANGED
|
@@ -5,11 +5,11 @@ import { isPromise, getPromiseState } from './utils';
|
|
|
5
5
|
* @param value
|
|
6
6
|
*/
|
|
7
7
|
export function usePrev(value) {
|
|
8
|
-
const
|
|
8
|
+
const prev = useRef(null);
|
|
9
9
|
useEffect(() => {
|
|
10
|
-
|
|
10
|
+
prev.current = value;
|
|
11
11
|
});
|
|
12
|
-
return
|
|
12
|
+
return prev.current;
|
|
13
13
|
}
|
|
14
14
|
/**
|
|
15
15
|
* 将某个值使用ref同步,主要用于对付组件的闭包问题
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
export * from './bezier';
|
|
2
|
-
export * from './curd';
|
|
3
|
-
export * from './dataGrid';
|
|
4
2
|
export * from './dnd';
|
|
5
3
|
export * from './form';
|
|
6
4
|
export * from './gesture';
|
|
@@ -10,3 +8,5 @@ export * from './polyfill';
|
|
|
10
8
|
export * from './style';
|
|
11
9
|
export * from './tree';
|
|
12
10
|
export * from './utils';
|
|
11
|
+
export * from './dataGrid';
|
|
12
|
+
export * from './curd';
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
export * from './bezier';
|
|
2
|
-
export * from './curd';
|
|
3
|
-
export * from './dataGrid';
|
|
4
2
|
export * from './dnd';
|
|
5
3
|
export * from './form';
|
|
6
4
|
export * from './gesture';
|
|
@@ -10,3 +8,5 @@ export * from './polyfill';
|
|
|
10
8
|
export * from './style';
|
|
11
9
|
export * from './tree';
|
|
12
10
|
export * from './utils';
|
|
11
|
+
export * from './dataGrid';
|
|
12
|
+
export * from './curd';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Ref, ReactNode } from 'react';
|
|
2
|
-
import { Id } from '../types';
|
|
1
|
+
import { Ref, ReactNode, ElementType, ComponentProps } from 'react';
|
|
2
|
+
import { Id, Obj } from '../types';
|
|
3
3
|
/**
|
|
4
4
|
* 生成最简易的随机ID
|
|
5
5
|
* @param namespace
|
|
@@ -22,10 +22,11 @@ export declare function clsx(...classes: any[]): string;
|
|
|
22
22
|
*/
|
|
23
23
|
export declare function humpToSegmented(str: string, separator?: string): string;
|
|
24
24
|
/**
|
|
25
|
-
* 将某个值统一转换成数组或
|
|
25
|
+
* 将某个值统一转换成数组或null
|
|
26
26
|
* @param value
|
|
27
27
|
*/
|
|
28
|
-
export declare function toArray
|
|
28
|
+
export declare function toArray(value?: undefined | null): null;
|
|
29
|
+
export declare function toArray<T>(value: T): T extends any[] ? T : T extends undefined | null ? null : T[];
|
|
29
30
|
/**
|
|
30
31
|
* 判断某个值是否为已选中
|
|
31
32
|
* @param value 需要判断的值
|
|
@@ -102,11 +103,11 @@ export declare function fixInputNumber(value: string, { min, max, precision }: F
|
|
|
102
103
|
*/
|
|
103
104
|
export declare function isChildOf(target: Element | null, container?: Element | null): boolean;
|
|
104
105
|
/**
|
|
105
|
-
*
|
|
106
|
+
* 从某个元素开始,一直向上查找
|
|
106
107
|
* @param target
|
|
107
|
-
* @param callback
|
|
108
|
+
* @param callback 返回true表示找到,会停止递归
|
|
108
109
|
*/
|
|
109
|
-
export declare function findPredecessor(target: Element, callback: (
|
|
110
|
+
export declare function findPredecessor(target: Element, callback: (parent: HTMLElement) => any): HTMLElement | null;
|
|
110
111
|
/**
|
|
111
112
|
* 监听某个元素的所有祖先元素的滚动事件
|
|
112
113
|
* @param target
|
|
@@ -123,12 +124,19 @@ export declare function range(value: number, min?: number, max?: number): number
|
|
|
123
124
|
* @param obj
|
|
124
125
|
* @param keyPath
|
|
125
126
|
* @param setValue
|
|
126
|
-
* @param separator
|
|
127
|
+
* @param separator 分隔符,默认为`.`
|
|
127
128
|
*/
|
|
128
|
-
export declare function queryDeep<T
|
|
129
|
+
export declare function queryDeep<T = any>(obj: any, keyPath: PropertyKey | PropertyKey[], setValue?: (oldValue: any) => T, separator?: string): T;
|
|
130
|
+
export declare function queryDeep<T = any>(obj: any, keyPath: PropertyKey | PropertyKey[], separator?: string, setValue?: (oldValue: any) => T): T;
|
|
129
131
|
/**
|
|
130
132
|
* 过滤对象中值为undefined属性
|
|
131
133
|
* @param obj
|
|
132
134
|
* @param undefinedValue 可传入该值,用于替换undefined以删除其他属性
|
|
133
135
|
*/
|
|
134
136
|
export declare function filterProperties<T extends Record<string, any>>(obj: T, undefinedValue?: any): T;
|
|
137
|
+
/**
|
|
138
|
+
* 合并属性
|
|
139
|
+
*/
|
|
140
|
+
type ExtendableProps<T> = (T extends ElementType ? ComponentProps<T> : T) & Obj;
|
|
141
|
+
export declare function mergeComponentProps<T>(...props: (Partial<ExtendableProps<T>> | undefined)[]): ExtendableProps<T>;
|
|
142
|
+
export {};
|
package/dist/esm/utils/utils.js
CHANGED
|
@@ -55,10 +55,6 @@ export function humpToSegmented(str, separator = '-') {
|
|
|
55
55
|
return index ? separator + $1.toLowerCase() : $1;
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
|
-
/**
|
|
59
|
-
* 将某个值统一转换成数组或undefined
|
|
60
|
-
* @param value
|
|
61
|
-
*/
|
|
62
58
|
export function toArray(value) {
|
|
63
59
|
return isUnset(value)
|
|
64
60
|
? null
|
|
@@ -222,9 +218,9 @@ export function isChildOf(target, container) {
|
|
|
222
218
|
return false;
|
|
223
219
|
}
|
|
224
220
|
/**
|
|
225
|
-
*
|
|
221
|
+
* 从某个元素开始,一直向上查找
|
|
226
222
|
* @param target
|
|
227
|
-
* @param callback
|
|
223
|
+
* @param callback 返回true表示找到,会停止递归
|
|
228
224
|
*/
|
|
229
225
|
export function findPredecessor(target, callback) {
|
|
230
226
|
while (target) {
|
|
@@ -266,18 +262,17 @@ export function listenAllPredecessorsScroll(target, listener) {
|
|
|
266
262
|
export function range(value, min = -Infinity, max = Infinity) {
|
|
267
263
|
return Math.max(min, Math.min(max, value));
|
|
268
264
|
}
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
export function queryDeep(obj, keyPath, setValue, separator = '.') {
|
|
265
|
+
export function queryDeep(obj, keyPath, a, b) {
|
|
266
|
+
const setValue = typeof b === 'function' ? b
|
|
267
|
+
: typeof a === 'function' ? a
|
|
268
|
+
: void 0;
|
|
269
|
+
const separator = typeof b === 'string' ? b
|
|
270
|
+
: typeof a === 'string' ? a
|
|
271
|
+
: '.';
|
|
277
272
|
if (Array.isArray(keyPath)) {
|
|
278
273
|
let result = obj;
|
|
279
274
|
for (let i = 0, { length } = keyPath; i < length; i++) {
|
|
280
|
-
if (typeof result !== 'object' ||
|
|
275
|
+
if (typeof result !== 'object' || result === null) {
|
|
281
276
|
result = void 0;
|
|
282
277
|
break;
|
|
283
278
|
}
|
|
@@ -287,7 +282,10 @@ export function queryDeep(obj, keyPath, setValue, separator = '.') {
|
|
|
287
282
|
result[k] = setValue(result[k]);
|
|
288
283
|
}
|
|
289
284
|
else if (!(k in result)) {
|
|
290
|
-
|
|
285
|
+
const nextKey = keyPath[i + 1];
|
|
286
|
+
result[k] = (typeof nextKey === 'string' && isNaN(+nextKey)) || typeof nextKey === 'symbol'
|
|
287
|
+
? {}
|
|
288
|
+
: [];
|
|
291
289
|
}
|
|
292
290
|
}
|
|
293
291
|
result = result[k];
|
|
@@ -315,3 +313,47 @@ export function filterProperties(obj, undefinedValue) {
|
|
|
315
313
|
}
|
|
316
314
|
return obj;
|
|
317
315
|
}
|
|
316
|
+
export function mergeComponentProps(...props) {
|
|
317
|
+
const { length } = props;
|
|
318
|
+
if (length <= 1) {
|
|
319
|
+
return props[0];
|
|
320
|
+
}
|
|
321
|
+
const fn = (target, source) => {
|
|
322
|
+
if (!source) {
|
|
323
|
+
return;
|
|
324
|
+
}
|
|
325
|
+
for (const p in source) {
|
|
326
|
+
if (p in target) {
|
|
327
|
+
switch (p) {
|
|
328
|
+
case 'css':
|
|
329
|
+
target.css = [...toArray(target.css), ...toArray(source.css)];
|
|
330
|
+
continue;
|
|
331
|
+
case 'ref':
|
|
332
|
+
target.ref = cloneRef(target.ref, source.ref);
|
|
333
|
+
continue;
|
|
334
|
+
case 'className':
|
|
335
|
+
target.className = clsx(target.className, source.className);
|
|
336
|
+
continue;
|
|
337
|
+
case 'style':
|
|
338
|
+
target.style = { ...source.style, ...target.style };
|
|
339
|
+
continue;
|
|
340
|
+
default:
|
|
341
|
+
const v = source[p];
|
|
342
|
+
if (typeof v === 'function') {
|
|
343
|
+
target[p] = (...args) => {
|
|
344
|
+
target[p](...args);
|
|
345
|
+
v(...args);
|
|
346
|
+
};
|
|
347
|
+
continue;
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
target[p] = source[p];
|
|
352
|
+
}
|
|
353
|
+
};
|
|
354
|
+
const merged = { ...props[0] };
|
|
355
|
+
for (let i = 1; i < length; i++) {
|
|
356
|
+
fn(merged, props[i]);
|
|
357
|
+
}
|
|
358
|
+
return merged;
|
|
359
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../dist/esm/extensions/reactiveForm'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '../dist/esm/extensions/reactiveForm'
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@canlooks/can-ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.71",
|
|
4
4
|
"author": "C.CanLiang <canlooks@gmail.com>",
|
|
5
5
|
"description": "My ui framework",
|
|
6
6
|
"license": "MIT",
|
|
@@ -64,6 +64,7 @@
|
|
|
64
64
|
"devDependencies": {
|
|
65
65
|
"@ant-design/icons": "^6.0.0",
|
|
66
66
|
"@canlooks/react-router": "^1.0.11",
|
|
67
|
+
"@canlooks/reactive": "^4.2.5",
|
|
67
68
|
"@emotion/styled": "^11.14.0",
|
|
68
69
|
"@mdi/js": "^7.4.47",
|
|
69
70
|
"@mdi/react": "^1.6.1",
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ReactElement, ReactNode } from 'react';
|
|
2
|
-
import { FormProps, FormRef, FormValue } from '../form';
|
|
3
|
-
import { CurdBaseProps } from './curd';
|
|
4
|
-
import { ButtonProps } from '../button';
|
|
5
|
-
import { RowType } from '../dataGrid';
|
|
6
|
-
export interface CurdFilterProps<R extends RowType, F extends FormValue = FormValue> extends Omit<FormProps<F>, 'variant'>, Pick<CurdBaseProps<R, F>, 'columns'> {
|
|
7
|
-
/** 筛选项是否可收起与展开,若开启此功能,需保证每项的高度一致,否则可能出现样式问题 */
|
|
8
|
-
expandable?: boolean;
|
|
9
|
-
/** 是否显示"筛选"按钮,若为false,则每次触发onChange的同时会触发onFilter,若为true,则onFilter只会在点击按钮时触发,默认为false */
|
|
10
|
-
showButton?: boolean;
|
|
11
|
-
/** 是否显示已生效的筛选条件 */
|
|
12
|
-
renderConditions?(filterValue: F, formInstance: FormRef<F> | null): ReactNode;
|
|
13
|
-
buttonProps?: ButtonProps;
|
|
14
|
-
onFilter?(filterValue: F): void;
|
|
15
|
-
}
|
|
16
|
-
export declare const CurdFilter: <R extends RowType, F extends FormValue = FormValue>(props: CurdFilterProps<R, F>) => ReactElement;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ReactElement, ReactNode } from 'react';
|
|
2
|
-
import { FormProps, FormRef, FormValue } from '../form';
|
|
3
|
-
import { CurdBaseProps } from './curd';
|
|
4
|
-
import { ButtonProps } from '../button';
|
|
5
|
-
import { RowType } from '../dataGrid';
|
|
6
|
-
export interface CurdFilterProps<R extends RowType, F extends FormValue = FormValue> extends Omit<FormProps<F>, 'variant'>, Pick<CurdBaseProps<R, F>, 'columns'> {
|
|
7
|
-
/** 筛选项是否可收起与展开,若开启此功能,需保证每项的高度一致,否则可能出现样式问题 */
|
|
8
|
-
expandable?: boolean;
|
|
9
|
-
/** 是否显示"筛选"按钮,若为false,则每次触发onChange的同时会触发onFilter,若为true,则onFilter只会在点击按钮时触发,默认为false */
|
|
10
|
-
showButton?: boolean;
|
|
11
|
-
/** 是否显示已生效的筛选条件 */
|
|
12
|
-
renderConditions?(filterValue: F, formInstance: FormRef<F> | null): ReactNode;
|
|
13
|
-
buttonProps?: ButtonProps;
|
|
14
|
-
onFilter?(filterValue: F): void;
|
|
15
|
-
}
|
|
16
|
-
export declare const CurdFilter: <R extends RowType, F extends FormValue = FormValue>(props: CurdFilterProps<R, F>) => ReactElement;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
import { fileURLToPath } from 'url';
|
|
3
|
-
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
4
|
-
export default {
|
|
5
|
-
root: __dirname,
|
|
6
|
-
envDir: path.join(__dirname, 'env'),
|
|
7
|
-
resolve: {
|
|
8
|
-
alias: {
|
|
9
|
-
'@': path.join(__dirname, '../src')
|
|
10
|
-
}
|
|
11
|
-
},
|
|
12
|
-
build: {
|
|
13
|
-
emptyOutDir: true
|
|
14
|
-
},
|
|
15
|
-
preview: {
|
|
16
|
-
open: true
|
|
17
|
-
}
|
|
18
|
-
};
|