@pisell/materials 6.12.53 → 6.12.55
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 +3 -3
- package/build/lowcode/preview.css +1 -1
- package/build/lowcode/preview.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/PisellBasicGrid/PisellBasicGrid.d.ts +1 -2
- package/es/components/PisellCards/components/GraphicTextCard/GraphicTextCard.d.ts +1 -2
- package/es/components/PisellCards/components/MultilevelCard/MultilevelCard.d.ts +1 -1
- package/es/components/PisellCards/components/PisellImageCard/PisellImageCard.d.ts +1 -2
- package/es/components/PisellCards/components/TabCard/TabCard.d.ts +1 -2
- package/es/components/PisellCards/components/TextCard/TextCard.d.ts +1 -2
- package/es/components/PisellCards/index.d.ts +5 -6
- package/es/components/PisellGroupView/PisellGroupView.d.ts +1 -2
- package/es/components/PisellLayouts/index.d.ts +2 -2
- package/es/components/PisellMetrics/index.d.ts +2 -2
- package/es/components/appVersionControl/index.d.ts +1 -2
- package/es/components/auto-complete-number/index.d.ts +1 -2
- package/es/components/badge/index.d.ts +1 -2
- package/es/components/batch-editor/index.d.ts +1 -2
- package/es/components/calendar/index.d.ts +1 -4
- package/es/components/cardMetricItem/index.d.ts +1 -1
- package/es/components/cardPro/index.d.ts +1 -2
- package/es/components/checkbox/index.d.ts +1 -4
- package/es/components/classicLayout/index.d.ts +1 -2
- package/es/components/config-provider/index.d.ts +1 -2
- package/es/components/customSelect/index.d.ts +1 -1
- package/es/components/dataSourceComponents/dataSourceForm/group/index.d.ts +1 -1
- package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.d.ts +1 -1
- package/es/components/dataSourceComponents/dataSourceMenu/index.d.ts +1 -1
- package/es/components/dataSourceComponents/dataSourceShow/dataSourceImage/index.d.ts +2 -2
- package/es/components/dataSourceComponents/dataSourceShow/dataSourceQRCode/index.d.ts +1 -4
- package/es/components/dataSourceComponents/dataSourceShow/dataSourceTypography/index.d.ts +2 -2
- package/es/components/dataSourceComponents/dataSourceWrapper/index.d.ts +1 -2
- package/es/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +2 -2
- package/es/components/dataSourceComponents/fields/Select/index.d.ts +2 -2
- package/es/components/dataSourceComponents/fields/Tabs/index.d.ts +1 -2
- package/es/components/date-picker/index.d.ts +1 -4
- package/es/components/drag-sort-tree/index.d.ts +1 -2
- package/es/components/dropdown/index.d.ts +1 -3
- package/es/components/filter/index.d.ts +1 -2
- package/es/components/keyboard/index.d.ts +1 -1
- package/es/components/list/index.d.ts +2 -2
- package/es/components/lowCodePage/index.d.ts +1 -3
- package/es/components/page/index.d.ts +1 -2
- package/es/components/page-header/index.d.ts +1 -1
- package/es/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -2
- package/es/components/pisellAdjustPrice/index.d.ts +1 -2
- package/es/components/pisellAlert/index.d.ts +1 -1
- package/es/components/pisellCard/index.d.ts +1 -2
- package/es/components/pisellCheckboxGroup/index.d.ts +1 -1
- package/es/components/pisellCountdown/index.d.ts +1 -1
- package/es/components/pisellDatePicker/index.d.ts +1 -4
- package/es/components/pisellDraggable/index.d.ts +1 -1
- package/es/components/pisellEmpty/index.d.ts +1 -1
- package/es/components/pisellFilter/index.d.ts +1 -2
- package/es/components/pisellFloatingPanel/index.d.ts +1 -1
- package/es/components/pisellFloorMapLayout/components/FigmaTableCard.d.ts +5 -5
- package/es/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.d.ts +2 -2
- package/es/components/pisellFloorMapLayout/components/FloorMapImageElement.d.ts +2 -3
- package/es/components/pisellFloorMapLayout/components/FloorMapSelectionZoneElement.d.ts +2 -2
- package/es/components/pisellFloorMapLayout/context/FloorMapLayoutContext.d.ts +1 -1
- package/es/components/pisellGoodPassCard/index.d.ts +1 -1
- package/es/components/pisellGridPro/GridView/index.d.ts +1 -2
- package/es/components/pisellInformationEntry/index.d.ts +1 -1
- package/es/components/pisellInput/components/BankCard/index.d.ts +0 -1
- package/es/components/pisellInput/components/Copy/index.d.ts +0 -1
- package/es/components/pisellInput/components/SecurityCode/index.d.ts +0 -1
- package/es/components/pisellInput/index.d.ts +5 -5
- package/es/components/pisellLoading/index.d.ts +1 -2
- package/es/components/pisellModal/index.d.ts +2 -2
- package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +2 -2
- package/es/components/pisellReservationSchedule/PisellReservationSchedule.d.ts +2 -2
- package/es/components/pisellReservationScheduleBand/PisellReservationScheduleBand.d.ts +2 -2
- package/es/components/pisellRow/index.d.ts +1 -1
- package/es/components/pisellSort/index.d.ts +1 -2
- package/es/components/pisellStatisticList/index.d.ts +1 -1
- package/es/components/pisellTags/index.d.ts +1 -1
- package/es/components/pisellText/index.d.ts +2 -2
- package/es/components/pisellTimeNavigator/PisellTimeNavigator.d.ts +2 -2
- package/es/components/pisellTooltip/index.d.ts +1 -2
- package/es/components/pisellUpload/index.d.ts +1 -2
- package/es/components/pisellWalletPassCard/index.d.ts +1 -1
- package/es/components/productCard/cartSkuCard/index.js +33 -3
- package/es/components/productCard/cartSkuCard/index.less +18 -0
- package/es/components/productCard/cartSkuCard/types.d.ts +56 -0
- package/es/components/productCard/cartSkuCard/variants/A12/index.js +126 -0
- package/es/components/productCard/cartSkuCard/variants/A12/index.less +279 -0
- package/es/components/productCard/lineItem/index.js +42 -11
- package/es/components/productCard/types.d.ts +4 -1
- package/es/components/qrcode/index.d.ts +1 -3
- package/es/components/radio/index.d.ts +1 -4
- package/es/components/section-footers/index.d.ts +1 -3
- package/es/components/segmented/index.d.ts +1 -2
- package/es/components/select-time/index.d.ts +1 -2
- package/es/components/skeleton/index.d.ts +1 -4
- package/es/components/slider/index.d.ts +1 -3
- package/es/components/tabs/index.d.ts +2 -2
- package/es/components/time-picker/index.d.ts +1 -4
- package/es/components/upload/index.d.ts +1 -4
- package/es/components/versionSelect/index.d.ts +0 -1
- package/es/components/virtual-keyboard/Amount/index.d.ts +1 -2
- package/es/components/virtual-keyboard/Number/index.d.ts +1 -2
- package/es/components/virtual-keyboard/Time/index.d.ts +1 -1
- package/es/components/virtual-keyboard/index.d.ts +1 -1
- package/es/index.d.ts +2 -1
- package/lib/components/PisellBasicGrid/PisellBasicGrid.d.ts +2 -2
- package/lib/components/PisellCards/components/GraphicTextCard/GraphicTextCard.d.ts +2 -2
- package/lib/components/PisellCards/components/MultilevelCard/MultilevelCard.d.ts +1 -1
- package/lib/components/PisellCards/components/PisellImageCard/PisellImageCard.d.ts +2 -2
- package/lib/components/PisellCards/components/TabCard/TabCard.d.ts +2 -2
- package/lib/components/PisellCards/components/TextCard/TextCard.d.ts +2 -2
- package/lib/components/PisellCards/index.d.ts +5 -6
- package/lib/components/PisellGroupView/PisellGroupView.d.ts +2 -2
- package/lib/components/PisellLayouts/index.d.ts +2 -2
- package/lib/components/PisellMetrics/index.d.ts +2 -2
- package/lib/components/appVersionControl/index.d.ts +2 -2
- package/lib/components/auto-complete-number/index.d.ts +2 -2
- package/lib/components/badge/index.d.ts +2 -2
- package/lib/components/batch-editor/index.d.ts +2 -2
- package/lib/components/calendar/index.d.ts +1 -3
- package/lib/components/cardMetricItem/index.d.ts +1 -1
- package/lib/components/cardPro/index.d.ts +2 -2
- package/lib/components/checkbox/index.d.ts +1 -3
- package/lib/components/classicLayout/index.d.ts +2 -2
- package/lib/components/config-provider/index.d.ts +2 -2
- package/lib/components/customSelect/index.d.ts +1 -1
- package/lib/components/dataSourceComponents/dataSourceForm/group/index.d.ts +1 -1
- package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.d.ts +1 -1
- package/lib/components/dataSourceComponents/dataSourceMenu/index.d.ts +1 -1
- package/lib/components/dataSourceComponents/dataSourceShow/dataSourceImage/index.d.ts +2 -2
- package/lib/components/dataSourceComponents/dataSourceShow/dataSourceQRCode/index.d.ts +1 -3
- package/lib/components/dataSourceComponents/dataSourceShow/dataSourceTypography/index.d.ts +2 -2
- package/lib/components/dataSourceComponents/dataSourceWrapper/index.d.ts +2 -2
- package/lib/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +2 -2
- package/lib/components/dataSourceComponents/fields/Select/index.d.ts +2 -2
- package/lib/components/dataSourceComponents/fields/Tabs/index.d.ts +1 -2
- package/lib/components/date-picker/index.d.ts +1 -3
- package/lib/components/drag-sort-tree/index.d.ts +2 -2
- package/lib/components/dropdown/index.d.ts +2 -3
- package/lib/components/filter/index.d.ts +2 -2
- package/lib/components/keyboard/index.d.ts +1 -1
- package/lib/components/list/index.d.ts +2 -2
- package/lib/components/lowCodePage/index.d.ts +2 -3
- package/lib/components/page/index.d.ts +2 -2
- package/lib/components/page-header/index.d.ts +1 -1
- package/lib/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +2 -2
- package/lib/components/pisellAdjustPrice/index.d.ts +2 -2
- package/lib/components/pisellAlert/index.d.ts +1 -1
- package/lib/components/pisellCard/index.d.ts +2 -2
- package/lib/components/pisellCheckboxGroup/index.d.ts +1 -1
- package/lib/components/pisellCountdown/index.d.ts +1 -1
- package/lib/components/pisellDatePicker/index.d.ts +1 -3
- package/lib/components/pisellDraggable/index.d.ts +1 -1
- package/lib/components/pisellEmpty/index.d.ts +1 -1
- package/lib/components/pisellFilter/index.d.ts +2 -2
- package/lib/components/pisellFloatingPanel/index.d.ts +1 -1
- package/lib/components/pisellFloorMapLayout/components/FigmaTableCard.d.ts +5 -5
- package/lib/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.d.ts +2 -2
- package/lib/components/pisellFloorMapLayout/components/FloorMapImageElement.d.ts +2 -3
- package/lib/components/pisellFloorMapLayout/components/FloorMapSelectionZoneElement.d.ts +2 -2
- package/lib/components/pisellFloorMapLayout/context/FloorMapLayoutContext.d.ts +1 -1
- package/lib/components/pisellGoodPassCard/index.d.ts +1 -1
- package/lib/components/pisellGridPro/GridView/index.d.ts +2 -2
- package/lib/components/pisellInformationEntry/index.d.ts +1 -1
- package/lib/components/pisellInput/components/BankCard/index.d.ts +1 -1
- package/lib/components/pisellInput/components/Copy/index.d.ts +1 -1
- package/lib/components/pisellInput/components/SecurityCode/index.d.ts +1 -1
- package/lib/components/pisellInput/index.d.ts +5 -5
- package/lib/components/pisellLoading/index.d.ts +2 -2
- package/lib/components/pisellModal/index.d.ts +2 -2
- package/lib/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +2 -2
- package/lib/components/pisellReservationSchedule/PisellReservationSchedule.d.ts +2 -2
- package/lib/components/pisellReservationScheduleBand/PisellReservationScheduleBand.d.ts +2 -2
- package/lib/components/pisellRow/index.d.ts +1 -1
- package/lib/components/pisellSort/index.d.ts +2 -2
- package/lib/components/pisellStatisticList/index.d.ts +1 -1
- package/lib/components/pisellTags/index.d.ts +1 -1
- package/lib/components/pisellText/index.d.ts +2 -2
- package/lib/components/pisellTimeNavigator/PisellTimeNavigator.d.ts +2 -2
- package/lib/components/pisellTooltip/index.d.ts +2 -2
- package/lib/components/pisellUpload/index.d.ts +2 -2
- package/lib/components/pisellWalletPassCard/index.d.ts +1 -1
- package/lib/components/productCard/cartSkuCard/index.js +33 -3
- package/lib/components/productCard/cartSkuCard/index.less +18 -0
- package/lib/components/productCard/cartSkuCard/types.d.ts +56 -0
- package/lib/components/productCard/cartSkuCard/variants/A12/index.js +129 -0
- package/lib/components/productCard/cartSkuCard/variants/A12/index.less +279 -0
- package/lib/components/productCard/lineItem/index.js +42 -11
- package/lib/components/productCard/types.d.ts +4 -1
- package/lib/components/qrcode/index.d.ts +2 -3
- package/lib/components/radio/index.d.ts +1 -3
- package/lib/components/section-footers/index.d.ts +1 -3
- package/lib/components/segmented/index.d.ts +2 -2
- package/lib/components/select-time/index.d.ts +2 -2
- package/lib/components/skeleton/index.d.ts +1 -3
- package/lib/components/slider/index.d.ts +2 -3
- package/lib/components/tabs/index.d.ts +2 -2
- package/lib/components/time-picker/index.d.ts +1 -3
- package/lib/components/upload/index.d.ts +1 -3
- package/lib/components/versionSelect/index.d.ts +1 -1
- package/lib/components/virtual-keyboard/Amount/index.d.ts +2 -2
- package/lib/components/virtual-keyboard/Number/index.d.ts +2 -2
- package/lib/components/virtual-keyboard/Time/index.d.ts +1 -1
- package/lib/components/virtual-keyboard/index.d.ts +1 -1
- package/lib/index.d.ts +2 -1
- package/package.json +3 -3
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
3
2
|
//#region src/components/pisellFloorMapLayout/components/FloorMapImageElement.d.ts
|
|
4
3
|
interface FloorMapImageElementProps {
|
|
5
4
|
imageUrl?: string;
|
|
6
5
|
name?: string;
|
|
7
6
|
}
|
|
8
|
-
declare function FloorMapImageElement(props: FloorMapImageElementProps):
|
|
7
|
+
declare function FloorMapImageElement(props: FloorMapImageElementProps): JSX.Element;
|
|
9
8
|
//#endregion
|
|
10
9
|
export { FloorMapImageElement };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
//#region src/components/pisellFloorMapLayout/components/FloorMapSelectionZoneElement.d.ts
|
|
3
3
|
interface FloorMapSelectionZoneElementProps {
|
|
4
4
|
/** 选区名称;为空时展示「未命名选区」占位 */
|
|
5
5
|
name?: string;
|
|
6
6
|
}
|
|
7
|
-
declare function FloorMapSelectionZoneElement(props: FloorMapSelectionZoneElementProps):
|
|
7
|
+
declare function FloorMapSelectionZoneElement(props: FloorMapSelectionZoneElementProps): JSX.Element;
|
|
8
8
|
//#endregion
|
|
9
9
|
export { FloorMapSelectionZoneElement };
|
|
@@ -15,6 +15,6 @@ interface FloorMapLayoutProviderProps {
|
|
|
15
15
|
declare function FloorMapLayoutProvider({
|
|
16
16
|
value,
|
|
17
17
|
children
|
|
18
|
-
}: FloorMapLayoutProviderProps):
|
|
18
|
+
}: FloorMapLayoutProviderProps): JSX.Element;
|
|
19
19
|
//#endregion
|
|
20
20
|
export { EMPTY_FLOOR_MAP_LAYOUT_CONTEXT, FloorMapLayoutProvider, FloorMapLayoutProviderProps, useFloorMapLayoutContext };
|
|
@@ -46,6 +46,6 @@ interface PisellGoodPassCardProps {
|
|
|
46
46
|
mixedSort?: (val: Discount[]) => Discount[];
|
|
47
47
|
isInModal: boolean;
|
|
48
48
|
}
|
|
49
|
-
declare const index: (props: PisellGoodPassCardProps) =>
|
|
49
|
+
declare const index: (props: PisellGoodPassCardProps) => JSX.Element;
|
|
50
50
|
//#endregion
|
|
51
51
|
export { index };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { GridViewProps } from "./type.js";
|
|
2
|
-
import React from "react";
|
|
3
2
|
//#region src/components/pisellGridPro/GridView/index.d.ts
|
|
4
|
-
declare const GridView: (props: GridViewProps) =>
|
|
3
|
+
declare const GridView: (props: GridViewProps) => JSX.Element;
|
|
5
4
|
//#endregion
|
|
6
5
|
export { GridView };
|
|
@@ -29,6 +29,6 @@ interface PisellInformationEntryProps extends Omit<React.HTMLAttributes<HTMLDivE
|
|
|
29
29
|
/** 录入类型切换时候触发的 */
|
|
30
30
|
onChangeType?: (val: null | EntryModeType['type']) => void;
|
|
31
31
|
}
|
|
32
|
-
declare const PisellInformationEntry: (props: PisellInformationEntryProps) =>
|
|
32
|
+
declare const PisellInformationEntry: (props: PisellInformationEntryProps) => JSX.Element;
|
|
33
33
|
//#endregion
|
|
34
34
|
export { PisellInformationEntry };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { PisellContextType } from "../../../pisell-config-provider/context.js";
|
|
2
|
-
import React from "react";
|
|
3
2
|
import { InputProps } from "antd";
|
|
4
3
|
//#region src/components/pisellInput/components/SecurityCode/index.d.ts
|
|
5
4
|
interface SecurityCodeProps extends Omit<InputProps, 'onChange'> {
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { PisellContextType } from "../pisell-config-provider/context.js";
|
|
2
3
|
import { BankCardProps } from "./components/BankCard/index.js";
|
|
3
4
|
import { SecurityCodeProps } from "./components/SecurityCode/index.js";
|
|
4
5
|
import { CopyProps } from "./components/Copy/index.js";
|
|
5
|
-
import React from "react";
|
|
6
6
|
import { InputProps } from "antd";
|
|
7
7
|
|
|
8
8
|
//#region src/components/pisellInput/index.d.ts
|
|
9
9
|
declare const PisellInput: {
|
|
10
10
|
(props: InputProps & {
|
|
11
11
|
/** 平台 */platform?: PisellContextType['platform'];
|
|
12
|
-
}):
|
|
13
|
-
BankCard: (props: BankCardProps) =>
|
|
14
|
-
SecurityCode: (props: SecurityCodeProps) =>
|
|
15
|
-
Copy: (props: CopyProps) =>
|
|
12
|
+
}): JSX.Element;
|
|
13
|
+
BankCard: (props: BankCardProps) => JSX.Element;
|
|
14
|
+
SecurityCode: (props: SecurityCodeProps) => JSX.Element;
|
|
15
|
+
Copy: (props: CopyProps) => JSX.Element;
|
|
16
16
|
};
|
|
17
17
|
//#endregion
|
|
18
18
|
export { PisellInput };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import { SpinProps } from "antd";
|
|
3
2
|
//#region src/components/pisellLoading/index.d.ts
|
|
4
3
|
type MaskType = {
|
|
@@ -16,6 +15,6 @@ interface PisellLoadingProps extends SpinProps {
|
|
|
16
15
|
/** 延迟显示加载效果的时间(防止闪烁) */
|
|
17
16
|
delay?: number;
|
|
18
17
|
}
|
|
19
|
-
declare const PisellLoading: (props: PisellLoadingProps) =>
|
|
18
|
+
declare const PisellLoading: (props: PisellLoadingProps) => JSX.Element;
|
|
20
19
|
//#endregion
|
|
21
20
|
export { PisellLoading };
|
|
@@ -40,7 +40,7 @@ interface PisellModalProps extends ModalProps {
|
|
|
40
40
|
maskProps?: React.HTMLAttributes<HTMLDivElement>;
|
|
41
41
|
}
|
|
42
42
|
declare const PisellModal: {
|
|
43
|
-
(props: PisellModalProps):
|
|
43
|
+
(props: PisellModalProps): JSX.Element;
|
|
44
44
|
confirm: (props: PisellModalFuncProps) => {
|
|
45
45
|
destroy: () => void;
|
|
46
46
|
update: (configUpdate: _$antd.ModalFuncProps | ((prevConfig: _$antd.ModalFuncProps) => _$antd.ModalFuncProps)) => void;
|
|
@@ -62,7 +62,7 @@ declare const PisellModal: {
|
|
|
62
62
|
destroy: () => void;
|
|
63
63
|
update: (configUpdate: _$antd.ModalFuncProps | ((prevConfig: _$antd.ModalFuncProps) => _$antd.ModalFuncProps)) => void;
|
|
64
64
|
};
|
|
65
|
-
Information: (props: InformationProps) =>
|
|
65
|
+
Information: (props: InformationProps) => JSX.Element;
|
|
66
66
|
};
|
|
67
67
|
//#endregion
|
|
68
68
|
export { PisellModal, PisellModalProps };
|
package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { RecordBoardCalendarProps } from "../../types.js";
|
|
2
|
-
import React from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts
|
|
5
5
|
type PisellRecordBoardCalendarViewProps = RecordBoardCalendarProps;
|
|
@@ -10,6 +10,6 @@ type PisellRecordBoardCalendarViewProps = RecordBoardCalendarProps;
|
|
|
10
10
|
* 只做「占位与裁剪高度」;本组件根节点负责在同一 flex 列里向下传递 **min-height:0**,避免 `BookingCalendar`
|
|
11
11
|
* 撑破壳层(一层即可,历史上曾双包一层重复 flex+overflow)。
|
|
12
12
|
*/
|
|
13
|
-
declare function PisellRecordBoardCalendarView(props: PisellRecordBoardCalendarViewProps):
|
|
13
|
+
declare function PisellRecordBoardCalendarView(props: PisellRecordBoardCalendarViewProps): JSX.Element;
|
|
14
14
|
//#endregion
|
|
15
15
|
export { PisellRecordBoardCalendarView, PisellRecordBoardCalendarViewProps };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { PisellReservationScheduleProps } from "./types.js";
|
|
2
|
-
import React from "react";
|
|
3
3
|
//#region src/components/pisellReservationSchedule/PisellReservationSchedule.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* 营业日导航条:上一日、中间日期文案、下一日(深色条样式,适配预约顶栏)
|
|
6
6
|
*/
|
|
7
|
-
declare function PisellReservationSchedule(props: PisellReservationScheduleProps):
|
|
7
|
+
declare function PisellReservationSchedule(props: PisellReservationScheduleProps): JSX.Element;
|
|
8
8
|
declare namespace PisellReservationSchedule {
|
|
9
9
|
var displayName: string;
|
|
10
10
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { PisellReservationScheduleBandProps } from "./types.js";
|
|
2
|
-
import React from "react";
|
|
3
3
|
//#region src/components/pisellReservationScheduleBand/PisellReservationScheduleBand.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* 预约顶栏组合:营业日切换 + 锚定到选中日的时间导航轴
|
|
6
6
|
*/
|
|
7
|
-
declare function PisellReservationScheduleBand(props: PisellReservationScheduleBandProps):
|
|
7
|
+
declare function PisellReservationScheduleBand(props: PisellReservationScheduleBandProps): JSX.Element;
|
|
8
8
|
declare namespace PisellReservationScheduleBand {
|
|
9
9
|
var displayName: string;
|
|
10
10
|
}
|
|
@@ -18,6 +18,6 @@ interface PisellRowProps extends React.DetailedHTMLProps<React.HTMLAttributes<HT
|
|
|
18
18
|
* @Author: zhiwei.Wang
|
|
19
19
|
* @Date: 2024-08-16 10:38
|
|
20
20
|
*/
|
|
21
|
-
declare const PisellRow: (props: PisellRowProps) =>
|
|
21
|
+
declare const PisellRow: (props: PisellRowProps) => JSX.Element;
|
|
22
22
|
//#endregion
|
|
23
23
|
export { PisellRow, PisellRowProps };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { PisellSortProps } from "./type.js";
|
|
2
|
-
import React from "react";
|
|
3
2
|
|
|
4
3
|
//#region src/components/pisellSort/index.d.ts
|
|
5
|
-
declare const PisellSort: (props: PisellSortProps) =>
|
|
4
|
+
declare const PisellSort: (props: PisellSortProps) => JSX.Element;
|
|
6
5
|
//#endregion
|
|
7
6
|
export { PisellSort };
|
|
@@ -18,6 +18,6 @@ interface PisellStatisticListProps extends React.HTMLAttributes<HTMLDivElement>
|
|
|
18
18
|
}[];
|
|
19
19
|
}[];
|
|
20
20
|
}
|
|
21
|
-
declare const PisellStatisticList: (props: PisellStatisticListProps) =>
|
|
21
|
+
declare const PisellStatisticList: (props: PisellStatisticListProps) => JSX.Element;
|
|
22
22
|
//#endregion
|
|
23
23
|
export { PisellStatisticList, PisellStatisticListProps };
|
|
@@ -9,6 +9,6 @@ interface PisellTagsProps extends React.DetailedHTMLProps<React.HTMLAttributes<H
|
|
|
9
9
|
icon?: React.ReactNode;
|
|
10
10
|
color?: PisellTagsColor;
|
|
11
11
|
}
|
|
12
|
-
declare const PisellTags: (props: PisellTagsProps) =>
|
|
12
|
+
declare const PisellTags: (props: PisellTagsProps) => JSX.Element;
|
|
13
13
|
//#endregion
|
|
14
14
|
export { PisellTags, PisellTagsProps };
|
|
@@ -5,8 +5,8 @@ import React from "react";
|
|
|
5
5
|
//#region src/components/pisellText/index.d.ts
|
|
6
6
|
interface PisellTextProps extends React.HTMLAttributes<HTMLSpanElement> {}
|
|
7
7
|
declare const PisellText: {
|
|
8
|
-
(props: PisellTextProps):
|
|
9
|
-
Amount: (props: AmountProps) =>
|
|
8
|
+
(props: PisellTextProps): JSX.Element;
|
|
9
|
+
Amount: (props: AmountProps) => JSX.Element;
|
|
10
10
|
Editable: React.FC<EditableProps>;
|
|
11
11
|
};
|
|
12
12
|
//#endregion
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { PisellTimeNavigatorProps } from "./types.js";
|
|
2
|
-
import React from "react";
|
|
3
3
|
//#region src/components/pisellTimeNavigator/PisellTimeNavigator.d.ts
|
|
4
4
|
/**
|
|
5
5
|
* PisellTimeNavigator:可拖动的时间导航轴,时间范围内浏览、选择、控制
|
|
6
6
|
*/
|
|
7
|
-
declare function PisellTimeNavigator(props: PisellTimeNavigatorProps):
|
|
7
|
+
declare function PisellTimeNavigator(props: PisellTimeNavigatorProps): JSX.Element;
|
|
8
8
|
declare namespace PisellTimeNavigator {
|
|
9
9
|
var displayName: string;
|
|
10
10
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { PisellContextType } from "../pisell-config-provider/context.js";
|
|
2
|
-
import React from "react";
|
|
3
2
|
import { TooltipPropsWithTitle } from "antd/es/tooltip";
|
|
4
3
|
|
|
5
4
|
//#region src/components/pisellTooltip/index.d.ts
|
|
@@ -7,6 +6,6 @@ interface PisellTooltipProps extends TooltipPropsWithTitle {
|
|
|
7
6
|
/** 平台 */
|
|
8
7
|
platform?: PisellContextType['platform'];
|
|
9
8
|
}
|
|
10
|
-
declare const PisellTooltip: (props: PisellTooltipProps) =>
|
|
9
|
+
declare const PisellTooltip: (props: PisellTooltipProps) => JSX.Element;
|
|
11
10
|
//#endregion
|
|
12
11
|
export { PisellTooltip };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import { UploadProps } from "antd";
|
|
3
2
|
//#region src/components/pisellUpload/index.d.ts
|
|
4
3
|
interface PisellUploadProps extends UploadProps {
|
|
@@ -7,6 +6,6 @@ interface PisellUploadProps extends UploadProps {
|
|
|
7
6
|
text2?: string;
|
|
8
7
|
uploadType?: 'button' | 'drop' | 'custom';
|
|
9
8
|
}
|
|
10
|
-
declare const PisellUpload: (props: PisellUploadProps) =>
|
|
9
|
+
declare const PisellUpload: (props: PisellUploadProps) => JSX.Element;
|
|
11
10
|
//#endregion
|
|
12
11
|
export { PisellUpload };
|
|
@@ -139,6 +139,6 @@ interface PisellWalletPassCardProps {
|
|
|
139
139
|
onSetHolder?: (currentValue?: any) => void;
|
|
140
140
|
[key: string]: any;
|
|
141
141
|
}
|
|
142
|
-
declare const PisellWalletPassCard: (props: PisellWalletPassCardProps) =>
|
|
142
|
+
declare const PisellWalletPassCard: (props: PisellWalletPassCardProps) => JSX.Element;
|
|
143
143
|
//#endregion
|
|
144
144
|
export { FormatOption, PisellWalletPassCard, PisellWalletPassCardProps };
|
|
@@ -19,6 +19,7 @@ import Promotion from "./components/Promotion/index.js";
|
|
|
19
19
|
import Gift from "./components/Gift/index.js";
|
|
20
20
|
import BookingItem from "./components/BookingItem/index.js";
|
|
21
21
|
import InlineActions from "./components/inlineActions/index.js";
|
|
22
|
+
import A12 from "./variants/A12/index.js";
|
|
22
23
|
import React, { useMemo, useRef } from "react";
|
|
23
24
|
import { locales } from "@pisell/utils";
|
|
24
25
|
import classNames from "classnames";
|
|
@@ -56,12 +57,14 @@ const _excluded = [
|
|
|
56
57
|
"rightActionsDisplay",
|
|
57
58
|
"escapeDom",
|
|
58
59
|
"maxSpecsCount",
|
|
59
|
-
"isShowRelatedProduct"
|
|
60
|
+
"isShowRelatedProduct",
|
|
61
|
+
"a12Slots",
|
|
62
|
+
"a12Presentation"
|
|
60
63
|
];
|
|
61
64
|
const PREFIX = "pisell-cart-sku-card";
|
|
62
65
|
const CartSkuCard = (props) => {
|
|
63
66
|
var _context$appHelper$ut;
|
|
64
|
-
const { dataSource = defaultValue.dataSource, isShowImage = defaultValue.isShowImage, isShowQuantityBadge = true, isShowOriginalPrice = defaultValue.isShowOriginalPrice, isShowHolder = defaultValue.isShowHolder, isShowNote = defaultValue.isShowNote, isShowDelete = defaultValue.isShowDelete, isShowInlineDelete = isShowDelete, isShowAmountFooter = defaultValue.isShowAmountFooter, isShowPackageNote = defaultValue.isShowPackageNote, isShowEditProduct = defaultValue.isShowEditProduct, disabledClick = defaultValue.disabledClick, disabledEditClick = defaultValue.disabledEditClick, disabledNoteEdit, externalNoteEditor = false, onEditProduct, onAction, onDelete, onNote, onLike, onCard, onChangeResource, onPromotion, onGift, onChangeHolder, itemType = "product", type, rightActions = [], rightActionsDisplay = "swipe", escapeDom, maxSpecsCount = 1, isShowRelatedProduct = true } = props, other = _objectWithoutProperties(props, _excluded);
|
|
67
|
+
const { dataSource = defaultValue.dataSource, isShowImage = defaultValue.isShowImage, isShowQuantityBadge = true, isShowOriginalPrice = defaultValue.isShowOriginalPrice, isShowHolder = defaultValue.isShowHolder, isShowNote = defaultValue.isShowNote, isShowDelete = defaultValue.isShowDelete, isShowInlineDelete = isShowDelete, isShowAmountFooter = defaultValue.isShowAmountFooter, isShowPackageNote = defaultValue.isShowPackageNote, isShowEditProduct = defaultValue.isShowEditProduct, disabledClick = defaultValue.disabledClick, disabledEditClick = defaultValue.disabledEditClick, disabledNoteEdit, externalNoteEditor = false, onEditProduct, onAction, onDelete, onNote, onLike, onCard, onChangeResource, onPromotion, onGift, onChangeHolder, itemType = "product", type, rightActions = [], rightActionsDisplay = "swipe", escapeDom, maxSpecsCount = 1, isShowRelatedProduct = true, a12Slots, a12Presentation } = props, other = _objectWithoutProperties(props, _excluded);
|
|
65
68
|
const useOpenNoteRef = useRef();
|
|
66
69
|
const context = useEngineContext();
|
|
67
70
|
locales.init(locales_default, ((_context$appHelper$ut = context.appHelper.utils) === null || _context$appHelper$ut === void 0 || (_context$appHelper$ut = _context$appHelper$ut.storage) === null || _context$appHelper$ut === void 0 ? void 0 : _context$appHelper$ut.get("umi_locale")) || "en");
|
|
@@ -219,13 +222,37 @@ const CartSkuCard = (props) => {
|
|
|
219
222
|
openNote: openNoteEditor
|
|
220
223
|
})) : null);
|
|
221
224
|
};
|
|
225
|
+
const renderA12 = () => {
|
|
226
|
+
var _a12Slots$contentFoot;
|
|
227
|
+
const note = isShowNote ? /* @__PURE__ */ React.createElement(Note, _objectSpread2(_objectSpread2({}, other), {}, {
|
|
228
|
+
item: dataSource,
|
|
229
|
+
disabledEdit: disabledNoteEdit !== null && disabledNoteEdit !== void 0 ? disabledNoteEdit : other.disabledEdit,
|
|
230
|
+
openNote: openNoteEditor
|
|
231
|
+
})) : null;
|
|
232
|
+
const slots = note ? _objectSpread2(_objectSpread2({}, a12Slots), {}, { contentFooter: (_a12Slots$contentFoot = a12Slots === null || a12Slots === void 0 ? void 0 : a12Slots.contentFooter) !== null && _a12Slots$contentFoot !== void 0 ? _a12Slots$contentFoot : (() => note) }) : a12Slots;
|
|
233
|
+
return /* @__PURE__ */ React.createElement(A12, {
|
|
234
|
+
dataSource,
|
|
235
|
+
isShowImage,
|
|
236
|
+
isShowDelete,
|
|
237
|
+
isShowOriginalPrice,
|
|
238
|
+
isShowEditProduct,
|
|
239
|
+
disabled: Boolean(disabledClick),
|
|
240
|
+
disabledEditClick,
|
|
241
|
+
slots,
|
|
242
|
+
presentation: a12Presentation,
|
|
243
|
+
onDelete,
|
|
244
|
+
onEditProduct
|
|
245
|
+
});
|
|
246
|
+
};
|
|
222
247
|
const renderContent = () => {
|
|
248
|
+
if (type === "a12") return renderA12();
|
|
223
249
|
if (type === "a9") return renderA9();
|
|
224
250
|
if (type === "a5") return renderA5();
|
|
225
251
|
return renderA2();
|
|
226
252
|
};
|
|
227
253
|
if (dataSource === null || dataSource === void 0 ? void 0 : dataSource.isGift) return null;
|
|
228
254
|
const content = renderContent();
|
|
255
|
+
const useIntegratedWrapper = type === "a12" || rightActionsDisplay === "inline";
|
|
229
256
|
const cardContent = /* @__PURE__ */ React.createElement("div", {
|
|
230
257
|
className: classNames(PREFIX, `${PREFIX}--${type}`),
|
|
231
258
|
onClick: (e) => {
|
|
@@ -239,7 +266,10 @@ const CartSkuCard = (props) => {
|
|
|
239
266
|
isShowRelatedProduct,
|
|
240
267
|
isShowDelete
|
|
241
268
|
}, content) : content);
|
|
242
|
-
return /* @__PURE__ */ React.createElement("div", { className: classNames(`${PREFIX}-wrapper-container`, {
|
|
269
|
+
return /* @__PURE__ */ React.createElement("div", { className: classNames(`${PREFIX}-wrapper-container`, {
|
|
270
|
+
[`${PREFIX}-wrapper-container--inline`]: useIntegratedWrapper,
|
|
271
|
+
[`${PREFIX}-wrapper-container--a12`]: type === "a12"
|
|
272
|
+
}) }, useIntegratedWrapper ? /* @__PURE__ */ React.createElement("div", { className: classNames(`${PREFIX}-wrapper`, `${PREFIX}-wrapper--inline`, type === "a12" && `pisell-cart-sku-card-wrapper--a12`) }, cardContent) : /* @__PURE__ */ React.createElement(SwipeAction, {
|
|
243
273
|
closeOnAction: false,
|
|
244
274
|
className: classNames(`${PREFIX}-wrapper`),
|
|
245
275
|
rightActions: _rightActions,
|
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
width: 100%;
|
|
4
4
|
min-width: 0;
|
|
5
5
|
}
|
|
6
|
+
|
|
7
|
+
&--a12 {
|
|
8
|
+
container-type: inline-size;
|
|
9
|
+
}
|
|
6
10
|
}
|
|
7
11
|
|
|
8
12
|
.pisell-cart-sku-card-wrapper {
|
|
@@ -15,6 +19,14 @@
|
|
|
15
19
|
width: 100%;
|
|
16
20
|
overflow: hidden;
|
|
17
21
|
}
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
&--a12 {
|
|
25
|
+
border: 0;
|
|
26
|
+
border-radius: 18px;
|
|
27
|
+
background: transparent;
|
|
28
|
+
overflow: visible;
|
|
29
|
+
}
|
|
18
30
|
}
|
|
19
31
|
|
|
20
32
|
.pisell-cart-sku-card__main-row {
|
|
@@ -51,6 +63,12 @@
|
|
|
51
63
|
cursor: pointer;
|
|
52
64
|
}
|
|
53
65
|
|
|
66
|
+
&--a12 {
|
|
67
|
+
display: block;
|
|
68
|
+
padding: 0;
|
|
69
|
+
gap: 0;
|
|
70
|
+
}
|
|
71
|
+
|
|
54
72
|
&__delete-btn {
|
|
55
73
|
cursor: pointer;
|
|
56
74
|
position: absolute;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { CSSProperties, ReactNode } from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/components/productCard/cartSkuCard/types.d.ts
|
|
4
|
+
type CartSkuCardVariant = 'a2' | 'a5' | 'a9' | 'a12';
|
|
5
|
+
interface CartSkuCardA12Display {
|
|
6
|
+
eyebrow?: ReactNode;
|
|
7
|
+
quantityText?: ReactNode;
|
|
8
|
+
}
|
|
9
|
+
interface CartSkuCardSlotContext {
|
|
10
|
+
item: any;
|
|
11
|
+
disabled: boolean;
|
|
12
|
+
}
|
|
13
|
+
interface CartSkuCardA12Slots {
|
|
14
|
+
contentFooter?: (context: CartSkuCardSlotContext) => ReactNode;
|
|
15
|
+
quantityControl?: (context: CartSkuCardSlotContext) => ReactNode;
|
|
16
|
+
actionRail?: (context: CartSkuCardSlotContext & {
|
|
17
|
+
defaultPrice: ReactNode;
|
|
18
|
+
defaultEdit: ReactNode;
|
|
19
|
+
defaultQuantityControl: ReactNode;
|
|
20
|
+
}) => ReactNode;
|
|
21
|
+
specifications?: (context: CartSkuCardSlotContext & {
|
|
22
|
+
defaultSpecifications: ReactNode;
|
|
23
|
+
}) => ReactNode;
|
|
24
|
+
}
|
|
25
|
+
interface CartSkuCardA12Tokens {
|
|
26
|
+
background: string;
|
|
27
|
+
borderColor: string;
|
|
28
|
+
borderRadius: string;
|
|
29
|
+
minHeight: string;
|
|
30
|
+
mediaWidth: string;
|
|
31
|
+
actionRailWidth: string;
|
|
32
|
+
contentPadding: string;
|
|
33
|
+
actionRailPadding: string;
|
|
34
|
+
accentColor: string;
|
|
35
|
+
titleColor: string;
|
|
36
|
+
titleFontSize: string;
|
|
37
|
+
titleFontWeight: number;
|
|
38
|
+
priceColor: string;
|
|
39
|
+
priceFontSize: string;
|
|
40
|
+
optionBackground: string;
|
|
41
|
+
optionLabelColor: string;
|
|
42
|
+
optionValueColor: string;
|
|
43
|
+
optionGap: string;
|
|
44
|
+
shadow: string;
|
|
45
|
+
}
|
|
46
|
+
interface CartSkuCardA12Presentation {
|
|
47
|
+
density?: 'compact' | 'comfortable';
|
|
48
|
+
optionColumns?: 1 | 2 | 3;
|
|
49
|
+
mediaFit?: 'cover' | 'contain';
|
|
50
|
+
contentAlign?: 'start' | 'center';
|
|
51
|
+
className?: string;
|
|
52
|
+
style?: CSSProperties;
|
|
53
|
+
tokens?: Partial<CartSkuCardA12Tokens>;
|
|
54
|
+
}
|
|
55
|
+
//#endregion
|
|
56
|
+
export { CartSkuCardA12Display, CartSkuCardA12Presentation, CartSkuCardA12Slots, CartSkuCardVariant };
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { _objectSpread2 } from "../../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectSpread2.js";
|
|
2
|
+
import IconFont from "../../../../iconfont/index.js";
|
|
3
|
+
import Weighing from "../../components/weighing/index.js";
|
|
4
|
+
import { PREFIX } from "../../index.js";
|
|
5
|
+
import React, { useMemo } from "react";
|
|
6
|
+
import { formatAmount, image, locales, resolveWeighingSnapshot } from "@pisell/utils";
|
|
7
|
+
import classNames from "classnames";
|
|
8
|
+
import "./index.less";
|
|
9
|
+
//#region src/components/productCard/cartSkuCard/variants/A12/index.tsx
|
|
10
|
+
const TOKEN_VARIABLES = {
|
|
11
|
+
background: "--pc-a12-bg",
|
|
12
|
+
borderColor: "--pc-a12-border-color",
|
|
13
|
+
borderRadius: "--pc-a12-radius",
|
|
14
|
+
minHeight: "--pc-a12-min-height",
|
|
15
|
+
mediaWidth: "--pc-a12-media-width",
|
|
16
|
+
actionRailWidth: "--pc-a12-rail-width",
|
|
17
|
+
contentPadding: "--pc-a12-content-padding",
|
|
18
|
+
actionRailPadding: "--pc-a12-rail-padding",
|
|
19
|
+
accentColor: "--pc-a12-accent",
|
|
20
|
+
titleColor: "--pc-a12-title-color",
|
|
21
|
+
titleFontSize: "--pc-a12-title-size",
|
|
22
|
+
titleFontWeight: "--pc-a12-title-weight",
|
|
23
|
+
priceColor: "--pc-a12-price-color",
|
|
24
|
+
priceFontSize: "--pc-a12-price-size",
|
|
25
|
+
optionBackground: "--pc-a12-option-bg",
|
|
26
|
+
optionLabelColor: "--pc-a12-option-label-color",
|
|
27
|
+
optionValueColor: "--pc-a12-option-value-color",
|
|
28
|
+
optionGap: "--pc-a12-option-gap",
|
|
29
|
+
shadow: "--pc-a12-shadow"
|
|
30
|
+
};
|
|
31
|
+
/** 复用其它变体使用的 options,只在展示阶段合并同组已选项。 */
|
|
32
|
+
function resolveSpecifications(dataSource) {
|
|
33
|
+
if (!Array.isArray(dataSource === null || dataSource === void 0 ? void 0 : dataSource.options)) return [];
|
|
34
|
+
const groups = /* @__PURE__ */ new Map();
|
|
35
|
+
dataSource.options.forEach((option, index) => {
|
|
36
|
+
var _ref, _option$name, _ref2, _option$quantity, _ref3, _ref4, _option$option_group_, _ref5, _ref6, _ref7, _option$option_group_2;
|
|
37
|
+
const name = (_ref = (_option$name = option === null || option === void 0 ? void 0 : option.name) !== null && _option$name !== void 0 ? _option$name : option === null || option === void 0 ? void 0 : option.title) !== null && _ref !== void 0 ? _ref : option === null || option === void 0 ? void 0 : option.variant_item_name;
|
|
38
|
+
if (name === void 0 || name === null || name === "") return;
|
|
39
|
+
const quantity = Math.max(1, Number((_ref2 = (_option$quantity = option.quantity) !== null && _option$quantity !== void 0 ? _option$quantity : option.num) !== null && _ref2 !== void 0 ? _ref2 : 1));
|
|
40
|
+
const value = quantity > 1 ? `${String(name)} × ${quantity}` : name;
|
|
41
|
+
const groupKey = String((_ref3 = (_ref4 = (_option$option_group_ = option.option_group_id) !== null && _option$option_group_ !== void 0 ? _option$option_group_ : option.group_id) !== null && _ref4 !== void 0 ? _ref4 : option.variant_group_id) !== null && _ref3 !== void 0 ? _ref3 : `option-${index}`);
|
|
42
|
+
const label = (_ref5 = (_ref6 = (_ref7 = (_option$option_group_2 = option.option_group_name) !== null && _option$option_group_2 !== void 0 ? _option$option_group_2 : option.group_name) !== null && _ref7 !== void 0 ? _ref7 : option.option_group_title) !== null && _ref6 !== void 0 ? _ref6 : option.group_title) !== null && _ref5 !== void 0 ? _ref5 : option.variant_group_name;
|
|
43
|
+
const current = groups.get(groupKey);
|
|
44
|
+
if (current) {
|
|
45
|
+
current.values.push(value);
|
|
46
|
+
if (!current.label && label) current.label = label;
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
groups.set(groupKey, _objectSpread2(_objectSpread2({ key: groupKey }, label ? { label } : {}), {}, { values: [value] }));
|
|
50
|
+
});
|
|
51
|
+
return Array.from(groups.values()).map((group) => ({
|
|
52
|
+
key: group.key,
|
|
53
|
+
label: group.label,
|
|
54
|
+
value: group.values.map(String).join(", ")
|
|
55
|
+
}));
|
|
56
|
+
}
|
|
57
|
+
function getPresentationStyle(presentation) {
|
|
58
|
+
const style = _objectSpread2({}, (presentation === null || presentation === void 0 ? void 0 : presentation.style) || {});
|
|
59
|
+
Object.entries((presentation === null || presentation === void 0 ? void 0 : presentation.tokens) || {}).forEach(([key, value]) => {
|
|
60
|
+
if (value !== void 0) style[TOKEN_VARIABLES[key]] = value;
|
|
61
|
+
});
|
|
62
|
+
style["--pc-a12-option-columns"] = (presentation === null || presentation === void 0 ? void 0 : presentation.optionColumns) || 2;
|
|
63
|
+
return style;
|
|
64
|
+
}
|
|
65
|
+
const A12 = ({ dataSource, isShowImage = true, isShowDelete = false, isShowOriginalPrice = false, isShowEditProduct = false, disabled = false, disabledEditClick = false, slots, presentation, onDelete, onEditProduct }) => {
|
|
66
|
+
var _ref8, _dataSource$num, _dataSource$total, _dataSource$origin_to, _slots$contentFooter;
|
|
67
|
+
const display = (dataSource === null || dataSource === void 0 ? void 0 : dataSource.a12) || {};
|
|
68
|
+
const specificationsData = useMemo(() => resolveSpecifications(dataSource), [dataSource]);
|
|
69
|
+
const weighingInfo = useMemo(() => resolveWeighingSnapshot(dataSource), [dataSource]);
|
|
70
|
+
const quantity = Number((_ref8 = (_dataSource$num = dataSource === null || dataSource === void 0 ? void 0 : dataSource.num) !== null && _dataSource$num !== void 0 ? _dataSource$num : dataSource === null || dataSource === void 0 ? void 0 : dataSource.quantity) !== null && _ref8 !== void 0 ? _ref8 : 1) || 1;
|
|
71
|
+
const lineTotal = Number((_dataSource$total = dataSource === null || dataSource === void 0 ? void 0 : dataSource.total) !== null && _dataSource$total !== void 0 ? _dataSource$total : 0) * quantity - Number((dataSource === null || dataSource === void 0 ? void 0 : dataSource.totalDifference) || 0);
|
|
72
|
+
const originalTotal = Number((_dataSource$origin_to = dataSource === null || dataSource === void 0 ? void 0 : dataSource.origin_total) !== null && _dataSource$origin_to !== void 0 ? _dataSource$origin_to : 0) * quantity;
|
|
73
|
+
const symbol = dataSource === null || dataSource === void 0 ? void 0 : dataSource.symbol;
|
|
74
|
+
const slotContext = useMemo(() => ({
|
|
75
|
+
item: dataSource,
|
|
76
|
+
disabled
|
|
77
|
+
}), [dataSource, disabled]);
|
|
78
|
+
const style = useMemo(() => getPresentationStyle(presentation), [presentation]);
|
|
79
|
+
const defaultSpecifications = specificationsData.length ? /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__specifications` }, specificationsData.map((specification) => /* @__PURE__ */ React.createElement("div", {
|
|
80
|
+
className: `${PREFIX}-a12__specification`,
|
|
81
|
+
key: specification.key
|
|
82
|
+
}, specification.label ? /* @__PURE__ */ React.createElement("span", { className: `${PREFIX}-a12__specification-label` }, specification.label) : null, /* @__PURE__ */ React.createElement("strong", { className: `${PREFIX}-a12__specification-value` }, specification.value)))) : (dataSource === null || dataSource === void 0 ? void 0 : dataSource.product_option_string) ? /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__specification-summary` }, dataSource.product_option_string) : null;
|
|
83
|
+
const specifications = (slots === null || slots === void 0 ? void 0 : slots.specifications) ? slots.specifications(_objectSpread2(_objectSpread2({}, slotContext), {}, { defaultSpecifications })) : defaultSpecifications;
|
|
84
|
+
const contentFooter = slots === null || slots === void 0 || (_slots$contentFooter = slots.contentFooter) === null || _slots$contentFooter === void 0 ? void 0 : _slots$contentFooter.call(slots, slotContext);
|
|
85
|
+
const defaultPrice = /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__price` }, /* @__PURE__ */ React.createElement("strong", null, formatAmount(lineTotal, 2, symbol)), isShowOriginalPrice && originalTotal > 0 && originalTotal !== lineTotal ? /* @__PURE__ */ React.createElement("del", null, formatAmount(originalTotal, 2, symbol)) : null);
|
|
86
|
+
const defaultEdit = Boolean(isShowEditProduct && onEditProduct) ? /* @__PURE__ */ React.createElement("button", {
|
|
87
|
+
type: "button",
|
|
88
|
+
className: `${PREFIX}-a12__edit`,
|
|
89
|
+
disabled: disabled || disabledEditClick,
|
|
90
|
+
onClick: (event) => {
|
|
91
|
+
event.preventDefault();
|
|
92
|
+
event.stopPropagation();
|
|
93
|
+
onEditProduct === null || onEditProduct === void 0 || onEditProduct(dataSource);
|
|
94
|
+
}
|
|
95
|
+
}, locales.getText("pisell2.product.card.edit")) : null;
|
|
96
|
+
const defaultQuantityControl = (slots === null || slots === void 0 ? void 0 : slots.quantityControl) ? slots.quantityControl(slotContext) : /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__quantity-fallback` }, /* @__PURE__ */ React.createElement("span", null, display.quantityText || `× ${quantity}`));
|
|
97
|
+
const defaultActionRail = /* @__PURE__ */ React.createElement("aside", { className: `${PREFIX}-a12__rail` }, isShowDelete && onDelete ? /* @__PURE__ */ React.createElement("button", {
|
|
98
|
+
type: "button",
|
|
99
|
+
className: `${PREFIX}-a12__delete`,
|
|
100
|
+
"aria-label": locales.getText("pisell2.cart.sku-card.actions.delete"),
|
|
101
|
+
disabled,
|
|
102
|
+
onClick: (event) => {
|
|
103
|
+
event.preventDefault();
|
|
104
|
+
event.stopPropagation();
|
|
105
|
+
onDelete(dataSource);
|
|
106
|
+
}
|
|
107
|
+
}, /* @__PURE__ */ React.createElement(IconFont, { type: "pisell2-trash-01" })) : null, defaultPrice, defaultEdit, /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__quantity-control` }, defaultQuantityControl));
|
|
108
|
+
const actionRail = (slots === null || slots === void 0 ? void 0 : slots.actionRail) ? slots.actionRail(_objectSpread2(_objectSpread2({}, slotContext), {}, {
|
|
109
|
+
defaultPrice,
|
|
110
|
+
defaultEdit,
|
|
111
|
+
defaultQuantityControl
|
|
112
|
+
})) : defaultActionRail;
|
|
113
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
114
|
+
className: classNames(`${PREFIX}-a12`, `${PREFIX}-a12--${(presentation === null || presentation === void 0 ? void 0 : presentation.density) || "comfortable"}`, `${PREFIX}-a12--align-${(presentation === null || presentation === void 0 ? void 0 : presentation.contentAlign) || "start"}`, !isShowImage && `pisell-cart-sku-card-a12--without-media`, presentation === null || presentation === void 0 ? void 0 : presentation.className),
|
|
115
|
+
style
|
|
116
|
+
}, isShowImage ? /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__media` }, (dataSource === null || dataSource === void 0 ? void 0 : dataSource.image) ? /* @__PURE__ */ React.createElement("img", {
|
|
117
|
+
alt: "",
|
|
118
|
+
src: image.ali(dataSource.image, 320),
|
|
119
|
+
style: { objectFit: (presentation === null || presentation === void 0 ? void 0 : presentation.mediaFit) || "cover" }
|
|
120
|
+
}) : /* @__PURE__ */ React.createElement("span", { "aria-hidden": "true" }, String((dataSource === null || dataSource === void 0 ? void 0 : dataSource.name) || "").slice(0, 2))) : null, /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__content` }, display.eyebrow ? /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__eyebrow` }, display.eyebrow) : null, /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__name` }, dataSource === null || dataSource === void 0 ? void 0 : dataSource.name), weighingInfo ? /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__weighing` }, /* @__PURE__ */ React.createElement(Weighing, {
|
|
121
|
+
dataSource: weighingInfo,
|
|
122
|
+
symbol
|
|
123
|
+
})) : null, specifications, contentFooter ? /* @__PURE__ */ React.createElement("div", { className: `${PREFIX}-a12__content-footer` }, contentFooter) : null), actionRail);
|
|
124
|
+
};
|
|
125
|
+
//#endregion
|
|
126
|
+
export { A12 as default };
|