@pisell/materials 6.0.11 → 6.0.13
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/build/lowcode/assets-daily.json +11 -15
- package/build/lowcode/assets-dev.json +2 -6
- package/build/lowcode/assets-prod.json +11 -15
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +7 -7
- package/build/lowcode/preview.js +8 -8
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +18 -18
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +18 -18
- package/es/components/dataSourceComponents/dataSourceForm/BaseForm.js +94 -3
- package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.js +7 -6
- package/es/components/dataSourceComponents/dataSourceForm/type.d.ts +8 -0
- package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -0
- package/es/components/dataSourceComponents/dataSourceForm/utils.js +117 -38
- package/es/components/dataSourceComponents/dataSourceMenu/index.d.ts +2 -0
- package/es/components/dataSourceComponents/dataSourceMenu/index.js +19 -0
- package/es/components/dataSourceComponents/dataSourceTable/BaseTable.js +46 -8
- package/es/components/dataSourceComponents/dataSourceTable/hooks/useDrawerState.d.ts +2 -2
- package/es/components/dataSourceComponents/fields/Input.Mobile/WithMode.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Input.Mobile/WithMode.js +90 -35
- package/es/components/dataSourceComponents/fields/Input.Mobile/index.js +11 -1
- package/es/components/dataSourceComponents/fields/Input.Phone/WithMode.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Input.Phone/WithMode.js +73 -19
- package/es/components/dataSourceComponents/fields/Input.Subdomain/WithMode.d.ts +4 -2
- package/es/components/dataSourceComponents/fields/Input.Subdomain/WithMode.js +163 -52
- package/es/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +4 -2
- package/es/components/dataSourceComponents/fields/Input.Subdomain/index.js +2 -2
- package/es/components/dataSourceComponents/fields/Input.Subdomain/serve.d.ts +3 -13
- package/es/components/dataSourceComponents/fields/Input.Subdomain/serve.js +15 -13
- package/es/components/dataSourceComponents/fields/Translation/BaseTranslation.js +15 -4
- package/es/components/dataSourceComponents/fields/Translation/type.d.ts +1 -0
- package/es/components/dataSourceComponents/fields/Upload/BaseUpload.js +17 -13
- package/es/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -1
- package/es/components/dataSourceComponents/fields/Upload/ReadPretty.js +4 -2
- package/es/components/dataSourceComponents/fields/Upload/WithMode.js +5 -4
- package/es/components/dataSourceComponents/fields/Upload/index.less +1 -1
- package/es/components/dataSourceComponents/fields/Upload/serve.d.ts +1 -1
- package/es/components/dataSourceComponents/fields/Upload/serve.js +5 -5
- package/es/components/dataSourceComponents/fields/Upload/type.d.ts +8 -0
- package/es/components/dataSourceComponents/fields/index.d.ts +8 -4
- package/es/components/dataSourceComponents/fields/type.d.ts +1 -0
- package/es/components/dataSourceComponents/fields/utils.js +1 -0
- package/es/components/dataSourceComponents/provider/actions/ActionsContext.d.ts +6 -1
- package/es/components/dataSourceComponents/provider/actions/ActionsProvider.d.ts +4 -1
- package/es/components/dataSourceComponents/provider/actions/ActionsProvider.js +0 -1
- package/es/components/form/index.js +12 -0
- package/es/components/iconfont/index.js +1 -1
- package/es/components/pisellDraggable/components/Action/Action.d.ts +10 -0
- package/es/components/pisellDraggable/components/Action/Action.js +31 -0
- package/es/components/pisellDraggable/components/Action/Action.less +50 -0
- package/es/components/pisellDraggable/components/Action/index.d.ts +2 -0
- package/es/components/pisellDraggable/components/Action/index.js +1 -0
- package/es/components/pisellDraggable/components/Handle/Handle.d.ts +3 -0
- package/es/components/pisellDraggable/components/Handle/Handle.js +15 -0
- package/es/components/pisellDraggable/components/Handle/index.d.ts +1 -0
- package/es/components/pisellDraggable/components/Handle/index.js +1 -0
- package/es/components/pisellDraggable/components/Remove/Remove.d.ts +3 -0
- package/es/components/pisellDraggable/components/Remove/Remove.js +17 -0
- package/es/components/pisellDraggable/components/Remove/index.d.ts +1 -0
- package/es/components/pisellDraggable/components/Remove/index.js +1 -0
- package/es/components/pisellDraggable/components/TreeItem/SortableTreeItem.d.ts +8 -0
- package/es/components/pisellDraggable/components/TreeItem/SortableTreeItem.js +51 -0
- package/es/components/pisellDraggable/components/TreeItem/TreeItem.d.ts +21 -0
- package/es/components/pisellDraggable/components/TreeItem/TreeItem.js +57 -0
- package/es/components/pisellDraggable/components/TreeItem/TreeItem.less +128 -0
- package/es/components/pisellDraggable/components/TreeItem/index.d.ts +2 -0
- package/es/components/pisellDraggable/components/TreeItem/index.js +2 -0
- package/es/components/pisellDraggable/components/index.d.ts +4 -0
- package/es/components/pisellDraggable/components/index.js +4 -0
- package/es/components/pisellDraggable/index.d.ts +27 -0
- package/es/components/pisellDraggable/index.js +380 -0
- package/es/components/pisellDraggable/types.d.ts +17 -0
- package/es/components/pisellDraggable/types.js +1 -0
- package/es/components/pisellDraggable/utilities.d.ts +17 -0
- package/es/components/pisellDraggable/utilities.js +230 -0
- package/es/components/pisellLayout/content.d.ts +1 -0
- package/es/components/pisellLayout/content.js +19 -2
- package/es/components/pisellMenu/PisellMenu.d.ts +5 -0
- package/es/components/pisellMenu/PisellMenu.js +55 -0
- package/es/components/pisellMenu/PisellMenu.less +53 -0
- package/es/components/pisellMenu/index.d.ts +3 -0
- package/es/components/pisellMenu/index.js +2 -0
- package/es/components/pisellMenu/types.d.ts +30 -0
- package/es/components/pisellMenu/types.js +1 -0
- package/es/components/pisellModal/components/functions/index.less +3 -0
- package/es/components/versionModal/index.d.ts +15 -0
- package/es/components/versionModal/index.js +192 -0
- package/es/components/versionModal/index.less +3 -0
- package/es/index.d.ts +5 -0
- package/es/index.js +5 -1
- package/es/locales/en-US.d.ts +22 -0
- package/es/locales/en-US.js +24 -1
- package/es/locales/zh-CN.d.ts +21 -0
- package/es/locales/zh-CN.js +24 -2
- package/es/locales/zh-TW.d.ts +20 -0
- package/es/locales/zh-TW.js +23 -2
- package/lib/components/dataSourceComponents/dataSourceForm/BaseForm.js +77 -4
- package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.js +1 -0
- package/lib/components/dataSourceComponents/dataSourceForm/type.d.ts +8 -0
- package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -0
- package/lib/components/dataSourceComponents/dataSourceForm/utils.js +132 -41
- package/lib/components/dataSourceComponents/dataSourceMenu/index.d.ts +2 -0
- package/lib/components/dataSourceComponents/dataSourceMenu/index.js +45 -0
- package/lib/components/dataSourceComponents/dataSourceTable/BaseTable.js +14 -2
- package/lib/components/dataSourceComponents/dataSourceTable/hooks/useDrawerState.d.ts +2 -2
- package/lib/components/dataSourceComponents/fields/Input.Mobile/WithMode.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Input.Mobile/WithMode.js +44 -29
- package/lib/components/dataSourceComponents/fields/Input.Mobile/index.js +11 -1
- package/lib/components/dataSourceComponents/fields/Input.Phone/WithMode.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Input.Phone/WithMode.js +34 -17
- package/lib/components/dataSourceComponents/fields/Input.Subdomain/WithMode.d.ts +4 -2
- package/lib/components/dataSourceComponents/fields/Input.Subdomain/WithMode.js +96 -36
- package/lib/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +4 -2
- package/lib/components/dataSourceComponents/fields/Input.Subdomain/serve.d.ts +3 -13
- package/lib/components/dataSourceComponents/fields/Input.Subdomain/serve.js +19 -14
- package/lib/components/dataSourceComponents/fields/Translation/BaseTranslation.js +15 -4
- package/lib/components/dataSourceComponents/fields/Translation/type.d.ts +1 -0
- package/lib/components/dataSourceComponents/fields/Upload/BaseUpload.js +5 -3
- package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -1
- package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.js +2 -2
- package/lib/components/dataSourceComponents/fields/Upload/WithMode.js +4 -4
- package/lib/components/dataSourceComponents/fields/Upload/index.less +1 -1
- package/lib/components/dataSourceComponents/fields/Upload/serve.d.ts +1 -1
- package/lib/components/dataSourceComponents/fields/Upload/serve.js +5 -5
- package/lib/components/dataSourceComponents/fields/Upload/type.d.ts +8 -0
- package/lib/components/dataSourceComponents/fields/index.d.ts +8 -4
- package/lib/components/dataSourceComponents/fields/type.d.ts +1 -0
- package/lib/components/dataSourceComponents/fields/utils.js +1 -0
- package/lib/components/dataSourceComponents/provider/actions/ActionsContext.d.ts +6 -1
- package/lib/components/dataSourceComponents/provider/actions/ActionsProvider.d.ts +4 -1
- package/lib/components/form/index.js +10 -1
- package/lib/components/iconfont/index.js +1 -1
- package/lib/components/pisellDraggable/components/Action/Action.d.ts +10 -0
- package/lib/components/pisellDraggable/components/Action/Action.js +60 -0
- package/lib/components/pisellDraggable/components/Action/Action.less +50 -0
- package/lib/components/pisellDraggable/components/Action/index.d.ts +2 -0
- package/lib/components/pisellDraggable/components/Action/index.js +29 -0
- package/lib/components/pisellDraggable/components/Handle/Handle.d.ts +3 -0
- package/lib/components/pisellDraggable/components/Handle/Handle.js +54 -0
- package/lib/components/pisellDraggable/components/Handle/index.d.ts +1 -0
- package/lib/components/pisellDraggable/components/Handle/index.js +29 -0
- package/lib/components/pisellDraggable/components/Remove/Remove.d.ts +3 -0
- package/lib/components/pisellDraggable/components/Remove/Remove.js +53 -0
- package/lib/components/pisellDraggable/components/Remove/index.d.ts +1 -0
- package/lib/components/pisellDraggable/components/Remove/index.js +29 -0
- package/lib/components/pisellDraggable/components/TreeItem/SortableTreeItem.d.ts +8 -0
- package/lib/components/pisellDraggable/components/TreeItem/SortableTreeItem.js +83 -0
- package/lib/components/pisellDraggable/components/TreeItem/TreeItem.d.ts +21 -0
- package/lib/components/pisellDraggable/components/TreeItem/TreeItem.js +93 -0
- package/lib/components/pisellDraggable/components/TreeItem/TreeItem.less +128 -0
- package/lib/components/pisellDraggable/components/TreeItem/index.d.ts +2 -0
- package/lib/components/pisellDraggable/components/TreeItem/index.js +32 -0
- package/lib/components/pisellDraggable/components/index.d.ts +4 -0
- package/lib/components/pisellDraggable/components/index.js +40 -0
- package/lib/components/pisellDraggable/index.d.ts +27 -0
- package/lib/components/pisellDraggable/index.js +271 -0
- package/lib/components/pisellDraggable/types.d.ts +17 -0
- package/lib/components/pisellDraggable/types.js +17 -0
- package/lib/components/pisellDraggable/utilities.d.ts +17 -0
- package/lib/components/pisellDraggable/utilities.js +190 -0
- package/lib/components/pisellLayout/content.d.ts +1 -0
- package/lib/components/pisellLayout/content.js +9 -1
- package/lib/components/pisellMenu/PisellMenu.d.ts +5 -0
- package/lib/components/pisellMenu/PisellMenu.js +91 -0
- package/lib/components/pisellMenu/PisellMenu.less +53 -0
- package/lib/components/pisellMenu/index.d.ts +3 -0
- package/lib/components/pisellMenu/index.js +36 -0
- package/lib/components/pisellMenu/types.d.ts +30 -0
- package/lib/components/pisellMenu/types.js +17 -0
- package/lib/components/pisellModal/components/functions/index.less +3 -0
- package/lib/components/versionModal/index.d.ts +15 -0
- package/lib/components/versionModal/index.js +219 -0
- package/lib/components/versionModal/index.less +3 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.js +12 -0
- package/lib/locales/en-US.d.ts +22 -0
- package/lib/locales/en-US.js +24 -1
- package/lib/locales/zh-CN.d.ts +21 -0
- package/lib/locales/zh-CN.js +24 -2
- package/lib/locales/zh-TW.d.ts +20 -0
- package/lib/locales/zh-TW.js +23 -2
- package/lowcode/_utils/defaultSchema.ts +23 -2
- package/lowcode/button/meta.ts +4 -20
- package/lowcode/data-source-form/meta.ts +138 -1
- package/lowcode/data-source-form/snippets.ts +54 -0
- package/lowcode/data-source-menu/meta.ts +122 -0
- package/lowcode/data-source-table/meta.ts +32 -27
- package/lowcode/data-source-table/utils.tsx +33 -1
- package/lowcode/data-source-wrapper/meta.ts +6 -2
- package/lowcode/form-group/meta.ts +5 -1
- package/lowcode/form-item-input.mobile/__screenshots__/mobile.png +0 -0
- package/lowcode/form-item-input.mobile/meta.ts +36 -46
- package/lowcode/form-item-input.mobile/snippets.ts +8 -2
- package/lowcode/form-item-input.phone/meta.ts +8 -42
- package/lowcode/form-item-input.phone/snippets.ts +6 -0
- package/lowcode/form-item-input.subdomain/__screenshots__/subdomain.png +0 -0
- package/lowcode/form-item-input.subdomain/meta.ts +20 -6
- package/lowcode/form-item-input.subdomain/snippets.ts +10 -11
- package/lowcode/form-item-translation/meta.ts +59 -1
- package/lowcode/form.item/meta.ts +48 -0
- package/lowcode/pisell-content/meta.ts +12 -9
- package/lowcode/pisell-draggable/meta.ts +190 -0
- package/lowcode/pisell-layout/meta.ts +9 -9
- package/lowcode/pisell-menu/meta.ts +112 -0
- package/package.json +2 -2
- package/lowcode/form-item-input.mobile/__screenshots__/phone.png +0 -0
|
@@ -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,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;
|