@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.
Files changed (109) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +1 -1
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +14 -14
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +15 -15
  11. package/es/components/batch-editor/index.d.ts +1 -0
  12. package/es/components/dataSourceComponents/dataSourceTable/filter/index.d.ts +1 -0
  13. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +1 -1
  14. package/es/components/dataSourceComponents/fields/Select/index.d.ts +1 -0
  15. package/es/components/dataSourceComponents/fields/index.d.ts +5 -4
  16. package/es/components/drag-sort-tree/TreeItem/index.d.ts +1 -0
  17. package/es/components/filter/index.d.ts +1 -0
  18. package/es/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -0
  19. package/es/components/pisellAdjustPrice/index.d.ts +1 -0
  20. package/es/components/pisellGoodPassCard/index.d.ts +2 -0
  21. package/es/components/pisellGoodPassCard/index.js +14 -7
  22. package/es/components/pisellGoodPassCard/index.less +11 -2
  23. package/es/components/pisellInformationEntry/Scan/index.d.ts +1 -0
  24. package/es/components/pisellLoading/index.d.ts +0 -1
  25. package/es/components/productCard/components/Time/components/SelectHolder/index.d.ts +1 -1
  26. package/es/components/productCard/components/Time/components/SelectHolder/index.js +31 -12
  27. package/es/components/productCard/components/Time/components/SelectHolder/index.less +27 -0
  28. package/es/components/productCard/components/Time/components/SelectHolderModal/index.d.ts +13 -0
  29. package/es/components/productCard/components/Time/components/SelectHolderModal/index.js +157 -0
  30. package/es/components/productCard/components/Time/components/SelectHolderModal/index.less +39 -0
  31. package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +2 -0
  32. package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.js +144 -0
  33. package/es/components/productCard/components/Time/index.js +9 -4
  34. package/es/components/productCard/locales.d.ts +18 -0
  35. package/es/components/productCard/locales.js +27 -3
  36. package/es/components/select-time/index.d.ts +1 -0
  37. package/es/components/table/Actions/component/ColumnsSetting/index.d.ts +1 -0
  38. package/es/components/table/Actions/component/ExportImport/components/ExportFile/index.d.ts +1 -0
  39. package/es/components/table/Actions/component/ExportImport/components/ExportTable/index.d.ts +1 -0
  40. package/es/components/table/Actions/component/ExportImport/components/ImportLog/index.d.ts +1 -0
  41. package/es/components/table/Actions/component/ExportImport/components/ImportTable/index.d.ts +1 -0
  42. package/es/components/table/Actions/component/GallerySetting/index.d.ts +1 -0
  43. package/es/components/table/Actions/component/Group/PopoverContent.d.ts +1 -0
  44. package/es/components/table/Actions/component/Group/index.d.ts +1 -0
  45. package/es/components/table/Actions/index.d.ts +1 -0
  46. package/es/components/table/Table/SelectField/index.d.ts +1 -0
  47. package/es/components/table/Table/fields/index.d.ts +1 -0
  48. package/es/components/table/Table/fields/treeSelect/index.d.ts +0 -1
  49. package/es/components/table/Table/utils.d.ts +1 -1
  50. package/es/components/versionSelect/index.d.ts +1 -0
  51. package/es/components/walletCard/Guide/index.d.ts +4 -0
  52. package/es/components/walletCard/index.js +11 -3
  53. package/es/components/walletCard/index.less +2 -2
  54. package/es/locales/en-US.d.ts +1 -0
  55. package/es/locales/en-US.js +2 -1
  56. package/es/locales/zh-CN.d.ts +1 -0
  57. package/es/locales/zh-CN.js +2 -1
  58. package/es/locales/zh-TW.d.ts +1 -0
  59. package/es/locales/zh-TW.js +2 -1
  60. package/lib/components/batch-editor/index.d.ts +1 -0
  61. package/lib/components/dataSourceComponents/dataSourceTable/filter/index.d.ts +1 -0
  62. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +1 -1
  63. package/lib/components/dataSourceComponents/fields/Select/index.d.ts +1 -0
  64. package/lib/components/dataSourceComponents/fields/index.d.ts +5 -4
  65. package/lib/components/drag-sort-tree/TreeItem/index.d.ts +1 -0
  66. package/lib/components/filter/index.d.ts +1 -0
  67. package/lib/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -0
  68. package/lib/components/pisellAdjustPrice/index.d.ts +1 -0
  69. package/lib/components/pisellGoodPassCard/index.d.ts +2 -0
  70. package/lib/components/pisellGoodPassCard/index.js +8 -6
  71. package/lib/components/pisellGoodPassCard/index.less +11 -2
  72. package/lib/components/pisellInformationEntry/Scan/index.d.ts +1 -0
  73. package/lib/components/pisellLoading/index.d.ts +0 -1
  74. package/lib/components/productCard/components/Time/components/SelectHolder/index.d.ts +1 -1
  75. package/lib/components/productCard/components/Time/components/SelectHolder/index.js +24 -7
  76. package/lib/components/productCard/components/Time/components/SelectHolder/index.less +27 -0
  77. package/lib/components/productCard/components/Time/components/SelectHolderModal/index.d.ts +13 -0
  78. package/lib/components/productCard/components/Time/components/SelectHolderModal/index.js +177 -0
  79. package/lib/components/productCard/components/Time/components/SelectHolderModal/index.less +39 -0
  80. package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +2 -0
  81. package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.js +152 -0
  82. package/lib/components/productCard/components/Time/index.js +11 -4
  83. package/lib/components/productCard/locales.d.ts +18 -0
  84. package/lib/components/productCard/locales.js +21 -3
  85. package/lib/components/select-time/index.d.ts +1 -0
  86. package/lib/components/table/Actions/component/ColumnsSetting/index.d.ts +1 -0
  87. package/lib/components/table/Actions/component/ExportImport/components/ExportFile/index.d.ts +1 -0
  88. package/lib/components/table/Actions/component/ExportImport/components/ExportTable/index.d.ts +1 -0
  89. package/lib/components/table/Actions/component/ExportImport/components/ImportLog/index.d.ts +1 -0
  90. package/lib/components/table/Actions/component/ExportImport/components/ImportTable/index.d.ts +1 -0
  91. package/lib/components/table/Actions/component/GallerySetting/index.d.ts +1 -0
  92. package/lib/components/table/Actions/component/Group/PopoverContent.d.ts +1 -0
  93. package/lib/components/table/Actions/component/Group/index.d.ts +1 -0
  94. package/lib/components/table/Actions/index.d.ts +1 -0
  95. package/lib/components/table/Table/SelectField/index.d.ts +1 -0
  96. package/lib/components/table/Table/fields/index.d.ts +1 -0
  97. package/lib/components/table/Table/fields/treeSelect/index.d.ts +0 -1
  98. package/lib/components/table/Table/utils.d.ts +1 -1
  99. package/lib/components/versionSelect/index.d.ts +1 -0
  100. package/lib/components/walletCard/Guide/index.d.ts +4 -0
  101. package/lib/components/walletCard/index.js +15 -1
  102. package/lib/components/walletCard/index.less +2 -2
  103. package/lib/locales/en-US.d.ts +1 -0
  104. package/lib/locales/en-US.js +2 -1
  105. package/lib/locales/zh-CN.d.ts +1 -0
  106. package/lib/locales/zh-CN.js +2 -1
  107. package/lib/locales/zh-TW.d.ts +1 -0
  108. package/lib/locales/zh-TW.js +2 -1
  109. package/package.json +1 -1
@@ -43,7 +43,7 @@ var index = (props) => {
43
43
  var _a;
44
44
  const context = (0, import_useEngineContext.default)();
45
45
  const { translation } = (_a = context.appHelper) == null ? void 0 : _a.utils;
46
- const { dataSource = [], onChange, style = {} } = props;
46
+ const { dataSource = [], onChange, style = {}, mixedSort } = props;
47
47
  const [showModal, setShowModal] = (0, import_react.useState)(false);
48
48
  console.log("pisell good card datasource", dataSource);
49
49
  const handleChange = (newValue) => {
@@ -58,7 +58,7 @@ var index = (props) => {
58
58
  });
59
59
  };
60
60
  const renderVoucherContent = (item) => {
61
- return /* @__PURE__ */ import_react.default.createElement("span", null, (0, import_locales.getText)("pisell2.text.goodpass.save"), " ", /* @__PURE__ */ import_react.default.createElement(import__.PisellText.Amount, { value: item.savedAmount }));
61
+ return /* @__PURE__ */ import_react.default.createElement("span", { className: `voucher-item-content-save` }, (0, import_locales.getText)("pisell2.text.goodpass.save"), " ", /* @__PURE__ */ import_react.default.createElement(import__.PisellText.Amount, { value: item.savedAmount }));
62
62
  };
63
63
  const renderActionElement = (item) => {
64
64
  const isChecked = item.isSelected;
@@ -69,11 +69,12 @@ var index = (props) => {
69
69
  style: { marginLeft: 8 },
70
70
  checked: isChecked,
71
71
  onChange: (e) => handleItemChange(item, e.target.checked)
72
- }
72
+ },
73
+ renderVoucherContent(item)
73
74
  );
74
75
  };
75
76
  const renderVoucherItem = (item) => {
76
- return /* @__PURE__ */ import_react.default.createElement("div", { key: item.id, className: `${clsPrefix}-voucher-item` }, /* @__PURE__ */ import_react.default.createElement("div", { className: "item-title" }, translation(item.format_title)), /* @__PURE__ */ import_react.default.createElement("div", { className: "item-content" }, renderVoucherContent(item), renderActionElement(item)));
77
+ return /* @__PURE__ */ import_react.default.createElement("div", { key: item.id, className: `${clsPrefix}-voucher-item` }, /* @__PURE__ */ import_react.default.createElement("div", { className: "item-title" }, translation(item.format_title), item.isEditMode && (0, import_locales.getText)("pisell2.text.goodpass.last-settlement")), /* @__PURE__ */ import_react.default.createElement("div", { className: "item-content" }, renderActionElement(item)));
77
78
  };
78
79
  const renderModal = () => {
79
80
  return /* @__PURE__ */ import_react.default.createElement(
@@ -85,11 +86,12 @@ var index = (props) => {
85
86
  onCancel: () => setShowModal(false),
86
87
  className: `${clsPrefix}-all-items-modal`
87
88
  },
88
- /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: "10px 0" } }, dataSource.map(renderVoucherItem))
89
+ /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: "10px 0", display: "flex", flexDirection: "column", gap: 12 } }, dataSource.map(renderVoucherItem))
89
90
  );
90
91
  };
91
92
  const renderMixedMode = () => {
92
- const list = dataSource.length > 3 ? dataSource.slice(0, 3) : dataSource;
93
+ const sortList = (mixedSort == null ? void 0 : mixedSort(dataSource)) || dataSource;
94
+ const list = sortList.length > 3 ? sortList.slice(0, 3) : sortList;
93
95
  return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { className: `${clsPrefix}-header` }, /* @__PURE__ */ import_react.default.createElement("div", null, (0, import_locales.getText)("pisell2.text.goodpass.product-vouchers")), /* @__PURE__ */ import_react.default.createElement(import_antd.Typography.Text, { underline: true, onClick: () => setShowModal(true) }, (0, import_locales.getText)("pisell2.text.goodpass.view-more"))), /* @__PURE__ */ import_react.default.createElement(import_antd.Divider, { style: { margin: 4 } }), /* @__PURE__ */ import_react.default.createElement("div", { className: `${clsPrefix}-body` }, list.map(renderVoucherItem)));
94
96
  };
95
97
  return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, renderModal(), /* @__PURE__ */ import_react.default.createElement(
@@ -22,7 +22,7 @@
22
22
  .item-title {
23
23
  color: var(--Gray-500, #667085);
24
24
  // text-align: center;
25
- font-size: 14px;
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: 14px;
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,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  export interface ScanProps {
3
4
  onChange: (val: string) => void;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { SpinProps } from 'antd';
3
2
  import './index.less';
4
3
  declare type MaskType = {
@@ -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;
@@ -47,7 +47,8 @@ var SelectHolder = ({
47
47
  addHolderButtonText,
48
48
  onClearHolder,
49
49
  isErrorHolder,
50
- allowClear = false
50
+ allowClear = false,
51
+ holderMaxCount
51
52
  }) => {
52
53
  const [selectedValue, setSelectedValue] = (0, import_react.useState)();
53
54
  const [open, setOpen] = (0, import_react.useState)(false);
@@ -61,8 +62,28 @@ var SelectHolder = ({
61
62
  setOpen(false);
62
63
  };
63
64
  const isError = (0, import_react.useMemo)(() => {
64
- if (!selectedValue && isErrorHolder) return true;
65
+ if (!isErrorHolder) {
66
+ return false;
67
+ }
68
+ if (!selectedValue) {
69
+ return true;
70
+ }
71
+ if ((0, import_utils.isArr)(selectedValue) && (selectedValue == null ? void 0 : selectedValue.length) !== holderMaxCount) {
72
+ return true;
73
+ }
74
+ return false;
65
75
  }, [selectedValue, isErrorHolder]);
76
+ const handleChange = (val) => {
77
+ let item;
78
+ if ((0, import_utils.isArr)(val)) {
79
+ if (val.length > holderMaxCount) return;
80
+ item = lists.filter((d) => val.includes(d.id));
81
+ } else {
82
+ item = lists.find((d) => d.id === val);
83
+ }
84
+ setSelectedValue(val);
85
+ onChange(item);
86
+ };
66
87
  return /* @__PURE__ */ import_react.default.createElement(
67
88
  "div",
68
89
  {
@@ -83,11 +104,7 @@ var SelectHolder = ({
83
104
  placeholder: import_utils.locales.getText(
84
105
  "pisell2.product.card.add.holder.placeholder"
85
106
  )(addHolderButtonText),
86
- onChange: (val) => {
87
- setSelectedValue(val);
88
- const item = lists.find((d) => d.id === val);
89
- onChange(item);
90
- },
107
+ onChange: handleChange,
91
108
  options: lists.map((item) => ({
92
109
  label: item == null ? void 0 : item.label,
93
110
  value: item == null ? void 0 : item.id
@@ -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,177 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/components/productCard/components/Time/components/SelectHolderModal/index.tsx
30
+ var SelectHolderModal_exports = {};
31
+ __export(SelectHolderModal_exports, {
32
+ default: () => SelectHolderModal_default
33
+ });
34
+ module.exports = __toCommonJS(SelectHolderModal_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_utils = require("@pisell/utils");
37
+ var import_pisellModal = __toESM(require("../../../../../pisellModal"));
38
+ var import_pisellCustomCheckboxGroup = __toESM(require("../../../../../pisellCustomCheckboxGroup"));
39
+ var import_pisellCard = __toESM(require("../../../../../pisellCard"));
40
+ var import_pisellAvatar = __toESM(require("../../../../../pisellAvatar"));
41
+ var import_antd = require("antd");
42
+ var import_iconfont = __toESM(require("../../../../../iconfont"));
43
+ var import_index = require("./index.less");
44
+ var SelectHolderModal = (props) => {
45
+ const {
46
+ lists,
47
+ value,
48
+ visible,
49
+ holderMaxCount,
50
+ addHolderButtonText,
51
+ onClose,
52
+ onAdd,
53
+ onConfirm
54
+ } = props;
55
+ const [selectedValue, setSelectedValue] = (0, import_react.useState)([]);
56
+ const renderItem = (item) => {
57
+ return /* @__PURE__ */ import_react.default.createElement(
58
+ import_pisellCard.default,
59
+ {
60
+ key: item.id,
61
+ padding: 12,
62
+ selected: selectedValue.includes(item.id)
63
+ },
64
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "select-holder-modal-card" }, /* @__PURE__ */ import_react.default.createElement(import_antd.Checkbox, { checked: selectedValue.includes(item.id) }), /* @__PURE__ */ import_react.default.createElement(
65
+ import_pisellAvatar.default,
66
+ {
67
+ src: item.avatar,
68
+ size: "lg",
69
+ useTextAvatar: true,
70
+ className: "select-holder-modal-add-item-avatar"
71
+ },
72
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "select-holder-name" }, item.label)
73
+ ), /* @__PURE__ */ import_react.default.createElement("span", { className: "select-holder-name" }, item.label))
74
+ );
75
+ };
76
+ const handleConfirm = () => {
77
+ onConfirm(selectedValue);
78
+ onClose();
79
+ };
80
+ (0, import_react.useEffect)(() => {
81
+ setSelectedValue(value || []);
82
+ }, [value, visible]);
83
+ const handleClick = (value2) => {
84
+ if (value2.id === 0) {
85
+ onAdd();
86
+ return;
87
+ }
88
+ setSelectedValue((v) => {
89
+ if (v.some((v2) => v2 === value2.id)) {
90
+ return v.filter((v2) => v2 !== value2.id);
91
+ }
92
+ if (v.length >= holderMaxCount) {
93
+ return v;
94
+ }
95
+ return [...v, value2.id];
96
+ });
97
+ };
98
+ const handleClear = () => {
99
+ setSelectedValue([]);
100
+ };
101
+ const handleApply = () => {
102
+ onConfirm(selectedValue);
103
+ onClose();
104
+ };
105
+ const title = (0, import_react.useMemo)(() => {
106
+ return /* @__PURE__ */ import_react.default.createElement("span", null, `${import_utils.locales.getText("pisell2.product.card.add.holder.modal.title.1")} `, /* @__PURE__ */ import_react.default.createElement("span", { className: "select-holder-modal-title-count" }, (selectedValue == null ? void 0 : selectedValue.length) || 0, "/", holderMaxCount), ` ${addHolderButtonText}`);
107
+ }, [selectedValue, holderMaxCount, addHolderButtonText]);
108
+ const renderAddItem = (item) => {
109
+ return /* @__PURE__ */ import_react.default.createElement(import_pisellCard.default, { key: item.id, padding: 12 }, /* @__PURE__ */ import_react.default.createElement("div", { className: "select-holder-modal-card" }, /* @__PURE__ */ import_react.default.createElement(
110
+ import_pisellAvatar.default,
111
+ {
112
+ src: item.avatar,
113
+ size: "lg",
114
+ useTextAvatar: true,
115
+ className: "select-holder-modal-add-item-avatar",
116
+ style: { backgroundColor: "var(--Pisell-, #EEE5FF)" }
117
+ },
118
+ /* @__PURE__ */ import_react.default.createElement(import_iconfont.default, { type: "pisell2-plus", style: { fontSize: "24px" } })
119
+ ), /* @__PURE__ */ import_react.default.createElement("span", { className: "select-holder-name" }, import_utils.locales.getText("pisell2.product.card.add.holder.modal.add"))));
120
+ };
121
+ return /* @__PURE__ */ import_react.default.createElement("div", { onClick: (e) => e.stopPropagation() }, /* @__PURE__ */ import_react.default.createElement(
122
+ import_pisellModal.default,
123
+ {
124
+ open: visible,
125
+ onCancel: onClose,
126
+ onOk: handleConfirm,
127
+ width: 780,
128
+ footer: null,
129
+ title,
130
+ headerDivider: false
131
+ },
132
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "select-holder-modal-content" }, /* @__PURE__ */ import_react.default.createElement(
133
+ import_pisellCustomCheckboxGroup.default,
134
+ {
135
+ className: "select-holder-modal-checkbox-group",
136
+ allowAdd: true,
137
+ dataSource: lists,
138
+ renderItem,
139
+ renderAddItem,
140
+ value: selectedValue,
141
+ isMultiple: true,
142
+ columns: 3,
143
+ horizontalGap: 16,
144
+ verticalGap: 16,
145
+ onClick: handleClick
146
+ }
147
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "select-holder-modal-footer" }, /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(
148
+ import_antd.Button,
149
+ {
150
+ size: "large",
151
+ onClick: onClose,
152
+ className: "select-holder-modal-cancel-button"
153
+ },
154
+ import_utils.locales.getText(
155
+ "pisell2.product.card.add.holder.modal.cancel"
156
+ )
157
+ )), /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(
158
+ import_antd.Button,
159
+ {
160
+ size: "large",
161
+ onClick: handleClear,
162
+ className: "select-holder-modal-clear-button"
163
+ },
164
+ import_utils.locales.getText("pisell2.product.card.add.holder.modal.clear")
165
+ ), /* @__PURE__ */ import_react.default.createElement(
166
+ import_antd.Button,
167
+ {
168
+ size: "large",
169
+ type: "primary",
170
+ onClick: handleApply,
171
+ className: "select-holder-modal-apply-button"
172
+ },
173
+ import_utils.locales.getText("pisell2.product.card.add.holder.modal.apply")
174
+ ))))
175
+ ));
176
+ };
177
+ var SelectHolderModal_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
+ }
@@ -0,0 +1,2 @@
1
+ declare const SelectHolderMultiple: ({ lists, value, onChange, holderMode, isShowAddHolderButton, onAddHolder, addHolderButtonText, onClearHolder, isErrorHolder, allowClear, holderMaxCount, }: any) => JSX.Element;
2
+ export default SelectHolderMultiple;
@@ -0,0 +1,152 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/components/productCard/components/Time/components/SelectHolderMultiple/index.tsx
30
+ var SelectHolderMultiple_exports = {};
31
+ __export(SelectHolderMultiple_exports, {
32
+ default: () => SelectHolderMultiple_default
33
+ });
34
+ module.exports = __toCommonJS(SelectHolderMultiple_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_antd = require("antd");
37
+ var import_utils = require("@pisell/utils");
38
+ var import_SelectHolderModal = __toESM(require("../SelectHolderModal"));
39
+ var SelectHolderMultiple = ({
40
+ lists,
41
+ value,
42
+ onChange,
43
+ holderMode,
44
+ isShowAddHolderButton,
45
+ onAddHolder,
46
+ addHolderButtonText,
47
+ onClearHolder,
48
+ isErrorHolder,
49
+ allowClear = false,
50
+ holderMaxCount
51
+ }) => {
52
+ const [selectedValue, setSelectedValue] = (0, import_react.useState)();
53
+ const [open, setOpen] = (0, import_react.useState)(false);
54
+ const [selectedHolderModalVisible, setSelectedHolderModalVisible] = (0, import_react.useState)(false);
55
+ (0, import_react.useEffect)(() => {
56
+ setSelectedValue(value);
57
+ }, [value]);
58
+ const addItem = (e) => {
59
+ e.preventDefault();
60
+ e.stopPropagation();
61
+ onAddHolder();
62
+ setOpen(false);
63
+ };
64
+ const isError = (0, import_react.useMemo)(() => {
65
+ if (!isErrorHolder) {
66
+ return false;
67
+ }
68
+ if (!selectedValue) {
69
+ return true;
70
+ }
71
+ if ((0, import_utils.isArr)(selectedValue) && (selectedValue == null ? void 0 : selectedValue.length) !== holderMaxCount) {
72
+ return true;
73
+ }
74
+ return false;
75
+ }, [selectedValue, isErrorHolder]);
76
+ const handleChange = (val) => {
77
+ let item;
78
+ if ((0, import_utils.isArr)(val)) {
79
+ if (val.length > holderMaxCount) return;
80
+ item = lists.filter((d) => val.includes(d.id));
81
+ } else {
82
+ item = lists.find((d) => d.id === val);
83
+ }
84
+ setSelectedValue(val);
85
+ onChange(item);
86
+ };
87
+ const optionsMap = (0, import_react.useMemo)(() => {
88
+ return lists.reduce((acc, item) => {
89
+ acc[item.id] = item;
90
+ return acc;
91
+ }, {});
92
+ }, [lists]);
93
+ console.log(optionsMap, value, "optionsMap");
94
+ const handleClose = (item) => {
95
+ console.log("item", item, value);
96
+ handleChange(value.filter((d) => d !== item));
97
+ };
98
+ const renderHolder = () => {
99
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, value.map((item) => {
100
+ var _a;
101
+ return /* @__PURE__ */ import_react.default.createElement(
102
+ import_antd.Tag,
103
+ {
104
+ key: item,
105
+ closable: true,
106
+ onClose: () => handleClose(item),
107
+ className: "select-holder-multiple-tag"
108
+ },
109
+ (_a = optionsMap[item]) == null ? void 0 : _a.label
110
+ );
111
+ }), /* @__PURE__ */ import_react.default.createElement(
112
+ import_antd.Button,
113
+ {
114
+ onClick: handleEdit,
115
+ type: "text",
116
+ className: "select-holder-multiple-edit-button"
117
+ },
118
+ import_utils.locales.getText("pisell2.product.card.edit")
119
+ ));
120
+ };
121
+ const handleEdit = (e) => {
122
+ e.stopPropagation();
123
+ setSelectedHolderModalVisible(true);
124
+ };
125
+ return /* @__PURE__ */ import_react.default.createElement(
126
+ "div",
127
+ {
128
+ className: `pisell-lowcode-product-card-select-holder ${isError ? "pisell-lowcode-product-card-select-holder-error" : ""}`,
129
+ onClick: (e) => e.stopPropagation()
130
+ },
131
+ (value == null ? void 0 : value.length) ? /* @__PURE__ */ import_react.default.createElement("div", { className: "select-holder-multiple-wrap" }, renderHolder()) : /* @__PURE__ */ import_react.default.createElement(import_antd.Button, { type: "primary", block: true, onClick: handleEdit }, import_utils.locales.getText(
132
+ "pisell2.product.card.add.holder.placeholder.multiple"
133
+ )(holderMaxCount, addHolderButtonText)),
134
+ /* @__PURE__ */ import_react.default.createElement(
135
+ import_SelectHolderModal.default,
136
+ {
137
+ holderMaxCount,
138
+ addHolderButtonText,
139
+ lists,
140
+ value: selectedValue,
141
+ visible: selectedHolderModalVisible,
142
+ onClose: () => setSelectedHolderModalVisible(false),
143
+ onAdd: onAddHolder,
144
+ onConfirm: handleChange
145
+ }
146
+ ),
147
+ isError ? /* @__PURE__ */ import_react.default.createElement("div", { className: "select-holder-error" }, `${import_utils.locales.getText(
148
+ "pisell2.product.card.add.holder.modal.title.1"
149
+ )} `, /* @__PURE__ */ import_react.default.createElement("span", null, (value == null ? void 0 : value.length) || 0, "/", holderMaxCount), ` ${addHolderButtonText}`) : null
150
+ );
151
+ };
152
+ var SelectHolderMultiple_default = SelectHolderMultiple;
@@ -39,6 +39,7 @@ var import_Like = __toESM(require("./components/Like"));
39
39
  var import_SelectResource = __toESM(require("./components/SelectResource"));
40
40
  var import_SelectHolder = __toESM(require("./components/SelectHolder"));
41
41
  var import_index = require("./index.less");
42
+ var import_SelectHolderMultiple = __toESM(require("./components/SelectHolderMultiple"));
42
43
  var prefix = "pisell-lowcode-";
43
44
  var Time = ({
44
45
  item,
@@ -74,18 +75,22 @@ var Time = ({
74
75
  isErrorResource,
75
76
  resourceErrorText,
76
77
  isMultipleResource,
77
- isShowChangeHolder: itemIsShowChangeHolder = true
78
+ isShowChangeHolder: itemIsShowChangeHolder = true,
79
+ holderMode: itemHolderMode,
80
+ holderMaxCount
78
81
  } = item;
79
82
  const holderCom = (0, import_react.useMemo)(() => {
80
83
  if (!isShowHolder) return null;
81
84
  if (isShowChangeHolder && itemIsShowChangeHolder) {
85
+ const Cpt = (itemHolderMode || holderMode) === "multiple" ? import_SelectHolderMultiple.default : import_SelectHolder.default;
82
86
  return /* @__PURE__ */ import_react.default.createElement(
83
- import_SelectHolder.default,
87
+ Cpt,
84
88
  {
89
+ holderMaxCount,
85
90
  lists: holders,
86
91
  value: holder_id,
87
92
  onChange: changeHolder,
88
- holderMode,
93
+ holderMode: itemHolderMode || holderMode,
89
94
  isShowAddHolderButton,
90
95
  onAddHolder,
91
96
  addHolderButtonText,
@@ -109,7 +114,9 @@ var Time = ({
109
114
  isErrorHolder,
110
115
  addHolderButtonText,
111
116
  allowClearHolder,
112
- itemIsShowChangeHolder
117
+ itemIsShowChangeHolder,
118
+ itemHolderMode,
119
+ holderMaxCount
113
120
  ]);
114
121
  const likeCom = (0, import_react.useCallback)(
115
122
  (status, item2) => {
@@ -16,8 +16,14 @@ declare const _default: {
16
16
  'pisell2.product.card.view-less': string;
17
17
  'pisell2.product.card.add.holder.button.text': (val: string) => string;
18
18
  'pisell2.product.card.add.holder.placeholder': (val: string) => string;
19
+ 'pisell2.product.card.add.holder.placeholder.multiple': (num: number, val: string) => string;
20
+ 'pisell2.product.card.add.holder.modal.title.1': string;
19
21
  'pisell2.product.card.hour.minute': (hour: number, minute: number) => string;
20
22
  'pisell2.product.card.sales': string;
23
+ 'pisell2.product.card.add.holder.modal.cancel': string;
24
+ 'pisell2.product.card.add.holder.modal.clear': string;
25
+ 'pisell2.product.card.add.holder.modal.apply': string;
26
+ 'pisell2.product.card.add.holder.modal.add': string;
21
27
  };
22
28
  'zh-CN': {
23
29
  'pisell2.product.card.edit': string;
@@ -36,8 +42,14 @@ declare const _default: {
36
42
  'pisell2.product.card.view-less': string;
37
43
  'pisell2.product.card.add.holder.button.text': (val: string) => string;
38
44
  'pisell2.product.card.add.holder.placeholder': (val: string) => string;
45
+ 'pisell2.product.card.add.holder.placeholder.multiple': (num: number, val: string) => string;
46
+ 'pisell2.product.card.add.holder.modal.title.1': string;
39
47
  'pisell2.product.card.hour.minute': (hour: number, minute: number) => string;
40
48
  'pisell2.product.card.sales': string;
49
+ 'pisell2.product.card.add.holder.modal.cancel': string;
50
+ 'pisell2.product.card.add.holder.modal.clear': string;
51
+ 'pisell2.product.card.add.holder.modal.apply': string;
52
+ 'pisell2.product.card.add.holder.modal.add': string;
41
53
  };
42
54
  'zh-HK': {
43
55
  'pisell2.product.card.edit': string;
@@ -56,8 +68,14 @@ declare const _default: {
56
68
  'pisell2.product.card.view-less': string;
57
69
  'pisell2.product.card.add.holder.button.text': (val: string) => string;
58
70
  'pisell2.product.card.add.holder.placeholder': (val: string) => string;
71
+ 'pisell2.product.card.add.holder.placeholder.multiple': (num: number, val: string) => string;
72
+ 'pisell2.product.card.add.holder.modal.title.1': string;
59
73
  'pisell2.product.card.hour.minute': (hour: number, minute: number) => string;
60
74
  'pisell2.product.card.sales': string;
75
+ 'pisell2.product.card.add.holder.modal.cancel': string;
76
+ 'pisell2.product.card.add.holder.modal.clear': string;
77
+ 'pisell2.product.card.add.holder.modal.apply': string;
78
+ 'pisell2.product.card.add.holder.modal.add': string;
61
79
  };
62
80
  };
63
81
  export default _default;