plain-design 1.0.0-beta.98 → 3.0.0
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/plain-design.commonjs.min.js +2 -18
- package/dist/plain-design.commonjs.min.js.LICENSE.txt +18 -0
- package/dist/plain-design.min.css +25 -24
- package/dist/plain-design.min.js +2 -18
- package/dist/plain-design.min.js.LICENSE.txt +18 -0
- package/dist/report.html +3 -3
- package/package.json +43 -40
- package/src/packages/components/$address/createAddressService.tsx +8 -3
- package/src/packages/components/$ai/index.tsx +368 -0
- package/src/packages/components/$configuration/index.tsx +4 -2
- package/src/packages/components/$file/index.tsx +44 -1
- package/src/packages/components/$imageSelector/index.tsx +56 -0
- package/src/packages/components/$message/image.service.utils.tsx +1 -1
- package/src/packages/components/$object/createObjectService.tsx +8 -6
- package/src/packages/components/$object/object.conver.ts +3 -3
- package/src/packages/components/$object/object.service.utils.ts +2 -2
- package/src/packages/components/$ov/createOvService.ts +2 -2
- package/src/packages/components/$previewer/ImagePreviewerFixedContainer.tsx +6 -6
- package/src/packages/components/$previewer/index.tsx +1 -1
- package/src/packages/components/$search/SearchFooter.tsx +1 -1
- package/src/packages/components/$search/SearchList.tsx +2 -2
- package/src/packages/components/$search/SearchServicePanel.tsx +4 -4
- package/src/packages/components/$search/createSearchService.tsx +1 -1
- package/src/packages/components/$search/search-service.scss +1 -0
- package/src/packages/components/$search/search.utils.tsx +1 -1
- package/src/packages/components/$upload/upload.utils.ts +7 -6
- package/src/packages/components/Address/index.tsx +2 -2
- package/src/packages/components/AddressCascade/address-cascade.utils.ts +1 -1
- package/src/packages/components/AddressCascade/createAddressCascade.hooks.ts +1 -1
- package/src/packages/components/AddressCascade/createAddressCascade.multiple.tsx +5 -6
- package/src/packages/components/AddressCascade/createAddressCascade.single.tsx +6 -7
- package/src/packages/components/AddressCascade/index.tsx +1 -1
- package/src/packages/components/AiChatBox/ai-chat-box.scss +74 -0
- package/src/packages/components/AiChatBox/index.tsx +306 -0
- package/src/packages/components/Alert/index.tsx +1 -1
- package/src/packages/components/Application/index.tsx +1 -1
- package/src/packages/components/Application/service/createApplicationService.tsx +2 -2
- package/src/packages/components/Application/service/createApplicationServiceComponent.tsx +1 -1
- package/src/packages/components/Application/service/createApplicationServiceManager.tsx +2 -2
- package/src/packages/components/Application/service/useApplicationService.tsx +3 -3
- package/src/packages/components/Application/utils/application.utils.ts +3 -4
- package/src/packages/components/Application/utils/createServiceReadyObserver.ts +1 -1
- package/src/packages/components/ArrowStep/index.tsx +1 -1
- package/src/packages/components/ArrowStepGroup/index.tsx +2 -2
- package/src/packages/components/AutoLoadingObserver/index.tsx +3 -3
- package/src/packages/components/AutoTable/AutoTable.tsx +1 -1
- package/src/packages/components/AutoTable/auto-table.scss +35 -4
- package/src/packages/components/AutoTable/createTableOptionUser.tsx +3 -1
- package/src/packages/components/AutoTable/filter/useTableOption.filter.form.tsx +8 -5
- package/src/packages/components/AutoTable/filter/useTableOption.filter.search.tsx +2 -2
- package/src/packages/components/AutoTable/filter/useTableOption.filter.state.ts +12 -7
- package/src/packages/components/AutoTable/setting/useTableOption.setting.all.fitler.tsx +1 -1
- package/src/packages/components/AutoTable/setting/useTableOption.setting.cache.tsx +3 -3
- package/src/packages/components/AutoTable/setting/useTableOption.setting.config.tsx +59 -17
- package/src/packages/components/AutoTable/setting/useTableOption.setting.export.tsx +5 -30
- package/src/packages/components/AutoTable/setting/useTableOption.setting.import.tsx +3 -3
- package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.filter.tsx +388 -385
- package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.sort.tsx +15 -8
- package/src/packages/components/AutoTable/setting/useTableOption.setting.tsx +109 -109
- package/src/packages/components/AutoTable/setting/useTableOption.setting.utils.ts +2 -2
- package/src/packages/components/AutoTable/use/useTableOption.ai.tsx +640 -0
- package/src/packages/components/AutoTable/use/useTableOption.buttons.tsx +27 -17
- package/src/packages/components/AutoTable/use/useTableOption.cache.ts +2 -2
- package/src/packages/components/AutoTable/use/useTableOption.check.tsx +3 -3
- package/src/packages/components/AutoTable/use/useTableOption.column.popper.tsx +5 -5
- package/src/packages/components/AutoTable/use/useTableOption.confirm.tsx +2 -2
- package/src/packages/components/AutoTable/use/useTableOption.fill.tsx +8 -8
- package/src/packages/components/AutoTable/use/useTableOption.hooks.tsx +6 -4
- package/src/packages/components/AutoTable/use/useTableOption.loading.tsx +3 -3
- package/src/packages/components/AutoTable/use/useTableOption.methods.tsx +7 -4
- package/src/packages/components/AutoTable/use/useTableOption.pagination.tsx +3 -3
- package/src/packages/components/AutoTable/use/useTableOption.parent.tsx +5 -2
- package/src/packages/components/AutoTable/use/useTableOption.permission.tsx +1 -1
- package/src/packages/components/AutoTable/use/useTableOption.sort.ts +8 -7
- package/src/packages/components/AutoTable/use/useTableOption.state.tsx +1 -1
- package/src/packages/components/AutoTable/use/useTableOption.table.tsx +14 -5
- package/src/packages/components/AutoTable/use/useTableOption.tips.tsx +3 -3
- package/src/packages/components/AutoTable/use/useTableOptionKeyboard.tsx +13 -4
- package/src/packages/components/AutoTable/utils/AutoModule.ts +1 -1
- package/src/packages/components/AutoTable/utils/AutoTable.utils.ts +76 -1
- package/src/packages/components/AutoTable/utils/TableOption.space.tsx +10 -6
- package/src/packages/components/AutoTable/utils/TableOption.url.ts +1 -1
- package/src/packages/components/AutoTable/utils/TableOption.utils.tsx +3 -3
- package/src/packages/components/AutoTable/utils/buildPlainDefaultUrlConfig.ts +6 -6
- package/src/packages/components/AutoWidthInput/index.tsx +2 -2
- package/src/packages/components/Badge/badge.scss +4 -0
- package/src/packages/components/Badge/index.tsx +1 -1
- package/src/packages/components/Box/index.tsx +31 -30
- package/src/packages/components/Button/index.tsx +11 -4
- package/src/packages/components/ButtonGroup/index.tsx +2 -2
- package/src/packages/components/Card/index.tsx +2 -2
- package/src/packages/components/Carousel/index.tsx +8 -8
- package/src/packages/components/CarouselItem/index.tsx +3 -3
- package/src/packages/components/Cascade/CascadeKeys.tsx +158 -0
- package/src/packages/components/Cascade/cascade.utils.ts +1 -1
- package/src/packages/components/Cascade/createCascadeHooks.ts +1 -1
- package/src/packages/components/Cascade/createCascadePopper.tsx +5 -4
- package/src/packages/components/Cascade/createCascadeUtils.ts +2 -2
- package/src/packages/components/Cascade/createMultipleCascadeRender.tsx +5 -6
- package/src/packages/components/Cascade/createSingleCascadeRender.tsx +7 -7
- package/src/packages/components/Cascade/index.tsx +3 -3
- package/src/packages/components/CascadeKeys/index.tsx +5 -0
- package/src/packages/components/CascadePanel/cascade-panel.utils.ts +3 -3
- package/src/packages/components/CascadePanel/flat/CascadeFlatPanelNode.tsx +1 -1
- package/src/packages/components/CascadePanel/flat/createCascadeFlatRender.tsx +14 -9
- package/src/packages/components/CascadePanel/index.tsx +22 -4
- package/src/packages/components/CascadePanel/list/CascadeListPanelItem.tsx +1 -1
- package/src/packages/components/CascadePanel/list/CascadeListPanelNode.tsx +1 -1
- package/src/packages/components/CascadePanel/list/createCascadeListRender.tsx +6 -2
- package/src/packages/components/Checkbox/index.tsx +8 -10
- package/src/packages/components/CheckboxGroup/index.tsx +1 -1
- package/src/packages/components/CheckboxInner/index.tsx +1 -1
- package/src/packages/components/Collapse/index.tsx +2 -2
- package/src/packages/components/CollapseGroup/index.tsx +1 -1
- package/src/packages/components/CollapseTransition/index.tsx +5 -5
- package/src/packages/components/ColorPicker/ColorPanel.tsx +146 -125
- package/src/packages/components/ColorPicker/color-panel.scss +117 -97
- package/src/packages/components/ColorPicker/index.tsx +144 -131
- package/src/packages/components/ColorPicker/sub/ColorAlphaSlider.tsx +1 -1
- package/src/packages/components/ColorPicker/sub/ColorHueSlider.tsx +1 -1
- package/src/packages/components/ColorPicker/sub/ColorSlider.tsx +5 -5
- package/src/packages/components/ColorPicker/sub/ColorSvPanel.tsx +4 -4
- package/src/packages/components/ColorPicker/useColorPanelEditor.tsx +1 -1
- package/src/packages/components/ColorPicker/useColorPanelHistory.tsx +1 -1
- package/src/packages/components/ColorPicker/utils/color-picker.utils.tsx +1 -1
- package/src/packages/components/ConfirmPopup/index.tsx +1 -1
- package/src/packages/components/Corner/index.tsx +3 -3
- package/src/packages/components/DatePicker/createDateRender.multiple.tsx +7 -7
- package/src/packages/components/DatePicker/createDateRender.single.tsx +8 -7
- package/src/packages/components/DatePicker/createRangeDateRender.range.tsx +3 -3
- package/src/packages/components/DatePicker/createRangeDateRender.separate.tsx +3 -3
- package/src/packages/components/DatePicker/date.utils.tsx +2 -2
- package/src/packages/components/DatePicker/index.tsx +3 -1
- package/src/packages/components/DatePicker/panel/DatePanel.tsx +1 -1
- package/src/packages/components/DatePicker/panel/DatePanelDate.tsx +2 -2
- package/src/packages/components/DatePicker/panel/DatePanelMonth.tsx +1 -1
- package/src/packages/components/DatePicker/panel/DatePanelQuarter.tsx +1 -1
- package/src/packages/components/DatePicker/panel/DatePanelRange.tsx +1 -1
- package/src/packages/components/DatePicker/panel/DatePanelWeek.tsx +1 -1
- package/src/packages/components/DatePicker/panel/DatePanelYear.tsx +1 -1
- package/src/packages/components/DatePicker/panel/useDatePanel.tsx +2 -2
- package/src/packages/components/DatePicker/panel/useDateWeek.tsx +2 -2
- package/src/packages/components/DatePicker/useRangeDateRender.tsx +8 -8
- package/src/packages/components/Dialog/dialog.scss +2 -2
- package/src/packages/components/Dialog/index.tsx +11 -7
- package/src/packages/components/Dialog/useDialogMovable.tsx +1 -1
- package/src/packages/components/Dialog/utils/dialog.utils.ts +1 -1
- package/src/packages/components/Dropdown/dropdown.utils.tsx +2 -3
- package/src/packages/components/Dropdown/index.tsx +18 -5
- package/src/packages/components/DropdownGroup/index.tsx +1 -1
- package/src/packages/components/DropdownOption/index.tsx +2 -2
- package/src/packages/components/DropdownSeparator/index.tsx +1 -1
- package/src/packages/components/Empty/index.tsx +1 -1
- package/src/packages/components/FilterFormMultiple/index.tsx +12 -7
- package/src/packages/components/FilterFormSingle/index.tsx +178 -173
- package/src/packages/components/FilterService/filter/filter.city.tsx +4 -3
- package/src/packages/components/FilterService/filter/filter.district.tsx +4 -3
- package/src/packages/components/FilterService/filter/filter.number.tsx +2 -2
- package/src/packages/components/FilterService/filter/filter.province.tsx +1 -1
- package/src/packages/components/FilterService/filter/filter.select.tsx +3 -2
- package/src/packages/components/FilterService/filter/fitler.object.tsx +1 -1
- package/src/packages/components/FilterService/index.tsx +2 -2
- package/src/packages/components/FilterService/utils/filter.service.utils.ts +2 -2
- package/src/packages/components/FilterService/utils/mergeQueryParam.ts +3 -3
- package/src/packages/components/Form/form.scss +4 -0
- package/src/packages/components/Form/index.tsx +1 -1
- package/src/packages/components/Form/layout/useFormLayout.tsx +6 -5
- package/src/packages/components/Form/types/any.tsx +1 -1
- package/src/packages/components/Form/types/array.tsx +1 -1
- package/src/packages/components/Form/types/date.tsx +1 -1
- package/src/packages/components/Form/types/number.tsx +1 -1
- package/src/packages/components/Form/types/string.tsx +1 -1
- package/src/packages/components/Form/validate/createValidation.tsx +2 -2
- package/src/packages/components/Form/validate/useFormItemValidation.tsx +32 -31
- package/src/packages/components/Form/validate/useFormValidation.tsx +2 -2
- package/src/packages/components/Form/validate/validate.utils.tsx +4 -4
- package/src/packages/components/FormItem/FormItemValidateMessage.tsx +1 -1
- package/src/packages/components/FormItem/createFormEditor.tsx +2 -2
- package/src/packages/components/FormItem/index.tsx +8 -1
- package/src/packages/components/Grid/GridCol.tsx +1 -1
- package/src/packages/components/Grid/GridRow.tsx +3 -3
- package/src/packages/components/Icon/icon.external.tsx +117 -0
- package/src/packages/components/Icon/icon.registry.tsx +2 -2
- package/src/packages/components/Icon/index.tsx +13 -7
- package/src/packages/components/IconPicker/DefaultIcons.ts +7 -0
- package/src/packages/components/IconPicker/icon-picker.scss +43 -0
- package/src/packages/components/IconPicker/index.tsx +189 -0
- package/src/packages/components/Illustration/index.tsx +1 -1
- package/src/packages/components/Image/image.scss +11 -2
- package/src/packages/components/Image/index.tsx +27 -18
- package/src/packages/components/ImagePreviewer/ImagePreviewer.tsx +6 -6
- package/src/packages/components/ImagePreviewer/ImagePreviewerButtonBar.tsx +1 -1
- package/src/packages/components/ImagePreviewer/ImagePreviewerCarouselImage.tsx +2 -2
- package/src/packages/components/ImagePreviewer/ImagePreviewerGallery.tsx +3 -3
- package/src/packages/components/ImagePreviewer/PreviewerLoading.tsx +1 -1
- package/src/packages/components/ImagePreviewer/image-previewer.utils.tsx +4 -4
- package/src/packages/components/ImageSelector/image-selector.scss +70 -0
- package/src/packages/components/ImageSelector/index.tsx +59 -0
- package/src/packages/components/ImageUploader/index.tsx +41 -23
- package/src/packages/components/Input/index.scss +14 -2
- package/src/packages/components/Input/index.tsx +3 -3
- package/src/packages/components/Input/input.utils.ts +1 -1
- package/src/packages/components/Input/useMultipleInput.tsx +11 -10
- package/src/packages/components/Input/useSingleInput.tsx +2 -2
- package/src/packages/components/Input/useSuggestionInput.tsx +9 -9
- package/src/packages/components/Input/useTextareaInput.tsx +6 -6
- package/src/packages/components/Input/uses/useInputEnterHandler.tsx +24 -13
- package/src/packages/components/Input/uses/useInputHooks.tsx +1 -1
- package/src/packages/components/Input/uses/useInputMaxLength.tsx +1 -1
- package/src/packages/components/Input/uses/useInputSuffixIcon.tsx +2 -2
- package/src/packages/components/InputGroup/index.tsx +1 -1
- package/src/packages/components/InputGroup/input-group.scss +9 -0
- package/src/packages/components/InputNumber/NumberResize.tsx +4 -4
- package/src/packages/components/InputNumber/index.tsx +1 -1
- package/src/packages/components/InputNumber/input-number.utils.tsx +1 -1
- package/src/packages/components/InputNumber/number.scss +3 -0
- package/src/packages/components/InputNumber/number.utils.ts +1 -1
- package/src/packages/components/InputNumber/useInputNumber.multiple.tsx +2 -2
- package/src/packages/components/InputNumber/useInputNumber.public.tsx +12 -11
- package/src/packages/components/InputNumber/useInputNumber.single.tsx +2 -2
- package/src/packages/components/Layout/index.tsx +9 -2
- package/src/packages/components/Layout/layout.scss +20 -0
- package/src/packages/components/Layout/layout.utils.ts +1 -1
- package/src/packages/components/LayoutSection/index.tsx +12 -3
- package/src/packages/components/LayoutSection/useLayoutSectionResizer.tsx +2 -2
- package/src/packages/components/List/index.tsx +1 -1
- package/src/packages/components/ListOption/index.tsx +20 -0
- package/src/packages/components/ListPanel/index.tsx +30 -0
- package/src/packages/components/ListPanel/list-panel.scss +20 -0
- package/src/packages/components/Loading/index.tsx +2 -2
- package/src/packages/components/LoadingMask/index.tsx +2 -2
- package/src/packages/components/NumberRange/index.tsx +94 -93
- package/src/packages/components/Object/createObjectHooks.tsx +1 -1
- package/src/packages/components/Object/createObjectRender.multiple.tsx +10 -10
- package/src/packages/components/Object/createObjectRender.single.tsx +18 -14
- package/src/packages/components/Object/index.tsx +3 -3
- package/src/packages/components/Object/object.scss +6 -0
- package/src/packages/components/Object/object.utils.ts +5 -3
- package/src/packages/components/Ov/index.tsx +1 -1
- package/src/packages/components/Ov/ov.utils.ts +1 -1
- package/src/packages/components/Ov/usePublicOv.tsx +1 -1
- package/src/packages/components/PageCard/index.tsx +4 -1
- package/src/packages/components/PageCardContent/index.tsx +4 -1
- package/src/packages/components/PageCardTitle/index.tsx +1 -1
- package/src/packages/components/PageRenderList/index.tsx +1 -1
- package/src/packages/components/PageThemeUtils/index.tsx +3 -3
- package/src/packages/components/Pagination/index.tsx +3 -3
- package/src/packages/components/Paragraph/index.tsx +1 -1
- package/src/packages/components/ParagraphItem/index.tsx +1 -1
- package/src/packages/components/PlcImage/index.tsx +14 -8
- package/src/packages/components/PlcObject/index.tsx +2 -2
- package/src/packages/components/PlcOv/index.tsx +1 -1
- package/src/packages/components/Popup/PopupProvider.tsx +1 -2
- package/src/packages/components/Popup/index.tsx +2 -2
- package/src/packages/components/ProgressBar/index.tsx +1 -1
- package/src/packages/components/ProgressBar/progress.utils.ts +2 -2
- package/src/packages/components/ProgressCircle/index.tsx +2 -2
- package/src/packages/components/ProgressMini/index.tsx +2 -2
- package/src/packages/components/Radio/index.tsx +4 -4
- package/src/packages/components/RadioGroup/index.tsx +1 -1
- package/src/packages/components/RadioInner/index.tsx +1 -1
- package/src/packages/components/Rate/index.tsx +3 -3
- package/src/packages/components/Reference/ReferenceProvider.tsx +1 -1
- package/src/packages/components/Reference/index.tsx +1 -1
- package/src/packages/components/RollingNumber/index.tsx +2 -2
- package/src/packages/components/Scroll/HorizontalScrollbar.tsx +4 -4
- package/src/packages/components/Scroll/VerticalScrollbar.tsx +4 -4
- package/src/packages/components/Scroll/index.tsx +6 -5
- package/src/packages/components/Scroll/useAutoScroll.ts +1 -1
- package/src/packages/components/Segment/index.tsx +1 -1
- package/src/packages/components/SegmentGroup/index.tsx +1 -1
- package/src/packages/components/Select/SelectPanel.tsx +1 -1
- package/src/packages/components/Select/createMultipleSelectRender.tsx +12 -8
- package/src/packages/components/Select/createPublicSelectRender.tsx +18 -12
- package/src/packages/components/Select/createSelectOptionDecoder.tsx +1 -1
- package/src/packages/components/Select/createSingleSelectRender.tsx +13 -9
- package/src/packages/components/Select/decodeSelectRenderNode.tsx +6 -4
- package/src/packages/components/Select/index.tsx +13 -1
- package/src/packages/components/Select/select.utils.tsx +5 -4
- package/src/packages/components/SelectDisplay/index.tsx +3 -3
- package/src/packages/components/SelectGroup/index.tsx +1 -1
- package/src/packages/components/SelectOption/index.tsx +2 -2
- package/src/packages/components/Skeleton/index.tsx +44 -0
- package/src/packages/components/Skeleton/skeleton.scss +27 -0
- package/src/packages/components/Slider/index.tsx +3 -3
- package/src/packages/components/Slider/slider.utils.tsx +1 -1
- package/src/packages/components/Slider/useSlider.range.tsx +13 -10
- package/src/packages/components/Slider/useSlider.single.tsx +8 -9
- package/src/packages/components/Slider/useSliderDotDragier.tsx +4 -4
- package/src/packages/components/SortList/index.tsx +4 -4
- package/src/packages/components/Space/index.tsx +1 -1
- package/src/packages/components/StackCard/index.tsx +4 -4
- package/src/packages/components/StackCardItem/index.tsx +1 -1
- package/src/packages/components/Step/index.tsx +1 -1
- package/src/packages/components/StepGroup/index.tsx +1 -1
- package/src/packages/components/Tab/index.tsx +1 -1
- package/src/packages/components/TabGroup/TabsHeader.tsx +1 -1
- package/src/packages/components/TabGroup/TabsInner.tsx +1 -1
- package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontal.tsx +3 -3
- package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalCard.tsx +1 -1
- package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalShadow.tsx +1 -1
- package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalText.tsx +2 -2
- package/src/packages/components/TabGroup/header/vertical/TabsHeaderVertical.tsx +1 -1
- package/src/packages/components/TabGroup/index.tsx +1 -1
- package/src/packages/components/TabGroup/tabs.scss +23 -0
- package/src/packages/components/TabGroup/tabs.utils.tsx +1 -1
- package/src/packages/components/Table/editor/PlcAddress.tsx +1 -1
- package/src/packages/components/Table/editor/PlcAddressItem.tsx +1 -1
- package/src/packages/components/Table/editor/PlcCheckbox.tsx +1 -1
- package/src/packages/components/Table/editor/PlcColorPicker.tsx +1 -1
- package/src/packages/components/Table/editor/PlcDate.tsx +1 -1
- package/src/packages/components/Table/editor/PlcDate.utils.tsx +2 -2
- package/src/packages/components/Table/editor/PlcDateRange.tsx +1 -1
- package/src/packages/components/Table/editor/PlcInput.tsx +1 -1
- package/src/packages/components/Table/editor/PlcNumber.tsx +1 -1
- package/src/packages/components/Table/editor/PlcRate.tsx +1 -1
- package/src/packages/components/Table/editor/PlcSelect.tsx +2 -1
- package/src/packages/components/Table/editor/PlcTextarea.tsx +1 -1
- package/src/packages/components/Table/editor/PlcTime.tsx +1 -1
- package/src/packages/components/Table/editor/PlcTime.utils.ts +2 -2
- package/src/packages/components/Table/editor/PlcTimeRange.tsx +1 -1
- package/src/packages/components/Table/editor/PlcToggle.tsx +1 -1
- package/src/packages/components/Table/plc/group/PlcGroup.tsx +1 -1
- package/src/packages/components/Table/plc/plc/Plc.tsx +1 -1
- package/src/packages/components/Table/plc/process/copyPlcList.ts +1 -1
- package/src/packages/components/Table/plc/process/processPlcFixed.ts +1 -1
- package/src/packages/components/Table/plc/process/processPlcSort.ts +1 -1
- package/src/packages/components/Table/plc/use/useBasePlc.tsx +3 -3
- package/src/packages/components/Table/plc/use/useBasePlcGroup.tsx +1 -1
- package/src/packages/components/Table/plc/use/usePlc.tsx +1 -1
- package/src/packages/components/Table/plc/use/usePlcPropsState.tsx +2 -2
- package/src/packages/components/Table/plc/use/useTableAutoSpan.tsx +112 -0
- package/src/packages/components/Table/plc/useTablePlc.tsx +7 -4
- package/src/packages/components/Table/plc/utils/plc.render.ts +1 -1
- package/src/packages/components/Table/plc/utils/plc.scope-slots.ts +1 -1
- package/src/packages/components/Table/plc/utils/plc.utils.ts +9 -6
- package/src/packages/components/Table/standard/PlcCheck/PlcCheck.hooks.tsx +3 -3
- package/src/packages/components/Table/standard/PlcCheck/PlcCheck.multiple.tsx +7 -8
- package/src/packages/components/Table/standard/PlcCheck/PlcCheck.single.tsx +4 -5
- package/src/packages/components/Table/standard/PlcCheck/PlcCheck.tsx +2 -2
- package/src/packages/components/Table/standard/PlcCheck/PlcCheck.utils.ts +3 -3
- package/src/packages/components/Table/standard/PlcDraggier/PlcDraggier.tsx +2 -2
- package/src/packages/components/Table/standard/PlcExclusion.tsx +2 -2
- package/src/packages/components/Table/standard/PlcExpand.tsx +2 -2
- package/src/packages/components/Table/standard/PlcIndex.tsx +1 -1
- package/src/packages/components/Table/standard/PlcOperation/OuterOperation.tsx +3 -2
- package/src/packages/components/Table/standard/PlcOperation/PlcOperation.tsx +12 -6
- package/src/packages/components/Table/standard/PlcOperation/PlcOperation.utils.tsx +4 -4
- package/src/packages/components/Table/standard/PlcOperation/useOperationPermission.ts +1 -1
- package/src/packages/components/Table/standard/PlcTree/PlcTree.autoWidth.tsx +1 -1
- package/src/packages/components/Table/standard/PlcTree/PlcTree.renderNode.tsx +2 -2
- package/src/packages/components/Table/standard/PlcTree/PlcTree.tsx +4 -4
- package/src/packages/components/Table/standard/PlcTree/PlcTree.utils.ts +2 -2
- package/src/packages/components/Table/standard/PlcTree/PlcTreeHeader.tsx +3 -3
- package/src/packages/components/Table/standard/PlcTree/RenderPlcTreeNode.tsx +6 -5
- package/src/packages/components/Table/table/Table.tsx +14 -10
- package/src/packages/components/Table/table/body/cell.tsx +36 -5
- package/src/packages/components/Table/table/body/row.tsx +1 -1
- package/src/packages/components/Table/table/body/useCellValue.tsx +15 -6
- package/src/packages/components/Table/table/head/head-cell.tsx +8 -2
- package/src/packages/components/Table/table/head/useHeadCellResize.ts +4 -4
- package/src/packages/components/Table/table/node/useTableNode.tsx +2 -2
- package/src/packages/components/Table/table/table.scss +4 -0
- package/src/packages/components/Table/table/use/useFixedShadow.ts +2 -2
- package/src/packages/components/Table/table/use/useTableDraggier.col.tsx +6 -6
- package/src/packages/components/Table/table/use/useTableDraggier.row.tsx +7 -7
- package/src/packages/components/Table/table/use/useTableDraggier.tsx +3 -3
- package/src/packages/components/Table/table/use/useTableFormEditor.tsx +47 -39
- package/src/packages/components/Table/table/use/useTableLoading.tsx +2 -2
- package/src/packages/components/Table/table/use/useTableMethods.tsx +2 -2
- package/src/packages/components/Table/table/use/useTableModifyEditor.tsx +12 -6
- package/src/packages/components/Table/table/use/useTableScroll.tsx +1 -1
- package/src/packages/components/Table/table/utils/createTableHooks.ts +7 -5
- package/src/packages/components/Table/table/utils/table.utils.ts +7 -5
- package/src/packages/components/Tag/index.tsx +8 -3
- package/src/packages/components/Tag/tag.scss +10 -1
- package/src/packages/components/ThemeColor/index.tsx +1 -1
- package/src/packages/components/ThemeColorSelector/index.tsx +1 -1
- package/src/packages/components/ThemeDarkSelector/index.tsx +1 -2
- package/src/packages/components/ThemeEditor/index.tsx +3 -3
- package/src/packages/components/ThemeLocaleSelector/index.tsx +1 -2
- package/src/packages/components/ThemeShapeSelector/index.tsx +1 -2
- package/src/packages/components/ThemeSizeSelector/index.tsx +1 -2
- package/src/packages/components/TimePicker/createRangeTimeRender.tsx +3 -3
- package/src/packages/components/TimePicker/createSeparateRangeTimeRender.tsx +3 -3
- package/src/packages/components/TimePicker/createSingleTimeRender.tsx +7 -8
- package/src/packages/components/TimePicker/index.tsx +1 -1
- package/src/packages/components/TimePicker/panel/TimeBaseColumn.tsx +4 -4
- package/src/packages/components/TimePicker/panel/TimeBasePanel.tsx +1 -1
- package/src/packages/components/TimePicker/panel/TimePanel.tsx +2 -2
- package/src/packages/components/TimePicker/panel/TimeRangePanel.tsx +1 -1
- package/src/packages/components/TimePicker/panel/time-panel.utils.ts +1 -1
- package/src/packages/components/TimePicker/time.utils.ts +1 -1
- package/src/packages/components/TimePicker/useRangeTimeRender.tsx +9 -9
- package/src/packages/components/TimePicker/useTimeHooks.ts +1 -1
- package/src/packages/components/Toggle/index.tsx +4 -4
- package/src/packages/components/Tooltip/index.tsx +2 -2
- package/src/packages/components/Transition/index.tsx +2 -2
- package/src/packages/components/Tree/RenderTreeNode.tsx +4 -3
- package/src/packages/components/Tree/index.tsx +2 -2
- package/src/packages/components/TreeCore/TreeCore.type.tsx +3 -1
- package/src/packages/components/TreeCore/createTreeCore.tsx +3 -3
- package/src/packages/components/TreeCore/createTreeDraggier.tsx +9 -9
- package/src/packages/components/TreeCore/createTreeHooks.ts +1 -1
- package/src/packages/components/TreeCore/createTreeMethods.tsx +2 -2
- package/src/packages/components/TreeCore/createTreeNode.tsx +11 -6
- package/src/packages/components/TreeCore/createTreeProps.ts +4 -3
- package/src/packages/components/TreeCore/createTreeUtils.ts +2 -2
- package/src/packages/components/TreeNodeWithMenu/index.tsx +5 -1
- package/src/packages/components/TreeNodeWithMenu/treeNodeWithMenu.utils.ts +1 -1
- package/src/packages/components/Triangle/index.tsx +2 -2
- package/src/packages/components/Upload/index.tsx +6 -6
- package/src/packages/components/VirtualList/createVirtualDraggier.ts +7 -7
- package/src/packages/components/VirtualList/index.tsx +1 -1
- package/src/packages/components/VirtualList/useVirtualList.tsx +11 -11
- package/src/packages/components/VirtualTable/index.tsx +10 -4
- package/src/packages/components/VirtualTable/virtual-table.scss +3 -3
- package/src/packages/components/createPlainAddressService/index.tsx +2 -2
- package/src/packages/components/createRequestInterceptor/index.ts +2 -2
- package/src/packages/components/createScrollDraggier/index.ts +5 -5
- package/src/packages/components/createScrollUtils/index.tsx +1 -1
- package/src/packages/components/createSimpleDate/index.ts +49 -0
- package/src/packages/components/createTransitionHandler/index.ts +1 -1
- package/src/packages/components/useAutoScrollUtils/index.tsx +4 -4
- package/src/packages/components/useContextmenuOptions/index.tsx +40 -0
- package/src/packages/components/useDialog/DialogService.tsx +10 -10
- package/src/packages/components/useDialog/dialog.service.utils.tsx +5 -5
- package/src/packages/components/useDialog/index.tsx +4 -4
- package/src/packages/components/useImage/ImageService.tsx +5 -5
- package/src/packages/components/useLoading/LoadingService.tsx +3 -3
- package/src/packages/components/useLoading/index.tsx +1 -1
- package/src/packages/components/useLoading/loading.service.utils.tsx +2 -2
- package/src/packages/components/useMessage/Message.tsx +1 -1
- package/src/packages/components/useMessage/MessageContainer.tsx +1 -1
- package/src/packages/components/useMessage/MessageManager.tsx +1 -1
- package/src/packages/components/useMessage/index.tsx +1 -1
- package/src/packages/components/useMessage/message.service.utils.tsx +4 -4
- package/src/packages/components/useNotice/Notice.tsx +1 -1
- package/src/packages/components/useNotice/NoticeContainer.tsx +1 -1
- package/src/packages/components/useNotice/NoticeManager.tsx +1 -1
- package/src/packages/components/useNotice/index.tsx +1 -1
- package/src/packages/components/useNotice/noitice.service.utils.tsx +4 -4
- package/src/packages/components/usePageRenderContext/index.tsx +1 -1
- package/src/packages/components/usePopup/PopupItem.tsx +17 -10
- package/src/packages/components/usePopup/refresh/refreshArrow.ts +1 -1
- package/src/packages/components/usePopup/trigger/useManagerTrigger.clickOutside.tsx +19 -24
- package/src/packages/components/usePopup/trigger/usePopupTrigger.tsx +2 -2
- package/src/packages/components/usePopup/trigger/useReferenceTrigger.tsx +52 -46
- package/src/packages/components/usePopup/usePopup.tsx +2 -2
- package/src/packages/components/usePopup/usePopupManager.tsx +14 -3
- package/src/packages/components/usePopup/utils/createPopupManagerHooks.tsx +1 -1
- package/src/packages/components/usePopup/utils/ids2map.ts +1 -1
- package/src/packages/components/usePopup/utils/popup.utils.ts +3 -4
- package/src/packages/components/usePopupEditor/index.tsx +6 -9
- package/src/packages/components/usePopupEditor/popup-editor.utils.ts +1 -1
- package/src/packages/components/useTableFilter/index.ts +73 -0
- package/src/packages/components/useTooltip/index.tsx +6 -7
- package/src/packages/directives/ClickWave/index.tsx +2 -2
- package/src/packages/directives/ResizeDetector/index.tsx +2 -2
- package/src/packages/entry.tsx +326 -287
- package/src/packages/i18n/i18n.utils.ts +5 -5
- package/src/packages/i18n/lang/en-us.ts +37 -14
- package/src/packages/i18n/lang/zh-cn.ts +24 -1
- package/src/packages/styles/application/application.public.scss +7 -0
- package/src/packages/styles/global.import.scss +60 -15
- package/src/packages/uses/createInputPopperAttrs.ts +10 -3
- package/src/packages/uses/useCollapseStyles.tsx +2 -2
- package/src/packages/uses/useDragHorizontalScroll.ts +4 -5
- package/src/packages/uses/useEdit.ts +42 -15
- package/src/packages/uses/useFocusHandler.ts +26 -13
- package/src/packages/uses/useFunctionWrapper.ts +3 -1
- package/src/packages/uses/useMultipleModel.tsx +6 -4
- package/src/packages/uses/useRenderReference.tsx +1 -1
- package/src/packages/uses/useStyle.tsx +4 -4
- package/src/packages/utils/ClientZoom.ts +1 -1
- package/src/packages/utils/FixInput.ts +1 -1
- package/src/packages/utils/InnerTransition.ts +2 -2
- package/src/packages/utils/LoadingText.ts +1 -1
- package/src/packages/utils/OpenController.ts +1 -1
- package/src/packages/utils/constant.tsx +1 -1
- package/src/packages/utils/createDraggier.ts +7 -7
- package/src/packages/utils/createFlagManager.ts +1 -1
- package/src/packages/utils/findReactElement.tsx +1 -1
- package/src/packages/utils/getDeviceInfo.ts +1 -1
- package/src/packages/utils/getRowEl.ts +2 -2
- package/src/packages/utils/incrementalMerge.ts +1 -1
- package/src/packages/utils/inheritSlots.ts +3 -1
- package/src/packages/utils/installAllIcons.ts +20 -19
- package/src/packages/utils/installAllLazyIcons.ts +1 -1
- package/src/packages/utils/isObjectCommonMatch.ts +1 -1
- package/src/packages/utils/onParentElementsScroll.tsx +2 -2
- package/src/packages/utils/plainDate.ts +1 -1
- package/src/packages/utils/useMove.tsx +3 -3
- package/src/packages/utils/watchEffectAutoClear.ts +2 -2
- package/src/packages/components/KeyboardService/index.ts +0 -214
- package/src/packages/components/ThemeDarkSelector/theme-dark-selector.scss +0 -5
- package/src/packages/components/ThemeLocaleSelector/theme-locale-selector.scss +0 -5
- package/src/packages/components/ThemeShapeSelector/theme-shape-selector.scss +0 -5
- package/src/packages/components/ThemeSizeSelector/theme-size-selector.scss +0 -5
- package/src/packages/components/createProvider/index.ts +0 -5
- package/src/packages/utils/createProvider.tsx +0 -35
@@ -1,17 +1,17 @@
|
|
1
|
-
import {designComponent, getComponentCls, iHTMLDivElement, iHTMLElement, iMouseEvent, iTransitionEvent, nextIndex, onBeforeUnmount, onMounted, Portal, PropType, reactive, SimpleFunction, useClassCache, useRefs, useStyleCache} from "
|
1
|
+
import {designComponent, getComponentCls, iHTMLDivElement, iHTMLElement, iMouseEvent, iTransitionEvent, nextIndex, onBeforeUnmount, onMounted, Portal, PropType, reactive, SimpleFunction, useClassCache, useRefs, useStyleCache} from "@peryl/react-compose";
|
2
2
|
import {ePopupAnimation, iPopupOption, iPopupRefs, PopupItemProvide} from "./utils/popup.utils";
|
3
|
-
import {createEffects} from "
|
4
|
-
import {delay} from "
|
3
|
+
import {createEffects} from "@peryl/utils/createEffects";
|
4
|
+
import {delay} from "@peryl/utils/delay";
|
5
5
|
import './popup-item.scss';
|
6
6
|
import {PopupManager} from "./usePopupManager";
|
7
7
|
import {refreshPopup} from "./refresh/refreshPopup";
|
8
8
|
import {getBoundary} from "./utils/getBoundary";
|
9
9
|
import {useWatchAutoClear} from "../../utils/watchEffectAutoClear";
|
10
|
-
import {getElementParents} from "
|
10
|
+
import {getElementParents} from "@peryl/utils/getElementParents";
|
11
11
|
import {usePopupTrigger} from "./trigger/usePopupTrigger";
|
12
12
|
import {APPLICATION_SERVICE_CONTAINER_CLASS} from "../Application/utils/application.utils";
|
13
|
-
import {doNothing} from "
|
14
|
-
import {unit} from "
|
13
|
+
import {doNothing} from "@peryl/utils/doNothing";
|
14
|
+
import {unit} from "@peryl/utils/unit";
|
15
15
|
import ApplicationConfigurationProvider from "../ApplicationConfigurationProvider";
|
16
16
|
|
17
17
|
export const PopupItem = designComponent({
|
@@ -39,7 +39,12 @@ export const PopupItem = designComponent({
|
|
39
39
|
|
40
40
|
const manager = PopupManager.inject()!;
|
41
41
|
|
42
|
-
const state
|
42
|
+
const state: {
|
43
|
+
option: iPopupOption,
|
44
|
+
isShow: boolean,
|
45
|
+
isAnimationReady: boolean,
|
46
|
+
zIndex: number,
|
47
|
+
} = reactive({
|
43
48
|
/**
|
44
49
|
* 当前popup item对应的option对象,不可以通过props.option来更新,必须调用manager.methods.update手动更新
|
45
50
|
* @author 韦胜健
|
@@ -168,6 +173,7 @@ export const PopupItem = designComponent({
|
|
168
173
|
};
|
169
174
|
|
170
175
|
return (transformLocation?: boolean) => {
|
176
|
+
if (!state.option) {return;}
|
171
177
|
if (state.option.animation !== ePopupAnimation.slide) {
|
172
178
|
doRefresh(transformLocation);
|
173
179
|
} else {
|
@@ -322,9 +328,9 @@ export const PopupItem = designComponent({
|
|
322
328
|
* @author 韦胜健
|
323
329
|
* @date 2023/5/16 17:14
|
324
330
|
*/
|
325
|
-
useWatchAutoClear(() => state.option.reference, () => {
|
326
|
-
const effects: SimpleFunction[] = [];
|
331
|
+
useWatchAutoClear(() => state.option.reference, (): (() => void) => {
|
327
332
|
if (!state.option.reference) {return doNothing;}
|
333
|
+
const { effects } = createEffects();
|
328
334
|
const parents = getElementParents(state.option.reference).concat(window as any);
|
329
335
|
const onScroll = () => {
|
330
336
|
if (state.option.hideOnScroll) {
|
@@ -341,7 +347,7 @@ export const PopupItem = designComponent({
|
|
341
347
|
parent.addEventListener('scroll', onScroll);
|
342
348
|
effects.push(() => {parent.removeEventListener('scroll', onScroll);});
|
343
349
|
});
|
344
|
-
return
|
350
|
+
return effects.clear;
|
345
351
|
});
|
346
352
|
|
347
353
|
/**
|
@@ -365,6 +371,7 @@ export const PopupItem = designComponent({
|
|
365
371
|
if (manager.methods.isOpen(state.option)) {
|
366
372
|
manager.hooks.onPopupItemClose.exec(state.option);
|
367
373
|
}
|
374
|
+
delay().then(() => {state.option = null as any;});
|
368
375
|
});
|
369
376
|
|
370
377
|
PopupItemProvide.provide(state);
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import {iPopupManager} from "../utils/popup.utils";
|
2
|
-
import {onBeforeUnmount, onMounted} from "
|
3
|
-
import {throttle} from "plain-utils/utils/throttle";
|
2
|
+
import {onBeforeUnmount, onMounted} from "@peryl/react-compose";
|
4
3
|
|
5
4
|
/**
|
6
5
|
* 处理点击页面任何元素的时候检查是否触发了某个popup的click outside动作
|
@@ -13,28 +12,24 @@ export function useManagerTriggerClickOutside({ hooks }: iPopupManager) {
|
|
13
12
|
* @author 韦胜健
|
14
13
|
* @date 2023/5/16 16:23
|
15
14
|
*/
|
16
|
-
const onClick =
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
},
|
35
|
-
100,
|
36
|
-
{ trailing: false }
|
37
|
-
);
|
15
|
+
const onClick = (e: MouseEvent) => {
|
16
|
+
const el = e.target as HTMLElement;
|
17
|
+
const list = hooks.onGetPopupElements.exec([]);
|
18
|
+
list.forEach(i => {
|
19
|
+
const { option, popupEl } = i();
|
20
|
+
const { reference } = option;
|
21
|
+
if (!popupEl) {return;}
|
22
|
+
if (reference.contains(el)) {
|
23
|
+
/*点击了reference*/
|
24
|
+
return;
|
25
|
+
}
|
26
|
+
if (popupEl.contains(el)) {
|
27
|
+
/*点击了popup*/
|
28
|
+
return;
|
29
|
+
}
|
30
|
+
hooks.onTriggerOutsideClick.exec({ e, option });
|
31
|
+
});
|
32
|
+
}
|
38
33
|
onMounted(() => {
|
39
34
|
window.addEventListener('mouseup', onClick, true);
|
40
35
|
});
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import {ePopupTrigger, iPopupManager, iPopupOption} from "../utils/popup.utils";
|
2
|
-
import {createEffects} from "
|
3
|
-
import {onBeforeUnmount, watchEffect} from "
|
2
|
+
import {createEffects} from "@peryl/utils/createEffects";
|
3
|
+
import {onBeforeUnmount, watchEffect} from "@peryl/react-compose";
|
4
4
|
|
5
5
|
/**
|
6
6
|
* 初始化监听popper根节点事件
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import {ePopupTrigger, iPopupManager, iPopupUseOption} from "../utils/popup.utils";
|
2
|
-
import {createEffects} from "
|
3
|
-
import {onBeforeUnmount, SimpleFunction
|
2
|
+
import {createEffects} from "@peryl/utils/createEffects";
|
3
|
+
import {globalWatchEffect, onBeforeUnmount, SimpleFunction} from "@peryl/react-compose";
|
4
4
|
import {isStopPopup} from "../utils/stopPopup";
|
5
5
|
|
6
6
|
/**
|
@@ -28,57 +28,63 @@ export function createReferenceTrigger(
|
|
28
28
|
}
|
29
29
|
) {
|
30
30
|
const { effects } = createEffects();
|
31
|
+
const { effects: setupEffects } = createEffects();
|
31
32
|
|
32
33
|
let prev: ReturnType<typeof get> | null = null;
|
33
34
|
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
}
|
39
|
-
effects.clear();
|
40
|
-
prev = { reference, trigger };
|
41
|
-
|
42
|
-
if (!reference) {return;}
|
43
|
-
|
44
|
-
const onClick = (e: MouseEvent) => {
|
45
|
-
if (isStopPopup(e)) {
|
35
|
+
setupEffects.push(
|
36
|
+
globalWatchEffect(() => {
|
37
|
+
const { reference, trigger } = get();
|
38
|
+
if (!!prev && prev.trigger === trigger && prev.reference === reference) {
|
46
39
|
return;
|
47
40
|
}
|
48
|
-
|
49
|
-
|
50
|
-
const onContextmenu = (e: MouseEvent) => {
|
51
|
-
e.preventDefault();
|
52
|
-
manager.hooks.onTriggerReferenceContextmenu.exec({ e, option: getOption() });
|
53
|
-
};
|
54
|
-
const onMouseenter = (e: MouseEvent) => {manager.hooks.onTriggerReferenceEnter.exec({ e, option: getOption() });};
|
55
|
-
const onMouseleave = (e: MouseEvent) => {manager.hooks.onTriggerReferenceLeave.exec({ e, option: getOption() });};
|
56
|
-
const onMousedown = (e: MouseEvent) => {manager.hooks.onTriggerReferenceMousedown.exec({ e, option: getOption() });};
|
57
|
-
const onMousemove = (e: MouseEvent) => {manager.hooks.onTriggerReferenceMousemove.exec({ e, option: getOption() });};
|
58
|
-
const onFocus = (e: FocusEvent) => {manager.hooks.onTriggerReferenceFocus.exec({ e, option: getOption() });};
|
59
|
-
const onBlur = (e: FocusEvent) => {manager.hooks.onTriggerReferenceBlur.exec({ e, option: getOption() });};
|
41
|
+
effects.clear();
|
42
|
+
prev = { reference, trigger };
|
60
43
|
|
44
|
+
if (!reference) {return;}
|
61
45
|
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
46
|
+
const onClick = (e: MouseEvent) => {
|
47
|
+
if (isStopPopup(e)) {
|
48
|
+
return;
|
49
|
+
}
|
50
|
+
manager.hooks.onTriggerReferenceClick.exec({ e, option: getOption() });
|
51
|
+
};
|
52
|
+
const onContextmenu = (e: MouseEvent) => {
|
53
|
+
e.preventDefault();
|
54
|
+
manager.hooks.onTriggerReferenceContextmenu.exec({ e, option: getOption() });
|
55
|
+
};
|
56
|
+
const onMouseenter = (e: MouseEvent) => {manager.hooks.onTriggerReferenceEnter.exec({ e, option: getOption() });};
|
57
|
+
const onMouseleave = (e: MouseEvent) => {manager.hooks.onTriggerReferenceLeave.exec({ e, option: getOption() });};
|
58
|
+
const onMousedown = (e: MouseEvent) => {manager.hooks.onTriggerReferenceMousedown.exec({ e, option: getOption() });};
|
59
|
+
const onMousemove = (e: MouseEvent) => {manager.hooks.onTriggerReferenceMousemove.exec({ e, option: getOption() });};
|
60
|
+
const onFocus = (e: FocusEvent) => {manager.hooks.onTriggerReferenceFocus.exec({ e, option: getOption() });};
|
61
|
+
const onBlur = (e: FocusEvent) => {manager.hooks.onTriggerReferenceBlur.exec({ e, option: getOption() });};
|
70
62
|
|
71
|
-
effects.push(() => {
|
72
|
-
reference.removeEventListener('click', onClick);
|
73
|
-
reference.removeEventListener('contextmenu', onContextmenu);
|
74
|
-
reference.removeEventListener('mouseenter', onMouseenter);
|
75
|
-
reference.removeEventListener('mouseleave', onMouseleave);
|
76
|
-
reference.removeEventListener('mousedown', onMousedown);
|
77
|
-
reference.removeEventListener('mousemove', onMousemove);
|
78
|
-
reference.removeEventListener('focus', onFocus);
|
79
|
-
reference.removeEventListener('blur', onBlur);
|
80
|
-
});
|
81
|
-
});
|
82
63
|
|
83
|
-
|
64
|
+
reference.addEventListener('click', onClick);
|
65
|
+
reference.addEventListener('contextmenu', onContextmenu);
|
66
|
+
reference.addEventListener('mouseenter', onMouseenter);
|
67
|
+
reference.addEventListener('mouseleave', onMouseleave);
|
68
|
+
reference.addEventListener('mousedown', onMousedown);
|
69
|
+
reference.addEventListener('mousemove', onMousemove);
|
70
|
+
reference.addEventListener('focus', onFocus);
|
71
|
+
reference.addEventListener('blur', onBlur);
|
72
|
+
|
73
|
+
effects.push(() => {
|
74
|
+
reference.removeEventListener('click', onClick);
|
75
|
+
reference.removeEventListener('contextmenu', onContextmenu);
|
76
|
+
reference.removeEventListener('mouseenter', onMouseenter);
|
77
|
+
reference.removeEventListener('mouseleave', onMouseleave);
|
78
|
+
reference.removeEventListener('mousedown', onMousedown);
|
79
|
+
reference.removeEventListener('mousemove', onMousemove);
|
80
|
+
reference.removeEventListener('focus', onFocus);
|
81
|
+
reference.removeEventListener('blur', onBlur);
|
82
|
+
});
|
83
|
+
})
|
84
|
+
);
|
85
|
+
|
86
|
+
onBeforeUnmount(() => {
|
87
|
+
effects.clear();
|
88
|
+
setupEffects.clear();
|
89
|
+
});
|
84
90
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import {PopupManager} from "./usePopupManager";
|
2
2
|
import {iPopupManager, iPopupUseOption, nextPopupId} from "./utils/popup.utils";
|
3
|
-
import {onBeforeUnmount, SimpleFunction} from "
|
4
|
-
import {toArray} from "
|
3
|
+
import {onBeforeUnmount, SimpleFunction} from "@peryl/react-compose";
|
4
|
+
import {toArray} from "@peryl/utils/toArray";
|
5
5
|
|
6
6
|
export function usePopup() {
|
7
7
|
const popupId = nextPopupId();
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {computed, getComponentCls, inject, onBeforeUnmount, provide, reactive, RenderNode} from "
|
1
|
+
import {computed, getComponentCls, inject, onBeforeUnmount, provide, reactive, RenderNode} from "@peryl/react-compose";
|
2
2
|
import {ePopupAnimation, ePopupTrigger, iPopupDefaultOption, iPopupManager, iPopupOption, iPopupUseOption, nextPopupManagerId, nextPopupType} from "./utils/popup.utils";
|
3
3
|
import {createPopupManagerHooks} from "./utils/createPopupManagerHooks";
|
4
4
|
import {PopupItem} from "./PopupItem";
|
@@ -11,7 +11,8 @@ import {useManagerTriggerHover} from "./trigger/useManagerTrigger.hover";
|
|
11
11
|
import {useManagerTriggerContextmenu} from "./trigger/useManagerTrigger.contextmenu";
|
12
12
|
import {useManagerTriggerFocus} from "./trigger/useManagerTrigger.focus";
|
13
13
|
import {useManagerTriggerClickOutside} from "./trigger/useManagerTrigger.clickOutside";
|
14
|
-
import {toArray} from "
|
14
|
+
import {toArray} from "@peryl/utils/toArray";
|
15
|
+
import {delay} from "@peryl/utils/delay";
|
15
16
|
|
16
17
|
/**
|
17
18
|
* popup item管理器
|
@@ -246,7 +247,17 @@ export function usePopupManager({ getSize }: { getSize: () => typeof ThemeSize.T
|
|
246
247
|
|
247
248
|
PopupManager.add(manager);
|
248
249
|
|
249
|
-
onBeforeUnmount(() => {
|
250
|
+
onBeforeUnmount(() => {
|
251
|
+
PopupManager.remove(manager);
|
252
|
+
delay().then(() => {
|
253
|
+
Object.keys(findOption.value.id2option).forEach(k => {delete findOption.value.id2option[k];});
|
254
|
+
manager.state.options = [];
|
255
|
+
manager.state.isOpenMap = {};
|
256
|
+
manager.state.isShowMap = {};
|
257
|
+
manager.parent = null;
|
258
|
+
manager.render = () => null;
|
259
|
+
});
|
260
|
+
});
|
250
261
|
|
251
262
|
return manager;
|
252
263
|
}
|
@@ -1,10 +1,9 @@
|
|
1
|
-
import {createEnum} from "
|
2
|
-
import {createCounter} from "
|
3
|
-
import {getComponentCls, RenderNode, SimpleFunction} from "
|
1
|
+
import {createEnum} from "@peryl/utils/createEnum";
|
2
|
+
import {createCounter} from "@peryl/utils/createCounter";
|
3
|
+
import {createProvider, getComponentCls, RenderNode, SimpleFunction} from "@peryl/react-compose";
|
4
4
|
import {iPopupManagerHooks} from "./createPopupManagerHooks";
|
5
5
|
import {iElementRect} from "../../../utils/getRowEl";
|
6
6
|
import {ThemeSize, ThemeStatus} from "../../../uses/useStyle";
|
7
|
-
import {createProvider} from "../../../utils/createProvider";
|
8
7
|
|
9
8
|
/**
|
10
9
|
* direction
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import {iPopupEditorOption} from "./popup-editor.utils";
|
2
|
-
import {
|
3
|
-
import {createEffects} from "plain-utils/utils/createEffects";
|
2
|
+
import {createEffectsOfReaction, onBeforeUnmount, SimpleFunction} from "@peryl/react-compose";
|
4
3
|
import {createPopup} from "../usePopup/usePopup";
|
5
4
|
import {iPopupUseOption} from "../usePopup/utils/popup.utils";
|
6
5
|
import {createReferenceTrigger} from "../usePopup/trigger/useReferenceTrigger";
|
@@ -14,11 +13,11 @@ export function createPopupEditor(
|
|
14
13
|
}
|
15
14
|
) {
|
16
15
|
|
17
|
-
const { effects } =
|
16
|
+
const { effects, effectComputed, effectWatch } = createEffectsOfReaction();
|
18
17
|
|
19
18
|
const popup = createPopup(effects.push);
|
20
19
|
|
21
|
-
const reference =
|
20
|
+
const reference = effectComputed(() => {
|
22
21
|
let reference = option.reference() as any;
|
23
22
|
if (!reference) {return null;}
|
24
23
|
if ('$el' in reference) {reference = reference.$el;}
|
@@ -90,11 +89,9 @@ export function createPopupEditor(
|
|
90
89
|
isShow: () => popup.$popup.manager.methods.isShow(getOption())
|
91
90
|
};
|
92
91
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
})
|
97
|
-
);
|
92
|
+
effectWatch(() => option.popperAttrs?.(), () => {
|
93
|
+
popup.$popup.update(getOption());
|
94
|
+
});
|
98
95
|
|
99
96
|
effects.push(() => {
|
100
97
|
popup.$popup.manager.methods.remove(popup.popupId);
|
@@ -0,0 +1,73 @@
|
|
1
|
+
import {TableOptionSpace} from "../AutoTable/utils/TableOption.space";
|
2
|
+
import {computed, reactive, RenderNode} from "@peryl/react-compose";
|
3
|
+
import {iFilterQueryParam} from "../FilterService/utils/filter.service.utils";
|
4
|
+
|
5
|
+
export function useTableFilter<T>(
|
6
|
+
{
|
7
|
+
modelValue,
|
8
|
+
option,
|
9
|
+
defaultValue,
|
10
|
+
display,
|
11
|
+
handleClickTip,
|
12
|
+
handleClear,
|
13
|
+
getQueryParam,
|
14
|
+
noClear,
|
15
|
+
}: {
|
16
|
+
option: TableOptionSpace.iTableOption,
|
17
|
+
display: (val: T) => RenderNode,
|
18
|
+
getQueryParam: (val: T) => iFilterQueryParam,
|
19
|
+
modelValue?: { set: (newVal: T | null) => void, get: () => T | null },
|
20
|
+
defaultValue?: T,
|
21
|
+
handleClickTip?: (val: T) => void,
|
22
|
+
handleClear?: (val: T) => void,
|
23
|
+
noClear?: boolean,
|
24
|
+
}) {
|
25
|
+
|
26
|
+
const model = (() => {
|
27
|
+
const _modelValue = modelValue || (() => {
|
28
|
+
const state = reactive({ value: defaultValue });
|
29
|
+
return { get: (): T | null => state.value as any, set: (newVal: T | null) => {state.value = newVal as any;} };
|
30
|
+
})();
|
31
|
+
return {
|
32
|
+
get: () => _modelValue.get(),
|
33
|
+
set: (newVal: T | null) => {_modelValue.set(newVal);}
|
34
|
+
};
|
35
|
+
})();
|
36
|
+
|
37
|
+
const clear = (val: T) => {
|
38
|
+
if (noClear) {return;}
|
39
|
+
!!handleClear ? handleClear(val) : model.set(null);
|
40
|
+
};
|
41
|
+
|
42
|
+
const tips = computed((): TableOptionSpace.iTableOptionTipMeta | null => {
|
43
|
+
const val = model.get();
|
44
|
+
if (val == null) {return null;}
|
45
|
+
return {
|
46
|
+
noClear,
|
47
|
+
display: () => display(val),
|
48
|
+
onClear: () => {
|
49
|
+
clear(val);
|
50
|
+
reload();
|
51
|
+
},
|
52
|
+
onClick: () => {handleClickTip?.(val);},
|
53
|
+
};
|
54
|
+
});
|
55
|
+
|
56
|
+
option.hooks.onClearFilter.use(() => {
|
57
|
+
const val = model.get();
|
58
|
+
if (val == null) {return;}
|
59
|
+
clear(val);
|
60
|
+
});
|
61
|
+
|
62
|
+
option.hooks.onTips.use((list) => {!!tips.value && list.unshift(tips.value);});
|
63
|
+
|
64
|
+
option.hooks.onQueryParam.use(async () => {
|
65
|
+
const val = model.get();
|
66
|
+
if (val == null) {return;}
|
67
|
+
return getQueryParam(val);
|
68
|
+
});
|
69
|
+
|
70
|
+
const reload = () => option.methods.pageMethods.reload();
|
71
|
+
|
72
|
+
return { model, reload };
|
73
|
+
}
|
@@ -1,8 +1,7 @@
|
|
1
|
-
import {
|
2
|
-
import {getComponentCls, nextTick, onBeforeUnmount, reactive, watch} from "plain-design-composition";
|
1
|
+
import {createEffectsOfReaction, getComponentCls, nextTick, onBeforeUnmount, reactive} from "@peryl/react-compose";
|
3
2
|
import {iPopupService, usePopup} from "../usePopup/usePopup";
|
4
3
|
import {iPopupUseOption} from "../usePopup/utils/popup.utils";
|
5
|
-
import {delay} from "
|
4
|
+
import {delay} from "@peryl/utils/delay";
|
6
5
|
|
7
6
|
/**
|
8
7
|
* 提供两种用法,第一种实时地创建tooltip
|
@@ -10,7 +9,7 @@ import {delay} from "plain-utils/utils/delay";
|
|
10
9
|
* @date 2023.1.21 14:06
|
11
10
|
*/
|
12
11
|
export function createTooltip(option: iTooltipServiceOption, popup: iPopupService) {
|
13
|
-
const { effects } =
|
12
|
+
const { effects, effectWatch } = createEffectsOfReaction();
|
14
13
|
|
15
14
|
const state = reactive({
|
16
15
|
isEnter: false,
|
@@ -67,7 +66,7 @@ export function createTooltip(option: iTooltipServiceOption, popup: iPopupServic
|
|
67
66
|
}
|
68
67
|
};
|
69
68
|
effects.push(
|
70
|
-
|
69
|
+
effectWatch(
|
71
70
|
() => option.tooltip(),
|
72
71
|
({ message, reference }) => {
|
73
72
|
if (!reference) {
|
@@ -108,7 +107,7 @@ export function createTooltip(option: iTooltipServiceOption, popup: iPopupServic
|
|
108
107
|
|
109
108
|
const tooltipHandler = (() => {
|
110
109
|
effects.push(
|
111
|
-
|
110
|
+
effectWatch(
|
112
111
|
() => option.tooltip().message,
|
113
112
|
val => {
|
114
113
|
popup.$popup.update(getOption());
|
@@ -122,7 +121,7 @@ export function createTooltip(option: iTooltipServiceOption, popup: iPopupServic
|
|
122
121
|
)
|
123
122
|
);
|
124
123
|
effects.push(
|
125
|
-
|
124
|
+
effectWatch(
|
126
125
|
(): boolean => {
|
127
126
|
const { reference, message } = option.tooltip();
|
128
127
|
if (reference == null || message == null || (typeof message === "string" && !message.trim().length)) {
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import {onBeforeUnmount, watch} from '
|
1
|
+
import {onBeforeUnmount, watch} from '@peryl/react-compose';
|
2
2
|
import './click-wave.scss';
|
3
|
-
import {delay} from "
|
3
|
+
import {delay} from "@peryl/utils/delay";
|
4
4
|
import {ThemeSize} from "../../uses/useStyle";
|
5
5
|
|
6
6
|
export interface ClickWaveOptions {
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import {onBeforeUnmount, watch} from "
|
2
|
-
import {delay} from "
|
1
|
+
import {onBeforeUnmount, watch} from "@peryl/react-compose";
|
2
|
+
import {delay} from "@peryl/utils/delay";
|
3
3
|
|
4
4
|
export interface ResizeDetectFuncParam {
|
5
5
|
width?: number;
|