@pisell/materials 6.0.11 → 6.0.12

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.
Files changed (216) hide show
  1. package/build/lowcode/assets-daily.json +11 -15
  2. package/build/lowcode/assets-dev.json +2 -6
  3. package/build/lowcode/assets-prod.json +11 -15
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +7 -7
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +22 -22
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +22 -22
  11. package/dist/umd/materials.min.css +1 -0
  12. package/dist/umd/materials.min.js +1 -0
  13. package/dist/umd/static/DotsSix.57d66266.svg +1 -0
  14. package/dist/umd/static/arrow-left.e542294f.svg +1 -0
  15. package/dist/umd/static/arrow-right.763f03e0.svg +1 -0
  16. package/dist/umd/static/filter-lines.04a54ae9.svg +1 -0
  17. package/dist/umd/static/help-circle.31c9be40.svg +1 -0
  18. package/dist/umd/static/switch-vertical-01.7ebe3ba8.svg +1 -0
  19. package/es/components/dataSourceComponents/dataSourceForm/BaseForm.js +94 -3
  20. package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.js +7 -6
  21. package/es/components/dataSourceComponents/dataSourceForm/type.d.ts +8 -0
  22. package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -0
  23. package/es/components/dataSourceComponents/dataSourceForm/utils.js +120 -38
  24. package/es/components/dataSourceComponents/dataSourceMenu/index.d.ts +2 -0
  25. package/es/components/dataSourceComponents/dataSourceMenu/index.js +19 -0
  26. package/es/components/dataSourceComponents/dataSourceTable/BaseTable.js +46 -8
  27. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +3 -3
  28. package/es/components/dataSourceComponents/fields/Input.Mobile/WithMode.d.ts +0 -1
  29. package/es/components/dataSourceComponents/fields/Input.Mobile/WithMode.js +90 -35
  30. package/es/components/dataSourceComponents/fields/Input.Mobile/index.js +11 -1
  31. package/es/components/dataSourceComponents/fields/Input.Phone/WithMode.d.ts +0 -1
  32. package/es/components/dataSourceComponents/fields/Input.Phone/WithMode.js +73 -19
  33. package/es/components/dataSourceComponents/fields/Input.Subdomain/WithMode.d.ts +4 -2
  34. package/es/components/dataSourceComponents/fields/Input.Subdomain/WithMode.js +161 -52
  35. package/es/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +4 -2
  36. package/es/components/dataSourceComponents/fields/Input.Subdomain/index.js +2 -2
  37. package/es/components/dataSourceComponents/fields/Input.Subdomain/serve.d.ts +3 -13
  38. package/es/components/dataSourceComponents/fields/Input.Subdomain/serve.js +15 -13
  39. package/es/components/dataSourceComponents/fields/Translation/BaseTranslation.js +15 -4
  40. package/es/components/dataSourceComponents/fields/Translation/type.d.ts +1 -0
  41. package/es/components/dataSourceComponents/fields/Upload/BaseUpload.js +17 -13
  42. package/es/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -1
  43. package/es/components/dataSourceComponents/fields/Upload/ReadPretty.js +4 -2
  44. package/es/components/dataSourceComponents/fields/Upload/WithMode.js +5 -4
  45. package/es/components/dataSourceComponents/fields/Upload/index.less +1 -1
  46. package/es/components/dataSourceComponents/fields/Upload/serve.d.ts +1 -1
  47. package/es/components/dataSourceComponents/fields/Upload/serve.js +5 -5
  48. package/es/components/dataSourceComponents/fields/Upload/type.d.ts +8 -0
  49. package/es/components/dataSourceComponents/fields/index.d.ts +9 -5
  50. package/es/components/dataSourceComponents/fields/type.d.ts +1 -0
  51. package/es/components/dataSourceComponents/fields/utils.js +1 -0
  52. package/es/components/dataSourceComponents/provider/actions/ActionsContext.d.ts +6 -1
  53. package/es/components/dataSourceComponents/provider/actions/ActionsProvider.d.ts +4 -1
  54. package/es/components/dataSourceComponents/provider/actions/ActionsProvider.js +0 -1
  55. package/es/components/form/index.js +12 -0
  56. package/es/components/iconfont/index.js +1 -1
  57. package/es/components/pisellDraggable/components/Action/Action.d.ts +10 -0
  58. package/es/components/pisellDraggable/components/Action/Action.js +31 -0
  59. package/es/components/pisellDraggable/components/Action/Action.less +50 -0
  60. package/es/components/pisellDraggable/components/Action/index.d.ts +2 -0
  61. package/es/components/pisellDraggable/components/Action/index.js +1 -0
  62. package/es/components/pisellDraggable/components/Handle/Handle.d.ts +3 -0
  63. package/es/components/pisellDraggable/components/Handle/Handle.js +15 -0
  64. package/es/components/pisellDraggable/components/Handle/index.d.ts +1 -0
  65. package/es/components/pisellDraggable/components/Handle/index.js +1 -0
  66. package/es/components/pisellDraggable/components/Remove/Remove.d.ts +3 -0
  67. package/es/components/pisellDraggable/components/Remove/Remove.js +17 -0
  68. package/es/components/pisellDraggable/components/Remove/index.d.ts +1 -0
  69. package/es/components/pisellDraggable/components/Remove/index.js +1 -0
  70. package/es/components/pisellDraggable/components/TreeItem/SortableTreeItem.d.ts +8 -0
  71. package/es/components/pisellDraggable/components/TreeItem/SortableTreeItem.js +51 -0
  72. package/es/components/pisellDraggable/components/TreeItem/TreeItem.d.ts +21 -0
  73. package/es/components/pisellDraggable/components/TreeItem/TreeItem.js +57 -0
  74. package/es/components/pisellDraggable/components/TreeItem/TreeItem.less +128 -0
  75. package/es/components/pisellDraggable/components/TreeItem/index.d.ts +2 -0
  76. package/es/components/pisellDraggable/components/TreeItem/index.js +2 -0
  77. package/es/components/pisellDraggable/components/index.d.ts +4 -0
  78. package/es/components/pisellDraggable/components/index.js +4 -0
  79. package/es/components/pisellDraggable/index.d.ts +27 -0
  80. package/es/components/pisellDraggable/index.js +380 -0
  81. package/es/components/pisellDraggable/types.d.ts +17 -0
  82. package/es/components/pisellDraggable/types.js +1 -0
  83. package/es/components/pisellDraggable/utilities.d.ts +17 -0
  84. package/es/components/pisellDraggable/utilities.js +230 -0
  85. package/es/components/pisellLayout/content.d.ts +1 -0
  86. package/es/components/pisellLayout/content.js +19 -2
  87. package/es/components/pisellMenu/PisellMenu.d.ts +5 -0
  88. package/es/components/pisellMenu/PisellMenu.js +55 -0
  89. package/es/components/pisellMenu/PisellMenu.less +53 -0
  90. package/es/components/pisellMenu/index.d.ts +3 -0
  91. package/es/components/pisellMenu/index.js +2 -0
  92. package/es/components/pisellMenu/types.d.ts +30 -0
  93. package/es/components/pisellMenu/types.js +1 -0
  94. package/es/components/pisellModal/components/functions/index.less +3 -0
  95. package/es/components/table/Table/utils.d.ts +1 -1
  96. package/es/components/versionModal/index.d.ts +15 -0
  97. package/es/components/versionModal/index.js +192 -0
  98. package/es/components/versionModal/index.less +3 -0
  99. package/es/index.d.ts +5 -0
  100. package/es/index.js +5 -1
  101. package/es/locales/en-US.d.ts +22 -0
  102. package/es/locales/en-US.js +24 -1
  103. package/es/locales/zh-CN.d.ts +21 -0
  104. package/es/locales/zh-CN.js +24 -2
  105. package/es/locales/zh-TW.d.ts +20 -0
  106. package/es/locales/zh-TW.js +23 -2
  107. package/lib/components/dataSourceComponents/dataSourceForm/BaseForm.js +77 -4
  108. package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.js +1 -0
  109. package/lib/components/dataSourceComponents/dataSourceForm/type.d.ts +8 -0
  110. package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -0
  111. package/lib/components/dataSourceComponents/dataSourceForm/utils.js +138 -41
  112. package/lib/components/dataSourceComponents/dataSourceMenu/index.d.ts +2 -0
  113. package/lib/components/dataSourceComponents/dataSourceMenu/index.js +45 -0
  114. package/lib/components/dataSourceComponents/dataSourceTable/BaseTable.js +14 -2
  115. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +3 -3
  116. package/lib/components/dataSourceComponents/fields/Input.Mobile/WithMode.d.ts +0 -1
  117. package/lib/components/dataSourceComponents/fields/Input.Mobile/WithMode.js +44 -29
  118. package/lib/components/dataSourceComponents/fields/Input.Mobile/index.js +11 -1
  119. package/lib/components/dataSourceComponents/fields/Input.Phone/WithMode.d.ts +0 -1
  120. package/lib/components/dataSourceComponents/fields/Input.Phone/WithMode.js +34 -17
  121. package/lib/components/dataSourceComponents/fields/Input.Subdomain/WithMode.d.ts +4 -2
  122. package/lib/components/dataSourceComponents/fields/Input.Subdomain/WithMode.js +96 -36
  123. package/lib/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +4 -2
  124. package/lib/components/dataSourceComponents/fields/Input.Subdomain/serve.d.ts +3 -13
  125. package/lib/components/dataSourceComponents/fields/Input.Subdomain/serve.js +19 -14
  126. package/lib/components/dataSourceComponents/fields/Translation/BaseTranslation.js +15 -4
  127. package/lib/components/dataSourceComponents/fields/Translation/type.d.ts +1 -0
  128. package/lib/components/dataSourceComponents/fields/Upload/BaseUpload.js +5 -3
  129. package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -1
  130. package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.js +2 -2
  131. package/lib/components/dataSourceComponents/fields/Upload/WithMode.js +4 -4
  132. package/lib/components/dataSourceComponents/fields/Upload/index.less +1 -1
  133. package/lib/components/dataSourceComponents/fields/Upload/serve.d.ts +1 -1
  134. package/lib/components/dataSourceComponents/fields/Upload/serve.js +5 -5
  135. package/lib/components/dataSourceComponents/fields/Upload/type.d.ts +8 -0
  136. package/lib/components/dataSourceComponents/fields/index.d.ts +9 -5
  137. package/lib/components/dataSourceComponents/fields/type.d.ts +1 -0
  138. package/lib/components/dataSourceComponents/fields/utils.js +1 -0
  139. package/lib/components/dataSourceComponents/provider/actions/ActionsContext.d.ts +6 -1
  140. package/lib/components/dataSourceComponents/provider/actions/ActionsProvider.d.ts +4 -1
  141. package/lib/components/form/index.js +10 -1
  142. package/lib/components/iconfont/index.js +1 -1
  143. package/lib/components/pisellDraggable/components/Action/Action.d.ts +10 -0
  144. package/lib/components/pisellDraggable/components/Action/Action.js +60 -0
  145. package/lib/components/pisellDraggable/components/Action/Action.less +50 -0
  146. package/lib/components/pisellDraggable/components/Action/index.d.ts +2 -0
  147. package/lib/components/pisellDraggable/components/Action/index.js +29 -0
  148. package/lib/components/pisellDraggable/components/Handle/Handle.d.ts +3 -0
  149. package/lib/components/pisellDraggable/components/Handle/Handle.js +54 -0
  150. package/lib/components/pisellDraggable/components/Handle/index.d.ts +1 -0
  151. package/lib/components/pisellDraggable/components/Handle/index.js +29 -0
  152. package/lib/components/pisellDraggable/components/Remove/Remove.d.ts +3 -0
  153. package/lib/components/pisellDraggable/components/Remove/Remove.js +53 -0
  154. package/lib/components/pisellDraggable/components/Remove/index.d.ts +1 -0
  155. package/lib/components/pisellDraggable/components/Remove/index.js +29 -0
  156. package/lib/components/pisellDraggable/components/TreeItem/SortableTreeItem.d.ts +8 -0
  157. package/lib/components/pisellDraggable/components/TreeItem/SortableTreeItem.js +83 -0
  158. package/lib/components/pisellDraggable/components/TreeItem/TreeItem.d.ts +21 -0
  159. package/lib/components/pisellDraggable/components/TreeItem/TreeItem.js +93 -0
  160. package/lib/components/pisellDraggable/components/TreeItem/TreeItem.less +128 -0
  161. package/lib/components/pisellDraggable/components/TreeItem/index.d.ts +2 -0
  162. package/lib/components/pisellDraggable/components/TreeItem/index.js +32 -0
  163. package/lib/components/pisellDraggable/components/index.d.ts +4 -0
  164. package/lib/components/pisellDraggable/components/index.js +40 -0
  165. package/lib/components/pisellDraggable/index.d.ts +27 -0
  166. package/lib/components/pisellDraggable/index.js +271 -0
  167. package/lib/components/pisellDraggable/types.d.ts +17 -0
  168. package/lib/components/pisellDraggable/types.js +17 -0
  169. package/lib/components/pisellDraggable/utilities.d.ts +17 -0
  170. package/lib/components/pisellDraggable/utilities.js +190 -0
  171. package/lib/components/pisellLayout/content.d.ts +1 -0
  172. package/lib/components/pisellLayout/content.js +9 -1
  173. package/lib/components/pisellMenu/PisellMenu.d.ts +5 -0
  174. package/lib/components/pisellMenu/PisellMenu.js +91 -0
  175. package/lib/components/pisellMenu/PisellMenu.less +53 -0
  176. package/lib/components/pisellMenu/index.d.ts +3 -0
  177. package/lib/components/pisellMenu/index.js +36 -0
  178. package/lib/components/pisellMenu/types.d.ts +30 -0
  179. package/lib/components/pisellMenu/types.js +17 -0
  180. package/lib/components/pisellModal/components/functions/index.less +3 -0
  181. package/lib/components/table/Table/utils.d.ts +1 -1
  182. package/lib/components/versionModal/index.d.ts +15 -0
  183. package/lib/components/versionModal/index.js +219 -0
  184. package/lib/components/versionModal/index.less +3 -0
  185. package/lib/index.d.ts +5 -0
  186. package/lib/index.js +12 -0
  187. package/lib/locales/en-US.d.ts +22 -0
  188. package/lib/locales/en-US.js +24 -1
  189. package/lib/locales/zh-CN.d.ts +21 -0
  190. package/lib/locales/zh-CN.js +24 -2
  191. package/lib/locales/zh-TW.d.ts +20 -0
  192. package/lib/locales/zh-TW.js +23 -2
  193. package/lowcode/_utils/defaultSchema.ts +23 -2
  194. package/lowcode/button/meta.ts +4 -20
  195. package/lowcode/data-source-form/meta.ts +138 -1
  196. package/lowcode/data-source-form/snippets.ts +54 -0
  197. package/lowcode/data-source-menu/meta.ts +122 -0
  198. package/lowcode/data-source-table/meta.ts +32 -27
  199. package/lowcode/data-source-table/utils.tsx +33 -1
  200. package/lowcode/data-source-wrapper/meta.ts +6 -2
  201. package/lowcode/form-group/meta.ts +5 -1
  202. package/lowcode/form-item-input.mobile/__screenshots__/mobile.png +0 -0
  203. package/lowcode/form-item-input.mobile/meta.ts +36 -46
  204. package/lowcode/form-item-input.mobile/snippets.ts +8 -2
  205. package/lowcode/form-item-input.phone/meta.ts +8 -42
  206. package/lowcode/form-item-input.phone/snippets.ts +6 -0
  207. package/lowcode/form-item-input.subdomain/__screenshots__/subdomain.png +0 -0
  208. package/lowcode/form-item-input.subdomain/meta.ts +20 -6
  209. package/lowcode/form-item-input.subdomain/snippets.ts +10 -11
  210. package/lowcode/form.item/meta.ts +48 -0
  211. package/lowcode/pisell-content/meta.ts +12 -9
  212. package/lowcode/pisell-draggable/meta.ts +190 -0
  213. package/lowcode/pisell-layout/meta.ts +9 -9
  214. package/lowcode/pisell-menu/meta.ts +112 -0
  215. package/package.json +1 -1
  216. package/lowcode/form-item-input.mobile/__screenshots__/phone.png +0 -0
@@ -0,0 +1,8 @@
1
+ import type { UniqueIdentifier } from '@dnd-kit/core';
2
+ import React from 'react';
3
+ import { Props as TreeItemProps } from './TreeItem';
4
+ interface Props extends TreeItemProps {
5
+ id: UniqueIdentifier;
6
+ }
7
+ export declare function SortableTreeItem({ id, depth, ...props }: Props): React.JSX.Element;
8
+ export {};
@@ -0,0 +1,51 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ var _excluded = ["id", "depth"];
3
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
8
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
9
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
11
+ import { useSortable } from '@dnd-kit/sortable';
12
+ import { CSS } from '@dnd-kit/utilities';
13
+ import React from 'react';
14
+ import { iOS } from "../../utilities";
15
+ import { TreeItem } from "./TreeItem";
16
+ var animateLayoutChanges = function animateLayoutChanges(_ref) {
17
+ var isSorting = _ref.isSorting,
18
+ wasDragging = _ref.wasDragging;
19
+ return isSorting || wasDragging ? false : true;
20
+ };
21
+ export function SortableTreeItem(_ref2) {
22
+ var id = _ref2.id,
23
+ depth = _ref2.depth,
24
+ props = _objectWithoutProperties(_ref2, _excluded);
25
+ var _useSortable = useSortable({
26
+ id: id,
27
+ animateLayoutChanges: animateLayoutChanges
28
+ }),
29
+ attributes = _useSortable.attributes,
30
+ isDragging = _useSortable.isDragging,
31
+ isSorting = _useSortable.isSorting,
32
+ listeners = _useSortable.listeners,
33
+ setDraggableNodeRef = _useSortable.setDraggableNodeRef,
34
+ setDroppableNodeRef = _useSortable.setDroppableNodeRef,
35
+ transform = _useSortable.transform,
36
+ transition = _useSortable.transition;
37
+ var style = {
38
+ transform: CSS.Translate.toString(transform),
39
+ transition: transition
40
+ };
41
+ return /*#__PURE__*/React.createElement(TreeItem, _extends({
42
+ ref: setDraggableNodeRef,
43
+ wrapperRef: setDroppableNodeRef,
44
+ style: style,
45
+ depth: depth,
46
+ ghost: isDragging,
47
+ disableSelection: iOS,
48
+ disableInteraction: isSorting,
49
+ handleProps: _objectSpread(_objectSpread({}, attributes), listeners)
50
+ }, props));
51
+ }
@@ -0,0 +1,21 @@
1
+ import React, { HTMLAttributes } from 'react';
2
+ import type { TreeItem as TreeItemType } from '../../types';
3
+ import './TreeItem.less';
4
+ export interface Props extends Omit<HTMLAttributes<HTMLLIElement>, 'id'> {
5
+ childCount?: number;
6
+ clone?: boolean;
7
+ collapsed?: boolean;
8
+ depth: number;
9
+ disableInteraction?: boolean;
10
+ disableSelection?: boolean;
11
+ ghost?: boolean;
12
+ handleProps?: any;
13
+ indicator?: boolean;
14
+ indentationWidth: number;
15
+ onCollapse?(): void;
16
+ onRemove?(): void;
17
+ wrapperRef?(node: HTMLLIElement): void;
18
+ item: TreeItemType;
19
+ renderItem?(item: TreeItemType): React.ReactNode;
20
+ }
21
+ export declare const TreeItem: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,57 @@
1
+ var _excluded = ["childCount", "clone", "depth", "disableSelection", "disableInteraction", "ghost", "handleProps", "indentationWidth", "indicator", "collapsed", "onCollapse", "onRemove", "style", "wrapperRef", "item", "renderItem"];
2
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
+ import classNames from 'classnames';
6
+ import React, { forwardRef } from 'react';
7
+ import { Action, Handle, Remove } from "../../components";
8
+ import "./TreeItem.less";
9
+ export var TreeItem = /*#__PURE__*/forwardRef(function (props, ref) {
10
+ var childCount = props.childCount,
11
+ clone = props.clone,
12
+ depth = props.depth,
13
+ disableSelection = props.disableSelection,
14
+ disableInteraction = props.disableInteraction,
15
+ ghost = props.ghost,
16
+ handleProps = props.handleProps,
17
+ indentationWidth = props.indentationWidth,
18
+ indicator = props.indicator,
19
+ collapsed = props.collapsed,
20
+ onCollapse = props.onCollapse,
21
+ onRemove = props.onRemove,
22
+ style = props.style,
23
+ wrapperRef = props.wrapperRef,
24
+ item = props.item,
25
+ renderItem = props.renderItem,
26
+ otherProps = _objectWithoutProperties(props, _excluded);
27
+ if (renderItem) {
28
+ return renderItem(props);
29
+ }
30
+ return /*#__PURE__*/React.createElement("li", _extends({
31
+ className: classNames('Wrapper', clone && 'clone', ghost && 'ghost', indicator && 'indicator', disableSelection && 'disableSelection', disableInteraction && 'disableInteraction'),
32
+ ref: wrapperRef,
33
+ style: {
34
+ '--spacing': "".concat(indentationWidth * depth, "px")
35
+ }
36
+ }, otherProps), /*#__PURE__*/React.createElement("div", {
37
+ className: 'TreeItem',
38
+ ref: ref,
39
+ style: style
40
+ }, /*#__PURE__*/React.createElement(Handle, handleProps), onCollapse && /*#__PURE__*/React.createElement(Action, {
41
+ onClick: onCollapse,
42
+ className: classNames('Collapse', collapsed && 'collapsed')
43
+ }, collapseIcon), /*#__PURE__*/React.createElement("span", {
44
+ className: 'Text'
45
+ }, item.id), !clone && onRemove && /*#__PURE__*/React.createElement(Remove, {
46
+ onClick: onRemove
47
+ }), clone && childCount && childCount > 1 ? /*#__PURE__*/React.createElement("span", {
48
+ className: 'Count'
49
+ }, childCount) : null));
50
+ });
51
+ var collapseIcon = /*#__PURE__*/React.createElement("svg", {
52
+ width: "10",
53
+ xmlns: "http://www.w3.org/2000/svg",
54
+ viewBox: "0 0 70 41"
55
+ }, /*#__PURE__*/React.createElement("path", {
56
+ d: "M30.76 39.2402C31.885 40.3638 33.41 40.995 35 40.995C36.59 40.995 38.115 40.3638 39.24 39.2402L68.24 10.2402C69.2998 9.10284 69.8768 7.59846 69.8494 6.04406C69.822 4.48965 69.1923 3.00657 68.093 1.90726C66.9937 0.807959 65.5106 0.178263 63.9562 0.150837C62.4018 0.123411 60.8974 0.700397 59.76 1.76024L35 26.5102L10.24 1.76024C9.10259 0.700397 7.59822 0.123411 6.04381 0.150837C4.4894 0.178263 3.00632 0.807959 1.90702 1.90726C0.807714 3.00657 0.178019 4.48965 0.150593 6.04406C0.123167 7.59846 0.700153 9.10284 1.75999 10.2402L30.76 39.2402Z"
57
+ }));
@@ -0,0 +1,128 @@
1
+ .Wrapper {
2
+ list-style: none;
3
+ box-sizing: border-box;
4
+ padding-left: var(--spacing);
5
+ margin-bottom: -1px;
6
+
7
+ &.clone {
8
+ display: inline-block;
9
+ pointer-events: none;
10
+ padding: 0;
11
+ padding-left: 10px;
12
+ padding-top: 5px;
13
+
14
+ .TreeItem {
15
+ --vertical-padding: 5px;
16
+
17
+ padding-right: 24px;
18
+ border-radius: 4px;
19
+ box-shadow: 0px 15px 15px 0 rgba(34, 33, 81, 0.1);
20
+ }
21
+ }
22
+
23
+ &.ghost {
24
+ &.indicator {
25
+ opacity: 1;
26
+ position: relative;
27
+ z-index: 1;
28
+ margin-bottom: -1px;
29
+
30
+ .TreeItem {
31
+ position: relative;
32
+ padding: 0;
33
+ height: 8px;
34
+ border-color: #2389ff;
35
+ background-color: #56a1f8;
36
+
37
+ &:before {
38
+ position: absolute;
39
+ left: -8px;
40
+ top: -4px;
41
+ display: block;
42
+ content: '';
43
+ width: 12px;
44
+ height: 12px;
45
+ border-radius: 50%;
46
+ border: 1px solid #2389ff;
47
+ background-color: #ffffff;
48
+ }
49
+
50
+ >* {
51
+ /* Items are hidden using height and opacity to retain focus */
52
+ opacity: 0;
53
+ height: 0;
54
+ }
55
+ }
56
+ }
57
+
58
+ &:not(.indicator) {
59
+ opacity: 0.5;
60
+ }
61
+
62
+ .TreeItem>* {
63
+ box-shadow: none;
64
+ background-color: transparent;
65
+ }
66
+ }
67
+ }
68
+
69
+ .TreeItem {
70
+ --vertical-padding: 10px;
71
+
72
+ position: relative;
73
+ display: flex;
74
+ align-items: center;
75
+ padding: var(--vertical-padding) 10px;
76
+ background-color: #fff;
77
+ border: 1px solid #dedede;
78
+ color: #222;
79
+ box-sizing: border-box;
80
+ }
81
+
82
+ .Text {
83
+ flex-grow: 1;
84
+ padding-left: 0.5rem;
85
+ white-space: nowrap;
86
+ text-overflow: ellipsis;
87
+ overflow: hidden;
88
+ }
89
+
90
+ .Count {
91
+ position: absolute;
92
+ top: -10px;
93
+ right: -10px;
94
+ display: flex;
95
+ align-items: center;
96
+ justify-content: center;
97
+ width: 24px;
98
+ height: 24px;
99
+ border-radius: 50%;
100
+ background-color: #2389ff;
101
+ font-size: 0.8rem;
102
+ font-weight: 600;
103
+ color: #fff;
104
+ }
105
+
106
+ .disableInteraction {
107
+ pointer-events: none;
108
+ }
109
+
110
+ .disableSelection,
111
+ .clone {
112
+
113
+ .Text,
114
+ .Count {
115
+ user-select: none;
116
+ -webkit-user-select: none;
117
+ }
118
+ }
119
+
120
+ .Collapse {
121
+ svg {
122
+ transition: transform 250ms ease;
123
+ }
124
+
125
+ &.collapsed svg {
126
+ transform: rotate(-90deg);
127
+ }
128
+ }
@@ -0,0 +1,2 @@
1
+ export { TreeItem } from './TreeItem';
2
+ export { SortableTreeItem } from './SortableTreeItem';
@@ -0,0 +1,2 @@
1
+ export { TreeItem } from "./TreeItem";
2
+ export { SortableTreeItem } from "./SortableTreeItem";
@@ -0,0 +1,4 @@
1
+ export { Action } from './Action';
2
+ export { Handle } from './Handle';
3
+ export { Remove } from './Remove';
4
+ export { TreeItem, SortableTreeItem } from './TreeItem';
@@ -0,0 +1,4 @@
1
+ export { Action } from "./Action";
2
+ export { Handle } from "./Handle";
3
+ export { Remove } from "./Remove";
4
+ export { TreeItem, SortableTreeItem } from "./TreeItem";
@@ -0,0 +1,27 @@
1
+ /**
2
+ * 可拖拽树形组件
3
+ * 基于@dnd-kit库实现,支持拖拽排序、展开折叠、删除等功能
4
+ */
5
+ import React from 'react';
6
+ import type { TreeItem, TreeItems } from './types';
7
+ interface Props {
8
+ /** 是否支持折叠功能 */
9
+ collapsible?: boolean;
10
+ /** 初始树形数据,默认使用 initialItems */
11
+ value?: TreeItems;
12
+ /** 缩进宽度,控制子节点的缩进距离 */
13
+ indentationWidth?: number;
14
+ /** 是否显示拖拽指示器 */
15
+ indicator?: boolean;
16
+ /** 是否支持删除节点功能 */
17
+ removable?: boolean;
18
+ /** 自定义渲染树节点 */
19
+ renderItem?: (item: TreeItem) => React.ReactNode;
20
+ /** 树形数据变化回调 */
21
+ onChange?: (items: TreeItems) => void;
22
+ /** 删除节点前 */
23
+ onRemoveBefore?: (item: TreeItem) => Promise<boolean>;
24
+ }
25
+ export declare function SortableTree({ collapsible, value, indicator, indentationWidth, removable, renderItem, onChange, onRemoveBefore, }: Props): React.JSX.Element;
26
+ declare const Demo: () => React.JSX.Element;
27
+ export default Demo;