@pisell/materials 3.3.28 → 3.3.30
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 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +1 -1
- package/build/lowcode/preview.js +8 -8
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +14 -14
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +15 -15
- package/es/components/batch-editor/index.d.ts +1 -0
- package/es/components/dataSourceComponents/dataSourceTable/filter/index.d.ts +1 -0
- package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +1 -1
- package/es/components/dataSourceComponents/fields/Select/index.d.ts +1 -0
- package/es/components/dataSourceComponents/fields/index.d.ts +5 -4
- package/es/components/drag-sort-tree/TreeItem/index.d.ts +1 -0
- package/es/components/filter/index.d.ts +1 -0
- package/es/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -0
- package/es/components/pisellAdjustPrice/index.d.ts +1 -0
- package/es/components/pisellGoodPassCard/index.d.ts +2 -0
- package/es/components/pisellGoodPassCard/index.js +14 -7
- package/es/components/pisellGoodPassCard/index.less +11 -2
- package/es/components/pisellInformationEntry/Scan/index.d.ts +1 -0
- package/es/components/pisellLoading/index.d.ts +0 -1
- package/es/components/productCard/components/Time/components/SelectHolder/index.d.ts +1 -1
- package/es/components/productCard/components/Time/components/SelectHolder/index.js +31 -12
- package/es/components/productCard/components/Time/components/SelectHolder/index.less +27 -0
- package/es/components/productCard/components/Time/components/SelectHolderModal/index.d.ts +13 -0
- package/es/components/productCard/components/Time/components/SelectHolderModal/index.js +157 -0
- package/es/components/productCard/components/Time/components/SelectHolderModal/index.less +39 -0
- package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +2 -0
- package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.js +144 -0
- package/es/components/productCard/components/Time/index.js +9 -4
- package/es/components/productCard/locales.d.ts +18 -0
- package/es/components/productCard/locales.js +27 -3
- package/es/components/select-time/index.d.ts +1 -0
- package/es/components/table/Actions/component/ColumnsSetting/index.d.ts +1 -0
- package/es/components/table/Actions/component/ExportImport/components/ExportFile/index.d.ts +1 -0
- package/es/components/table/Actions/component/ExportImport/components/ExportTable/index.d.ts +1 -0
- package/es/components/table/Actions/component/ExportImport/components/ImportLog/index.d.ts +1 -0
- package/es/components/table/Actions/component/ExportImport/components/ImportTable/index.d.ts +1 -0
- package/es/components/table/Actions/component/GallerySetting/index.d.ts +1 -0
- package/es/components/table/Actions/component/Group/PopoverContent.d.ts +1 -0
- package/es/components/table/Actions/component/Group/index.d.ts +1 -0
- package/es/components/table/Actions/index.d.ts +1 -0
- package/es/components/table/Table/SelectField/index.d.ts +1 -0
- package/es/components/table/Table/fields/index.d.ts +1 -0
- package/es/components/table/Table/fields/treeSelect/index.d.ts +0 -1
- package/es/components/table/Table/utils.d.ts +1 -1
- package/es/components/versionSelect/index.d.ts +1 -0
- package/es/components/walletCard/Guide/index.d.ts +4 -0
- package/es/components/walletCard/index.js +11 -3
- package/es/components/walletCard/index.less +2 -2
- package/es/locales/en-US.d.ts +1 -0
- package/es/locales/en-US.js +2 -1
- package/es/locales/zh-CN.d.ts +1 -0
- package/es/locales/zh-CN.js +2 -1
- package/es/locales/zh-TW.d.ts +1 -0
- package/es/locales/zh-TW.js +2 -1
- package/lib/components/batch-editor/index.d.ts +1 -0
- package/lib/components/dataSourceComponents/dataSourceTable/filter/index.d.ts +1 -0
- package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +1 -1
- package/lib/components/dataSourceComponents/fields/Select/index.d.ts +1 -0
- package/lib/components/dataSourceComponents/fields/index.d.ts +5 -4
- package/lib/components/drag-sort-tree/TreeItem/index.d.ts +1 -0
- package/lib/components/filter/index.d.ts +1 -0
- package/lib/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -0
- package/lib/components/pisellAdjustPrice/index.d.ts +1 -0
- package/lib/components/pisellGoodPassCard/index.d.ts +2 -0
- package/lib/components/pisellGoodPassCard/index.js +8 -6
- package/lib/components/pisellGoodPassCard/index.less +11 -2
- package/lib/components/pisellInformationEntry/Scan/index.d.ts +1 -0
- package/lib/components/pisellLoading/index.d.ts +0 -1
- package/lib/components/productCard/components/Time/components/SelectHolder/index.d.ts +1 -1
- package/lib/components/productCard/components/Time/components/SelectHolder/index.js +24 -7
- package/lib/components/productCard/components/Time/components/SelectHolder/index.less +27 -0
- package/lib/components/productCard/components/Time/components/SelectHolderModal/index.d.ts +13 -0
- package/lib/components/productCard/components/Time/components/SelectHolderModal/index.js +177 -0
- package/lib/components/productCard/components/Time/components/SelectHolderModal/index.less +39 -0
- package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +2 -0
- package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.js +152 -0
- package/lib/components/productCard/components/Time/index.js +11 -4
- package/lib/components/productCard/locales.d.ts +18 -0
- package/lib/components/productCard/locales.js +21 -3
- package/lib/components/select-time/index.d.ts +1 -0
- package/lib/components/table/Actions/component/ColumnsSetting/index.d.ts +1 -0
- package/lib/components/table/Actions/component/ExportImport/components/ExportFile/index.d.ts +1 -0
- package/lib/components/table/Actions/component/ExportImport/components/ExportTable/index.d.ts +1 -0
- package/lib/components/table/Actions/component/ExportImport/components/ImportLog/index.d.ts +1 -0
- package/lib/components/table/Actions/component/ExportImport/components/ImportTable/index.d.ts +1 -0
- package/lib/components/table/Actions/component/GallerySetting/index.d.ts +1 -0
- package/lib/components/table/Actions/component/Group/PopoverContent.d.ts +1 -0
- package/lib/components/table/Actions/component/Group/index.d.ts +1 -0
- package/lib/components/table/Actions/index.d.ts +1 -0
- package/lib/components/table/Table/SelectField/index.d.ts +1 -0
- package/lib/components/table/Table/fields/index.d.ts +1 -0
- package/lib/components/table/Table/fields/treeSelect/index.d.ts +0 -1
- package/lib/components/table/Table/utils.d.ts +1 -1
- package/lib/components/versionSelect/index.d.ts +1 -0
- package/lib/components/walletCard/Guide/index.d.ts +4 -0
- package/lib/components/walletCard/index.js +15 -1
- package/lib/components/walletCard/index.less +2 -2
- package/lib/locales/en-US.d.ts +1 -0
- package/lib/locales/en-US.js +2 -1
- package/lib/locales/zh-CN.d.ts +1 -0
- package/lib/locales/zh-CN.js +2 -1
- package/lib/locales/zh-TW.d.ts +1 -0
- package/lib/locales/zh-TW.js +2 -1
- package/package.json +1 -1
|
@@ -70,7 +70,7 @@ declare const useTableProps: (props: UseTablePropsProps) => {
|
|
|
70
70
|
useCustomAction: boolean;
|
|
71
71
|
actionType: string;
|
|
72
72
|
openMode: "modal" | "drawer";
|
|
73
|
-
openContentSize: "small" | "
|
|
73
|
+
openContentSize: "small" | "large" | "middle";
|
|
74
74
|
openTitle: string;
|
|
75
75
|
key: string;
|
|
76
76
|
} | undefined;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
declare const SelectWithDataSource: (props: import("antd").SelectProps<any, import("antd/es/select").DefaultOptionType> & import("../../dataSourceForm/utils").WithModeProps & import("../../dataSourceForm/utils").WithFormItemProps & {
|
|
2
3
|
options?: any;
|
|
3
4
|
optionSourceType?: "default" | "custom" | "api" | undefined;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
declare const formFieldMap: {
|
|
2
3
|
FormItemCheckbox: import("react").FC<{}> & {
|
|
3
4
|
Group: import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
@@ -19,7 +20,7 @@ declare const formFieldMap: {
|
|
|
19
20
|
Subdomain: import("react").FC<import("antd").InputProps & {
|
|
20
21
|
onChange: (value: string) => void;
|
|
21
22
|
onBlur?: ((e: import("react").FocusEvent<HTMLInputElement, Element>) => void) | undefined;
|
|
22
|
-
rootDomain: "custom" | "
|
|
23
|
+
rootDomain: "custom" | "saas" | "xzero";
|
|
23
24
|
customDomain?: string | undefined;
|
|
24
25
|
value?: string | undefined;
|
|
25
26
|
tenantId: string;
|
|
@@ -59,7 +60,7 @@ declare const formFieldMap: {
|
|
|
59
60
|
FormItemTranslation: import("react").FC<import("./Translation/type").TranslationProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
60
61
|
FormItemIconSelect: import("react").FC<import("./IconSelect/type").IconSelectProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
61
62
|
};
|
|
62
|
-
declare const getFieldComponent: (fieldComponent: string) =>
|
|
63
|
+
declare const getFieldComponent: (fieldComponent: string) => (import("react").FC<{}> & {
|
|
63
64
|
Group: import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
64
65
|
} & {
|
|
65
66
|
Group: import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
@@ -76,7 +77,7 @@ declare const getFieldComponent: (fieldComponent: string) => import("react").FC<
|
|
|
76
77
|
Subdomain: import("react").FC<import("antd").InputProps & {
|
|
77
78
|
onChange: (value: string) => void;
|
|
78
79
|
onBlur?: ((e: import("react").FocusEvent<HTMLInputElement, Element>) => void) | undefined;
|
|
79
|
-
rootDomain: "custom" | "
|
|
80
|
+
rootDomain: "custom" | "saas" | "xzero";
|
|
80
81
|
customDomain?: string | undefined;
|
|
81
82
|
value?: string | undefined;
|
|
82
83
|
tenantId: string;
|
|
@@ -97,5 +98,5 @@ declare const getFieldComponent: (fieldComponent: string) => import("react").FC<
|
|
|
97
98
|
dataSource?: any;
|
|
98
99
|
}) => JSX.Element) | import("react").FC<any> | import("react").FC<import("./TimePicker/type").TimePickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Input.Phone/WithMode").PhoneInputProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Input.Mobile/WithMode").PhoneInputProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd").InputProps & {
|
|
99
100
|
onChange: (value: string) => void;
|
|
100
|
-
} & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd").InputProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd/es/input").PasswordProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Radio/type").RadioGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./DateRangePicker/type").DateRangePickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Upload/type").UploadProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./IconSelect/type").IconSelectProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
101
|
+
} & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd").InputProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd/es/input").PasswordProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Radio/type").RadioGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./DateRangePicker/type").DateRangePickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Upload/type").UploadProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Translation/type").TranslationProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./IconSelect/type").IconSelectProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
101
102
|
export { getFieldComponent, formFieldMap };
|
|
@@ -42,6 +42,8 @@ export interface PisellGoodPassCardProps {
|
|
|
42
42
|
}) => void;
|
|
43
43
|
/**样式 */
|
|
44
44
|
style: React.CSSProperties;
|
|
45
|
+
/**快捷展示排序 */
|
|
46
|
+
mixedSort?: (val: Discount[]) => Discount[];
|
|
45
47
|
}
|
|
46
48
|
declare const index: (props: PisellGoodPassCardProps) => JSX.Element;
|
|
47
49
|
export default index;
|
|
@@ -26,7 +26,8 @@ var index = function index(props) {
|
|
|
26
26
|
dataSource = _props$dataSource === void 0 ? [] : _props$dataSource,
|
|
27
27
|
onChange = props.onChange,
|
|
28
28
|
_props$style = props.style,
|
|
29
|
-
style = _props$style === void 0 ? {} : _props$style
|
|
29
|
+
style = _props$style === void 0 ? {} : _props$style,
|
|
30
|
+
mixedSort = props.mixedSort;
|
|
30
31
|
var _useState = useState(false),
|
|
31
32
|
_useState2 = _slicedToArray(_useState, 2),
|
|
32
33
|
showModal = _useState2[0],
|
|
@@ -44,7 +45,9 @@ var index = function index(props) {
|
|
|
44
45
|
});
|
|
45
46
|
};
|
|
46
47
|
var renderVoucherContent = function renderVoucherContent(item) {
|
|
47
|
-
return /*#__PURE__*/React.createElement("span",
|
|
48
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
49
|
+
className: "voucher-item-content-save"
|
|
50
|
+
}, getText('pisell2.text.goodpass.save'), " ", /*#__PURE__*/React.createElement(PisellText.Amount, {
|
|
48
51
|
value: item.savedAmount
|
|
49
52
|
}));
|
|
50
53
|
};
|
|
@@ -59,7 +62,7 @@ var index = function index(props) {
|
|
|
59
62
|
onChange: function onChange(e) {
|
|
60
63
|
return handleItemChange(item, e.target.checked);
|
|
61
64
|
}
|
|
62
|
-
});
|
|
65
|
+
}, renderVoucherContent(item));
|
|
63
66
|
};
|
|
64
67
|
var renderVoucherItem = function renderVoucherItem(item) {
|
|
65
68
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -67,9 +70,9 @@ var index = function index(props) {
|
|
|
67
70
|
className: "".concat(clsPrefix, "-voucher-item")
|
|
68
71
|
}, /*#__PURE__*/React.createElement("div", {
|
|
69
72
|
className: "item-title"
|
|
70
|
-
}, translation(item.format_title)), /*#__PURE__*/React.createElement("div", {
|
|
73
|
+
}, translation(item.format_title), item.isEditMode && getText('pisell2.text.goodpass.last-settlement')), /*#__PURE__*/React.createElement("div", {
|
|
71
74
|
className: "item-content"
|
|
72
|
-
},
|
|
75
|
+
}, renderActionElement(item)));
|
|
73
76
|
};
|
|
74
77
|
var renderModal = function renderModal() {
|
|
75
78
|
return /*#__PURE__*/React.createElement(PisellModal, {
|
|
@@ -82,12 +85,16 @@ var index = function index(props) {
|
|
|
82
85
|
className: "".concat(clsPrefix, "-all-items-modal")
|
|
83
86
|
}, /*#__PURE__*/React.createElement("div", {
|
|
84
87
|
style: {
|
|
85
|
-
padding: '10px 0'
|
|
88
|
+
padding: '10px 0',
|
|
89
|
+
display: "flex",
|
|
90
|
+
flexDirection: "column",
|
|
91
|
+
gap: 12
|
|
86
92
|
}
|
|
87
93
|
}, dataSource.map(renderVoucherItem)));
|
|
88
94
|
};
|
|
89
95
|
var renderMixedMode = function renderMixedMode() {
|
|
90
|
-
var
|
|
96
|
+
var sortList = (mixedSort === null || mixedSort === void 0 ? void 0 : mixedSort(dataSource)) || dataSource;
|
|
97
|
+
var list = sortList.length > 3 ? sortList.slice(0, 3) : sortList;
|
|
91
98
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
92
99
|
className: "".concat(clsPrefix, "-header")
|
|
93
100
|
}, /*#__PURE__*/React.createElement("div", null, getText('pisell2.text.goodpass.product-vouchers')), /*#__PURE__*/React.createElement(Typography.Text, {
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
.item-title {
|
|
23
23
|
color: var(--Gray-500, #667085);
|
|
24
24
|
// text-align: center;
|
|
25
|
-
font-size:
|
|
25
|
+
font-size: 16px;
|
|
26
26
|
font-style: normal;
|
|
27
27
|
font-weight: 600;
|
|
28
28
|
line-height: 20px;
|
|
@@ -30,12 +30,21 @@
|
|
|
30
30
|
|
|
31
31
|
.item-content {
|
|
32
32
|
color: var(--, #8157d5);
|
|
33
|
-
font-size:
|
|
33
|
+
font-size: 16px;
|
|
34
34
|
font-style: normal;
|
|
35
35
|
font-weight: 400;
|
|
36
36
|
line-height: 20px;
|
|
37
37
|
white-space: nowrap;
|
|
38
38
|
|
|
39
|
+
.voucher-item-content-save {
|
|
40
|
+
color: var(--, #8157d5);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.pisell-lowcode-checkbox-wrapper {
|
|
44
|
+
display: flex;
|
|
45
|
+
flex-direction: row-reverse;
|
|
46
|
+
}
|
|
47
|
+
|
|
39
48
|
.add-btn {
|
|
40
49
|
color: var(--, #8157d5);
|
|
41
50
|
text-align: center;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import './index.less';
|
|
2
|
-
declare const SelectHolder: ({ lists, value, onChange, holderMode, isShowAddHolderButton, onAddHolder, addHolderButtonText, onClearHolder, isErrorHolder, allowClear, }: any) => JSX.Element;
|
|
2
|
+
declare const SelectHolder: ({ lists, value, onChange, holderMode, isShowAddHolderButton, onAddHolder, addHolderButtonText, onClearHolder, isErrorHolder, allowClear, holderMaxCount, }: any) => JSX.Element;
|
|
3
3
|
export default SelectHolder;
|
|
@@ -6,13 +6,13 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
|
6
6
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
7
|
import React, { useEffect, useMemo, useState } from 'react';
|
|
8
8
|
import { Select, Divider } from 'antd';
|
|
9
|
-
import { locales } from '@pisell/utils';
|
|
9
|
+
import { isArr, locales } from '@pisell/utils';
|
|
10
10
|
import Iconfont from "../../../../../iconfont";
|
|
11
11
|
import "./index.less";
|
|
12
12
|
var SelectHolder = function SelectHolder(_ref) {
|
|
13
13
|
var lists = _ref.lists,
|
|
14
14
|
value = _ref.value,
|
|
15
|
-
|
|
15
|
+
onChange = _ref.onChange,
|
|
16
16
|
holderMode = _ref.holderMode,
|
|
17
17
|
isShowAddHolderButton = _ref.isShowAddHolderButton,
|
|
18
18
|
onAddHolder = _ref.onAddHolder,
|
|
@@ -20,7 +20,8 @@ var SelectHolder = function SelectHolder(_ref) {
|
|
|
20
20
|
onClearHolder = _ref.onClearHolder,
|
|
21
21
|
isErrorHolder = _ref.isErrorHolder,
|
|
22
22
|
_ref$allowClear = _ref.allowClear,
|
|
23
|
-
allowClear = _ref$allowClear === void 0 ? false : _ref$allowClear
|
|
23
|
+
allowClear = _ref$allowClear === void 0 ? false : _ref$allowClear,
|
|
24
|
+
holderMaxCount = _ref.holderMaxCount;
|
|
24
25
|
var _useState = useState(),
|
|
25
26
|
_useState2 = _slicedToArray(_useState, 2),
|
|
26
27
|
selectedValue = _useState2[0],
|
|
@@ -48,8 +49,32 @@ var SelectHolder = function SelectHolder(_ref) {
|
|
|
48
49
|
setOpen(false);
|
|
49
50
|
};
|
|
50
51
|
var isError = useMemo(function () {
|
|
51
|
-
if (!
|
|
52
|
+
if (!isErrorHolder) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
if (!selectedValue) {
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
if (isArr(selectedValue) && (selectedValue === null || selectedValue === void 0 ? void 0 : selectedValue.length) !== holderMaxCount) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
return false;
|
|
52
62
|
}, [selectedValue, isErrorHolder]);
|
|
63
|
+
var handleChange = function handleChange(val) {
|
|
64
|
+
var item;
|
|
65
|
+
if (isArr(val)) {
|
|
66
|
+
if (val.length > holderMaxCount) return;
|
|
67
|
+
item = lists.filter(function (d) {
|
|
68
|
+
return val.includes(d.id);
|
|
69
|
+
});
|
|
70
|
+
} else {
|
|
71
|
+
item = lists.find(function (d) {
|
|
72
|
+
return d.id === val;
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
setSelectedValue(val);
|
|
76
|
+
onChange(item);
|
|
77
|
+
};
|
|
53
78
|
return /*#__PURE__*/React.createElement("div", {
|
|
54
79
|
className: "pisell-lowcode-product-card-select-holder ".concat(isError ? 'pisell-lowcode-product-card-select-holder-error' : '')
|
|
55
80
|
}, /*#__PURE__*/React.createElement(Select, {
|
|
@@ -63,17 +88,11 @@ var SelectHolder = function SelectHolder(_ref) {
|
|
|
63
88
|
showSearch: true,
|
|
64
89
|
allowClear: allowClear,
|
|
65
90
|
onClear: function onClear() {
|
|
66
|
-
return
|
|
91
|
+
return onChange('');
|
|
67
92
|
},
|
|
68
93
|
value: selectedValue,
|
|
69
94
|
placeholder: locales.getText('pisell2.product.card.add.holder.placeholder')(addHolderButtonText),
|
|
70
|
-
onChange:
|
|
71
|
-
setSelectedValue(val);
|
|
72
|
-
var item = lists.find(function (d) {
|
|
73
|
-
return d.id === val;
|
|
74
|
-
});
|
|
75
|
-
_onChange(item);
|
|
76
|
-
},
|
|
95
|
+
onChange: handleChange,
|
|
77
96
|
options: lists.map(function (item) {
|
|
78
97
|
return {
|
|
79
98
|
label: item === null || item === void 0 ? void 0 : item.label,
|
|
@@ -33,3 +33,30 @@
|
|
|
33
33
|
border: 1px solid var(--Error-600, #d92d20) !important;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
+
|
|
37
|
+
.select-holder-multiple-tag {
|
|
38
|
+
padding: 6px 12px;
|
|
39
|
+
border-radius: 12px;
|
|
40
|
+
display: inline-flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
font-size: 16px;
|
|
43
|
+
.pisell-lowcode-tag-close-icon {
|
|
44
|
+
font-size: 16px;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.select-holder-multiple-edit-button {
|
|
49
|
+
font-weight: 600;
|
|
50
|
+
line-height: 22px;
|
|
51
|
+
color: var(--Blue-600, #1570EF);
|
|
52
|
+
display: inline-block;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.select-holder-multiple-wrap {
|
|
56
|
+
display: flex;
|
|
57
|
+
align-items: center;
|
|
58
|
+
flex-wrap: wrap;
|
|
59
|
+
row-gap: 8px;
|
|
60
|
+
align-items: center;
|
|
61
|
+
flex-wrap: wrap;
|
|
62
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import './index.less';
|
|
2
|
+
interface SelectHolderModalProps {
|
|
3
|
+
visible: boolean;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
onConfirm: (value: any) => void;
|
|
6
|
+
lists: any[];
|
|
7
|
+
value: any[];
|
|
8
|
+
holderMaxCount: number;
|
|
9
|
+
addHolderButtonText: string;
|
|
10
|
+
onAdd: () => void;
|
|
11
|
+
}
|
|
12
|
+
declare const SelectHolderModal: (props: SelectHolderModalProps) => JSX.Element;
|
|
13
|
+
export default SelectHolderModal;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
2
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
4
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
5
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
6
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
7
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
8
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
9
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
10
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
11
|
+
import React, { useEffect, useMemo, useState } from 'react';
|
|
12
|
+
import { locales } from '@pisell/utils';
|
|
13
|
+
import PisellModal from "../../../../../pisellModal";
|
|
14
|
+
import PisellCustomCheckboxGroup from "../../../../../pisellCustomCheckboxGroup";
|
|
15
|
+
import PisellCard from "../../../../../pisellCard";
|
|
16
|
+
import PisellAvatar from "../../../../../pisellAvatar";
|
|
17
|
+
import { Button, Checkbox } from 'antd';
|
|
18
|
+
import Iconfont from "../../../../../iconfont";
|
|
19
|
+
import "./index.less";
|
|
20
|
+
var SelectHolderModal = function SelectHolderModal(props) {
|
|
21
|
+
var lists = props.lists,
|
|
22
|
+
value = props.value,
|
|
23
|
+
visible = props.visible,
|
|
24
|
+
holderMaxCount = props.holderMaxCount,
|
|
25
|
+
addHolderButtonText = props.addHolderButtonText,
|
|
26
|
+
onClose = props.onClose,
|
|
27
|
+
onAdd = props.onAdd,
|
|
28
|
+
onConfirm = props.onConfirm;
|
|
29
|
+
var _useState = useState([]),
|
|
30
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
31
|
+
selectedValue = _useState2[0],
|
|
32
|
+
setSelectedValue = _useState2[1];
|
|
33
|
+
var renderItem = function renderItem(item) {
|
|
34
|
+
return /*#__PURE__*/React.createElement(PisellCard, {
|
|
35
|
+
key: item.id,
|
|
36
|
+
padding: 12,
|
|
37
|
+
selected: selectedValue.includes(item.id)
|
|
38
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
39
|
+
className: "select-holder-modal-card"
|
|
40
|
+
}, /*#__PURE__*/React.createElement(Checkbox, {
|
|
41
|
+
checked: selectedValue.includes(item.id)
|
|
42
|
+
}), /*#__PURE__*/React.createElement(PisellAvatar, {
|
|
43
|
+
src: item.avatar,
|
|
44
|
+
size: "lg",
|
|
45
|
+
useTextAvatar: true,
|
|
46
|
+
className: "select-holder-modal-add-item-avatar"
|
|
47
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
48
|
+
className: "select-holder-name"
|
|
49
|
+
}, item.label)), /*#__PURE__*/React.createElement("span", {
|
|
50
|
+
className: "select-holder-name"
|
|
51
|
+
}, item.label)));
|
|
52
|
+
};
|
|
53
|
+
var handleConfirm = function handleConfirm() {
|
|
54
|
+
onConfirm(selectedValue);
|
|
55
|
+
onClose();
|
|
56
|
+
};
|
|
57
|
+
useEffect(function () {
|
|
58
|
+
setSelectedValue(value || []);
|
|
59
|
+
}, [value, visible]);
|
|
60
|
+
var handleClick = function handleClick(value) {
|
|
61
|
+
if (value.id === 0) {
|
|
62
|
+
onAdd();
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
setSelectedValue(function (v) {
|
|
66
|
+
if (v.some(function (v) {
|
|
67
|
+
return v === value.id;
|
|
68
|
+
})) {
|
|
69
|
+
return v.filter(function (v) {
|
|
70
|
+
return v !== value.id;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
if (v.length >= holderMaxCount) {
|
|
74
|
+
return v;
|
|
75
|
+
}
|
|
76
|
+
return [].concat(_toConsumableArray(v), [value.id]);
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
var handleClear = function handleClear() {
|
|
80
|
+
setSelectedValue([]);
|
|
81
|
+
};
|
|
82
|
+
var handleApply = function handleApply() {
|
|
83
|
+
onConfirm(selectedValue);
|
|
84
|
+
onClose();
|
|
85
|
+
};
|
|
86
|
+
var title = useMemo(function () {
|
|
87
|
+
return /*#__PURE__*/React.createElement("span", null, "".concat(locales.getText('pisell2.product.card.add.holder.modal.title.1'), " "), /*#__PURE__*/React.createElement("span", {
|
|
88
|
+
className: "select-holder-modal-title-count"
|
|
89
|
+
}, (selectedValue === null || selectedValue === void 0 ? void 0 : selectedValue.length) || 0, "/", holderMaxCount), " ".concat(addHolderButtonText));
|
|
90
|
+
}, [selectedValue, holderMaxCount, addHolderButtonText]);
|
|
91
|
+
var renderAddItem = function renderAddItem(item) {
|
|
92
|
+
return /*#__PURE__*/React.createElement(PisellCard, {
|
|
93
|
+
key: item.id,
|
|
94
|
+
padding: 12
|
|
95
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
96
|
+
className: "select-holder-modal-card"
|
|
97
|
+
}, /*#__PURE__*/React.createElement(PisellAvatar, {
|
|
98
|
+
src: item.avatar,
|
|
99
|
+
size: "lg",
|
|
100
|
+
useTextAvatar: true,
|
|
101
|
+
className: "select-holder-modal-add-item-avatar",
|
|
102
|
+
style: {
|
|
103
|
+
backgroundColor: 'var(--Pisell-, #EEE5FF)'
|
|
104
|
+
}
|
|
105
|
+
}, /*#__PURE__*/React.createElement(Iconfont, {
|
|
106
|
+
type: "pisell2-plus",
|
|
107
|
+
style: {
|
|
108
|
+
fontSize: '24px'
|
|
109
|
+
}
|
|
110
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
111
|
+
className: "select-holder-name"
|
|
112
|
+
}, locales.getText('pisell2.product.card.add.holder.modal.add'))));
|
|
113
|
+
};
|
|
114
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
115
|
+
onClick: function onClick(e) {
|
|
116
|
+
return e.stopPropagation();
|
|
117
|
+
}
|
|
118
|
+
}, /*#__PURE__*/React.createElement(PisellModal, {
|
|
119
|
+
open: visible,
|
|
120
|
+
onCancel: onClose,
|
|
121
|
+
onOk: handleConfirm,
|
|
122
|
+
width: 780,
|
|
123
|
+
footer: null,
|
|
124
|
+
title: title,
|
|
125
|
+
headerDivider: false
|
|
126
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
127
|
+
className: "select-holder-modal-content"
|
|
128
|
+
}, /*#__PURE__*/React.createElement(PisellCustomCheckboxGroup, {
|
|
129
|
+
className: "select-holder-modal-checkbox-group",
|
|
130
|
+
allowAdd: true,
|
|
131
|
+
dataSource: lists,
|
|
132
|
+
renderItem: renderItem,
|
|
133
|
+
renderAddItem: renderAddItem,
|
|
134
|
+
value: selectedValue,
|
|
135
|
+
isMultiple: true,
|
|
136
|
+
columns: 3,
|
|
137
|
+
horizontalGap: 16,
|
|
138
|
+
verticalGap: 16,
|
|
139
|
+
onClick: handleClick
|
|
140
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
141
|
+
className: "select-holder-modal-footer"
|
|
142
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
|
|
143
|
+
size: "large",
|
|
144
|
+
onClick: onClose,
|
|
145
|
+
className: "select-holder-modal-cancel-button"
|
|
146
|
+
}, locales.getText('pisell2.product.card.add.holder.modal.cancel'))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
|
|
147
|
+
size: "large",
|
|
148
|
+
onClick: handleClear,
|
|
149
|
+
className: "select-holder-modal-clear-button"
|
|
150
|
+
}, locales.getText('pisell2.product.card.add.holder.modal.clear')), /*#__PURE__*/React.createElement(Button, {
|
|
151
|
+
size: "large",
|
|
152
|
+
type: "primary",
|
|
153
|
+
onClick: handleApply,
|
|
154
|
+
className: "select-holder-modal-apply-button"
|
|
155
|
+
}, locales.getText('pisell2.product.card.add.holder.modal.apply')))))));
|
|
156
|
+
};
|
|
157
|
+
export default SelectHolderModal;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
.select-holder-modal-title-count {
|
|
2
|
+
color: var(--theme-color, #7f56da);
|
|
3
|
+
}
|
|
4
|
+
.select-holder-modal-content {
|
|
5
|
+
.select-holder-modal-checkbox-group {
|
|
6
|
+
margin-bottom: 16px;
|
|
7
|
+
max-height: 60vh;
|
|
8
|
+
overflow: auto !important;
|
|
9
|
+
}
|
|
10
|
+
.select-holder-modal-card {
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
gap: 10px;
|
|
14
|
+
color: var(--Text-Text_1, #1b1b1b);
|
|
15
|
+
font-size: 16px;
|
|
16
|
+
font-weight: 600;
|
|
17
|
+
line-height: 22px;
|
|
18
|
+
}
|
|
19
|
+
.select-holder-modal-add-item-avatar {
|
|
20
|
+
flex-shrink: 0;
|
|
21
|
+
.anticon {
|
|
22
|
+
color: var(--Pisell-, #5d3f9f);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
.select-holder-modal-footer {
|
|
26
|
+
display: flex;
|
|
27
|
+
justify-content: space-between;
|
|
28
|
+
align-items: center;
|
|
29
|
+
padding: 16px 0 36px;
|
|
30
|
+
.select-holder-modal-apply-button {
|
|
31
|
+
width: 352px;
|
|
32
|
+
margin-left: 8px;
|
|
33
|
+
}
|
|
34
|
+
.select-holder-modal-cancel-button,
|
|
35
|
+
.select-holder-modal-clear-button {
|
|
36
|
+
width: 132px;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|