pds-dev-kit-web 1.4.22 → 1.4.25
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/README.md +2 -2
- package/dist/index.d.ts +4 -4
- package/dist/index.js +7 -3
- 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 +4 -1
- package/dist/src/common/styles/colorSet/index.d.ts +7 -0
- package/dist/src/common/styles/colorSet/ui-type.d.ts +3 -0
- package/dist/src/desktop/components/AdminListHeader/HeaderBar.js +1 -1
- package/dist/src/desktop/components/BasicChatListItem/BasicChatListItem.d.ts +15 -0
- package/dist/src/desktop/components/BasicChatListItem/BasicChatListItem.js +134 -0
- package/dist/src/desktop/components/BasicChatListItem/index.d.ts +1 -0
- package/dist/src/desktop/components/BasicChatListItem/index.js +8 -0
- package/dist/src/desktop/components/ChatList/Body.d.ts +7 -0
- package/dist/src/desktop/components/ChatList/Body.js +90 -0
- package/dist/src/desktop/components/ChatList/ChatList.d.ts +23 -0
- package/dist/src/desktop/components/ChatList/ChatList.js +93 -0
- package/dist/src/desktop/components/ChatList/ChatTextField.d.ts +7 -0
- package/dist/src/desktop/components/ChatList/ChatTextField.js +41 -0
- package/dist/src/desktop/components/ChatList/Footer.d.ts +7 -0
- package/dist/src/desktop/components/ChatList/Footer.js +27 -0
- package/dist/src/desktop/components/ChatList/Header.d.ts +5 -0
- package/dist/src/desktop/components/ChatList/Header.js +50 -0
- package/dist/src/desktop/components/ChatList/index.d.ts +1 -0
- package/dist/src/desktop/components/ChatList/index.js +8 -0
- package/dist/src/desktop/components/ChatList/useAutoScrollToBottom.d.ts +10 -0
- package/dist/src/desktop/components/ChatList/useAutoScrollToBottom.js +48 -0
- package/dist/src/desktop/components/ContextMenu/ContextMenu.d.ts +2 -1
- package/dist/src/desktop/components/ContextMenu/ContextMenu.js +6 -3
- package/dist/src/desktop/components/Dropdown/Dropdown.js +1 -1
- package/dist/src/desktop/components/index.d.ts +3 -1
- package/dist/src/desktop/components/index.js +5 -1
- package/dist/src/desktop/index.d.ts +2 -2
- package/dist/src/desktop/index.js +4 -2
- package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/ContentsContainer.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/ContentsContainer.js +2 -1
- package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFE.d.ts +2 -1
- package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFE.js +41 -11
- package/dist/src/desktop/layout/LayoutWF/ContainersBox/ContainersBox.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWF/ContainersBox/ContainersBox.js +2 -0
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/ContentsContainer.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/ContentsContainer.js +3 -1
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTT.d.ts +11 -0
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTT.js +65 -0
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/index.d.ts +1 -0
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/index.js +3 -1
- package/dist/src/desktop/layout/LayoutWT/ContainersBox/ContainersBox.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWT/ContainersBox/ContainersBox.js +12 -4
- package/dist/src/hybrid/components/Spacing/Spacing.js +1 -1
- package/dist/src/mobile/components/BasicChatListItem/BasicChatListItem.d.ts +15 -0
- package/dist/src/mobile/components/BasicChatListItem/BasicChatListItem.js +134 -0
- package/dist/src/mobile/components/BasicChatListItem/index.d.ts +1 -0
- package/dist/src/mobile/components/BasicChatListItem/index.js +8 -0
- package/dist/src/mobile/components/ChatList/Body.d.ts +7 -0
- package/dist/src/mobile/components/ChatList/Body.js +93 -0
- package/dist/src/mobile/components/ChatList/ChatList.d.ts +23 -0
- package/dist/src/mobile/components/ChatList/ChatList.js +93 -0
- package/dist/src/mobile/components/ChatList/ChatTextField.d.ts +7 -0
- package/dist/src/mobile/components/ChatList/ChatTextField.js +41 -0
- package/dist/src/mobile/components/ChatList/Footer.d.ts +7 -0
- package/dist/src/mobile/components/ChatList/Footer.js +27 -0
- package/dist/src/mobile/components/ChatList/Header.d.ts +5 -0
- package/dist/src/mobile/components/ChatList/Header.js +50 -0
- package/dist/src/mobile/components/ChatList/index.d.ts +1 -0
- package/dist/src/mobile/components/ChatList/index.js +8 -0
- package/dist/src/mobile/components/ChatList/useAutoScrollToBottom.d.ts +10 -0
- package/dist/src/mobile/components/ChatList/useAutoScrollToBottom.js +48 -0
- package/dist/src/mobile/components/ChatList/useTimeout.d.ts +6 -0
- package/dist/src/mobile/components/ChatList/useTimeout.js +11 -0
- package/dist/src/mobile/components/ContextMenu/ContextMenu.d.ts +2 -1
- package/dist/src/mobile/components/ContextMenu/ContextMenu.js +6 -3
- package/dist/src/mobile/components/Dropdown/Dropdown.js +1 -1
- package/dist/src/mobile/components/index.d.ts +3 -1
- package/dist/src/mobile/components/index.js +5 -1
- package/dist/src/mobile/index.d.ts +2 -2
- package/dist/src/mobile/index.js +3 -1
- package/package.json +1 -1
- package/release-note.md +9 -15
package/README.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -5,14 +5,14 @@ export { theme };
|
|
|
5
5
|
export { Form };
|
|
6
6
|
import { Divider, Icon, ImageView, Spacing, Switch } from './src/hybrid';
|
|
7
7
|
export { Divider, Icon, ImageView, Spacing, Switch };
|
|
8
|
-
import { LayoutWF, WFContainersBox, LayoutWS, WSGlobalMenuContainer, WSContainersBox, LayoutWT, WTGlobalMenuContainer, WTContainersBox, D_AdminList, D_AdminListHeader, D_AdminListItem, D_BasicFormGroup, D_BasicList, D_BasicListItem, D_BlogTextField, D_BodyTextGroup, D_Card, D_CardList, D_Checkbox, D_Chip, D_ContextMenu, D_ContextMenuItem, D_DesktopAlertDialog, D_DesktopBasicModal, D_DesktopHeaderBar, D_DesktopHeadlessModal, D_DesktopTabBar, D_Dropdown, D_DynamicDesktopNavBar, D_DynamicDesktopNavBarTemplates, D_EditApplyTextField, D_FilterBar, D_FloatingActionButton, D_Hero, D_HorizontalFormGroup, D_IconButton, D_ImageSlide, D_MainButton, D_PageTitleTextGroup, D_Radio, D_ReactionButton, D_Select, D_StatusBlock, D_TextButton, D_TextField, D_TextLabel, D_UploadIconButton, D_UploadMainButton, D_UploadTextButton, D_UserDesktopNavBar, D_UserDesktopTabBar, D_UserDesktopSideTab } from './src/desktop';
|
|
8
|
+
import { LayoutWF, WFContainersBox, LayoutWS, WSGlobalMenuContainer, WSContainersBox, LayoutWT, WTGlobalMenuContainer, WTContainersBox, D_AdminList, D_AdminListHeader, D_AdminListItem, D_BasicChatListItem, D_BasicFormGroup, D_BasicList, D_BasicListItem, D_BlogTextField, D_BodyTextGroup, D_Card, D_CardList, D_ChatList, D_Checkbox, D_Chip, D_ContextMenu, D_ContextMenuItem, D_DesktopAlertDialog, D_DesktopBasicModal, D_DesktopHeaderBar, D_DesktopHeadlessModal, D_DesktopTabBar, D_Dropdown, D_DynamicDesktopNavBar, D_DynamicDesktopNavBarTemplates, D_EditApplyTextField, D_FilterBar, D_FloatingActionButton, D_Hero, D_HorizontalFormGroup, D_IconButton, D_ImageSlide, D_MainButton, D_PageTitleTextGroup, D_Radio, D_ReactionButton, D_Select, D_StatusBlock, D_TextButton, D_TextField, D_TextLabel, D_UploadIconButton, D_UploadMainButton, D_UploadTextButton, D_UserDesktopNavBar, D_UserDesktopTabBar, D_UserDesktopSideTab } from './src/desktop';
|
|
9
9
|
export { LayoutWF, WFContainersBox };
|
|
10
10
|
export { LayoutWS, WSGlobalMenuContainer, WSContainersBox };
|
|
11
11
|
export { LayoutWT, WTGlobalMenuContainer, WTContainersBox };
|
|
12
|
-
export { D_AdminList, D_AdminListHeader, D_AdminListItem, D_BasicFormGroup, D_BasicList, D_BasicListItem, D_BlogTextField, D_BodyTextGroup, D_Card, D_CardList, D_Checkbox, D_Chip, D_ContextMenu, D_ContextMenuItem, D_DesktopAlertDialog, D_DesktopBasicModal, D_DesktopHeaderBar, D_DesktopHeadlessModal, D_DesktopTabBar, D_Dropdown, D_EditApplyTextField, D_FilterBar, D_FloatingActionButton, D_Hero, D_HorizontalFormGroup, D_IconButton, D_ImageSlide, D_MainButton, D_PageTitleTextGroup, D_Radio, D_ReactionButton, D_Select, D_StatusBlock, D_TextButton, D_TextField, D_TextLabel, D_UploadIconButton, D_UploadMainButton, D_UploadTextButton, D_UserDesktopNavBar, D_UserDesktopTabBar, D_DynamicDesktopNavBar, D_UserDesktopSideTab, D_DynamicDesktopNavBarTemplates };
|
|
13
|
-
import { LayoutMF, MFContainersBox, LayoutMM, MMNavigationContainer, MMContainersBox, LayoutMP, MPNavigationContainer, MPTabContainer, MPContainersBox, LayoutMS, MSNavigationContainer, MSContainersBox, M_BasicFormGroup, M_BasicList, M_BasicListItem, M_BlogTextField, M_BodyTextGroup, M_Card, M_CardList, M_Checkbox, M_Chip, M_ContextMenu, M_ContextMenuItem, M_Dropdown, M_HorizontalFormGroup, M_IconButton, M_ImageSlide, M_MainButton, M_MobileAlertDialog, M_MobileBasicModal, M_MobileHeaderBar, M_MobileTabBar, M_Radio, M_ReactionButton, M_Select, M_StatusBlock, M_TextButton, M_TextField, M_TextLabel, M_UploadIconButton, M_UploadMainButton, M_UploadTextButton } from './src/mobile';
|
|
12
|
+
export { D_AdminList, D_AdminListHeader, D_AdminListItem, D_BasicChatListItem, D_BasicFormGroup, D_BasicList, D_BasicListItem, D_BlogTextField, D_BodyTextGroup, D_Card, D_CardList, D_ChatList, D_Checkbox, D_Chip, D_ContextMenu, D_ContextMenuItem, D_DesktopAlertDialog, D_DesktopBasicModal, D_DesktopHeaderBar, D_DesktopHeadlessModal, D_DesktopTabBar, D_Dropdown, D_EditApplyTextField, D_FilterBar, D_FloatingActionButton, D_Hero, D_HorizontalFormGroup, D_IconButton, D_ImageSlide, D_MainButton, D_PageTitleTextGroup, D_Radio, D_ReactionButton, D_Select, D_StatusBlock, D_TextButton, D_TextField, D_TextLabel, D_UploadIconButton, D_UploadMainButton, D_UploadTextButton, D_UserDesktopNavBar, D_UserDesktopTabBar, D_DynamicDesktopNavBar, D_UserDesktopSideTab, D_DynamicDesktopNavBarTemplates };
|
|
13
|
+
import { LayoutMF, MFContainersBox, LayoutMM, MMNavigationContainer, MMContainersBox, LayoutMP, MPNavigationContainer, MPTabContainer, MPContainersBox, LayoutMS, MSNavigationContainer, MSContainersBox, M_BasicChatListItem, M_BasicFormGroup, M_BasicList, M_BasicListItem, M_BlogTextField, M_BodyTextGroup, M_Card, M_CardList, M_ChatList, M_Checkbox, M_Chip, M_ContextMenu, M_ContextMenuItem, M_Dropdown, M_HorizontalFormGroup, M_IconButton, M_ImageSlide, M_MainButton, M_MobileAlertDialog, M_MobileBasicModal, M_MobileHeaderBar, M_MobileTabBar, M_Radio, M_ReactionButton, M_Select, M_StatusBlock, M_TextButton, M_TextField, M_TextLabel, M_UploadIconButton, M_UploadMainButton, M_UploadTextButton } from './src/mobile';
|
|
14
14
|
export { LayoutMF, MFContainersBox };
|
|
15
15
|
export { LayoutMM, MMNavigationContainer, MMContainersBox };
|
|
16
16
|
export { LayoutMP, MPNavigationContainer, MPTabContainer, MPContainersBox };
|
|
17
17
|
export { LayoutMS, MSNavigationContainer, MSContainersBox };
|
|
18
|
-
export { M_BasicFormGroup, M_BasicList, M_BasicListItem, M_BlogTextField, M_BodyTextGroup, M_Card, M_CardList, M_Checkbox, M_Chip, M_ContextMenu, M_ContextMenuItem, M_Dropdown, M_HorizontalFormGroup, M_IconButton, M_ImageSlide, M_MainButton, M_MobileAlertDialog, M_MobileBasicModal, 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
|
+
export { M_BasicChatListItem, M_BasicFormGroup, M_BasicList, M_BasicListItem, M_BlogTextField, M_BodyTextGroup, M_Card, M_CardList, M_ChatList, M_Checkbox, M_Chip, M_ContextMenu, M_ContextMenuItem, M_Dropdown, M_HorizontalFormGroup, M_IconButton, M_ImageSlide, M_MainButton, M_MobileAlertDialog, M_MobileBasicModal, M_MobileHeaderBar, M_MobileTabBar, M_Radio, M_ReactionButton, M_Select, M_StatusBlock, M_TextButton, M_TextField, M_TextLabel, M_UploadIconButton, M_UploadMainButton, M_UploadTextButton };
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.
|
|
5
|
-
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 = void 0;
|
|
3
|
+
exports.D_Hero = exports.D_FloatingActionButton = exports.D_FilterBar = exports.D_EditApplyTextField = exports.D_Dropdown = exports.D_DesktopTabBar = exports.D_DesktopHeadlessModal = exports.D_DesktopHeaderBar = exports.D_DesktopBasicModal = exports.D_DesktopAlertDialog = exports.D_ContextMenuItem = exports.D_ContextMenu = exports.D_Chip = exports.D_Checkbox = exports.D_ChatList = exports.D_CardList = exports.D_Card = exports.D_BodyTextGroup = exports.D_BlogTextField = exports.D_BasicListItem = exports.D_BasicList = exports.D_BasicFormGroup = exports.D_BasicChatListItem = exports.D_AdminListItem = exports.D_AdminListHeader = exports.D_AdminList = exports.WTContainersBox = exports.WTGlobalMenuContainer = exports.LayoutWT = exports.WSContainersBox = exports.WSGlobalMenuContainer = exports.LayoutWS = exports.WFContainersBox = exports.LayoutWF = exports.Switch = exports.Spacing = exports.ImageView = exports.Icon = exports.Divider = exports.Form = exports.theme = exports.customTheme = exports.uiColors = exports.spacing = exports.boxShadow = exports.mobileLineHeight = exports.mobileFontSize = exports.desktopLineHeight = exports.desktopFontSize = exports.fontWeight = void 0;
|
|
4
|
+
exports.M_MainButton = exports.M_ImageSlide = exports.M_IconButton = exports.M_HorizontalFormGroup = exports.M_Dropdown = exports.M_ContextMenuItem = exports.M_ContextMenu = exports.M_Chip = exports.M_Checkbox = exports.M_ChatList = 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 = exports.D_DynamicDesktopNavBarTemplates = exports.D_UserDesktopSideTab = exports.D_DynamicDesktopNavBar = exports.D_UserDesktopTabBar = exports.D_UserDesktopNavBar = exports.D_UploadTextButton = exports.D_UploadMainButton = exports.D_UploadIconButton = exports.D_TextLabel = exports.D_TextField = exports.D_TextButton = exports.D_StatusBlock = exports.D_Select = exports.D_ReactionButton = exports.D_Radio = exports.D_PageTitleTextGroup = exports.D_MainButton = exports.D_ImageSlide = exports.D_IconButton = exports.D_HorizontalFormGroup = void 0;
|
|
5
|
+
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_MobileBasicModal = exports.M_MobileAlertDialog = void 0;
|
|
6
6
|
/* eslint-disable import/order */
|
|
7
7
|
/* eslint-disable import/first */
|
|
8
8
|
// common
|
|
@@ -38,6 +38,7 @@ Object.defineProperty(exports, "WTContainersBox", { enumerable: true, get: funct
|
|
|
38
38
|
Object.defineProperty(exports, "D_AdminList", { enumerable: true, get: function () { return desktop_1.D_AdminList; } });
|
|
39
39
|
Object.defineProperty(exports, "D_AdminListHeader", { enumerable: true, get: function () { return desktop_1.D_AdminListHeader; } });
|
|
40
40
|
Object.defineProperty(exports, "D_AdminListItem", { enumerable: true, get: function () { return desktop_1.D_AdminListItem; } });
|
|
41
|
+
Object.defineProperty(exports, "D_BasicChatListItem", { enumerable: true, get: function () { return desktop_1.D_BasicChatListItem; } });
|
|
41
42
|
Object.defineProperty(exports, "D_BasicFormGroup", { enumerable: true, get: function () { return desktop_1.D_BasicFormGroup; } });
|
|
42
43
|
Object.defineProperty(exports, "D_BasicList", { enumerable: true, get: function () { return desktop_1.D_BasicList; } });
|
|
43
44
|
Object.defineProperty(exports, "D_BasicListItem", { enumerable: true, get: function () { return desktop_1.D_BasicListItem; } });
|
|
@@ -45,6 +46,7 @@ Object.defineProperty(exports, "D_BlogTextField", { enumerable: true, get: funct
|
|
|
45
46
|
Object.defineProperty(exports, "D_BodyTextGroup", { enumerable: true, get: function () { return desktop_1.D_BodyTextGroup; } });
|
|
46
47
|
Object.defineProperty(exports, "D_Card", { enumerable: true, get: function () { return desktop_1.D_Card; } });
|
|
47
48
|
Object.defineProperty(exports, "D_CardList", { enumerable: true, get: function () { return desktop_1.D_CardList; } });
|
|
49
|
+
Object.defineProperty(exports, "D_ChatList", { enumerable: true, get: function () { return desktop_1.D_ChatList; } });
|
|
48
50
|
Object.defineProperty(exports, "D_Checkbox", { enumerable: true, get: function () { return desktop_1.D_Checkbox; } });
|
|
49
51
|
Object.defineProperty(exports, "D_Chip", { enumerable: true, get: function () { return desktop_1.D_Chip; } });
|
|
50
52
|
Object.defineProperty(exports, "D_ContextMenu", { enumerable: true, get: function () { return desktop_1.D_ContextMenu; } });
|
|
@@ -93,6 +95,7 @@ Object.defineProperty(exports, "MPContainersBox", { enumerable: true, get: funct
|
|
|
93
95
|
Object.defineProperty(exports, "LayoutMS", { enumerable: true, get: function () { return mobile_1.LayoutMS; } });
|
|
94
96
|
Object.defineProperty(exports, "MSNavigationContainer", { enumerable: true, get: function () { return mobile_1.MSNavigationContainer; } });
|
|
95
97
|
Object.defineProperty(exports, "MSContainersBox", { enumerable: true, get: function () { return mobile_1.MSContainersBox; } });
|
|
98
|
+
Object.defineProperty(exports, "M_BasicChatListItem", { enumerable: true, get: function () { return mobile_1.M_BasicChatListItem; } });
|
|
96
99
|
Object.defineProperty(exports, "M_BasicFormGroup", { enumerable: true, get: function () { return mobile_1.M_BasicFormGroup; } });
|
|
97
100
|
Object.defineProperty(exports, "M_BasicList", { enumerable: true, get: function () { return mobile_1.M_BasicList; } });
|
|
98
101
|
Object.defineProperty(exports, "M_BasicListItem", { enumerable: true, get: function () { return mobile_1.M_BasicListItem; } });
|
|
@@ -100,6 +103,7 @@ Object.defineProperty(exports, "M_BlogTextField", { enumerable: true, get: funct
|
|
|
100
103
|
Object.defineProperty(exports, "M_BodyTextGroup", { enumerable: true, get: function () { return mobile_1.M_BodyTextGroup; } });
|
|
101
104
|
Object.defineProperty(exports, "M_Card", { enumerable: true, get: function () { return mobile_1.M_Card; } });
|
|
102
105
|
Object.defineProperty(exports, "M_CardList", { enumerable: true, get: function () { return mobile_1.M_CardList; } });
|
|
106
|
+
Object.defineProperty(exports, "M_ChatList", { enumerable: true, get: function () { return mobile_1.M_ChatList; } });
|
|
103
107
|
Object.defineProperty(exports, "M_Checkbox", { enumerable: true, get: function () { return mobile_1.M_Checkbox; } });
|
|
104
108
|
Object.defineProperty(exports, "M_Chip", { enumerable: true, get: function () { return mobile_1.M_Chip; } });
|
|
105
109
|
Object.defineProperty(exports, "M_ContextMenu", { enumerable: true, get: function () { return mobile_1.M_ContextMenu; } });
|
|
@@ -173,5 +173,7 @@
|
|
|
173
173
|
"sys_base_dimmed_01": "black/opacity30",
|
|
174
174
|
"sys_kakao": "kakaoyellow",
|
|
175
175
|
"sys_border_line_12": "grey100",
|
|
176
|
-
"sys_component_base_08": "white"
|
|
176
|
+
"sys_component_base_08": "white",
|
|
177
|
+
"sys_text_social_login_01": "grey900",
|
|
178
|
+
"sys_text_social_login_02": "grey900"
|
|
177
179
|
}
|
|
@@ -173,5 +173,7 @@
|
|
|
173
173
|
"sys_base_dimmed_01": "white/opacity30",
|
|
174
174
|
"sys_kakao": "kakaoyellow",
|
|
175
175
|
"sys_border_line_12": "grey100",
|
|
176
|
-
"sys_component_base_08": "black"
|
|
176
|
+
"sys_component_base_08": "black",
|
|
177
|
+
"sys_text_social_login_01": "white",
|
|
178
|
+
"sys_text_social_login_02": "grey900"
|
|
177
179
|
}
|
|
@@ -523,5 +523,8 @@
|
|
|
523
523
|
"ui_45": "sys_component_base_08",
|
|
524
524
|
"ui_46": "sys_base_dimmed_01",
|
|
525
525
|
"ui_47": "sys_kakao",
|
|
526
|
-
"ui_cpnt_sheet_base_03": "sys_component_base_white_opacity00"
|
|
526
|
+
"ui_cpnt_sheet_base_03": "sys_component_base_white_opacity00",
|
|
527
|
+
"ui_48": "sys_text_social_login_01",
|
|
528
|
+
"ui_49": "sys_text_social_login_02",
|
|
529
|
+
"ui_50": "sys_text_white"
|
|
527
530
|
}
|
|
@@ -235,6 +235,8 @@ declare const colorSet: {
|
|
|
235
235
|
sys_kakao: string;
|
|
236
236
|
sys_border_line_12: string;
|
|
237
237
|
sys_component_base_08: string;
|
|
238
|
+
sys_text_social_login_01: string;
|
|
239
|
+
sys_text_social_login_02: string;
|
|
238
240
|
};
|
|
239
241
|
readonly PaletteColor_Dark: {
|
|
240
242
|
sys_container_background_01: string;
|
|
@@ -412,6 +414,8 @@ declare const colorSet: {
|
|
|
412
414
|
sys_kakao: string;
|
|
413
415
|
sys_border_line_12: string;
|
|
414
416
|
sys_component_base_08: string;
|
|
417
|
+
sys_text_social_login_01: string;
|
|
418
|
+
sys_text_social_login_02: string;
|
|
415
419
|
};
|
|
416
420
|
readonly UIColor: {
|
|
417
421
|
ui_cpnt_button_fill_base_primary: string;
|
|
@@ -939,6 +943,9 @@ declare const colorSet: {
|
|
|
939
943
|
ui_46: string;
|
|
940
944
|
ui_47: string;
|
|
941
945
|
ui_cpnt_sheet_base_03: string;
|
|
946
|
+
ui_48: string;
|
|
947
|
+
ui_49: string;
|
|
948
|
+
ui_50: string;
|
|
942
949
|
};
|
|
943
950
|
};
|
|
944
951
|
export default colorSet;
|
|
@@ -48,7 +48,7 @@ function HeaderBar(_a) {
|
|
|
48
48
|
react_1.default.createElement(S_ListCount, null,
|
|
49
49
|
react_1.default.createElement(TextLabel_1.TextLabel, { text: t('str_rows_per_page', '목록 개수'), styleTheme: "caption1Regular" }),
|
|
50
50
|
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
|
|
51
|
-
react_1.default.createElement(Dropdown_1.Dropdown, { size: "small", valueArray: dropdownTextArray, onChange: handleDropdown, defaultValue: dropdownDefaultValue !== null && dropdownDefaultValue !== void 0 ? dropdownDefaultValue : dropdownTextArray[0] })),
|
|
51
|
+
react_1.default.createElement(Dropdown_1.Dropdown, { customWidth: "88px", size: "small", valueArray: dropdownTextArray, onChange: handleDropdown, defaultValue: dropdownDefaultValue !== null && dropdownDefaultValue !== void 0 ? dropdownDefaultValue : dropdownTextArray[0] })),
|
|
52
52
|
react_1.default.createElement(S_Page, null,
|
|
53
53
|
react_1.default.createElement(TextLabel_1.TextLabel, { text: currentPage, styleTheme: "caption1Regular", colorTheme: "sysTextPrimary" }),
|
|
54
54
|
react_1.default.createElement(TextLabel_1.TextLabel, { text: " / ", styleTheme: "caption1Regular", colorTheme: "sysTextPrimary" }),
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { PDSTextType, PDSValueOption } from '../../../common';
|
|
3
|
+
declare type Props = {
|
|
4
|
+
titleText?: PDSTextType;
|
|
5
|
+
contentText?: PDSTextType;
|
|
6
|
+
leftImageMode?: 'none' | 'use';
|
|
7
|
+
imageSrc?: string;
|
|
8
|
+
hoverBtnMode?: 'none' | 'use';
|
|
9
|
+
contextMenuOptionArray?: PDSValueOption[];
|
|
10
|
+
contextMenuState?: 'normal' | 'disabled';
|
|
11
|
+
colorTheme?: 'seller' | 'subscriber';
|
|
12
|
+
onClickContextMenu?: (option: PDSValueOption) => void;
|
|
13
|
+
};
|
|
14
|
+
declare function BasicChatListItem({ titleText, contentText, leftImageMode, imageSrc, hoverBtnMode, contextMenuOptionArray, onClickContextMenu, contextMenuState, colorTheme }: Props): JSX.Element;
|
|
15
|
+
export default BasicChatListItem;
|
|
@@ -0,0 +1,134 @@
|
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
var react_1 = __importStar(require("react"));
|
|
30
|
+
var styled_components_1 = __importDefault(require("styled-components"));
|
|
31
|
+
var hybrid_1 = require("../../../hybrid");
|
|
32
|
+
var ContextMenu_1 = require("../ContextMenu");
|
|
33
|
+
var ContextMenuItem_1 = require("../ContextMenuItem");
|
|
34
|
+
var IconButton_1 = require("../IconButton");
|
|
35
|
+
var TextLabel_1 = require("../TextLabel");
|
|
36
|
+
var titleTextColors = {
|
|
37
|
+
seller: 'usrTextBrandPrimary',
|
|
38
|
+
subscriber: 'sysTextSecondary'
|
|
39
|
+
};
|
|
40
|
+
var backgroundColorTheme = {
|
|
41
|
+
seller: 'ui_cpnt_list_base_area_seller',
|
|
42
|
+
subscriber: 'ui_cpnt_list_base_area'
|
|
43
|
+
};
|
|
44
|
+
function BasicChatListItem(_a) {
|
|
45
|
+
var titleText = _a.titleText, contentText = _a.contentText, _b = _a.leftImageMode, leftImageMode = _b === void 0 ? 'none' : _b, imageSrc = _a.imageSrc, _c = _a.hoverBtnMode, hoverBtnMode = _c === void 0 ? 'use' : _c, contextMenuOptionArray = _a.contextMenuOptionArray, onClickContextMenu = _a.onClickContextMenu, _d = _a.contextMenuState, contextMenuState = _d === void 0 ? 'normal' : _d, _e = _a.colorTheme, colorTheme = _e === void 0 ? 'subscriber' : _e;
|
|
46
|
+
var _f = (0, react_1.useState)(false), isContextMenuOpen = _f[0], setIsContextMenuOpen = _f[1];
|
|
47
|
+
var contextMenuRef = (0, react_1.useRef)(null);
|
|
48
|
+
/**
|
|
49
|
+
* @when contextMenu가 열려 있을 때
|
|
50
|
+
* @expected ChatList body의 스크롤을 숨기고, contextMenu의 외부를 클릭하면 contextMenu가 닫히도록 합니다.
|
|
51
|
+
* @clear document의 클릭 이벤트를 제거합니다.
|
|
52
|
+
*/
|
|
53
|
+
(0, react_1.useEffect)(function () {
|
|
54
|
+
// NOTE pop up 개념이 생기기 전까지의 임시 조치 방법입니다.
|
|
55
|
+
var chatBody = document.querySelector('#chatMessageBox');
|
|
56
|
+
if (chatBody) {
|
|
57
|
+
if (isContextMenuOpen) {
|
|
58
|
+
chatBody.style.overflowY = 'hidden';
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
chatBody.style.overflowY = 'auto';
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function handleClickOutside(e) {
|
|
65
|
+
if (contextMenuRef.current && !contextMenuRef.current.contains(e.target)) {
|
|
66
|
+
if (isContextMenuOpen) {
|
|
67
|
+
e.stopPropagation();
|
|
68
|
+
setIsContextMenuOpen(false);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
document.addEventListener('click', handleClickOutside);
|
|
73
|
+
return function () {
|
|
74
|
+
document.removeEventListener('click', handleClickOutside);
|
|
75
|
+
};
|
|
76
|
+
}, [isContextMenuOpen]);
|
|
77
|
+
var handleClickMoreButton = function () {
|
|
78
|
+
setIsContextMenuOpen(function (prev) { return !prev; });
|
|
79
|
+
};
|
|
80
|
+
var handleClickContextMenuItem = function (option) {
|
|
81
|
+
if (onClickContextMenu) {
|
|
82
|
+
onClickContextMenu(option);
|
|
83
|
+
}
|
|
84
|
+
setIsContextMenuOpen(false);
|
|
85
|
+
};
|
|
86
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
87
|
+
react_1.default.createElement(S_BasicChatListItem, { colorTheme: colorTheme, hoverBtnMode: hoverBtnMode },
|
|
88
|
+
leftImageMode === 'use' && (react_1.default.createElement(S_ImageViewWrapper, null,
|
|
89
|
+
react_1.default.createElement(hybrid_1.ImageView, { shapeType: "circular", ratio: "1_1", scaleType: "cover", src: imageSrc, width: "responsive" }))),
|
|
90
|
+
react_1.default.createElement(TextLabel_1.TextLabel, { text: titleText, styleTheme: "caption1Bold", colorTheme: titleTextColors[colorTheme] }),
|
|
91
|
+
react_1.default.createElement(S_ContentTextWrapper, null,
|
|
92
|
+
react_1.default.createElement(TextLabel_1.TextLabel, { text: contentText, styleTheme: "caption1Regular", colorTheme: "sysTextPrimary", wordBreak: "break_all" })),
|
|
93
|
+
react_1.default.createElement(S_SeeMoreButton, { isContextMenuOpen: isContextMenuOpen },
|
|
94
|
+
react_1.default.createElement(IconButton_1.IconButton, { fillType: "fill", baseSize: "xsmall", iconFillType: "fill", iconSize: 20, iconName: "ic_more", baseColorKey: "ui_cpnt_button_fill_base_transparent", iconColorKey: "ui_cpnt_button_icon_on_primary", onClick: handleClickMoreButton }),
|
|
95
|
+
isContextMenuOpen && (react_1.default.createElement(S_ContextMenuWrapper, { ref: contextMenuRef },
|
|
96
|
+
react_1.default.createElement(ContextMenu_1.ContextMenu, null, contextMenuOptionArray === null || contextMenuOptionArray === void 0 ? void 0 : contextMenuOptionArray.map(function (el) { return (react_1.default.createElement(ContextMenuItem_1.ContextMenuItem, { key: el.value, option: el, onClick: handleClickContextMenuItem, state: contextMenuState })); }))))))));
|
|
97
|
+
}
|
|
98
|
+
var S_SeeMoreButton = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: ", ";\n margin-left: ", ";\n position: relative;\n"], ["\n display: ", ";\n margin-left: ", ";\n position: relative;\n"])), function (_a) {
|
|
99
|
+
var isContextMenuOpen = _a.isContextMenuOpen;
|
|
100
|
+
return (isContextMenuOpen ? 'block' : 'none');
|
|
101
|
+
}, function (_a) {
|
|
102
|
+
var theme = _a.theme;
|
|
103
|
+
return theme.spacing.spacingA;
|
|
104
|
+
});
|
|
105
|
+
var S_BasicChatListItem = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n height: fit-content;\n min-height: 24px;\n max-width: 100%;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n\n ", ";\n\n :hover {\n ", " {\n display: ", ";\n }\n }\n"], ["\n display: flex;\n height: fit-content;\n min-height: 24px;\n max-width: 100%;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n\n ", ";\n\n :hover {\n ", " {\n display: ", ";\n }\n }\n"])), function (_a) {
|
|
106
|
+
var theme = _a.theme;
|
|
107
|
+
return theme.spacing.spacingA;
|
|
108
|
+
}, function (_a) {
|
|
109
|
+
var theme = _a.theme;
|
|
110
|
+
return theme.spacing.spacingE;
|
|
111
|
+
}, function (_a) {
|
|
112
|
+
var theme = _a.theme;
|
|
113
|
+
return theme.spacing.spacingD;
|
|
114
|
+
}, function (_a) {
|
|
115
|
+
var theme = _a.theme;
|
|
116
|
+
return theme.spacing.spacingA;
|
|
117
|
+
}, function (_a) {
|
|
118
|
+
var colorTheme = _a.colorTheme, theme = _a.theme;
|
|
119
|
+
return colorTheme && theme[backgroundColorTheme[colorTheme]];
|
|
120
|
+
}, S_SeeMoreButton, function (_a) {
|
|
121
|
+
var hoverBtnMode = _a.hoverBtnMode;
|
|
122
|
+
return hoverBtnMode === 'use' && 'block';
|
|
123
|
+
});
|
|
124
|
+
var S_ImageViewWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n height: 24px;\n margin-right: ", ";\n min-width: 24px;\n width: 24px;\n"], ["\n height: 24px;\n margin-right: ", ";\n min-width: 24px;\n width: 24px;\n"])), function (_a) {
|
|
125
|
+
var theme = _a.theme;
|
|
126
|
+
return theme.spacing.spacingB;
|
|
127
|
+
});
|
|
128
|
+
var S_ContentTextWrapper = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n flex: 1;\n margin-left: ", ";\n"], ["\n flex: 1;\n margin-left: ", ";\n"])), function (_a) {
|
|
129
|
+
var theme = _a.theme;
|
|
130
|
+
return theme.spacing.spacingC;
|
|
131
|
+
});
|
|
132
|
+
var S_ContextMenuWrapper = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n position: absolute;\n right: -4px;\n z-index: 10;\n"], ["\n position: absolute;\n right: -4px;\n z-index: 10;\n"])));
|
|
133
|
+
exports.default = BasicChatListItem;
|
|
134
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as BasicChatListItem } from './BasicChatListItem';
|
|
@@ -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.BasicChatListItem = void 0;
|
|
7
|
+
var BasicChatListItem_1 = require("./BasicChatListItem");
|
|
8
|
+
Object.defineProperty(exports, "BasicChatListItem", { enumerable: true, get: function () { return __importDefault(BasicChatListItem_1).default; } });
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { Props as ChatListProps } from './ChatList';
|
|
3
|
+
declare type Props = Pick<ChatListProps, 'scrollVisibleType' | 'children' | 'bodyBtnText'> & {
|
|
4
|
+
isSubmitted: boolean;
|
|
5
|
+
};
|
|
6
|
+
declare function Body({ scrollVisibleType, children, isSubmitted, bodyBtnText }: Props): JSX.Element;
|
|
7
|
+
export default Body;
|
|
@@ -0,0 +1,90 @@
|
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
var react_1 = __importStar(require("react"));
|
|
30
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
31
|
+
var MainButton_1 = require("../MainButton");
|
|
32
|
+
var useAutoScrollToBottom_1 = __importDefault(require("./useAutoScrollToBottom"));
|
|
33
|
+
function Body(_a) {
|
|
34
|
+
var scrollVisibleType = _a.scrollVisibleType, children = _a.children, isSubmitted = _a.isSubmitted, bodyBtnText = _a.bodyBtnText;
|
|
35
|
+
var _b = (0, react_1.useState)(false), isButtonShow = _b[0], setIsButtonShow = _b[1];
|
|
36
|
+
var _c = (0, useAutoScrollToBottom_1.default)(), triggerScrollToBottom = _c.triggerScrollToBottom, EndOfList = _c.EndOfList;
|
|
37
|
+
var scrollRef = (0, react_1.useRef)(null);
|
|
38
|
+
/**
|
|
39
|
+
* @when 스크롤하지 않은 상태에서 chatMessages가 업데이트 될 때마다
|
|
40
|
+
* @expected 채팅 리스트의 맨 밑으로 스크롤 내린다.
|
|
41
|
+
* @clear -
|
|
42
|
+
*/
|
|
43
|
+
(0, react_1.useEffect)(function () {
|
|
44
|
+
if (isButtonShow) {
|
|
45
|
+
if (isSubmitted) {
|
|
46
|
+
triggerScrollToBottom();
|
|
47
|
+
}
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
triggerScrollToBottom();
|
|
51
|
+
}, [children, isButtonShow, isSubmitted]);
|
|
52
|
+
var handleClickMBtn = function () {
|
|
53
|
+
triggerScrollToBottom();
|
|
54
|
+
};
|
|
55
|
+
var handleScroll = function () {
|
|
56
|
+
if (scrollRef.current) {
|
|
57
|
+
var _a = scrollRef.current, scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;
|
|
58
|
+
if (Math.ceil(scrollTop) + clientHeight === scrollHeight) {
|
|
59
|
+
setIsButtonShow(false);
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
setIsButtonShow(true);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
return (react_1.default.createElement(S_Body, null,
|
|
66
|
+
react_1.default.createElement(S_ChatMessageBox, { id: "chatMessageBox", onScroll: handleScroll, ref: scrollRef, scrollVisibleType: scrollVisibleType },
|
|
67
|
+
children,
|
|
68
|
+
react_1.default.createElement(EndOfList, null)),
|
|
69
|
+
isButtonShow && (react_1.default.createElement(S_BottomButtonWrapper, null,
|
|
70
|
+
react_1.default.createElement(MainButton_1.MainButton, { text: bodyBtnText, size: "small", onClick: handleClickMBtn })))));
|
|
71
|
+
}
|
|
72
|
+
var S_Body = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex: 1;\n overflow-x: hidden;\n overflow-y: hidden;\n position: relative;\n"], ["\n flex: 1;\n overflow-x: hidden;\n overflow-y: hidden;\n position: relative;\n"])));
|
|
73
|
+
var scrollVisibleStyle = (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ::-webkit-scrollbar {\n display: block;\n }\n"], ["\n ::-webkit-scrollbar {\n display: block;\n }\n"])));
|
|
74
|
+
var scrollHiddenStyle = (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n"], ["\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n ::-webkit-scrollbar {\n display: none;\n }\n"])));
|
|
75
|
+
var S_ChatMessageBox = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n height: 100%;\n overflow-y: auto;\n\n ", "\n"], ["\n height: 100%;\n overflow-y: auto;\n\n ", "\n"])), function (_a) {
|
|
76
|
+
var scrollVisibleType = _a.scrollVisibleType;
|
|
77
|
+
if (!scrollVisibleType || scrollVisibleType === 'moving') {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
return {
|
|
81
|
+
visible: scrollVisibleStyle,
|
|
82
|
+
hidden: scrollHiddenStyle
|
|
83
|
+
}[scrollVisibleType];
|
|
84
|
+
});
|
|
85
|
+
var S_BottomButtonWrapper = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n position: absolute;\n bottom: ", ";\n left: 50%;\n transform: translate(-50%, 0);\n"], ["\n position: absolute;\n bottom: ", ";\n left: 50%;\n transform: translate(-50%, 0);\n"])), function (_a) {
|
|
86
|
+
var theme = _a.theme;
|
|
87
|
+
return theme.spacing.spacingC;
|
|
88
|
+
});
|
|
89
|
+
exports.default = Body;
|
|
90
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FillIconNameKeys, LineIconNameKeys, PDSTextType } from '../../../common';
|
|
3
|
+
export declare type Props = {
|
|
4
|
+
styleTheme?: 'solid' | 'translucent' | 'transparent';
|
|
5
|
+
headerMode?: 'none' | 'use';
|
|
6
|
+
titleText?: PDSTextType;
|
|
7
|
+
captionText?: PDSTextType;
|
|
8
|
+
headerDisplayType?: 'none' | 'ibtn1';
|
|
9
|
+
iBtn1IconName?: FillIconNameKeys | LineIconNameKeys;
|
|
10
|
+
iBtn1IconFillType?: 'line' | 'fill';
|
|
11
|
+
children?: React.ReactNode;
|
|
12
|
+
textFieldState?: 'normal' | 'read_only' | 'disabled';
|
|
13
|
+
textFieldHintText?: PDSTextType;
|
|
14
|
+
textFieldDefaultText?: PDSTextType;
|
|
15
|
+
textFieldMaxLength?: number;
|
|
16
|
+
scrollVisibleType?: 'moving' | 'hidden' | 'visible';
|
|
17
|
+
footerChildren?: React.ReactNode;
|
|
18
|
+
submitBtnState?: 'disabled' | 'normal';
|
|
19
|
+
bodyBtnText?: PDSTextType;
|
|
20
|
+
onSubmit: (value: string) => void;
|
|
21
|
+
};
|
|
22
|
+
declare function ChatList({ styleTheme, headerMode, titleText, captionText, headerDisplayType, iBtn1IconName, iBtn1IconFillType, children, textFieldState, textFieldHintText, textFieldDefaultText, textFieldMaxLength, scrollVisibleType, footerChildren, submitBtnState, bodyBtnText, onSubmit }: Props): JSX.Element;
|
|
23
|
+
export default ChatList;
|
|
@@ -0,0 +1,93 @@
|
|
|
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 __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
var react_1 = __importStar(require("react"));
|
|
41
|
+
var react_hook_form_1 = require("react-hook-form");
|
|
42
|
+
var styled_components_1 = __importDefault(require("styled-components"));
|
|
43
|
+
var hybrid_1 = require("../../../hybrid");
|
|
44
|
+
var Body_1 = __importDefault(require("./Body"));
|
|
45
|
+
var Footer_1 = __importDefault(require("./Footer"));
|
|
46
|
+
var Header_1 = __importDefault(require("./Header"));
|
|
47
|
+
var baseBackgroundColors = {
|
|
48
|
+
solid: 'ui_cpnt_list_base_area_solid',
|
|
49
|
+
translucent: 'ui_cpnt_list_base_area_translucent',
|
|
50
|
+
transparent: 'ui_cpnt_list_base_area_translucent'
|
|
51
|
+
};
|
|
52
|
+
function ChatList(_a) {
|
|
53
|
+
var _b = _a.styleTheme, styleTheme = _b === void 0 ? 'solid' : _b, _c = _a.headerMode, headerMode = _c === void 0 ? 'use' : _c, titleText = _a.titleText, captionText = _a.captionText, _d = _a.headerDisplayType, headerDisplayType = _d === void 0 ? 'none' : _d, _e = _a.iBtn1IconName, iBtn1IconName = _e === void 0 ? 'ic_xmark' : _e, _f = _a.iBtn1IconFillType, iBtn1IconFillType = _f === void 0 ? 'line' : _f, children = _a.children, _g = _a.textFieldState, textFieldState = _g === void 0 ? 'normal' : _g, textFieldHintText = _a.textFieldHintText, textFieldDefaultText = _a.textFieldDefaultText, textFieldMaxLength = _a.textFieldMaxLength, _h = _a.scrollVisibleType, scrollVisibleType = _h === void 0 ? 'moving' : _h, footerChildren = _a.footerChildren, submitBtnState = _a.submitBtnState, bodyBtnText = _a.bodyBtnText, onSubmit = _a.onSubmit;
|
|
54
|
+
var methods = (0, react_hook_form_1.useForm)({
|
|
55
|
+
mode: 'onChange',
|
|
56
|
+
defaultValues: {
|
|
57
|
+
chat: ''
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
var reset = methods.reset, handleSubmit = methods.handleSubmit, control = methods.control, _j = methods.formState, isSubmitted = _j.isSubmitted, isDirty = _j.isDirty, isValid = _j.isValid;
|
|
61
|
+
var inputValue = (0, react_hook_form_1.useWatch)({ name: 'chat', control: control });
|
|
62
|
+
var isSubmitButtonActive = (0, react_1.useMemo)(function () {
|
|
63
|
+
if (!submitBtnState) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
return isDirty && isValid && inputValue.length > 0 && submitBtnState === 'normal';
|
|
67
|
+
}, [isDirty, isValid, inputValue, submitBtnState]);
|
|
68
|
+
var handleSubmitChat = function (_a) {
|
|
69
|
+
var chat = _a.chat;
|
|
70
|
+
if (!chat || !isSubmitButtonActive) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
onSubmit(chat);
|
|
74
|
+
reset({ chat: '' });
|
|
75
|
+
};
|
|
76
|
+
return (react_1.default.createElement(S_ChatList, { backgroundColor: baseBackgroundColors[styleTheme], id: "chatList" },
|
|
77
|
+
headerMode === 'use' && (react_1.default.createElement(react_1.default.Fragment, null,
|
|
78
|
+
react_1.default.createElement(Header_1.default, { styleTheme: styleTheme, titleText: titleText, captionText: captionText, headerDisplayType: headerDisplayType, iBtn1IconName: iBtn1IconName, iBtn1IconFillType: iBtn1IconFillType }),
|
|
79
|
+
react_1.default.createElement(hybrid_1.Divider, null))),
|
|
80
|
+
react_1.default.createElement(Body_1.default, { scrollVisibleType: scrollVisibleType, isSubmitted: isSubmitted, bodyBtnText: bodyBtnText }, children),
|
|
81
|
+
react_1.default.createElement(hybrid_1.Divider, null),
|
|
82
|
+
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_d" }),
|
|
83
|
+
react_1.default.createElement(react_hook_form_1.FormProvider, __assign({}, methods),
|
|
84
|
+
react_1.default.createElement("form", { onSubmit: handleSubmit(handleSubmitChat) },
|
|
85
|
+
react_1.default.createElement(Footer_1.default, { textFieldDefaultText: textFieldDefaultText, textFieldHintText: textFieldHintText, textFieldState: textFieldState, textFieldMaxLength: textFieldMaxLength, footerChildren: footerChildren, isSubmitBtnActive: isSubmitButtonActive }))),
|
|
86
|
+
react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_d" })));
|
|
87
|
+
}
|
|
88
|
+
var S_ChatList = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n display: flex;\n flex-direction: column;\n height: 100%;\n"], ["\n background-color: ", ";\n display: flex;\n flex-direction: column;\n height: 100%;\n"])), function (_a) {
|
|
89
|
+
var backgroundColor = _a.backgroundColor, theme = _a.theme;
|
|
90
|
+
return theme[backgroundColor];
|
|
91
|
+
});
|
|
92
|
+
exports.default = ChatList;
|
|
93
|
+
var templateObject_1;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { Props as ChatListProps } from './ChatList';
|
|
3
|
+
declare type Props = Pick<ChatListProps, 'textFieldDefaultText' | 'textFieldHintText' | 'textFieldState' | 'textFieldMaxLength'> & {
|
|
4
|
+
isSubmitBtnActive: boolean;
|
|
5
|
+
};
|
|
6
|
+
declare function ChatTextField({ textFieldDefaultText, textFieldHintText, textFieldState, textFieldMaxLength, isSubmitBtnActive }: Props): JSX.Element;
|
|
7
|
+
export default ChatTextField;
|
|
@@ -0,0 +1,41 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
var react_1 = __importDefault(require("react"));
|
|
11
|
+
var styled_components_1 = __importDefault(require("styled-components"));
|
|
12
|
+
var IconButton_1 = require("../IconButton");
|
|
13
|
+
var TextField_1 = require("../TextField");
|
|
14
|
+
function ChatTextField(_a) {
|
|
15
|
+
var textFieldDefaultText = _a.textFieldDefaultText, textFieldHintText = _a.textFieldHintText, textFieldState = _a.textFieldState, textFieldMaxLength = _a.textFieldMaxLength, isSubmitBtnActive = _a.isSubmitBtnActive;
|
|
16
|
+
var chatValidation = {
|
|
17
|
+
validate: function (value) {
|
|
18
|
+
if (!value)
|
|
19
|
+
return true;
|
|
20
|
+
return value.trim().length ? true : false;
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
24
|
+
react_1.default.createElement(S_FooterContentWrapper, null,
|
|
25
|
+
react_1.default.createElement(S_TextFieldWrapper, null,
|
|
26
|
+
react_1.default.createElement(TextField_1.TextField, { name: "chat", responsiveMode: "use", textLineType: "single", inputType: "text", hintText: textFieldHintText, defaultText: textFieldDefaultText, validation: chatValidation, maxLength: textFieldMaxLength, enterSubmitMode: "use", validationPoint: "onChange", state: textFieldState })),
|
|
27
|
+
react_1.default.createElement(IconButton_1.IconButton, { iconName: "ic_paper_plane", baseSize: "large", baseColorKey: "ui_cpnt_button_fill_base_transparent", iconColorKey: isSubmitBtnActive ? 'ui_cpnt_icon_sys_brandprimary' : 'ui_cpnt_button_icon_disabled', iconSize: 24, type: "submit", state: isSubmitBtnActive ? 'normal' : 'disabled' }))));
|
|
28
|
+
}
|
|
29
|
+
var S_FooterContentWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n align-items: center;\n display: flex;\n padding-left: ", ";\n padding-right: ", ";\n"], ["\n align-items: center;\n display: flex;\n padding-left: ", ";\n padding-right: ", ";\n"])), function (_a) {
|
|
30
|
+
var theme = _a.theme;
|
|
31
|
+
return theme.spacing.spacingE;
|
|
32
|
+
}, function (_a) {
|
|
33
|
+
var theme = _a.theme;
|
|
34
|
+
return theme.spacing.spacingC;
|
|
35
|
+
});
|
|
36
|
+
var S_TextFieldWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex: 1;\n margin-right: ", ";\n"], ["\n flex: 1;\n margin-right: ", ";\n"])), function (_a) {
|
|
37
|
+
var theme = _a.theme;
|
|
38
|
+
return theme.spacing.spacingB;
|
|
39
|
+
});
|
|
40
|
+
exports.default = ChatTextField;
|
|
41
|
+
var templateObject_1, templateObject_2;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { Props as ChatListProps } from './ChatList';
|
|
3
|
+
declare type Props = Pick<ChatListProps, 'footerChildren' | 'textFieldDefaultText' | 'textFieldHintText' | 'textFieldState' | 'textFieldMaxLength'> & {
|
|
4
|
+
isSubmitBtnActive: boolean;
|
|
5
|
+
};
|
|
6
|
+
declare function Footer({ footerChildren, textFieldDefaultText, textFieldHintText, textFieldState, textFieldMaxLength, isSubmitBtnActive }: Props): JSX.Element;
|
|
7
|
+
export default Footer;
|