pds-dev-kit-web 1.6.5 → 1.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/.vscode/settings.json +1 -1
  2. package/dist/index.d.ts +6 -6
  3. package/dist/index.js +6 -3
  4. package/dist/src/common/assets/lotties/Confetti.json +1 -0
  5. package/dist/src/common/assets/lotties/Fire.json +1 -0
  6. package/dist/src/common/assets/lotties/Heart.json +1 -0
  7. package/dist/src/common/assets/lotties/Sad.json +1 -0
  8. package/dist/src/common/assets/lotties/ThumbUp.json +1 -0
  9. package/dist/src/common/assets/lotties/index.d.ts +2513 -0
  10. package/dist/src/common/assets/lotties/index.js +18 -0
  11. package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +3 -1
  12. package/dist/src/common/styles/colorSet/PaletteColor_light.json +3 -1
  13. package/dist/src/common/styles/colorSet/UIColor.json +3 -1
  14. package/dist/src/common/styles/colorSet/index.d.ts +6 -0
  15. package/dist/src/common/styles/colorSet/ui-type.d.ts +2 -0
  16. package/dist/src/common/utils/numberHelper.d.ts +2 -0
  17. package/dist/src/common/utils/numberHelper.js +11 -0
  18. package/dist/src/desktop/components/Chip/Chip.js +7 -10
  19. package/dist/src/desktop/components/LottieReactionButton/LottieReactionButton.d.ts +18 -0
  20. package/dist/src/desktop/components/LottieReactionButton/LottieReactionButton.js +154 -0
  21. package/dist/src/desktop/components/LottieReactionButton/index.d.ts +1 -0
  22. package/dist/src/desktop/components/LottieReactionButton/index.js +8 -0
  23. package/dist/src/desktop/components/ReactionButton/ReactionButton.d.ts +1 -1
  24. package/dist/src/desktop/components/ReactionButton/ReactionButton.js +6 -16
  25. package/dist/src/desktop/components/index.d.ts +2 -1
  26. package/dist/src/desktop/components/index.js +3 -1
  27. package/dist/src/desktop/index.d.ts +2 -2
  28. package/dist/src/desktop/index.js +3 -2
  29. package/dist/src/hybrid/components/LottieIcon/LottieIcon.d.ts +13 -0
  30. package/dist/src/hybrid/components/LottieIcon/LottieIcon.js +34 -0
  31. package/dist/src/hybrid/components/LottieIcon/index.d.ts +1 -0
  32. package/dist/src/hybrid/components/LottieIcon/index.js +8 -0
  33. package/dist/src/hybrid/components/index.d.ts +2 -1
  34. package/dist/src/hybrid/components/index.js +3 -1
  35. package/dist/src/hybrid/index.d.ts +2 -2
  36. package/dist/src/hybrid/index.js +2 -1
  37. package/dist/src/mobile/components/Chip/Chip.js +7 -10
  38. package/dist/src/mobile/components/LottieReactionButton/LottieReactionButton.d.ts +20 -0
  39. package/dist/src/mobile/components/LottieReactionButton/LottieReactionButton.js +157 -0
  40. package/dist/src/mobile/components/LottieReactionButton/index.d.ts +1 -0
  41. package/dist/src/mobile/components/LottieReactionButton/index.js +8 -0
  42. package/dist/src/mobile/components/ReactionButton/ReactionButton.d.ts +1 -1
  43. package/dist/src/mobile/components/ReactionButton/ReactionButton.js +6 -16
  44. package/dist/src/mobile/components/index.d.ts +2 -1
  45. package/dist/src/mobile/components/index.js +3 -1
  46. package/dist/src/mobile/index.d.ts +2 -2
  47. package/dist/src/mobile/index.js +2 -1
  48. package/package.json +2 -1
  49. package/release-note.md +11 -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(S_FilterIconWrapper, 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' }))),
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 S_FilterIconWrapper = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n margin-right: ", ";\n"], ["\n margin-right: ", ";\n"])), function (_a) {
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(templateObject_8 || (templateObject_8 = __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) {
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(templateObject_9 || (templateObject_9 = __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"])));
159
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
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,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { PDSTextType } from '../../../common';
3
3
  export declare type ReactionButtonProps = {
4
- text: PDSTextType;
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';
@@ -28,6 +28,7 @@ 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) {
@@ -79,28 +80,17 @@ function ReactionButton(_a) {
79
80
  }
80
81
  return;
81
82
  };
82
- // TODO : 유틸로 편성 예정
83
- var convertFormatHelper = function (value) {
83
+ var convertTextFormatHelper = function (value) {
84
84
  if (typeof value !== 'number')
85
85
  return value;
86
- switch (true) {
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(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
103
- react_1.default.createElement(TextLabel_1.TextLabel, { text: convertFormatHelper(text), styleTheme: "body2Bold", singleLineMode: "use", colorTheme: TextLabelColorBySelect(), colorOverride: TextLabelColorByByColorTheme() }),
91
+ 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 };
@@ -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.5",
3
+ "version": "1.6.6",
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",
package/release-note.md CHANGED
@@ -1,8 +1,13 @@
1
1
  # PDS-DEV-KIT-WEB Release Notes
2
- ## [v1.6.5]
2
+ ## [v1.6.6]
3
3
  ### Component
4
- * AdminListsItem
5
- * imageScaleType prop추가
6
- * Icon
7
- * ic_bookmark line추가
8
- * ic_bookmark fill추가
4
+ * Chip
5
+ * displayType이 filter_single, filter_multi일때 아이콘의 정렬이 안 맞는 이슈 수정
6
+ * LottieIcon 생성
7
+ * LottieReactionButton 생성
8
+ * ReactionButton
9
+ * text가 필수가 아니도록 변경
10
+ * text가 없을때 아이콘 우측에 애매한 간격이 남지 않도록 변경
11
+
12
+ ### Color
13
+ * 컬러 키 값 22.11.24 18시 27분 기준 싱크