@pointcloud/pcloud-components 1.0.8 → 1.0.10

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.
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type ModalFuncProps, type ButtonProps } from 'antd';
2
+ import { type ModalFuncProps, type ButtonProps, type PopoverProps } from 'antd';
3
3
  import { type DFormProps } from '../DForm';
4
4
  import { type DTableSourceProps, type DTableProps } from '../DTable';
5
5
  import type { DModalProps } from '../DModal/interface';
@@ -24,6 +24,16 @@ export type CRUDRefProps = {
24
24
  openDetailModal: (_record?: any) => void;
25
25
  };
26
26
  export type MoreActionColumnRender<T = Record<string, any>> = (_text: any, _record: T) => React.ReactNode;
27
+ export type MoreActionProps<T = Record<string, any>> = MoreActionColumnRender<T> | {
28
+ /** 内容渲染函数 */
29
+ render: MoreActionColumnRender<T>;
30
+ /** Popover 属性 */
31
+ popoverProps?: PopoverProps;
32
+ /** 更多按钮文字,默认为"更多" */
33
+ label?: string;
34
+ /** 更多按钮配置 */
35
+ buttonProps?: ButtonProps;
36
+ };
27
37
  export type CRUDProps = {
28
38
  className?: string;
29
39
  style?: React.CSSProperties;
@@ -33,7 +43,7 @@ export type CRUDProps = {
33
43
  };
34
44
  /** 表格配置 */
35
45
  tableProps: DTableProps & {
36
- moreActionColumn?: MoreActionColumnRender;
46
+ moreActionColumn?: MoreActionProps;
37
47
  };
38
48
  /** 新增/编辑表单配置 */
39
49
  modalFormProps?: {
@@ -48,7 +58,7 @@ export type CRUDProps = {
48
58
  /** 新增按钮文本 */
49
59
  addButtonText?: string;
50
60
  /** 是否显示新增按钮 */
51
- showAddButton?: boolean;
61
+ showAdd?: boolean;
52
62
  /** 是否显示批量删除按钮 */
53
63
  showBatchDelete?: boolean;
54
64
  /** 批量删除按钮文本 */
@@ -73,7 +83,6 @@ export type CRUDProps = {
73
83
  viewButtonText?: string;
74
84
  /** 行查看按钮配置 */
75
85
  viewButtonProps?: ButtonProps;
76
- /** 更多操作列自定义渲染,参数为(text, record),返回ReactNode */
77
86
  /** 自定义操作栏 */
78
87
  actionBar?: React.ReactNode;
79
88
  /** 数据刷新回调 */
@@ -81,13 +90,13 @@ export type CRUDProps = {
81
90
  crudApi: {
82
91
  list: (_params: any) => Promise<DTableSourceProps>;
83
92
  /** 删除数据接口 */
84
- delete: (_params: any) => Promise<any>;
93
+ delete?: (_currentRecord: any) => Promise<any>;
85
94
  /** 新增数据接口 */
86
- add: (_params: any) => Promise<any>;
95
+ add?: (_params: any) => Promise<any>;
87
96
  /** 编辑数据接口 */
88
- edit: (_params: any) => Promise<any>;
97
+ edit?: (_params: any, _currentRecord: any) => Promise<any>;
89
98
  /** 详情数据接口 */
90
- detail?: (_params: any) => Promise<any>;
99
+ detail?: (_currentRecord: any) => Promise<any>;
91
100
  };
92
101
  /** 全局刷新策略 */
93
102
  refreshStrategy?: RefreshStrategy;
@@ -47,8 +47,8 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
47
47
  addButtonProps = props.addButtonProps,
48
48
  _props$deleteModalPro = props.deleteModalProps,
49
49
  deleteModalProps = _props$deleteModalPro === void 0 ? {} : _props$deleteModalPro,
50
- _props$showAddButton = props.showAddButton,
51
- showAddButton = _props$showAddButton === void 0 ? true : _props$showAddButton,
50
+ _props$showAdd = props.showAdd,
51
+ showAdd = _props$showAdd === void 0 ? true : _props$showAdd,
52
52
  _props$showBatchDelet = props.showBatchDelete,
53
53
  showBatchDelete = _props$showBatchDelet === void 0 ? true : _props$showBatchDelet,
54
54
  batchDeleteButtonProps = props.batchDeleteButtonProps,
@@ -141,25 +141,42 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
141
141
  var visible = useMemo(function () {
142
142
  return conditionVisible ? 'visible' : 'hidden';
143
143
  }, [conditionVisible]);
144
- var deleteApi = useCallback(crudApi.delete, [crudApi.delete]);
145
- var addApi = useCallback(crudApi.add, [crudApi.add]);
146
- var editApi = useCallback(crudApi.edit, [crudApi.edit]);
147
- var detailApi = useCallback(crudApi.detail || ( /*#__PURE__*/function () {
148
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_params) {
149
- return _regeneratorRuntime().wrap(function _callee$(_context) {
150
- while (1) switch (_context.prev = _context.next) {
151
- case 0:
152
- return _context.abrupt("return", _params);
153
- case 1:
154
- case "end":
155
- return _context.stop();
156
- }
157
- }, _callee);
158
- }));
159
- return function (_x) {
160
- return _ref.apply(this, arguments);
161
- };
162
- }()), [crudApi.detail]);
144
+ var deleteApi = useCallback(crudApi.delete || /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
145
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
146
+ while (1) switch (_context.prev = _context.next) {
147
+ case 0:
148
+ case "end":
149
+ return _context.stop();
150
+ }
151
+ }, _callee);
152
+ })), [crudApi.delete]);
153
+ var addApi = useCallback(crudApi.add || /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
154
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
155
+ while (1) switch (_context2.prev = _context2.next) {
156
+ case 0:
157
+ case "end":
158
+ return _context2.stop();
159
+ }
160
+ }, _callee2);
161
+ })), [crudApi.add]);
162
+ var editApi = useCallback(crudApi.edit || /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
163
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
164
+ while (1) switch (_context3.prev = _context3.next) {
165
+ case 0:
166
+ case "end":
167
+ return _context3.stop();
168
+ }
169
+ }, _callee3);
170
+ })), [crudApi.edit]);
171
+ var detailApi = useCallback(crudApi.detail || /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
172
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
173
+ while (1) switch (_context4.prev = _context4.next) {
174
+ case 0:
175
+ case "end":
176
+ return _context4.stop();
177
+ }
178
+ }, _callee4);
179
+ })), [crudApi.detail]);
163
180
  var listApi = useCallback(function (params) {
164
181
  var _crudApi$list;
165
182
  return (_crudApi$list = crudApi.list) === null || _crudApi$list === void 0 ? void 0 : _crudApi$list.call(crudApi, params);
@@ -246,35 +263,40 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
246
263
  form.resetFields();
247
264
  setSearchValues((_searchFormProps$init = searchFormProps === null || searchFormProps === void 0 ? void 0 : searchFormProps.initialValues) !== null && _searchFormProps$init !== void 0 ? _searchFormProps$init : {});
248
265
  }, [form, searchFormProps === null || searchFormProps === void 0 ? void 0 : searchFormProps.initialValues]);
249
- var handleAdd = useCallback(function () {
266
+ var handleAdd = useCallback(function (data) {
267
+ var _Object$keys;
250
268
  currentRecordRef.current = null;
251
- setDetailData(null);
269
+ if (data && ((_Object$keys = Object.keys(data)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.length) > 0) {
270
+ setDetailData(_objectSpread({}, data));
271
+ } else {
272
+ setDetailData(null);
273
+ }
252
274
  setModalConfig({
253
275
  visible: true,
254
276
  mode: 'add'
255
277
  });
256
278
  }, []);
257
279
  var handleEdit = useCallback( /*#__PURE__*/function () {
258
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(record) {
280
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(record) {
259
281
  var data;
260
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
261
- while (1) switch (_context2.prev = _context2.next) {
282
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
283
+ while (1) switch (_context5.prev = _context5.next) {
262
284
  case 0:
263
285
  currentRecordRef.current = _objectSpread({}, record);
264
286
  if (!detailApi) {
265
- _context2.next = 7;
287
+ _context5.next = 7;
266
288
  break;
267
289
  }
268
- _context2.next = 4;
290
+ _context5.next = 4;
269
291
  return detailApi(record);
270
292
  case 4:
271
- _context2.t0 = _context2.sent;
272
- _context2.next = 8;
293
+ _context5.t0 = _context5.sent;
294
+ _context5.next = 8;
273
295
  break;
274
296
  case 7:
275
- _context2.t0 = record;
297
+ _context5.t0 = record;
276
298
  case 8:
277
- data = _context2.t0;
299
+ data = _context5.t0;
278
300
  setDetailData(data);
279
301
  setModalConfig({
280
302
  visible: true,
@@ -282,12 +304,12 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
282
304
  });
283
305
  case 11:
284
306
  case "end":
285
- return _context2.stop();
307
+ return _context5.stop();
286
308
  }
287
- }, _callee2);
309
+ }, _callee5);
288
310
  }));
289
- return function (_x2) {
290
- return _ref2.apply(this, arguments);
311
+ return function (_x) {
312
+ return _ref5.apply(this, arguments);
291
313
  };
292
314
  }(), [detailApi]);
293
315
  var handleRefresh = useCallback(function (strategy, refreshOptions) {
@@ -338,12 +360,12 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
338
360
  DModal.delete(_objectSpread({
339
361
  title: '确定要删除所选数据吗?',
340
362
  onOk: function () {
341
- var _onOk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
363
+ var _onOk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
342
364
  var _isNeedRefreshToPage, needRefreshToPage, targetPage;
343
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
344
- while (1) switch (_context3.prev = _context3.next) {
365
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
366
+ while (1) switch (_context6.prev = _context6.next) {
345
367
  case 0:
346
- _context3.next = 2;
368
+ _context6.next = 2;
347
369
  return deleteApi(_objectSpread({}, selectedData));
348
370
  case 2:
349
371
  _isNeedRefreshToPage = isNeedRefreshToPage(selectedData.selectedRows.length), needRefreshToPage = _isNeedRefreshToPage.needRefreshToPage, targetPage = _isNeedRefreshToPage.targetPage;
@@ -357,9 +379,9 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
357
379
  });
358
380
  case 5:
359
381
  case "end":
360
- return _context3.stop();
382
+ return _context6.stop();
361
383
  }
362
- }, _callee3);
384
+ }, _callee6);
363
385
  }));
364
386
  function onOk() {
365
387
  return _onOk.apply(this, arguments);
@@ -369,19 +391,19 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
369
391
  }, deleteModalProps));
370
392
  }, [deleteApi, memoizedDeleteRefreshStrategy, handleRefresh, selectedData, isNeedRefreshToPage]);
371
393
  var handleDelete = useCallback( /*#__PURE__*/function () {
372
- var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(record) {
373
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
374
- while (1) switch (_context5.prev = _context5.next) {
394
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(record) {
395
+ return _regeneratorRuntime().wrap(function _callee8$(_context8) {
396
+ while (1) switch (_context8.prev = _context8.next) {
375
397
  case 0:
376
398
  DModal.delete({
377
399
  title: '确定要删除此条数据吗?',
378
400
  onOk: function () {
379
- var _onOk2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
401
+ var _onOk2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
380
402
  var _isNeedRefreshToPage2, needRefreshToPage, targetPage;
381
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
382
- while (1) switch (_context4.prev = _context4.next) {
403
+ return _regeneratorRuntime().wrap(function _callee7$(_context7) {
404
+ while (1) switch (_context7.prev = _context7.next) {
383
405
  case 0:
384
- _context4.next = 2;
406
+ _context7.next = 2;
385
407
  return deleteApi(record);
386
408
  case 2:
387
409
  _isNeedRefreshToPage2 = isNeedRefreshToPage(), needRefreshToPage = _isNeedRefreshToPage2.needRefreshToPage, targetPage = _isNeedRefreshToPage2.targetPage;
@@ -391,9 +413,9 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
391
413
  });
392
414
  case 4:
393
415
  case "end":
394
- return _context4.stop();
416
+ return _context7.stop();
395
417
  }
396
- }, _callee4);
418
+ }, _callee7);
397
419
  }));
398
420
  function onOk() {
399
421
  return _onOk2.apply(this, arguments);
@@ -403,36 +425,36 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
403
425
  });
404
426
  case 1:
405
427
  case "end":
406
- return _context5.stop();
428
+ return _context8.stop();
407
429
  }
408
- }, _callee5);
430
+ }, _callee8);
409
431
  }));
410
- return function (_x3) {
411
- return _ref3.apply(this, arguments);
432
+ return function (_x2) {
433
+ return _ref6.apply(this, arguments);
412
434
  };
413
435
  }(), [deleteApi, memoizedDeleteRefreshStrategy, handleRefresh, isNeedRefreshToPage]);
414
436
  var handleModalOk = useCallback( /*#__PURE__*/function () {
415
- var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(values) {
416
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
417
- while (1) switch (_context6.prev = _context6.next) {
437
+ var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(values) {
438
+ return _regeneratorRuntime().wrap(function _callee9$(_context9) {
439
+ while (1) switch (_context9.prev = _context9.next) {
418
440
  case 0:
419
- _context6.prev = 0;
441
+ _context9.prev = 0;
420
442
  if (!(modalConfig.mode === 'edit' && currentRecordRef.current)) {
421
- _context6.next = 7;
443
+ _context9.next = 7;
422
444
  break;
423
445
  }
424
- _context6.next = 4;
425
- return editApi(_objectSpread(_objectSpread({}, currentRecordRef.current || {}), values));
446
+ _context9.next = 4;
447
+ return editApi(_objectSpread(_objectSpread({}, currentRecordRef.current || {}), values), currentRecordRef.current);
426
448
  case 4:
427
449
  handleRefresh(memoizedEditRefreshStrategy);
428
- _context6.next = 11;
450
+ _context9.next = 11;
429
451
  break;
430
452
  case 7:
431
453
  if (!(modalConfig.mode === 'add')) {
432
- _context6.next = 11;
454
+ _context9.next = 11;
433
455
  break;
434
456
  }
435
- _context6.next = 10;
457
+ _context9.next = 10;
436
458
  return addApi(values);
437
459
  case 10:
438
460
  handleRefresh(memoizedAddRefreshStrategy);
@@ -442,20 +464,20 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
442
464
  visible: false
443
465
  }));
444
466
  setDetailData(null);
445
- _context6.next = 19;
467
+ _context9.next = 19;
446
468
  break;
447
469
  case 16:
448
- _context6.prev = 16;
449
- _context6.t0 = _context6["catch"](0);
450
- return _context6.abrupt("return", Promise.reject(_context6.t0));
470
+ _context9.prev = 16;
471
+ _context9.t0 = _context9["catch"](0);
472
+ return _context9.abrupt("return", Promise.reject(_context9.t0));
451
473
  case 19:
452
474
  case "end":
453
- return _context6.stop();
475
+ return _context9.stop();
454
476
  }
455
- }, _callee6, null, [[0, 16]]);
477
+ }, _callee9, null, [[0, 16]]);
456
478
  }));
457
- return function (_x4) {
458
- return _ref4.apply(this, arguments);
479
+ return function (_x3) {
480
+ return _ref7.apply(this, arguments);
459
481
  };
460
482
  }(), [modalConfig.mode, addApi, editApi, memoizedAddRefreshStrategy, memoizedEditRefreshStrategy, handleRefresh]);
461
483
  var handleCancel = useCallback(function () {
@@ -468,26 +490,26 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
468
490
  currentRecordRef.current = null;
469
491
  }, []);
470
492
  var handleView = useCallback( /*#__PURE__*/function () {
471
- var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(record) {
493
+ var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(record) {
472
494
  var data;
473
- return _regeneratorRuntime().wrap(function _callee7$(_context7) {
474
- while (1) switch (_context7.prev = _context7.next) {
495
+ return _regeneratorRuntime().wrap(function _callee10$(_context10) {
496
+ while (1) switch (_context10.prev = _context10.next) {
475
497
  case 0:
476
498
  currentRecordRef.current = _objectSpread({}, record);
477
499
  if (!detailApi) {
478
- _context7.next = 7;
500
+ _context10.next = 7;
479
501
  break;
480
502
  }
481
- _context7.next = 4;
503
+ _context10.next = 4;
482
504
  return detailApi(record);
483
505
  case 4:
484
- _context7.t0 = _context7.sent;
485
- _context7.next = 8;
506
+ _context10.t0 = _context10.sent;
507
+ _context10.next = 8;
486
508
  break;
487
509
  case 7:
488
- _context7.t0 = record;
510
+ _context10.t0 = record;
489
511
  case 8:
490
- data = _context7.t0;
512
+ data = _context10.t0;
491
513
  setDetailData(data);
492
514
  setModalConfig({
493
515
  visible: true,
@@ -495,18 +517,21 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
495
517
  });
496
518
  case 11:
497
519
  case "end":
498
- return _context7.stop();
520
+ return _context10.stop();
499
521
  }
500
- }, _callee7);
522
+ }, _callee10);
501
523
  }));
502
- return function (_x5) {
503
- return _ref5.apply(this, arguments);
524
+ return function (_x4) {
525
+ return _ref8.apply(this, arguments);
504
526
  };
505
527
  }(), [detailApi]);
506
528
  var actionColumn = useMemo(function () {
507
529
  var currentHandleEdit = handleEdit;
508
530
  var currentHandleDelete = handleDelete;
509
531
  var currentHandleView = handleView;
532
+ var moreActionConfig = tableProps !== null && tableProps !== void 0 && tableProps.moreActionColumn ? typeof tableProps.moreActionColumn === 'function' ? {
533
+ render: tableProps.moreActionColumn
534
+ } : tableProps.moreActionColumn : null;
510
535
  return function (_text, record) {
511
536
  return /*#__PURE__*/_jsxs("div", {
512
537
  className: actionColumnClass,
@@ -538,26 +563,32 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
538
563
  size: "small"
539
564
  }, viewButtonProps), {}, {
540
565
  children: viewButtonText
541
- })), (tableProps === null || tableProps === void 0 ? void 0 : tableProps.moreActionColumn) && /*#__PURE__*/_jsx(Popover, {
566
+ })), moreActionConfig && /*#__PURE__*/_jsx(Popover, _objectSpread(_objectSpread({
542
567
  trigger: "click",
543
568
  placement: "bottomRight",
544
- content: tableProps === null || tableProps === void 0 ? void 0 : tableProps.moreActionColumn(_text, record),
545
- children: /*#__PURE__*/_jsx(Button, {
569
+ content: moreActionConfig.render(_text, record),
570
+ zIndex: 5,
571
+ getPopupContainer: function getPopupContainer(e) {
572
+ return e.parentElement || document.body;
573
+ }
574
+ }, moreActionConfig.popoverProps), {}, {
575
+ children: /*#__PURE__*/_jsx(Button, _objectSpread(_objectSpread({
546
576
  type: "link",
547
577
  icon: /*#__PURE__*/_jsx(MoreOutlined, {}),
548
- size: "small",
549
- children: "\u66F4\u591A"
550
- })
551
- })]
578
+ size: "small"
579
+ }, moreActionConfig.buttonProps), {}, {
580
+ children: moreActionConfig.label || '更多'
581
+ }))
582
+ }))]
552
583
  });
553
584
  };
554
585
  }, [handleEdit, handleDelete, handleView, showEdit, showDelete, showView, editButtonText, deleteButtonText, viewButtonText, tableProps === null || tableProps === void 0 ? void 0 : tableProps.moreActionColumn]);
555
586
  var tablePropsWithSearch = useMemo(function () {
556
- var _ref6 = tableProps || {},
557
- _ref6$columns = _ref6.columns,
558
- columns = _ref6$columns === void 0 ? [] : _ref6$columns,
559
- tableExtraParams = _ref6.extraParams,
560
- otherTableProps = _objectWithoutProperties(_ref6, _excluded2);
587
+ var _ref9 = tableProps || {},
588
+ _ref9$columns = _ref9.columns,
589
+ columns = _ref9$columns === void 0 ? [] : _ref9$columns,
590
+ tableExtraParams = _ref9.extraParams,
591
+ otherTableProps = _objectWithoutProperties(_ref9, _excluded2);
561
592
  return _objectSpread({
562
593
  actionColumn: actionColumn,
563
594
  columns: tablePropsState.columns || columns,
@@ -614,8 +645,8 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
614
645
  getSearchValues: function getSearchValues() {
615
646
  return form.getFieldsValue();
616
647
  },
617
- openAddModal: function openAddModal() {
618
- return handleAdd();
648
+ openAddModal: function openAddModal(params) {
649
+ return handleAdd(params);
619
650
  },
620
651
  openEditModal: function openEditModal(params) {
621
652
  return handleEdit(params);
@@ -655,7 +686,7 @@ var forwardCRUD = /*#__PURE__*/forwardRef(function (props, ref) {
655
686
  className: "".concat(classname, "-action-tool-bar"),
656
687
  children: [/*#__PURE__*/_jsxs("div", {
657
688
  className: "".concat(classname, "-action-bar"),
658
- children: [showAddButton && /*#__PURE__*/_jsx(Button, _objectSpread(_objectSpread({
689
+ children: [showAdd && /*#__PURE__*/_jsx(Button, _objectSpread(_objectSpread({
659
690
  type: "primary",
660
691
  icon: /*#__PURE__*/_jsx(PlusOutlined, {}),
661
692
  onClick: handleAdd
@@ -121,15 +121,16 @@
121
121
 
122
122
  // form display
123
123
  .@{prefix}-form {
124
- transition: all 0.3s ease-in-out;
124
+ transition: height 0.3s ease-out, opacity 0.3s ease-out;
125
125
  overflow: hidden;
126
+ height: auto;
126
127
 
127
128
  &.visible {
128
- max-height: 300px;
129
+ height: calc-size(auto, size);
129
130
  }
130
131
 
131
132
  &.hidden {
132
- max-height: 0;
133
+ height: 0;
133
134
  }
134
135
  }
135
136
 
@@ -65,6 +65,6 @@ export type { AnimatedScrollListProps } from './AnimatedScrollList/interface';
65
65
  export { default as DRangePicker } from './DRangePicker';
66
66
  export type { DRangePickerProps } from './DRangePicker/interface';
67
67
  export { default as CRUD } from './CRUD';
68
- export { type CRUDProps, type CRUDRefProps, type MoreActionColumnRender } from './CRUD';
68
+ export { type CRUDProps, type CRUDRefProps, type MoreActionProps, type MoreActionColumnRender } from './CRUD';
69
69
  export { default as DynamicFormItem } from './DynamicFormItem';
70
70
  export type { DynamicFormItemProps } from './DynamicFormItem';
@@ -1 +1 @@
1
- .pui-label-value{display:inline-flex}.pui-label-value span:first-child{max-width:120px;padding-right:4px;white-space:nowrap}.pui-label-value span:last-child{flex:1 1}.pui-label-value span:last-child.no-wrap{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar{height:8px;width:8px}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.5);border-radius:8px}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar-track{border-radius:2px}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar-corner{background-color:#f1f1f1}.pui-tree-select-dropdown .ant-select-tree-node-content-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pui-tree-select-dropdown .ant-select-tree-node-content-wrapper .ant-select-tree-title{overflow:hidden}.pui-upload .preview .ant-upload-list-item-actions a[target=_blank][rel="noopener noreferrer"]{opacity:1!important;pointer-events:auto!important}.pui-upload .ant-upload-list.ant-upload-list-picture-card .ant-upload-span .ant-upload-list-item-thumbnail{height:46px}.pui-upload .ant-upload-list.ant-upload-list-picture-card .ant-upload-span .ant-upload-list-item-name{display:inline;display:initial;position:absolute}.pui-ip-address{border:1px solid #d9d9d9;border-radius:2px;display:inline-block;transition:all .3s}.pui-ip-address.small{height:24px}.pui-ip-address.large{padding:6.5px 10px}.pui-ip-address.middle{padding:4px 10px}.pui-ip-address.disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;color:rgba(0,0,0,.25);cursor:not-allowed;opacity:1}.pui-ip-address.disabled:hover{border-color:#d9d9d9}.pui-ip-address:hover{border-color:#4d90ff}.pui-ip-address:focus-within{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2)}.pui-ip-address input{font-feature-settings:"tnum","tnum";background:none;border:none;box-sizing:border-box;color:#000000d9;display:inline-block;font-size:14px;font-variant:tabular-nums;line-height:1.5715;margin:0;outline:0;padding:0;position:relative;text-align:center}.pui-ip-address input[disabled]{color:inherit;cursor:not-allowed}.pui-ip-address input[type=number]{appearance:textfield}.pui-ip-address input[type=number]::-webkit-inner-spin-button,.pui-ip-address input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.pui-range-picker-left .ant-picker-panel-container,.pui-range-picker-right .ant-picker-panel-container{display:flex}.pui-range-picker-left .ant-picker-footer,.pui-range-picker-right .ant-picker-footer{flex:1 1;min-width:40px}.pui-range-picker-left .ant-picker-ranges,.pui-range-picker-right .ant-picker-ranges{display:flex;flex-direction:column}.pui-range-picker-left .ant-picker-preset .ant-tag,.pui-range-picker-right .ant-picker-preset .ant-tag{margin-right:0}.pui-range-picker-left .ant-picker-panel-container{flex-direction:row-reverse}.pui-form .form-wrapper>.ant-form-item{margin-bottom:24px;margin-right:0;min-height:32px}.pui-form .ant-input-number,.pui-form .ant-picker{width:100%}.pui-form.ant-form-horizontal .form-wrapper>.ant-form-item:last-child,.pui-form.ant-form-vertical .form-wrapper>.ant-form-item:last-child{margin-bottom:0}.pui-form.ant-form-horizontal .ant-form-item-label{min-width:80px}.pui-form.ant-form-inline .form-wrapper,.pui-form.ant-form-inline.inlineVertical .form-wrapper{align-items:flex-end;display:flex;flex:1 1;flex-wrap:wrap;height:min-content}.pui-form.ant-form-inline .form-wrapper>.ant-form-item,.pui-form.ant-form-inline.inlineVertical .form-wrapper>.ant-form-item{padding-right:16px}.pui-form.ant-form-inline.inlineVertical .ant-form-item-row{flex-direction:column}.pui-form.ant-form-inline.inlineVertical .ant-form-item-row .ant-form-item-label{text-align:left}.pui-form.ant-form-inline.inlineVertical .grid-row{flex:1 1}.pui-search-filter{align-items:center;background-color:#fff;margin-top:10px;width:100%}.pui-search-filter span.ant-collapse-header-text{cursor:auto!important;display:inline-block;width:100%}.pui-search-filter .search-header{display:flex;width:100%}.pui-search-filter .search-header .left{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:no-wrap}.pui-search-filter .search-header .right{display:flex;justify-content:center}.pui-search-filter .search-header .right .input{border-radius:4px;width:200px}.pui-search-filter .search-header .right .button{margin-left:10px}.pui-search-filter .search-header .right .button:active,.pui-search-filter .search-header .right .button:focus,.pui-search-filter .search-header .right .button:hover{border-color:transparent}.pui-search-filter .search-header .right .button .icon{margin-left:8px;transition:transform .4s}.pui-search-filter .search-header .right .button .icon.down{transform:rotate(180deg)}.pui-search-filter .search-header .right .button .icon.up{transform:rotate(0deg)}.pui-search-filter .title{align-items:center;display:flex;font-weight:700;padding-bottom:10px}.pui-search-filter .title span.icon{background-color:#1890ff;border-radius:2px;height:16px;margin-right:6px;width:4px}.pui-search-filter .search-content .search-btn{justify-content:center}.pui-search-filter .search-content .search-btn>button{margin:0 5px}.pui-error-boundary{align-items:center;background-color:#dd7f7f;border-radius:10px;display:flex;flex-direction:column;justify-content:center;margin:20px;padding:15px;width:auto}.pui-error-boundary .error-text{margin-top:20px}.pui-error-boundary .error-refresh{background-color:#4593ef;border-radius:5px;color:#fff;cursor:pointer;font-weight:700;height:40px;line-height:40px;text-align:center;width:140px}.pui-error-boundary .errorDetiles .detilesLink{color:blue}.pui-error-boundary .errorDetiles .errordetails{background-color:#ccc6be;border:1px solid #777;border-radius:5px;color:#777;font-size:80%;padding:10px}.pui-picture-card{display:inline-block;padding:10px;transition:box-shadow .3s linear}.pui-picture-card .info{margin-top:10px}.pui-picture-card-bordered{border:1px solid rgba(0,0,0,.06)}.pui-picture-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09);cursor:pointer}.pui-picture-card.horizontal{display:flex;justify-content:space-around}.pui-loading .mask{background:rgba(0,0,0,.3);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:100000}.pui-loading .loading{background:hsla(0,0%,100%,.9);border-radius:10px;box-shadow:3px 3px 3px rgba(0,0,0,.2);left:50%;padding:20px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:100001}.pui-loading.body-container .loading,.pui-loading.body-container .mask{position:fixed}.pui-nodata{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.pui-nodata .not-data-image{display:block;height:100px}.pui-nodata .no-data-text{color:#000;display:inline-block;font-size:14px;font-weight:400;margin-top:5px;opacity:.65;text-align:center;width:100%}.pui-table .ant-spin-container,.pui-table .ant-spin-nested-loading,.pui-table .ant-table-container,.pui-table .ant-table-content{height:100%}.pui-table .ant-spin-container,.pui-table .ant-table-container{display:flex;flex-direction:column;overflow:hidden}.pui-table .ant-table{flex:1 1;overflow:hidden}.pui-table .ant-table-body{overflow-y:auto}.pui-table .ant-table-body .ant-table-tbody>tr>td.ant-table-cell.d-table-cell-wrap{white-space:normal}.pui-table .ant-table-body::-webkit-scrollbar{height:8px;width:4px}.pui-table .ant-table-body::-webkit-scrollbar-thumb{background-color:#0084ff}.pui-table .ant-table-body::-webkit-scrollbar-track{background-color:#f1f1f1;border-radius:2px}.pui-table .ant-table-body::-webkit-scrollbar-corner{background-color:#f1f1f1}.pui-table .ant-spin-nested-loading>div>.ant-spin{max-height:none}.pui-table .ant-pagination-total-text span{color:#40a9ff;font-weight:700}.pui-modal-container .ant-modal-wrap .ant-modal{height:100%;max-width:none}.pui-modal-container .ant-modal-wrap .ant-modal .ant-modal-content{height:100%;width:100%}.pui-absolute-modal-container .ant-modal-wrap,.pui-fixed-modal-container .ant-modal-wrap{position:fixed}.pui-relative-modal-container .ant-modal-wrap{position:absolute}.pui-color-picker .sketch-picker{box-shadow:none!important;padding:0!important}.trigger{border:5px solid #fff;border-radius:2px;box-shadow:0 0 2px #000;cursor:pointer;display:inline-block;height:26px;width:60px}.pui-typewriter-text{font-feature-settings:none;display:inline-block;font-variant-ligatures:none;min-height:1em;position:relative}.pui-typewriter-text-cursor{animation-fill-mode:both;animation-iteration-count:infinite;animation-name:pc-typewriter-cursor-blink;animation-timing-function:step-end;display:inline-block;margin-left:4px}@keyframes pc-typewriter-cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.pui-infinite-scroll-wrapper .ant-list .ant-row{margin-right:0!important}.scroll-container{overflow-x:hidden;overflow-y:auto;position:relative}.scroll-container .backtop{right:50px}.scroll-container .up{background:#007aff;border-radius:3px;color:#fff;text-align:center}.toolbar{background-color:rgba(0,0,0,.5);color:#fff;justify-content:center}.toolbar,.toolbar button{align-items:center;display:flex}.toolbar button{background-color:transparent;border-width:0;cursor:pointer}.toolbar button:hover{background-color:#0074d9}.toolbar .icon>path{fill:#fff}.pui-signature-pad{align-items:center;display:flex;flex-direction:column;justify-content:center;position:relative}.pui-signature-pad-canvas{border:1px solid #d9d9d9;border-radius:4px}.pui-signature-pad-toolbar{display:flex;gap:8px;justify-content:flex-end;margin-top:8px;text-align:center}.pui-signature-pad-button{background-color:#fff;border:1px solid #1677ff;border-radius:4px;color:#1677ff;cursor:pointer;height:32px;min-width:64px;padding:4px 16px;transition:all .3s}.pui-signature-pad-button:hover{background-color:#f0f5ff}.pui-signature-pad-button:last-child{background-color:#1677ff;color:#fff}.pui-signature-pad-button:last-child:hover{background-color:#4096ff}.pui-context-menu{animation:contextmenu-show .2s ease-out forwards;background:#fff;border:1px solid #f0f0f0;border-radius:1px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);min-width:120px;opacity:0;padding:4px 0;transform:scale(.8);transform-origin:top left}.pui-context-menu-item{align-items:center;color:rgba(0,0,0,.88);cursor:pointer;display:flex;gap:8px;padding:5px 12px;transition:all .3s;-ms-user-select:none;user-select:none}.pui-context-menu-item:hover{background:rgba(0,0,0,.04)}.pui-context-menu-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.pui-context-menu-item-disabled:hover{background:none}.pui-context-menu-item-divider{background:#f0f0f0;height:1px;margin:4px 0}@keyframes contextmenu-show{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.pui-org-tree{align-items:center;display:flex;height:100%;justify-content:center;overflow:auto;position:relative;width:100%}.pui-org-tree .org-tree-node-label{cursor:pointer}.pui-animated-scroll-list{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.pui-animated-scroll-list-header{flex-shrink:0}.pui-animated-scroll-list-body{overflow:hidden;position:relative}.pui-animated-scroll-list-content{position:relative}.pui-crud{display:flex;flex-direction:column;height:100%;overflow:hidden}.pui-crud.fullscreen{background-color:#fff;inset:0;padding:10px;position:fixed;z-index:10000}.pui-crud-action-tool-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.pui-crud-action-bar,.pui-crud-tool-bar{align-items:center;display:flex;gap:8px;justify-content:flex-start}.pui-crud .tool-icon{border:1px solid #e3e3e3;border-radius:50%;cursor:pointer;font-size:15px;padding:5px}.pui-crud .tool-icon:hover{border-color:#2e4dd9;color:#2e4dd9}.pui-crud .tool-icon.rotating{animation:rotating .5s linear}.pui-crud .column-setting-popup .ant-popover-title{padding-left:10px;padding-right:10px}.pui-crud .column-setting-popup .ant-popover-inner-content{padding:8px 0 4px;width:100%}.pui-crud .column-setting-popup .column-setting-title{align-items:center;display:flex;justify-content:space-between}.pui-crud .column-setting-popup .column-setting-list{display:flex;flex-direction:column;list-style:none;margin-bottom:0;max-height:300px;overflow-y:auto;padding:5px 0;padding-inline-start:0}.pui-crud .column-setting-popup .column-setting-list::-webkit-scrollbar{width:5px}.pui-crud .column-setting-popup .column-setting-list::-webkit-scrollbar-track{border-radius:3px}.pui-crud .column-setting-popup .column-setting-list::-webkit-scrollbar-thumb{background:#8b8b8b;border-radius:3px;width:5px}.pui-crud .column-setting-popup .column-setting-item{align-items:center;border-radius:4px;display:flex;margin-bottom:2px;min-height:32px;padding:8px 10px;-ms-user-select:none;user-select:none}.pui-crud .column-setting-popup .column-setting-item:hover{background-color:#f5f5f5}.pui-crud .column-setting-popup .column-drag-handle{align-items:center;color:#666;cursor:move;display:flex;margin-right:8px}.pui-crud .column-setting-popup .column-setting-footer{border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;padding-top:4px}.pui-crud .pui-form{overflow:hidden;transition:all .3s ease-in-out}.pui-crud .pui-form.visible{max-height:300px}.pui-crud .pui-form.hidden{max-height:0}.pui-crud-table{flex:1 1;overflow:hidden}.pui-crud-modalform-view .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:none}@keyframes rotating{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dynamic-form-item{align-items:flex-start;display:flex;gap:8px;margin-bottom:8px;width:100%}.dynamic-form-item .ant-form-item{flex:1 1;margin-bottom:0}.dynamic-form-item .ant-btn-link{flex-shrink:0}.dynamic-form-item.single .ant-space-item:first-of-type{display:flex;flex:1 1}.dynamic-form-item~.dynamic-form-item .ant-col.ant-form-item-label{visibility:hidden}
1
+ .pui-label-value{display:inline-flex}.pui-label-value span:first-child{max-width:120px;padding-right:4px;white-space:nowrap}.pui-label-value span:last-child{flex:1 1}.pui-label-value span:last-child.no-wrap{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar{height:8px;width:8px}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.5);border-radius:8px}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar-track{border-radius:2px}.pui-cascader-dropdown .ant-cascader-menu::-webkit-scrollbar-corner{background-color:#f1f1f1}.pui-tree-select-dropdown .ant-select-tree-node-content-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pui-tree-select-dropdown .ant-select-tree-node-content-wrapper .ant-select-tree-title{overflow:hidden}.pui-upload .preview .ant-upload-list-item-actions a[target=_blank][rel="noopener noreferrer"]{opacity:1!important;pointer-events:auto!important}.pui-upload .ant-upload-list.ant-upload-list-picture-card .ant-upload-span .ant-upload-list-item-thumbnail{height:46px}.pui-upload .ant-upload-list.ant-upload-list-picture-card .ant-upload-span .ant-upload-list-item-name{display:inline;display:initial;position:absolute}.pui-ip-address{border:1px solid #d9d9d9;border-radius:2px;display:inline-block;transition:all .3s}.pui-ip-address.small{height:24px}.pui-ip-address.large{padding:6.5px 10px}.pui-ip-address.middle{padding:4px 10px}.pui-ip-address.disabled{background-color:#f5f5f5;border-color:#d9d9d9;box-shadow:none;color:rgba(0,0,0,.25);cursor:not-allowed;opacity:1}.pui-ip-address.disabled:hover{border-color:#d9d9d9}.pui-ip-address:hover{border-color:#4d90ff}.pui-ip-address:focus-within{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24,144,255,.2)}.pui-ip-address input{font-feature-settings:"tnum","tnum";background:none;border:none;box-sizing:border-box;color:#000000d9;display:inline-block;font-size:14px;font-variant:tabular-nums;line-height:1.5715;margin:0;outline:0;padding:0;position:relative;text-align:center}.pui-ip-address input[disabled]{color:inherit;cursor:not-allowed}.pui-ip-address input[type=number]{appearance:textfield}.pui-ip-address input[type=number]::-webkit-inner-spin-button,.pui-ip-address input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.pui-range-picker-left .ant-picker-panel-container,.pui-range-picker-right .ant-picker-panel-container{display:flex}.pui-range-picker-left .ant-picker-footer,.pui-range-picker-right .ant-picker-footer{flex:1 1;min-width:40px}.pui-range-picker-left .ant-picker-ranges,.pui-range-picker-right .ant-picker-ranges{display:flex;flex-direction:column}.pui-range-picker-left .ant-picker-preset .ant-tag,.pui-range-picker-right .ant-picker-preset .ant-tag{margin-right:0}.pui-range-picker-left .ant-picker-panel-container{flex-direction:row-reverse}.pui-form .form-wrapper>.ant-form-item{margin-bottom:24px;margin-right:0;min-height:32px}.pui-form .ant-input-number,.pui-form .ant-picker{width:100%}.pui-form.ant-form-horizontal .form-wrapper>.ant-form-item:last-child,.pui-form.ant-form-vertical .form-wrapper>.ant-form-item:last-child{margin-bottom:0}.pui-form.ant-form-horizontal .ant-form-item-label{min-width:80px}.pui-form.ant-form-inline .form-wrapper,.pui-form.ant-form-inline.inlineVertical .form-wrapper{align-items:flex-end;display:flex;flex:1 1;flex-wrap:wrap;height:min-content}.pui-form.ant-form-inline .form-wrapper>.ant-form-item,.pui-form.ant-form-inline.inlineVertical .form-wrapper>.ant-form-item{padding-right:16px}.pui-form.ant-form-inline.inlineVertical .ant-form-item-row{flex-direction:column}.pui-form.ant-form-inline.inlineVertical .ant-form-item-row .ant-form-item-label{text-align:left}.pui-form.ant-form-inline.inlineVertical .grid-row{flex:1 1}.pui-search-filter{align-items:center;background-color:#fff;margin-top:10px;width:100%}.pui-search-filter span.ant-collapse-header-text{cursor:auto!important;display:inline-block;width:100%}.pui-search-filter .search-header{display:flex;width:100%}.pui-search-filter .search-header .left{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:no-wrap}.pui-search-filter .search-header .right{display:flex;justify-content:center}.pui-search-filter .search-header .right .input{border-radius:4px;width:200px}.pui-search-filter .search-header .right .button{margin-left:10px}.pui-search-filter .search-header .right .button:active,.pui-search-filter .search-header .right .button:focus,.pui-search-filter .search-header .right .button:hover{border-color:transparent}.pui-search-filter .search-header .right .button .icon{margin-left:8px;transition:transform .4s}.pui-search-filter .search-header .right .button .icon.down{transform:rotate(180deg)}.pui-search-filter .search-header .right .button .icon.up{transform:rotate(0deg)}.pui-search-filter .title{align-items:center;display:flex;font-weight:700;padding-bottom:10px}.pui-search-filter .title span.icon{background-color:#1890ff;border-radius:2px;height:16px;margin-right:6px;width:4px}.pui-search-filter .search-content .search-btn{justify-content:center}.pui-search-filter .search-content .search-btn>button{margin:0 5px}.pui-error-boundary{align-items:center;background-color:#dd7f7f;border-radius:10px;display:flex;flex-direction:column;justify-content:center;margin:20px;padding:15px;width:auto}.pui-error-boundary .error-text{margin-top:20px}.pui-error-boundary .error-refresh{background-color:#4593ef;border-radius:5px;color:#fff;cursor:pointer;font-weight:700;height:40px;line-height:40px;text-align:center;width:140px}.pui-error-boundary .errorDetiles .detilesLink{color:blue}.pui-error-boundary .errorDetiles .errordetails{background-color:#ccc6be;border:1px solid #777;border-radius:5px;color:#777;font-size:80%;padding:10px}.pui-picture-card{display:inline-block;padding:10px;transition:box-shadow .3s linear}.pui-picture-card .info{margin-top:10px}.pui-picture-card-bordered{border:1px solid rgba(0,0,0,.06)}.pui-picture-card-hoverable:hover{border-color:transparent;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09);cursor:pointer}.pui-picture-card.horizontal{display:flex;justify-content:space-around}.pui-loading .mask{background:rgba(0,0,0,.3);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:100000}.pui-loading .loading{background:hsla(0,0%,100%,.9);border-radius:10px;box-shadow:3px 3px 3px rgba(0,0,0,.2);left:50%;padding:20px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:100001}.pui-loading.body-container .loading,.pui-loading.body-container .mask{position:fixed}.pui-nodata{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.pui-nodata .not-data-image{display:block;height:100px}.pui-nodata .no-data-text{color:#000;display:inline-block;font-size:14px;font-weight:400;margin-top:5px;opacity:.65;text-align:center;width:100%}.pui-table .ant-spin-container,.pui-table .ant-spin-nested-loading,.pui-table .ant-table-container,.pui-table .ant-table-content{height:100%}.pui-table .ant-spin-container,.pui-table .ant-table-container{display:flex;flex-direction:column;overflow:hidden}.pui-table .ant-table{flex:1 1;overflow:hidden}.pui-table .ant-table-body{overflow-y:auto}.pui-table .ant-table-body .ant-table-tbody>tr>td.ant-table-cell.d-table-cell-wrap{white-space:normal}.pui-table .ant-table-body::-webkit-scrollbar{height:8px;width:4px}.pui-table .ant-table-body::-webkit-scrollbar-thumb{background-color:#0084ff}.pui-table .ant-table-body::-webkit-scrollbar-track{background-color:#f1f1f1;border-radius:2px}.pui-table .ant-table-body::-webkit-scrollbar-corner{background-color:#f1f1f1}.pui-table .ant-spin-nested-loading>div>.ant-spin{max-height:none}.pui-table .ant-pagination-total-text span{color:#40a9ff;font-weight:700}.pui-modal-container .ant-modal-wrap .ant-modal{height:100%;max-width:none}.pui-modal-container .ant-modal-wrap .ant-modal .ant-modal-content{height:100%;width:100%}.pui-absolute-modal-container .ant-modal-wrap,.pui-fixed-modal-container .ant-modal-wrap{position:fixed}.pui-relative-modal-container .ant-modal-wrap{position:absolute}.pui-color-picker .sketch-picker{box-shadow:none!important;padding:0!important}.trigger{border:5px solid #fff;border-radius:2px;box-shadow:0 0 2px #000;cursor:pointer;display:inline-block;height:26px;width:60px}.pui-typewriter-text{font-feature-settings:none;display:inline-block;font-variant-ligatures:none;min-height:1em;position:relative}.pui-typewriter-text-cursor{animation-fill-mode:both;animation-iteration-count:infinite;animation-name:pc-typewriter-cursor-blink;animation-timing-function:step-end;display:inline-block;margin-left:4px}@keyframes pc-typewriter-cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.pui-infinite-scroll-wrapper .ant-list .ant-row{margin-right:0!important}.scroll-container{overflow-x:hidden;overflow-y:auto;position:relative}.scroll-container .backtop{right:50px}.scroll-container .up{background:#007aff;border-radius:3px;color:#fff;text-align:center}.toolbar{background-color:rgba(0,0,0,.5);color:#fff;justify-content:center}.toolbar,.toolbar button{align-items:center;display:flex}.toolbar button{background-color:transparent;border-width:0;cursor:pointer}.toolbar button:hover{background-color:#0074d9}.toolbar .icon>path{fill:#fff}.pui-signature-pad{align-items:center;display:flex;flex-direction:column;justify-content:center;position:relative}.pui-signature-pad-canvas{border:1px solid #d9d9d9;border-radius:4px}.pui-signature-pad-toolbar{display:flex;gap:8px;justify-content:flex-end;margin-top:8px;text-align:center}.pui-signature-pad-button{background-color:#fff;border:1px solid #1677ff;border-radius:4px;color:#1677ff;cursor:pointer;height:32px;min-width:64px;padding:4px 16px;transition:all .3s}.pui-signature-pad-button:hover{background-color:#f0f5ff}.pui-signature-pad-button:last-child{background-color:#1677ff;color:#fff}.pui-signature-pad-button:last-child:hover{background-color:#4096ff}.pui-context-menu{animation:contextmenu-show .2s ease-out forwards;background:#fff;border:1px solid #f0f0f0;border-radius:1px;box-shadow:0 3px 6px -4px rgba(0,0,0,.12),0 6px 16px 0 rgba(0,0,0,.08),0 9px 28px 8px rgba(0,0,0,.05);min-width:120px;opacity:0;padding:4px 0;transform:scale(.8);transform-origin:top left}.pui-context-menu-item{align-items:center;color:rgba(0,0,0,.88);cursor:pointer;display:flex;gap:8px;padding:5px 12px;transition:all .3s;-ms-user-select:none;user-select:none}.pui-context-menu-item:hover{background:rgba(0,0,0,.04)}.pui-context-menu-item-disabled{color:rgba(0,0,0,.25);cursor:not-allowed}.pui-context-menu-item-disabled:hover{background:none}.pui-context-menu-item-divider{background:#f0f0f0;height:1px;margin:4px 0}@keyframes contextmenu-show{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.pui-org-tree{align-items:center;display:flex;height:100%;justify-content:center;overflow:auto;position:relative;width:100%}.pui-org-tree .org-tree-node-label{cursor:pointer}.pui-animated-scroll-list{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.pui-animated-scroll-list-header{flex-shrink:0}.pui-animated-scroll-list-body{overflow:hidden;position:relative}.pui-animated-scroll-list-content{position:relative}.pui-crud{display:flex;flex-direction:column;height:100%;overflow:hidden}.pui-crud.fullscreen{background-color:#fff;inset:0;padding:10px;position:fixed;z-index:10000}.pui-crud-action-tool-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.pui-crud-action-bar,.pui-crud-tool-bar{align-items:center;display:flex;gap:8px;justify-content:flex-start}.pui-crud .tool-icon{border:1px solid #e3e3e3;border-radius:50%;cursor:pointer;font-size:15px;padding:5px}.pui-crud .tool-icon:hover{border-color:#2e4dd9;color:#2e4dd9}.pui-crud .tool-icon.rotating{animation:rotating .5s linear}.pui-crud .column-setting-popup .ant-popover-title{padding-left:10px;padding-right:10px}.pui-crud .column-setting-popup .ant-popover-inner-content{padding:8px 0 4px;width:100%}.pui-crud .column-setting-popup .column-setting-title{align-items:center;display:flex;justify-content:space-between}.pui-crud .column-setting-popup .column-setting-list{display:flex;flex-direction:column;list-style:none;margin-bottom:0;max-height:300px;overflow-y:auto;padding:5px 0;padding-inline-start:0}.pui-crud .column-setting-popup .column-setting-list::-webkit-scrollbar{width:5px}.pui-crud .column-setting-popup .column-setting-list::-webkit-scrollbar-track{border-radius:3px}.pui-crud .column-setting-popup .column-setting-list::-webkit-scrollbar-thumb{background:#8b8b8b;border-radius:3px;width:5px}.pui-crud .column-setting-popup .column-setting-item{align-items:center;border-radius:4px;display:flex;margin-bottom:2px;min-height:32px;padding:8px 10px;-ms-user-select:none;user-select:none}.pui-crud .column-setting-popup .column-setting-item:hover{background-color:#f5f5f5}.pui-crud .column-setting-popup .column-drag-handle{align-items:center;color:#666;cursor:move;display:flex;margin-right:8px}.pui-crud .column-setting-popup .column-setting-footer{border-top:1px solid #f0f0f0;display:flex;justify-content:flex-end;padding-top:4px}.pui-crud .pui-form{height:auto;overflow:hidden;transition:height .3s ease-out,opacity .3s ease-out}.pui-crud .pui-form.visible{height:calc-size(auto,size)}.pui-crud .pui-form.hidden{height:0}.pui-crud-table{flex:1 1;overflow:hidden}.pui-crud-modalform-view .ant-form-item-label>label.ant-form-item-required:not(.ant-form-item-required-mark-optional):before{display:none}@keyframes rotating{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dynamic-form-item{align-items:flex-start;display:flex;gap:8px;margin-bottom:8px;width:100%}.dynamic-form-item .ant-form-item{flex:1 1;margin-bottom:0}.dynamic-form-item .ant-btn-link{flex-shrink:0}.dynamic-form-item.single .ant-space-item:first-of-type{display:flex;flex:1 1}.dynamic-form-item~.dynamic-form-item .ant-col.ant-form-item-label{visibility:hidden}