@flatbiz/antd 5.0.33 → 5.0.35
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/_commonjsHelpers-B0GIDhER.js +33 -0
- package/dist/_commonjsHelpers-B0GIDhER.js.map +1 -0
- package/dist/ace-editor-json/index.js +1 -0
- package/dist/ace-editor-json/index.js.map +1 -1
- package/dist/ace-editor-mysql/index.js +1 -0
- package/dist/ace-editor-mysql/index.js.map +1 -1
- package/dist/ace-editor-xml/index.js +1 -0
- package/dist/ace-editor-xml/index.js.map +1 -1
- package/dist/ai-search/index.css +1 -0
- package/dist/ai-search/index.d.ts +25 -0
- package/dist/ai-search/index.js +39 -0
- package/dist/ai-search/index.js.map +1 -0
- package/dist/ai-search-WcG2oakE.js +161 -0
- package/dist/ai-search-WcG2oakE.js.map +1 -0
- package/dist/bootstrap/index.js +1 -0
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/button-operate/index.js +1 -0
- package/dist/button-operate/index.js.map +1 -1
- package/dist/button-wrapper/index.js +1 -0
- package/dist/button-wrapper/index.js.map +1 -1
- package/dist/cascader-wrapper/index.js +1 -0
- package/dist/cascader-wrapper/index.js.map +1 -1
- package/dist/check-list/index.js +1 -0
- package/dist/check-list/index.js.map +1 -1
- package/dist/config-provider-wrapper/index.js +1 -0
- package/dist/config-provider-wrapper/index.js.map +1 -1
- package/dist/date-range-picker-wrapper-form-item/index.js +1 -0
- package/dist/date-range-picker-wrapper-form-item/index.js.map +1 -1
- package/dist/dialog-alert/index.js +1 -0
- package/dist/dialog-alert/index.js.map +1 -1
- package/dist/dialog-confirm/index.js +1 -0
- package/dist/dialog-confirm/index.js.map +1 -1
- package/dist/dialog-drag-modal/index.css +1 -1
- package/dist/dialog-drag-modal/index.d.ts +18 -5
- package/dist/dialog-drag-modal/index.js +5 -2
- package/dist/dialog-drag-modal/index.js.map +1 -1
- package/dist/dialog-drawer/index.js +1 -0
- package/dist/dialog-drawer/index.js.map +1 -1
- package/dist/dialog-drawer-content/index.js +1 -0
- package/dist/dialog-drawer-content/index.js.map +1 -1
- package/dist/dialog-loading/index.js +1 -0
- package/dist/dialog-loading/index.js.map +1 -1
- package/dist/dialog-modal/index.js +1 -0
- package/dist/dialog-modal/index.js.map +1 -1
- package/dist/dialog-preview-image/index.js +1 -0
- package/dist/dialog-preview-image/index.js.map +1 -1
- package/dist/drag-collapse/index.js +1 -0
- package/dist/drag-collapse/index.js.map +1 -1
- package/dist/drag-collapse-form-list/index.js +1 -0
- package/dist/drag-collapse-form-list/index.js.map +1 -1
- package/dist/drag-editable-card/index.d.ts +7 -4
- package/dist/drag-editable-card/index.js +8 -7
- package/dist/drag-editable-card/index.js.map +1 -1
- package/dist/drag-editable-table/index.js +1 -0
- package/dist/drag-editable-table/index.js.map +1 -1
- package/dist/drag-editable-table-pro/index.js +1 -0
- package/dist/drag-editable-table-pro/index.js.map +1 -1
- package/dist/drag-form-list/index.js +1 -0
- package/dist/drag-form-list/index.js.map +1 -1
- package/dist/{drag-modal-DTbr-E0g.js → drag-modal-DVq260Mc.js} +56 -53
- package/dist/drag-modal-DVq260Mc.js.map +1 -0
- package/dist/drawer-BI8T3w7e.js +257 -0
- package/dist/drawer-BI8T3w7e.js.map +1 -0
- package/dist/dropdown-menu-wrapper/index.js +1 -0
- package/dist/dropdown-menu-wrapper/index.js.map +1 -1
- package/dist/easy-form/index.d.ts +0 -4
- package/dist/easy-form/index.js +2 -1
- package/dist/easy-form/index.js.map +1 -1
- package/dist/easy-table/index.d.ts +0 -4
- package/dist/easy-table/index.js +2 -1
- package/dist/easy-table/index.js.map +1 -1
- package/dist/editable-card/index.d.ts +7 -4
- package/dist/editable-card/index.js +7 -6
- package/dist/editable-card/index.js.map +1 -1
- package/dist/{editable-card-DlqrwXa0.js → editable-card-BN9ViZz0.js} +69 -56
- package/dist/editable-card-BN9ViZz0.js.map +1 -0
- package/dist/{editable-card-eGAbYXAH.js → editable-card-BrnWDl8j.js} +2 -2
- package/dist/{editable-card-eGAbYXAH.js.map → editable-card-BrnWDl8j.js.map} +1 -1
- package/dist/editable-field/index.js +1 -0
- package/dist/editable-field/index.js.map +1 -1
- package/dist/editable-table/index.js +1 -0
- package/dist/editable-table/index.js.map +1 -1
- package/dist/editable-table-pro/index.js +1 -0
- package/dist/editable-table-pro/index.js.map +1 -1
- package/dist/fba-app/index.js +1 -0
- package/dist/fba-app/index.js.map +1 -1
- package/dist/fba-hooks/index.d.ts +1 -0
- package/dist/fba-hooks/index.js +10 -1
- package/dist/fba-hooks/index.js.map +1 -1
- package/dist/{form-3qaPduiy.js → form-DNtjXzAW.js} +35 -36
- package/dist/form-DNtjXzAW.js.map +1 -0
- package/dist/form-item-group/index.js +1 -0
- package/dist/form-item-group/index.js.map +1 -1
- package/dist/form-item-text/index.js +1 -0
- package/dist/form-item-text/index.js.map +1 -1
- package/dist/form-item-wrapper/index.js +1 -0
- package/dist/form-item-wrapper/index.js.map +1 -1
- package/dist/form-list-wrapper/index.js +1 -0
- package/dist/form-list-wrapper/index.js.map +1 -1
- package/dist/index.d.ts +507 -444
- package/dist/index.js +13 -5
- package/dist/index.js.map +1 -1
- package/dist/input-search-wrapper/index.js +1 -0
- package/dist/input-search-wrapper/index.js.map +1 -1
- package/dist/input-text-area-wrapper/index.js +1 -0
- package/dist/input-text-area-wrapper/index.js.map +1 -1
- package/dist/input-wrapper/index.js +1 -0
- package/dist/input-wrapper/index.js.map +1 -1
- package/dist/label-value-render/index.js +1 -0
- package/dist/label-value-render/index.js.map +1 -1
- package/dist/local-loading/index.js +1 -0
- package/dist/local-loading/index.js.map +1 -1
- package/dist/mention-editor/index.js +1 -0
- package/dist/mention-editor/index.js.map +1 -1
- package/dist/mentions-wrapper/index.js +1 -0
- package/dist/mentions-wrapper/index.js.map +1 -1
- package/dist/number-range-form-item/index.js +1 -0
- package/dist/number-range-form-item/index.js.map +1 -1
- package/dist/pdf/index.js +1 -0
- package/dist/pdf/index.js.map +1 -1
- package/dist/pdf-preview/index.js +1 -0
- package/dist/pdf-preview/index.js.map +1 -1
- package/dist/relation-tree/index.js +1 -0
- package/dist/relation-tree/index.js.map +1 -1
- package/dist/request-status/index.js +1 -0
- package/dist/request-status/index.js.map +1 -1
- package/dist/resizable-drawer/index.css +1 -0
- package/dist/resizable-drawer/index.d.ts +29 -0
- package/dist/resizable-drawer/index.js +41 -0
- package/dist/resizable-drawer/index.js.map +1 -0
- package/dist/rich-text-editor/index.js +1 -0
- package/dist/rich-text-editor/index.js.map +1 -1
- package/dist/rich-text-viewer/index.js +1 -0
- package/dist/rich-text-viewer/index.js.map +1 -1
- package/dist/roll-location-center/index.js +1 -0
- package/dist/roll-location-center/index.js.map +1 -1
- package/dist/roll-location-in-view/index.js +1 -0
- package/dist/roll-location-in-view/index.js.map +1 -1
- package/dist/rule-describe/index.js +1 -0
- package/dist/rule-describe/index.js.map +1 -1
- package/dist/search-form/index.js +1 -0
- package/dist/search-form/index.js.map +1 -1
- package/dist/search-menu/index.js +1 -0
- package/dist/search-menu/index.js.map +1 -1
- package/dist/selector-wrapper/index.js +1 -0
- package/dist/selector-wrapper/index.js.map +1 -1
- package/dist/selector-wrapper-search/index.js +1 -0
- package/dist/selector-wrapper-search/index.js.map +1 -1
- package/dist/selector-wrapper-simple/index.js +1 -0
- package/dist/selector-wrapper-simple/index.js.map +1 -1
- package/dist/simple-layout/index.js +1 -0
- package/dist/simple-layout/index.js.map +1 -1
- package/dist/switch-confirm-wrapper/index.js +1 -0
- package/dist/switch-confirm-wrapper/index.js.map +1 -1
- package/dist/table-cell-render/index.js +1 -0
- package/dist/table-cell-render/index.js.map +1 -1
- package/dist/table-scrollbar/index.js +1 -0
- package/dist/table-scrollbar/index.js.map +1 -1
- package/dist/tag-group/index.js +1 -0
- package/dist/tag-group/index.js.map +1 -1
- package/dist/tag-wrapper/index.js +1 -0
- package/dist/tag-wrapper/index.js.map +1 -1
- package/dist/text-overflow/index.js +1 -0
- package/dist/text-overflow/index.js.map +1 -1
- package/dist/time-range-picker-wrapper-form-item/index.js +1 -0
- package/dist/time-range-picker-wrapper-form-item/index.js.map +1 -1
- package/dist/tips-title/index.css +1 -1
- package/dist/tips-title/index.d.ts +1 -0
- package/dist/tips-title/index.js +1 -1
- package/dist/{tips-title-Bst97YH9.js → tips-title-B7ifvKpk.js} +4 -5
- package/dist/tips-title-B7ifvKpk.js.map +1 -0
- package/dist/tree-modal/index.js +1 -0
- package/dist/tree-modal/index.js.map +1 -1
- package/dist/tree-modal-selector/index.js +1 -0
- package/dist/tree-modal-selector/index.js.map +1 -1
- package/dist/tree-selector-wrapper/index.js +1 -0
- package/dist/tree-selector-wrapper/index.js.map +1 -1
- package/dist/tree-wrapper/index.js +1 -0
- package/dist/tree-wrapper/index.js.map +1 -1
- package/dist/upload-wrapper/index.js +1 -0
- package/dist/upload-wrapper/index.js.map +1 -1
- package/package.json +12 -1
- package/dist/drag-modal-DTbr-E0g.js.map +0 -1
- package/dist/editable-card-DlqrwXa0.js.map +0 -1
- package/dist/form-3qaPduiy.js.map +0 -1
- package/dist/tips-title-Bst97YH9.js.map +0 -1
|
@@ -7,10 +7,11 @@ import { hooks } from '@wove/react/hooks';
|
|
|
7
7
|
import { useRef, Fragment, createElement, isValidElement } from 'react';
|
|
8
8
|
import { Form, ConfigProvider, Empty } from 'antd';
|
|
9
9
|
import { toArray, isUndefinedOrNull } from '@flatbiz/utils';
|
|
10
|
+
import { useBoxBreakpoint, BoxGrid } from './box-grid/index.js';
|
|
10
11
|
import { B as ButtonWrapper } from './button-wrapper-C2koH6hy.js';
|
|
11
12
|
import { C as CardWrapper } from './card-wrapper-Bu6yyUKG.js';
|
|
12
13
|
import { D as DeleteNode } from './delete-node-C6jwhyxz.js';
|
|
13
|
-
import { E as EasyForm } from './form-
|
|
14
|
+
import { E as EasyForm } from './form-DNtjXzAW.js';
|
|
14
15
|
import { fbaHooks } from './fba-hooks/index.js';
|
|
15
16
|
import { f as fbaUtils } from './fba-utils-Dfbczn1S.js';
|
|
16
17
|
import { F as FormItemHidden } from './form-item-hidden-BtQvJEx7.js';
|
|
@@ -25,6 +26,8 @@ var EditableCard = function EditableCard(props) {
|
|
|
25
26
|
var forceUpdate = hooks.useForceUpdate();
|
|
26
27
|
var _ConfigProvider$useCo = ConfigProvider.useConfig(),
|
|
27
28
|
componentDisabled = _ConfigProvider$useCo.componentDisabled;
|
|
29
|
+
var comRef = useRef(null);
|
|
30
|
+
var boxBreakpointApi = useBoxBreakpoint(comRef);
|
|
28
31
|
var formListCompleteName = props.formListCompleteName || formListName;
|
|
29
32
|
var validateRowFields = hooks.useCallbackRef(function (formItemPrevName, nameList) {
|
|
30
33
|
return new Promise(function ($return, $error) {
|
|
@@ -160,6 +163,7 @@ var EditableCard = function EditableCard(props) {
|
|
|
160
163
|
return /*#__PURE__*/jsx("div", {
|
|
161
164
|
className: className,
|
|
162
165
|
style: props.style,
|
|
166
|
+
ref: comRef,
|
|
163
167
|
children: /*#__PURE__*/jsx(Form.List, {
|
|
164
168
|
name: formListName,
|
|
165
169
|
rules: props.rules,
|
|
@@ -173,9 +177,8 @@ var EditableCard = function EditableCard(props) {
|
|
|
173
177
|
borderRadius: '6px',
|
|
174
178
|
border: errors !== null && errors !== void 0 && errors.length ? '1px solid #ff4d4f' : '1px solid transparent'
|
|
175
179
|
},
|
|
176
|
-
children: [(_props$contentBeforeR = props.contentBeforeRender) === null || _props$contentBeforeR === void 0 ? void 0 : _props$contentBeforeR.call(props, formListOperation, fields.length), fields.map(function (fieldItem, index) {
|
|
177
|
-
var _props$
|
|
178
|
-
var title = props.onCustomGroupName ? props.onCustomGroupName(index) : index + 1;
|
|
180
|
+
children: [(_props$contentBeforeR = props.contentBeforeRender) === null || _props$contentBeforeR === void 0 ? void 0 : _props$contentBeforeR.call(props, formListOperation, fields.length), props.onCustomWrapper ? fields.map(function (fieldItem, index) {
|
|
181
|
+
var _props$onCustomWrappe, _props$cardEasyFormPr;
|
|
179
182
|
var extraData = {
|
|
180
183
|
index: index,
|
|
181
184
|
fields: fields,
|
|
@@ -184,64 +187,74 @@ var EditableCard = function EditableCard(props) {
|
|
|
184
187
|
required: props.required,
|
|
185
188
|
key: "".concat(fieldItem.key)
|
|
186
189
|
};
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
return /*#__PURE__*/jsx(Fragment, {
|
|
190
|
-
children: props.onCustomWrapper(/*#__PURE__*/jsx(EasyForm, _objectSpread2(_objectSpread2({
|
|
191
|
-
nonuseFormWrapper: true
|
|
192
|
-
}, props.cardEasyFormProps), {}, {
|
|
193
|
-
style: _objectSpread2({
|
|
194
|
-
padding: 0,
|
|
195
|
-
margin: 0
|
|
196
|
-
}, (_props$cardEasyFormPr = props.cardEasyFormProps) === null || _props$cardEasyFormPr === void 0 ? void 0 : _props$cardEasyFormPr.style),
|
|
197
|
-
children: columns.map(function (column) {
|
|
198
|
-
return column.render(index, fieldItem, formListOperation);
|
|
199
|
-
})
|
|
200
|
-
})), extraData)
|
|
201
|
-
}, fieldItem.key);
|
|
202
|
-
}
|
|
203
|
-
var cardExtraRenderResult = (_props$cardExtraRende = props.cardExtraRender) === null || _props$cardExtraRende === void 0 ? void 0 : _props$cardExtraRende.call(props, extraData);
|
|
204
|
-
return /*#__PURE__*/jsx(CardWrapper, {
|
|
205
|
-
className: props.cardClassName,
|
|
206
|
-
title: title,
|
|
207
|
-
size: "small",
|
|
208
|
-
style: _objectSpread2({
|
|
209
|
-
padding: 0,
|
|
210
|
-
margin: '0 0 15px 0'
|
|
211
|
-
}, props.cardStyle),
|
|
212
|
-
bodyStyle: {
|
|
213
|
-
paddingBottom: 0
|
|
214
|
-
}
|
|
215
|
-
// styles={{ body: { paddingBottom: 0 } }}
|
|
216
|
-
,
|
|
217
|
-
extra: /*#__PURE__*/isValidElement(cardExtraRenderResult) ? cardExtraRenderResult : /*#__PURE__*/jsxs("div", {
|
|
218
|
-
style: {
|
|
219
|
-
display: 'inline-flex',
|
|
220
|
-
alignItems: 'center',
|
|
221
|
-
gap: '8px'
|
|
222
|
-
},
|
|
223
|
-
children: [cardExtraRenderResult === null || cardExtraRenderResult === void 0 ? void 0 : cardExtraRenderResult['before'], /*#__PURE__*/jsx(DeleteNode, {
|
|
224
|
-
style: {
|
|
225
|
-
color: 'red'
|
|
226
|
-
},
|
|
227
|
-
hidden: props.hiddenDeleteBtn || props.required && fields.length === 1 || componentDisabled,
|
|
228
|
-
onDelete: function onDelete() {
|
|
229
|
-
formListOperation.remove(index);
|
|
230
|
-
}
|
|
231
|
-
}), cardExtraRenderResult === null || cardExtraRenderResult === void 0 ? void 0 : cardExtraRenderResult['after']]
|
|
232
|
-
}),
|
|
233
|
-
children: /*#__PURE__*/jsx(EasyForm, _objectSpread2(_objectSpread2({
|
|
234
|
-
nonuseFormWrapper: true
|
|
235
|
-
}, props.cardEasyFormProps), {}, {
|
|
190
|
+
return /*#__PURE__*/jsx(Fragment, {
|
|
191
|
+
children: (_props$onCustomWrappe = props.onCustomWrapper) === null || _props$onCustomWrappe === void 0 ? void 0 : _props$onCustomWrappe.call(props, /*#__PURE__*/jsx(EasyForm, _objectSpread2(_objectSpread2({}, props.cardEasyFormProps), {}, {
|
|
236
192
|
style: _objectSpread2({
|
|
237
193
|
padding: 0,
|
|
238
194
|
margin: 0
|
|
239
|
-
}, (_props$
|
|
195
|
+
}, (_props$cardEasyFormPr = props.cardEasyFormProps) === null || _props$cardEasyFormPr === void 0 ? void 0 : _props$cardEasyFormPr.style),
|
|
240
196
|
children: columns.map(function (column) {
|
|
241
197
|
return column.render(index, fieldItem, formListOperation);
|
|
242
198
|
})
|
|
243
|
-
}))
|
|
199
|
+
})), extraData)
|
|
244
200
|
}, fieldItem.key);
|
|
201
|
+
}) : /*#__PURE__*/jsx(BoxGrid.Row, {
|
|
202
|
+
children: fields.map(function (fieldItem, index) {
|
|
203
|
+
var _props$cardExtraRende, _props$cardEasyFormPr2;
|
|
204
|
+
var title = props.onCustomGroupName ? props.onCustomGroupName(index) : index + 1;
|
|
205
|
+
var extraData = {
|
|
206
|
+
index: index,
|
|
207
|
+
fields: fields,
|
|
208
|
+
fieldItem: fieldItem,
|
|
209
|
+
operation: formListOperation,
|
|
210
|
+
required: props.required,
|
|
211
|
+
key: "".concat(fieldItem.key)
|
|
212
|
+
};
|
|
213
|
+
var cardExtraRenderResult = (_props$cardExtraRende = props.cardExtraRender) === null || _props$cardExtraRende === void 0 ? void 0 : _props$cardExtraRende.call(props, extraData);
|
|
214
|
+
var span = ['xs', 'sm'].includes(boxBreakpointApi.boxBreakpoint) ? 24 : props.boxGridColSpan;
|
|
215
|
+
return /*#__PURE__*/jsx(BoxGrid.Col, {
|
|
216
|
+
span: span || 24,
|
|
217
|
+
children: /*#__PURE__*/jsx(CardWrapper, {
|
|
218
|
+
className: props.cardClassName,
|
|
219
|
+
title: title,
|
|
220
|
+
size: "small",
|
|
221
|
+
style: _objectSpread2({
|
|
222
|
+
padding: 0,
|
|
223
|
+
margin: '0 0 15px 0'
|
|
224
|
+
}, props.cardStyle),
|
|
225
|
+
bodyStyle: {
|
|
226
|
+
paddingBottom: 0
|
|
227
|
+
}
|
|
228
|
+
// styles={{ body: { paddingBottom: 0 } }}
|
|
229
|
+
,
|
|
230
|
+
extra: /*#__PURE__*/isValidElement(cardExtraRenderResult) ? cardExtraRenderResult : /*#__PURE__*/jsxs("div", {
|
|
231
|
+
style: {
|
|
232
|
+
display: 'inline-flex',
|
|
233
|
+
alignItems: 'center',
|
|
234
|
+
gap: '8px'
|
|
235
|
+
},
|
|
236
|
+
children: [cardExtraRenderResult === null || cardExtraRenderResult === void 0 ? void 0 : cardExtraRenderResult['before'], /*#__PURE__*/jsx(DeleteNode, {
|
|
237
|
+
style: {
|
|
238
|
+
color: 'red'
|
|
239
|
+
},
|
|
240
|
+
hidden: props.hiddenDeleteBtn || props.required && fields.length === 1 || componentDisabled,
|
|
241
|
+
onDelete: function onDelete() {
|
|
242
|
+
formListOperation.remove(index);
|
|
243
|
+
}
|
|
244
|
+
}), cardExtraRenderResult === null || cardExtraRenderResult === void 0 ? void 0 : cardExtraRenderResult['after']]
|
|
245
|
+
}),
|
|
246
|
+
children: /*#__PURE__*/jsx(EasyForm, _objectSpread2(_objectSpread2({}, props.cardEasyFormProps), {}, {
|
|
247
|
+
style: _objectSpread2({
|
|
248
|
+
padding: 0,
|
|
249
|
+
margin: 0
|
|
250
|
+
}, (_props$cardEasyFormPr2 = props.cardEasyFormProps) === null || _props$cardEasyFormPr2 === void 0 ? void 0 : _props$cardEasyFormPr2.style),
|
|
251
|
+
children: columns.map(function (column) {
|
|
252
|
+
return column.render(index, fieldItem, formListOperation);
|
|
253
|
+
})
|
|
254
|
+
}))
|
|
255
|
+
}, fieldItem.key)
|
|
256
|
+
});
|
|
257
|
+
})
|
|
245
258
|
}), fields.length === 0 ? /*#__PURE__*/jsx("div", {
|
|
246
259
|
className: "editable-card-empty",
|
|
247
260
|
children: /*#__PURE__*/jsx(Empty, {
|
|
@@ -274,4 +287,4 @@ var EditableCard = function EditableCard(props) {
|
|
|
274
287
|
};
|
|
275
288
|
|
|
276
289
|
export { EditableCard as E };
|
|
277
|
-
//# sourceMappingURL=editable-card-
|
|
290
|
+
//# sourceMappingURL=editable-card-BN9ViZz0.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editable-card-BN9ViZz0.js","sources":["@flatbiz/antd/src/editable-card/editable-card.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Fragment, isValidElement, useRef } from 'react';\nimport type { FormListFieldData } from 'antd';\nimport { ConfigProvider, Empty, Form, type FormListOperation } from 'antd';\nimport { PlusOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport type { TAny } from '@flatbiz/utils';\nimport { isUndefinedOrNull, toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { BoxGrid, useBoxBreakpoint } from '../box-grid/index.js';\nimport { ButtonWrapper } from '../button-wrapper/button-wrapper.jsx';\nimport { CardWrapper } from '../card-wrapper/card-wrapper.jsx';\nimport { DeleteNode } from '../delete-node/delete-node.jsx';\nimport { EasyForm } from '../easy-form/form.jsx';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { fbaUtils } from '../fba-utils/fba-utils.js';\nimport { FormItemHidden } from '../form-item-hidden/form-item-hidden.jsx';\nimport { FormItemWrapper } from '../form-item-wrapper/form-item-wrapper.jsx';\nimport { TipsWrapper } from '../tips-wrapper/tips-wrapper.jsx';\nimport type {\n EditableCardDataIndex,\n EditableCardOperation,\n EditableCardProps,\n} from './type.js';\nimport './style.less';\n\n/**\n * 使用FormList实现可编辑卡片\n * ```\n * 1. 必须在外部包裹Form组件或者EasyForm组件\n * 2. 行内需要联动逻辑可使用 column.render.operation.setCurrentRowField 方法\n * 3. 可使用DragEditableCard组件实现拖拽排序\n *\n * demo\n * https://fex.qa.tcshuke.com/docs/admin/main/form/grid\n * ```\n */\nexport const EditableCard = (props: EditableCardProps) => {\n const form = Form.useFormInstance();\n const formListName = toArray<string | number>(props.formListName);\n\n const formListOperationRef = useRef<FormListOperation>();\n const forceUpdate = hooks.useForceUpdate();\n const { componentDisabled } = ConfigProvider.useConfig();\n const comRef = useRef<HTMLDivElement>(null);\n const boxBreakpointApi = useBoxBreakpoint(comRef);\n\n const formListCompleteName = props.formListCompleteName || formListName;\n\n const validateRowFields = hooks.useCallbackRef(\n async (\n formItemPrevName: Array<string | number>,\n nameList: EditableCardDataIndex[]\n ) => {\n await form.validateFields(\n nameList.map((item) => [\n ...formItemPrevName,\n ...toArray<string | number>(item),\n ])\n );\n }\n );\n const getCurrentRowData = hooks.useCallbackRef(\n (formItemPrevName: Array<string | number>) => {\n return form.getFieldValue(formItemPrevName);\n }\n );\n\n const setCurrentRowField = hooks.useCallbackRef(\n (\n formItemPrevName: string | number,\n dataIndexConfigs: {\n name: EditableCardDataIndex;\n value?: TAny;\n }[]\n ) => {\n fbaUtils.setFormFieldsAndTriggerValuesChange(\n form,\n dataIndexConfigs.map((item) => {\n return {\n name: [\n ...formListCompleteName,\n formItemPrevName,\n ...toArray<string | number>(item.name),\n ],\n value: item.value,\n };\n })\n );\n forceUpdate();\n }\n );\n\n const columns = fbaHooks.useMemoCustom(() => {\n return props.columns.map((column) => {\n const title = column.title;\n let titleRender: ReactElement | string | undefined = title;\n if (column.tips) {\n titleRender = (\n <TipsWrapper\n tipType=\"popover\"\n popoverProps={{ content: column.tips }}\n >\n {title}\n </TipsWrapper>\n );\n }\n\n let required = column.required;\n\n if (\n !required &&\n typeof column.formItemProps === 'object' &&\n column.formItemProps.rules?.length\n ) {\n required = !!column.formItemProps.rules.find(\n (item) => !!item['required']\n );\n }\n\n const dataIndex = toArray<string>(column['dataIndex']);\n\n return {\n dataIndex,\n render: (\n index,\n fieldData: FormListFieldData,\n operation: FormListOperation\n ) => {\n const value = form.getFieldValue([\n ...formListCompleteName,\n fieldData.name,\n ...dataIndex,\n ]);\n if (isUndefinedOrNull(column.render)) {\n return <Fragment>{value}</Fragment>;\n }\n\n const rowFormItemCompleteName = [\n ...formListCompleteName,\n fieldData.name,\n ];\n\n const editable =\n typeof column?.editable === 'function'\n ? column?.editable(\n {\n index,\n getCurrentRowData: getCurrentRowData.bind(\n null,\n rowFormItemCompleteName\n ),\n },\n index\n )\n : column?.editable;\n\n const renderOperationProps: EditableCardOperation = {\n index,\n editable,\n add: operation.add,\n remove: operation.remove,\n move: operation.move,\n rowFormItemName: fieldData.name,\n rowFormItemCompleteName,\n setCurrentRowField: setCurrentRowField.bind(null, fieldData.name),\n validateRowFields: validateRowFields.bind(\n null,\n rowFormItemCompleteName\n ),\n getCurrentRowData: getCurrentRowData.bind(\n null,\n rowFormItemCompleteName\n ),\n forceUpdate,\n };\n\n if (column.remove?.(renderOperationProps, index)) {\n return <Fragment />;\n }\n\n if (column.hidden?.(renderOperationProps, index)) {\n return (\n <FormItemHidden\n name={[fieldData.name, ...dataIndex]}\n key={fieldData.key}\n />\n );\n }\n let formItemProps =\n typeof column.formItemProps === 'function'\n ? column.formItemProps(renderOperationProps)\n : column.formItemProps;\n\n if (!formItemProps?.rules?.length && required) {\n formItemProps = {\n ...formItemProps,\n rules: [{ required: true, message: '' }],\n };\n }\n\n if (editable === true) {\n if (column.formItemContainer) {\n return column.formItemContainer(\n <FormItemWrapper\n label={titleRender}\n {...formItemProps}\n name={[fieldData.name, ...dataIndex]}\n span={column.gridNumber}\n key={fieldData.key}\n >\n {column.render?.(renderOperationProps) as React.ReactNode}\n </FormItemWrapper>\n );\n }\n return (\n <FormItemWrapper\n label={titleRender}\n {...formItemProps}\n name={[fieldData.name, ...dataIndex]}\n span={column.gridNumber}\n key={fieldData.key}\n >\n {column.render?.(renderOperationProps) as React.ReactNode}\n </FormItemWrapper>\n );\n }\n if (column.formItemContainer) {\n return column.formItemContainer(\n <FormItemWrapper\n label={titleRender}\n span={column.gridNumber}\n key={fieldData.key}\n {...formItemProps}\n >\n {column.render?.(renderOperationProps)}\n </FormItemWrapper>\n );\n }\n return (\n <FormItemWrapper\n label={titleRender}\n span={column.gridNumber}\n key={fieldData.key}\n {...formItemProps}\n >\n {column.render?.(renderOperationProps)}\n </FormItemWrapper>\n );\n },\n };\n });\n }, [\n props.columns,\n form,\n formListCompleteName,\n setCurrentRowField,\n validateRowFields,\n getCurrentRowData,\n forceUpdate,\n ]);\n\n const className = classNames('editable-card', props.className);\n\n return (\n <div className={className} style={props.style} ref={comRef}>\n <Form.List\n name={formListName}\n rules={props.rules}\n initialValue={props.initialValue}\n >\n {(fields, formListOperation, { errors }) => {\n formListOperationRef.current = formListOperation;\n return (\n <div\n style={{\n borderRadius: '6px',\n border: errors?.length\n ? '1px solid #ff4d4f'\n : '1px solid transparent',\n }}\n >\n {props.contentBeforeRender?.(formListOperation, fields.length)}\n {props.onCustomWrapper ? (\n fields.map((fieldItem, index) => {\n const extraData = {\n index,\n fields,\n fieldItem,\n operation: formListOperation,\n required: props.required,\n key: `${fieldItem.key}`,\n };\n return (\n <Fragment key={fieldItem.key}>\n {props.onCustomWrapper?.(\n <EasyForm\n {...props.cardEasyFormProps}\n style={{\n padding: 0,\n margin: 0,\n ...props.cardEasyFormProps?.style,\n }}\n >\n {columns.map((column) => {\n return column.render(\n index,\n fieldItem,\n formListOperation\n );\n })}\n </EasyForm>,\n extraData\n )}\n </Fragment>\n );\n })\n ) : (\n <BoxGrid.Row>\n {fields.map((fieldItem, index) => {\n const title = props.onCustomGroupName\n ? props.onCustomGroupName(index)\n : index + 1;\n\n const extraData = {\n index,\n fields,\n fieldItem,\n operation: formListOperation,\n required: props.required,\n key: `${fieldItem.key}`,\n };\n\n const cardExtraRenderResult =\n props.cardExtraRender?.(extraData);\n const span = ['xs', 'sm'].includes(\n boxBreakpointApi.boxBreakpoint\n )\n ? 24\n : props.boxGridColSpan;\n return (\n <BoxGrid.Col span={span || 24}>\n <CardWrapper\n key={fieldItem.key}\n className={props.cardClassName}\n title={title}\n size=\"small\"\n style={{\n padding: 0,\n margin: '0 0 15px 0',\n ...props.cardStyle,\n }}\n bodyStyle={{ paddingBottom: 0 }}\n // styles={{ body: { paddingBottom: 0 } }}\n extra={\n isValidElement(cardExtraRenderResult) ? (\n cardExtraRenderResult\n ) : (\n <div\n style={{\n display: 'inline-flex',\n alignItems: 'center',\n gap: '8px',\n }}\n >\n {cardExtraRenderResult?.['before']}\n <DeleteNode\n style={{ color: 'red' }}\n hidden={\n props.hiddenDeleteBtn ||\n (props.required && fields.length === 1) ||\n componentDisabled\n }\n onDelete={() => {\n formListOperation.remove(index);\n }}\n />\n {cardExtraRenderResult?.['after']}\n </div>\n )\n }\n >\n <EasyForm\n {...props.cardEasyFormProps}\n style={{\n padding: 0,\n margin: 0,\n ...props.cardEasyFormProps?.style,\n }}\n >\n {columns.map((column) => {\n return column.render(\n index,\n fieldItem,\n formListOperation\n );\n })}\n </EasyForm>\n </CardWrapper>\n </BoxGrid.Col>\n );\n })}\n </BoxGrid.Row>\n )}\n\n {fields.length === 0 ? (\n <div className=\"editable-card-empty\">\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n </div>\n ) : null}\n <ButtonWrapper\n block\n hidden={props.hiddenFooterBtn || componentDisabled}\n type=\"dashed\"\n icon={<PlusOutlined />}\n onClick={() => {\n const defaultValues = props.addRowDefaultValues?.();\n formListOperation.add({ ...defaultValues });\n }}\n >\n {props.addRowBtnName || '新增'}\n </ButtonWrapper>\n {props.contentAfterRender?.(formListOperation, fields.length)}\n {errors.length ? (\n <Form.ErrorList\n errors={[\n <div style={{ color: '#ff4d4f', padding: '5px' }} key=\"0\">\n {errors}\n </div>,\n ]}\n />\n ) : null}\n </div>\n );\n }}\n </Form.List>\n </div>\n );\n};\n"],"names":["EditableCard","props","form","Form","useFormInstance","formListName","toArray","formListOperationRef","useRef","forceUpdate","_hooks","useForceUpdate","_ConfigProvider$useCo","ConfigProvider","useConfig","componentDisabled","comRef","boxBreakpointApi","useBoxBreakpoint","formListCompleteName","validateRowFields","useCallbackRef","formItemPrevName","nameList","Promise","$return","$error","resolve","validateFields","map","item","concat","_toConsumableArray","then","$await_1","$boundEx","getCurrentRowData","getFieldValue","setCurrentRowField","dataIndexConfigs","fbaUtils","setFormFieldsAndTriggerValuesChange","name","value","columns","fbaHooks","useMemoCustom","column","_column$formItemProps","title","titleRender","tips","_jsx","TipsWrapper","tipType","popoverProps","content","children","required","formItemProps","rules","length","find","dataIndex","render","index","fieldData","operation","_column$remove","_column$hidden","_formItemProps","_column$render4","isUndefinedOrNull","Fragment","rowFormItemCompleteName","editable","bind","renderOperationProps","add","remove","move","rowFormItemName","call","hidden","FormItemHidden","key","_objectSpread","message","_column$render2","formItemContainer","_column$render","_createElement","FormItemWrapper","label","span","gridNumber","_column$render3","className","_classNames","style","ref","List","initialValue","fields","formListOperation","_ref","_props$contentBeforeR","_props$contentAfterRe","errors","current","_jsxs","borderRadius","border","contentBeforeRender","onCustomWrapper","fieldItem","_props$onCustomWrappe","_props$cardEasyFormPr","extraData","EasyForm","cardEasyFormProps","padding","margin","BoxGrid","Row","_props$cardExtraRende","_props$cardEasyFormPr2","onCustomGroupName","cardExtraRenderResult","cardExtraRender","includes","boxBreakpoint","boxGridColSpan","Col","CardWrapper","cardClassName","size","cardStyle","bodyStyle","paddingBottom","extra","isValidElement","display","alignItems","gap","DeleteNode","color","hiddenDeleteBtn","onDelete","Empty","image","PRESENTED_IMAGE_SIMPLE","ButtonWrapper","block","hiddenFooterBtn","type","icon","_PlusOutlined","onClick","_props$addRowDefaultV","defaultValues","addRowDefaultValues","addRowBtnName","contentAfterRender","ErrorList"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { useSensors, useSensor, PointerSensor, DndContext } from '@dnd-kit/core'
|
|
|
6
6
|
import { restrictToVerticalAxis } from '@dnd-kit/modifiers';
|
|
7
7
|
import { useSortable, SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable';
|
|
8
8
|
import { noop, toArray } from '@flatbiz/utils';
|
|
9
|
-
import { E as EditableCard } from './editable-card-
|
|
9
|
+
import { E as EditableCard } from './editable-card-BN9ViZz0.js';
|
|
10
10
|
import _DragOutlined from '@ant-design/icons/es/icons/DragOutlined.js';
|
|
11
11
|
import { CSS } from '@dnd-kit/utilities';
|
|
12
12
|
import { C as CardWrapper } from './card-wrapper-Bu6yyUKG.js';
|
|
@@ -228,4 +228,4 @@ var DragEditableCard = function DragEditableCard(props) {
|
|
|
228
228
|
};
|
|
229
229
|
|
|
230
230
|
export { DragEditableCard as D };
|
|
231
|
-
//# sourceMappingURL=editable-card-
|
|
231
|
+
//# sourceMappingURL=editable-card-BrnWDl8j.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editable-card-eGAbYXAH.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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"}
|
|
1
|
+
{"version":3,"file":"editable-card-BrnWDl8j.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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"}
|
|
@@ -19,6 +19,7 @@ import '../context-HuMVSP3b.js';
|
|
|
19
19
|
import '../fba-hooks/index.js';
|
|
20
20
|
import '@wove/react/hooks';
|
|
21
21
|
import '../use-responsive-point-Bp3D3lZT.js';
|
|
22
|
+
import '@dimjs/utils/uuid/uuid';
|
|
22
23
|
import '../icon-wrapper-GTNh6wtb.js';
|
|
23
24
|
import '@dimjs/lang/is-undefined';
|
|
24
25
|
import 'react/jsx-runtime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -34,6 +34,7 @@ import 'dayjs/plugin/weekYear.js';
|
|
|
34
34
|
import '@dimjs/utils/extend/extend';
|
|
35
35
|
import '../fba-hooks/index.js';
|
|
36
36
|
import '../use-responsive-point-Bp3D3lZT.js';
|
|
37
|
+
import '@dimjs/utils/uuid/uuid';
|
|
37
38
|
import 'dayjs/locale/en.js';
|
|
38
39
|
import 'dayjs/locale/zh-cn.js';
|
|
39
40
|
import 'react/jsx-runtime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -32,6 +32,7 @@ import 'dayjs/plugin/weekYear.js';
|
|
|
32
32
|
import '@dimjs/utils/extend/extend';
|
|
33
33
|
import '../fba-hooks/index.js';
|
|
34
34
|
import '../use-responsive-point-Bp3D3lZT.js';
|
|
35
|
+
import '@dimjs/utils/uuid/uuid';
|
|
35
36
|
import 'dayjs/locale/en.js';
|
|
36
37
|
import 'dayjs/locale/zh-cn.js';
|
|
37
38
|
import 'react/jsx-runtime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/fba-app/index.js
CHANGED
|
@@ -31,6 +31,7 @@ import 'dayjs/plugin/weekYear.js';
|
|
|
31
31
|
import '@dimjs/utils/extend/extend';
|
|
32
32
|
import '../fba-hooks/index.js';
|
|
33
33
|
import '../use-responsive-point-Bp3D3lZT.js';
|
|
34
|
+
import '@dimjs/utils/uuid/uuid';
|
|
34
35
|
import 'dayjs/locale/en.js';
|
|
35
36
|
import 'dayjs/locale/zh-cn.js';
|
|
36
37
|
import 'react/jsx-runtime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-app/index.ts"],"sourcesContent":["import { fbaUtils } from '../fba-utils/index.js';\nimport {\n FbaApp as FbaAppInner,\n useDialogAlert,\n useDialogConfirm,\n useDialogDrawer,\n useDialogDrawer2,\n useDialogLoading,\n useDialogModal,\n useDialogModal2,\n} from './fba-app.jsx';\n\nexport const FbaApp = fbaUtils.attachPropertiesToComponent(FbaAppInner, {\n /** 不支持多次弹框,第二个弹框可使用useDialogDrawer2 */\n useDialogDrawer,\n useDialogDrawer2,\n /** 不支持多次弹框,第二个弹框可使用useDialogModal2 */\n useDialogModal,\n useDialogModal2,\n /** 不支持多次弹框 */\n useDialogConfirm,\n /** 不支持多次弹框 */\n useDialogAlert,\n /** 不支持多次弹框 */\n useDialogLoading,\n});\n"],"names":["FbaApp","fbaUtils","attachPropertiesToComponent","FbaAppInner","useDialogDrawer","useDialogDrawer2","useDialogModal","useDialogModal2","useDialogConfirm","useDialogAlert","useDialogLoading"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-app/index.ts"],"sourcesContent":["import { fbaUtils } from '../fba-utils/index.js';\nimport {\n FbaApp as FbaAppInner,\n useDialogAlert,\n useDialogConfirm,\n useDialogDrawer,\n useDialogDrawer2,\n useDialogLoading,\n useDialogModal,\n useDialogModal2,\n} from './fba-app.jsx';\n\nexport const FbaApp = fbaUtils.attachPropertiesToComponent(FbaAppInner, {\n /** 不支持多次弹框,第二个弹框可使用useDialogDrawer2 */\n useDialogDrawer,\n useDialogDrawer2,\n /** 不支持多次弹框,第二个弹框可使用useDialogModal2 */\n useDialogModal,\n useDialogModal2,\n /** 不支持多次弹框 */\n useDialogConfirm,\n /** 不支持多次弹框 */\n useDialogAlert,\n /** 不支持多次弹框 */\n useDialogLoading,\n});\n"],"names":["FbaApp","fbaUtils","attachPropertiesToComponent","FbaAppInner","useDialogDrawer","useDialogDrawer2","useDialogModal","useDialogModal2","useDialogConfirm","useDialogAlert","useDialogLoading"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,IAAMA,MAAM,GAAGC,QAAQ,CAACC,2BAA2B,CAACC,QAAW,EAAE;AACtE;AACAC,EAAAA,eAAe,EAAfA,eAAe;AACfC,EAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB;AACAC,EAAAA,cAAc,EAAdA,cAAc;AACdC,EAAAA,eAAe,EAAfA,eAAe;AACf;AACAC,EAAAA,gBAAgB,EAAhBA,gBAAgB;AAChB;AACAC,EAAAA,cAAc,EAAdA,cAAc;AACd;AACAC,EAAAA,gBAAgB,EAAhBA;AACF,CAAC;;;;"}
|
package/dist/fba-hooks/index.js
CHANGED
|
@@ -8,6 +8,7 @@ import { useRef, useEffect, useMemo, useState } from 'react';
|
|
|
8
8
|
import { toArray, trim } from '@flatbiz/utils';
|
|
9
9
|
import { u as useResponsivePoint } from '../use-responsive-point-Bp3D3lZT.js';
|
|
10
10
|
import { theme } from 'antd';
|
|
11
|
+
import { uuid } from '@dimjs/utils/uuid/uuid';
|
|
11
12
|
|
|
12
13
|
var useArrayChange = function useArrayChange(defautDataList) {
|
|
13
14
|
var forceUpdate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
@@ -188,6 +189,13 @@ var useThemeToken = function useThemeToken() {
|
|
|
188
189
|
return token;
|
|
189
190
|
};
|
|
190
191
|
|
|
192
|
+
var useUuid = function useUuid() {
|
|
193
|
+
var id = useMemo(function () {
|
|
194
|
+
return uuid();
|
|
195
|
+
}, []);
|
|
196
|
+
return id;
|
|
197
|
+
};
|
|
198
|
+
|
|
191
199
|
var fbaHooks = {
|
|
192
200
|
useEffectCustom: useEffectCustom,
|
|
193
201
|
useEffectCustomAsync: useEffectCustomAsync,
|
|
@@ -197,7 +205,8 @@ var fbaHooks = {
|
|
|
197
205
|
useResponsivePoint: useResponsivePoint,
|
|
198
206
|
useSafeState: useSafeState,
|
|
199
207
|
useMemoCustom: useMemoCustom,
|
|
200
|
-
useCopyRemoveSpace: useCopyRemoveSpace
|
|
208
|
+
useCopyRemoveSpace: useCopyRemoveSpace,
|
|
209
|
+
useUuid: useUuid
|
|
201
210
|
};
|
|
202
211
|
|
|
203
212
|
export { fbaHooks };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-hooks/use-array-change.ts","@flatbiz/antd/src/fba-hooks/use-effect-custom.ts","@flatbiz/antd/src/fba-hooks/use-copy-remove-space.ts","@flatbiz/antd/src/fba-hooks/use-effect-custom-async.ts","@flatbiz/antd/src/fba-hooks/use-memo-custom.ts","@flatbiz/antd/src/fba-hooks/use-previous.ts","@flatbiz/antd/src/fba-hooks/use-safe-state.ts","@flatbiz/antd/src/fba-hooks/use-theme.ts","@flatbiz/antd/src/fba-hooks/index.ts"],"sourcesContent":["import { useRef } from 'react';\nimport { toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nexport const useArrayChange = <T>(\n defautDataList: Array<T>,\n forceUpdate = true\n) => {\n const changeListRef = useRef<Array<T>>(defautDataList);\n const update = hooks.useForceUpdate();\n const arrayOperate = {\n add: hooks.useCallbackRef((dataItem: T | Array<T>, isUnshift?: boolean) => {\n if (isUnshift) {\n const targetList = toArray<T>(dataItem);\n changeListRef.current = [...targetList, ...changeListRef.current];\n } else {\n changeListRef.current = changeListRef.current.concat(dataItem);\n }\n if (forceUpdate) {\n update();\n }\n }),\n update: hooks.useCallbackRef((index: number, dataItem: T) => {\n const target = changeListRef.current[index];\n if (target) {\n changeListRef.current[index] = { ...target, ...dataItem };\n }\n if (forceUpdate) {\n update();\n }\n }),\n delete: hooks.useCallbackRef((index: number) => {\n const deleteItem = changeListRef.current.splice(index, 1);\n if (forceUpdate) {\n update();\n }\n return deleteItem;\n }),\n resetList: hooks.useCallbackRef((dataList: Array<T>) => {\n changeListRef.current = dataList;\n if (forceUpdate) {\n update();\n }\n }),\n getList: hooks.useCallbackRef(() => {\n return changeListRef.current;\n }),\n };\n return [changeListRef.current, arrayOperate] as const;\n};\n","import { type DependencyList, type EffectCallback, useEffect } from 'react';\n\nexport const useEffectCustom = (fn: EffectCallback, deps: DependencyList) => {\n return useEffect(fn, deps);\n};\n","import type { TAny } from '@flatbiz/utils';\nimport { trim } from '@flatbiz/utils';\nimport { useEffectCustom } from './use-effect-custom.js';\n\nconst innerIgnoreClass = [\n 'ace_editor',\n 'tox-tinymce',\n 'cancel-flatbiz-antd-copy',\n];\n\nexport type CopyRemoveSpaceProps = {\n /** 设置监听复制范围,如果不设置则监听全局 */\n target?: () => Element;\n /**\n * 忽略的class配置(不参与copy逻辑处理的class),例如:['ace_editor']\n * ```\n * 1. 某些控件(例如:ace编辑器、富文本等)内部自定义处理copy逻辑,此处不能进行拦截,通过配置class属性来忽略\n * 2. ignoreClass可配置操作目标class、以及层层父节点class,通过目标节点以及层层父节点的class与ignoreClass匹配成功后,取消后续copy文案处理逻辑\n * ```\n */\n ignoreClass?: string[];\n};\n/**\n * 移除复制文本中前后空格\n * ```\n * 1. target 设置监听复制范围,如果不设置则监听全局,例如\n * export const Demo = () => {\n * const ref = useRef<any>();\n * useCopyRemoveSpace({\n * target: () => ref.current,\n * });\n * return (\n * <div ref={ref}>\n * <QueryTable />\n * </div>\n * );\n * };\n * 2. 某些控件(例如:ace编辑器、富文本等)内部自定义处理copy逻辑,此处不能进行拦截,通过配置class属性来忽略\n * 3. ignoreClass包括操作目标class、以及层层父节点class,通过目标节点层层父节点的class匹配成功后,取消后续copy文案处理逻辑\n * 3. ignoreClass 内置有 ['ace_editor', 'tox-tinymce', 'cancel-flatbiz-antd-copy']\n * ```\n */\nexport const useCopyRemoveSpace = (props?: CopyRemoveSpaceProps) => {\n const ignoreClass = innerIgnoreClass.concat(props?.ignoreClass || []);\n const target = props?.target?.() || window.document;\n\n useEffectCustom(() => {\n const handle = (oEvent) => {\n try {\n let parentNode = oEvent.target as HTMLElement;\n let isIgnore = false;\n while (parentNode != null) {\n const target = ignoreClass.find((item) =>\n parentNode.classList?.contains(item)\n );\n if (target) {\n isIgnore = true;\n break;\n }\n parentNode = parentNode.parentNode as HTMLElement;\n }\n if (isIgnore) return;\n let copyInfo = '';\n // 获取复制信息\n const _window = window as TAny;\n try {\n copyInfo = window['document']['selection'].createRange().text;\n } catch (_ex) {\n copyInfo = _window.getSelection().toString();\n }\n let clipboardData = _window.clipboardData; // for IE\n if (!clipboardData) {\n clipboardData = oEvent['clipboardData'];\n }\n const nextValue = trim(copyInfo, true);\n // 修改剪贴板中的内容\n clipboardData.setData('Text', nextValue);\n // 必须禁用原copy方法才能生效\n oEvent.preventDefault();\n if (nextValue !== copyInfo) {\n console.log('useCopyRemoveSpace 已操作移除复制文本中前后空格');\n }\n } catch (error: TAny) {\n console.warn(error?.message);\n }\n };\n target.addEventListener('copy', handle);\n return () => {\n target.removeEventListener('copy', handle);\n };\n }, [JSON.stringify(ignoreClass)]);\n};\n","import type { DependencyList } from 'react';\nimport { useEffect } from 'react';\n\nexport const useEffectCustomAsync = (\n fn: () => Promise<void>,\n deps: DependencyList\n) => {\n useEffect(() => {\n async function asyncFunction() {\n await fn();\n }\n void asyncFunction();\n }, deps);\n};\n","import { type DependencyList, useMemo } from 'react';\n/**\n * 自定义控制 useMemo 依赖\n */\nexport const useMemoCustom = <T>(fn: () => T, deps: DependencyList) => {\n return useMemo<T>(fn, deps);\n};\n","import { useRef } from 'react';\n\nexport type ShouldUpdateFunc<T> = (prev: T | undefined, next: T) => boolean;\n\nconst defaultShouldUpdate = <T>(a?: T, b?: T) => !Object.is(a, b);\n\nexport function usePrevious<T>(\n state: T,\n shouldUpdate: ShouldUpdateFunc<T> = defaultShouldUpdate\n): T | undefined {\n const prevRef = useRef<T>();\n const curRef = useRef<T>();\n\n if (shouldUpdate(curRef.current, state)) {\n prevRef.current = curRef.current;\n curRef.current = state;\n }\n\n return prevRef.current;\n}\n","import type { Dispatch, SetStateAction } from 'react';\nimport { useState } from 'react';\nimport { hooks } from '@wove/react';\n\nexport const useSafeState = <S extends undefined | unknown>(\n initialState?: S | (() => S)\n): [S, Dispatch<SetStateAction<S>>] => {\n const [state, setState] = useState(initialState as S);\n const isMounted = hooks.useIsMounted();\n\n return [\n state,\n (value) => {\n if (isMounted.current) {\n return setState(value);\n }\n },\n ];\n};\n","import { theme } from 'antd';\n\nexport const useThemeToken = () => {\n const { token } = theme.useToken();\n return token;\n};\n","import { useArrayChange } from './use-array-change.js';\nimport { useCopyRemoveSpace } from './use-copy-remove-space.js';\nimport { useEffectCustom } from './use-effect-custom.js';\nimport { useEffectCustomAsync } from './use-effect-custom-async.js';\nimport { useMemoCustom } from './use-memo-custom.js';\nimport { usePrevious } from './use-previous.js';\nimport { useResponsivePoint } from './use-responsive-point.js';\nimport { useSafeState } from './use-safe-state.js';\nimport { useThemeToken } from './use-theme.js';\n\nexport const fbaHooks = {\n useEffectCustom: useEffectCustom,\n useEffectCustomAsync: useEffectCustomAsync,\n useThemeToken: useThemeToken,\n useArrayChange: useArrayChange,\n usePrevious: usePrevious,\n useResponsivePoint: useResponsivePoint,\n useSafeState: useSafeState,\n useMemoCustom: useMemoCustom,\n useCopyRemoveSpace: useCopyRemoveSpace,\n};\n"],"names":["useArrayChange","defautDataList","forceUpdate","arguments","length","undefined","changeListRef","useRef","update","_hooks","useForceUpdate","arrayOperate","add","useCallbackRef","dataItem","isUnshift","targetList","toArray","current","concat","_toConsumableArray","index","target","_objectSpread","delete","deleteItem","splice","resetList","dataList","getList","useEffectCustom","fn","deps","useEffect","innerIgnoreClass","useCopyRemoveSpace","props","_props$target","ignoreClass","call","window","document","handle","oEvent","parentNode","isIgnore","find","item","_parentNode$classList","classList","contains","copyInfo","_window","createRange","text","_ex","getSelection","toString","clipboardData","nextValue","trim","setData","preventDefault","console","log","error","warn","message","addEventListener","removeEventListener","JSON","stringify","useEffectCustomAsync","asyncFunction","Promise","$return","$error","resolve","then","$await_1","$boundEx","useMemoCustom","useMemo","defaultShouldUpdate","a","b","Object","is","usePrevious","state","shouldUpdate","prevRef","curRef","useSafeState","initialState","_useState","useState","_useState2","_slicedToArray","setState","isMounted","useIsMounted","value","useThemeToken","_theme$useToken","theme","useToken","token","fbaHooks","useResponsivePoint"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-hooks/use-array-change.ts","@flatbiz/antd/src/fba-hooks/use-effect-custom.ts","@flatbiz/antd/src/fba-hooks/use-copy-remove-space.ts","@flatbiz/antd/src/fba-hooks/use-effect-custom-async.ts","@flatbiz/antd/src/fba-hooks/use-memo-custom.ts","@flatbiz/antd/src/fba-hooks/use-previous.ts","@flatbiz/antd/src/fba-hooks/use-safe-state.ts","@flatbiz/antd/src/fba-hooks/use-theme.ts","@flatbiz/antd/src/fba-hooks/use-uuid.ts","@flatbiz/antd/src/fba-hooks/index.ts"],"sourcesContent":["import { useRef } from 'react';\nimport { toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nexport const useArrayChange = <T>(\n defautDataList: Array<T>,\n forceUpdate = true\n) => {\n const changeListRef = useRef<Array<T>>(defautDataList);\n const update = hooks.useForceUpdate();\n const arrayOperate = {\n add: hooks.useCallbackRef((dataItem: T | Array<T>, isUnshift?: boolean) => {\n if (isUnshift) {\n const targetList = toArray<T>(dataItem);\n changeListRef.current = [...targetList, ...changeListRef.current];\n } else {\n changeListRef.current = changeListRef.current.concat(dataItem);\n }\n if (forceUpdate) {\n update();\n }\n }),\n update: hooks.useCallbackRef((index: number, dataItem: T) => {\n const target = changeListRef.current[index];\n if (target) {\n changeListRef.current[index] = { ...target, ...dataItem };\n }\n if (forceUpdate) {\n update();\n }\n }),\n delete: hooks.useCallbackRef((index: number) => {\n const deleteItem = changeListRef.current.splice(index, 1);\n if (forceUpdate) {\n update();\n }\n return deleteItem;\n }),\n resetList: hooks.useCallbackRef((dataList: Array<T>) => {\n changeListRef.current = dataList;\n if (forceUpdate) {\n update();\n }\n }),\n getList: hooks.useCallbackRef(() => {\n return changeListRef.current;\n }),\n };\n return [changeListRef.current, arrayOperate] as const;\n};\n","import { type DependencyList, type EffectCallback, useEffect } from 'react';\n\nexport const useEffectCustom = (fn: EffectCallback, deps: DependencyList) => {\n return useEffect(fn, deps);\n};\n","import type { TAny } from '@flatbiz/utils';\nimport { trim } from '@flatbiz/utils';\nimport { useEffectCustom } from './use-effect-custom.js';\n\nconst innerIgnoreClass = [\n 'ace_editor',\n 'tox-tinymce',\n 'cancel-flatbiz-antd-copy',\n];\n\nexport type CopyRemoveSpaceProps = {\n /** 设置监听复制范围,如果不设置则监听全局 */\n target?: () => Element;\n /**\n * 忽略的class配置(不参与copy逻辑处理的class),例如:['ace_editor']\n * ```\n * 1. 某些控件(例如:ace编辑器、富文本等)内部自定义处理copy逻辑,此处不能进行拦截,通过配置class属性来忽略\n * 2. ignoreClass可配置操作目标class、以及层层父节点class,通过目标节点以及层层父节点的class与ignoreClass匹配成功后,取消后续copy文案处理逻辑\n * ```\n */\n ignoreClass?: string[];\n};\n/**\n * 移除复制文本中前后空格\n * ```\n * 1. target 设置监听复制范围,如果不设置则监听全局,例如\n * export const Demo = () => {\n * const ref = useRef<any>();\n * useCopyRemoveSpace({\n * target: () => ref.current,\n * });\n * return (\n * <div ref={ref}>\n * <QueryTable />\n * </div>\n * );\n * };\n * 2. 某些控件(例如:ace编辑器、富文本等)内部自定义处理copy逻辑,此处不能进行拦截,通过配置class属性来忽略\n * 3. ignoreClass包括操作目标class、以及层层父节点class,通过目标节点层层父节点的class匹配成功后,取消后续copy文案处理逻辑\n * 3. ignoreClass 内置有 ['ace_editor', 'tox-tinymce', 'cancel-flatbiz-antd-copy']\n * ```\n */\nexport const useCopyRemoveSpace = (props?: CopyRemoveSpaceProps) => {\n const ignoreClass = innerIgnoreClass.concat(props?.ignoreClass || []);\n const target = props?.target?.() || window.document;\n\n useEffectCustom(() => {\n const handle = (oEvent) => {\n try {\n let parentNode = oEvent.target as HTMLElement;\n let isIgnore = false;\n while (parentNode != null) {\n const target = ignoreClass.find((item) =>\n parentNode.classList?.contains(item)\n );\n if (target) {\n isIgnore = true;\n break;\n }\n parentNode = parentNode.parentNode as HTMLElement;\n }\n if (isIgnore) return;\n let copyInfo = '';\n // 获取复制信息\n const _window = window as TAny;\n try {\n copyInfo = window['document']['selection'].createRange().text;\n } catch (_ex) {\n copyInfo = _window.getSelection().toString();\n }\n let clipboardData = _window.clipboardData; // for IE\n if (!clipboardData) {\n clipboardData = oEvent['clipboardData'];\n }\n const nextValue = trim(copyInfo, true);\n // 修改剪贴板中的内容\n clipboardData.setData('Text', nextValue);\n // 必须禁用原copy方法才能生效\n oEvent.preventDefault();\n if (nextValue !== copyInfo) {\n console.log('useCopyRemoveSpace 已操作移除复制文本中前后空格');\n }\n } catch (error: TAny) {\n console.warn(error?.message);\n }\n };\n target.addEventListener('copy', handle);\n return () => {\n target.removeEventListener('copy', handle);\n };\n }, [JSON.stringify(ignoreClass)]);\n};\n","import type { DependencyList } from 'react';\nimport { useEffect } from 'react';\n\nexport const useEffectCustomAsync = (\n fn: () => Promise<void>,\n deps: DependencyList\n) => {\n useEffect(() => {\n async function asyncFunction() {\n await fn();\n }\n void asyncFunction();\n }, deps);\n};\n","import { type DependencyList, useMemo } from 'react';\n/**\n * 自定义控制 useMemo 依赖\n */\nexport const useMemoCustom = <T>(fn: () => T, deps: DependencyList) => {\n return useMemo<T>(fn, deps);\n};\n","import { useRef } from 'react';\n\nexport type ShouldUpdateFunc<T> = (prev: T | undefined, next: T) => boolean;\n\nconst defaultShouldUpdate = <T>(a?: T, b?: T) => !Object.is(a, b);\n\nexport function usePrevious<T>(\n state: T,\n shouldUpdate: ShouldUpdateFunc<T> = defaultShouldUpdate\n): T | undefined {\n const prevRef = useRef<T>();\n const curRef = useRef<T>();\n\n if (shouldUpdate(curRef.current, state)) {\n prevRef.current = curRef.current;\n curRef.current = state;\n }\n\n return prevRef.current;\n}\n","import type { Dispatch, SetStateAction } from 'react';\nimport { useState } from 'react';\nimport { hooks } from '@wove/react';\n\nexport const useSafeState = <S extends undefined | unknown>(\n initialState?: S | (() => S)\n): [S, Dispatch<SetStateAction<S>>] => {\n const [state, setState] = useState(initialState as S);\n const isMounted = hooks.useIsMounted();\n\n return [\n state,\n (value) => {\n if (isMounted.current) {\n return setState(value);\n }\n },\n ];\n};\n","import { theme } from 'antd';\n\nexport const useThemeToken = () => {\n const { token } = theme.useToken();\n return token;\n};\n","import { useMemo } from 'react';\nimport { uuid } from '@dimjs/utils';\n\nexport const useUuid = () => {\n const id = useMemo(() => {\n return uuid();\n }, []);\n return id;\n};\n","import { useArrayChange } from './use-array-change.js';\nimport { useCopyRemoveSpace } from './use-copy-remove-space.js';\nimport { useEffectCustom } from './use-effect-custom.js';\nimport { useEffectCustomAsync } from './use-effect-custom-async.js';\nimport { useMemoCustom } from './use-memo-custom.js';\nimport { usePrevious } from './use-previous.js';\nimport { useResponsivePoint } from './use-responsive-point.js';\nimport { useSafeState } from './use-safe-state.js';\nimport { useThemeToken } from './use-theme.js';\nimport { useUuid } from './use-uuid.js';\n\nexport const fbaHooks = {\n useEffectCustom: useEffectCustom,\n useEffectCustomAsync: useEffectCustomAsync,\n useThemeToken: useThemeToken,\n useArrayChange: useArrayChange,\n usePrevious: usePrevious,\n useResponsivePoint: useResponsivePoint,\n useSafeState: useSafeState,\n useMemoCustom: useMemoCustom,\n useCopyRemoveSpace: useCopyRemoveSpace,\n useUuid: useUuid,\n};\n"],"names":["useArrayChange","defautDataList","forceUpdate","arguments","length","undefined","changeListRef","useRef","update","_hooks","useForceUpdate","arrayOperate","add","useCallbackRef","dataItem","isUnshift","targetList","toArray","current","concat","_toConsumableArray","index","target","_objectSpread","delete","deleteItem","splice","resetList","dataList","getList","useEffectCustom","fn","deps","useEffect","innerIgnoreClass","useCopyRemoveSpace","props","_props$target","ignoreClass","call","window","document","handle","oEvent","parentNode","isIgnore","find","item","_parentNode$classList","classList","contains","copyInfo","_window","createRange","text","_ex","getSelection","toString","clipboardData","nextValue","trim","setData","preventDefault","console","log","error","warn","message","addEventListener","removeEventListener","JSON","stringify","useEffectCustomAsync","asyncFunction","Promise","$return","$error","resolve","then","$await_1","$boundEx","useMemoCustom","useMemo","defaultShouldUpdate","a","b","Object","is","usePrevious","state","shouldUpdate","prevRef","curRef","useSafeState","initialState","_useState","useState","_useState2","_slicedToArray","setState","isMounted","useIsMounted","value","useThemeToken","_theme$useToken","theme","useToken","token","useUuid","id","_uuid","fbaHooks","useResponsivePoint"],"mappings":"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"}
|