feffery_antd_components 0.4.4 → 0.4.5
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/.eslintignore +2 -0
- package/.eslintrc +121 -0
- package/.github/FUNDING.yml +1 -0
- package/.github/workflows/test.yml +86 -0
- package/.prettierrc +6 -0
- package/.pylintrc +556 -0
- package/.pytest_cache/README.md +8 -0
- package/DESCRIPTION +4 -4
- package/LICENSE +1 -1
- package/NAMESPACE +110 -110
- package/Project.toml +1 -1
- package/README-en_US.md +4 -4
- package/README.md +6 -6
- package/feffery_antd_components/AntdAccordion.py +136 -108
- package/feffery_antd_components/AntdAffix.py +57 -33
- package/feffery_antd_components/AntdAlert.py +76 -44
- package/feffery_antd_components/AntdAnchor.py +84 -48
- package/feffery_antd_components/AntdAvatar.py +110 -70
- package/feffery_antd_components/AntdAvatarGroup.py +96 -74
- package/feffery_antd_components/AntdBackTop.py +57 -33
- package/feffery_antd_components/AntdBadge.py +111 -79
- package/feffery_antd_components/AntdBreadcrumb.py +120 -100
- package/feffery_antd_components/AntdButton.py +176 -101
- package/feffery_antd_components/AntdCalendar.py +119 -85
- package/feffery_antd_components/AntdCard.py +169 -131
- package/feffery_antd_components/AntdCardGrid.py +49 -29
- package/feffery_antd_components/AntdCardMeta.py +49 -29
- package/feffery_antd_components/AntdCarousel.py +96 -61
- package/feffery_antd_components/AntdCascader.py +207 -112
- package/feffery_antd_components/AntdCenter.py +49 -29
- package/feffery_antd_components/AntdCheckCard.py +93 -53
- package/feffery_antd_components/AntdCheckCardGroup.py +107 -57
- package/feffery_antd_components/AntdCheckableTag.py +53 -31
- package/feffery_antd_components/AntdCheckbox.py +92 -52
- package/feffery_antd_components/AntdCheckboxGroup.py +98 -62
- package/feffery_antd_components/AntdCol.py +209 -169
- package/feffery_antd_components/AntdCollapse.py +112 -82
- package/feffery_antd_components/AntdColorPicker.py +139 -90
- package/feffery_antd_components/AntdComment.py +152 -101
- package/feffery_antd_components/AntdCompact.py +50 -30
- package/feffery_antd_components/AntdConfigProvider.py +105 -82
- package/feffery_antd_components/AntdContent.py +32 -24
- package/feffery_antd_components/AntdCopyText.py +64 -38
- package/feffery_antd_components/AntdCountdown.py +79 -52
- package/feffery_antd_components/AntdCountup.py +70 -40
- package/feffery_antd_components/AntdCustomSkeleton.py +76 -44
- package/feffery_antd_components/AntdDatePicker.py +276 -184
- package/feffery_antd_components/AntdDateRangePicker.py +276 -180
- package/feffery_antd_components/AntdDescriptionItem.py +71 -59
- package/feffery_antd_components/AntdDescriptions.py +162 -128
- package/feffery_antd_components/AntdDivider.py +94 -54
- package/feffery_antd_components/AntdDraggerUpload.py +305 -227
- package/feffery_antd_components/AntdDrawer.py +158 -104
- package/feffery_antd_components/AntdDropdown.py +215 -137
- package/feffery_antd_components/AntdEmpty.py +98 -72
- package/feffery_antd_components/AntdFlex.py +68 -38
- package/feffery_antd_components/AntdFloatButton.py +101 -56
- package/feffery_antd_components/AntdFloatButtonGroup.py +107 -60
- package/feffery_antd_components/AntdFooter.py +32 -24
- package/feffery_antd_components/AntdForm.py +121 -79
- package/feffery_antd_components/AntdFormItem.py +127 -83
- package/feffery_antd_components/AntdFormRender.py +618 -543
- package/feffery_antd_components/AntdHappyProvider.py +19 -19
- package/feffery_antd_components/AntdHeader.py +32 -24
- package/feffery_antd_components/AntdIcon.py +59 -35
- package/feffery_antd_components/AntdImage.py +113 -77
- package/feffery_antd_components/AntdImageGroup.py +104 -72
- package/feffery_antd_components/AntdInput.py +246 -160
- package/feffery_antd_components/AntdInputNumber.py +168 -92
- package/feffery_antd_components/AntdLayout.py +32 -24
- package/feffery_antd_components/AntdMentions.py +132 -91
- package/feffery_antd_components/AntdMenu.py +153 -89
- package/feffery_antd_components/AntdMessage.py +60 -36
- package/feffery_antd_components/AntdModal.py +311 -213
- package/feffery_antd_components/AntdNotification.py +108 -77
- package/feffery_antd_components/AntdOTP.py +95 -55
- package/feffery_antd_components/AntdPageHeader.py +65 -37
- package/feffery_antd_components/AntdPagination.py +136 -76
- package/feffery_antd_components/AntdParagraph.py +105 -67
- package/feffery_antd_components/AntdPictureUpload.py +333 -258
- package/feffery_antd_components/AntdPopconfirm.py +249 -175
- package/feffery_antd_components/AntdPopover.py +140 -86
- package/feffery_antd_components/AntdPopupCard.py +162 -102
- package/feffery_antd_components/AntdProgress.py +183 -147
- package/feffery_antd_components/AntdQRCode.py +104 -66
- package/feffery_antd_components/AntdRadioGroup.py +128 -80
- package/feffery_antd_components/AntdRate.py +100 -56
- package/feffery_antd_components/AntdResult.py +61 -35
- package/feffery_antd_components/AntdRibbon.py +54 -32
- package/feffery_antd_components/AntdRow.py +87 -59
- package/feffery_antd_components/AntdSegmented.py +131 -89
- package/feffery_antd_components/AntdSegmentedColoring.py +143 -86
- package/feffery_antd_components/AntdSelect.py +300 -168
- package/feffery_antd_components/AntdSider.py +75 -43
- package/feffery_antd_components/AntdSkeleton.py +125 -88
- package/feffery_antd_components/AntdSkeletonAvatar.py +54 -32
- package/feffery_antd_components/AntdSkeletonButton.py +55 -33
- package/feffery_antd_components/AntdSkeletonImage.py +21 -21
- package/feffery_antd_components/AntdSkeletonInput.py +36 -27
- package/feffery_antd_components/AntdSlider.py +191 -129
- package/feffery_antd_components/AntdSpace.py +87 -65
- package/feffery_antd_components/AntdSpin.py +98 -56
- package/feffery_antd_components/AntdSplitter.py +91 -76
- package/feffery_antd_components/AntdSpoiler.py +80 -46
- package/feffery_antd_components/AntdStatistic.py +86 -54
- package/feffery_antd_components/AntdSteps.py +117 -77
- package/feffery_antd_components/AntdSwitch.py +118 -72
- package/feffery_antd_components/AntdTable.py +1215 -938
- package/feffery_antd_components/AntdTabs.py +225 -156
- package/feffery_antd_components/AntdTag.py +69 -39
- package/feffery_antd_components/AntdText.py +97 -62
- package/feffery_antd_components/AntdTimePicker.py +198 -116
- package/feffery_antd_components/AntdTimeRangePicker.py +179 -99
- package/feffery_antd_components/AntdTimeline.py +86 -57
- package/feffery_antd_components/AntdTitle.py +92 -52
- package/feffery_antd_components/AntdTooltip.py +142 -99
- package/feffery_antd_components/AntdTour.py +186 -144
- package/feffery_antd_components/AntdTransfer.py +186 -120
- package/feffery_antd_components/AntdTree.py +267 -159
- package/feffery_antd_components/AntdTreeSelect.py +301 -162
- package/feffery_antd_components/AntdUpload.py +338 -262
- package/feffery_antd_components/AntdWatermark.py +93 -51
- package/feffery_antd_components/Fragment.py +19 -19
- package/feffery_antd_components/__init__.py +22 -17
- package/feffery_antd_components/_imports_.py +187 -187
- package/feffery_antd_components/alias.py +187 -187
- package/feffery_antd_components/async-antd_table.js +2 -2
- package/feffery_antd_components/async-data_display.js +1 -1
- package/feffery_antd_components/async-data_entry.js +4 -4
- package/feffery_antd_components/async-upload.js +2 -2
- package/feffery_antd_components/feffery_antd_components.min.js +8 -8
- package/feffery_antd_components/metadata.json +1 -1
- package/feffery_antd_components/package-info.json +15 -9
- package/{tests → legacy_tests}/dash3.0tests/AntdQRCode/347/273/204/344/273/266loading/347/212/266/346/200/201/351/207/215/346/236/204/test.py +3 -1
- package/{tests → legacy_tests}/dash3.0tests/AntdTable/345/207/275/346/225/260/345/274/217/346/224/271/351/200/240/test.py +5 -5
- package/{tests → legacy_tests}/dash3.0tests/_dashprivate_layout/346/224/271/345/212/250/346/265/213/350/257/225/test.py +3 -4
- package/{tests → legacy_tests}/dash3.0tests/loading_state/346/224/271/345/212/250/346/265/213/350/257/225/test.py +3 -1
- package/{tests → legacy_tests}/dash3.0tests//345/207/275/346/225/260/345/274/217/347/273/204/344/273/266/351/273/230/350/256/244/345/200/274/351/207/215/346/236/204/test.py +2 -1
- package/{tests → legacy_tests}/dash3.0tests//345/212/240/350/275/275/345/212/250/347/224/273/347/261/273/347/273/204/344/273/266/351/207/215/346/236/204/346/265/213/350/257/225/test.py +3 -1
- package/{tests → legacy_tests}/dash3.0tests//347/273/204/344/273/266/345/261/236/346/200/247/345/237/272/347/241/200/346/214/201/344/271/205/345/214/226/351/207/215/346/236/204/346/265/213/350/257/225/test.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdAccordion/feat_size.py +3 -4
- package/{tests → legacy_tests}/dataDisplay/AntdAccordion/feat_styles.py +3 -4
- package/{tests → legacy_tests}/dataDisplay/AntdCard/refactor_delete_props.py +7 -24
- package/{tests → legacy_tests}/dataDisplay/AntdCarousel/feat_auto_play_dot_duration.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdCollapse/feat_size.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdCollapse/feat_styles.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdCountdown/feat_finish_event.py +6 -7
- package/{tests → legacy_tests}/dataDisplay/AntdCountdown/refactor_to_timer.py +8 -14
- package/{tests → legacy_tests}/dataDisplay/AntdCountup/refactor_to_timer.py +8 -14
- package/{tests → legacy_tests}/dataDisplay/AntdDescriptions/feat_span_filled.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdImage/debug_preview_toolbar.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdSegmented/feat_shape.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdSegmented/feat_simple_options.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdSegmented/feat_vertical.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_button_mode_like_dcc_link.py +6 -10
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_button_mode_refactor.py +10 -20
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_button_mode_tooltip.py +2 -3
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_columns_fixed_bool.py +3 -8
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_columns_min_width.py +6 -8
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_columns_sort_order.py +8 -14
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_editable_disabled_keys.py +4 -4
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_header_align.py +2 -7
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_link_mode_like_dcc_link.py +1 -0
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_loading.py +7 -17
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_mini_chart_color.py +8 -25
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_row_class_name.py +4 -8
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_row_class_name_func.py +5 -11
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_select_mode_show_search.py +4 -7
- package/legacy_tests/dataDisplay/AntdTable/feat_sticky_header.py +75 -0
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_table_scroll.py +3 -1
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_tag_mode_tooltip.py +3 -6
- package/{tests → legacy_tests}/dataDisplay/AntdTable/feat_title_popover_nodes.py +4 -9
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_context_locale.py +3 -6
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_field_bool.py +3 -1
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_max_width_height_ghost_row.py +3 -14
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_nested_editable.py +5 -5
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_select_with_editable.py +6 -10
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_server_side_mode_filter_search.py +18 -50
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_summary.py +5 -12
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_summary_multi_level_header.py +2 -7
- package/{tests → legacy_tests}/dataDisplay/AntdTable/fix_zero_value_filter.py +2 -3
- package/{tests → legacy_tests}/dataDisplay/AntdTable/perf_button_mode_auto_wrap.py +3 -11
- package/{tests → legacy_tests}/dataDisplay/AntdTable/perf_editable_column_format_constrait_message.py +2 -1
- package/{tests → legacy_tests}/dataDisplay/AntdTable/refactor_mini_progress_mode.py +3 -5
- package/{tests → legacy_tests}/dataDisplay/AntdTable/rollback_title_popover_info.py +2 -4
- package/{tests → legacy_tests}/dataDisplay/AntdTabs/feat_item_icon.py +3 -4
- package/{tests → legacy_tests}/dataDisplay/AntdTabs/feat_placeholder.py +10 -21
- package/{tests → legacy_tests}/dataDisplay/AntdTabs/feat_tab_bar_style.py +3 -4
- package/{tests → legacy_tests}/dataDisplay/AntdTree/feat_async_data_load.py +4 -2
- package/{tests → legacy_tests}/dataDisplay/descriptions/AntdDescriptions/feat_extra.py +3 -4
- package/{tests → legacy_tests}/dataEntry/AntdCalendar/feat_custom_cells.py +5 -12
- package/{tests → legacy_tests}/dataEntry/AntdCascader/feat_prefix.py +1 -0
- package/{tests → legacy_tests}/dataEntry/AntdCascader/feat_suffix_icon.py +1 -0
- package/{tests → legacy_tests}/dataEntry/AntdCascader/fix_read_only.py +2 -1
- package/{tests → legacy_tests}/dataEntry/AntdDatePicker/feat_custom_cells.py +1 -0
- package/{tests → legacy_tests}/dataEntry/AntdDatePicker/feat_picker_value.py +2 -1
- package/{tests/dataEntry/AntdTimePicker → legacy_tests/dataEntry/AntdDatePicker}/feat_prefix.py +2 -5
- package/{tests/dataEntry/AntdTimePicker → legacy_tests/dataEntry/AntdDatePicker}/feat_suffix_icon.py +2 -5
- package/{tests → legacy_tests}/dataEntry/AntdDateRangePicker/feat_custom_cells.py +1 -0
- package/{tests → legacy_tests}/dataEntry/AntdDateRangePicker/feat_picker_value.py +2 -1
- package/{tests/dataEntry/AntdDatePicker → legacy_tests/dataEntry/AntdDateRangePicker}/feat_prefix.py +2 -5
- package/{tests/dataEntry/AntdDatePicker → legacy_tests/dataEntry/AntdDateRangePicker}/feat_suffix_icon.py +2 -5
- package/{tests → legacy_tests}/dataEntry/AntdForm/feat_batch_control_tooltips.py +2 -5
- package/{tests → legacy_tests}/dataEntry/AntdForm/feat_optional_batch_control.py +7 -12
- package/{tests → legacy_tests}/dataEntry/AntdForm/fix_checkbox.py +3 -4
- package/{tests → legacy_tests}/dataEntry/AntdRadioGroup/feat_block.py +2 -1
- package/{tests → legacy_tests}/dataEntry/AntdSelect/feat_locale_ru.py +2 -1
- package/{tests → legacy_tests}/dataEntry/AntdSelect/feat_max_count.py +2 -4
- package/{tests → legacy_tests}/dataEntry/AntdSelect/feat_prefix.py +2 -4
- package/{tests → legacy_tests}/dataEntry/AntdSelect/feat_show_search.py +2 -1
- package/{tests → legacy_tests}/dataEntry/AntdSelect/feat_suffix_icon.py +2 -3
- package/{tests → legacy_tests}/dataEntry/AntdSelect/fix_read_only.py +4 -9
- package/{tests → legacy_tests}/dataEntry/AntdSelect/fix_read_only_with_allow_clear.py +3 -5
- package/{tests → legacy_tests}/dataEntry/AntdSlider/feat_range_editable.py +3 -1
- package/legacy_tests/dataEntry/AntdTimePicker/feat_prefix.py +18 -0
- package/legacy_tests/dataEntry/AntdTimePicker/feat_suffix_icon.py +18 -0
- package/legacy_tests/dataEntry/AntdTimeRangePicker/feat_prefix.py +18 -0
- package/legacy_tests/dataEntry/AntdTimeRangePicker/feat_suffix_icon.py +18 -0
- package/{tests → legacy_tests}/dataEntry/AntdTreeSelect/feat_async_data_load.py +4 -2
- package/{tests → legacy_tests}/dataEntry/AntdTreeSelect/feat_max_count.py +2 -4
- package/{tests → legacy_tests}/dataEntry/AntdTreeSelect/feat_prefix.py +1 -0
- package/{tests → legacy_tests}/dataEntry/AntdTreeSelect/fix_read_only.py +1 -0
- package/{tests → legacy_tests}/dataEntry/AntdUpload/feat_pastable.py +3 -6
- package/{tests → legacy_tests}/dataEntry/AntdUpload/fix_follow_theme.py +2 -1
- package/{tests → legacy_tests}/feat_variant_underlined.py +3 -4
- package/{tests → legacy_tests}/feedback/AntdAlert/feat_icon.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdMessage/fix_follow_config_provider.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdModal/feat_force_render.py +5 -8
- package/{tests → legacy_tests}/feedback/AntdModal/feat_loading_title.py +2 -7
- package/{tests → legacy_tests}/feedback/AntdModal/feat_prevent_close.py +3 -2
- package/{tests → legacy_tests}/feedback/AntdModal/feat_responsive_width.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdNotification/feat_component_content.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdNotification/feat_number_of_stack.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdNotification/feat_show_progress.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdNotification/fix_follow_config_provider.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdPopupCard/feat_force_render.py +3 -2
- package/{tests → legacy_tests}/feedback/AntdProgress/feat_percent_position.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdProgress/perf_size.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdProgress/perf_steps.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdProgress/perf_stroke_color.py +2 -1
- package/{tests → legacy_tests}/feedback/AntdResult/feat_extra.py +3 -4
- package/{tests → legacy_tests}/feedback/AntdSkeleton/fix_dash3.py +4 -6
- package/{tests → legacy_tests}/general/AntdButton/feat_color_and_variant.py +2 -1
- package/{tests → legacy_tests}/general/AntdButton/feat_preset_color.py +2 -1
- package/legacy_tests/general/AntdFloatButtonGroup/feat_placement.py +60 -0
- package/{tests → legacy_tests}/general/AntdFloatButtonGroup/feat_tooltip.py +3 -4
- package/{tests → legacy_tests}/general/AntdIcon/feat_iconfont.py +2 -1
- package/{tests → legacy_tests}/layout/AntdCenter/feat_use_token.py +2 -1
- package/{tests → legacy_tests}/layout/AntdDivider/feat_plain.py +2 -1
- package/{tests → legacy_tests}/layout/AntdDivider/feat_size.py +2 -1
- package/{tests → legacy_tests}/layout/AntdSplitter/feat_AntdSplitter.py +4 -4
- package/{tests → legacy_tests}/layout/AntdSplitter/feat_lazy.py +2 -1
- package/{tests → legacy_tests}/layout/AntdSplitter/refactor.py +18 -49
- package/{tests → legacy_tests}/navigation/AntdAnchor/feat_current_anchor.py +2 -1
- package/{tests → legacy_tests}/navigation/AntdAnchor/feat_direction.py +2 -1
- package/{tests → legacy_tests}/navigation/AntdAnchor/feat_replace.py +2 -1
- package/{tests → legacy_tests}/navigation/AntdBreadcrumb/feat_menu_item_event.py +3 -1
- package/{tests → legacy_tests}/navigation/AntdBreadcrumb/refactor_items.py +3 -1
- package/{tests → legacy_tests}/navigation/AntdDropdown/feat_extra.py +2 -1
- package/legacy_tests/navigation/AntdDropdown/test_cascading_dropdown.py +107 -0
- package/{tests → legacy_tests}/navigation/AntdMenu/feat_currentItem.py +3 -1
- package/{tests → legacy_tests}/navigation/AntdMenu/feat_currentItemPath.py +3 -1
- package/{tests → legacy_tests}/navigation/AntdMenu/feat_currentKeyPath.py +3 -1
- package/{tests → legacy_tests}/navigation/AntdMenu/feat_custom_icon.py +1 -0
- package/{tests → legacy_tests}/navigation/AntdMenu/feat_expandIcon.py +5 -8
- package/{tests → legacy_tests}/navigation/AntdMenu/feat_triggerSubMenuAction.py +4 -7
- package/{tests → legacy_tests}/navigation/AntdMenu/fix_onlyExpandCurrentSubMenu.py +2 -1
- package/{tests → legacy_tests}/navigation/AntdMenu/fix_with_sider.py +1 -0
- package/{tests → legacy_tests}/navigation/AntdPagination/feat_align.py +5 -10
- package/{tests → legacy_tests}/other/AntdAffix/feat_listen_affixed.py +2 -1
- package/{tests → legacy_tests}/other/AntdBackTop/refactor.py +2 -1
- package/legacy_tests/other/AntdConfigProvider/feat_use_css.py +67 -0
- package/{tests → legacy_tests}/other/AntdCopyText/feat_copy_table.py +7 -17
- package/{tests → legacy_tests}/other/AntdCopyText/feat_tooltips.py +5 -10
- package/{tests → legacy_tests}/other/AntdHappyProvider/feat_component.py +6 -13
- package/{tests → legacy_tests}/other/Fragment/feat_use_token.py +2 -1
- package/package.json +15 -9
- package/requirements.txt +7 -1
- package/ruff.toml +17 -1
- package/setup.py +12 -13
- package/src/lib/components/dataDisplay/AntdAccordion.react.js +22 -22
- package/src/lib/components/dataDisplay/AntdAvatar.react.js +18 -16
- package/src/lib/components/dataDisplay/AntdAvatarGroup.react.js +18 -16
- package/src/lib/components/dataDisplay/AntdBadge.react.js +24 -16
- package/src/lib/components/dataDisplay/AntdCarousel.react.js +17 -15
- package/src/lib/components/dataDisplay/AntdCheckableTag.react.js +15 -13
- package/src/lib/components/dataDisplay/AntdCollapse.react.js +40 -40
- package/src/lib/components/dataDisplay/AntdComment.react.js +19 -17
- package/src/lib/components/dataDisplay/AntdCountdown.react.js +15 -13
- package/src/lib/components/dataDisplay/AntdCountup.react.js +15 -13
- package/src/lib/components/dataDisplay/AntdEmpty.react.js +21 -24
- package/src/lib/components/dataDisplay/AntdImage.react.js +22 -26
- package/src/lib/components/dataDisplay/AntdImageGroup.react.js +19 -17
- package/src/lib/components/dataDisplay/AntdPopover.react.js +30 -17
- package/src/lib/components/dataDisplay/AntdQRCode.react.js +19 -17
- package/src/lib/components/dataDisplay/AntdRibbon.react.js +15 -13
- package/src/lib/components/dataDisplay/AntdSegmented.react.js +24 -30
- package/src/lib/components/dataDisplay/AntdSpoiler.react.js +19 -20
- package/src/lib/components/dataDisplay/AntdStatistic.react.js +28 -23
- package/src/lib/components/dataDisplay/AntdTable.react.js +241 -142
- package/src/lib/components/dataDisplay/AntdTabs.react.js +22 -23
- package/src/lib/components/dataDisplay/AntdTag.react.js +15 -13
- package/src/lib/components/dataDisplay/AntdTimeline.react.js +16 -14
- package/src/lib/components/dataDisplay/AntdTooltip.react.js +30 -23
- package/src/lib/components/dataDisplay/AntdTree.react.js +60 -32
- package/src/lib/components/dataDisplay/card/AntdCard.react.js +19 -17
- package/src/lib/components/dataDisplay/card/AntdCardGrid.react.js +15 -13
- package/src/lib/components/dataDisplay/card/AntdCardMeta.react.js +15 -13
- package/src/lib/components/dataDisplay/descriptions/AntdDescriptionItem.react.js +17 -15
- package/src/lib/components/dataDisplay/descriptions/AntdDescriptions.react.js +21 -19
- package/src/lib/components/dataEntry/AntdCalendar.react.js +22 -20
- package/src/lib/components/dataEntry/AntdCascader.react.js +44 -50
- package/src/lib/components/dataEntry/AntdCheckbox.react.js +18 -16
- package/src/lib/components/dataEntry/AntdCheckboxGroup.react.js +22 -23
- package/src/lib/components/dataEntry/AntdColorPicker.react.js +27 -22
- package/src/lib/components/dataEntry/AntdDatePicker.react.js +61 -33
- package/src/lib/components/dataEntry/AntdDateRangePicker.react.js +61 -38
- package/src/lib/components/dataEntry/AntdInput.react.js +28 -21
- package/src/lib/components/dataEntry/AntdInputNumber.react.js +30 -41
- package/src/lib/components/dataEntry/AntdMentions.react.js +24 -17
- package/src/lib/components/dataEntry/AntdOTP.react.js +25 -21
- package/src/lib/components/dataEntry/AntdRadioGroup.react.js +23 -27
- package/src/lib/components/dataEntry/AntdRate.react.js +19 -19
- package/src/lib/components/dataEntry/AntdSegmentedColoring.react.js +22 -15
- package/src/lib/components/dataEntry/AntdSelect.react.js +50 -47
- package/src/lib/components/dataEntry/AntdSlider.react.js +24 -22
- package/src/lib/components/dataEntry/AntdSwitch.react.js +19 -17
- package/src/lib/components/dataEntry/AntdTimePicker.react.js +35 -23
- package/src/lib/components/dataEntry/AntdTimeRangePicker.react.js +32 -20
- package/src/lib/components/dataEntry/AntdTransfer.react.js +46 -54
- package/src/lib/components/dataEntry/AntdTreeSelect.react.js +51 -43
- package/src/lib/components/dataEntry/check-card/AntdCheckCard.react.js +19 -20
- package/src/lib/components/dataEntry/check-card/AntdCheckCardGroup.react.js +24 -34
- package/src/lib/components/dataEntry/form/AntdForm.react.js +17 -21
- package/src/lib/components/dataEntry/form/AntdFormItem.react.js +23 -22
- package/src/lib/components/dataEntry/upload/AntdDraggerUpload.react.js +27 -28
- package/src/lib/components/dataEntry/upload/AntdPictureUpload.react.js +38 -26
- package/src/lib/components/dataEntry/upload/AntdUpload.react.js +36 -27
- package/src/lib/components/feedback/AntdAlert.react.js +34 -22
- package/src/lib/components/feedback/AntdDrawer.react.js +41 -44
- package/src/lib/components/feedback/AntdMessage.react.js +27 -34
- package/src/lib/components/feedback/AntdModal.react.js +71 -58
- package/src/lib/components/feedback/AntdNotification.react.js +51 -41
- package/src/lib/components/feedback/AntdPopconfirm.react.js +66 -42
- package/src/lib/components/feedback/AntdPopupCard.react.js +102 -87
- package/src/lib/components/feedback/AntdProgress.react.js +44 -41
- package/src/lib/components/feedback/AntdResult.react.js +28 -19
- package/src/lib/components/feedback/AntdSpin.react.js +77 -38
- package/src/lib/components/feedback/skeleton/AntdCustomSkeleton.react.js +44 -20
- package/src/lib/components/feedback/skeleton/AntdSkeleton.react.js +52 -34
- package/src/lib/components/feedback/skeleton/AntdSkeletonAvatar.react.js +14 -13
- package/src/lib/components/feedback/skeleton/AntdSkeletonButton.react.js +13 -12
- package/src/lib/components/feedback/skeleton/AntdSkeletonImage.react.js +13 -12
- package/src/lib/components/feedback/skeleton/AntdSkeletonInput.react.js +13 -12
- package/src/lib/components/formRender/AntdFormRender.react.js +585 -518
- package/src/lib/components/general/AntdButton.react.js +56 -35
- package/src/lib/components/general/AntdFloatButton.react.js +28 -14
- package/src/lib/components/general/AntdFloatButtonGroup.react.js +31 -15
- package/src/lib/components/general/AntdIcon.react.js +48 -36
- package/src/lib/components/general/typography/AntdParagraph.react.js +23 -21
- package/src/lib/components/general/typography/AntdText.react.js +22 -20
- package/src/lib/components/general/typography/AntdTitle.react.js +22 -20
- package/src/lib/components/icons.react.js +18 -22
- package/src/lib/components/layout/AntdCenter.react.js +24 -24
- package/src/lib/components/layout/AntdCompact.react.js +16 -14
- package/src/lib/components/layout/AntdContent.react.js +16 -14
- package/src/lib/components/layout/AntdDivider.react.js +26 -27
- package/src/lib/components/layout/AntdFlex.react.js +18 -19
- package/src/lib/components/layout/AntdFooter.react.js +16 -14
- package/src/lib/components/layout/AntdHeader.react.js +16 -14
- package/src/lib/components/layout/AntdLayout.react.js +16 -14
- package/src/lib/components/layout/AntdSider.react.js +18 -19
- package/src/lib/components/layout/AntdSpace.react.js +42 -27
- package/src/lib/components/layout/AntdSplitter.react.js +24 -35
- package/src/lib/components/layout/grid/AntdCol.react.js +29 -30
- package/src/lib/components/layout/grid/AntdRow.react.js +23 -17
- package/src/lib/components/locales.react.js +96 -35
- package/src/lib/components/navigation/AntdAnchor.react.js +24 -23
- package/src/lib/components/navigation/AntdBreadcrumb.react.js +93 -100
- package/src/lib/components/navigation/AntdDropdown.react.js +132 -124
- package/src/lib/components/navigation/AntdMenu.react.js +248 -201
- package/src/lib/components/navigation/AntdPageHeader.react.js +19 -17
- package/src/lib/components/navigation/AntdPagination.react.js +38 -35
- package/src/lib/components/navigation/AntdSteps.react.js +21 -16
- package/src/lib/components/other/AntdAffix.react.js +15 -14
- package/src/lib/components/other/AntdBackTop.react.js +20 -20
- package/src/lib/components/other/AntdConfigProvider.react.js +80 -85
- package/src/lib/components/other/AntdCopyText.react.js +21 -19
- package/src/lib/components/other/AntdHappyProvider.react.js +5 -8
- package/src/lib/components/other/AntdTour.react.js +63 -47
- package/src/lib/components/other/AntdWatermark.react.js +11 -8
- package/src/lib/components/other/Fragment.react.js +4 -5
- package/src/lib/components/utils.js +23 -13
- package/src/lib/contexts/FormContext.js +2 -2
- package/src/lib/contexts/FormItemContext.js +2 -2
- package/src/lib/contexts/PropsContext.js +2 -2
- package/src/lib/fragments/AntdTable.react.js +1965 -1197
- package/src/lib/fragments/dataDisplay/AntdAccordion.react.js +41 -37
- package/src/lib/fragments/dataDisplay/AntdAvatar.react.js +64 -51
- package/src/lib/fragments/dataDisplay/AntdAvatarGroup.react.js +19 -9
- package/src/lib/fragments/dataDisplay/AntdBadge.react.js +20 -10
- package/src/lib/fragments/dataDisplay/AntdCarousel.react.js +25 -9
- package/src/lib/fragments/dataDisplay/AntdCheckableTag.react.js +19 -12
- package/src/lib/fragments/dataDisplay/AntdComment.react.js +105 -52
- package/src/lib/fragments/dataDisplay/AntdCountdown.react.js +43 -28
- package/src/lib/fragments/dataDisplay/AntdCountup.react.js +29 -17
- package/src/lib/fragments/dataDisplay/AntdEmpty.react.js +21 -13
- package/src/lib/fragments/dataDisplay/AntdImage.react.js +142 -113
- package/src/lib/fragments/dataDisplay/AntdImageGroup.react.js +28 -20
- package/src/lib/fragments/dataDisplay/AntdPopover.react.js +38 -21
- package/src/lib/fragments/dataDisplay/AntdQRCode.react.js +30 -20
- package/src/lib/fragments/dataDisplay/AntdRibbon.react.js +19 -9
- package/src/lib/fragments/dataDisplay/AntdSegmented.react.js +50 -47
- package/src/lib/fragments/dataDisplay/AntdSpoiler.react.js +49 -36
- package/src/lib/fragments/dataDisplay/AntdTabs.react.js +82 -71
- package/src/lib/fragments/dataDisplay/AntdTag.react.js +27 -12
- package/src/lib/fragments/dataDisplay/AntdTimeline.react.js +24 -21
- package/src/lib/fragments/dataDisplay/AntdTooltip.react.js +24 -17
- package/src/lib/fragments/dataDisplay/AntdTree.react.js +355 -271
- package/src/lib/fragments/dataDisplay/card/AntdCard.react.js +44 -31
- package/src/lib/fragments/dataDisplay/card/AntdCardGrid.react.js +18 -9
- package/src/lib/fragments/dataDisplay/card/AntdCardMeta.react.js +18 -10
- package/src/lib/fragments/dataDisplay/descriptions/AntdDescriptionItem.react.js +18 -9
- package/src/lib/fragments/dataDisplay/descriptions/AntdDescriptions.react.js +75 -54
- package/src/lib/fragments/dataEntry/AntdCalendar.react.js +104 -75
- package/src/lib/fragments/dataEntry/AntdCascader.react.js +137 -98
- package/src/lib/fragments/dataEntry/AntdCheckbox.react.js +43 -31
- package/src/lib/fragments/dataEntry/AntdCheckboxGroup.react.js +45 -35
- package/src/lib/fragments/dataEntry/AntdColorPicker.react.js +95 -86
- package/src/lib/fragments/dataEntry/AntdDatePicker.react.js +171 -135
- package/src/lib/fragments/dataEntry/AntdDateRangePicker.react.js +242 -173
- package/src/lib/fragments/dataEntry/AntdInput.react.js +176 -168
- package/src/lib/fragments/dataEntry/AntdInputNumber.react.js +63 -54
- package/src/lib/fragments/dataEntry/AntdMentions.react.js +65 -63
- package/src/lib/fragments/dataEntry/AntdOTP.react.js +45 -34
- package/src/lib/fragments/dataEntry/AntdRadioGroup.react.js +92 -68
- package/src/lib/fragments/dataEntry/AntdRate.react.js +44 -33
- package/src/lib/fragments/dataEntry/AntdSegmentedColoring.react.js +194 -151
- package/src/lib/fragments/dataEntry/AntdSelect.react.js +232 -169
- package/src/lib/fragments/dataEntry/AntdSlider.react.js +58 -45
- package/src/lib/fragments/dataEntry/AntdSwitch.react.js +43 -33
- package/src/lib/fragments/dataEntry/AntdTimePicker.react.js +68 -47
- package/src/lib/fragments/dataEntry/AntdTimeRangePicker.react.js +105 -64
- package/src/lib/fragments/dataEntry/AntdTransfer.react.js +75 -59
- package/src/lib/fragments/dataEntry/AntdTreeSelect.react.js +154 -135
- package/src/lib/fragments/dataEntry/check-card/AntdCheckCard.react.js +34 -25
- package/src/lib/fragments/dataEntry/check-card/AntdCheckCardGroup.react.js +35 -26
- package/src/lib/fragments/dataEntry/form/AntdForm.react.js +45 -31
- package/src/lib/fragments/dataEntry/form/AntdFormItem.react.js +21 -10
- package/src/lib/fragments/formRender/AntdFormRender.react.js +45 -49
- package/src/lib/fragments/upload/AntdDraggerUpload.react.js +548 -339
- package/src/lib/fragments/upload/AntdPictureUpload.react.js +417 -282
- package/src/lib/fragments/upload/AntdUpload.react.js +554 -336
- package/src/lib/hooks/useCss.js +1 -1
- package/src/lib/hooks/useStickyOffset.js +103 -84
- package/src/lib/index.js +3 -5
- package/src/lib/internal_components/UtilsLink.react.js +10 -5
- package/src/lib/store/formStore.js +52 -45
- package/tests/__init__.py +0 -0
- package/tests/requirements.txt +5 -0
- package/tests/test_basic_usage.py +19 -0
- package/tests/test_locale_french.py +33 -0
- package/usage.py +3 -4
- package/webpack.config.js +6 -15
- package/bug_fix.py +0 -21
- package/feffery_antd_components/utils.py +0 -262
- package/release-to-test-pypi.sh +0 -1
- package/review_checklist.md +0 -47
- package/src/jl/'feffery'_antdaccordion.jl +0 -56
- package/src/jl/'feffery'_antdaffix.jl +0 -35
- package/src/jl/'feffery'_antdalert.jl +0 -37
- package/src/jl/'feffery'_antdanchor.jl +0 -39
- package/src/jl/'feffery'_antdavatar.jl +0 -45
- package/src/jl/'feffery'_antdavatargroup.jl +0 -49
- package/src/jl/'feffery'_antdbacktop.jl +0 -31
- package/src/jl/'feffery'_antdbadge.jl +0 -53
- package/src/jl/'feffery'_antdbreadcrumb.jl +0 -51
- package/src/jl/'feffery'_antdbutton.jl +0 -72
- package/src/jl/'feffery'_antdcalendar.jl +0 -50
- package/src/jl/'feffery'_antdcard.jl +0 -70
- package/src/jl/'feffery'_antdcardgrid.jl +0 -34
- package/src/jl/'feffery'_antdcardmeta.jl +0 -26
- package/src/jl/'feffery'_antdcarousel.jl +0 -56
- package/src/jl/'feffery'_antdcascader.jl +0 -75
- package/src/jl/'feffery'_antdcenter.jl +0 -34
- package/src/jl/'feffery'_antdcheckabletag.jl +0 -28
- package/src/jl/'feffery'_antdcheckbox.jl +0 -44
- package/src/jl/'feffery'_antdcheckboxgroup.jl +0 -44
- package/src/jl/'feffery'_antdcheckcard.jl +0 -49
- package/src/jl/'feffery'_antdcheckcardgroup.jl +0 -52
- package/src/jl/'feffery'_antdcol.jl +0 -82
- package/src/jl/'feffery'_antdcollapse.jl +0 -57
- package/src/jl/'feffery'_antdcolorpicker.jl +0 -61
- package/src/jl/'feffery'_antdcomment.jl +0 -66
- package/src/jl/'feffery'_antdcompact.jl +0 -34
- package/src/jl/'feffery'_antdconfigprovider.jl +0 -52
- package/src/jl/'feffery'_antdcontent.jl +0 -30
- package/src/jl/'feffery'_antdcopytext.jl +0 -31
- package/src/jl/'feffery'_antdcountdown.jl +0 -35
- package/src/jl/'feffery'_antdcountup.jl +0 -32
- package/src/jl/'feffery'_antdcustomskeleton.jl +0 -42
- package/src/jl/'feffery'_antddatepicker.jl +0 -99
- package/src/jl/'feffery'_antddaterangepicker.jl +0 -98
- package/src/jl/'feffery'_antddescriptionitem.jl +0 -41
- package/src/jl/'feffery'_antddescriptions.jl +0 -71
- package/src/jl/'feffery'_antddivider.jl +0 -47
- package/src/jl/'feffery'_antddraggerupload.jl +0 -117
- package/src/jl/'feffery'_antddrawer.jl +0 -72
- package/src/jl/'feffery'_antddropdown.jl +0 -91
- package/src/jl/'feffery'_antdempty.jl +0 -47
- package/src/jl/'feffery'_antdflex.jl +0 -41
- package/src/jl/'feffery'_antdfloatbutton.jl +0 -39
- package/src/jl/'feffery'_antdfloatbuttongroup.jl +0 -44
- package/src/jl/'feffery'_antdfooter.jl +0 -30
- package/src/jl/'feffery'_antdform.jl +0 -53
- package/src/jl/'feffery'_antdformitem.jl +0 -55
- package/src/jl/'feffery'_antdformrender.jl +0 -229
- package/src/jl/'feffery'_antdhappyprovider.jl +0 -28
- package/src/jl/'feffery'_antdheader.jl +0 -30
- package/src/jl/'feffery'_antdicon.jl +0 -31
- package/src/jl/'feffery'_antdimage.jl +0 -49
- package/src/jl/'feffery'_antdimagegroup.jl +0 -53
- package/src/jl/'feffery'_antdinput.jl +0 -94
- package/src/jl/'feffery'_antdinputnumber.jl +0 -67
- package/src/jl/'feffery'_antdlayout.jl +0 -30
- package/src/jl/'feffery'_antdmentions.jl +0 -56
- package/src/jl/'feffery'_antdmenu.jl +0 -58
- package/src/jl/'feffery'_antdmessage.jl +0 -31
- package/src/jl/'feffery'_antdmodal.jl +0 -128
- package/src/jl/'feffery'_antdnotification.jl +0 -52
- package/src/jl/'feffery'_antdotp.jl +0 -43
- package/src/jl/'feffery'_antdpageheader.jl +0 -40
- package/src/jl/'feffery'_antdpagination.jl +0 -61
- package/src/jl/'feffery'_antdparagraph.jl +0 -48
- package/src/jl/'feffery'_antdpictureupload.jl +0 -137
- package/src/jl/'feffery'_antdpopconfirm.jl +0 -105
- package/src/jl/'feffery'_antdpopover.jl +0 -60
- package/src/jl/'feffery'_antdpopupcard.jl +0 -67
- package/src/jl/'feffery'_antdprogress.jl +0 -71
- package/src/jl/'feffery'_antdqrcode.jl +0 -51
- package/src/jl/'feffery'_antdradiogroup.jl +0 -55
- package/src/jl/'feffery'_antdrate.jl +0 -47
- package/src/jl/'feffery'_antdresult.jl +0 -29
- package/src/jl/'feffery'_antdribbon.jl +0 -34
- package/src/jl/'feffery'_antdrow.jl +0 -44
- package/src/jl/'feffery'_antdsegmented.jl +0 -56
- package/src/jl/'feffery'_antdsegmentedcoloring.jl +0 -59
- package/src/jl/'feffery'_antdselect.jl +0 -102
- package/src/jl/'feffery'_antdsider.jl +0 -43
- package/src/jl/'feffery'_antdskeleton.jl +0 -62
- package/src/jl/'feffery'_antdskeletonavatar.jl +0 -29
- package/src/jl/'feffery'_antdskeletonbutton.jl +0 -31
- package/src/jl/'feffery'_antdskeletonimage.jl +0 -23
- package/src/jl/'feffery'_antdskeletoninput.jl +0 -27
- package/src/jl/'feffery'_antdslider.jl +0 -73
- package/src/jl/'feffery'_antdspace.jl +0 -46
- package/src/jl/'feffery'_antdspin.jl +0 -49
- package/src/jl/'feffery'_antdsplitter.jl +0 -44
- package/src/jl/'feffery'_antdspoiler.jl +0 -44
- package/src/jl/'feffery'_antdstatistic.jl +0 -37
- package/src/jl/'feffery'_antdsteps.jl +0 -49
- package/src/jl/'feffery'_antdswitch.jl +0 -51
- package/src/jl/'feffery'_antdtable.jl +0 -447
- package/src/jl/'feffery'_antdtabs.jl +0 -84
- package/src/jl/'feffery'_antdtag.jl +0 -34
- package/src/jl/'feffery'_antdtext.jl +0 -46
- package/src/jl/'feffery'_antdtimeline.jl +0 -35
- package/src/jl/'feffery'_antdtimepicker.jl +0 -79
- package/src/jl/'feffery'_antdtimerangepicker.jl +0 -73
- package/src/jl/'feffery'_antdtitle.jl +0 -44
- package/src/jl/'feffery'_antdtooltip.jl +0 -64
- package/src/jl/'feffery'_antdtour.jl +0 -68
- package/src/jl/'feffery'_antdtransfer.jl +0 -71
- package/src/jl/'feffery'_antdtree.jl +0 -96
- package/src/jl/'feffery'_antdtreeselect.jl +0 -101
- package/src/jl/'feffery'_antdupload.jl +0 -131
- package/src/jl/'feffery'_antdwatermark.jl +0 -48
- package/src/jl/'feffery'_fragment.jl +0 -27
- package/tests/dataDisplay/AntdTable/feat_sticky_header.py +0 -81
- package/tests/dataEntry/AntdDateRangePicker/feat_prefix.py +0 -21
- package/tests/dataEntry/AntdDateRangePicker/feat_suffix_icon.py +0 -21
- package/tests/dataEntry/AntdTimeRangePicker/feat_prefix.py +0 -21
- package/tests/dataEntry/AntdTimeRangePicker/feat_suffix_icon.py +0 -21
- package/tests/general/AntdFloatButtonGroup/feat_placement.py +0 -83
- package/tests/other/AntdConfigProvider/feat_use_css.py +0 -67
- /package/{fac-logo.svg → imgs/fac-logo.svg} +0 -0
- /package/{images → imgs}//345/205/254/344/274/227/345/217/267.png" +0 -0
- /package/{images → imgs}//345/233/275/351/231/205/345/214/226/347/244/272/344/276/213_de-de.png" +0 -0
- /package/{images → imgs}//345/233/275/351/231/205/345/214/226/347/244/272/344/276/213_en-us.png" +0 -0
- /package/{images → imgs}//347/237/245/350/257/206/346/230/237/347/220/203.jpg" +0 -0
|
@@ -14,7 +14,10 @@ import FormContext from '../../../contexts/FormContext';
|
|
|
14
14
|
// 状态管理
|
|
15
15
|
import useFormStore from '../../../store/formStore';
|
|
16
16
|
// 参数类型
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
propTypes,
|
|
19
|
+
defaultProps,
|
|
20
|
+
} from '../../../components/dataEntry/check-card/AntdCheckCardGroup.react';
|
|
18
21
|
|
|
19
22
|
/**
|
|
20
23
|
* 组合选择卡片组件AntdCheckCardGroup
|
|
@@ -43,20 +46,20 @@ const AntdCheckCardGroup = (props) => {
|
|
|
43
46
|
...others
|
|
44
47
|
} = props;
|
|
45
48
|
|
|
46
|
-
const context = useContext(PropsContext)
|
|
47
|
-
const formId = useContext(FormContext)
|
|
49
|
+
const context = useContext(PropsContext);
|
|
50
|
+
const formId = useContext(FormContext);
|
|
48
51
|
|
|
49
|
-
const updateItemValue = useFormStore((state) => state.updateItemValue)
|
|
50
|
-
const deleteItemValue = useFormStore((state) => state.deleteItemValue)
|
|
52
|
+
const updateItemValue = useFormStore((state) => state.updateItemValue);
|
|
53
|
+
const deleteItemValue = useFormStore((state) => state.deleteItemValue);
|
|
51
54
|
|
|
52
55
|
// 处理AntdForm表单值搜集功能
|
|
53
56
|
useEffect(() => {
|
|
54
57
|
// 若上文中存在有效表单id
|
|
55
58
|
if (formId && (name || id) && enableBatchControl) {
|
|
56
59
|
// 表单值更新
|
|
57
|
-
updateItemValue(formId, name || id, value)
|
|
60
|
+
updateItemValue(formId, name || id, value);
|
|
58
61
|
}
|
|
59
|
-
}, [value, name, id])
|
|
62
|
+
}, [value, name, id]);
|
|
60
63
|
|
|
61
64
|
// 处理组件卸载后,对应表单项值的清除
|
|
62
65
|
useEffect(() => {
|
|
@@ -64,28 +67,33 @@ const AntdCheckCardGroup = (props) => {
|
|
|
64
67
|
// 若上文中存在有效表单id
|
|
65
68
|
if (formId && (name || id) && enableBatchControl) {
|
|
66
69
|
// 表单值更新
|
|
67
|
-
deleteItemValue(formId, name || id)
|
|
70
|
+
deleteItemValue(formId, name || id);
|
|
68
71
|
}
|
|
69
|
-
}
|
|
70
|
-
}, [name, id])
|
|
72
|
+
};
|
|
73
|
+
}, [name, id]);
|
|
71
74
|
|
|
72
75
|
useEffect(() => {
|
|
73
76
|
if (defaultValue && !value) {
|
|
74
|
-
setProps({ value: defaultValue })
|
|
77
|
+
setProps({ value: defaultValue });
|
|
75
78
|
}
|
|
76
|
-
}, [])
|
|
79
|
+
}, []);
|
|
77
80
|
|
|
78
|
-
children = parseChildrenToArray(children)
|
|
81
|
+
children = parseChildrenToArray(children);
|
|
79
82
|
|
|
80
83
|
return (
|
|
81
84
|
<CheckCard.Group
|
|
82
85
|
// 提取具有data-*或aria-*通配格式的属性
|
|
83
|
-
{...pickBy(
|
|
86
|
+
{...pickBy(
|
|
87
|
+
(_, k) => k.startsWith('data-') || k.startsWith('aria-'),
|
|
88
|
+
others
|
|
89
|
+
)}
|
|
84
90
|
id={id}
|
|
85
91
|
className={
|
|
86
|
-
isString(className)
|
|
87
|
-
className
|
|
88
|
-
|
|
92
|
+
isString(className)
|
|
93
|
+
? className
|
|
94
|
+
: className
|
|
95
|
+
? useCss(className)
|
|
96
|
+
: undefined
|
|
89
97
|
}
|
|
90
98
|
style={style}
|
|
91
99
|
key={key}
|
|
@@ -94,30 +102,31 @@ const AntdCheckCardGroup = (props) => {
|
|
|
94
102
|
value={value}
|
|
95
103
|
defaultValue={defaultValue}
|
|
96
104
|
disabled={
|
|
97
|
-
context && !isUndefined(context.componentDisabled)
|
|
98
|
-
context.componentDisabled
|
|
99
|
-
disabled
|
|
105
|
+
context && !isUndefined(context.componentDisabled)
|
|
106
|
+
? context.componentDisabled
|
|
107
|
+
: disabled
|
|
100
108
|
}
|
|
101
109
|
size={size}
|
|
102
110
|
onChange={(e) => {
|
|
103
111
|
// 只读模式下不进行值更新
|
|
104
112
|
if (!readOnly) {
|
|
105
113
|
if (allowNoValue) {
|
|
106
|
-
setProps({ value: e })
|
|
114
|
+
setProps({ value: e });
|
|
107
115
|
} else {
|
|
108
116
|
if (e && e.length !== 0) {
|
|
109
|
-
setProps({ value: e })
|
|
117
|
+
setProps({ value: e });
|
|
110
118
|
}
|
|
111
119
|
}
|
|
112
120
|
}
|
|
113
121
|
}}
|
|
114
|
-
data-dash-is-loading={useLoading()}
|
|
122
|
+
data-dash-is-loading={useLoading()}
|
|
123
|
+
>
|
|
115
124
|
{children}
|
|
116
|
-
</
|
|
125
|
+
</CheckCard.Group>
|
|
117
126
|
);
|
|
118
|
-
}
|
|
127
|
+
};
|
|
119
128
|
|
|
120
129
|
export default AntdCheckCardGroup;
|
|
121
130
|
|
|
122
131
|
AntdCheckCardGroup.defaultProps = defaultProps;
|
|
123
|
-
AntdCheckCardGroup.propTypes = propTypes;
|
|
132
|
+
AntdCheckCardGroup.propTypes = propTypes;
|
|
@@ -14,13 +14,16 @@ import FormContext from '../../../contexts/FormContext';
|
|
|
14
14
|
// 状态管理
|
|
15
15
|
import useFormStore from '../../../store/formStore';
|
|
16
16
|
// 参数类型
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
propTypes,
|
|
19
|
+
defaultProps,
|
|
20
|
+
} from '../../../components/dataEntry/form/AntdForm.react';
|
|
18
21
|
|
|
19
22
|
/**
|
|
20
23
|
* 表单组件AntdForm
|
|
21
24
|
*/
|
|
22
25
|
const AntdForm = (props) => {
|
|
23
|
-
|
|
26
|
+
const {
|
|
24
27
|
id,
|
|
25
28
|
children,
|
|
26
29
|
className,
|
|
@@ -42,12 +45,14 @@ const AntdForm = (props) => {
|
|
|
42
45
|
} = props;
|
|
43
46
|
|
|
44
47
|
// 订阅当前表单值搜集状态的变动
|
|
45
|
-
const _values = useFormStore((state) => state.values[id])
|
|
48
|
+
const _values = useFormStore((state) => state.values[id]);
|
|
46
49
|
|
|
47
|
-
const updateFormValues = useFormStore((state) => state.updateFormValues)
|
|
48
|
-
const updateValidateStatuses = useFormStore(
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
const updateFormValues = useFormStore((state) => state.updateFormValues);
|
|
51
|
+
const updateValidateStatuses = useFormStore(
|
|
52
|
+
(state) => state.updateValidateStatuses
|
|
53
|
+
);
|
|
54
|
+
const updateHelps = useFormStore((state) => state.updateHelps);
|
|
55
|
+
const updateTooltips = useFormStore((state) => state.updateTooltips);
|
|
51
56
|
|
|
52
57
|
// 调试用
|
|
53
58
|
// console.log('='.repeat(50))
|
|
@@ -57,54 +62,62 @@ const AntdForm = (props) => {
|
|
|
57
62
|
useUnmount(() => {
|
|
58
63
|
// 处理内存泄漏及相关的其他问题
|
|
59
64
|
if (enableBatchControl && id) {
|
|
60
|
-
updateFormValues(id, undefined)
|
|
65
|
+
updateFormValues(id, undefined);
|
|
61
66
|
}
|
|
62
|
-
})
|
|
67
|
+
});
|
|
63
68
|
|
|
64
69
|
// _values状态响应value变化
|
|
65
70
|
useEffect(() => {
|
|
66
71
|
if (enableBatchControl && id) {
|
|
67
|
-
updateFormValues(id, values)
|
|
72
|
+
updateFormValues(id, values);
|
|
68
73
|
}
|
|
69
|
-
}, [values])
|
|
74
|
+
}, [values]);
|
|
70
75
|
|
|
71
76
|
// value响应_value状态变化
|
|
72
77
|
useEffect(() => {
|
|
73
|
-
if (
|
|
74
|
-
|
|
78
|
+
if (
|
|
79
|
+
enableBatchControl &&
|
|
80
|
+
id &&
|
|
81
|
+
!isUndefined(_values) &&
|
|
82
|
+
!isEmpty(_values)
|
|
83
|
+
) {
|
|
84
|
+
setProps({ values: _values });
|
|
75
85
|
}
|
|
76
|
-
}, [_values])
|
|
86
|
+
}, [_values]);
|
|
77
87
|
|
|
78
88
|
useEffect(() => {
|
|
79
89
|
if (enableBatchControl && id) {
|
|
80
|
-
updateValidateStatuses(id, validateStatuses || {})
|
|
90
|
+
updateValidateStatuses(id, validateStatuses || {});
|
|
81
91
|
}
|
|
82
|
-
}, [validateStatuses])
|
|
92
|
+
}, [validateStatuses]);
|
|
83
93
|
|
|
84
94
|
useEffect(() => {
|
|
85
95
|
if (enableBatchControl && id) {
|
|
86
|
-
updateHelps(id, helps || {})
|
|
96
|
+
updateHelps(id, helps || {});
|
|
87
97
|
}
|
|
88
|
-
}, [helps])
|
|
98
|
+
}, [helps]);
|
|
89
99
|
|
|
90
100
|
useEffect(() => {
|
|
91
101
|
if (enableBatchControl && id) {
|
|
92
|
-
updateTooltips(id, tooltips || {})
|
|
102
|
+
updateTooltips(id, tooltips || {});
|
|
93
103
|
}
|
|
94
|
-
}, [tooltips])
|
|
104
|
+
}, [tooltips]);
|
|
95
105
|
|
|
96
106
|
return (
|
|
97
|
-
<FormContext.Provider
|
|
98
|
-
value={enableBatchControl ? id : null}
|
|
99
|
-
>
|
|
107
|
+
<FormContext.Provider value={enableBatchControl ? id : null}>
|
|
100
108
|
<Form
|
|
101
109
|
// 提取具有data-*或aria-*通配格式的属性
|
|
102
|
-
{...pickBy(
|
|
110
|
+
{...pickBy(
|
|
111
|
+
(_, k) => k.startsWith('data-') || k.startsWith('aria-'),
|
|
112
|
+
others
|
|
113
|
+
)}
|
|
103
114
|
id={id}
|
|
104
115
|
className={
|
|
105
|
-
isString(className)
|
|
106
|
-
className
|
|
107
|
-
|
|
116
|
+
isString(className)
|
|
117
|
+
? className
|
|
118
|
+
: className
|
|
119
|
+
? useCss(className)
|
|
120
|
+
: undefined
|
|
108
121
|
}
|
|
109
122
|
style={style}
|
|
110
123
|
key={key}
|
|
@@ -114,14 +127,15 @@ const AntdForm = (props) => {
|
|
|
114
127
|
labelAlign={labelAlign}
|
|
115
128
|
labelWrap={labelWrap}
|
|
116
129
|
layout={layout}
|
|
117
|
-
data-dash-is-loading={useLoading()}
|
|
130
|
+
data-dash-is-loading={useLoading()}
|
|
131
|
+
>
|
|
118
132
|
{children}
|
|
119
133
|
</Form>
|
|
120
|
-
</FormContext.Provider
|
|
134
|
+
</FormContext.Provider>
|
|
121
135
|
);
|
|
122
|
-
}
|
|
136
|
+
};
|
|
123
137
|
|
|
124
138
|
export default AntdForm;
|
|
125
139
|
|
|
126
140
|
AntdForm.defaultProps = defaultProps;
|
|
127
|
-
AntdForm.propTypes = propTypes;
|
|
141
|
+
AntdForm.propTypes = propTypes;
|
|
@@ -13,7 +13,10 @@ import FormContext from '../../../contexts/FormContext';
|
|
|
13
13
|
// 状态管理
|
|
14
14
|
import useFormStore from '../../../store/formStore';
|
|
15
15
|
// 参数类型
|
|
16
|
-
import {
|
|
16
|
+
import {
|
|
17
|
+
propTypes,
|
|
18
|
+
defaultProps,
|
|
19
|
+
} from '../../../components/dataEntry/form/AntdFormItem.react';
|
|
17
20
|
|
|
18
21
|
const { Item } = Form;
|
|
19
22
|
|
|
@@ -21,7 +24,7 @@ const { Item } = Form;
|
|
|
21
24
|
* 表单项组件AntdFormItem
|
|
22
25
|
*/
|
|
23
26
|
const AntdFormItem = (props) => {
|
|
24
|
-
|
|
27
|
+
const {
|
|
25
28
|
id,
|
|
26
29
|
children,
|
|
27
30
|
className,
|
|
@@ -45,19 +48,26 @@ const AntdFormItem = (props) => {
|
|
|
45
48
|
} = props;
|
|
46
49
|
|
|
47
50
|
const formId = useContext(FormContext);
|
|
48
|
-
const _validateStatus = useFormStore(
|
|
51
|
+
const _validateStatus = useFormStore(
|
|
52
|
+
(state) => state.validateStatuses?.[formId]?.[label]
|
|
53
|
+
);
|
|
49
54
|
const _help = useFormStore((state) => state.helps?.[formId]?.[label]);
|
|
50
55
|
const _tooltip = useFormStore((state) => state.tooltips?.[formId]?.[label]);
|
|
51
56
|
|
|
52
57
|
return (
|
|
53
58
|
<Item
|
|
54
59
|
// 提取具有data-*或aria-*通配格式的属性
|
|
55
|
-
{...pickBy(
|
|
60
|
+
{...pickBy(
|
|
61
|
+
(_, k) => k.startsWith('data-') || k.startsWith('aria-'),
|
|
62
|
+
others
|
|
63
|
+
)}
|
|
56
64
|
id={id}
|
|
57
65
|
className={
|
|
58
|
-
isString(className)
|
|
59
|
-
className
|
|
60
|
-
|
|
66
|
+
isString(className)
|
|
67
|
+
? className
|
|
68
|
+
: className
|
|
69
|
+
? useCss(className)
|
|
70
|
+
: undefined
|
|
61
71
|
}
|
|
62
72
|
style={style}
|
|
63
73
|
key={key}
|
|
@@ -74,13 +84,14 @@ const AntdFormItem = (props) => {
|
|
|
74
84
|
required={required}
|
|
75
85
|
validateStatus={validateStatus || (formId && _validateStatus)}
|
|
76
86
|
layout={layout}
|
|
77
|
-
data-dash-is-loading={useLoading()}
|
|
87
|
+
data-dash-is-loading={useLoading()}
|
|
88
|
+
>
|
|
78
89
|
{children}
|
|
79
90
|
</Item>
|
|
80
91
|
);
|
|
81
|
-
}
|
|
92
|
+
};
|
|
82
93
|
|
|
83
94
|
export default React.memo(AntdFormItem);
|
|
84
95
|
|
|
85
96
|
AntdFormItem.defaultProps = defaultProps;
|
|
86
|
-
AntdFormItem.propTypes = propTypes;
|
|
97
|
+
AntdFormItem.propTypes = propTypes;
|
|
@@ -3,13 +3,15 @@ import FormRender, { useForm } from 'form-render';
|
|
|
3
3
|
import { Cascader } from 'antd';
|
|
4
4
|
import { isString } from 'lodash';
|
|
5
5
|
import useCss from '../../hooks/useCss';
|
|
6
|
-
import {
|
|
7
|
-
|
|
6
|
+
import {
|
|
7
|
+
propTypes,
|
|
8
|
+
defaultProps,
|
|
9
|
+
} from '../../components/formRender/AntdFormRender.react';
|
|
8
10
|
|
|
9
11
|
// 定义表单生成组件AntdFormRender,api参数参考https://xrender.fun/form-render/api-props
|
|
10
12
|
const AntdFormRender = (props) => {
|
|
11
13
|
// 取得必要属性或参数
|
|
12
|
-
|
|
14
|
+
const {
|
|
13
15
|
id,
|
|
14
16
|
className,
|
|
15
17
|
style,
|
|
@@ -40,11 +42,11 @@ const AntdFormRender = (props) => {
|
|
|
40
42
|
resetForm,
|
|
41
43
|
resetFormClicks,
|
|
42
44
|
setProps,
|
|
43
|
-
loading_state
|
|
45
|
+
loading_state,
|
|
44
46
|
} = props;
|
|
45
47
|
|
|
46
48
|
function evalAllValidator(json) {
|
|
47
|
-
for (
|
|
49
|
+
for (const key in json) {
|
|
48
50
|
if (typeof json[key] === 'object') {
|
|
49
51
|
json[key] = evalAllValidator(json[key]);
|
|
50
52
|
} else if (key === 'validator') {
|
|
@@ -55,56 +57,48 @@ const AntdFormRender = (props) => {
|
|
|
55
57
|
}
|
|
56
58
|
|
|
57
59
|
const cascader = (props) => {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
<Cascader
|
|
61
|
-
{...props}
|
|
62
|
-
onChange={(e) => props.onChange(e)}
|
|
63
|
-
/>
|
|
64
|
-
)
|
|
65
|
-
}
|
|
60
|
+
return <Cascader {...props} onChange={(e) => props.onChange(e)} />;
|
|
61
|
+
};
|
|
66
62
|
|
|
67
63
|
const form = useForm();
|
|
68
64
|
|
|
69
65
|
const onFinish = (data) => {
|
|
70
|
-
setProps({ validateStatuses: true })
|
|
71
|
-
setProps({ values: data })
|
|
72
|
-
}
|
|
66
|
+
setProps({ validateStatuses: true });
|
|
67
|
+
setProps({ values: data });
|
|
68
|
+
};
|
|
73
69
|
|
|
74
70
|
const onFinishFailed = (data) => {
|
|
75
|
-
setProps({ validateStatuses: false })
|
|
76
|
-
setProps({ values: data.values })
|
|
77
|
-
}
|
|
71
|
+
setProps({ validateStatuses: false });
|
|
72
|
+
setProps({ values: data.values });
|
|
73
|
+
};
|
|
78
74
|
|
|
79
75
|
const schemaConfig = useMemo(() => {
|
|
80
76
|
if (schema) {
|
|
81
|
-
|
|
77
|
+
const schemaJson = JSON.parse(JSON.stringify(schema));
|
|
82
78
|
return evalAllValidator(schemaJson);
|
|
83
79
|
}
|
|
84
80
|
}, [schema]);
|
|
85
81
|
|
|
86
82
|
const footerConfig = useMemo(() => {
|
|
87
|
-
if (typeof
|
|
88
|
-
return footer
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
} else {
|
|
93
|
-
return {
|
|
94
|
-
submit: {
|
|
95
|
-
text: footer?.submit?.text,
|
|
96
|
-
hide: footer?.submit?.hide,
|
|
97
|
-
...footer?.submit?.btnProps
|
|
98
|
-
},
|
|
99
|
-
reset: {
|
|
100
|
-
text: footer?.reset?.text,
|
|
101
|
-
hide: footer?.reset?.hide,
|
|
102
|
-
...footer?.reset?.btnProps
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
83
|
+
if (typeof footer === 'boolean') {
|
|
84
|
+
return footer;
|
|
85
|
+
}
|
|
86
|
+
if ('$$typeof' in footer) {
|
|
87
|
+
return () => <>{footer}</>;
|
|
106
88
|
}
|
|
107
|
-
|
|
89
|
+
return {
|
|
90
|
+
submit: {
|
|
91
|
+
text: footer?.submit?.text,
|
|
92
|
+
hide: footer?.submit?.hide,
|
|
93
|
+
...footer?.submit?.btnProps,
|
|
94
|
+
},
|
|
95
|
+
reset: {
|
|
96
|
+
text: footer?.reset?.text,
|
|
97
|
+
hide: footer?.reset?.hide,
|
|
98
|
+
...footer?.reset?.btnProps,
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
}, [footer]);
|
|
108
102
|
|
|
109
103
|
const watchConfig = useMemo(() => {
|
|
110
104
|
if (watch) {
|
|
@@ -112,11 +106,11 @@ const AntdFormRender = (props) => {
|
|
|
112
106
|
Object.entries(watch).map(([key, value]) => [key, eval(value)])
|
|
113
107
|
);
|
|
114
108
|
}
|
|
115
|
-
}, [watch])
|
|
109
|
+
}, [watch]);
|
|
116
110
|
|
|
117
111
|
useEffect(() => {
|
|
118
112
|
form.setValues(values);
|
|
119
|
-
}, [values])
|
|
113
|
+
}, [values]);
|
|
120
114
|
|
|
121
115
|
useEffect(() => {
|
|
122
116
|
if (submitForm) {
|
|
@@ -124,7 +118,7 @@ const AntdFormRender = (props) => {
|
|
|
124
118
|
setProps({ submitFormClicks: submitFormClicks + 1 });
|
|
125
119
|
setProps({ submitForm: false });
|
|
126
120
|
}
|
|
127
|
-
}, [submitForm])
|
|
121
|
+
}, [submitForm]);
|
|
128
122
|
|
|
129
123
|
useEffect(() => {
|
|
130
124
|
if (resetForm) {
|
|
@@ -132,16 +126,18 @@ const AntdFormRender = (props) => {
|
|
|
132
126
|
setProps({ resetFormClicks: resetFormClicks + 1 });
|
|
133
127
|
setProps({ resetForm: false });
|
|
134
128
|
}
|
|
135
|
-
}, [resetForm])
|
|
129
|
+
}, [resetForm]);
|
|
136
130
|
|
|
137
131
|
return (
|
|
138
132
|
<FormRender
|
|
139
133
|
id={id}
|
|
140
134
|
form={form}
|
|
141
135
|
className={
|
|
142
|
-
isString(className)
|
|
143
|
-
className
|
|
144
|
-
|
|
136
|
+
isString(className)
|
|
137
|
+
? className
|
|
138
|
+
: className
|
|
139
|
+
? useCss(className)
|
|
140
|
+
: undefined
|
|
145
141
|
}
|
|
146
142
|
style={style}
|
|
147
143
|
key={key}
|
|
@@ -172,9 +168,9 @@ const AntdFormRender = (props) => {
|
|
|
172
168
|
}
|
|
173
169
|
/>
|
|
174
170
|
);
|
|
175
|
-
}
|
|
171
|
+
};
|
|
176
172
|
|
|
177
173
|
export default React.memo(AntdFormRender);
|
|
178
174
|
|
|
179
175
|
AntdFormRender.defaultProps = defaultProps;
|
|
180
|
-
AntdFormRender.propTypes = propTypes;
|
|
176
|
+
AntdFormRender.propTypes = propTypes;
|