pds-dev-kit-web-test 0.0.6 → 0.0.9

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 (193) hide show
  1. package/README.md +1 -1
  2. package/dist/index.d.ts +4 -4
  3. package/dist/index.js +9 -3
  4. package/dist/src/GlobalStyle.js +1 -1
  5. package/dist/src/common/assets/icons/line/Coins.d.ts +4 -0
  6. package/dist/src/common/assets/icons/line/Coins.js +34 -0
  7. package/dist/src/common/assets/icons/line/Ghost.d.ts +4 -0
  8. package/dist/src/common/assets/icons/line/Ghost.js +36 -0
  9. package/dist/src/common/assets/icons/line/Home.d.ts +4 -0
  10. package/dist/src/common/assets/icons/line/Home.js +36 -0
  11. package/dist/src/common/assets/icons/line/PaymentFreeTrial.d.ts +4 -0
  12. package/dist/src/common/assets/icons/line/PaymentFreeTrial.js +34 -0
  13. package/dist/src/common/assets/icons/line/PaymentOnetime.js +1 -1
  14. package/dist/src/common/assets/icons/line/PaymentRegularly.js +2 -1
  15. package/dist/src/common/assets/icons/line/PostColumn.d.ts +4 -0
  16. package/dist/src/common/assets/icons/line/PostColumn.js +34 -0
  17. package/dist/src/common/assets/icons/line/PostPaperPlane.d.ts +4 -0
  18. package/dist/src/common/assets/icons/line/PostPaperPlane.js +36 -0
  19. package/dist/src/common/assets/icons/line/index.d.ts +6 -0
  20. package/dist/src/common/assets/icons/line/index.js +12 -0
  21. package/dist/src/common/components/BoxLayout/Row.js +1 -1
  22. package/dist/src/common/components/Navigations/ContextTextLabelNav.d.ts +3 -2
  23. package/dist/src/common/components/Navigations/ContextTextLabelNav.js +10 -5
  24. package/dist/src/common/hooks/useDetectOverflow.js +1 -1
  25. package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +4 -1
  26. package/dist/src/common/styles/colorSet/PaletteColor_light.json +4 -1
  27. package/dist/src/common/styles/colorSet/UIColor.json +20 -1
  28. package/dist/src/common/styles/colorSet/index.d.ts +202 -177
  29. package/dist/src/common/styles/colorSet/index.js +3 -3
  30. package/dist/src/common/styles/colorSet/ui-type.d.ts +19 -0
  31. package/dist/src/common/styles/theme.js +8 -8
  32. package/dist/src/desktop/common/components/TextFieldBase/TextFieldBase.d.ts +2 -1
  33. package/dist/src/desktop/common/components/TextFieldBase/TextFieldBase.js +6 -6
  34. package/dist/src/desktop/components/AdminList/AdminList.d.ts +20 -11
  35. package/dist/src/desktop/components/AdminList/AdminList.js +5 -28
  36. package/dist/src/desktop/components/AdminList/BulkActionBar.d.ts +7 -1
  37. package/dist/src/desktop/components/AdminList/BulkActionBar.js +4 -4
  38. package/dist/src/desktop/components/AdminListHeader/HeaderBar.js +1 -1
  39. package/dist/src/desktop/components/AdminListItem/AdminListItem.d.ts +2 -2
  40. package/dist/src/desktop/components/BasicChatListItem/BasicChatListItem.d.ts +15 -0
  41. package/dist/src/desktop/components/BasicChatListItem/BasicChatListItem.js +121 -0
  42. package/dist/src/desktop/components/BasicChatListItem/Popup.d.ts +19 -0
  43. package/dist/src/desktop/components/BasicChatListItem/Popup.js +238 -0
  44. package/dist/src/desktop/components/BasicChatListItem/index.d.ts +1 -0
  45. package/dist/src/desktop/components/BasicChatListItem/index.js +8 -0
  46. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.d.ts +4 -1
  47. package/dist/src/desktop/components/BodyTextGroup/BodyTextGroup.js +4 -4
  48. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubble.d.ts +8 -0
  49. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubble.js +76 -0
  50. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.d.ts +17 -0
  51. package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.js +160 -0
  52. package/dist/src/desktop/components/ChatBubbleListItem/Popup.d.ts +19 -0
  53. package/dist/src/desktop/components/ChatBubbleListItem/Popup.js +238 -0
  54. package/dist/src/desktop/components/ChatBubbleListItem/index.d.ts +1 -0
  55. package/dist/src/desktop/components/ChatBubbleListItem/index.js +8 -0
  56. package/dist/src/desktop/components/ChatList/Body.d.ts +7 -0
  57. package/dist/src/desktop/components/ChatList/Body.js +108 -0
  58. package/dist/src/desktop/components/ChatList/ChatList.d.ts +45 -0
  59. package/dist/src/desktop/components/ChatList/ChatList.js +105 -0
  60. package/dist/src/desktop/components/ChatList/ChatTextField.d.ts +25 -0
  61. package/dist/src/desktop/components/ChatList/ChatTextField.js +59 -0
  62. package/dist/src/desktop/components/ChatList/Footer.d.ts +25 -0
  63. package/dist/src/desktop/components/ChatList/Footer.js +27 -0
  64. package/dist/src/desktop/components/ChatList/Header.d.ts +5 -0
  65. package/dist/src/desktop/components/ChatList/Header.js +53 -0
  66. package/dist/src/desktop/components/ChatList/index.d.ts +1 -0
  67. package/dist/src/desktop/components/ChatList/index.js +8 -0
  68. package/dist/src/desktop/components/ChatList/useAutoScrollToBottom.d.ts +10 -0
  69. package/dist/src/desktop/components/ChatList/useAutoScrollToBottom.js +53 -0
  70. package/dist/src/desktop/components/Chip/Chip.js +14 -14
  71. package/dist/src/desktop/components/ContextMenu/ContextMenu.d.ts +2 -1
  72. package/dist/src/desktop/components/ContextMenu/ContextMenu.js +14 -5
  73. package/dist/src/desktop/components/ContextMenuItem/ContextMenuItem.js +4 -4
  74. package/dist/src/desktop/components/DesktopTabBar/DesktopTabBar.js +41 -47
  75. package/dist/src/desktop/components/Dropdown/Dropdown.d.ts +3 -3
  76. package/dist/src/desktop/components/Dropdown/Dropdown.js +51 -19
  77. package/dist/src/desktop/components/DynamicDesktopNavBar/blocks/PrimaryMenu.js +1 -1
  78. package/dist/src/desktop/components/DynamicDesktopNavBar/blocks/SecondaryMenu.js +1 -1
  79. package/dist/src/desktop/components/DynamicDesktopNavBar/components/ContextMenuNavs/ContextMenuItemNav.js +5 -39
  80. package/dist/src/desktop/components/DynamicDesktopNavBar/components/IconNav.d.ts +2 -1
  81. package/dist/src/desktop/components/DynamicDesktopNavBar/components/IconNav.js +2 -2
  82. package/dist/src/desktop/components/DynamicDesktopNavBar/components/ImageIconNav.d.ts +2 -1
  83. package/dist/src/desktop/components/DynamicDesktopNavBar/components/ImageIconNav.js +2 -2
  84. package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/MenuItemNav.d.ts +1 -2
  85. package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/MenuItemNav.js +2 -2
  86. package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/components/InternalLinkMenuItemNav.d.ts +1 -2
  87. package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/components/InternalLinkMenuItemNav.js +4 -4
  88. package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/components/PAppMenuItemNav.d.ts +1 -2
  89. package/dist/src/desktop/components/DynamicDesktopNavBar/components/MenuItemNav/components/PAppMenuItemNav.js +1 -1
  90. package/dist/src/desktop/components/EditApplyTextField/EditApplyTextField.d.ts +2 -1
  91. package/dist/src/desktop/components/EditApplyTextField/EditApplyTextField.js +12 -11
  92. package/dist/src/desktop/components/FilterBar/FilterBar.js +1 -1
  93. package/dist/src/desktop/components/MainButton/MainButton.js +5 -5
  94. package/dist/src/desktop/components/Select/Select.d.ts +3 -2
  95. package/dist/src/desktop/components/Select/Select.js +11 -5
  96. package/dist/src/desktop/components/StatusBlock/StatusBlock.js +11 -5
  97. package/dist/src/desktop/components/TextButton/TextButton.js +5 -5
  98. package/dist/src/desktop/components/TextField/TextField.d.ts +3 -1
  99. package/dist/src/desktop/components/TextField/TextField.js +17 -11
  100. package/dist/src/desktop/components/UploadMainButton/UploadMainButton.js +7 -7
  101. package/dist/src/desktop/components/UploadTextButton/UploadTextButton.js +5 -5
  102. package/dist/src/desktop/components/UserDesktopNavBar/UserDesktopNavBar.js +4 -1
  103. package/dist/src/desktop/components/index.d.ts +4 -1
  104. package/dist/src/desktop/components/index.js +7 -1
  105. package/dist/src/desktop/index.d.ts +2 -2
  106. package/dist/src/desktop/index.js +5 -2
  107. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/ContentsContainer.d.ts +1 -1
  108. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/ContentsContainer.js +2 -1
  109. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFE.d.ts +2 -1
  110. package/dist/src/desktop/layout/LayoutWF/Containers/ContentsContainer/variation/WFE.js +41 -11
  111. package/dist/src/desktop/layout/LayoutWF/ContainersBox/ContainersBox.d.ts +1 -1
  112. package/dist/src/desktop/layout/LayoutWF/ContainersBox/ContainersBox.js +2 -0
  113. package/dist/src/desktop/layout/LayoutWS/Containers/ContentsContainer/ContentsContainer.d.ts +1 -1
  114. package/dist/src/desktop/layout/LayoutWS/Containers/ContentsContainer/ContentsContainer.js +2 -1
  115. package/dist/src/desktop/layout/LayoutWS/Containers/ContentsContainer/variation/WSG.d.ts +1 -1
  116. package/dist/src/desktop/layout/LayoutWS/Containers/ContentsContainer/variation/WSG.js +16 -10
  117. package/dist/src/desktop/layout/LayoutWS/ContainersBox/ContainersBox.d.ts +1 -1
  118. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/ContentsContainer.d.ts +1 -1
  119. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/ContentsContainer.js +9 -6
  120. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTN.d.ts +3 -2
  121. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTN.js +2 -2
  122. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTO.d.ts +3 -2
  123. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTO.js +8 -10
  124. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTP.d.ts +3 -2
  125. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTP.js +8 -10
  126. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTQ.js +5 -5
  127. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTT.d.ts +11 -0
  128. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTT.js +65 -0
  129. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTU.d.ts +13 -0
  130. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTU.js +96 -0
  131. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/index.d.ts +2 -0
  132. package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/index.js +5 -1
  133. package/dist/src/desktop/layout/LayoutWT/Containers/SubMenuContainer/variation/LeftSubMenu.js +1 -1
  134. package/dist/src/desktop/layout/LayoutWT/ContainersBox/ContainersBox.d.ts +1 -1
  135. package/dist/src/desktop/layout/LayoutWT/ContainersBox/ContainersBox.js +20 -11
  136. package/dist/src/desktop/panels/DesktopBasicModal/DesktopBasicModal.js +7 -4
  137. package/dist/src/hybrid/components/Divider/Divider.js +4 -1
  138. package/dist/src/hybrid/components/Spacing/Spacing.js +1 -1
  139. package/dist/src/mobile/common/components/TextFieldBase/TextFieldBase.d.ts +2 -1
  140. package/dist/src/mobile/common/components/TextFieldBase/TextFieldBase.js +6 -6
  141. package/dist/src/mobile/components/BasicChatListItem/BasicChatListItem.d.ts +15 -0
  142. package/dist/src/mobile/components/BasicChatListItem/BasicChatListItem.js +121 -0
  143. package/dist/src/mobile/components/BasicChatListItem/Popup.d.ts +19 -0
  144. package/dist/src/mobile/components/BasicChatListItem/Popup.js +238 -0
  145. package/dist/src/mobile/components/BasicChatListItem/index.d.ts +1 -0
  146. package/dist/src/mobile/components/BasicChatListItem/index.js +8 -0
  147. package/dist/src/mobile/components/BodyTextGroup/BodyTextGroup.d.ts +4 -1
  148. package/dist/src/mobile/components/BodyTextGroup/BodyTextGroup.js +4 -4
  149. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubble.d.ts +8 -0
  150. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubble.js +76 -0
  151. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.d.ts +17 -0
  152. package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.js +160 -0
  153. package/dist/src/mobile/components/ChatBubbleListItem/Popup.d.ts +19 -0
  154. package/dist/src/mobile/components/ChatBubbleListItem/Popup.js +238 -0
  155. package/dist/src/mobile/components/ChatBubbleListItem/index.d.ts +1 -0
  156. package/dist/src/mobile/components/ChatBubbleListItem/index.js +8 -0
  157. package/dist/src/mobile/components/ChatList/Body.d.ts +7 -0
  158. package/dist/src/mobile/components/ChatList/Body.js +109 -0
  159. package/dist/src/mobile/components/ChatList/ChatList.d.ts +45 -0
  160. package/dist/src/mobile/components/ChatList/ChatList.js +105 -0
  161. package/dist/src/mobile/components/ChatList/ChatTextField.d.ts +25 -0
  162. package/dist/src/mobile/components/ChatList/ChatTextField.js +59 -0
  163. package/dist/src/mobile/components/ChatList/Footer.d.ts +25 -0
  164. package/dist/src/mobile/components/ChatList/Footer.js +27 -0
  165. package/dist/src/mobile/components/ChatList/Header.d.ts +5 -0
  166. package/dist/src/mobile/components/ChatList/Header.js +53 -0
  167. package/dist/src/mobile/components/ChatList/index.d.ts +1 -0
  168. package/dist/src/mobile/components/ChatList/index.js +8 -0
  169. package/dist/src/mobile/components/ChatList/useAutoScrollToBottom.d.ts +10 -0
  170. package/dist/src/mobile/components/ChatList/useAutoScrollToBottom.js +53 -0
  171. package/dist/src/mobile/components/Chip/Chip.js +14 -14
  172. package/dist/src/mobile/components/ContextMenu/ContextMenu.d.ts +2 -1
  173. package/dist/src/mobile/components/ContextMenu/ContextMenu.js +14 -5
  174. package/dist/src/mobile/components/ContextMenuItem/ContextMenuItem.js +4 -4
  175. package/dist/src/mobile/components/Dropdown/Dropdown.d.ts +3 -3
  176. package/dist/src/mobile/components/Dropdown/Dropdown.js +51 -19
  177. package/dist/src/mobile/components/MainButton/MainButton.js +5 -5
  178. package/dist/src/mobile/components/MobileHeaderBar/MobileHeaderBar.d.ts +2 -1
  179. package/dist/src/mobile/components/MobileHeaderBar/MobileHeaderBar.js +23 -13
  180. package/dist/src/mobile/components/Select/Select.d.ts +3 -2
  181. package/dist/src/mobile/components/Select/Select.js +11 -5
  182. package/dist/src/mobile/components/StatusBlock/StatusBlock.js +4 -4
  183. package/dist/src/mobile/components/TextButton/TextButton.js +4 -4
  184. package/dist/src/mobile/components/TextField/TextField.d.ts +3 -1
  185. package/dist/src/mobile/components/TextField/TextField.js +17 -11
  186. package/dist/src/mobile/components/UploadMainButton/UploadMainButton.js +7 -7
  187. package/dist/src/mobile/components/UploadTextButton/UploadTextButton.js +5 -5
  188. package/dist/src/mobile/components/index.d.ts +4 -1
  189. package/dist/src/mobile/components/index.js +7 -1
  190. package/dist/src/mobile/index.d.ts +2 -2
  191. package/dist/src/mobile/index.js +4 -1
  192. package/package.json +1 -1
  193. package/release-note.md +4 -2
@@ -23,9 +23,15 @@ declare type Props = {
23
23
  column10HeaderText?: TFunctionResult;
24
24
  column10Width?: ColumnWidthType;
25
25
  dropdownMode?: 'none' | 'dropdown_amount1' | 'dropdown_amount2' | 'dropdown_amount3';
26
+ dropdown1Value?: PDSValueOption;
27
+ dropdown2Value?: PDSValueOption;
28
+ dropdown3Value?: PDSValueOption;
26
29
  dropdown1DefaultText?: PDSValueOption;
27
30
  dropdown2DefaultText?: PDSValueOption;
28
31
  dropdown3DefaultText?: PDSValueOption;
32
+ dropdown1HintText?: TFunctionResult;
33
+ dropdown2HintText?: TFunctionResult;
34
+ dropdown3HintText?: TFunctionResult;
29
35
  dropdown1ValueArray?: PDSValueOption[];
30
36
  dropdown2ValueArray?: PDSValueOption[];
31
37
  dropdown3ValueArray?: PDSValueOption[];
@@ -34,9 +40,6 @@ declare type Props = {
34
40
  quickActionBtn2Text?: TFunctionResult;
35
41
  quickActionBtn3Text?: TFunctionResult;
36
42
  quickActionBtnType?: 'hover' | 'fix';
37
- quickActionBtn1State?: 'normal' | 'disabled';
38
- quickActionBtn2State?: 'normal' | 'disabled';
39
- quickActionBtn3State?: 'normal' | 'disabled';
40
43
  tBtnMode?: 'none' | 'tbtn_amount1' | 'tbtn_amount2' | 'tbtn_amount3';
41
44
  tBtn1Text?: TFunctionResult;
42
45
  tBtn2Text?: TFunctionResult;
@@ -57,20 +60,26 @@ declare type Props = {
57
60
  onSelect?: (ids: number[]) => void;
58
61
  selectedIds?: number[];
59
62
  maintainIds?: number[];
60
- /** @deprecated tBtnMode를 대신 사용하세요. */
63
+ /** @deprecated in 1.6.0 AdminListItem의 quickActionBtn1State prop을 대신 사용하세요. */
64
+ quickActionBtn1State?: 'normal' | 'disabled';
65
+ /** @deprecated in 1.6.0 AdminListItem의 quickActionBtn2State prop을 대신 사용하세요. */
66
+ quickActionBtn2State?: 'normal' | 'disabled';
67
+ /** @deprecated in 1.6.0 AdminListItem의 quickActionBtn3State prop을 대신 사용하세요. */
68
+ quickActionBtn3State?: 'normal' | 'disabled';
69
+ /** @deprecated in 1.5.0 tBtnMode를 대신 사용하세요. */
61
70
  mBtnMode?: 'none' | 'mbtn_amount1' | 'mbtn_amount2' | 'mbtn_amount3';
62
- /** @deprecated tBtn1Text를 대신 사용하세요. */
71
+ /** @deprecated in 1.5.0 tBtn1Text를 대신 사용하세요. */
63
72
  mBtn1Text?: TFunctionResult;
64
- /** @deprecated tBtn2Text를 대신 사용하세요. */
73
+ /** @deprecated in 1.5.0 tBtn2Text를 대신 사용하세요. */
65
74
  mBtn2Text?: TFunctionResult;
66
- /** @deprecated tBtn3Text를 대신 사용하세요. */
75
+ /** @deprecated in 1.5.0 tBtn3Text를 대신 사용하세요. */
67
76
  mBtn3Text?: TFunctionResult;
68
- /** @deprecated onClickTBtn1를 대신 사용하세요. */
77
+ /** @deprecated in 1.5.0 onClickTBtn1를 대신 사용하세요. */
69
78
  onClickMBtn1?: () => void;
70
- /** @deprecated onClickTBtn2를 대신 사용하세요. */
79
+ /** @deprecated in 1.5.0 onClickTBtn2를 대신 사용하세요. */
71
80
  onClickMBtn2?: () => void;
72
- /** @deprecated onClickTBtn3를 대신 사용하세요. */
81
+ /** @deprecated in 1.5.0 onClickTBtn3를 대신 사용하세요. */
73
82
  onClickMBtn3?: () => void;
74
83
  };
75
- declare function AdminList({ selectionMode, headerRowMode, column2HeaderText, column3HeaderText, column3Width, column4HeaderText, column4Width, column5HeaderText, column5Width, column6HeaderText, column6Width, column7HeaderText, column7Width, column8HeaderText, column8Width, column9HeaderText, column9Width, column10HeaderText, column10Width, dropdownMode, dropdown1DefaultText, dropdown2DefaultText, dropdown3DefaultText, dropdown1ValueArray, dropdown2ValueArray, dropdown3ValueArray, quickActionBtnMode, quickActionBtn1Text, quickActionBtn2Text, quickActionBtn3Text, quickActionBtnType, quickActionBtn1State, quickActionBtn2State, quickActionBtn3State, tBtnMode, tBtn1Text, tBtn2Text, tBtn3Text, emptyText, scrollMode, scrollVisibleType, selectedIds, maintainIds, children, onChangeDropdown1, onChangeDropdown2, onChangeDropdown3, onClickTBtn1, onClickTBtn2, onClickTBtn3, onClickQuickActionBtn1, onClickQuickActionBtn2, onClickQuickActionBtn3, onSelect, mBtnMode, mBtn1Text, mBtn2Text, mBtn3Text, onClickMBtn1, onClickMBtn2, onClickMBtn3 }: Props): JSX.Element;
84
+ declare function AdminList({ selectionMode, headerRowMode, column2HeaderText, column3HeaderText, column3Width, column4HeaderText, column4Width, column5HeaderText, column5Width, column6HeaderText, column6Width, column7HeaderText, column7Width, column8HeaderText, column8Width, column9HeaderText, column9Width, column10HeaderText, column10Width, dropdownMode, dropdown1Value, dropdown2Value, dropdown3Value, dropdown1DefaultText, dropdown2DefaultText, dropdown3DefaultText, dropdown1HintText, dropdown2HintText, dropdown3HintText, dropdown1ValueArray, dropdown2ValueArray, dropdown3ValueArray, quickActionBtnMode, quickActionBtn1Text, quickActionBtn2Text, quickActionBtn3Text, quickActionBtnType, tBtnMode, tBtn1Text, tBtn2Text, tBtn3Text, emptyText, scrollMode, scrollVisibleType, selectedIds, maintainIds, children, onChangeDropdown1, onChangeDropdown2, onChangeDropdown3, onClickTBtn1, onClickTBtn2, onClickTBtn3, onClickQuickActionBtn1, onClickQuickActionBtn2, onClickQuickActionBtn3, onSelect, quickActionBtn1State, quickActionBtn2State, quickActionBtn3State, mBtnMode, mBtn1Text, mBtn2Text, mBtn3Text, onClickMBtn1, onClickMBtn2, onClickMBtn3 }: Props): JSX.Element;
76
85
  export default AdminList;
@@ -53,11 +53,11 @@ var TextLabel_1 = require("../TextLabel");
53
53
  var BulkActionBar_1 = __importDefault(require("./BulkActionBar"));
54
54
  var HeaderRow_1 = __importDefault(require("./HeaderRow"));
55
55
  function AdminList(_a) {
56
- var _b = _a.selectionMode, selectionMode = _b === void 0 ? 'multi' : _b, _c = _a.headerRowMode, headerRowMode = _c === void 0 ? 'use' : _c, column2HeaderText = _a.column2HeaderText, column3HeaderText = _a.column3HeaderText, _d = _a.column3Width, column3Width = _d === void 0 ? 'small' : _d, column4HeaderText = _a.column4HeaderText, _e = _a.column4Width, column4Width = _e === void 0 ? 'small' : _e, column5HeaderText = _a.column5HeaderText, _f = _a.column5Width, column5Width = _f === void 0 ? 'small' : _f, column6HeaderText = _a.column6HeaderText, _g = _a.column6Width, column6Width = _g === void 0 ? 'small' : _g, column7HeaderText = _a.column7HeaderText, _h = _a.column7Width, column7Width = _h === void 0 ? 'small' : _h, column8HeaderText = _a.column8HeaderText, _j = _a.column8Width, column8Width = _j === void 0 ? 'small' : _j, column9HeaderText = _a.column9HeaderText, _k = _a.column9Width, column9Width = _k === void 0 ? 'small' : _k, column10HeaderText = _a.column10HeaderText, _l = _a.column10Width, column10Width = _l === void 0 ? 'small' : _l, _m = _a.dropdownMode, dropdownMode = _m === void 0 ? 'dropdown_amount1' : _m, dropdown1DefaultText = _a.dropdown1DefaultText, dropdown2DefaultText = _a.dropdown2DefaultText, dropdown3DefaultText = _a.dropdown3DefaultText, dropdown1ValueArray = _a.dropdown1ValueArray, dropdown2ValueArray = _a.dropdown2ValueArray, dropdown3ValueArray = _a.dropdown3ValueArray, _o = _a.quickActionBtnMode, quickActionBtnMode = _o === void 0 ? 'btn_amount2' : _o, quickActionBtn1Text = _a.quickActionBtn1Text, quickActionBtn2Text = _a.quickActionBtn2Text, quickActionBtn3Text = _a.quickActionBtn3Text, _p = _a.quickActionBtnType, quickActionBtnType = _p === void 0 ? 'fix' : _p, _q = _a.quickActionBtn1State, quickActionBtn1State = _q === void 0 ? 'normal' : _q, _r = _a.quickActionBtn2State, quickActionBtn2State = _r === void 0 ? 'normal' : _r, _s = _a.quickActionBtn3State, quickActionBtn3State = _s === void 0 ? 'normal' : _s, tBtnMode = _a.tBtnMode, tBtn1Text = _a.tBtn1Text, tBtn2Text = _a.tBtn2Text, tBtn3Text = _a.tBtn3Text, emptyText = _a.emptyText, _t = _a.scrollMode, scrollMode = _t === void 0 ? 'infinite' : _t, _u = _a.scrollVisibleType, scrollVisibleType = _u === void 0 ? 'moving' : _u, selectedIds = _a.selectedIds, maintainIds = _a.maintainIds, children = _a.children, onChangeDropdown1 = _a.onChangeDropdown1, onChangeDropdown2 = _a.onChangeDropdown2, onChangeDropdown3 = _a.onChangeDropdown3, onClickTBtn1 = _a.onClickTBtn1, onClickTBtn2 = _a.onClickTBtn2, onClickTBtn3 = _a.onClickTBtn3, onClickQuickActionBtn1 = _a.onClickQuickActionBtn1, onClickQuickActionBtn2 = _a.onClickQuickActionBtn2, onClickQuickActionBtn3 = _a.onClickQuickActionBtn3, onSelect = _a.onSelect, _v = _a.mBtnMode, mBtnMode = _v === void 0 ? 'mbtn_amount1' : _v, mBtn1Text = _a.mBtn1Text, mBtn2Text = _a.mBtn2Text, mBtn3Text = _a.mBtn3Text, onClickMBtn1 = _a.onClickMBtn1, onClickMBtn2 = _a.onClickMBtn2, onClickMBtn3 = _a.onClickMBtn3;
56
+ var _b = _a.selectionMode, selectionMode = _b === void 0 ? 'multi' : _b, _c = _a.headerRowMode, headerRowMode = _c === void 0 ? 'use' : _c, column2HeaderText = _a.column2HeaderText, column3HeaderText = _a.column3HeaderText, _d = _a.column3Width, column3Width = _d === void 0 ? 'small' : _d, column4HeaderText = _a.column4HeaderText, _e = _a.column4Width, column4Width = _e === void 0 ? 'small' : _e, column5HeaderText = _a.column5HeaderText, _f = _a.column5Width, column5Width = _f === void 0 ? 'small' : _f, column6HeaderText = _a.column6HeaderText, _g = _a.column6Width, column6Width = _g === void 0 ? 'small' : _g, column7HeaderText = _a.column7HeaderText, _h = _a.column7Width, column7Width = _h === void 0 ? 'small' : _h, column8HeaderText = _a.column8HeaderText, _j = _a.column8Width, column8Width = _j === void 0 ? 'small' : _j, column9HeaderText = _a.column9HeaderText, _k = _a.column9Width, column9Width = _k === void 0 ? 'small' : _k, column10HeaderText = _a.column10HeaderText, _l = _a.column10Width, column10Width = _l === void 0 ? 'small' : _l, _m = _a.dropdownMode, dropdownMode = _m === void 0 ? 'dropdown_amount1' : _m, dropdown1Value = _a.dropdown1Value, dropdown2Value = _a.dropdown2Value, dropdown3Value = _a.dropdown3Value, dropdown1DefaultText = _a.dropdown1DefaultText, dropdown2DefaultText = _a.dropdown2DefaultText, dropdown3DefaultText = _a.dropdown3DefaultText, dropdown1HintText = _a.dropdown1HintText, dropdown2HintText = _a.dropdown2HintText, dropdown3HintText = _a.dropdown3HintText, dropdown1ValueArray = _a.dropdown1ValueArray, dropdown2ValueArray = _a.dropdown2ValueArray, dropdown3ValueArray = _a.dropdown3ValueArray, _o = _a.quickActionBtnMode, quickActionBtnMode = _o === void 0 ? 'btn_amount2' : _o, quickActionBtn1Text = _a.quickActionBtn1Text, quickActionBtn2Text = _a.quickActionBtn2Text, quickActionBtn3Text = _a.quickActionBtn3Text, _p = _a.quickActionBtnType, quickActionBtnType = _p === void 0 ? 'fix' : _p, tBtnMode = _a.tBtnMode, tBtn1Text = _a.tBtn1Text, tBtn2Text = _a.tBtn2Text, tBtn3Text = _a.tBtn3Text, emptyText = _a.emptyText, _q = _a.scrollMode, scrollMode = _q === void 0 ? 'infinite' : _q, _r = _a.scrollVisibleType, scrollVisibleType = _r === void 0 ? 'moving' : _r, selectedIds = _a.selectedIds, maintainIds = _a.maintainIds, children = _a.children, onChangeDropdown1 = _a.onChangeDropdown1, onChangeDropdown2 = _a.onChangeDropdown2, onChangeDropdown3 = _a.onChangeDropdown3, onClickTBtn1 = _a.onClickTBtn1, onClickTBtn2 = _a.onClickTBtn2, onClickTBtn3 = _a.onClickTBtn3, onClickQuickActionBtn1 = _a.onClickQuickActionBtn1, onClickQuickActionBtn2 = _a.onClickQuickActionBtn2, onClickQuickActionBtn3 = _a.onClickQuickActionBtn3, onSelect = _a.onSelect, quickActionBtn1State = _a.quickActionBtn1State, quickActionBtn2State = _a.quickActionBtn2State, quickActionBtn3State = _a.quickActionBtn3State, _s = _a.mBtnMode, mBtnMode = _s === void 0 ? 'mbtn_amount1' : _s, mBtn1Text = _a.mBtn1Text, mBtn2Text = _a.mBtn2Text, mBtn3Text = _a.mBtn3Text, onClickMBtn1 = _a.onClickMBtn1, onClickMBtn2 = _a.onClickMBtn2, onClickMBtn3 = _a.onClickMBtn3;
57
57
  var selectAllMethods = (0, react_hook_form_1.useForm)();
58
58
  var checkboxMethods = (0, react_hook_form_1.useForm)();
59
59
  var isAllCheckboxSelected = (0, react_hook_form_1.useWatch)({ name: 'all', control: selectAllMethods.control });
60
- var _w = (0, react_1.useState)(false), isBulkActionBarOpen = _w[0], setIsBulkActionBarOpen = _w[1];
60
+ var _t = (0, react_1.useState)(false), isBulkActionBarOpen = _t[0], setIsBulkActionBarOpen = _t[1];
61
61
  /**
62
62
  * @when AdminListItem이 선택되었을 때
63
63
  * @expected 벌크액션바 활성화 여부와 체크박스 선택 여부를 결정합니다.
@@ -155,30 +155,7 @@ function AdminList(_a) {
155
155
  }, [selectedIds, maintainIds]);
156
156
  var childrenWithWidthProps = react_1.default.Children.map(children, function (child) {
157
157
  if (react_1.default.isValidElement(child)) {
158
- return react_1.default.cloneElement(child, {
159
- column3TextWidth: column3Width,
160
- column4TextWidth: column4Width,
161
- column5TextWidth: column5Width,
162
- column6TextWidth: column6Width,
163
- column7TextWidth: column7Width,
164
- column8TextWidth: column8Width,
165
- column9TextWidth: column9Width,
166
- column10TextWidth: column10Width,
167
- quickActionBtnType: quickActionBtnType,
168
- quickActionBtnMode: quickActionBtnMode,
169
- quickActionBtn1Text: quickActionBtn1Text,
170
- quickActionBtn2Text: quickActionBtn2Text,
171
- quickActionBtn3Text: quickActionBtn3Text,
172
- quickActionBtn1State: quickActionBtn1State,
173
- quickActionBtn2State: quickActionBtn2State,
174
- quickActionBtn3State: quickActionBtn3State,
175
- onClickQuickActionBtn1: onClickQuickActionBtn1,
176
- onClickQuickActionBtn2: onClickQuickActionBtn2,
177
- onClickQuickActionBtn3: onClickQuickActionBtn3,
178
- selectionMode: selectionMode,
179
- onClickItem: handleSelectItem,
180
- selectedState: (maintainIds === null || maintainIds === void 0 ? void 0 : maintainIds.includes(child.props.id)) ? 'maintain' : 'basic'
181
- });
158
+ return react_1.default.cloneElement(child, __assign(__assign(__assign({ column3TextWidth: column3Width, column4TextWidth: column4Width, column5TextWidth: column5Width, column6TextWidth: column6Width, column7TextWidth: column7Width, column8TextWidth: column8Width, column9TextWidth: column9Width, column10TextWidth: column10Width, quickActionBtnType: quickActionBtnType, quickActionBtnMode: quickActionBtnMode, quickActionBtn1Text: quickActionBtn1Text, quickActionBtn2Text: quickActionBtn2Text, quickActionBtn3Text: quickActionBtn3Text, onClickQuickActionBtn1: onClickQuickActionBtn1, onClickQuickActionBtn2: onClickQuickActionBtn2, onClickQuickActionBtn3: onClickQuickActionBtn3, selectionMode: selectionMode, onClickItem: handleSelectItem, selectedState: (maintainIds === null || maintainIds === void 0 ? void 0 : maintainIds.includes(child.props.id)) ? 'maintain' : 'basic' }, (quickActionBtn1State && { quickActionBtn1State: quickActionBtn1State })), (quickActionBtn2State && { quickActionBtn2State: quickActionBtn2State })), (quickActionBtn3State && { quickActionBtn3State: quickActionBtn3State })));
182
159
  }
183
160
  return child;
184
161
  });
@@ -202,7 +179,7 @@ function AdminList(_a) {
202
179
  }
203
180
  };
204
181
  return (react_1.default.createElement(S_AdminList, null,
205
- isBulkActionBarOpen && (react_1.default.createElement(BulkActionBar_1.default, { itemCount: totalItemCount, dropdownMode: dropdownMode, dropdown1DefaultText: dropdown1DefaultText, dropdown2DefaultText: dropdown2DefaultText, dropdown3DefaultText: dropdown3DefaultText, dropdown1ValueArray: dropdown1ValueArray, dropdown2ValueArray: dropdown2ValueArray, dropdown3ValueArray: dropdown3ValueArray, tBtnMode: btnMode(), tBtn1Text: tBtn1Text || mBtn1Text, tBtn2Text: tBtn2Text || mBtn2Text, tBtn3Text: tBtn3Text || mBtn3Text, onChangeDropdown1: onChangeDropdown1, onChangeDropdown2: onChangeDropdown2, onChangeDropdown3: onChangeDropdown3, onClickTBtn1: onClickTBtn1 || onClickMBtn1, onClickTBtn2: onClickTBtn2 || onClickMBtn2, onClickTBtn3: onClickTBtn3 || onClickMBtn3 })),
182
+ isBulkActionBarOpen && (react_1.default.createElement(BulkActionBar_1.default, { itemCount: totalItemCount, dropdownMode: dropdownMode, dropdown1Value: dropdown1Value, dropdown2Value: dropdown2Value, dropdown3Value: dropdown3Value, dropdown1DefaultText: dropdown1DefaultText, dropdown2DefaultText: dropdown2DefaultText, dropdown3DefaultText: dropdown3DefaultText, dropdown1HintText: dropdown1HintText, dropdown2HintText: dropdown2HintText, dropdown3HintText: dropdown3HintText, dropdown1ValueArray: dropdown1ValueArray, dropdown2ValueArray: dropdown2ValueArray, dropdown3ValueArray: dropdown3ValueArray, tBtnMode: btnMode(), tBtn1Text: tBtn1Text || mBtn1Text, tBtn2Text: tBtn2Text || mBtn2Text, tBtn3Text: tBtn3Text || mBtn3Text, onChangeDropdown1: onChangeDropdown1, onChangeDropdown2: onChangeDropdown2, onChangeDropdown3: onChangeDropdown3, onClickTBtn1: onClickTBtn1 || onClickMBtn1, onClickTBtn2: onClickTBtn2 || onClickMBtn2, onClickTBtn3: onClickTBtn3 || onClickMBtn3 })),
206
183
  headerRowMode === 'use' && (react_1.default.createElement(react_hook_form_1.FormProvider, __assign({}, selectAllMethods),
207
184
  react_1.default.createElement("form", null,
208
185
  react_1.default.createElement(HeaderRow_1.default, { selectionMode: selectionMode, column2HeaderText: column2HeaderText, column3HeaderText: column3HeaderText, column3HeaderWidth: column3Width, column4HeaderText: column4HeaderText, column4HeaderWidth: column4Width, column5HeaderText: column5HeaderText, column5HeaderWidth: column5Width, column6HeaderText: column6HeaderText, column6HeaderWidth: column6Width, column7HeaderText: column7HeaderText, column7HeaderWidth: column7Width, column8HeaderText: column8HeaderText, column8HeaderWidth: column8Width, column9HeaderText: column9HeaderText, column9HeaderWidth: column9Width, column10HeaderText: column10HeaderText, column10HeaderWidth: column10Width, quickActionBtnType: quickActionBtnType, quickActionButtonCount: getActionButtonCount(), onClickSelectAllCheckbox: handleSelectAllCheckbox })))),
@@ -236,6 +213,6 @@ var S_ScrollBox = styled_components_1.default.div(templateObject_4 || (templateO
236
213
  }
237
214
  }
238
215
  });
239
- var S_EmptyTextWrapper = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n padding-top: 88px;\n"], ["\n padding-top: 88px;\n"])));
216
+ var S_EmptyTextWrapper = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n padding-top: 88px;\n padding-bottom: 88px;\n"], ["\n padding-top: 88px;\n padding-bottom: 88px;\n"])));
240
217
  exports.default = AdminList;
241
218
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
@@ -4,9 +4,15 @@ import { PDSValueOption } from '../../../common';
4
4
  declare type Props = {
5
5
  itemCount?: number;
6
6
  dropdownMode: 'none' | 'dropdown_amount1' | 'dropdown_amount2' | 'dropdown_amount3';
7
+ dropdown1Value?: PDSValueOption;
8
+ dropdown2Value?: PDSValueOption;
9
+ dropdown3Value?: PDSValueOption;
7
10
  dropdown1DefaultText?: PDSValueOption;
8
11
  dropdown2DefaultText?: PDSValueOption;
9
12
  dropdown3DefaultText?: PDSValueOption;
13
+ dropdown1HintText?: TFunctionResult;
14
+ dropdown2HintText?: TFunctionResult;
15
+ dropdown3HintText?: TFunctionResult;
10
16
  dropdown1ValueArray?: PDSValueOption[];
11
17
  dropdown2ValueArray?: PDSValueOption[];
12
18
  dropdown3ValueArray?: PDSValueOption[];
@@ -21,5 +27,5 @@ declare type Props = {
21
27
  onClickTBtn2?: () => void;
22
28
  onClickTBtn3?: () => void;
23
29
  };
24
- declare function BulkActionBar({ itemCount, dropdownMode, dropdown1DefaultText, dropdown2DefaultText, dropdown3DefaultText, dropdown1ValueArray, dropdown2ValueArray, dropdown3ValueArray, tBtnMode, tBtn1Text, tBtn2Text, tBtn3Text, onChangeDropdown1, onChangeDropdown2, onChangeDropdown3, onClickTBtn1, onClickTBtn2, onClickTBtn3 }: Props): JSX.Element;
30
+ declare function BulkActionBar({ itemCount, dropdownMode, dropdown1Value, dropdown2Value, dropdown3Value, dropdown1DefaultText, dropdown2DefaultText, dropdown3DefaultText, dropdown1HintText, dropdown2HintText, dropdown3HintText, dropdown1ValueArray, dropdown2ValueArray, dropdown3ValueArray, tBtnMode, tBtn1Text, tBtn2Text, tBtn3Text, onChangeDropdown1, onChangeDropdown2, onChangeDropdown3, onClickTBtn1, onClickTBtn2, onClickTBtn3 }: Props): JSX.Element;
25
31
  export default BulkActionBar;
@@ -15,7 +15,7 @@ var Dropdown_1 = require("../Dropdown");
15
15
  var TextButton_1 = require("../TextButton");
16
16
  var TextLabel_1 = require("../TextLabel");
17
17
  function BulkActionBar(_a) {
18
- var _b = _a.itemCount, itemCount = _b === void 0 ? 1 : _b, _c = _a.dropdownMode, dropdownMode = _c === void 0 ? 'dropdown_amount1' : _c, dropdown1DefaultText = _a.dropdown1DefaultText, dropdown2DefaultText = _a.dropdown2DefaultText, dropdown3DefaultText = _a.dropdown3DefaultText, dropdown1ValueArray = _a.dropdown1ValueArray, dropdown2ValueArray = _a.dropdown2ValueArray, dropdown3ValueArray = _a.dropdown3ValueArray, tBtnMode = _a.tBtnMode, tBtn1Text = _a.tBtn1Text, tBtn2Text = _a.tBtn2Text, tBtn3Text = _a.tBtn3Text, onChangeDropdown1 = _a.onChangeDropdown1, onChangeDropdown2 = _a.onChangeDropdown2, onChangeDropdown3 = _a.onChangeDropdown3, onClickTBtn1 = _a.onClickTBtn1, onClickTBtn2 = _a.onClickTBtn2, onClickTBtn3 = _a.onClickTBtn3;
18
+ var _b = _a.itemCount, itemCount = _b === void 0 ? 1 : _b, _c = _a.dropdownMode, dropdownMode = _c === void 0 ? 'dropdown_amount1' : _c, dropdown1Value = _a.dropdown1Value, dropdown2Value = _a.dropdown2Value, dropdown3Value = _a.dropdown3Value, dropdown1DefaultText = _a.dropdown1DefaultText, dropdown2DefaultText = _a.dropdown2DefaultText, dropdown3DefaultText = _a.dropdown3DefaultText, dropdown1HintText = _a.dropdown1HintText, dropdown2HintText = _a.dropdown2HintText, dropdown3HintText = _a.dropdown3HintText, dropdown1ValueArray = _a.dropdown1ValueArray, dropdown2ValueArray = _a.dropdown2ValueArray, dropdown3ValueArray = _a.dropdown3ValueArray, tBtnMode = _a.tBtnMode, tBtn1Text = _a.tBtn1Text, tBtn2Text = _a.tBtn2Text, tBtn3Text = _a.tBtn3Text, onChangeDropdown1 = _a.onChangeDropdown1, onChangeDropdown2 = _a.onChangeDropdown2, onChangeDropdown3 = _a.onChangeDropdown3, onClickTBtn1 = _a.onClickTBtn1, onClickTBtn2 = _a.onClickTBtn2, onClickTBtn3 = _a.onClickTBtn3;
19
19
  var t = (0, react_i18next_1.useTranslation)('translation').t;
20
20
  return (react_1.default.createElement(S_BulkActionBar, null,
21
21
  react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_e", spacingType: "width" }),
@@ -27,14 +27,14 @@ function BulkActionBar(_a) {
27
27
  react_1.default.createElement(hybrid_1.Divider, { direction: "vertical", height: 16 }),
28
28
  react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_e", spacingType: "width" }),
29
29
  dropdownMode !== 'none' && (react_1.default.createElement(react_1.default.Fragment, null,
30
- dropdown1ValueArray && (react_1.default.createElement(Dropdown_1.Dropdown, { valueArray: dropdown1ValueArray, defaultValue: dropdown1DefaultText, onChange: onChangeDropdown1, size: "small", colorTheme: "dark" })),
30
+ dropdown1ValueArray && (react_1.default.createElement(Dropdown_1.Dropdown, { valueArray: dropdown1ValueArray, defaultValue: dropdown1DefaultText, hintText: dropdown1HintText, value: dropdown1Value, onChange: onChangeDropdown1, size: "small", colorTheme: "dark" })),
31
31
  (dropdownMode === 'dropdown_amount2' || dropdownMode === 'dropdown_amount3') &&
32
32
  dropdown2ValueArray && (react_1.default.createElement(react_1.default.Fragment, null,
33
33
  react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
34
- react_1.default.createElement(Dropdown_1.Dropdown, { valueArray: dropdown2ValueArray, defaultValue: dropdown2DefaultText, onChange: onChangeDropdown2, size: "small", colorTheme: "dark" }))),
34
+ react_1.default.createElement(Dropdown_1.Dropdown, { valueArray: dropdown2ValueArray, defaultValue: dropdown2DefaultText, hintText: dropdown2HintText, value: dropdown2Value, onChange: onChangeDropdown2, size: "small", colorTheme: "dark" }))),
35
35
  dropdownMode === 'dropdown_amount3' && dropdown3ValueArray && (react_1.default.createElement(react_1.default.Fragment, null,
36
36
  react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
37
- react_1.default.createElement(Dropdown_1.Dropdown, { valueArray: dropdown3ValueArray, defaultValue: dropdown3DefaultText, onChange: onChangeDropdown3, size: "small", colorTheme: "dark" }))))),
37
+ react_1.default.createElement(Dropdown_1.Dropdown, { valueArray: dropdown3ValueArray, defaultValue: dropdown3DefaultText, hintText: dropdown3HintText, value: dropdown3Value, onChange: onChangeDropdown3, size: "small", colorTheme: "dark" }))))),
38
38
  tBtnMode !== 'none' && (react_1.default.createElement(react_1.default.Fragment, null,
39
39
  react_1.default.createElement(hybrid_1.Spacing, { size: "spacing_b", spacingType: "width" }),
40
40
  react_1.default.createElement(TextButton_1.TextButton, { size: "small", text: tBtn1Text, onClick: onClickTBtn1, colorTheme: "white" }),
@@ -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" }),
@@ -3,7 +3,7 @@ import { TFunctionResult } from 'i18next';
3
3
  import { PDSTextType } from '../../../common';
4
4
  declare type ColumnWidthType = 'small' | 'medium' | 'large';
5
5
  declare type ColumnTextType = 'normal' | 'active' | 'inactive' | 'report';
6
- declare type Props = {
6
+ export declare type AdminListItemProps = {
7
7
  rowSize?: 'high' | 'medium' | 'low';
8
8
  selectionMode?: 'none' | 'single' | 'multi';
9
9
  column2Type?: 'image_text' | 'text_only';
@@ -51,5 +51,5 @@ declare type Props = {
51
51
  onClickQuickActionBtn3?: (id: number) => void;
52
52
  onClickItem?: (id: number) => void;
53
53
  };
54
- declare function AdminListItem({ rowSize, selectionMode, column2Type, imageSrc, imageShapeType, imageRadius, imageRatio, column2Text, column3Text, column3TextWidth, column3TextStyleTheme, column4Text, column4TextWidth, column4TextStyleTheme, column5Text, column5TextWidth, column5TextStyleTheme, column6Text, column6TextWidth, column6TextStyleTheme, column7Text, column7TextWidth, column7TextStyleTheme, column8Text, column8TextWidth, column8TextStyleTheme, column9Text, column9TextWidth, column9TextStyleTheme, column10Text, column10TextWidth, column10TextStyleTheme, quickActionBtnMode, quickActionBtn1Text, quickActionBtn2Text, quickActionBtn3Text, quickActionBtnType, quickActionBtn1State, quickActionBtn2State, quickActionBtn3State, selectedState, id, onClickQuickActionBtn1, onClickQuickActionBtn2, onClickQuickActionBtn3, onClickItem }: Props): JSX.Element;
54
+ declare function AdminListItem({ rowSize, selectionMode, column2Type, imageSrc, imageShapeType, imageRadius, imageRatio, column2Text, column3Text, column3TextWidth, column3TextStyleTheme, column4Text, column4TextWidth, column4TextStyleTheme, column5Text, column5TextWidth, column5TextStyleTheme, column6Text, column6TextWidth, column6TextStyleTheme, column7Text, column7TextWidth, column7TextStyleTheme, column8Text, column8TextWidth, column8TextStyleTheme, column9Text, column9TextWidth, column9TextStyleTheme, column10Text, column10TextWidth, column10TextStyleTheme, quickActionBtnMode, quickActionBtn1Text, quickActionBtn2Text, quickActionBtn3Text, quickActionBtnType, quickActionBtn1State, quickActionBtn2State, quickActionBtn3State, selectedState, id, onClickQuickActionBtn1, onClickQuickActionBtn2, onClickQuickActionBtn3, onClickItem }: AdminListItemProps): JSX.Element;
55
55
  export default AdminListItem;
@@ -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
+ hoverMode?: 'none' | 'use';
9
+ contextMenuOptionArray?: PDSValueOption[];
10
+ contextMenuState?: 'normal' | 'disabled';
11
+ colorTheme?: 'seller' | 'subscriber';
12
+ onClickContextMenuItem?: (option: PDSValueOption) => void;
13
+ };
14
+ declare function BasicChatListItem({ titleText, contentText, leftImageMode, imageSrc, hoverMode, contextMenuOptionArray, onClickContextMenuItem, contextMenuState, colorTheme }: Props): JSX.Element;
15
+ export default BasicChatListItem;
@@ -0,0 +1,121 @@
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 Popup_1 = require("./Popup");
37
+ var titleTextColors = {
38
+ seller: 'usrTextBrandPrimary',
39
+ subscriber: 'sysTextSecondary'
40
+ };
41
+ var backgroundColorTheme = {
42
+ seller: 'ui_cpnt_list_base_area_seller',
43
+ subscriber: 'ui_cpnt_list_base_area'
44
+ };
45
+ function BasicChatListItem(_a) {
46
+ var titleText = _a.titleText, contentText = _a.contentText, _b = _a.leftImageMode, leftImageMode = _b === void 0 ? 'none' : _b, imageSrc = _a.imageSrc, _c = _a.hoverMode, hoverMode = _c === void 0 ? 'use' : _c, contextMenuOptionArray = _a.contextMenuOptionArray, onClickContextMenuItem = _a.onClickContextMenuItem, _d = _a.contextMenuState, contextMenuState = _d === void 0 ? 'normal' : _d, _e = _a.colorTheme, colorTheme = _e === void 0 ? 'subscriber' : _e;
47
+ var _f = (0, react_1.useState)(false), isContextMenuOpen = _f[0], setIsContextMenuOpen = _f[1];
48
+ var contextMenuRef = (0, react_1.useRef)(null);
49
+ var chatBody = document.querySelector('#chatMessageBox');
50
+ var rect = chatBody === null || chatBody === void 0 ? void 0 : chatBody.getBoundingClientRect();
51
+ /**
52
+ * @when contextMenu가 열려 있을 때
53
+ * @expected ChatList body의 스크롤을 숨기고, contextMenu의 외부를 클릭하면 contextMenu가 닫히도록 합니다.
54
+ * @clear document의 클릭 이벤트를 제거합니다.
55
+ */
56
+ (0, react_1.useEffect)(function () {
57
+ // NOTE pop up 개념이 생기기 전까지의 임시 조치 방법입니다.
58
+ if (!chatBody) {
59
+ return;
60
+ }
61
+ chatBody.style.overflowY = isContextMenuOpen ? 'hidden' : 'auto';
62
+ }, [isContextMenuOpen, chatBody]);
63
+ var handleMoreButtonClick = function (e) {
64
+ e.stopPropagation();
65
+ setIsContextMenuOpen(function (prev) { return !prev; });
66
+ };
67
+ var handleContextMenuItemClick = function (option) {
68
+ if (onClickContextMenuItem) {
69
+ onClickContextMenuItem(option);
70
+ }
71
+ setIsContextMenuOpen(false);
72
+ };
73
+ return (react_1.default.createElement(react_1.default.Fragment, null,
74
+ react_1.default.createElement(S_BasicChatListItem, { colorTheme: colorTheme },
75
+ leftImageMode === 'use' && (react_1.default.createElement(S_ImageViewWrapper, null,
76
+ react_1.default.createElement(hybrid_1.ImageView, { shapeType: "circular", ratio: "1_1", scaleType: "cover", src: imageSrc, width: "responsive" }))),
77
+ react_1.default.createElement(TextLabel_1.TextLabel, { text: titleText, styleTheme: "caption1Bold", colorTheme: titleTextColors[colorTheme] }),
78
+ react_1.default.createElement(S_ContentTextWrapper, null,
79
+ react_1.default.createElement(TextLabel_1.TextLabel, { text: contentText, styleTheme: "caption1Regular", colorTheme: "sysTextPrimary", wordBreak: "break_all" })),
80
+ hoverMode === 'use' && (react_1.default.createElement(S_SeeMoreButton, { isContextMenuOpen: isContextMenuOpen, hoverMode: hoverMode, ref: contextMenuRef },
81
+ 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_enabled", onClick: handleMoreButtonClick }))),
82
+ react_1.default.createElement(Popup_1.PopupProvider, null,
83
+ react_1.default.createElement(Popup_1.Popup, { targetRef: contextMenuRef, isOpen: isContextMenuOpen, placement: "v-auto", wrapperHeight: rect === null || rect === void 0 ? void 0 : rect.height, onClickOutside: function () { return setIsContextMenuOpen(false); } },
84
+ 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: handleContextMenuItemClick, state: contextMenuState })); })))))));
85
+ }
86
+ var S_BasicChatListItem = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n display: flex;\n height: fit-content;\n max-width: 100%;\n min-height: 24px;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n"], ["\n background-color: ", ";\n display: flex;\n height: fit-content;\n max-width: 100%;\n min-height: 24px;\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n"])), function (_a) {
87
+ var colorTheme = _a.colorTheme, theme = _a.theme;
88
+ return colorTheme && theme[backgroundColorTheme[colorTheme]];
89
+ }, function (_a) {
90
+ var theme = _a.theme;
91
+ return theme.spacing.spacingA;
92
+ }, function (_a) {
93
+ var theme = _a.theme;
94
+ return theme.spacing.spacingE;
95
+ }, function (_a) {
96
+ var theme = _a.theme;
97
+ return theme.spacing.spacingD;
98
+ }, function (_a) {
99
+ var theme = _a.theme;
100
+ return theme.spacing.spacingA;
101
+ });
102
+ var S_ImageViewWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __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) {
103
+ var theme = _a.theme;
104
+ return theme.spacing.spacingB;
105
+ });
106
+ var S_ContentTextWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n flex: 1;\n margin-left: ", ";\n"], ["\n flex: 1;\n margin-left: ", ";\n"])), function (_a) {
107
+ var theme = _a.theme;
108
+ return theme.spacing.spacingC;
109
+ });
110
+ var S_SeeMoreButton = styled_components_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n margin-left: ", ";\n position: relative;\n opacity: ", ";\n\n ", ":hover & {\n opacity: ", ";\n }\n"], ["\n margin-left: ", ";\n position: relative;\n opacity: ", ";\n\n ", ":hover & {\n opacity: ", ";\n }\n"])), function (_a) {
111
+ var theme = _a.theme;
112
+ return theme.spacing.spacingA;
113
+ }, function (_a) {
114
+ var isContextMenuOpen = _a.isContextMenuOpen;
115
+ return (isContextMenuOpen ? '1' : '0');
116
+ }, S_BasicChatListItem, function (_a) {
117
+ var hoverMode = _a.hoverMode;
118
+ return hoverMode === 'use' && '1';
119
+ });
120
+ exports.default = BasicChatListItem;
121
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
@@ -0,0 +1,19 @@
1
+ import React, { MutableRefObject } from 'react';
2
+ declare type Props = {
3
+ targetRef: MutableRefObject<HTMLElement | null>;
4
+ isOpen: boolean;
5
+ onClickOutside?: () => void;
6
+ onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;
7
+ placement: string;
8
+ wrapperHeight?: number;
9
+ children: React.ReactNode;
10
+ };
11
+ declare function Popup({ targetRef, isOpen, onClickOutside, onClick, placement, wrapperHeight, children }: Props): JSX.Element;
12
+ /**
13
+ * 팝업 루트 프로바이더
14
+ * 팝업을 사용하기 위해서는 팝업 프로바이더가 상위 컴포넌트로 있어야 합니다.
15
+ */
16
+ declare function PopupProvider({ children }: {
17
+ children: React.ReactNode;
18
+ }): JSX.Element;
19
+ export { PopupProvider, Popup };
@@ -0,0 +1,238 @@
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
+ exports.Popup = exports.PopupProvider = void 0;
30
+ var react_1 = __importStar(require("react"));
31
+ var react_dom_1 = require("react-dom");
32
+ var styled_components_1 = __importDefault(require("styled-components"));
33
+ var PopupContext = (0, react_1.createContext)({
34
+ current: null
35
+ });
36
+ function getHAutoPlacement(_a) {
37
+ var targetRect = _a.targetRect, popupRect = _a.popupRect;
38
+ var leftSpaced = targetRect.right + popupRect.width > window.innerWidth;
39
+ var topSpaced = targetRect.bottom + popupRect.height > window.innerHeight;
40
+ return (leftSpaced ? 'left' : 'right') + "-" + (topSpaced ? 'end' : 'start');
41
+ }
42
+ function getVAutoPlacement(_a) {
43
+ var targetRect = _a.targetRect, popupRect = _a.popupRect, wrapperHeight = _a.wrapperHeight;
44
+ var leftSpaced = targetRect.right + popupRect.width > window.innerWidth;
45
+ var topSpaced = targetRect.bottom + popupRect.height > (wrapperHeight || window.innerWidth);
46
+ return (topSpaced ? 'top' : 'bottom') + "-" + (leftSpaced ? 'end' : 'start');
47
+ }
48
+ function getVCenterPlacement(_a) {
49
+ var targetRect = _a.targetRect, popupRect = _a.popupRect;
50
+ var leftSpaced = targetRect.right + popupRect.width > window.innerWidth;
51
+ return leftSpaced ? 'left-center' : 'right-center';
52
+ }
53
+ function getHCenterPlacement(_a) {
54
+ var targetRect = _a.targetRect, popupRect = _a.popupRect;
55
+ var topSpaced = targetRect.bottom + popupRect.height > window.innerHeight;
56
+ return topSpaced ? 'top-center' : 'bottom-center';
57
+ }
58
+ /**
59
+ * 위치 정규화
60
+ */
61
+ function getNormalizedPlacement(_a) {
62
+ var placement = _a.placement, targetRect = _a.targetRect, popupRect = _a.popupRect, wrapperHeight = _a.wrapperHeight;
63
+ switch (placement) {
64
+ case 'v-auto':
65
+ return getVAutoPlacement({ targetRect: targetRect, popupRect: popupRect, wrapperHeight: wrapperHeight });
66
+ case 'h-auto':
67
+ return getHAutoPlacement({ targetRect: targetRect, popupRect: popupRect, wrapperHeight: wrapperHeight });
68
+ case 'v-center':
69
+ return getVCenterPlacement({ targetRect: targetRect, popupRect: popupRect, wrapperHeight: wrapperHeight });
70
+ case 'h-center':
71
+ return getHCenterPlacement({ targetRect: targetRect, popupRect: popupRect, wrapperHeight: wrapperHeight });
72
+ default:
73
+ return placement;
74
+ }
75
+ }
76
+ function updatePosition(_a) {
77
+ var targetElem = _a.targetElem, popupElem = _a.popupElem, placement = _a.placement, wrapperHeight = _a.wrapperHeight;
78
+ var targetRect = targetElem.getBoundingClientRect();
79
+ var popupRect = popupElem.getBoundingClientRect();
80
+ var normPlacement = getNormalizedPlacement({ placement: placement, targetRect: targetRect, popupRect: popupRect, wrapperHeight: wrapperHeight });
81
+ switch (normPlacement) {
82
+ case 'top':
83
+ popupElem.style.top = targetRect.top - popupRect.height + "px";
84
+ popupElem.style.left = targetRect.left - (popupRect.width - targetRect.width) / 2 + "px";
85
+ popupElem.style.width = 'auto';
86
+ break;
87
+ case 'top-start':
88
+ popupElem.style.top = targetRect.top - popupRect.height + "px";
89
+ popupElem.style.left = targetRect.left + "px";
90
+ popupElem.style.width = 'auto';
91
+ break;
92
+ case 'top-end':
93
+ popupElem.style.top = targetRect.top - popupRect.height + "px";
94
+ popupElem.style.left = targetRect.left + targetRect.width - popupRect.width + "px";
95
+ popupElem.style.width = 'auto';
96
+ break;
97
+ case 'top-both':
98
+ popupElem.style.top = targetRect.top - popupRect.height + "px";
99
+ popupElem.style.left = targetRect.left + "px";
100
+ popupElem.style.width = targetRect.width + "px";
101
+ break;
102
+ case 'top-center':
103
+ popupElem.style.top = targetRect.top - popupRect.height + "px";
104
+ popupElem.style.left = targetRect.left - (popupRect.width - targetRect.width) / 2 + "px";
105
+ popupElem.style.width = 'auto';
106
+ break;
107
+ case 'bottom':
108
+ popupElem.style.top = targetRect.bottom + "px";
109
+ popupElem.style.left = targetRect.left - (popupRect.width - targetRect.width) / 2 + "px";
110
+ popupElem.style.width = 'auto';
111
+ break;
112
+ case 'bottom-start':
113
+ popupElem.style.top = targetRect.bottom + "px";
114
+ popupElem.style.left = targetRect.left + "px";
115
+ popupElem.style.width = 'auto';
116
+ break;
117
+ case 'bottom-end':
118
+ popupElem.style.top = targetRect.bottom + "px";
119
+ popupElem.style.left = targetRect.right - popupRect.width + "px";
120
+ popupElem.style.width = 'auto';
121
+ break;
122
+ case 'bottom-both':
123
+ popupElem.style.top = targetRect.bottom + "px";
124
+ popupElem.style.left = targetRect.left + "px";
125
+ popupElem.style.width = targetRect.width + "px";
126
+ break;
127
+ case 'bottom-center':
128
+ popupElem.style.top = targetRect.bottom + "px";
129
+ popupElem.style.left = targetRect.left - (popupRect.width - targetRect.width) / 2 + "px";
130
+ popupElem.style.width = 'auto';
131
+ break;
132
+ case 'left':
133
+ popupElem.style.top = targetRect.top - (popupRect.height - targetRect.height) / 2 + "px";
134
+ popupElem.style.left = targetRect.left - popupRect.width + "px";
135
+ popupElem.style.width = 'auto';
136
+ break;
137
+ case 'left-start':
138
+ popupElem.style.top = targetRect.top + "px";
139
+ popupElem.style.left = targetRect.left - popupRect.width + "px";
140
+ popupElem.style.width = 'auto';
141
+ break;
142
+ case 'left-end':
143
+ popupElem.style.top = targetRect.top - (popupRect.height - targetRect.height) + "px";
144
+ popupElem.style.left = targetRect.left - popupRect.width + "px";
145
+ popupElem.style.width = 'auto';
146
+ break;
147
+ case 'left-center':
148
+ popupElem.style.top = targetRect.top - (popupRect.height - targetRect.height) / 2 + "px";
149
+ popupElem.style.left = targetRect.left - popupRect.width + "px";
150
+ popupElem.style.width = 'auto';
151
+ break;
152
+ case 'right':
153
+ popupElem.style.top = targetRect.top - (popupRect.height - targetRect.height) / 2 + "px";
154
+ popupElem.style.left = targetRect.left + targetRect.width + "px";
155
+ popupElem.style.width = 'auto';
156
+ break;
157
+ case 'right-start':
158
+ popupElem.style.top = targetRect.top + "px";
159
+ popupElem.style.left = targetRect.left + targetRect.width + "px";
160
+ popupElem.style.width = 'auto';
161
+ break;
162
+ case 'right-end':
163
+ popupElem.style.top = targetRect.top - (popupRect.height - targetRect.height) + "px";
164
+ popupElem.style.left = targetRect.left + targetRect.width + "px";
165
+ popupElem.style.width = 'auto';
166
+ break;
167
+ case 'right-center':
168
+ popupElem.style.top = targetRect.top - (popupRect.height - targetRect.height) / 2 + "px";
169
+ popupElem.style.left = targetRect.left + targetRect.width + "px";
170
+ popupElem.style.width = 'auto';
171
+ break;
172
+ default:
173
+ break;
174
+ }
175
+ return normPlacement;
176
+ }
177
+ function Popup(_a) {
178
+ var targetRef = _a.targetRef, _b = _a.isOpen, isOpen = _b === void 0 ? false : _b, onClickOutside = _a.onClickOutside, onClick = _a.onClick, _c = _a.placement, placement = _c === void 0 ? 'bottom-start' : _c, wrapperHeight = _a.wrapperHeight, children = _a.children;
179
+ var popupRootRef = (0, react_1.useContext)(PopupContext);
180
+ var _d = (0, react_1.useState)('bottom'), normPlacement = _d[0], setNormPlacement = _d[1];
181
+ var popupRef = (0, react_1.useRef)(null);
182
+ /**
183
+ * 팝업 외의 다른 요소 클릭시 팝업이 닫히도록 합니다.
184
+ */
185
+ (0, react_1.useEffect)(function () {
186
+ function handleClickOutside(e) {
187
+ if (popupRootRef.current && !popupRootRef.current.contains(e.target)) {
188
+ if (onClickOutside) {
189
+ onClickOutside();
190
+ }
191
+ }
192
+ }
193
+ window.document.addEventListener('mousedown', handleClickOutside);
194
+ return function () {
195
+ window.document.removeEventListener('mousedown', handleClickOutside);
196
+ };
197
+ }, [popupRootRef, onClickOutside]);
198
+ /**
199
+ * 전체 UI 렌더링이 한 프레임 완료된 후에 팝업 위치를 결정합니다.
200
+ */
201
+ (0, react_1.useEffect)(function () {
202
+ window.requestAnimationFrame(function () {
203
+ if (!targetRef.current || !popupRef.current) {
204
+ return;
205
+ }
206
+ var targetElem = targetRef.current;
207
+ var popupElem = popupRef.current;
208
+ var updatedPlacement = updatePosition({ targetElem: targetElem, popupElem: popupElem, placement: placement, wrapperHeight: wrapperHeight });
209
+ setNormPlacement(updatedPlacement);
210
+ });
211
+ }, [isOpen, placement, wrapperHeight, targetRef, popupRef]);
212
+ function handlePopupClick(e) {
213
+ e.stopPropagation();
214
+ if (onClick) {
215
+ onClick(e);
216
+ }
217
+ }
218
+ if (!popupRootRef || !popupRootRef.current || !isOpen) {
219
+ return react_1.default.createElement(react_1.default.Fragment, null);
220
+ }
221
+ var popupComponent = (react_1.default.createElement(S_Popup, { ref: popupRef, onClick: function (e) { return handlePopupClick(e); } }, typeof children === 'function' ? children(normPlacement) : children));
222
+ return (0, react_dom_1.createPortal)(popupComponent, popupRootRef.current);
223
+ }
224
+ exports.Popup = Popup;
225
+ var S_Popup = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n left: -1000px;\n position: fixed;\n top: -1000px;\n z-index: 1000;\n"], ["\n left: -1000px;\n position: fixed;\n top: -1000px;\n z-index: 1000;\n"])));
226
+ /**
227
+ * 팝업 루트 프로바이더
228
+ * 팝업을 사용하기 위해서는 팝업 프로바이더가 상위 컴포넌트로 있어야 합니다.
229
+ */
230
+ function PopupProvider(_a) {
231
+ var children = _a.children;
232
+ var ref = (0, react_1.useRef)();
233
+ return (react_1.default.createElement(react_1.default.Fragment, null,
234
+ react_1.default.createElement(PopupContext.Provider, { value: ref }, children),
235
+ react_1.default.createElement("div", { ref: ref })));
236
+ }
237
+ exports.PopupProvider = PopupProvider;
238
+ var templateObject_1;
@@ -0,0 +1 @@
1
+ export { default as BasicChatListItem } from './BasicChatListItem';