pds-dev-kit-web 1.6.5 → 1.6.7
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/.vscode/settings.json +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.js +6 -3
- package/dist/src/common/assets/lotties/Confetti.json +1 -0
- package/dist/src/common/assets/lotties/Fire.json +1 -0
- package/dist/src/common/assets/lotties/Heart.json +1 -0
- package/dist/src/common/assets/lotties/Sad.json +1 -0
- package/dist/src/common/assets/lotties/ThumbUp.json +1 -0
- package/dist/src/common/assets/lotties/index.d.ts +2513 -0
- package/dist/src/common/assets/lotties/index.js +18 -0
- package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +3 -1
- package/dist/src/common/styles/colorSet/PaletteColor_light.json +3 -1
- package/dist/src/common/styles/colorSet/UIColor.json +3 -1
- package/dist/src/common/styles/colorSet/index.d.ts +6 -0
- package/dist/src/common/styles/colorSet/ui-type.d.ts +2 -0
- package/dist/src/common/utils/numberHelper.d.ts +2 -0
- package/dist/src/common/utils/numberHelper.js +11 -0
- package/dist/src/desktop/components/Chip/Chip.js +7 -10
- package/dist/src/desktop/components/LottieReactionButton/LottieReactionButton.d.ts +18 -0
- package/dist/src/desktop/components/LottieReactionButton/LottieReactionButton.js +154 -0
- package/dist/src/desktop/components/LottieReactionButton/index.d.ts +1 -0
- package/dist/src/desktop/components/LottieReactionButton/index.js +8 -0
- package/dist/src/desktop/components/ReactionButton/ReactionButton.d.ts +3 -2
- package/dist/src/desktop/components/ReactionButton/ReactionButton.js +7 -17
- package/dist/src/desktop/components/index.d.ts +2 -1
- package/dist/src/desktop/components/index.js +3 -1
- package/dist/src/desktop/index.d.ts +2 -2
- package/dist/src/desktop/index.js +3 -2
- package/dist/src/hybrid/components/LottieIcon/LottieIcon.d.ts +13 -0
- package/dist/src/hybrid/components/LottieIcon/LottieIcon.js +34 -0
- package/dist/src/hybrid/components/LottieIcon/index.d.ts +1 -0
- package/dist/src/hybrid/components/LottieIcon/index.js +8 -0
- package/dist/src/hybrid/components/index.d.ts +2 -1
- package/dist/src/hybrid/components/index.js +3 -1
- package/dist/src/hybrid/index.d.ts +2 -2
- package/dist/src/hybrid/index.js +2 -1
- package/dist/src/mobile/components/Chip/Chip.js +7 -10
- package/dist/src/mobile/components/LottieReactionButton/LottieReactionButton.d.ts +20 -0
- package/dist/src/mobile/components/LottieReactionButton/LottieReactionButton.js +157 -0
- package/dist/src/mobile/components/LottieReactionButton/index.d.ts +1 -0
- package/dist/src/mobile/components/LottieReactionButton/index.js +8 -0
- package/dist/src/mobile/components/ReactionButton/ReactionButton.d.ts +3 -2
- package/dist/src/mobile/components/ReactionButton/ReactionButton.js +7 -17
- package/dist/src/mobile/components/index.d.ts +2 -1
- package/dist/src/mobile/components/index.js +3 -1
- package/dist/src/mobile/index.d.ts +2 -2
- package/dist/src/mobile/index.js +2 -1
- package/package.json +2 -1
- package/release-note.md +3 -6
|
@@ -80,8 +80,9 @@ function Chip(_a) {
|
|
|
80
80
|
react_1.default.createElement(Icon_1.Icon, { size: 12, iconName: "ic_xmark", fillType: "line", colorKey: "ui_cpnt_chip_fill_icon_inactive" }))));
|
|
81
81
|
default:
|
|
82
82
|
return (react_1.default.createElement(S_FilterSingleChip, { isActive: isActive, onClick: handleClickChip },
|
|
83
|
-
filterIconMode === 'left' && (react_1.default.createElement(
|
|
84
|
-
react_1.default.createElement(Icon_1.Icon, { fillType: iconFillType, iconName: iconName, size: 16, colorKey: isActive ? 'ui_cpnt_chip_fill_icon_active_01' : 'ui_cpnt_chip_line_icon_02' })
|
|
83
|
+
filterIconMode === 'left' && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
84
|
+
react_1.default.createElement(Icon_1.Icon, { fillType: iconFillType, iconName: iconName, size: 16, colorKey: isActive ? 'ui_cpnt_chip_fill_icon_active_01' : 'ui_cpnt_chip_line_icon_02' }),
|
|
85
|
+
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_a", spacingType: "width" }))),
|
|
85
86
|
react_1.default.createElement(TextLabel_1.TextLabel, { text: text, styleTheme: "caption1Regular", singleLineMode: "use", colorTheme: isActive ? 'usrTextBrandOnPrimary' : 'sysTextSecondary', ellipsisMode: "use", lineLimit: 1, wordBreak: "break_all" })));
|
|
86
87
|
}
|
|
87
88
|
};
|
|
@@ -137,23 +138,19 @@ var S_FilterSingleChip = styled_components_1.default.div(templateObject_5 || (te
|
|
|
137
138
|
var theme = _a.theme;
|
|
138
139
|
return theme.spacing.spacingC;
|
|
139
140
|
});
|
|
140
|
-
var
|
|
141
|
-
var theme = _a.theme;
|
|
142
|
-
return theme.spacing.spacingA;
|
|
143
|
-
});
|
|
144
|
-
var S_LabelChip = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n border: 1px solid ", ";\n border-radius: 10px;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n padding: 0 ", ";\n\n & > div {\n height: 20px;\n line-height: 20px;\n }\n"], ["\n border: 1px solid ", ";\n border-radius: 10px;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n padding: 0 ", ";\n\n & > div {\n height: 20px;\n line-height: 20px;\n }\n"])), function (_a) {
|
|
141
|
+
var S_LabelChip = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n border: 1px solid ", ";\n border-radius: 10px;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n padding: 0 ", ";\n\n & > div {\n height: 20px;\n line-height: 20px;\n }\n"], ["\n border: 1px solid ", ";\n border-radius: 10px;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n padding: 0 ", ";\n\n & > div {\n height: 20px;\n line-height: 20px;\n }\n"])), function (_a) {
|
|
145
142
|
var theme = _a.theme;
|
|
146
143
|
return theme.ui_cpnt_chip_line_border_01;
|
|
147
144
|
}, function (_a) {
|
|
148
145
|
var theme = _a.theme;
|
|
149
146
|
return theme.spacing.spacingB;
|
|
150
147
|
});
|
|
151
|
-
var S_TimeChip = styled_components_1.default.div(
|
|
148
|
+
var S_TimeChip = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n background-color: ", ";\n border-radius: 10px;\n box-sizing: border-box;\n height: 20px;\n padding: 0 ", ";\n display: flex;\n align-items: center;\n justify-content: center;\n\n & > div {\n height: 20px;\n line-height: 20px;\n }\n"], ["\n background-color: ", ";\n border-radius: 10px;\n box-sizing: border-box;\n height: 20px;\n padding: 0 ", ";\n display: flex;\n align-items: center;\n justify-content: center;\n\n & > div {\n height: 20px;\n line-height: 20px;\n }\n"])), function (_a) {
|
|
152
149
|
var theme = _a.theme;
|
|
153
150
|
return theme.ui_cpnt_chip_base_playtime;
|
|
154
151
|
}, function (_a) {
|
|
155
152
|
var theme = _a.theme;
|
|
156
153
|
return theme.spacing.spacingB;
|
|
157
154
|
});
|
|
158
|
-
var S_ChipWrapper = styled_components_1.default.div(
|
|
159
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8
|
|
155
|
+
var S_ChipWrapper = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: inline-block;\n vertical-align: bottom;\n min-width: fit-content;\n"], ["\n display: inline-block;\n vertical-align: bottom;\n min-width: fit-content;\n"])));
|
|
156
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React, { AnimationEventHandler } from 'react';
|
|
2
|
+
import { PDSTextType, UiColors } from '../../../common';
|
|
3
|
+
import { LottieIconNameKeys } from '../../../common/assets/lotties';
|
|
4
|
+
export declare type LottieReactionButtonProps = {
|
|
5
|
+
text?: PDSTextType;
|
|
6
|
+
actionText?: PDSTextType;
|
|
7
|
+
iconName?: LottieIconNameKeys;
|
|
8
|
+
displayType?: 'icon_only' | 'icon_text';
|
|
9
|
+
backgroundColorTheme?: 'base1' | 'base2' | 'base3' | 'base4' | 'base5';
|
|
10
|
+
overrideBackgroundColorKey?: UiColors;
|
|
11
|
+
state?: 'normal' | 'view_only' | 'disabled';
|
|
12
|
+
type?: 'button' | 'submit';
|
|
13
|
+
onTouchStart?: (e: React.TouchEvent<HTMLButtonElement>) => void;
|
|
14
|
+
onTouchEnd?: (e: React.TouchEvent<HTMLButtonElement>) => void;
|
|
15
|
+
onMouseDown?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
16
|
+
onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
17
|
+
onComplete?: AnimationEventHandler | null;
|
|
18
|
+
};
|
|
19
|
+
declare function LottieReactionButton({ text, actionText, iconName, displayType, backgroundColorTheme, overrideBackgroundColorKey, type, state, onTouchStart, onTouchEnd, onMouseDown, onClick, onComplete }: LottieReactionButtonProps): JSX.Element;
|
|
20
|
+
export default LottieReactionButton;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
var react_1 = __importStar(require("react"));
|
|
27
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
28
|
+
var numberHelper_1 = require("../../../common/utils/numberHelper");
|
|
29
|
+
var hybrid_1 = require("../../../hybrid");
|
|
30
|
+
var TextLabel_1 = require("../TextLabel");
|
|
31
|
+
function LottieReactionButton(_a) {
|
|
32
|
+
var text = _a.text, actionText = _a.actionText, _b = _a.iconName, iconName = _b === void 0 ? 'ic_lottie_heart' : _b, _c = _a.displayType, displayType = _c === void 0 ? 'icon_text' : _c, _d = _a.backgroundColorTheme, backgroundColorTheme = _d === void 0 ? 'base1' : _d, overrideBackgroundColorKey = _a.overrideBackgroundColorKey, _e = _a.type, type = _e === void 0 ? 'button' : _e, _f = _a.state, state = _f === void 0 ? 'normal' : _f, onTouchStart = _a.onTouchStart, onTouchEnd = _a.onTouchEnd, onMouseDown = _a.onMouseDown, onClick = _a.onClick, onComplete = _a.onComplete;
|
|
33
|
+
var lottieRef = (0, react_1.useRef)(null);
|
|
34
|
+
var convertFormatHelper = function (value) {
|
|
35
|
+
if (typeof value !== 'number')
|
|
36
|
+
return value;
|
|
37
|
+
return (0, numberHelper_1.formatCompactNumber)(value);
|
|
38
|
+
};
|
|
39
|
+
var convertFormatText = convertFormatHelper(text);
|
|
40
|
+
var _g = (0, react_1.useState)(false), isAnimation = _g[0], setIsAnimation = _g[1];
|
|
41
|
+
var _h = (0, react_1.useState)(convertFormatText), textWord = _h[0], setTextWord = _h[1];
|
|
42
|
+
var handleTouchStart = function (e) {
|
|
43
|
+
setIsAnimation(false);
|
|
44
|
+
if (onTouchStart) {
|
|
45
|
+
onTouchStart(e);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
var handleTouchEnd = function (e) {
|
|
49
|
+
var _a, _b;
|
|
50
|
+
setIsAnimation(true);
|
|
51
|
+
(_a = lottieRef.current) === null || _a === void 0 ? void 0 : _a.playSegments([[0, 30]], true);
|
|
52
|
+
setTextWord((_b = actionText !== null && actionText !== void 0 ? actionText : convertFormatText) !== null && _b !== void 0 ? _b : '');
|
|
53
|
+
if (onTouchEnd) {
|
|
54
|
+
onTouchEnd(e);
|
|
55
|
+
}
|
|
56
|
+
e.preventDefault();
|
|
57
|
+
};
|
|
58
|
+
var handleMouseDown = function (e) {
|
|
59
|
+
setIsAnimation(false);
|
|
60
|
+
if (onMouseDown) {
|
|
61
|
+
onMouseDown(e);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
var handleClick = function (e) {
|
|
65
|
+
var _a, _b;
|
|
66
|
+
setIsAnimation(true);
|
|
67
|
+
(_a = lottieRef.current) === null || _a === void 0 ? void 0 : _a.playSegments([[0, 30]], true);
|
|
68
|
+
setTextWord((_b = actionText !== null && actionText !== void 0 ? actionText : convertFormatText) !== null && _b !== void 0 ? _b : '');
|
|
69
|
+
if (onClick) {
|
|
70
|
+
onClick(e);
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
var handleLottieIconComplete = function (e) {
|
|
74
|
+
setTextWord(convertFormatText);
|
|
75
|
+
if (onComplete) {
|
|
76
|
+
onComplete(e);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
return (react_1.default.createElement(S_Button, { displayType: displayType, backgroundColorTheme: backgroundColorTheme, overrideBackgroundColorKey: overrideBackgroundColorKey, state: state, disabled: state === 'disabled' || state === 'view_only', type: type, onTouchStart: handleTouchStart, onTouchEnd: handleTouchEnd, onMouseDown: handleMouseDown, onClick: handleClick, isAnimation: isAnimation },
|
|
80
|
+
react_1.default.createElement(hybrid_1.LottieIcon, { iconName: iconName, lottieRef: lottieRef, autoplayMode: "none", loopMode: "none", onComplete: handleLottieIconComplete }),
|
|
81
|
+
displayType === 'icon_text' && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
82
|
+
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
|
|
83
|
+
react_1.default.createElement(TextLabel_1.TextLabel, { text: textWord, singleLineMode: "use", colorTheme: "sysTextWhite", ellipsisMode: "use", lineLimit: 1, wordBreak: "break_all" })))));
|
|
84
|
+
}
|
|
85
|
+
var disabled = (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n cursor: default;\n"], ["\n background-color: ", ";\n cursor: default;\n"])), function (_a) {
|
|
86
|
+
var theme = _a.theme;
|
|
87
|
+
return theme.ui_cpnt_button_fill_base_disabled;
|
|
88
|
+
});
|
|
89
|
+
var normal = (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n\n &:active:enabled {\n ", "\n }\n"], ["\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n\n &:active:enabled {\n ", "\n }\n"])), function (_a) {
|
|
90
|
+
var theme = _a.theme;
|
|
91
|
+
return "background-image: linear-gradient(\n to top,\n " + theme.ui_cpnt_button_fill_on_base_pressed + ",\n " + theme.ui_cpnt_button_fill_on_base_pressed + "\n );";
|
|
92
|
+
});
|
|
93
|
+
var view_only = (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n cursor: default;\n"], ["\n cursor: default;\n"])));
|
|
94
|
+
var buttonAnimation = (0, styled_components_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n @keyframes gelatine {\n from,\n to {\n transform: scale(1, 1);\n }\n 25% {\n transform: scale(0.95, 1.1);\n }\n 50% {\n transform: scale(1.05, 0.9);\n }\n 75% {\n transform: scale(0.97, 1.05);\n }\n }\n\n animation: gelatine 1s 1;\n"], ["\n @keyframes gelatine {\n from,\n to {\n transform: scale(1, 1);\n }\n 25% {\n transform: scale(0.95, 1.1);\n }\n 50% {\n transform: scale(1.05, 0.9);\n }\n 75% {\n transform: scale(0.97, 1.05);\n }\n }\n\n animation: gelatine 1s 1;\n"])));
|
|
95
|
+
var icon_only = (0, styled_components_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n height: 32px;\n width: 32px;\n min-height: 32px;\n min-width: 32px;\n border-radius: 16px;\n\n & > div {\n height: 32px;\n line-height: 32px;\n }\n"], ["\n height: 32px;\n width: 32px;\n min-height: 32px;\n min-width: 32px;\n border-radius: 16px;\n\n & > div {\n height: 32px;\n line-height: 32px;\n }\n"])));
|
|
96
|
+
var icon_text = (0, styled_components_1.css)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n height: 32px;\n min-height: 32px;\n min-width: 64px;\n border-radius: 16px;\n padding: 0 ", ";\n\n & > div {\n height: 32px;\n line-height: 32px;\n }\n"], ["\n height: 32px;\n min-height: 32px;\n min-width: 64px;\n border-radius: 16px;\n padding: 0 ", ";\n\n & > div {\n height: 32px;\n line-height: 32px;\n }\n"])), function (_a) {
|
|
97
|
+
var theme = _a.theme;
|
|
98
|
+
return theme.spacing.spacingB;
|
|
99
|
+
});
|
|
100
|
+
var base1 = (0, styled_components_1.css)(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
|
|
101
|
+
var theme = _a.theme;
|
|
102
|
+
return theme.ui_cpnt_lottiereactionbutton_base_01;
|
|
103
|
+
});
|
|
104
|
+
var base2 = (0, styled_components_1.css)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
|
|
105
|
+
var theme = _a.theme;
|
|
106
|
+
return theme.ui_cpnt_lottiereactionbutton_base_02;
|
|
107
|
+
});
|
|
108
|
+
var base3 = (0, styled_components_1.css)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
|
|
109
|
+
var theme = _a.theme;
|
|
110
|
+
return theme.ui_cpnt_lottiereactionbutton_base_03;
|
|
111
|
+
});
|
|
112
|
+
var base4 = (0, styled_components_1.css)(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
|
|
113
|
+
var theme = _a.theme;
|
|
114
|
+
return theme.ui_cpnt_lottiereactionbutton_base_04;
|
|
115
|
+
});
|
|
116
|
+
var base5 = (0, styled_components_1.css)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
|
|
117
|
+
var theme = _a.theme;
|
|
118
|
+
return theme.ui_cpnt_lottiereactionbutton_base_05;
|
|
119
|
+
});
|
|
120
|
+
var overrideStyle = (0, styled_components_1.css)(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n background-color: ", ";\n"], ["\n background-color: ", ";\n"])), function (_a) {
|
|
121
|
+
var theme = _a.theme, overrideBackgroundColorKey = _a.overrideBackgroundColorKey;
|
|
122
|
+
return overrideBackgroundColorKey && theme[overrideBackgroundColorKey];
|
|
123
|
+
});
|
|
124
|
+
var S_Button = styled_components_1.default.button(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n align-items: center;\n background-color: transparent;\n border: 1px solid transparent;\n box-sizing: border-box;\n display: inline-flex;\n justify-content: center;\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", ";\n"], ["\n align-items: center;\n background-color: transparent;\n border: 1px solid transparent;\n box-sizing: border-box;\n display: inline-flex;\n justify-content: center;\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", ";\n\n ", ";\n"])), function (_a) {
|
|
125
|
+
var backgroundColorTheme = _a.backgroundColorTheme;
|
|
126
|
+
return backgroundColorTheme &&
|
|
127
|
+
{
|
|
128
|
+
base1: base1,
|
|
129
|
+
base2: base2,
|
|
130
|
+
base3: base3,
|
|
131
|
+
base4: base4,
|
|
132
|
+
base5: base5
|
|
133
|
+
}[backgroundColorTheme];
|
|
134
|
+
}, function (_a) {
|
|
135
|
+
var isAnimation = _a.isAnimation;
|
|
136
|
+
return isAnimation && buttonAnimation;
|
|
137
|
+
}, function (_a) {
|
|
138
|
+
var displayType = _a.displayType;
|
|
139
|
+
return displayType &&
|
|
140
|
+
{
|
|
141
|
+
icon_only: icon_only,
|
|
142
|
+
icon_text: icon_text
|
|
143
|
+
}[displayType];
|
|
144
|
+
}, function (_a) {
|
|
145
|
+
var overrideBackgroundColorKey = _a.overrideBackgroundColorKey;
|
|
146
|
+
return overrideBackgroundColorKey && overrideStyle;
|
|
147
|
+
}, function (_a) {
|
|
148
|
+
var state = _a.state;
|
|
149
|
+
return state &&
|
|
150
|
+
{
|
|
151
|
+
normal: normal,
|
|
152
|
+
disabled: disabled,
|
|
153
|
+
view_only: view_only
|
|
154
|
+
}[state];
|
|
155
|
+
});
|
|
156
|
+
exports.default = LottieReactionButton;
|
|
157
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as LottieReactionButton } from './LottieReactionButton';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.LottieReactionButton = void 0;
|
|
7
|
+
var LottieReactionButton_1 = require("./LottieReactionButton");
|
|
8
|
+
Object.defineProperty(exports, "LottieReactionButton", { enumerable: true, get: function () { return __importDefault(LottieReactionButton_1).default; } });
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { PDSTextType } from '../../../common';
|
|
3
3
|
export declare type ReactionButtonProps = {
|
|
4
|
-
text
|
|
4
|
+
text?: PDSTextType;
|
|
5
5
|
iconName?: 'ic_thumb_up' | 'ic_heart' | 'ic_thumb_down' | 'ic_reply';
|
|
6
6
|
status?: 'default' | 'select';
|
|
7
7
|
colorTheme?: 'none' | 'dark';
|
|
8
|
+
displayType?: 'icon_only' | 'icon_text';
|
|
8
9
|
onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
9
10
|
onMouseDown?: (e: React.MouseEvent<HTMLButtonElement>) => void;
|
|
10
11
|
};
|
|
11
|
-
declare function ReactionButton({ text, iconName, status, colorTheme, onClick, onMouseDown }: ReactionButtonProps): JSX.Element;
|
|
12
|
+
declare function ReactionButton({ text, iconName, status, colorTheme, displayType, onClick, onMouseDown }: ReactionButtonProps): JSX.Element;
|
|
12
13
|
export default ReactionButton;
|
|
@@ -28,10 +28,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
var react_1 = __importDefault(require("react"));
|
|
30
30
|
var styled_components_1 = __importStar(require("styled-components"));
|
|
31
|
+
var numberHelper_1 = require("../../../common/utils/numberHelper");
|
|
31
32
|
var hybrid_1 = require("../../../hybrid");
|
|
32
33
|
var TextLabel_1 = require("../TextLabel");
|
|
33
34
|
function ReactionButton(_a) {
|
|
34
|
-
var text = _a.text, _b = _a.iconName, iconName = _b === void 0 ? 'ic_thumb_up' : _b, _c = _a.status, status = _c === void 0 ? 'default' : _c, _d = _a.colorTheme, colorTheme = _d === void 0 ? 'none' : _d, onClick = _a.onClick, onMouseDown = _a.onMouseDown;
|
|
35
|
+
var text = _a.text, _b = _a.iconName, iconName = _b === void 0 ? 'ic_thumb_up' : _b, _c = _a.status, status = _c === void 0 ? 'default' : _c, _d = _a.colorTheme, colorTheme = _d === void 0 ? 'none' : _d, _e = _a.displayType, displayType = _e === void 0 ? 'icon_text' : _e, onClick = _a.onClick, onMouseDown = _a.onMouseDown;
|
|
35
36
|
var handleClick = function (e) {
|
|
36
37
|
if (onClick) {
|
|
37
38
|
onClick(e);
|
|
@@ -79,28 +80,17 @@ function ReactionButton(_a) {
|
|
|
79
80
|
}
|
|
80
81
|
return;
|
|
81
82
|
};
|
|
82
|
-
|
|
83
|
-
var convertFormatHelper = function (value) {
|
|
83
|
+
var convertTextFormatHelper = function (value) {
|
|
84
84
|
if (typeof value !== 'number')
|
|
85
85
|
return value;
|
|
86
|
-
|
|
87
|
-
case value >= 1000 && value < 1000000:
|
|
88
|
-
return Math.floor(value / 1000)
|
|
89
|
-
.toString()
|
|
90
|
-
.replace(/\.0$/, '') + "K";
|
|
91
|
-
case value >= 1000000:
|
|
92
|
-
return Math.floor(value / 1000000)
|
|
93
|
-
.toString()
|
|
94
|
-
.replace(/\.0$/, '') + "M";
|
|
95
|
-
default:
|
|
96
|
-
return value;
|
|
97
|
-
}
|
|
86
|
+
return (0, numberHelper_1.formatCompactNumber)(value);
|
|
98
87
|
};
|
|
99
88
|
return (react_1.default.createElement(S_ReactionButton, { onClick: handleClick, onMouseDown: handleMouseDown },
|
|
100
89
|
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
|
|
101
90
|
react_1.default.createElement(hybrid_1.Icon, { size: 20, fillType: "fill", iconName: iconName, colorKey: colorTheme === 'none' ? IconColorByStatus() : IconColorByColorByTheme() }),
|
|
102
|
-
react_1.default.createElement(
|
|
103
|
-
|
|
91
|
+
displayType === 'icon_text' && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
92
|
+
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
|
|
93
|
+
react_1.default.createElement(TextLabel_1.TextLabel, { text: convertTextFormatHelper(text), styleTheme: "body2Bold", singleLineMode: "use", colorTheme: TextLabelColorBySelect(), colorOverride: TextLabelColorByByColorTheme() }))),
|
|
104
94
|
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" })));
|
|
105
95
|
}
|
|
106
96
|
var ReactionButtonStyle = (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n align-items: center;\n background-color: transparent;\n border: none;\n border-radius: 8px;\n box-sizing: border-box;\n display: flex;\n justify-content: center;\n padding: 0;\n height: 32px;\n"], ["\n align-items: center;\n background-color: transparent;\n border: none;\n border-radius: 8px;\n box-sizing: border-box;\n display: flex;\n justify-content: center;\n padding: 0;\n height: 32px;\n"])));
|
|
@@ -17,6 +17,7 @@ import { FloatingActionButton } from './FloatingActionButton';
|
|
|
17
17
|
import { HorizontalFormGroup } from './HorizontalFormGroup';
|
|
18
18
|
import { IconButton } from './IconButton';
|
|
19
19
|
import { ImageSlide } from './ImageSlide';
|
|
20
|
+
import { LottieReactionButton } from './LottieReactionButton';
|
|
20
21
|
import { MainButton } from './MainButton';
|
|
21
22
|
import { MobileAlertDialog } from './MobileAlertDialog';
|
|
22
23
|
import { MobileHeaderBar } from './MobileHeaderBar';
|
|
@@ -31,4 +32,4 @@ import { TextLabel } from './TextLabel';
|
|
|
31
32
|
import { UploadIconButton } from './UploadIconButton';
|
|
32
33
|
import { UploadMainButton } from './UploadMainButton';
|
|
33
34
|
import { UploadTextButton } from './UploadTextButton';
|
|
34
|
-
export { BasicChatListItem, BasicFormGroup, BasicList, BasicListItem, BlogTextField, BodyTextGroup, Card, CardList, ChatBubbleListItem, ChatList, Checkbox, Chip, ContextMenu, ContextMenuItem, Dropdown, FloatingActionButton, HorizontalFormGroup, IconButton, ImageSlide, MainButton, MobileAlertDialog, MobileHeaderBar, MobileTabBar, Radio, ReactionButton, Select, StatusBlock, TextButton, TextField, TextLabel, UploadIconButton, UploadMainButton, UploadTextButton };
|
|
35
|
+
export { BasicChatListItem, BasicFormGroup, BasicList, BasicListItem, BlogTextField, BodyTextGroup, Card, CardList, ChatBubbleListItem, ChatList, Checkbox, Chip, ContextMenu, ContextMenuItem, Dropdown, FloatingActionButton, HorizontalFormGroup, IconButton, ImageSlide, LottieReactionButton, MainButton, MobileAlertDialog, MobileHeaderBar, MobileTabBar, Radio, ReactionButton, Select, StatusBlock, TextButton, TextField, TextLabel, UploadIconButton, UploadMainButton, UploadTextButton };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UploadTextButton = exports.UploadMainButton = exports.UploadIconButton = exports.TextLabel = exports.TextField = exports.TextButton = exports.StatusBlock = exports.Select = exports.ReactionButton = exports.Radio = exports.MobileTabBar = exports.MobileHeaderBar = exports.MobileAlertDialog = exports.MainButton = exports.ImageSlide = exports.IconButton = exports.HorizontalFormGroup = exports.FloatingActionButton = exports.Dropdown = exports.ContextMenuItem = exports.ContextMenu = exports.Chip = exports.Checkbox = exports.ChatList = exports.ChatBubbleListItem = exports.CardList = exports.Card = exports.BodyTextGroup = exports.BlogTextField = exports.BasicListItem = exports.BasicList = exports.BasicFormGroup = exports.BasicChatListItem = void 0;
|
|
3
|
+
exports.UploadTextButton = exports.UploadMainButton = exports.UploadIconButton = exports.TextLabel = exports.TextField = exports.TextButton = exports.StatusBlock = exports.Select = exports.ReactionButton = exports.Radio = exports.MobileTabBar = exports.MobileHeaderBar = exports.MobileAlertDialog = exports.MainButton = exports.LottieReactionButton = exports.ImageSlide = exports.IconButton = exports.HorizontalFormGroup = exports.FloatingActionButton = exports.Dropdown = exports.ContextMenuItem = exports.ContextMenu = exports.Chip = exports.Checkbox = exports.ChatList = exports.ChatBubbleListItem = exports.CardList = exports.Card = exports.BodyTextGroup = exports.BlogTextField = exports.BasicListItem = exports.BasicList = exports.BasicFormGroup = exports.BasicChatListItem = void 0;
|
|
4
4
|
var BasicChatListItem_1 = require("./BasicChatListItem");
|
|
5
5
|
Object.defineProperty(exports, "BasicChatListItem", { enumerable: true, get: function () { return BasicChatListItem_1.BasicChatListItem; } });
|
|
6
6
|
var BasicFormGroup_1 = require("./BasicFormGroup");
|
|
@@ -39,6 +39,8 @@ var IconButton_1 = require("./IconButton");
|
|
|
39
39
|
Object.defineProperty(exports, "IconButton", { enumerable: true, get: function () { return IconButton_1.IconButton; } });
|
|
40
40
|
var ImageSlide_1 = require("./ImageSlide");
|
|
41
41
|
Object.defineProperty(exports, "ImageSlide", { enumerable: true, get: function () { return ImageSlide_1.ImageSlide; } });
|
|
42
|
+
var LottieReactionButton_1 = require("./LottieReactionButton");
|
|
43
|
+
Object.defineProperty(exports, "LottieReactionButton", { enumerable: true, get: function () { return LottieReactionButton_1.LottieReactionButton; } });
|
|
42
44
|
var MainButton_1 = require("./MainButton");
|
|
43
45
|
Object.defineProperty(exports, "MainButton", { enumerable: true, get: function () { return MainButton_1.MainButton; } });
|
|
44
46
|
var MobileAlertDialog_1 = require("./MobileAlertDialog");
|
|
@@ -13,7 +13,7 @@ import { LayoutMS } from './layout/LayoutMS';
|
|
|
13
13
|
import { NavigationContainer as MSNavigationContainer } from './layout/LayoutMS/Containers';
|
|
14
14
|
import { ContainersBox as MSContainersBox } from './layout/LayoutMS/ContainersBox';
|
|
15
15
|
export { LayoutMS, MSNavigationContainer, MSContainersBox };
|
|
16
|
-
import { BasicChatListItem as M_BasicChatListItem, BasicFormGroup as M_BasicFormGroup, BasicList as M_BasicList, BasicListItem as M_BasicListItem, BlogTextField as M_BlogTextField, BodyTextGroup as M_BodyTextGroup, Card as M_Card, CardList as M_CardList, ChatBubbleListItem as M_ChatBubbleListItem, ChatList as M_ChatList, Checkbox as M_Checkbox, Chip as M_Chip, ContextMenu as M_ContextMenu, ContextMenuItem as M_ContextMenuItem, Dropdown as M_Dropdown, FloatingActionButton as M_FloatingActionButton, HorizontalFormGroup as M_HorizontalFormGroup, IconButton as M_IconButton, ImageSlide as M_ImageSlide, MainButton as M_MainButton, MobileAlertDialog as M_MobileAlertDialog, MobileHeaderBar as M_MobileHeaderBar, MobileTabBar as M_MobileTabBar, Radio as M_Radio, ReactionButton as M_ReactionButton, Select as M_Select, StatusBlock as M_StatusBlock, TextButton as M_TextButton, TextField as M_TextField, TextLabel as M_TextLabel, UploadIconButton as M_UploadIconButton, UploadMainButton as M_UploadMainButton, UploadTextButton as M_UploadTextButton } from './components';
|
|
17
|
-
export { M_BasicChatListItem, M_BasicFormGroup, M_BasicList, M_BasicListItem, M_BlogTextField, M_BodyTextGroup, M_Card, M_CardList, M_ChatBubbleListItem, M_ChatList, M_Checkbox, M_Chip, M_ContextMenu, M_ContextMenuItem, M_Dropdown, M_FloatingActionButton, M_HorizontalFormGroup, M_IconButton, M_ImageSlide, M_MainButton, M_MobileAlertDialog, M_MobileHeaderBar, M_MobileTabBar, M_Radio, M_ReactionButton, M_Select, M_StatusBlock, M_TextButton, M_TextField, M_TextLabel, M_UploadIconButton, M_UploadMainButton, M_UploadTextButton };
|
|
16
|
+
import { BasicChatListItem as M_BasicChatListItem, BasicFormGroup as M_BasicFormGroup, BasicList as M_BasicList, BasicListItem as M_BasicListItem, BlogTextField as M_BlogTextField, BodyTextGroup as M_BodyTextGroup, Card as M_Card, CardList as M_CardList, ChatBubbleListItem as M_ChatBubbleListItem, ChatList as M_ChatList, Checkbox as M_Checkbox, Chip as M_Chip, ContextMenu as M_ContextMenu, ContextMenuItem as M_ContextMenuItem, Dropdown as M_Dropdown, FloatingActionButton as M_FloatingActionButton, HorizontalFormGroup as M_HorizontalFormGroup, IconButton as M_IconButton, ImageSlide as M_ImageSlide, LottieReactionButton as M_LottieReactionButton, MainButton as M_MainButton, MobileAlertDialog as M_MobileAlertDialog, MobileHeaderBar as M_MobileHeaderBar, MobileTabBar as M_MobileTabBar, Radio as M_Radio, ReactionButton as M_ReactionButton, Select as M_Select, StatusBlock as M_StatusBlock, TextButton as M_TextButton, TextField as M_TextField, TextLabel as M_TextLabel, UploadIconButton as M_UploadIconButton, UploadMainButton as M_UploadMainButton, UploadTextButton as M_UploadTextButton } from './components';
|
|
17
|
+
export { M_BasicChatListItem, M_BasicFormGroup, M_BasicList, M_BasicListItem, M_BlogTextField, M_BodyTextGroup, M_Card, M_CardList, M_ChatBubbleListItem, M_ChatList, M_Checkbox, M_Chip, M_ContextMenu, M_ContextMenuItem, M_Dropdown, M_FloatingActionButton, M_HorizontalFormGroup, M_IconButton, M_ImageSlide, M_LottieReactionButton, M_MainButton, M_MobileAlertDialog, M_MobileHeaderBar, M_MobileTabBar, M_Radio, M_ReactionButton, M_Select, M_StatusBlock, M_TextButton, M_TextField, M_TextLabel, M_UploadIconButton, M_UploadMainButton, M_UploadTextButton };
|
|
18
18
|
import { AnnotationSheet as M_AnnotationSheet, ContentSheet as M_ContentSheet, MobileBasicModal as M_MobileBasicModal, SectionSheet as M_SectionSheet } from './panels';
|
|
19
19
|
export { M_AnnotationSheet, M_ContentSheet, M_MobileBasicModal, M_SectionSheet };
|
package/dist/src/mobile/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/* eslint-disable import/order */
|
|
3
3
|
/* eslint-disable import/first */
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.M_SectionSheet = exports.M_MobileBasicModal = exports.M_ContentSheet = exports.M_AnnotationSheet = exports.M_UploadTextButton = exports.M_UploadMainButton = exports.M_UploadIconButton = exports.M_TextLabel = exports.M_TextField = exports.M_TextButton = exports.M_StatusBlock = exports.M_Select = exports.M_ReactionButton = exports.M_Radio = exports.M_MobileTabBar = exports.M_MobileHeaderBar = exports.M_MobileAlertDialog = exports.M_MainButton = exports.M_ImageSlide = exports.M_IconButton = exports.M_HorizontalFormGroup = exports.M_FloatingActionButton = exports.M_Dropdown = exports.M_ContextMenuItem = exports.M_ContextMenu = exports.M_Chip = exports.M_Checkbox = exports.M_ChatList = exports.M_ChatBubbleListItem = exports.M_CardList = exports.M_Card = exports.M_BodyTextGroup = exports.M_BlogTextField = exports.M_BasicListItem = exports.M_BasicList = exports.M_BasicFormGroup = exports.M_BasicChatListItem = exports.MSContainersBox = exports.MSNavigationContainer = exports.LayoutMS = exports.MPContainersBox = exports.MPTabContainer = exports.MPNavigationContainer = exports.LayoutMP = exports.MMContainersBox = exports.MMNavigationContainer = exports.LayoutMM = exports.MFContainersBox = exports.LayoutMF = void 0;
|
|
5
|
+
exports.M_SectionSheet = exports.M_MobileBasicModal = exports.M_ContentSheet = exports.M_AnnotationSheet = exports.M_UploadTextButton = exports.M_UploadMainButton = exports.M_UploadIconButton = exports.M_TextLabel = exports.M_TextField = exports.M_TextButton = exports.M_StatusBlock = exports.M_Select = exports.M_ReactionButton = exports.M_Radio = exports.M_MobileTabBar = exports.M_MobileHeaderBar = exports.M_MobileAlertDialog = exports.M_MainButton = exports.M_LottieReactionButton = exports.M_ImageSlide = exports.M_IconButton = exports.M_HorizontalFormGroup = exports.M_FloatingActionButton = exports.M_Dropdown = exports.M_ContextMenuItem = exports.M_ContextMenu = exports.M_Chip = exports.M_Checkbox = exports.M_ChatList = exports.M_ChatBubbleListItem = exports.M_CardList = exports.M_Card = exports.M_BodyTextGroup = exports.M_BlogTextField = exports.M_BasicListItem = exports.M_BasicList = exports.M_BasicFormGroup = exports.M_BasicChatListItem = exports.MSContainersBox = exports.MSNavigationContainer = exports.LayoutMS = exports.MPContainersBox = exports.MPTabContainer = exports.MPNavigationContainer = exports.LayoutMP = exports.MMContainersBox = exports.MMNavigationContainer = exports.LayoutMM = exports.MFContainersBox = exports.LayoutMF = void 0;
|
|
6
6
|
// layoutMF
|
|
7
7
|
var LayoutMF_1 = require("./layout/LayoutMF");
|
|
8
8
|
Object.defineProperty(exports, "LayoutMF", { enumerable: true, get: function () { return LayoutMF_1.LayoutMF; } });
|
|
@@ -51,6 +51,7 @@ Object.defineProperty(exports, "M_FloatingActionButton", { enumerable: true, get
|
|
|
51
51
|
Object.defineProperty(exports, "M_HorizontalFormGroup", { enumerable: true, get: function () { return components_1.HorizontalFormGroup; } });
|
|
52
52
|
Object.defineProperty(exports, "M_IconButton", { enumerable: true, get: function () { return components_1.IconButton; } });
|
|
53
53
|
Object.defineProperty(exports, "M_ImageSlide", { enumerable: true, get: function () { return components_1.ImageSlide; } });
|
|
54
|
+
Object.defineProperty(exports, "M_LottieReactionButton", { enumerable: true, get: function () { return components_1.LottieReactionButton; } });
|
|
54
55
|
Object.defineProperty(exports, "M_MainButton", { enumerable: true, get: function () { return components_1.MainButton; } });
|
|
55
56
|
Object.defineProperty(exports, "M_MobileAlertDialog", { enumerable: true, get: function () { return components_1.MobileAlertDialog; } });
|
|
56
57
|
Object.defineProperty(exports, "M_MobileHeaderBar", { enumerable: true, get: function () { return components_1.MobileHeaderBar; } });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pds-dev-kit-web",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.7",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"private": false,
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"i18next": "^21.3.2",
|
|
21
21
|
"i18next-browser-languagedetector": "^6.1.2",
|
|
22
22
|
"i18next-intervalplural-postprocessor": "^3.0.0",
|
|
23
|
+
"lottie-react": "^2.3.1",
|
|
23
24
|
"nuka-carousel": "^4.8.4",
|
|
24
25
|
"react-hook-form": "^7.28.1",
|
|
25
26
|
"react-i18next": "^11.12.0",
|