@pisell/materials 6.12.55 → 6.12.56
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/meta.js +1 -1
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +32 -32
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +32 -32
- package/es/components/PisellCards/index.d.ts +0 -1
- package/es/components/PisellFields/index.d.ts +0 -1
- package/es/components/PisellLayouts/index.d.ts +0 -1
- package/es/components/PisellMetrics/index.d.ts +0 -1
- package/es/components/appVersionControl/types.d.ts +0 -1
- package/es/components/dataSourceComponents/dataSourceShow/dataSourceImage/index.d.ts +0 -1
- package/es/components/dataSourceComponents/dataSourceTable/type.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Checkbox/WithMode.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Radio/WithMode.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Select/index.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Tabs/index.d.ts +0 -1
- package/es/components/dataSourceComponents/fields/Translation/type.d.ts +0 -1
- package/es/components/dataSourceComponents/provider/dataSource/DataSourceContext.d.ts +0 -1
- package/es/components/drag-sort-tree/types.d.ts +0 -1
- package/es/components/filter/components/FilterButton/types.d.ts +0 -1
- package/es/components/input/index.d.ts +0 -1
- package/es/components/list/index.d.ts +0 -1
- package/es/components/pisell-config-provider/context.d.ts +0 -1
- package/es/components/pisellFloorMapLayout/components/FigmaTableCard.d.ts +0 -1
- package/es/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.d.ts +0 -1
- package/es/components/pisellFloorMapLayout/components/FloorMapImageElement.d.ts +0 -1
- package/es/components/pisellFloorMapLayout/components/FloorMapSelectionZoneElement.d.ts +0 -1
- package/es/components/pisellGridPro/ToolBar/type.d.ts +0 -1
- package/es/components/pisellInput/index.d.ts +0 -1
- package/es/components/pisellMenu/types.d.ts +0 -1
- package/es/components/pisellQuickFilter/type.d.ts +0 -1
- package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +0 -1
- package/es/components/pisellReservationSchedule/PisellReservationSchedule.d.ts +0 -1
- package/es/components/pisellReservationScheduleBand/PisellReservationScheduleBand.d.ts +0 -1
- package/es/components/pisellTimeNavigator/PisellTimeNavigator.d.ts +0 -1
- package/es/components/pisellWalletPassCard/index.d.ts +2 -0
- package/es/components/pisellWalletPassCard/index.js +2 -2
- package/es/components/productCard/cartSkuCard/components/AmountFooter/index.js +2 -1
- package/es/components/productCard/cartSkuCard/components/Note/index.less +6 -2
- package/es/components/productCard/cartSkuCard/components/basicInfo/index.js +5 -4
- package/es/components/productCard/cartSkuCard/components/packages/index.js +5 -3
- package/es/components/productCard/cartSkuCard/components/specs/index.js +5 -3
- package/es/components/productCard/components/Packages/components/options/index.js +3 -2
- package/es/components/productCard/lineItem/index.js +16 -9
- package/es/components/section-footers/index.d.ts +0 -1
- package/es/components/virtual-keyboard/Amount/types.d.ts +0 -1
- package/lib/components/PisellBasicGrid/PisellBasicGrid.d.ts +0 -1
- package/lib/components/PisellCards/components/GraphicTextCard/GraphicTextCard.d.ts +0 -1
- package/lib/components/PisellCards/components/PisellImageCard/PisellImageCard.d.ts +0 -1
- package/lib/components/PisellCards/components/TabCard/TabCard.d.ts +0 -1
- package/lib/components/PisellCards/components/TextCard/TextCard.d.ts +0 -1
- package/lib/components/PisellCards/index.d.ts +0 -1
- package/lib/components/PisellFields/index.d.ts +0 -1
- package/lib/components/PisellGroupView/PisellGroupView.d.ts +0 -1
- package/lib/components/PisellLayouts/index.d.ts +0 -1
- package/lib/components/PisellMetrics/index.d.ts +0 -1
- package/lib/components/appVersionControl/index.d.ts +0 -1
- package/lib/components/appVersionControl/types.d.ts +0 -1
- package/lib/components/auto-complete-number/index.d.ts +0 -1
- package/lib/components/badge/index.d.ts +0 -1
- package/lib/components/batch-editor/index.d.ts +0 -1
- package/lib/components/calendar/index.d.ts +0 -1
- package/lib/components/cardPro/index.d.ts +0 -1
- package/lib/components/checkbox/index.d.ts +0 -1
- package/lib/components/classicLayout/index.d.ts +0 -1
- package/lib/components/config-provider/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/dataSourceShow/dataSourceImage/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/dataSourceShow/dataSourceQRCode/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/dataSourceTable/type.d.ts +0 -1
- package/lib/components/dataSourceComponents/dataSourceWrapper/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Checkbox/WithMode.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Radio/WithMode.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Select/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Tabs/index.d.ts +0 -1
- package/lib/components/dataSourceComponents/fields/Translation/type.d.ts +0 -1
- package/lib/components/dataSourceComponents/provider/dataSource/DataSourceContext.d.ts +0 -1
- package/lib/components/date-picker/index.d.ts +0 -1
- package/lib/components/drag-sort-tree/index.d.ts +0 -1
- package/lib/components/drag-sort-tree/types.d.ts +0 -1
- package/lib/components/dropdown/index.d.ts +0 -1
- package/lib/components/filter/components/FilterButton/types.d.ts +0 -1
- package/lib/components/filter/index.d.ts +0 -1
- package/lib/components/input/index.d.ts +0 -1
- package/lib/components/list/index.d.ts +0 -1
- package/lib/components/lowCodePage/index.d.ts +0 -1
- package/lib/components/page/index.d.ts +0 -1
- package/lib/components/pisell-config-provider/context.d.ts +0 -1
- package/lib/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +0 -1
- package/lib/components/pisellAdjustPrice/index.d.ts +0 -1
- package/lib/components/pisellCard/index.d.ts +0 -1
- package/lib/components/pisellDatePicker/index.d.ts +0 -1
- package/lib/components/pisellFilter/index.d.ts +0 -1
- package/lib/components/pisellFloorMapLayout/components/FigmaTableCard.d.ts +0 -1
- package/lib/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.d.ts +0 -1
- package/lib/components/pisellFloorMapLayout/components/FloorMapImageElement.d.ts +0 -1
- package/lib/components/pisellFloorMapLayout/components/FloorMapSelectionZoneElement.d.ts +0 -1
- package/lib/components/pisellGridPro/GridView/index.d.ts +0 -1
- package/lib/components/pisellGridPro/ToolBar/type.d.ts +0 -1
- package/lib/components/pisellInput/components/BankCard/index.d.ts +0 -1
- package/lib/components/pisellInput/components/Copy/index.d.ts +0 -1
- package/lib/components/pisellInput/components/SecurityCode/index.d.ts +0 -1
- package/lib/components/pisellInput/index.d.ts +0 -1
- package/lib/components/pisellLoading/index.d.ts +0 -1
- package/lib/components/pisellMenu/types.d.ts +0 -1
- package/lib/components/pisellQuickFilter/type.d.ts +0 -1
- package/lib/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +0 -1
- package/lib/components/pisellReservationSchedule/PisellReservationSchedule.d.ts +0 -1
- package/lib/components/pisellReservationScheduleBand/PisellReservationScheduleBand.d.ts +0 -1
- package/lib/components/pisellSort/index.d.ts +0 -1
- package/lib/components/pisellTimeNavigator/PisellTimeNavigator.d.ts +0 -1
- package/lib/components/pisellTooltip/index.d.ts +0 -1
- package/lib/components/pisellUpload/index.d.ts +0 -1
- package/lib/components/pisellWalletPassCard/index.d.ts +2 -0
- package/lib/components/pisellWalletPassCard/index.js +2 -2
- package/lib/components/productCard/cartSkuCard/components/AmountFooter/index.js +2 -1
- package/lib/components/productCard/cartSkuCard/components/Note/index.less +6 -2
- package/lib/components/productCard/cartSkuCard/components/basicInfo/index.js +5 -4
- package/lib/components/productCard/cartSkuCard/components/packages/index.js +5 -3
- package/lib/components/productCard/cartSkuCard/components/specs/index.js +5 -3
- package/lib/components/productCard/components/Packages/components/options/index.js +3 -2
- package/lib/components/productCard/lineItem/index.js +16 -9
- package/lib/components/qrcode/index.d.ts +0 -1
- package/lib/components/radio/index.d.ts +0 -1
- package/lib/components/section-footers/index.d.ts +0 -1
- package/lib/components/segmented/index.d.ts +0 -1
- package/lib/components/select-time/index.d.ts +0 -1
- package/lib/components/skeleton/index.d.ts +0 -1
- package/lib/components/slider/index.d.ts +0 -1
- package/lib/components/time-picker/index.d.ts +0 -1
- package/lib/components/upload/index.d.ts +0 -1
- package/lib/components/versionSelect/index.d.ts +0 -1
- package/lib/components/virtual-keyboard/Amount/index.d.ts +0 -1
- package/lib/components/virtual-keyboard/Amount/types.d.ts +0 -1
- package/lib/components/virtual-keyboard/Number/index.d.ts +0 -1
- package/package.json +3 -3
|
@@ -43,7 +43,7 @@ const PisellWalletPassCard = (props) => {
|
|
|
43
43
|
if (pressTimer) clearTimeout(pressTimer);
|
|
44
44
|
};
|
|
45
45
|
}, [pressTimer]);
|
|
46
|
-
const { id, type, code, qrCode, balance, disabledReason, name, storeName, redeem, validDate, disabled, active = false, cover, balanceTitle, redeemTitle, showCover = true, showDetail = true, showBalance = true, showRedeem = true, showName = true, showCode = true, showStoreName = true, showValidDate = true, showQrCode = true, showBalanceSymbol = true, showDisabledReason = true, showDiscount = false, discount, showActions, actions, beforeEdit, onBeforeEditAmount, onConfirmEdit, onConfirmEditAmount, onDetail, useExternalDetail = false, originData, style = {}, mode = "multiple", showActiveIcon, enableEditAmount, showStatus, cardStatus, nameTitleStyle, formatBalance, formatBalanceTitle, formatRedeem, formatRedeemTitle, maxRedeem, showHolderName = true, holder, onSetHolder, validDateBySchedule, scheduleList } = props;
|
|
46
|
+
const { id, type, code, qrCode, balance, formattedBalance, disabledReason, name, storeName, redeem, validDate, disabled, active = false, cover, balanceTitle, redeemTitle, showCover = true, showDetail = true, showBalance = true, showRedeem = true, showName = true, showCode = true, showStoreName = true, showValidDate = true, showQrCode = true, showBalanceSymbol = true, showDisabledReason = true, showDiscount = false, discount, showActions, actions, beforeEdit, onBeforeEditAmount, onConfirmEdit, onConfirmEditAmount, onDetail, useExternalDetail = false, originData, style = {}, mode = "multiple", showActiveIcon, enableEditAmount, showStatus, cardStatus, nameTitleStyle, formatBalance, formatBalanceTitle, formatRedeem, formatRedeemTitle, maxRedeem, showHolderName = true, holder, onSetHolder, validDateBySchedule, scheduleList } = props;
|
|
47
47
|
(0, react.useEffect)(() => {
|
|
48
48
|
document.body.id = "body";
|
|
49
49
|
}, []);
|
|
@@ -271,7 +271,7 @@ const PisellWalletPassCard = (props) => {
|
|
|
271
271
|
active,
|
|
272
272
|
data: props
|
|
273
273
|
}) : balanceTitle || require_index.getText("pisell-wallet-pass-card-balance"), disabled || isMini ? ": " : "");
|
|
274
|
-
const createOriginalBalanceDom = () => /* @__PURE__ */ react.default.createElement(require_index$4.default, {
|
|
274
|
+
const createOriginalBalanceDom = () => formattedBalance !== void 0 ? /* @__PURE__ */ react.default.createElement("span", { className: "pisell-card-amount-item-value" }, formattedBalance) : /* @__PURE__ */ react.default.createElement(require_index$4.default, {
|
|
275
275
|
className: "pisell-card-amount-item-value",
|
|
276
276
|
useThousandsSeparator: true,
|
|
277
277
|
value: balance,
|
|
@@ -11,9 +11,10 @@ classnames = require_runtime.__toESM(classnames);
|
|
|
11
11
|
require("./index.less");
|
|
12
12
|
//#region src/components/productCard/cartSkuCard/components/AmountFooter/index.tsx
|
|
13
13
|
const Footer = ({ item, hideDivider, type, isOnlyTotal }) => {
|
|
14
|
-
const { total, origin_total, symbol, tip, num, discount_reason } = item;
|
|
14
|
+
const { total, origin_total, symbol, tip, num, discount_reason, amountFormatter } = item;
|
|
15
15
|
const weighingInfo = (0, _pisell_utils.resolveWeighingSnapshot)(item);
|
|
16
16
|
const formatFooterAmount = (amount, precision = 2) => {
|
|
17
|
+
if (amountFormatter) return amountFormatter(amount, precision);
|
|
17
18
|
if (!weighingInfo) return require_utils._formatAmount(amount, symbol, precision);
|
|
18
19
|
return (0, _pisell_utils.formatAmountWithOptions)(amount, symbol, {
|
|
19
20
|
precision,
|
|
@@ -10,15 +10,19 @@
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
&__note-text {
|
|
13
|
+
min-width: 0;
|
|
14
|
+
flex: 1;
|
|
15
|
+
overflow: hidden;
|
|
13
16
|
color: #101828;
|
|
14
17
|
font-size: 14px;
|
|
15
18
|
font-weight: 400;
|
|
16
19
|
line-height: 20px;
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
text-overflow: ellipsis;
|
|
21
|
+
white-space: nowrap;
|
|
19
22
|
}
|
|
20
23
|
|
|
21
24
|
&__note-btn {
|
|
25
|
+
flex-shrink: 0;
|
|
22
26
|
color: var(--Blue-600, #1570ef);
|
|
23
27
|
font-weight: 600;
|
|
24
28
|
cursor: pointer;
|
|
@@ -13,7 +13,8 @@ require("./index.less");
|
|
|
13
13
|
//#region src/components/productCard/cartSkuCard/components/basicInfo/index.tsx
|
|
14
14
|
const BasicInfo = (props) => {
|
|
15
15
|
const { isShowImage, isShowQuantityBadge = true, dataSource = {}, style, isMainProduct, type, maxSpecsCount = 1, isBundle, showFooter, isShowOriginalPrice = false, isShowEditProduct = false, onEditProduct, disabledEditClick = false } = props;
|
|
16
|
-
const { image, bundle, options, product_option_string, name, price, symbol, total = 0, origin_total = 0, num = 1, holder_id, isFormSubject, totalDifference = 0 } = dataSource;
|
|
16
|
+
const { image, bundle, options, product_option_string, name, price, symbol, total = 0, origin_total = 0, num = 1, holder_id, isFormSubject, totalDifference = 0, amountFormatter } = dataSource;
|
|
17
|
+
const formatProductAmount = (value, precision = 2) => amountFormatter ? amountFormatter(value, precision) : (0, _pisell_utils.formatAmount)(value, precision, symbol);
|
|
17
18
|
const renderNumTag = () => {
|
|
18
19
|
return /* @__PURE__ */ react.default.createElement("div", { className: (0, classnames.default)(`num-tag`, { "is-main": isMainProduct }) }, num < 100 ? num : "99+");
|
|
19
20
|
};
|
|
@@ -35,7 +36,7 @@ const BasicInfo = (props) => {
|
|
|
35
36
|
};
|
|
36
37
|
const renderProductPrice = () => {
|
|
37
38
|
if (hasWeighingInfo) return null;
|
|
38
|
-
return (0
|
|
39
|
+
return formatProductAmount(price !== null && price !== void 0 ? price : 0);
|
|
39
40
|
};
|
|
40
41
|
const renderImage = () => {
|
|
41
42
|
if (!isShowImage) return null;
|
|
@@ -81,12 +82,12 @@ const BasicInfo = (props) => {
|
|
|
81
82
|
return /* @__PURE__ */ react.default.createElement("div", {
|
|
82
83
|
className: basicInfoClassName,
|
|
83
84
|
style: style || {}
|
|
84
|
-
}, isShowQuantityBadge ? renderNumTag() : null, renderImage(), !isShowImage || !image && !name ? /* @__PURE__ */ react.default.createElement("div", { style: { width: 20 } }) : null, /* @__PURE__ */ react.default.createElement("div", { className: `product-info product-info-a9` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-basic-info-wrap` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-basic-info ${isBundle ? "row" : ""}` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-name ${renderEdit ? "product-name-edit" : ""}` }, name), /* @__PURE__ */ react.default.createElement("div", { className: `product-price` }, /* @__PURE__ */ react.default.createElement("span", null, renderProductPrice()), _isShowOriginalPrice ? /* @__PURE__ */ react.default.createElement("span", { className: `original-price` }, (
|
|
85
|
+
}, isShowQuantityBadge ? renderNumTag() : null, renderImage(), !isShowImage || !image && !name ? /* @__PURE__ */ react.default.createElement("div", { style: { width: 20 } }) : null, /* @__PURE__ */ react.default.createElement("div", { className: `product-info product-info-a9` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-basic-info-wrap` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-basic-info ${isBundle ? "row" : ""}` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-name ${renderEdit ? "product-name-edit" : ""}` }, name), /* @__PURE__ */ react.default.createElement("div", { className: `product-price` }, /* @__PURE__ */ react.default.createElement("span", null, renderProductPrice()), _isShowOriginalPrice ? /* @__PURE__ */ react.default.createElement("span", { className: `original-price` }, formatProductAmount(origin_total)) : null)), renderProductMeta()), renderEdit));
|
|
85
86
|
}
|
|
86
87
|
return /* @__PURE__ */ react.default.createElement("div", {
|
|
87
88
|
className: basicInfoClassName,
|
|
88
89
|
style: style || {}
|
|
89
|
-
}, isShowQuantityBadge ? renderNumTag() : null, renderImage(), !isShowImage || !image && !name ? /* @__PURE__ */ react.default.createElement("div", { style: { width: 20 } }) : null, /* @__PURE__ */ react.default.createElement("div", { className: `product-info` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-name` }, name), hasProductMeta ? renderProductMeta() : /* @__PURE__ */ react.default.createElement("div", { className: `product-price` }, renderProductPrice())), /* @__PURE__ */ react.default.createElement("div", { className: `product-amount` }, /* @__PURE__ */ react.default.createElement("div", { className: `total-amont` }, (
|
|
90
|
+
}, isShowQuantityBadge ? renderNumTag() : null, renderImage(), !isShowImage || !image && !name ? /* @__PURE__ */ react.default.createElement("div", { style: { width: 20 } }) : null, /* @__PURE__ */ react.default.createElement("div", { className: `product-info` }, /* @__PURE__ */ react.default.createElement("div", { className: `product-name` }, name), hasProductMeta ? renderProductMeta() : /* @__PURE__ */ react.default.createElement("div", { className: `product-price` }, renderProductPrice())), /* @__PURE__ */ react.default.createElement("div", { className: `product-amount` }, /* @__PURE__ */ react.default.createElement("div", { className: `total-amont` }, formatProductAmount(total * num - (totalDifference !== null && totalDifference !== void 0 ? totalDifference : 0))), origin_total && Number(total) !== Number(origin_total) ? /* @__PURE__ */ react.default.createElement("div", { className: `origin-amount` }, formatProductAmount(origin_total * num)) : null));
|
|
90
91
|
};
|
|
91
92
|
//#endregion
|
|
92
93
|
exports.default = BasicInfo;
|
|
@@ -11,7 +11,7 @@ let antd = require("antd");
|
|
|
11
11
|
require("./index.less");
|
|
12
12
|
//#region src/components/productCard/cartSkuCard/components/packages/index.tsx
|
|
13
13
|
const Packages = ({ isShowImage, isShowQuantityBadge, dataSource = {}, type }) => {
|
|
14
|
-
const { bundle = [], symbol = "$" } = dataSource;
|
|
14
|
+
const { bundle = [], symbol = "$", amountFormatter } = dataSource;
|
|
15
15
|
const showFooter = (0, react.useCallback)((_bundle) => {
|
|
16
16
|
const { options = [], bundle = [] } = _bundle;
|
|
17
17
|
const hasSpecs = (bundle === null || bundle === void 0 ? void 0 : bundle.length) || (options === null || options === void 0 ? void 0 : options.length);
|
|
@@ -31,7 +31,8 @@ const Packages = ({ isShowImage, isShowQuantityBadge, dataSource = {}, type }) =
|
|
|
31
31
|
dataSource: require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, item), {}, {
|
|
32
32
|
name: item.title,
|
|
33
33
|
image: item.cover,
|
|
34
|
-
symbol
|
|
34
|
+
symbol,
|
|
35
|
+
amountFormatter
|
|
35
36
|
}),
|
|
36
37
|
type,
|
|
37
38
|
isBundle: true,
|
|
@@ -39,7 +40,8 @@ const Packages = ({ isShowImage, isShowQuantityBadge, dataSource = {}, type }) =
|
|
|
39
40
|
}), showFooter(item) ? /* @__PURE__ */ react.default.createElement(require_index$1.default, {
|
|
40
41
|
item: require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, item), {}, {
|
|
41
42
|
total: item === null || item === void 0 ? void 0 : item.price,
|
|
42
|
-
symbol: dataSource === null || dataSource === void 0 ? void 0 : dataSource.symbol
|
|
43
|
+
symbol: dataSource === null || dataSource === void 0 ? void 0 : dataSource.symbol,
|
|
44
|
+
amountFormatter
|
|
43
45
|
}),
|
|
44
46
|
hideDivider: false,
|
|
45
47
|
type: "total"
|
|
@@ -8,7 +8,8 @@ require("./index.less");
|
|
|
8
8
|
//#region src/components/productCard/cartSkuCard/components/specs/index.tsx
|
|
9
9
|
const Specs = (props) => {
|
|
10
10
|
const { dataSource = {}, maxSpecsCount = 1, type } = props;
|
|
11
|
-
const { bundle, options, product_option_string, symbol } = dataSource;
|
|
11
|
+
const { bundle, options, product_option_string, symbol, amountFormatter } = dataSource;
|
|
12
|
+
const formatSpecAmount = (value) => amountFormatter ? amountFormatter(value, 2) : `${symbol || ""}${value}`;
|
|
12
13
|
const more = /* @__PURE__ */ react.default.createElement("div", { className: `${require_index$1.PREFIX}__specs-more` }, _pisell_utils.locales.getText("pisell2.cart.sku-card.more"));
|
|
13
14
|
/**
|
|
14
15
|
* @description: 渲染多规格字符串
|
|
@@ -19,7 +20,8 @@ const Specs = (props) => {
|
|
|
19
20
|
};
|
|
20
21
|
if (type === "a9") return /* @__PURE__ */ react.default.createElement("div", { className: `${require_index$1.PREFIX}__specs-a9-wrap` }, product_option_string ? /* @__PURE__ */ react.default.createElement("div", { className: "option-string-wrap" }, renderOptionString()) : null, options && (options === null || options === void 0 ? void 0 : options.length) > 0 ? /* @__PURE__ */ react.default.createElement(require_index.default, {
|
|
21
22
|
options,
|
|
22
|
-
amountSymbol: symbol
|
|
23
|
+
amountSymbol: symbol,
|
|
24
|
+
amountFormatter
|
|
23
25
|
}) : null);
|
|
24
26
|
if (Array.isArray(bundle) && (bundle === null || bundle === void 0 ? void 0 : bundle.length) > 0) {
|
|
25
27
|
const displayItems = bundle.slice(0, maxSpecsCount);
|
|
@@ -31,7 +33,7 @@ const Specs = (props) => {
|
|
|
31
33
|
return /* @__PURE__ */ react.default.createElement("div", { className: `${require_index$1.PREFIX}__specs` }, displayItems.map((item, index) => /* @__PURE__ */ react.default.createElement("div", {
|
|
32
34
|
className: "spec-item",
|
|
33
35
|
key: index
|
|
34
|
-
}, /* @__PURE__ */ react.default.createElement("span", { className: "spec-name" }, item.name), /* @__PURE__ */ react.default.createElement("span", { className: "spec-num" }, /* @__PURE__ */ react.default.createElement("span", null,
|
|
36
|
+
}, /* @__PURE__ */ react.default.createElement("span", { className: "spec-name" }, item.name), /* @__PURE__ */ react.default.createElement("span", { className: "spec-num" }, /* @__PURE__ */ react.default.createElement("span", null, formatSpecAmount(item.price)), /* @__PURE__ */ react.default.createElement("span", null), "x", /* @__PURE__ */ react.default.createElement("span", null, item.num)))), options.length > maxSpecsCount ? more : null);
|
|
35
37
|
}
|
|
36
38
|
return null;
|
|
37
39
|
};
|
|
@@ -5,12 +5,13 @@ react = require_runtime.__toESM(react);
|
|
|
5
5
|
require("./index.less");
|
|
6
6
|
//#region src/components/productCard/components/Packages/components/options/index.tsx
|
|
7
7
|
const prefix = "pisell-lowcode-";
|
|
8
|
-
const Options = ({ options, amountSymbol }) => {
|
|
8
|
+
const Options = ({ options, amountSymbol, amountFormatter }) => {
|
|
9
|
+
const formatOptionAmount = (value) => amountFormatter ? amountFormatter(value, 2) : require_utils._formatAmount(value, amountSymbol);
|
|
9
10
|
return (options === null || options === void 0 ? void 0 : options.length) > 0 ? /* @__PURE__ */ react.default.createElement("div", { className: `${prefix}packages-product-bundle-option` }, options.map((option, index) => {
|
|
10
11
|
return /* @__PURE__ */ react.default.createElement("div", {
|
|
11
12
|
key: option.id,
|
|
12
13
|
className: `${prefix}packages-product-bundle-option-item`
|
|
13
|
-
}, /* @__PURE__ */ react.default.createElement("div", { className: `${prefix}packages-product-bundle-option-item-left` }, /* @__PURE__ */ react.default.createElement("span", null, option === null || option === void 0 ? void 0 : option.name), /* @__PURE__ */ react.default.createElement("div", { className: `${prefix}packages-product-bundle-option-item-left-amount` }, /* @__PURE__ */ react.default.createElement("span", null,
|
|
14
|
+
}, /* @__PURE__ */ react.default.createElement("div", { className: `${prefix}packages-product-bundle-option-item-left` }, /* @__PURE__ */ react.default.createElement("span", null, option === null || option === void 0 ? void 0 : option.name), /* @__PURE__ */ react.default.createElement("div", { className: `${prefix}packages-product-bundle-option-item-left-amount` }, /* @__PURE__ */ react.default.createElement("span", null, formatOptionAmount(option === null || option === void 0 ? void 0 : option.price)), /* @__PURE__ */ react.default.createElement("span", null, "×"), /* @__PURE__ */ react.default.createElement("span", null, option === null || option === void 0 ? void 0 : option.num))), /* @__PURE__ */ react.default.createElement("span", { className: `${prefix}packages-product-bundle-option-item-amount` }, formatOptionAmount((option === null || option === void 0 ? void 0 : option.price) * (option === null || option === void 0 ? void 0 : option.num))));
|
|
14
15
|
})) : null;
|
|
15
16
|
};
|
|
16
17
|
//#endregion
|
|
@@ -42,7 +42,9 @@ const _excluded = [
|
|
|
42
42
|
"onNote",
|
|
43
43
|
"onCard",
|
|
44
44
|
"onPromotion",
|
|
45
|
-
"onGift"
|
|
45
|
+
"onGift",
|
|
46
|
+
"symbol",
|
|
47
|
+
"amountFormatter"
|
|
46
48
|
];
|
|
47
49
|
const isBookingItem = (dataSource) => {
|
|
48
50
|
var _dataSource$_extend;
|
|
@@ -80,7 +82,7 @@ const convertBundleOption = (option, translationOriginal) => {
|
|
|
80
82
|
num: (_ref = (_option$num = option.num) !== null && _option$num !== void 0 ? _option$num : option.quantity) !== null && _ref !== void 0 ? _ref : 1
|
|
81
83
|
});
|
|
82
84
|
};
|
|
83
|
-
const convertBundle = (bundle, translationOriginal) => {
|
|
85
|
+
const convertBundle = (bundle, translationOriginal, amountFormatter) => {
|
|
84
86
|
const options = (bundle.option || []).map((option) => convertBundleOption(option, translationOriginal));
|
|
85
87
|
const bundlePrice = bundle.price_type === "markdown" && Number.isFinite(Number(bundle.price)) ? -Math.abs(Number(bundle.price)) : bundle.price;
|
|
86
88
|
return require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, bundle), {}, {
|
|
@@ -97,6 +99,7 @@ const convertBundle = (bundle, translationOriginal) => {
|
|
|
97
99
|
custom_price_type_ext: bundle.price_type_ext,
|
|
98
100
|
options,
|
|
99
101
|
option: options,
|
|
102
|
+
amountFormatter,
|
|
100
103
|
_origin: bundle
|
|
101
104
|
});
|
|
102
105
|
};
|
|
@@ -148,10 +151,10 @@ const resolveA12Eyebrow = (product, translationOriginal) => {
|
|
|
148
151
|
(_categories$ = categories[0]) === null || _categories$ === void 0 ? void 0 : _categories$.name
|
|
149
152
|
], translationOriginal);
|
|
150
153
|
};
|
|
151
|
-
const convertProductToLineItemProduct = (product, translationOriginal, symbol) => {
|
|
154
|
+
const convertProductToLineItemProduct = (product, translationOriginal, symbol, amountFormatter) => {
|
|
152
155
|
var _product$metadata4, _ref3, _product$num, _ref4, _product$num2, _product$metadata5, _product$metadata6, _product$product_opti, _product$product_sku2, _product$discount_lis, _product$discount_lis2, _product$metadata7, _product$metadata8, _ref5, _product$num3;
|
|
153
156
|
const title = translateText(product.product_title || product.title, translationOriginal);
|
|
154
|
-
const bundle = (product.product_bundle || []).map((bundleItem) => convertBundle(bundleItem, translationOriginal));
|
|
157
|
+
const bundle = (product.product_bundle || []).map((bundleItem) => convertBundle(bundleItem, translationOriginal, amountFormatter));
|
|
155
158
|
const lineOriginTotal = resolveLineOriginTotal(product);
|
|
156
159
|
const lineOptions = mapLineItemOptions(resolveLineItemOptions(product), translationOriginal);
|
|
157
160
|
const a12Eyebrow = resolveA12Eyebrow(product, translationOriginal);
|
|
@@ -176,6 +179,7 @@ const convertProductToLineItemProduct = (product, translationOriginal, symbol) =
|
|
|
176
179
|
payment_price: product.payment_price,
|
|
177
180
|
tax_fee: product.tax_fee,
|
|
178
181
|
symbol,
|
|
182
|
+
amountFormatter,
|
|
179
183
|
note: product.note,
|
|
180
184
|
product_sku: product.product_sku,
|
|
181
185
|
product_bundle: bundle,
|
|
@@ -206,15 +210,16 @@ const convertProductToLineItemProduct = (product, translationOriginal, symbol) =
|
|
|
206
210
|
};
|
|
207
211
|
const LineItem = (props) => {
|
|
208
212
|
var _context$appHelper$ut, _context$appHelper$ut2, _context$appHelper$ut3, _context$appHelper$ut4, _dataSource$_extend2, _dataSource$_extend4;
|
|
209
|
-
const { dataSource = require_status.defaultValue.dataSource, itemType, type = "a9", isShowBookingHeader, rightActions = [], rightActionsDisplay = "swipe", escapeDom, isShowImage = require_status.defaultValue.isShowImage, isShowDelete = require_status.defaultValue.isShowDelete, isShowInlineDelete = isShowDelete, isShowNote = require_status.defaultValue.isShowNote, isShowAmountFooter = require_status.defaultValue.isShowAmountFooter, disabledClick = require_status.defaultValue.disabledClick, disabledEdit = require_status.defaultValue.disabledEdit, disabledNoteEdit = disabledEdit, statusOptions = [], statusLoading = false, statusDisabled = false, isShowRelatedProduct = true, holderOptions, onBookingStatusChange, onAddTimeProductCard, a12UnsupportedFallback = "a9", onAction, onDelete, onNote, onCard, onPromotion, onGift } = props, other = require_objectWithoutProperties._objectWithoutProperties(props, _excluded);
|
|
213
|
+
const { dataSource = require_status.defaultValue.dataSource, itemType, type = "a9", isShowBookingHeader, rightActions = [], rightActionsDisplay = "swipe", escapeDom, isShowImage = require_status.defaultValue.isShowImage, isShowDelete = require_status.defaultValue.isShowDelete, isShowInlineDelete = isShowDelete, isShowNote = require_status.defaultValue.isShowNote, isShowAmountFooter = require_status.defaultValue.isShowAmountFooter, disabledClick = require_status.defaultValue.disabledClick, disabledEdit = require_status.defaultValue.disabledEdit, disabledNoteEdit = disabledEdit, statusOptions = [], statusLoading = false, statusDisabled = false, isShowRelatedProduct = true, holderOptions, onBookingStatusChange, onAddTimeProductCard, a12UnsupportedFallback = "a9", onAction, onDelete, onNote, onCard, onPromotion, onGift, symbol: amountSymbol, amountFormatter } = props, other = require_objectWithoutProperties._objectWithoutProperties(props, _excluded);
|
|
210
214
|
const itemKind = itemType || (isBookingItem(dataSource) ? "booking" : "product");
|
|
211
215
|
const context = require_useEngineContext.default();
|
|
212
216
|
const translationOriginal = require_useTranslationOriginal.default();
|
|
213
|
-
const symbol = context.appHelper.utils.getSymbolic();
|
|
217
|
+
const symbol = amountSymbol || context.appHelper.utils.getSymbolic();
|
|
214
218
|
const locale = ((_context$appHelper$ut = context.appHelper.utils) === null || _context$appHelper$ut === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut.getApp) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut2.call(_context$appHelper$ut)) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut2.locales) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut3 = _context$appHelper$ut2.getLocale) === null || _context$appHelper$ut3 === void 0 ? void 0 : _context$appHelper$ut3.call(_context$appHelper$ut2)) || ((_context$appHelper$ut4 = context.appHelper.utils) === null || _context$appHelper$ut4 === void 0 || (_context$appHelper$ut4 = _context$appHelper$ut4.storage) === null || _context$appHelper$ut4 === void 0 ? void 0 : _context$appHelper$ut4.get("umi_locale")) || "en-US";
|
|
215
219
|
require_useInitLocalesOnce.default(require_locales$1.default, locale);
|
|
216
220
|
require_useInitLocalesOnce.default(require_locales.default, locale);
|
|
217
|
-
const productDataSource = (0, react.useMemo)(() => itemKind === "product" ? convertProductToLineItemProduct(dataSource, translationOriginal, symbol) : null, [
|
|
221
|
+
const productDataSource = (0, react.useMemo)(() => itemKind === "product" ? convertProductToLineItemProduct(dataSource, translationOriginal, symbol, amountFormatter) : null, [
|
|
222
|
+
amountFormatter,
|
|
218
223
|
dataSource,
|
|
219
224
|
itemKind,
|
|
220
225
|
symbol,
|
|
@@ -223,16 +228,18 @@ const LineItem = (props) => {
|
|
|
223
228
|
const relatedProduct = dataSource === null || dataSource === void 0 || (_dataSource$_extend2 = dataSource._extend) === null || _dataSource$_extend2 === void 0 ? void 0 : _dataSource$_extend2.product;
|
|
224
229
|
const relatedProductDataSource = (0, react.useMemo)(() => {
|
|
225
230
|
if (!relatedProduct) return null;
|
|
226
|
-
return convertProductToLineItemProduct(relatedProduct, translationOriginal, symbol);
|
|
231
|
+
return convertProductToLineItemProduct(relatedProduct, translationOriginal, symbol, amountFormatter);
|
|
227
232
|
}, [
|
|
233
|
+
amountFormatter,
|
|
228
234
|
relatedProduct,
|
|
229
235
|
symbol,
|
|
230
236
|
translationOriginal
|
|
231
237
|
]);
|
|
232
238
|
const addTimeProductDataSources = (0, react.useMemo)(() => {
|
|
233
239
|
var _dataSource$_extend3;
|
|
234
|
-
return (Array.isArray(dataSource === null || dataSource === void 0 || (_dataSource$_extend3 = dataSource._extend) === null || _dataSource$_extend3 === void 0 ? void 0 : _dataSource$_extend3.addTimeProduct) ? dataSource._extend.addTimeProduct : []).map((item) => convertProductToLineItemProduct(item, translationOriginal, symbol));
|
|
240
|
+
return (Array.isArray(dataSource === null || dataSource === void 0 || (_dataSource$_extend3 = dataSource._extend) === null || _dataSource$_extend3 === void 0 ? void 0 : _dataSource$_extend3.addTimeProduct) ? dataSource._extend.addTimeProduct : []).map((item) => convertProductToLineItemProduct(item, translationOriginal, symbol, amountFormatter));
|
|
235
241
|
}, [
|
|
242
|
+
amountFormatter,
|
|
236
243
|
dataSource === null || dataSource === void 0 || (_dataSource$_extend4 = dataSource._extend) === null || _dataSource$_extend4 === void 0 ? void 0 : _dataSource$_extend4.addTimeProduct,
|
|
237
244
|
symbol,
|
|
238
245
|
translationOriginal
|