diff --git a/src/properties/DynaActionForm.tsx b/src/properties/DynaActionForm.tsx index f81b087..da20ce9 100644 --- a/src/properties/DynaActionForm.tsx +++ b/src/properties/DynaActionForm.tsx @@ -177,8 +177,6 @@ const DynaActionForm = ({ library = 'cn.asany.ui.editor.properties', ...props }: // eslint-disable-next-line react-hooks/exhaustive-deps }, [value]); - console.log('groups', groups); - return (
{groups.filter(visibleFilter(value)).map(({ id, name, layout, fields }) => ( diff --git a/src/properties/combine/MultipleWrapper.tsx b/src/properties/combine/MultipleWrapper.tsx index 81a191d..335eba7 100644 --- a/src/properties/combine/MultipleWrapper.tsx +++ b/src/properties/combine/MultipleWrapper.tsx @@ -1,7 +1,7 @@ // import Sortable, { ISortableItem, SortableItemContentProps } from '../../sortable'; import React, { memo, useRef, useState } from 'react'; -import Sortable from '@asany/sortable'; +import Sortable, { SortableItemProps } from '@asany/sortable'; import { Icon } from '@asany/icons'; import { generateUUID } from '../../utils'; @@ -52,23 +52,14 @@ export interface MultipleWrapperProps { immediatelyShowPopoverWhenCreated: boolean; value: any[]; - initializer?: (data: IMultipleWrapperData) => IMultipleWrapperData; + initializer?: (data: IMultipleWrapperData) => any; onChange: (value: IMultipleWrapperData[]) => void; pipeline?: (value: IMultipleWrapperData[], current: IMultipleWrapperData) => IMultipleWrapperData[]; } -interface ItemRenderProps { - drag: any; - data: any; - onDelete: any; - onChange: any; - showPopoverImmediatelyAtCreated: boolean; -} - -type ItemRender = (props: ItemRenderProps) => React.ReactElement; +type ItemRender = (props: any) => React.ReactElement; type BuildItemRenderOptions = { - buildDelete: (data: IMultipleWrapperData) => () => void; buildChange: (data: IMultipleWrapperData) => (newData: any) => void; className?: string; showPopoverImmediatelyAtCreated: boolean; @@ -76,25 +67,29 @@ type BuildItemRenderOptions = { }; const buildItemRender = (XItemRender: ItemRender | undefined, options: BuildItemRenderOptions) => { - const { children, className, buildChange, buildDelete, showPopoverImmediatelyAtCreated } = options; + const { children, className, buildChange, showPopoverImmediatelyAtCreated } = options; const InnerItemRender = React.forwardRef((props: any, ref: any) => { if (!children && !XItemRender) { return ; } return XItemRender ? : React.cloneElement(children, { ...props, ref }); }); - return ({ data, drag, ...props }: any /*SortableItemContentProps*/, ref: any) => { - console.log('popoverContentVisible', showPopoverImmediatelyAtCreated); - const itemRenderProps: ItemRenderProps = { + return ( + { data, drag, remove, update, dragging, indicator, animated, level, index, ...props }: SortableItemProps, + ref: any + ) => { + const itemRenderProps = { + level, + index, drag, data, - onDelete: buildDelete(data as any), + onDelete: remove, onChange: buildChange(data as any), showPopoverImmediatelyAtCreated, }; return ( -
  • +
  • ); @@ -190,7 +185,7 @@ export function MultipleWrapper(props: MultipleWrapperProps) { return; } const item = getAddItem(sortableType.current, itemName, canSortItem, getAddData); - setValue([...value, { ...(initializer ? initializer(item) : item), state: 'isNew' }]); + setValue([...value, { ...item, data: initializer ? initializer(item) : item.data, state: 'isNew' }]); }; const handleSortChange = (items: any[]) => { @@ -198,18 +193,13 @@ export function MultipleWrapper(props: MultipleWrapperProps) { setValue(items); }; - // TODO buildItemRender - const itemRender = buildItemRender(defaultItemRender, { - buildDelete: handleDelete, buildChange: handleItemChange, className: itemClassName, showPopoverImmediatelyAtCreated: immediatelyShow, children, }); - console.log('xxxx', value); - return (
    diff --git a/src/style/sketch.less b/src/style/sketch.less index 2d18d49..bcf424b 100644 --- a/src/style/sketch.less +++ b/src/style/sketch.less @@ -638,6 +638,7 @@ } } > .sortable-flipper > li { + background-color: #fff; display: flex; } > li {