@flatbiz/antd 5.0.0 → 5.0.2

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.
@@ -0,0 +1,231 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+
3
+ import { _ as _objectWithoutProperties, b as _objectSpread2, c as _toConsumableArray } from './_rollupPluginBabelHelpers-BYm17lo8.js';
4
+ import { Space, Form } from 'antd';
5
+ import { useSensors, useSensor, PointerSensor, DndContext } from '@dnd-kit/core';
6
+ import { restrictToVerticalAxis } from '@dnd-kit/modifiers';
7
+ import { useSortable, SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable';
8
+ import { noop, toArray } from '@flatbiz/utils';
9
+ import { E as EditableCard } from './editable-card-BmTHD2vj.js';
10
+ import _DragOutlined from '@ant-design/icons/es/icons/DragOutlined.js';
11
+ import { CSS } from '@dnd-kit/utilities';
12
+ import { C as CardWrapper } from './card-wrapper-w-JbDJNk.js';
13
+ import { D as DeleteNode } from './delete-node-CwCgmlIq.js';
14
+ import { I as IconWrapper } from './icon-wrapper-CR3akisG.js';
15
+ import { jsx, jsxs } from 'react/jsx-runtime';
16
+
17
+ var _excluded$1 = ["dragIcon", "rowId", "dragTriggerPosition"];
18
+ var Handle = function Handle(props) {
19
+ var dragIcon = props.dragIcon,
20
+ rowId = props.rowId,
21
+ dragTriggerPosition = props.dragTriggerPosition,
22
+ innerProps = _objectWithoutProperties(props, _excluded$1);
23
+ var dragTriggerPositionFt = dragTriggerPosition || 'left';
24
+ var _useSortable = useSortable({
25
+ id: rowId
26
+ }),
27
+ setActivatorNodeRef = _useSortable.setActivatorNodeRef,
28
+ listeners = _useSortable.listeners,
29
+ setNodeRef = _useSortable.setNodeRef,
30
+ transform = _useSortable.transform,
31
+ transition = _useSortable.transition,
32
+ isDragging = _useSortable.isDragging;
33
+ var style = _objectSpread2(_objectSpread2({}, innerProps.style), {}, {
34
+ transform: CSS.Transform.toString(transform && _objectSpread2(_objectSpread2({}, transform), {}, {
35
+ scaleY: 1
36
+ })),
37
+ transition: transition,
38
+ cursor: 'move'
39
+ }, isDragging ? {
40
+ position: 'relative',
41
+ zIndex: 9999,
42
+ boxShadow: ' 0px 0px 12px 4px rgba(34, 33, 81, 0.1)',
43
+ backgroundColor: 'var(--block-bg-color)'
44
+ } : {});
45
+ var iconElement = dragIcon || /*#__PURE__*/jsx(_DragOutlined, {});
46
+ return /*#__PURE__*/jsx("div", {
47
+ ref: setNodeRef,
48
+ style: style,
49
+ children: /*#__PURE__*/jsx(CardWrapper, {
50
+ size: "small",
51
+ style: {
52
+ marginBottom: 10
53
+ },
54
+ extra: /*#__PURE__*/jsxs(Space, {
55
+ size: 10,
56
+ children: [/*#__PURE__*/jsx(DeleteNode, {
57
+ style: {
58
+ color: 'red'
59
+ },
60
+ hidden: props.extraData.required && props.extraData.fields.length === 1,
61
+ onDelete: function onDelete() {
62
+ props.extraData.operation.remove(props.extraData.index);
63
+ }
64
+ }), dragTriggerPositionFt === 'right' ? /*#__PURE__*/jsx("span", _objectSpread2(_objectSpread2({
65
+ ref: setActivatorNodeRef,
66
+ style: {
67
+ touchAction: 'none',
68
+ cursor: 'move'
69
+ }
70
+ }, listeners), {}, {
71
+ children: /*#__PURE__*/jsx(IconWrapper, {
72
+ style: {
73
+ touchAction: 'none',
74
+ cursor: 'move',
75
+ padding: '3px',
76
+ margin: 0,
77
+ justifyContent: 'center',
78
+ color: '#787878'
79
+ },
80
+ icon: iconElement,
81
+ onClick: noop,
82
+ size: "small"
83
+ })
84
+ })) : null]
85
+ }),
86
+ title: /*#__PURE__*/jsxs(Space, {
87
+ size: 5,
88
+ children: [dragTriggerPositionFt === 'left' ? /*#__PURE__*/jsx("span", _objectSpread2(_objectSpread2({
89
+ ref: setActivatorNodeRef,
90
+ style: {
91
+ touchAction: 'none',
92
+ cursor: 'move',
93
+ display: 'flex',
94
+ alignItems: 'center',
95
+ justifyContent: 'center'
96
+ }
97
+ }, listeners), {}, {
98
+ children: /*#__PURE__*/jsx(IconWrapper, {
99
+ style: {
100
+ touchAction: 'none',
101
+ cursor: 'move',
102
+ padding: '3px',
103
+ margin: 0,
104
+ justifyContent: 'center',
105
+ color: '#787878'
106
+ },
107
+ icon: iconElement,
108
+ onClick: noop,
109
+ size: "small"
110
+ })
111
+ })) : null, /*#__PURE__*/jsxs("span", {
112
+ children: ["\u7B2C", props.extraData.index + 1, "\u884C"]
113
+ })]
114
+ }),
115
+ children: props.children
116
+ })
117
+ }, rowId);
118
+ };
119
+
120
+ var Handle2 = function Handle2(props) {
121
+ return /*#__PURE__*/jsx(CardWrapper, {
122
+ size: "small",
123
+ style: {
124
+ marginBottom: 10
125
+ },
126
+ extra: /*#__PURE__*/jsx(DeleteNode, {
127
+ style: {
128
+ color: 'red'
129
+ },
130
+ hidden: props.extraData.required && props.extraData.fields.length === 1,
131
+ onDelete: function onDelete() {
132
+ props.extraData.operation.remove(props.extraData.index);
133
+ }
134
+ }),
135
+ title: "\u7B2C".concat(props.extraData.index + 1, "\u884C"),
136
+ children: props.children
137
+ });
138
+ };
139
+
140
+ var _excluded = ["dragIcon", "uidFieldKey", "onDragChange", "disabledDrag", "formListCompleteName", "formListName", "dragTriggerPosition"];
141
+ /**
142
+ * 可拖拽编辑卡片
143
+ * ```
144
+ * 1. 卡片数组必须有唯一值字段,通过参数 uidFieldKey 告诉组件
145
+ * ```
146
+ */
147
+ var DragEditableCard = function DragEditableCard(props) {
148
+ var dragIcon = props.dragIcon,
149
+ uidFieldKey = props.uidFieldKey,
150
+ onDragChange = props.onDragChange,
151
+ disabledDrag = props.disabledDrag,
152
+ formListCompleteName = props.formListCompleteName,
153
+ formListName = props.formListName,
154
+ dragTriggerPosition = props.dragTriggerPosition,
155
+ otherProps = _objectWithoutProperties(props, _excluded);
156
+ var formListCompleteNameFt = formListCompleteName || formListName;
157
+ var form = Form.useFormInstance();
158
+ var dataList = Form.useWatch(formListCompleteNameFt, form);
159
+ var sensors = useSensors(useSensor(PointerSensor, {
160
+ activationConstraint: {
161
+ // 当拖拽触发区域有其他点击事件时,需要延迟触发拖拽动作
162
+ delay: 0,
163
+ tolerance: 0
164
+ }
165
+ }));
166
+ var onDragEnd = function onDragEnd(_ref) {
167
+ var active = _ref.active,
168
+ over = _ref.over;
169
+ if (active.id !== (over === null || over === void 0 ? void 0 : over.id)) {
170
+ var activeIndex = dataList.findIndex(function (i) {
171
+ return i[uidFieldKey] === active.id;
172
+ });
173
+ var overIndex = dataList.findIndex(function (i) {
174
+ return i[uidFieldKey] === (over === null || over === void 0 ? void 0 : over.id);
175
+ });
176
+ var dataListNew = arrayMove(dataList, activeIndex, overIndex);
177
+ form.setFields([{
178
+ name: formListCompleteNameFt,
179
+ value: dataListNew
180
+ }]);
181
+ onDragChange === null || onDragChange === void 0 || onDragChange(dataListNew, {
182
+ activeId: active.id,
183
+ overId: over === null || over === void 0 ? void 0 : over.id,
184
+ activeIndex: activeIndex,
185
+ overIndex: overIndex
186
+ });
187
+ }
188
+ };
189
+ return /*#__PURE__*/jsx(DndContext, {
190
+ sensors: sensors,
191
+ modifiers: [restrictToVerticalAxis],
192
+ onDragEnd: onDragEnd,
193
+ children: /*#__PURE__*/jsx(SortableContext, {
194
+ items: (dataList === null || dataList === void 0 ? void 0 : dataList.map(function (i) {
195
+ return i[uidFieldKey];
196
+ })) || [],
197
+ strategy: verticalListSortingStrategy,
198
+ children: /*#__PURE__*/jsx(EditableCard, _objectSpread2(_objectSpread2({
199
+ formListName: formListName,
200
+ formListCompleteName: formListCompleteName
201
+ }, otherProps), {}, {
202
+ onCustomWrapper: function onCustomWrapper(children, extraData) {
203
+ if (disabledDrag) {
204
+ return /*#__PURE__*/jsx(Handle2, {
205
+ extraData: extraData,
206
+ children: children
207
+ }, extraData.key);
208
+ }
209
+ var target = form.getFieldValue([].concat(_toConsumableArray(toArray(formListCompleteNameFt)), [extraData.fieldItem.name]));
210
+ if (!(target !== null && target !== void 0 && target[uidFieldKey])) {
211
+ console.error("\u552F\u4E00\u503C\u5B57\u6BB5\u3010".concat(uidFieldKey, "\u3011\u4E3A\u7A7A\uFF0C\u65E0\u6CD5\u8FDB\u884C\u62D6\u62FD\u6392\u5E8F"), target);
212
+ return /*#__PURE__*/jsx(Handle2, {
213
+ extraData: extraData,
214
+ children: children
215
+ }, extraData.key);
216
+ }
217
+ return /*#__PURE__*/jsx(Handle, {
218
+ dragIcon: dragIcon,
219
+ rowId: target === null || target === void 0 ? void 0 : target[uidFieldKey],
220
+ extraData: extraData,
221
+ dragTriggerPosition: dragTriggerPosition,
222
+ children: children
223
+ }, extraData.key);
224
+ }
225
+ }))
226
+ })
227
+ });
228
+ };
229
+
230
+ export { DragEditableCard as D };
231
+ //# sourceMappingURL=editable-card-C7QR8MKV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editable-card-C7QR8MKV.js","sources":["@flatbiz/antd/src/drag-editable-card/handle.tsx","@flatbiz/antd/src/drag-editable-card/handle2.tsx","@flatbiz/antd/src/drag-editable-card/editable-card.tsx"],"sourcesContent":["import { type ReactElement } from 'react';\nimport type { FormListFieldData, FormListOperation } from 'antd';\nimport { type RowProps, Space } from 'antd';\nimport { DragOutlined } from '@ant-design/icons';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { noop } from '@flatbiz/utils';\nimport { CardWrapper } from '../card-wrapper/card-wrapper.jsx';\nimport { DeleteNode } from '../delete-node/delete-node.jsx';\nimport { IconWrapper } from '../icon-wrapper/icon-wrapper.jsx';\n\ntype HandleProps = RowProps & {\n dragIcon?: ReactElement;\n rowId: string;\n children: ReactElement;\n extraData: {\n operation: FormListOperation;\n fields: FormListFieldData[];\n index: number;\n required?: boolean;\n };\n dragTriggerPosition?: 'left' | 'right';\n};\nexport const Handle = (props: HandleProps) => {\n const { dragIcon, rowId, dragTriggerPosition, ...innerProps } = props;\n\n const dragTriggerPositionFt = dragTriggerPosition || 'left';\n const {\n setActivatorNodeRef,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({\n id: rowId,\n });\n\n const style: React.CSSProperties = {\n ...innerProps.style,\n transform: CSS.Transform.toString(transform && { ...transform, scaleY: 1 }),\n transition,\n cursor: 'move',\n ...(isDragging\n ? {\n position: 'relative',\n zIndex: 9999,\n boxShadow: ' 0px 0px 12px 4px rgba(34, 33, 81, 0.1)',\n backgroundColor: 'var(--block-bg-color)',\n }\n : {}),\n };\n const iconElement = dragIcon || <DragOutlined />;\n return (\n <div ref={setNodeRef} key={rowId} style={style}>\n <CardWrapper\n size=\"small\"\n style={{ marginBottom: 10 }}\n extra={\n <Space size={10}>\n <DeleteNode\n style={{ color: 'red' }}\n hidden={\n props.extraData.required && props.extraData.fields.length === 1\n }\n onDelete={() => {\n props.extraData.operation.remove(props.extraData.index);\n }}\n />\n {dragTriggerPositionFt === 'right' ? (\n <span\n ref={setActivatorNodeRef}\n style={{\n touchAction: 'none',\n cursor: 'move',\n }}\n {...listeners}\n >\n <IconWrapper\n style={{\n touchAction: 'none',\n cursor: 'move',\n padding: '3px',\n margin: 0,\n justifyContent: 'center',\n color: '#787878',\n }}\n icon={iconElement}\n onClick={noop}\n size=\"small\"\n />\n </span>\n ) : null}\n </Space>\n }\n title={\n <Space size={5}>\n {dragTriggerPositionFt === 'left' ? (\n <span\n ref={setActivatorNodeRef}\n style={{\n touchAction: 'none',\n cursor: 'move',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n }}\n {...listeners}\n >\n <IconWrapper\n style={{\n touchAction: 'none',\n cursor: 'move',\n padding: '3px',\n margin: 0,\n justifyContent: 'center',\n color: '#787878',\n }}\n icon={iconElement}\n onClick={noop}\n size=\"small\"\n />\n </span>\n ) : null}\n <span>第{props.extraData.index + 1}行</span>\n </Space>\n }\n >\n {props.children}\n </CardWrapper>\n </div>\n );\n};\n","import { type ReactElement } from 'react';\nimport type { FormListFieldData, FormListOperation } from 'antd';\nimport { type RowProps } from 'antd';\nimport { CardWrapper } from '../card-wrapper/card-wrapper.jsx';\nimport { DeleteNode } from '../delete-node/delete-node.jsx';\n\ntype Handle2Props = RowProps & {\n children: ReactElement;\n extraData: {\n operation: FormListOperation;\n fields: FormListFieldData[];\n index: number;\n required?: boolean;\n };\n};\nexport const Handle2 = (props: Handle2Props) => {\n return (\n <CardWrapper\n size=\"small\"\n style={{ marginBottom: 10 }}\n extra={\n <DeleteNode\n style={{ color: 'red' }}\n hidden={\n props.extraData.required && props.extraData.fields.length === 1\n }\n onDelete={() => {\n props.extraData.operation.remove(props.extraData.index);\n }}\n />\n }\n title={`第${props.extraData.index + 1}行`}\n >\n {props.children}\n </CardWrapper>\n );\n};\n","import { type ReactElement } from 'react';\nimport { Form } from 'antd';\nimport {\n DndContext,\n type DragEndEvent,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { restrictToVerticalAxis } from '@dnd-kit/modifiers';\nimport {\n arrayMove,\n SortableContext,\n verticalListSortingStrategy,\n} from '@dnd-kit/sortable';\nimport { toArray, type TPlainObject } from '@flatbiz/utils';\nimport { EditableCard } from '../editable-card/editable-card.jsx';\nimport type { EditableCardProps } from '../editable-card/type.js';\nimport { Handle } from './handle.jsx';\nimport { Handle2 } from './handle2.jsx';\n\nexport type DragEditableCardProps = Omit<\n EditableCardProps,\n 'onCustomWrapper'\n> & {\n /**\n * 拖拽图标自定义,默认使用 DragOutlined 图标\n */\n dragIcon?: ReactElement;\n\n /** 禁用拖拽 */\n disabledDrag?: boolean;\n /**\n * 表格数据唯一值字段Key\n * ```\n * ```\n */\n uidFieldKey: string;\n /**\n * 拖拽结束事件\n * ```\n * dataSource: 拖拽完成后的数据源\n * dragData\n * 1. activeId 拖拽ID\n * 2. activeIndex 拖拽起始表格数组索引值\n * 3. overIndex 拖拽结束表格数组索引值\n * ```\n */\n onDragChange?: (\n dataSource: TPlainObject[],\n dragData: {\n activeId: string | number;\n overId?: string | number;\n activeIndex: number;\n overIndex: number;\n }\n ) => void;\n /**\n * 拖拽触发位置,默认在左侧\n */\n dragTriggerPosition?: 'left' | 'right';\n};\n\n/**\n * 可拖拽编辑卡片\n * ```\n * 1. 卡片数组必须有唯一值字段,通过参数 uidFieldKey 告诉组件\n * ```\n */\nexport const DragEditableCard = (props: DragEditableCardProps) => {\n const {\n dragIcon,\n uidFieldKey,\n onDragChange,\n disabledDrag,\n formListCompleteName,\n formListName,\n dragTriggerPosition,\n ...otherProps\n } = props;\n\n const formListCompleteNameFt = formListCompleteName || formListName;\n\n const form = Form.useFormInstance();\n const dataList = Form.useWatch(formListCompleteNameFt, form);\n\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n // 当拖拽触发区域有其他点击事件时,需要延迟触发拖拽动作\n delay: 0,\n tolerance: 0,\n },\n })\n );\n\n const onDragEnd = ({ active, over }: DragEndEvent) => {\n if (active.id !== over?.id) {\n const activeIndex = dataList.findIndex(\n (i) => i[uidFieldKey] === active.id\n );\n const overIndex = dataList.findIndex((i) => i[uidFieldKey] === over?.id);\n const dataListNew = arrayMove(dataList, activeIndex, overIndex);\n form.setFields([\n {\n name: formListCompleteNameFt,\n value: dataListNew,\n },\n ]);\n onDragChange?.(dataListNew as TPlainObject[], {\n activeId: active.id,\n overId: over?.id,\n activeIndex,\n overIndex,\n });\n }\n };\n\n return (\n <DndContext\n sensors={sensors}\n modifiers={[restrictToVerticalAxis]}\n onDragEnd={onDragEnd}\n >\n <SortableContext\n items={dataList?.map((i) => i[uidFieldKey]) || []}\n strategy={verticalListSortingStrategy}\n >\n <EditableCard\n formListName={formListName}\n formListCompleteName={formListCompleteName}\n {...otherProps}\n onCustomWrapper={(children, extraData) => {\n if (disabledDrag) {\n return (\n <Handle2 key={extraData.key} extraData={extraData}>\n {children}\n </Handle2>\n );\n }\n\n const target = form.getFieldValue([\n ...toArray(formListCompleteNameFt),\n extraData.fieldItem.name,\n ]);\n\n if (!target?.[uidFieldKey]) {\n console.error(\n `唯一值字段【${uidFieldKey}】为空,无法进行拖拽排序`,\n target\n );\n return (\n <Handle2 key={extraData.key} extraData={extraData}>\n {children}\n </Handle2>\n );\n }\n return (\n <Handle\n key={extraData.key}\n dragIcon={dragIcon}\n rowId={target?.[uidFieldKey]}\n extraData={extraData}\n dragTriggerPosition={dragTriggerPosition}\n >\n {children}\n </Handle>\n );\n }}\n />\n </SortableContext>\n </DndContext>\n );\n};\n"],"names":["Handle","props","dragIcon","rowId","dragTriggerPosition","innerProps","_objectWithoutProperties","_excluded","dragTriggerPositionFt","_useSortable","useSortable","id","setActivatorNodeRef","listeners","setNodeRef","transform","transition","isDragging","style","_objectSpread","CSS","Transform","toString","scaleY","cursor","position","zIndex","boxShadow","backgroundColor","iconElement","_jsx","_DragOutlined","ref","children","CardWrapper","size","marginBottom","extra","_jsxs","Space","DeleteNode","color","hidden","extraData","required","fields","length","onDelete","operation","remove","index","touchAction","IconWrapper","padding","margin","justifyContent","icon","onClick","noop","title","display","alignItems","Handle2","concat","DragEditableCard","uidFieldKey","onDragChange","disabledDrag","formListCompleteName","formListName","otherProps","formListCompleteNameFt","form","Form","useFormInstance","dataList","useWatch","sensors","useSensors","useSensor","PointerSensor","activationConstraint","delay","tolerance","onDragEnd","_ref","active","over","activeIndex","findIndex","i","overIndex","dataListNew","arrayMove","setFields","name","value","activeId","overId","DndContext","modifiers","restrictToVerticalAxis","SortableContext","items","map","strategy","verticalListSortingStrategy","EditableCard","onCustomWrapper","key","target","getFieldValue","_toConsumableArray","toArray","fieldItem","console","error"],"mappings":"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"}