@pisell/private-materials 3.0.99 → 3.0.100
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.js +18 -9
- package/build/lowcode/view.js +17 -8
- package/es/components/booking/components/customSelect/index.d.ts +3 -3
- package/es/components/booking/components/customSelect/index.js +37 -34
- package/es/components/booking/info/service/addService/index.js +11 -0
- package/es/components/booking/info/service/editService/index.js +2 -2
- package/lib/components/booking/components/customSelect/index.d.ts +3 -3
- package/lib/components/booking/components/customSelect/index.js +4 -1
- package/lib/components/booking/info/service/addService/index.js +8 -0
- package/lib/components/booking/info/service/editService/index.js +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './index.less';
|
|
3
3
|
interface CustomSelectProps {
|
|
4
4
|
options: any[];
|
|
5
5
|
onValueChange: (value: any[]) => void;
|
|
@@ -15,7 +15,7 @@ interface CustomSelectProps {
|
|
|
15
15
|
loading?: boolean;
|
|
16
16
|
previewItemClassName?: string;
|
|
17
17
|
optionClassName?: string;
|
|
18
|
-
mode?:
|
|
18
|
+
mode?: 'single' | 'multiple' | 'form';
|
|
19
19
|
filterItem?: (item: any, search: string) => boolean;
|
|
20
20
|
isPreview?: boolean;
|
|
21
21
|
name?: string;
|
|
@@ -13,17 +13,17 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
13
13
|
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; }
|
|
14
14
|
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
15
15
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
16
|
-
import React, { useEffect, useMemo, useState, useImperativeHandle, forwardRef, useRef } from
|
|
17
|
-
import PlusCircle from
|
|
18
|
-
import SearchLg from
|
|
19
|
-
import DotsVertical from
|
|
20
|
-
import { changeArray, getItemByArray } from
|
|
16
|
+
import React, { useEffect, useMemo, useState, useImperativeHandle, forwardRef, useRef } from 'react';
|
|
17
|
+
import PlusCircle from '@pisell/icon/es/PlusCircle';
|
|
18
|
+
import SearchLg from '@pisell/icon/es/SearchLg';
|
|
19
|
+
import DotsVertical from '@pisell/icon/es/DotsVertical';
|
|
20
|
+
import { changeArray, getItemByArray } from '@pisell/utils';
|
|
21
21
|
import Drawer from "../drawer";
|
|
22
22
|
import AddButton from "../addButton";
|
|
23
|
-
import classNames from
|
|
24
|
-
import { Input, List, Skeleton, Dropdown, Checkbox, Button } from
|
|
23
|
+
import classNames from 'classnames';
|
|
24
|
+
import { Input, List, Skeleton, Dropdown, Checkbox, Button } from 'antd';
|
|
25
25
|
import "./index.less";
|
|
26
|
-
import { locales } from
|
|
26
|
+
import { locales } from '@pisell/utils';
|
|
27
27
|
/**
|
|
28
28
|
* @title: 选择器
|
|
29
29
|
* @description:
|
|
@@ -39,11 +39,11 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
39
39
|
onValueChange = props.onValueChange,
|
|
40
40
|
value = props.value,
|
|
41
41
|
_props$rowKey = props.rowKey,
|
|
42
|
-
rowKey = _props$rowKey === void 0 ?
|
|
42
|
+
rowKey = _props$rowKey === void 0 ? 'id' : _props$rowKey,
|
|
43
43
|
addButtonProps = props.addButtonProps,
|
|
44
44
|
drawerProps = props.drawerProps,
|
|
45
45
|
_props$createItemText = props.createItemText,
|
|
46
|
-
createItemText = _props$createItemText === void 0 ?
|
|
46
|
+
createItemText = _props$createItemText === void 0 ? '' : _props$createItemText,
|
|
47
47
|
previewItemRender = props.previewItemRender,
|
|
48
48
|
previewItemTitleRender = props.previewItemTitleRender,
|
|
49
49
|
addButtonRender = props.addButtonRender,
|
|
@@ -52,11 +52,11 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
52
52
|
previewItemClassName = props.previewItemClassName,
|
|
53
53
|
optionClassName = props.optionClassName,
|
|
54
54
|
_props$mode = props.mode,
|
|
55
|
-
mode = _props$mode === void 0 ?
|
|
55
|
+
mode = _props$mode === void 0 ? 'single' : _props$mode,
|
|
56
56
|
_props$isPreview = props.isPreview,
|
|
57
57
|
isPreview = _props$isPreview === void 0 ? true : _props$isPreview,
|
|
58
58
|
_props$name = props.name,
|
|
59
|
-
name = _props$name === void 0 ?
|
|
59
|
+
name = _props$name === void 0 ? 'item' : _props$name,
|
|
60
60
|
handleCreateItem = props.handleCreateItem,
|
|
61
61
|
handleViewItem = props.handleViewItem,
|
|
62
62
|
_props$virtualListHei = props.virtualListHeight,
|
|
@@ -81,7 +81,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
81
81
|
_value = _useState2[0],
|
|
82
82
|
set_value = _useState2[1];
|
|
83
83
|
// 搜索值
|
|
84
|
-
var _useState3 = useState(
|
|
84
|
+
var _useState3 = useState(''),
|
|
85
85
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
86
86
|
search = _useState4[0],
|
|
87
87
|
setSearch = _useState4[1];
|
|
@@ -97,11 +97,14 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
97
97
|
setOpen(false);
|
|
98
98
|
}
|
|
99
99
|
}, [modalOpen]);
|
|
100
|
+
var strValue = useMemo(function () {
|
|
101
|
+
return JSON.stringify(value);
|
|
102
|
+
}, [value]);
|
|
100
103
|
|
|
101
104
|
// 当value 发生变化时, 将外部value 处理成内部value
|
|
102
105
|
useEffect(function () {
|
|
103
106
|
initValue();
|
|
104
|
-
}, [
|
|
107
|
+
}, [strValue]);
|
|
105
108
|
|
|
106
109
|
/**
|
|
107
110
|
* @title: 转换value到内部
|
|
@@ -133,7 +136,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
133
136
|
// 关闭
|
|
134
137
|
setOpen(false);
|
|
135
138
|
// 清空搜索
|
|
136
|
-
setSearch(
|
|
139
|
+
setSearch('');
|
|
137
140
|
// 如果直接关闭弹窗, 则将value恢复到上一次的数据
|
|
138
141
|
if (reset) {
|
|
139
142
|
initValue();
|
|
@@ -211,7 +214,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
211
214
|
var _val = changeArray(_value, item, rowKey);
|
|
212
215
|
|
|
213
216
|
// 单选则直接返回
|
|
214
|
-
if (mode ===
|
|
217
|
+
if (mode === 'single') {
|
|
215
218
|
handleApply([item]);
|
|
216
219
|
}
|
|
217
220
|
set_value(_val);
|
|
@@ -270,7 +273,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
270
273
|
if (filterItem) {
|
|
271
274
|
return filterItem(d, search);
|
|
272
275
|
}
|
|
273
|
-
return isIncludes(d.main_field ||
|
|
276
|
+
return isIncludes(d.main_field || '');
|
|
274
277
|
});
|
|
275
278
|
}
|
|
276
279
|
return _list;
|
|
@@ -332,19 +335,19 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
332
335
|
*/
|
|
333
336
|
var menuItems = useMemo(function () {
|
|
334
337
|
var list = [{
|
|
335
|
-
key:
|
|
336
|
-
label: "".concat(locales.getText(
|
|
338
|
+
key: 'view',
|
|
339
|
+
label: "".concat(locales.getText('pisell2.text.view'), " ").concat(name)
|
|
337
340
|
}, {
|
|
338
|
-
key:
|
|
339
|
-
label: "".concat(locales.getText(
|
|
341
|
+
key: 'change',
|
|
342
|
+
label: "".concat(locales.getText('pisell2.text.change'), " ").concat(name)
|
|
340
343
|
}, {
|
|
341
|
-
key:
|
|
342
|
-
label: "".concat(locales.getText(
|
|
344
|
+
key: 'remove',
|
|
345
|
+
label: "".concat(locales.getText('pisell2.text.remove'), " ").concat(name)
|
|
343
346
|
}];
|
|
344
347
|
// 禁止编辑时 只展示view
|
|
345
348
|
if (disabled) {
|
|
346
349
|
list = list.filter(function (d) {
|
|
347
|
-
return d.key ===
|
|
350
|
+
return d.key === 'view';
|
|
348
351
|
});
|
|
349
352
|
}
|
|
350
353
|
return list;
|
|
@@ -360,13 +363,13 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
360
363
|
*/
|
|
361
364
|
var isShowAddButton = useMemo(function () {
|
|
362
365
|
// (多选 || (单选 && 没有选择值)) && 没有禁止点击
|
|
363
|
-
return (mode ===
|
|
366
|
+
return (mode === 'multiple' || mode === 'single' && !isMore) && !disabled;
|
|
364
367
|
}, [mode, isMore, disabled]);
|
|
365
368
|
return /*#__PURE__*/React.createElement("div", null, isPreview ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
366
369
|
className: "pisell-lowcode__custom-select-cards"
|
|
367
370
|
}, _value.map(function (d, index) {
|
|
368
371
|
return /*#__PURE__*/React.createElement(React.Fragment, null, previewItemTitleRender === null || previewItemTitleRender === void 0 ? void 0 : previewItemTitleRender(d, index, _value), /*#__PURE__*/React.createElement("div", {
|
|
369
|
-
className: classNames(
|
|
372
|
+
className: classNames('pisell-lowcode__custom-select-card', previewItemClassName),
|
|
370
373
|
key: d[rowKey]
|
|
371
374
|
}, previewItemRender === null || previewItemRender === void 0 ? void 0 : previewItemRender(d), showDropDown && /*#__PURE__*/React.createElement("div", {
|
|
372
375
|
onClick: function onClick(e) {
|
|
@@ -415,7 +418,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
415
418
|
marginTop: 16,
|
|
416
419
|
height: 44
|
|
417
420
|
},
|
|
418
|
-
placeholder: locales.getText(
|
|
421
|
+
placeholder: locales.getText('pisell2.text.search'),
|
|
419
422
|
value: search,
|
|
420
423
|
allowClear: true,
|
|
421
424
|
onChange: function onChange(e) {
|
|
@@ -430,7 +433,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
430
433
|
handleCreateItem === null || handleCreateItem === void 0 ? void 0 : handleCreateItem();
|
|
431
434
|
},
|
|
432
435
|
style: {
|
|
433
|
-
padding: createItemText ? 16 :
|
|
436
|
+
padding: createItemText ? 16 : '16px 0 0 0'
|
|
434
437
|
}
|
|
435
438
|
}, createItemText && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PlusCircle, {
|
|
436
439
|
className: "pisell-lowcode__custom-select-create-icon"
|
|
@@ -438,16 +441,16 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
438
441
|
className: "pisell-lowcode__custom-select-create-txt"
|
|
439
442
|
}, createItemText))))
|
|
440
443
|
}, drawerProps, {
|
|
441
|
-
footer: mode ===
|
|
444
|
+
footer: mode === 'multiple' && /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
|
|
442
445
|
style: {
|
|
443
|
-
width:
|
|
446
|
+
width: '100%'
|
|
444
447
|
},
|
|
445
448
|
type: "primary",
|
|
446
449
|
size: "large",
|
|
447
450
|
onClick: function onClick() {
|
|
448
451
|
handleApply();
|
|
449
452
|
}
|
|
450
|
-
}, locales.getText(
|
|
453
|
+
}, locales.getText('pisell2.text.apply')))
|
|
451
454
|
}), /*#__PURE__*/React.createElement(List, {
|
|
452
455
|
itemLayout: "horizontal",
|
|
453
456
|
dataSource: renderList,
|
|
@@ -455,8 +458,8 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
455
458
|
loadMore: loadMore,
|
|
456
459
|
renderItem: function renderItem(item) {
|
|
457
460
|
return /*#__PURE__*/React.createElement(List.Item, {
|
|
458
|
-
className: classNames(
|
|
459
|
-
|
|
461
|
+
className: classNames('pisell-lowcode__custom-select-card-list-item', optionClassName, {
|
|
462
|
+
'pisell-lowcode__custom-select-card-list-item-active': getItemByArray(_value, item, rowKey)
|
|
460
463
|
}),
|
|
461
464
|
onClick: function onClick() {
|
|
462
465
|
handleSelectItem(item);
|
|
@@ -470,7 +473,7 @@ var CustomSelect = function CustomSelect(props, ref) {
|
|
|
470
473
|
paragraph: false
|
|
471
474
|
}) : /*#__PURE__*/React.createElement("div", {
|
|
472
475
|
className: "pisell-lowcode__custom-select-card-list-item-content"
|
|
473
|
-
}, mode ===
|
|
476
|
+
}, mode === 'multiple' && /*#__PURE__*/React.createElement(Checkbox, {
|
|
474
477
|
className: "custom-select-checkbox",
|
|
475
478
|
checked: getItemByArray(_value, item, rowKey)
|
|
476
479
|
}), optionRender(item)));
|
|
@@ -205,6 +205,7 @@ var Info = function Info() {
|
|
|
205
205
|
var handleSelectProduct = function handleSelectProduct(item, type) {
|
|
206
206
|
// 是否有单规格 组合规格 套餐, 如果没有不需要打开弹窗
|
|
207
207
|
var isEject = type === 'detail' || item.bundle_group_count > 0;
|
|
208
|
+
var lock = false;
|
|
208
209
|
state.action({
|
|
209
210
|
type: 'pisell1.handleOpenProductModal',
|
|
210
211
|
data: {
|
|
@@ -219,6 +220,16 @@ var Info = function Info() {
|
|
|
219
220
|
is_eject: isEject ? 1 : 0
|
|
220
221
|
},
|
|
221
222
|
callback: function callback(e) {
|
|
223
|
+
// 防止选择商品弹窗多次触发callback
|
|
224
|
+
if (lock) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
lock = true;
|
|
228
|
+
|
|
229
|
+
// 1秒后解除
|
|
230
|
+
setTimeout(function () {
|
|
231
|
+
lock = false;
|
|
232
|
+
}, 1000);
|
|
222
233
|
var cacheItem = _objectSpread(_objectSpread({}, item), {}, {
|
|
223
234
|
product_id: item.id,
|
|
224
235
|
_id: getUniqueId(),
|
|
@@ -342,10 +342,10 @@ var Info = function Info() {
|
|
|
342
342
|
}
|
|
343
343
|
submitLock = true;
|
|
344
344
|
|
|
345
|
-
//
|
|
345
|
+
// 1500毫秒后解除
|
|
346
346
|
setTimeout(function () {
|
|
347
347
|
submitLock = false;
|
|
348
|
-
},
|
|
348
|
+
}, 1500);
|
|
349
349
|
var _list = _toConsumableArray(state.service.value);
|
|
350
350
|
var _item = _objectSpread(_objectSpread({}, state.service.cacheItem), {}, {
|
|
351
351
|
autoClose: false,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './index.less';
|
|
3
3
|
interface CustomSelectProps {
|
|
4
4
|
options: any[];
|
|
5
5
|
onValueChange: (value: any[]) => void;
|
|
@@ -15,7 +15,7 @@ interface CustomSelectProps {
|
|
|
15
15
|
loading?: boolean;
|
|
16
16
|
previewItemClassName?: string;
|
|
17
17
|
optionClassName?: string;
|
|
18
|
-
mode?:
|
|
18
|
+
mode?: 'single' | 'multiple' | 'form';
|
|
19
19
|
filterItem?: (item: any, search: string) => boolean;
|
|
20
20
|
isPreview?: boolean;
|
|
21
21
|
name?: string;
|
|
@@ -86,9 +86,12 @@ var CustomSelect = (props, ref) => {
|
|
|
86
86
|
setOpen(false);
|
|
87
87
|
}
|
|
88
88
|
}, [modalOpen]);
|
|
89
|
+
const strValue = (0, import_react.useMemo)(() => {
|
|
90
|
+
return JSON.stringify(value);
|
|
91
|
+
}, [value]);
|
|
89
92
|
(0, import_react.useEffect)(() => {
|
|
90
93
|
initValue();
|
|
91
|
-
}, [
|
|
94
|
+
}, [strValue]);
|
|
92
95
|
const initValue = () => {
|
|
93
96
|
let _val = value;
|
|
94
97
|
if (!value) {
|
|
@@ -162,6 +162,7 @@ var Info = () => {
|
|
|
162
162
|
};
|
|
163
163
|
const handleSelectProduct = (item, type) => {
|
|
164
164
|
const isEject = type === "detail" || item.bundle_group_count > 0;
|
|
165
|
+
let lock = false;
|
|
165
166
|
state.action({
|
|
166
167
|
type: "pisell1.handleOpenProductModal",
|
|
167
168
|
data: {
|
|
@@ -177,6 +178,13 @@ var Info = () => {
|
|
|
177
178
|
},
|
|
178
179
|
callback: (e) => {
|
|
179
180
|
var _a2, _b2;
|
|
181
|
+
if (lock) {
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
lock = true;
|
|
185
|
+
setTimeout(() => {
|
|
186
|
+
lock = false;
|
|
187
|
+
}, 1e3);
|
|
180
188
|
let cacheItem = {
|
|
181
189
|
...item,
|
|
182
190
|
product_id: item.id,
|