linkmore-design 1.1.13-alpha.1 → 1.1.13-alpha.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.
- package/CHANGELOG.md +118 -0
- package/dist/Button/demos/ghost.d.ts +2 -0
- package/dist/ConfigProvider/context.d.ts +1 -0
- package/dist/Descriptions/Cell.d.ts +1 -0
- package/dist/Descriptions/Item.d.ts +1 -0
- package/dist/Descriptions/index.d.ts +1 -1
- package/dist/Form/FormWrapper.d.ts +3 -0
- package/dist/Form/WrapperItem.d.ts +4 -0
- package/dist/Form/demos/disabled.d.ts +2 -0
- package/dist/Form/demos/responsive.d.ts +0 -1
- package/dist/Form/index.d.ts +2 -0
- package/dist/Form/interface.d.ts +12 -0
- package/dist/IconFont/demos/ConfigProvider.d.ts +2 -0
- package/dist/IconFont/index.d.ts +1 -2
- package/dist/LmDrag/LmDrag.d.ts +4 -0
- package/dist/LmDrag/components/DndContainer.d.ts +3 -0
- package/dist/LmDrag/components/sortableBox.d.ts +5 -0
- package/dist/LmDrag/components/sortableItem.d.ts +7 -0
- package/dist/LmDrag/demos/basic.d.ts +2 -0
- package/dist/LmDrag/index.d.ts +10 -0
- package/dist/LmDrag/style/index.d.ts +1 -0
- package/dist/LmDrag/style/variables.d.ts +1 -0
- package/dist/LmDrag/wrapper/Root.d.ts +3 -0
- package/dist/LmEditTable/EditTable.d.ts +16 -3
- package/dist/LmEditTable/components/QuickOpetate.d.ts +12 -0
- package/dist/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
- package/dist/LmEditTable/components/index.d.ts +3 -1
- package/dist/LmFilter/LmFilter.d.ts +2 -6
- package/dist/LmTable/demos/summuy.d.ts +2 -0
- package/dist/LmTable/expression.d.ts +1 -0
- package/dist/LmTable/hooks/useGroupDataSource.d.ts +7 -0
- package/dist/LmUpload/UploadList/ItemPictureCard.d.ts +2 -1
- package/dist/LmUpload/fns/index.d.ts +1 -0
- package/dist/QuickMenu/demos/useInDraw.d.ts +2 -0
- package/dist/QuickMenu/index.d.ts +3 -1
- package/dist/Select/index.d.ts +3 -0
- package/dist/TreeSelect/demos/treedata.d.ts +3 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.umd.js +2645 -1500
- package/dist/index.umd.min.js +17 -17
- package/dist/variables.css +263 -120
- package/es/Button/index.js +4 -3
- package/es/Button/style/index.css +28 -25
- package/es/Button/style/variables.css +28 -25
- package/es/Cascader/index.js +31 -3
- package/es/Cascader/style/index.css +1 -0
- package/es/Cascader/style/variables.css +1 -0
- package/es/ConfigProvider/context.d.ts +1 -0
- package/es/ConfigProvider/index.js +5 -3
- package/es/Descriptions/Cell.d.ts +1 -0
- package/es/Descriptions/Cell.js +5 -2
- package/es/Descriptions/Item.d.ts +1 -0
- package/es/Descriptions/Row.js +6 -1
- package/es/Descriptions/index.d.ts +1 -1
- package/es/Descriptions/index.js +3 -3
- package/es/Descriptions/style/index.css +3 -0
- package/es/Descriptions/style/variables.css +3 -0
- package/es/Form/Form.js +13 -4
- package/es/Form/FormItem/ItemHolder.js +1 -10
- package/es/Form/FormWrapper.d.ts +3 -0
- package/es/Form/FormWrapper.js +22 -0
- package/es/Form/WrapperItem.d.ts +4 -0
- package/es/Form/WrapperItem.js +217 -0
- package/es/Form/container.js +1 -13
- package/es/Form/images/icon_collapse.svg +1 -0
- package/es/Form/index.d.ts +2 -0
- package/es/Form/index.js +2 -0
- package/es/Form/interface.d.ts +12 -0
- package/es/Form/style/index.css +34 -41
- package/es/Form/style/variables.css +34 -41
- package/es/IconFont/index.d.ts +1 -2
- package/es/IconFont/index.js +18 -4
- package/es/ImageViewer/components/Operate.js +4 -7
- package/es/Input/index.js +47 -10
- package/es/InputNumber/index.js +23 -11
- package/es/InputNumber/style/index.css +7 -0
- package/es/InputNumber/style/variables.css +7 -0
- package/es/LmDrag/LmDrag.d.ts +4 -0
- package/es/LmDrag/LmDrag.js +30 -0
- package/es/LmDrag/components/DndContainer.d.ts +3 -0
- package/es/LmDrag/components/DndContainer.js +121 -0
- package/es/LmDrag/components/sortableBox.d.ts +5 -0
- package/es/LmDrag/components/sortableBox.js +23 -0
- package/es/LmDrag/components/sortableItem.d.ts +7 -0
- package/es/LmDrag/components/sortableItem.js +41 -0
- package/es/LmDrag/index.d.ts +10 -0
- package/es/LmDrag/index.js +3 -0
- package/es/LmDrag/style/index.css +0 -0
- package/es/LmDrag/style/index.d.ts +1 -0
- package/es/LmDrag/style/index.js +1 -0
- package/es/LmDrag/style/variables.css +0 -0
- package/es/LmDrag/style/variables.d.ts +1 -0
- package/es/LmDrag/style/variables.js +1 -0
- package/es/LmDrag/wrapper/Root.d.ts +3 -0
- package/es/LmDrag/wrapper/Root.js +12 -0
- package/es/LmEditTable/EditTable.d.ts +16 -3
- package/es/LmEditTable/EditTable.js +275 -234
- package/es/LmEditTable/components/QuickOpetate.d.ts +12 -0
- package/es/LmEditTable/components/QuickOpetate.js +82 -0
- package/es/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
- package/es/LmEditTable/components/bottomOpetateComponent.js +23 -0
- package/es/LmEditTable/components/index.d.ts +3 -1
- package/es/LmEditTable/components/index.js +3 -1
- package/es/LmEditTable/sortableItemCol.js +40 -10
- package/es/LmEditTable/style/index.css +20 -0
- package/es/LmEditTable/style/variables.css +20 -0
- package/es/LmEditTable/util.js +38 -12
- package/es/LmFilter/LmFilter.js +6 -6
- package/es/LmFilter/components/CheckboxFilter.js +9 -4
- package/es/LmFilter/components/DropdownFIlter.js +186 -111
- package/es/LmFilter/components/SelectFilter.js +4 -3
- package/es/LmFilter/filterFns/index.js +4 -6
- package/es/LmFilter/index.js +0 -3
- package/es/LmFilter/style/index.css +82 -54
- package/es/LmFilter/style/variables.css +82 -54
- package/es/LmFilter/utils.js +6 -6
- package/es/LmSelect/style/index.css +1 -0
- package/es/LmSelect/style/variables.css +1 -0
- package/es/LmTable/Table.js +24 -15
- package/es/LmTable/expression.d.ts +1 -0
- package/es/LmTable/expression.js +31 -0
- package/es/LmTable/hooks/useGroupDataSource.js +50 -0
- package/es/LmTable/style/index.css +39 -0
- package/es/LmTable/style/variables.css +39 -0
- package/es/LmUpload/LmUpload.js +6 -3
- package/es/LmUpload/UploadList/ItemPicture.js +2 -1
- package/es/LmUpload/UploadList/ItemPictureCard.d.ts +2 -1
- package/es/LmUpload/UploadList/ItemPictureCard.js +15 -5
- package/es/LmUpload/UploadList/ItemText.js +7 -2
- package/es/LmUpload/UploadList/index.js +53 -2
- package/es/LmUpload/body/UploadCore.js +4 -1
- package/es/LmUpload/fns/index.d.ts +1 -0
- package/es/LmUpload/fns/index.js +27 -6
- package/es/LmUpload/style/index.css +17 -0
- package/es/LmUpload/style/variables.css +17 -0
- package/es/QuickMenu/index.d.ts +3 -1
- package/es/QuickMenu/index.js +22 -19
- package/es/Select/index.d.ts +3 -0
- package/es/Select/index.js +44 -7
- package/es/Select/style/index.css +28 -0
- package/es/Select/style/variables.css +28 -0
- package/es/TreeSelect/index.js +17 -2
- package/es/TreeSelect/style/index.css +3 -0
- package/es/TreeSelect/style/variables.css +3 -0
- package/es/index.d.ts +2 -0
- package/es/index.js +2 -1
- package/es/styles/variables.css +263 -120
- package/lib/Button/index.js +4 -3
- package/lib/Button/style/index.css +28 -25
- package/lib/Button/style/variables.css +28 -25
- package/lib/Cascader/index.js +35 -3
- package/lib/Cascader/style/index.css +1 -0
- package/lib/Cascader/style/variables.css +1 -0
- package/lib/ConfigProvider/context.d.ts +1 -0
- package/lib/ConfigProvider/index.js +5 -3
- package/lib/Descriptions/Cell.d.ts +1 -0
- package/lib/Descriptions/Cell.js +5 -2
- package/lib/Descriptions/Item.d.ts +1 -0
- package/lib/Descriptions/Row.js +6 -1
- package/lib/Descriptions/index.d.ts +1 -1
- package/lib/Descriptions/index.js +3 -3
- package/lib/Descriptions/style/index.css +3 -0
- package/lib/Descriptions/style/variables.css +3 -0
- package/lib/Form/Form.js +13 -4
- package/lib/Form/FormItem/ItemHolder.js +1 -10
- package/lib/Form/FormWrapper.d.ts +3 -0
- package/lib/Form/FormWrapper.js +34 -0
- package/lib/Form/WrapperItem.d.ts +4 -0
- package/lib/Form/WrapperItem.js +235 -0
- package/lib/Form/container.js +1 -13
- package/lib/Form/images/icon_collapse.svg +1 -0
- package/lib/Form/index.d.ts +2 -0
- package/lib/Form/index.js +3 -0
- package/lib/Form/interface.d.ts +12 -0
- package/lib/Form/style/index.css +34 -41
- package/lib/Form/style/variables.css +34 -41
- package/lib/IconFont/index.d.ts +1 -2
- package/lib/IconFont/index.js +25 -4
- package/lib/ImageViewer/components/Operate.js +4 -8
- package/lib/Input/index.js +52 -10
- package/lib/InputNumber/index.js +29 -11
- package/lib/InputNumber/style/index.css +7 -0
- package/lib/InputNumber/style/variables.css +7 -0
- package/lib/LmDrag/LmDrag.d.ts +4 -0
- package/lib/LmDrag/LmDrag.js +44 -0
- package/lib/LmDrag/components/DndContainer.d.ts +3 -0
- package/lib/LmDrag/components/DndContainer.js +138 -0
- package/lib/LmDrag/components/sortableBox.d.ts +5 -0
- package/lib/LmDrag/components/sortableBox.js +37 -0
- package/lib/LmDrag/components/sortableItem.d.ts +7 -0
- package/lib/LmDrag/components/sortableItem.js +54 -0
- package/lib/LmDrag/index.d.ts +10 -0
- package/lib/LmDrag/index.js +19 -0
- package/lib/LmDrag/style/index.css +0 -0
- package/lib/LmDrag/style/index.d.ts +1 -0
- package/lib/LmDrag/style/index.js +3 -0
- package/lib/LmDrag/style/variables.css +0 -0
- package/lib/LmDrag/style/variables.d.ts +1 -0
- package/lib/LmDrag/style/variables.js +3 -0
- package/lib/LmDrag/wrapper/Root.d.ts +3 -0
- package/lib/LmDrag/wrapper/Root.js +26 -0
- package/lib/LmEditTable/EditTable.d.ts +16 -3
- package/lib/LmEditTable/EditTable.js +271 -230
- package/lib/LmEditTable/components/QuickOpetate.d.ts +12 -0
- package/lib/LmEditTable/components/QuickOpetate.js +96 -0
- package/lib/LmEditTable/components/bottomOpetateComponent.d.ts +13 -0
- package/lib/LmEditTable/components/bottomOpetateComponent.js +34 -0
- package/lib/LmEditTable/components/index.d.ts +3 -1
- package/lib/LmEditTable/components/index.js +16 -0
- package/lib/LmEditTable/sortableItemCol.js +37 -8
- package/lib/LmEditTable/style/index.css +20 -0
- package/lib/LmEditTable/style/variables.css +20 -0
- package/lib/LmEditTable/util.js +37 -11
- package/lib/LmFilter/LmFilter.js +6 -6
- package/lib/LmFilter/components/CheckboxFilter.js +9 -4
- package/lib/LmFilter/components/DropdownFIlter.js +186 -111
- package/lib/LmFilter/components/SelectFilter.js +4 -3
- package/lib/LmFilter/filterFns/index.js +4 -6
- package/lib/LmFilter/index.js +0 -3
- package/lib/LmFilter/style/index.css +82 -54
- package/lib/LmFilter/style/variables.css +82 -54
- package/lib/LmFilter/utils.js +6 -6
- package/lib/LmSelect/style/index.css +1 -0
- package/lib/LmSelect/style/variables.css +1 -0
- package/lib/LmTable/Table.js +24 -15
- package/lib/LmTable/expression.d.ts +1 -0
- package/lib/LmTable/expression.js +41 -0
- package/lib/LmTable/hooks/useGroupDataSource.js +50 -0
- package/lib/LmTable/style/index.css +39 -0
- package/lib/LmTable/style/variables.css +39 -0
- package/lib/LmUpload/LmUpload.js +9 -3
- package/lib/LmUpload/UploadList/ItemPicture.js +2 -1
- package/lib/LmUpload/UploadList/ItemPictureCard.d.ts +2 -1
- package/lib/LmUpload/UploadList/ItemPictureCard.js +15 -5
- package/lib/LmUpload/UploadList/ItemText.js +7 -2
- package/lib/LmUpload/UploadList/index.js +54 -2
- package/lib/LmUpload/body/UploadCore.js +5 -1
- package/lib/LmUpload/fns/index.d.ts +1 -0
- package/lib/LmUpload/fns/index.js +27 -6
- package/lib/LmUpload/style/index.css +17 -0
- package/lib/LmUpload/style/variables.css +17 -0
- package/lib/QuickMenu/index.d.ts +3 -1
- package/lib/QuickMenu/index.js +21 -18
- package/lib/Select/index.d.ts +3 -0
- package/lib/Select/index.js +47 -7
- package/lib/Select/style/index.css +28 -0
- package/lib/Select/style/variables.css +28 -0
- package/lib/TreeSelect/index.js +21 -2
- package/lib/TreeSelect/style/index.css +3 -0
- package/lib/TreeSelect/style/variables.css +3 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +15 -1
- package/lib/styles/variables.css +263 -120
- package/package.json +5 -1
|
@@ -714,6 +714,45 @@
|
|
|
714
714
|
#lm_protable_warp .lm_protable .ant-table-empty table .ant-table-cell {
|
|
715
715
|
border-bottom: 0;
|
|
716
716
|
}
|
|
717
|
+
#lm_protable_warp .lm_protable .ant-table-summary {
|
|
718
|
+
height: 48px;
|
|
719
|
+
}
|
|
720
|
+
#lm_protable_warp .lm_protable .ant-table-summary > table {
|
|
721
|
+
height: 100%;
|
|
722
|
+
}
|
|
723
|
+
#lm_protable_warp .lm_protable .ant-table-summary td {
|
|
724
|
+
padding: 0 8px;
|
|
725
|
+
text-align: right;
|
|
726
|
+
background-color: var(--table-background-color);
|
|
727
|
+
}
|
|
728
|
+
#lm_protable_warp .lm_protable .ant-table-summary td:first-of-type {
|
|
729
|
+
padding: 0 0 0 8px;
|
|
730
|
+
text-align: left;
|
|
731
|
+
}
|
|
732
|
+
#lm_protable_warp .lm_protable .ant-table-summary td.number {
|
|
733
|
+
border-right: 1px solid #eee;
|
|
734
|
+
border-left: 1px solid #eee;
|
|
735
|
+
}
|
|
736
|
+
#lm_protable_warp .lm_protable .ant-table-summary td.money {
|
|
737
|
+
color: var(--error-color);
|
|
738
|
+
border-right: 1px solid #eee;
|
|
739
|
+
border-left: 1px solid #eee;
|
|
740
|
+
}
|
|
741
|
+
#lm_protable_warp .lm_protable .ant-table-summary td.money-color {
|
|
742
|
+
color: var(--error-color);
|
|
743
|
+
}
|
|
744
|
+
#lm_protable_warp .lm_protable .ant-table-summary td > div {
|
|
745
|
+
overflow: hidden;
|
|
746
|
+
white-space: nowrap;
|
|
747
|
+
text-overflow: ellipsis;
|
|
748
|
+
}
|
|
749
|
+
#lm_protable_warp .lm_protable .ant-table-summary td > div:last-of-type {
|
|
750
|
+
font-weight: bold;
|
|
751
|
+
}
|
|
752
|
+
#lm_protable_warp .lm_protable .ant-table-summary .total_title {
|
|
753
|
+
position: relative;
|
|
754
|
+
white-space: nowrap;
|
|
755
|
+
}
|
|
717
756
|
#lm_protable_warp .ant-table-expand-icon-col {
|
|
718
757
|
width: 32px;
|
|
719
758
|
}
|
package/lib/LmUpload/LmUpload.js
CHANGED
|
@@ -13,6 +13,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
13
13
|
|
|
14
14
|
var _UploadRoot = _interopRequireDefault(require("./wrapper/UploadRoot"));
|
|
15
15
|
|
|
16
|
+
var _DisabledContext = _interopRequireDefault(require("../ConfigProvider/DisabledContext"));
|
|
17
|
+
|
|
16
18
|
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
17
19
|
var t = {};
|
|
18
20
|
|
|
@@ -33,7 +35,10 @@ var LmUpload = function LmUpload(_a, ref) {
|
|
|
33
35
|
_ossConfig = _a.ossConfig,
|
|
34
36
|
resetProps = __rest(_a, ["fileConfig", "fileNames", "components", "ossConfig"]);
|
|
35
37
|
|
|
36
|
-
var defaultRef = (0, _react.useRef)(null);
|
|
38
|
+
var defaultRef = (0, _react.useRef)(null);
|
|
39
|
+
|
|
40
|
+
var disabled = _react.default.useContext(_DisabledContext.default); // 仅在初始化触发一次
|
|
41
|
+
|
|
37
42
|
|
|
38
43
|
var initConfig = (0, _react.useMemo)(function () {
|
|
39
44
|
return {
|
|
@@ -85,12 +90,12 @@ var LmUpload = function LmUpload(_a, ref) {
|
|
|
85
90
|
size: 100,
|
|
86
91
|
fileSize: 10,
|
|
87
92
|
fileSizeType: 'M',
|
|
88
|
-
uid: '
|
|
93
|
+
uid: 'fileName',
|
|
89
94
|
accept: '',
|
|
90
95
|
type: ['jpg', 'jpeg', 'png'],
|
|
91
96
|
listType: 'card',
|
|
92
97
|
readOnly: false,
|
|
93
|
-
disabled: false,
|
|
98
|
+
disabled: disabled || false,
|
|
94
99
|
showUploadList: true,
|
|
95
100
|
fileList: null,
|
|
96
101
|
defaultFileList: [],
|
|
@@ -100,6 +105,7 @@ var LmUpload = function LmUpload(_a, ref) {
|
|
|
100
105
|
itemRender: null,
|
|
101
106
|
enabledPreview: true,
|
|
102
107
|
enabledCrop: false,
|
|
108
|
+
enableDrag: false,
|
|
103
109
|
enabledOss: false,
|
|
104
110
|
// oss配置
|
|
105
111
|
ossConfig: function ossConfig() {
|
|
@@ -20,6 +20,7 @@ var PictureItem = function PictureItem(_ref) {
|
|
|
20
20
|
var file = _ref.file,
|
|
21
21
|
instance = _ref.instance;
|
|
22
22
|
var readOnly = instance.readOnly,
|
|
23
|
+
disabled = instance.disabled,
|
|
23
24
|
remove = instance.remove,
|
|
24
25
|
preview = instance.preview,
|
|
25
26
|
download = instance.download,
|
|
@@ -41,7 +42,7 @@ var PictureItem = function PictureItem(_ref) {
|
|
|
41
42
|
onClick: function onClick() {
|
|
42
43
|
return download(file);
|
|
43
44
|
}
|
|
44
|
-
}, file[fileNames.fileName])), !readOnly && /*#__PURE__*/React.createElement("div", {
|
|
45
|
+
}, file[fileNames.fileName])), !readOnly && !disabled && /*#__PURE__*/React.createElement("div", {
|
|
45
46
|
className: "picture_right lm_upload_item_action"
|
|
46
47
|
}, /*#__PURE__*/React.createElement("div", {
|
|
47
48
|
className: "action_delete",
|
|
@@ -78,8 +78,10 @@ var renderThumb = function renderThumb(file) {
|
|
|
78
78
|
var PictureItem = function PictureItem(_ref) {
|
|
79
79
|
var file = _ref.file,
|
|
80
80
|
index = _ref.index,
|
|
81
|
-
instance = _ref.instance
|
|
81
|
+
instance = _ref.instance,
|
|
82
|
+
listeners = _ref.listeners;
|
|
82
83
|
var dispatch = instance.dispatch,
|
|
84
|
+
disabled = instance.disabled,
|
|
83
85
|
readOnly = instance.readOnly,
|
|
84
86
|
size = instance.size,
|
|
85
87
|
remove = instance.remove,
|
|
@@ -135,13 +137,13 @@ var PictureItem = function PictureItem(_ref) {
|
|
|
135
137
|
});
|
|
136
138
|
};
|
|
137
139
|
|
|
138
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
140
|
+
return /*#__PURE__*/_react.default.createElement("div", Object.assign({
|
|
139
141
|
className: (0, _classnames.default)('lm_upload_item', 'lm_upload_item_card', isError && 'lm_upload_item_error'),
|
|
140
142
|
style: {
|
|
141
143
|
height: size,
|
|
142
144
|
width: size
|
|
143
145
|
}
|
|
144
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
146
|
+
}, listeners || {}), /*#__PURE__*/_react.default.createElement("div", {
|
|
145
147
|
className: "lm_upload_item_thumb"
|
|
146
148
|
}, isError || !isImg ? renderThumb(resetFile) : /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Image, {
|
|
147
149
|
width: resetSize.width,
|
|
@@ -153,7 +155,15 @@ var PictureItem = function PictureItem(_ref) {
|
|
|
153
155
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
154
156
|
className: "lm_upload_item_mask"
|
|
155
157
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
156
|
-
className: "lm_upload_item_action"
|
|
158
|
+
className: "lm_upload_item_action",
|
|
159
|
+
onKeyDown: function onKeyDown(e) {
|
|
160
|
+
e.stopPropagation();
|
|
161
|
+
e.preventDefault();
|
|
162
|
+
},
|
|
163
|
+
onPointerDown: function onPointerDown(e) {
|
|
164
|
+
e.stopPropagation();
|
|
165
|
+
e.preventDefault();
|
|
166
|
+
}
|
|
157
167
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
158
168
|
className: "action_preview",
|
|
159
169
|
onClick: handlePreview
|
|
@@ -162,7 +172,7 @@ var PictureItem = function PictureItem(_ref) {
|
|
|
162
172
|
style: {
|
|
163
173
|
fontSize: resetSize.fontSize
|
|
164
174
|
}
|
|
165
|
-
})), !readOnly && /*#__PURE__*/_react.default.createElement("div", {
|
|
175
|
+
})), !readOnly && !disabled && /*#__PURE__*/_react.default.createElement("div", {
|
|
166
176
|
className: "action_delete",
|
|
167
177
|
onClick: function onClick() {
|
|
168
178
|
return remove(file);
|
|
@@ -19,7 +19,9 @@ var TextItem = function TextItem(_ref) {
|
|
|
19
19
|
var file = _ref.file,
|
|
20
20
|
instance = _ref.instance;
|
|
21
21
|
var readOnly = instance.readOnly,
|
|
22
|
+
disabled = instance.disabled,
|
|
22
23
|
remove = instance.remove,
|
|
24
|
+
download = instance.download,
|
|
23
25
|
fileNames = instance.fileNames;
|
|
24
26
|
return /*#__PURE__*/React.createElement("div", {
|
|
25
27
|
className: (0, _classnames.default)('lm_upload_item lm_upload_item_text', file[fileNames.status] === 'error' && 'lm_upload_item_error')
|
|
@@ -30,8 +32,11 @@ var TextItem = function TextItem(_ref) {
|
|
|
30
32
|
}, /*#__PURE__*/React.createElement(_linkmoreDesign.IconFont, {
|
|
31
33
|
type: "lmweb-attachment"
|
|
32
34
|
})), /*#__PURE__*/React.createElement("div", {
|
|
33
|
-
className: "lm_upload_item_name"
|
|
34
|
-
|
|
35
|
+
className: "lm_upload_item_name",
|
|
36
|
+
onClick: function onClick() {
|
|
37
|
+
return download(file);
|
|
38
|
+
}
|
|
39
|
+
}, file[fileNames.fileName])), !readOnly && !disabled && /*#__PURE__*/React.createElement("div", {
|
|
35
40
|
className: "text_right lm_upload_item_text_action"
|
|
36
41
|
}, /*#__PURE__*/React.createElement("div", {
|
|
37
42
|
className: "action_delete",
|
|
@@ -11,17 +11,24 @@ exports.default = void 0;
|
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
+
var _linkmoreDesign = require("linkmore-design");
|
|
15
|
+
|
|
14
16
|
var _utils = require("../utils");
|
|
15
17
|
|
|
16
18
|
var _RenderItem = _interopRequireDefault(require("./RenderItem"));
|
|
17
19
|
|
|
18
20
|
var LmUploadList = function LmUploadList(_ref) {
|
|
19
21
|
var instance = _ref.instance;
|
|
20
|
-
var
|
|
22
|
+
var uid = instance.uid,
|
|
23
|
+
getFileHasValue = instance.getFileHasValue,
|
|
21
24
|
getFileList = instance.getFileList,
|
|
22
25
|
itemRender = instance.itemRender,
|
|
23
26
|
listType = instance.listType,
|
|
24
|
-
showUploadList = instance.showUploadList
|
|
27
|
+
showUploadList = instance.showUploadList,
|
|
28
|
+
disabled = instance.disabled,
|
|
29
|
+
enableDrag = instance.enableDrag,
|
|
30
|
+
fileNames = instance.fileNames,
|
|
31
|
+
move = instance.move;
|
|
25
32
|
if (!showUploadList) return null;
|
|
26
33
|
var fileList = (0, _react.useMemo)(function () {
|
|
27
34
|
var _a;
|
|
@@ -30,6 +37,51 @@ var LmUploadList = function LmUploadList(_ref) {
|
|
|
30
37
|
return a.seq - b.seq;
|
|
31
38
|
});
|
|
32
39
|
}, [getFileList]);
|
|
40
|
+
|
|
41
|
+
var handleMove = function handleMove(active, over, fileList) {
|
|
42
|
+
try {
|
|
43
|
+
var fileMap = fileList.map(function (v) {
|
|
44
|
+
if (getFileHasValue(v) === getFileHasValue(active)) {
|
|
45
|
+
return Object.assign(Object.assign({}, v), {
|
|
46
|
+
seq: over[fileNames.seq]
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
if (getFileHasValue(v) === getFileHasValue(over)) {
|
|
51
|
+
return Object.assign(Object.assign({}, v), {
|
|
52
|
+
seq: active[fileNames.seq]
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
return v;
|
|
57
|
+
});
|
|
58
|
+
move(active, over, fileMap);
|
|
59
|
+
} catch (error) {
|
|
60
|
+
console.log('移动出现了错误', error);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
if (!disabled && enableDrag) {
|
|
65
|
+
return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.LmDrag, {
|
|
66
|
+
options: fileList,
|
|
67
|
+
rowKey: uid,
|
|
68
|
+
move: handleMove
|
|
69
|
+
}, function (_ref2) {
|
|
70
|
+
var item = _ref2.item,
|
|
71
|
+
listeners = _ref2.listeners,
|
|
72
|
+
index = _ref2.index;
|
|
73
|
+
return (0, _utils.render)(itemRender || _RenderItem.default, {
|
|
74
|
+
type: listType,
|
|
75
|
+
key: getFileHasValue(item) || index,
|
|
76
|
+
index: index,
|
|
77
|
+
file: item,
|
|
78
|
+
fileList: fileList,
|
|
79
|
+
instance: instance,
|
|
80
|
+
listeners: listeners
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
|
|
33
85
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, fileList === null || fileList === void 0 ? void 0 : fileList.map(function (file, idx) {
|
|
34
86
|
return (0, _utils.render)(itemRender || _RenderItem.default, {
|
|
35
87
|
type: listType,
|
|
@@ -11,6 +11,8 @@ exports.default = void 0;
|
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
+
|
|
14
16
|
var _UploadPicture = _interopRequireDefault(require("./UploadPicture"));
|
|
15
17
|
|
|
16
18
|
// 上传核心
|
|
@@ -24,6 +26,7 @@ var UploadCore = function UploadCore(_ref) {
|
|
|
24
26
|
var inputRef = _react.default.useRef(null);
|
|
25
27
|
|
|
26
28
|
var accept = instance.accept,
|
|
29
|
+
disabled = instance.disabled,
|
|
27
30
|
children = instance.children,
|
|
28
31
|
beforeUpload = instance.beforeUpload,
|
|
29
32
|
getUploadStatus = instance.getUploadStatus,
|
|
@@ -32,6 +35,7 @@ var UploadCore = function UploadCore(_ref) {
|
|
|
32
35
|
var handleClick = (0, _react.useCallback)(function () {
|
|
33
36
|
var _a;
|
|
34
37
|
|
|
38
|
+
if (disabled) return;
|
|
35
39
|
var isUploading = getUploadStatus().uploading;
|
|
36
40
|
if (isUploading) return;
|
|
37
41
|
(_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.click();
|
|
@@ -57,7 +61,7 @@ var UploadCore = function UploadCore(_ref) {
|
|
|
57
61
|
};
|
|
58
62
|
return !getIsMaxCount() && /*#__PURE__*/_react.default.createElement("div", {
|
|
59
63
|
onClick: handleClick,
|
|
60
|
-
className:
|
|
64
|
+
className: (0, _classnames.default)('lm_upload_core', disabled && 'disabled')
|
|
61
65
|
}, children || /*#__PURE__*/_react.default.createElement(_UploadPicture.default, {
|
|
62
66
|
instance: instance
|
|
63
67
|
}), /*#__PURE__*/_react.default.createElement("input", Object.assign({
|
|
@@ -15,6 +15,7 @@ declare const useCoreOptions: ({ state, dispatch, props }: {
|
|
|
15
15
|
remove: (file: any) => Promise<void>;
|
|
16
16
|
preview: (file: any) => void;
|
|
17
17
|
download: (file: any) => void;
|
|
18
|
+
move: (active: any, over: any, fileList: any) => void;
|
|
18
19
|
};
|
|
19
20
|
RefMethods: {
|
|
20
21
|
getState: () => any;
|
|
@@ -61,22 +61,28 @@ var useCoreOptions = function useCoreOptions(_ref) {
|
|
|
61
61
|
fileAreaSize = props.fileAreaSize,
|
|
62
62
|
enabledOss = props.enabledOss,
|
|
63
63
|
enableCrop = props.enableCrop,
|
|
64
|
-
ossConfig = props.ossConfig;
|
|
64
|
+
ossConfig = props.ossConfig;
|
|
65
|
+
/* 获取两个对象是否存在指定值相等
|
|
66
|
+
* 取用户定义的列字段,如果读取不到则取'fileName'对比
|
|
67
|
+
*/
|
|
65
68
|
|
|
66
69
|
var getHasEqual = (0, _react.useCallback)(function (obj1, obj2) {
|
|
67
70
|
var extend = [uid, 'fileName'];
|
|
68
71
|
var flag = false;
|
|
69
72
|
extend.forEach(function (v) {
|
|
70
|
-
if (!flag
|
|
73
|
+
if (!flag && obj1[v] && obj2[v]) {
|
|
74
|
+
flag = obj1[v] === obj2[v];
|
|
75
|
+
}
|
|
71
76
|
});
|
|
72
77
|
return flag;
|
|
73
|
-
}, []); // 从对象中读取存在的指定属性
|
|
78
|
+
}, [uid]); // 从对象中读取存在的指定属性
|
|
74
79
|
|
|
75
80
|
var getFileHasValue = (0, _react.useCallback)(function (obj) {
|
|
81
|
+
if (!obj) return '';
|
|
76
82
|
var extend = [uid, 'fileName'];
|
|
77
83
|
var val = '';
|
|
78
84
|
extend.forEach(function (v) {
|
|
79
|
-
if (!val) val = obj[v];
|
|
85
|
+
if (!val && obj[v]) val = obj[v];
|
|
80
86
|
});
|
|
81
87
|
return val;
|
|
82
88
|
}, [uid]); // 获取当前的文件列表
|
|
@@ -478,7 +484,21 @@ var useCoreOptions = function useCoreOptions(_ref) {
|
|
|
478
484
|
var _a;
|
|
479
485
|
|
|
480
486
|
(_a = props.onDownload) === null || _a === void 0 ? void 0 : _a.call(props, file);
|
|
481
|
-
}, [props.onDownload]);
|
|
487
|
+
}, [props.onDownload]); // 拖拽移动事件
|
|
488
|
+
|
|
489
|
+
var move = (0, _react.useCallback)(function (active, over, fileList) {
|
|
490
|
+
var _a;
|
|
491
|
+
|
|
492
|
+
(_a = props.onMove) === null || _a === void 0 ? void 0 : _a.call(props, active, over, fileList);
|
|
493
|
+
onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
494
|
+
file: active,
|
|
495
|
+
fileList: fileList
|
|
496
|
+
});
|
|
497
|
+
dispatch({
|
|
498
|
+
type: 'changeFileList',
|
|
499
|
+
fileList: fileList
|
|
500
|
+
});
|
|
501
|
+
}, [props.onMove, onChange, dispatch]);
|
|
482
502
|
var CoreMethods = {
|
|
483
503
|
getIsMaxCount: getIsMaxCount,
|
|
484
504
|
getFileHasValue: getFileHasValue,
|
|
@@ -488,7 +508,8 @@ var useCoreOptions = function useCoreOptions(_ref) {
|
|
|
488
508
|
getUploadStatus: getUploadStatus,
|
|
489
509
|
remove: remove,
|
|
490
510
|
preview: preview,
|
|
491
|
-
download: download
|
|
511
|
+
download: download,
|
|
512
|
+
move: move
|
|
492
513
|
};
|
|
493
514
|
var RefMethods = {
|
|
494
515
|
getState: function getState() {
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
gap: 8px;
|
|
123
123
|
}
|
|
124
124
|
.lm_upload_wrapper .lm_upload_core {
|
|
125
|
+
position: relative;
|
|
125
126
|
display: inline-flex;
|
|
126
127
|
vertical-align: middle;
|
|
127
128
|
}
|
|
@@ -136,6 +137,12 @@
|
|
|
136
137
|
cursor: pointer;
|
|
137
138
|
transition: all 0.3s;
|
|
138
139
|
}
|
|
140
|
+
.lm_upload_wrapper .lm_upload_core .lm_upload_core_picture::after {
|
|
141
|
+
position: absolute;
|
|
142
|
+
background-color: var(--disabled-bg-color);
|
|
143
|
+
cursor: not-allowed;
|
|
144
|
+
inset: 0;
|
|
145
|
+
}
|
|
139
146
|
.lm_upload_wrapper .lm_upload_core .lm_upload_core_picture:hover {
|
|
140
147
|
border-color: var(--primary-color);
|
|
141
148
|
}
|
|
@@ -151,6 +158,16 @@
|
|
|
151
158
|
margin-top: var(--gap);
|
|
152
159
|
color: var(--color-45);
|
|
153
160
|
}
|
|
161
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture {
|
|
162
|
+
border-color: var(--disabled-border-color);
|
|
163
|
+
}
|
|
164
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture::after {
|
|
165
|
+
content: '';
|
|
166
|
+
}
|
|
167
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .action_plus,
|
|
168
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .tip {
|
|
169
|
+
color: var(--disabled-font-color);
|
|
170
|
+
}
|
|
154
171
|
.lm_upload_wrapper .lm_upload_progress {
|
|
155
172
|
width: 100%;
|
|
156
173
|
height: 2px;
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
gap: 8px;
|
|
123
123
|
}
|
|
124
124
|
.lm_upload_wrapper .lm_upload_core {
|
|
125
|
+
position: relative;
|
|
125
126
|
display: inline-flex;
|
|
126
127
|
vertical-align: middle;
|
|
127
128
|
}
|
|
@@ -136,6 +137,12 @@
|
|
|
136
137
|
cursor: pointer;
|
|
137
138
|
transition: all 0.3s;
|
|
138
139
|
}
|
|
140
|
+
.lm_upload_wrapper .lm_upload_core .lm_upload_core_picture::after {
|
|
141
|
+
position: absolute;
|
|
142
|
+
background-color: var(--disabled-bg-color);
|
|
143
|
+
cursor: not-allowed;
|
|
144
|
+
inset: 0;
|
|
145
|
+
}
|
|
139
146
|
.lm_upload_wrapper .lm_upload_core .lm_upload_core_picture:hover {
|
|
140
147
|
border-color: var(--primary-color);
|
|
141
148
|
}
|
|
@@ -151,6 +158,16 @@
|
|
|
151
158
|
margin-top: var(--gap);
|
|
152
159
|
color: var(--color-45);
|
|
153
160
|
}
|
|
161
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture {
|
|
162
|
+
border-color: var(--disabled-border-color);
|
|
163
|
+
}
|
|
164
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture::after {
|
|
165
|
+
content: '';
|
|
166
|
+
}
|
|
167
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .action_plus,
|
|
168
|
+
.lm_upload_wrapper .lm_upload_core.disabled .lm_upload_core_picture .lm_upload_core_picture_action .tip {
|
|
169
|
+
color: var(--disabled-font-color);
|
|
170
|
+
}
|
|
154
171
|
.lm_upload_wrapper .lm_upload_progress {
|
|
155
172
|
width: 100%;
|
|
156
173
|
height: 2px;
|
package/lib/QuickMenu/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
interface IMenuData {
|
|
2
|
+
export interface IMenuData {
|
|
3
3
|
menuId: string;
|
|
4
4
|
title: string | React.ReactNode;
|
|
5
|
+
hidden?: boolean;
|
|
5
6
|
}
|
|
6
7
|
export interface IQuickMenuProps {
|
|
7
8
|
className?: string;
|
|
@@ -9,6 +10,7 @@ export interface IQuickMenuProps {
|
|
|
9
10
|
top?: number;
|
|
10
11
|
menuData: IMenuData[];
|
|
11
12
|
warpElement: any;
|
|
13
|
+
root?: IntersectionObserver['root'] | undefined;
|
|
12
14
|
}
|
|
13
15
|
declare const LMQuickMenu: React.FC<IQuickMenuProps>;
|
|
14
16
|
export default LMQuickMenu;
|
package/lib/QuickMenu/index.js
CHANGED
|
@@ -29,7 +29,8 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
29
29
|
top = _props$top === void 0 ? '104px' : _props$top,
|
|
30
30
|
_props$menuData = props.menuData,
|
|
31
31
|
menuData = _props$menuData === void 0 ? [] : _props$menuData,
|
|
32
|
-
warpElement = props.warpElement
|
|
32
|
+
warpElement = props.warpElement,
|
|
33
|
+
root = props.root;
|
|
33
34
|
var idTopInfo = (0, _react.useRef)({});
|
|
34
35
|
|
|
35
36
|
var _useState = (0, _react.useState)(false),
|
|
@@ -48,6 +49,11 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
48
49
|
var scroll = (0, _ahooks.useScroll)((0, _domTarget.getTargetElement)(warpElement || document), function () {
|
|
49
50
|
return scrollOpenStatus;
|
|
50
51
|
});
|
|
52
|
+
var filterMenuData = (0, _react.useMemo)(function () {
|
|
53
|
+
return menuData === null || menuData === void 0 ? void 0 : menuData.filter(function (item) {
|
|
54
|
+
return item.hidden !== true;
|
|
55
|
+
});
|
|
56
|
+
}, [menuData]);
|
|
51
57
|
|
|
52
58
|
function clearActiveToc() {
|
|
53
59
|
[].forEach.call(document.querySelectorAll('.lm_menu_list li a'), function (node) {
|
|
@@ -71,7 +77,7 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
71
77
|
(_a = menuTimeEventRef.current) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
72
78
|
}
|
|
73
79
|
|
|
74
|
-
if (!
|
|
80
|
+
if (!filterMenuData.length) {
|
|
75
81
|
return;
|
|
76
82
|
} // eslint-disable-next-line global-require
|
|
77
83
|
|
|
@@ -82,12 +88,13 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
82
88
|
var scrollama = require('scrollama');
|
|
83
89
|
|
|
84
90
|
menuTimeEventRef.current = scrollama();
|
|
91
|
+
console.log((0, _domTarget.getTargetElement)(warpElement || document), '--getTargetElement(warpElement || document)');
|
|
85
92
|
(_c = (_b = menuTimeEventRef.current) === null || _b === void 0 ? void 0 : _b.setup({
|
|
86
|
-
step:
|
|
93
|
+
step: filterMenuData.map(function (item) {
|
|
87
94
|
return document.getElementById("".concat(item.menuId));
|
|
88
|
-
}).filter(Boolean)
|
|
89
|
-
|
|
90
|
-
|
|
95
|
+
}).filter(Boolean),
|
|
96
|
+
container: (0, _domTarget.getTargetElement)(warpElement || document),
|
|
97
|
+
root: root ? (0, _domTarget.getTargetElement)(root) : undefined
|
|
91
98
|
})) === null || _c === void 0 ? void 0 : _c.onStepEnter(function (_ref) {
|
|
92
99
|
var element = _ref.element;
|
|
93
100
|
updateActiveToc(element.id);
|
|
@@ -95,7 +102,7 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
95
102
|
};
|
|
96
103
|
|
|
97
104
|
function setKeysDom() {
|
|
98
|
-
|
|
105
|
+
filterMenuData.forEach(function (item) {
|
|
99
106
|
var _a, _b;
|
|
100
107
|
|
|
101
108
|
var warpTop = ((_a = (0, _domTarget.getTargetElement)(warpElement || document)) === null || _a === void 0 ? void 0 : _a.offsetTop) || 0;
|
|
@@ -119,12 +126,6 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
119
126
|
wait: 50
|
|
120
127
|
});
|
|
121
128
|
|
|
122
|
-
var bindDom = function bindDom() {
|
|
123
|
-
if (!Object.keys(idTopInfo.current).length) {
|
|
124
|
-
setKeysDom();
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
|
|
128
129
|
var handleScroll = function handleScroll() {
|
|
129
130
|
setScrollOpenStatus(true);
|
|
130
131
|
};
|
|
@@ -139,10 +140,6 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
139
140
|
var _a; // bindScroller();
|
|
140
141
|
|
|
141
142
|
|
|
142
|
-
setTimeout(function () {
|
|
143
|
-
bindDom();
|
|
144
|
-
bindScroller();
|
|
145
|
-
}, 200);
|
|
146
143
|
(_a = (0, _domTarget.getTargetElement)(warpElement || document)) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', handleScroll, {
|
|
147
144
|
once: true
|
|
148
145
|
});
|
|
@@ -152,6 +149,12 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
152
149
|
(_a = (0, _domTarget.getTargetElement)(warpElement || document)) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', handleScroll);
|
|
153
150
|
};
|
|
154
151
|
}, []);
|
|
152
|
+
(0, _react.useEffect)(function () {
|
|
153
|
+
setTimeout(function () {
|
|
154
|
+
setKeysDom();
|
|
155
|
+
bindScroller();
|
|
156
|
+
}, 200);
|
|
157
|
+
}, [filterMenuData]);
|
|
155
158
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
156
159
|
className: (0, _classnames.default)(prefixCls),
|
|
157
160
|
onMouseEnter: function onMouseEnter() {
|
|
@@ -173,7 +176,7 @@ var LMQuickMenu = function LMQuickMenu(props) {
|
|
|
173
176
|
})
|
|
174
177
|
}), /*#__PURE__*/_react.default.createElement("ul", {
|
|
175
178
|
className: (0, _classnames.default)('lm_menu_list', hovering && 'show', className)
|
|
176
|
-
},
|
|
179
|
+
}, filterMenuData.map(function (item) {
|
|
177
180
|
return /*#__PURE__*/_react.default.createElement("li", {
|
|
178
181
|
key: item.menuId,
|
|
179
182
|
onClick: function onClick() {
|
package/lib/Select/index.d.ts
CHANGED
|
@@ -6,6 +6,9 @@ export interface ISelectProps extends SelectProps {
|
|
|
6
6
|
Option?: typeof Select.Option;
|
|
7
7
|
OptGroup?: typeof Select.OptGroup;
|
|
8
8
|
defaultLabel?: string;
|
|
9
|
+
suffix?: React.ReactNode;
|
|
10
|
+
icon?: React.ReactNode;
|
|
11
|
+
iconClick?: () => void;
|
|
9
12
|
}
|
|
10
13
|
declare type SelectType = typeof Select & typeof Select.Option & typeof Select.OptGroup;
|
|
11
14
|
declare const LMSelect: SelectType;
|