@channel.io/bezier-react 1.6.2 → 1.7.1

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 (383) hide show
  1. package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +35 -0
  2. package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  3. package/dist/cjs/components/Banner/Banner.const.js +4 -2
  4. package/dist/cjs/components/Banner/Banner.const.js.map +1 -1
  5. package/dist/cjs/components/Forms/Inputs/mixins.js +41 -22
  6. package/dist/cjs/components/Forms/Inputs/mixins.js.map +1 -1
  7. package/dist/cjs/components/Forms/Slider/Slider.js +73 -51
  8. package/dist/cjs/components/Forms/Slider/Slider.js.map +1 -1
  9. package/dist/cjs/components/Forms/Slider/Slider.styled.js +24 -83
  10. package/dist/cjs/components/Forms/Slider/Slider.styled.js.map +1 -1
  11. package/dist/cjs/components/Help/Help.js +10 -7
  12. package/dist/cjs/components/Help/Help.js.map +1 -1
  13. package/dist/cjs/components/Help/Help.styled.js +4 -5
  14. package/dist/cjs/components/Help/Help.styled.js.map +1 -1
  15. package/dist/cjs/components/KeyValueListItem/common/ItemActions/ItemAction.js +2 -9
  16. package/dist/cjs/components/KeyValueListItem/common/ItemActions/ItemAction.js.map +1 -1
  17. package/dist/cjs/components/KeyValueListItem/common/ItemActions/ItemAction.styled.js +3 -20
  18. package/dist/cjs/components/KeyValueListItem/common/ItemActions/ItemAction.styled.js.map +1 -1
  19. package/dist/cjs/components/LegacyTooltip/LegacyTooltip.js +101 -0
  20. package/dist/cjs/components/LegacyTooltip/LegacyTooltip.js.map +1 -0
  21. package/dist/cjs/components/LegacyTooltip/LegacyTooltip.styled.js +41 -0
  22. package/dist/cjs/components/LegacyTooltip/LegacyTooltip.styled.js.map +1 -0
  23. package/dist/cjs/components/LegacyTooltip/LegacyTooltip.types.js +20 -0
  24. package/dist/cjs/components/LegacyTooltip/LegacyTooltip.types.js.map +1 -0
  25. package/dist/cjs/components/{Tooltip/TooltipContent.js → LegacyTooltip/LegacyTooltipContent.js} +9 -12
  26. package/dist/cjs/components/LegacyTooltip/LegacyTooltipContent.js.map +1 -0
  27. package/dist/cjs/components/{Tooltip → LegacyTooltip}/utils.js +33 -33
  28. package/dist/cjs/components/LegacyTooltip/utils.js.map +1 -0
  29. package/dist/cjs/components/ListItem/ListItem.styled.js +1 -1
  30. package/dist/cjs/components/ListItem/utils.js +20 -8
  31. package/dist/cjs/components/ListItem/utils.js.map +1 -1
  32. package/dist/cjs/components/ListMenuTitle/ListMenuTitle.js +11 -10
  33. package/dist/cjs/components/ListMenuTitle/ListMenuTitle.js.map +1 -1
  34. package/dist/cjs/components/Modals/Modal/Modal.types.js.map +1 -1
  35. package/dist/cjs/components/Modals/Modal/ModalAnimation.styled.js +57 -11
  36. package/dist/cjs/components/Modals/Modal/ModalAnimation.styled.js.map +1 -1
  37. package/dist/cjs/components/Navigator/NavGroup/NavGroup.js +10 -11
  38. package/dist/cjs/components/Navigator/NavGroup/NavGroup.js.map +1 -1
  39. package/dist/cjs/components/Navigator/NavItem/NavItem.js +10 -10
  40. package/dist/cjs/components/Navigator/NavItem/NavItem.js.map +1 -1
  41. package/dist/cjs/components/Overlay/utils.js +6 -2
  42. package/dist/cjs/components/Overlay/utils.js.map +1 -1
  43. package/dist/cjs/components/SectionLabel/SectionLabel.js +10 -17
  44. package/dist/cjs/components/SectionLabel/SectionLabel.js.map +1 -1
  45. package/dist/cjs/components/SectionLabel/SectionLabel.styled.js +4 -4
  46. package/dist/cjs/components/SectionLabel/SectionLabel.styled.js.map +1 -1
  47. package/dist/cjs/components/Spinner/Spinner.js +10 -7
  48. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  49. package/dist/cjs/components/Spinner/Spinner.styled.js +1 -1
  50. package/dist/cjs/components/Spinner/Spinner.types.js.map +1 -1
  51. package/dist/cjs/components/Stack/Stack/Stack.styled.js +1 -1
  52. package/dist/cjs/components/TagBadge/Badge/Badge.js +9 -8
  53. package/dist/cjs/components/TagBadge/Badge/Badge.js.map +1 -1
  54. package/dist/cjs/components/TagBadge/Tag/Tag.js +4 -3
  55. package/dist/cjs/components/TagBadge/Tag/Tag.js.map +1 -1
  56. package/dist/cjs/components/Text/Text.styled.js +1 -1
  57. package/dist/cjs/components/Toast/Toast.types.js +2 -1
  58. package/dist/cjs/components/Toast/Toast.types.js.map +1 -1
  59. package/dist/cjs/components/Toast/ToastElement.js +5 -6
  60. package/dist/cjs/components/Toast/ToastElement.js.map +1 -1
  61. package/dist/cjs/components/Toast/ToastProvider.js +3 -3
  62. package/dist/cjs/components/Toast/ToastProvider.js.map +1 -1
  63. package/dist/cjs/components/Toast/ToastService.js +9 -9
  64. package/dist/cjs/components/Toast/ToastService.js.map +1 -1
  65. package/dist/cjs/components/Toast/utils.js +17 -10
  66. package/dist/cjs/components/Toast/utils.js.map +1 -1
  67. package/dist/cjs/components/Tooltip/Tooltip.js +211 -83
  68. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  69. package/dist/cjs/components/Tooltip/Tooltip.styled.js +96 -25
  70. package/dist/cjs/components/Tooltip/Tooltip.styled.js.map +1 -1
  71. package/dist/cjs/components/Tooltip/Tooltip.types.js +3 -0
  72. package/dist/cjs/components/Tooltip/Tooltip.types.js.map +1 -1
  73. package/dist/cjs/features/SmoothCornersFeature/SmoothCornersFeature.js +2 -2
  74. package/dist/cjs/features/SmoothCornersFeature/SmoothCornersFeature.js.map +1 -1
  75. package/dist/cjs/index.js +15 -10
  76. package/dist/cjs/index.js.map +1 -1
  77. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +21 -0
  78. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
  79. package/dist/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.js +886 -0
  80. package/dist/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -0
  81. package/dist/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +691 -0
  82. package/dist/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -0
  83. package/dist/cjs/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js +296 -0
  84. package/dist/cjs/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js.map +1 -0
  85. package/dist/cjs/node_modules/@radix-ui/react-checkbox/dist/index.js +4 -4
  86. package/dist/cjs/node_modules/@radix-ui/react-dialog/dist/index.js +12 -12
  87. package/dist/cjs/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +2 -2
  88. package/dist/cjs/node_modules/@radix-ui/react-focus-scope/dist/index.js +2 -2
  89. package/dist/cjs/node_modules/@radix-ui/react-popper/dist/index.js +265 -0
  90. package/dist/cjs/node_modules/@radix-ui/react-popper/dist/index.js.map +1 -0
  91. package/dist/cjs/node_modules/@radix-ui/react-portal/dist/index.js +2 -2
  92. package/dist/cjs/node_modules/@radix-ui/react-primitive/dist/index.js +2 -2
  93. package/dist/cjs/node_modules/@radix-ui/react-radio-group/dist/index.js +7 -7
  94. package/dist/cjs/node_modules/@radix-ui/react-roving-focus/dist/index.js +4 -4
  95. package/dist/cjs/node_modules/@radix-ui/react-separator/dist/index.js +2 -2
  96. package/dist/cjs/node_modules/@radix-ui/react-slider/dist/index.js +27 -27
  97. package/dist/cjs/node_modules/@radix-ui/react-slot/dist/index.js +3 -3
  98. package/dist/cjs/node_modules/@radix-ui/react-switch/dist/index.js +4 -4
  99. package/dist/cjs/node_modules/@radix-ui/react-tabs/dist/index.js +7 -7
  100. package/dist/cjs/node_modules/@radix-ui/react-toggle-group/dist/index.js +0 -1
  101. package/dist/cjs/node_modules/@radix-ui/react-toggle-group/dist/index.js.map +1 -1
  102. package/dist/cjs/node_modules/@radix-ui/react-toolbar/dist/index.js +7 -7
  103. package/dist/cjs/node_modules/@radix-ui/react-tooltip/dist/index.js +521 -0
  104. package/dist/cjs/node_modules/@radix-ui/react-tooltip/dist/index.js.map +1 -0
  105. package/dist/cjs/node_modules/@radix-ui/react-visually-hidden/dist/index.js +2 -2
  106. package/dist/cjs/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js +4 -4
  107. package/dist/cjs/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js.map +1 -1
  108. package/dist/cjs/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/extends.js +21 -0
  109. package/dist/cjs/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
  110. package/dist/cjs/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +19 -0
  111. package/dist/cjs/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -0
  112. package/dist/cjs/providers/BezierProvider.js +3 -2
  113. package/dist/cjs/providers/BezierProvider.js.map +1 -1
  114. package/dist/cjs/utils/styleUtils.js +26 -2
  115. package/dist/cjs/utils/styleUtils.js.map +1 -1
  116. package/dist/esm/_virtual/_rollupPluginBabelHelpers.mjs +31 -0
  117. package/dist/esm/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -0
  118. package/dist/esm/components/Banner/Banner.const.mjs +4 -2
  119. package/dist/esm/components/Banner/Banner.const.mjs.map +1 -1
  120. package/dist/esm/components/Forms/Inputs/mixins.mjs +41 -22
  121. package/dist/esm/components/Forms/Inputs/mixins.mjs.map +1 -1
  122. package/dist/esm/components/Forms/Slider/Slider.mjs +76 -53
  123. package/dist/esm/components/Forms/Slider/Slider.mjs.map +1 -1
  124. package/dist/esm/components/Forms/Slider/Slider.styled.mjs +22 -82
  125. package/dist/esm/components/Forms/Slider/Slider.styled.mjs.map +1 -1
  126. package/dist/esm/components/Help/Help.mjs +11 -8
  127. package/dist/esm/components/Help/Help.mjs.map +1 -1
  128. package/dist/esm/components/Help/Help.styled.mjs +4 -5
  129. package/dist/esm/components/Help/Help.styled.mjs.map +1 -1
  130. package/dist/esm/components/KeyValueListItem/common/ItemActions/ItemAction.mjs +3 -10
  131. package/dist/esm/components/KeyValueListItem/common/ItemActions/ItemAction.mjs.map +1 -1
  132. package/dist/esm/components/KeyValueListItem/common/ItemActions/ItemAction.styled.mjs +4 -19
  133. package/dist/esm/components/KeyValueListItem/common/ItemActions/ItemAction.styled.mjs.map +1 -1
  134. package/dist/esm/components/LegacyTooltip/LegacyTooltip.mjs +97 -0
  135. package/dist/esm/components/LegacyTooltip/LegacyTooltip.mjs.map +1 -0
  136. package/dist/esm/components/LegacyTooltip/LegacyTooltip.styled.mjs +36 -0
  137. package/dist/esm/components/LegacyTooltip/LegacyTooltip.styled.mjs.map +1 -0
  138. package/dist/esm/components/LegacyTooltip/LegacyTooltip.types.mjs +18 -0
  139. package/dist/esm/components/LegacyTooltip/LegacyTooltip.types.mjs.map +1 -0
  140. package/dist/esm/components/{Tooltip/TooltipContent.mjs → LegacyTooltip/LegacyTooltipContent.mjs} +8 -9
  141. package/dist/esm/components/LegacyTooltip/LegacyTooltipContent.mjs.map +1 -0
  142. package/dist/esm/components/{Tooltip → LegacyTooltip}/utils.mjs +33 -33
  143. package/dist/esm/components/LegacyTooltip/utils.mjs.map +1 -0
  144. package/dist/esm/components/ListItem/ListItem.styled.mjs +1 -1
  145. package/dist/esm/components/ListItem/utils.mjs +20 -8
  146. package/dist/esm/components/ListItem/utils.mjs.map +1 -1
  147. package/dist/esm/components/ListMenuTitle/ListMenuTitle.mjs +12 -11
  148. package/dist/esm/components/ListMenuTitle/ListMenuTitle.mjs.map +1 -1
  149. package/dist/esm/components/Modals/Modal/Modal.types.mjs.map +1 -1
  150. package/dist/esm/components/Modals/Modal/ModalAnimation.styled.mjs +57 -11
  151. package/dist/esm/components/Modals/Modal/ModalAnimation.styled.mjs.map +1 -1
  152. package/dist/esm/components/Navigator/NavGroup/NavGroup.mjs +11 -12
  153. package/dist/esm/components/Navigator/NavGroup/NavGroup.mjs.map +1 -1
  154. package/dist/esm/components/Navigator/NavItem/NavItem.mjs +11 -11
  155. package/dist/esm/components/Navigator/NavItem/NavItem.mjs.map +1 -1
  156. package/dist/esm/components/Overlay/Overlay.mjs +2 -2
  157. package/dist/esm/components/Overlay/Overlay.mjs.map +1 -1
  158. package/dist/esm/components/Overlay/utils.mjs +6 -2
  159. package/dist/esm/components/Overlay/utils.mjs.map +1 -1
  160. package/dist/esm/components/SectionLabel/SectionLabel.mjs +11 -17
  161. package/dist/esm/components/SectionLabel/SectionLabel.mjs.map +1 -1
  162. package/dist/esm/components/SectionLabel/SectionLabel.styled.mjs +4 -4
  163. package/dist/esm/components/SectionLabel/SectionLabel.styled.mjs.map +1 -1
  164. package/dist/esm/components/Spinner/Spinner.mjs +11 -8
  165. package/dist/esm/components/Spinner/Spinner.mjs.map +1 -1
  166. package/dist/esm/components/Spinner/Spinner.styled.mjs +1 -1
  167. package/dist/esm/components/Spinner/Spinner.types.mjs.map +1 -1
  168. package/dist/esm/components/Stack/Stack/Stack.styled.mjs +1 -1
  169. package/dist/esm/components/TagBadge/Badge/Badge.mjs +10 -9
  170. package/dist/esm/components/TagBadge/Badge/Badge.mjs.map +1 -1
  171. package/dist/esm/components/TagBadge/Tag/Tag.mjs +5 -4
  172. package/dist/esm/components/TagBadge/Tag/Tag.mjs.map +1 -1
  173. package/dist/esm/components/Text/Text.styled.mjs +1 -1
  174. package/dist/esm/components/Toast/Toast.types.mjs +2 -1
  175. package/dist/esm/components/Toast/Toast.types.mjs.map +1 -1
  176. package/dist/esm/components/Toast/ToastElement.mjs +5 -6
  177. package/dist/esm/components/Toast/ToastElement.mjs.map +1 -1
  178. package/dist/esm/components/Toast/ToastProvider.mjs +3 -3
  179. package/dist/esm/components/Toast/ToastProvider.mjs.map +1 -1
  180. package/dist/esm/components/Toast/ToastService.mjs +1 -1
  181. package/dist/esm/components/Toast/utils.mjs +17 -10
  182. package/dist/esm/components/Toast/utils.mjs.map +1 -1
  183. package/dist/esm/components/Tooltip/Tooltip.mjs +213 -82
  184. package/dist/esm/components/Tooltip/Tooltip.mjs.map +1 -1
  185. package/dist/esm/components/Tooltip/Tooltip.styled.mjs +93 -23
  186. package/dist/esm/components/Tooltip/Tooltip.styled.mjs.map +1 -1
  187. package/dist/esm/components/Tooltip/Tooltip.types.mjs +3 -0
  188. package/dist/esm/components/Tooltip/Tooltip.types.mjs.map +1 -1
  189. package/dist/esm/features/SmoothCornersFeature/SmoothCornersFeature.mjs +1 -1
  190. package/dist/esm/index.mjs +7 -5
  191. package/dist/esm/index.mjs.map +1 -1
  192. package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.mjs +17 -0
  193. package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.mjs.map +1 -0
  194. package/dist/esm/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +875 -0
  195. package/dist/esm/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.map +1 -0
  196. package/dist/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +679 -0
  197. package/dist/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.map +1 -0
  198. package/dist/esm/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.mjs +265 -0
  199. package/dist/esm/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.mjs.map +1 -0
  200. package/dist/esm/node_modules/@radix-ui/react-checkbox/dist/index.mjs +4 -4
  201. package/dist/esm/node_modules/@radix-ui/react-dialog/dist/index.mjs +12 -12
  202. package/dist/esm/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +2 -2
  203. package/dist/esm/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +2 -2
  204. package/dist/esm/node_modules/@radix-ui/react-popper/dist/index.mjs +257 -0
  205. package/dist/esm/node_modules/@radix-ui/react-popper/dist/index.mjs.map +1 -0
  206. package/dist/esm/node_modules/@radix-ui/react-portal/dist/index.mjs +3 -3
  207. package/dist/esm/node_modules/@radix-ui/react-primitive/dist/index.mjs +2 -2
  208. package/dist/esm/node_modules/@radix-ui/react-radio-group/dist/index.mjs +7 -7
  209. package/dist/esm/node_modules/@radix-ui/react-roving-focus/dist/index.mjs +4 -4
  210. package/dist/esm/node_modules/@radix-ui/react-separator/dist/index.mjs +2 -2
  211. package/dist/esm/node_modules/@radix-ui/react-slider/dist/index.mjs +11 -11
  212. package/dist/esm/node_modules/@radix-ui/react-slot/dist/index.mjs +3 -3
  213. package/dist/esm/node_modules/@radix-ui/react-switch/dist/index.mjs +4 -4
  214. package/dist/esm/node_modules/@radix-ui/react-tabs/dist/index.mjs +7 -7
  215. package/dist/esm/node_modules/@radix-ui/react-toggle-group/dist/index.mjs +0 -1
  216. package/dist/esm/node_modules/@radix-ui/react-toggle-group/dist/index.mjs.map +1 -1
  217. package/dist/esm/node_modules/@radix-ui/react-toolbar/dist/index.mjs +7 -7
  218. package/dist/esm/node_modules/@radix-ui/react-tooltip/dist/index.mjs +509 -0
  219. package/dist/esm/node_modules/@radix-ui/react-tooltip/dist/index.mjs.map +1 -0
  220. package/dist/esm/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +2 -2
  221. package/dist/esm/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.mjs +3 -3
  222. package/dist/esm/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.mjs.map +1 -1
  223. package/dist/esm/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/extends.mjs +17 -0
  224. package/dist/esm/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/extends.mjs.map +1 -0
  225. package/dist/esm/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.mjs +15 -0
  226. package/dist/esm/node_modules/react-textarea-autosize/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.mjs.map +1 -0
  227. package/dist/esm/providers/BezierProvider.mjs +3 -2
  228. package/dist/esm/providers/BezierProvider.mjs.map +1 -1
  229. package/dist/esm/utils/styleUtils.mjs +26 -2
  230. package/dist/esm/utils/styleUtils.mjs.map +1 -1
  231. package/dist/types/components/Forms/Slider/Slider.d.ts +18 -2
  232. package/dist/types/components/Forms/Slider/Slider.d.ts.map +1 -1
  233. package/dist/types/components/Forms/Slider/Slider.styled.d.ts +14 -24
  234. package/dist/types/components/Forms/Slider/Slider.styled.d.ts.map +1 -1
  235. package/dist/types/components/Forms/Slider/Slider.types.d.ts +52 -13
  236. package/dist/types/components/Forms/Slider/Slider.types.d.ts.map +1 -1
  237. package/dist/types/components/Help/Help.d.ts +1 -4
  238. package/dist/types/components/Help/Help.d.ts.map +1 -1
  239. package/dist/types/components/Help/Help.styled.d.ts +1 -1
  240. package/dist/types/components/Help/Help.styled.d.ts.map +1 -1
  241. package/dist/types/components/Help/Help.types.d.ts +1 -1
  242. package/dist/types/components/Help/Help.types.d.ts.map +1 -1
  243. package/dist/types/components/KeyValueListItem/common/ItemActions/ItemAction.d.ts.map +1 -1
  244. package/dist/types/components/KeyValueListItem/common/ItemActions/ItemAction.styled.d.ts +1 -7
  245. package/dist/types/components/KeyValueListItem/common/ItemActions/ItemAction.styled.d.ts.map +1 -1
  246. package/dist/types/components/KeyValueListItem/common/ItemActions/ItemAction.types.d.ts +3 -3
  247. package/dist/types/components/KeyValueListItem/common/ItemActions/ItemAction.types.d.ts.map +1 -1
  248. package/dist/types/components/KeyValueListItem/common/KeyItem/KeyItem.types.d.ts +2 -2
  249. package/dist/types/components/KeyValueListItem/common/KeyItem/KeyItem.types.d.ts.map +1 -1
  250. package/dist/types/components/LegacyTooltip/LegacyTooltip.d.ts +6 -0
  251. package/dist/types/components/LegacyTooltip/LegacyTooltip.d.ts.map +1 -0
  252. package/dist/types/components/LegacyTooltip/LegacyTooltip.styled.d.ts +18 -0
  253. package/dist/types/components/LegacyTooltip/LegacyTooltip.styled.d.ts.map +1 -0
  254. package/dist/types/components/LegacyTooltip/LegacyTooltip.types.d.ts +40 -0
  255. package/dist/types/components/LegacyTooltip/LegacyTooltip.types.d.ts.map +1 -0
  256. package/dist/types/components/LegacyTooltip/LegacyTooltipContent.d.ts +4 -0
  257. package/dist/types/components/LegacyTooltip/LegacyTooltipContent.d.ts.map +1 -0
  258. package/dist/types/components/LegacyTooltip/index.d.ts +4 -0
  259. package/dist/types/components/LegacyTooltip/index.d.ts.map +1 -0
  260. package/dist/types/components/{Tooltip → LegacyTooltip}/utils.d.ts +2 -2
  261. package/dist/types/components/LegacyTooltip/utils.d.ts.map +1 -0
  262. package/dist/types/components/ListMenuTitle/ListMenuTitle.d.ts +1 -1
  263. package/dist/types/components/ListMenuTitle/ListMenuTitle.d.ts.map +1 -1
  264. package/dist/types/components/ListMenuTitle/ListMenuTitle.types.d.ts +1 -2
  265. package/dist/types/components/ListMenuTitle/ListMenuTitle.types.d.ts.map +1 -1
  266. package/dist/types/components/Modals/Modal/Modal.types.d.ts +2 -2
  267. package/dist/types/components/Modals/Modal/Modal.types.d.ts.map +1 -1
  268. package/dist/types/components/Navigator/NavGroup/NavGroup.d.ts +1 -2
  269. package/dist/types/components/Navigator/NavGroup/NavGroup.d.ts.map +1 -1
  270. package/dist/types/components/Navigator/NavGroup/NavGroup.types.d.ts +3 -3
  271. package/dist/types/components/Navigator/NavGroup/NavGroup.types.d.ts.map +1 -1
  272. package/dist/types/components/Navigator/NavItem/NavItem.d.ts +1 -2
  273. package/dist/types/components/Navigator/NavItem/NavItem.d.ts.map +1 -1
  274. package/dist/types/components/Navigator/NavItem/NavItem.types.d.ts +3 -3
  275. package/dist/types/components/Navigator/NavItem/NavItem.types.d.ts.map +1 -1
  276. package/dist/types/components/SectionLabel/SectionLabel.d.ts +1 -2
  277. package/dist/types/components/SectionLabel/SectionLabel.d.ts.map +1 -1
  278. package/dist/types/components/SectionLabel/SectionLabel.styled.d.ts +1 -1
  279. package/dist/types/components/SectionLabel/SectionLabel.styled.d.ts.map +1 -1
  280. package/dist/types/components/SectionLabel/SectionLabel.types.d.ts +2 -7
  281. package/dist/types/components/SectionLabel/SectionLabel.types.d.ts.map +1 -1
  282. package/dist/types/components/Spinner/Spinner.d.ts +1 -1
  283. package/dist/types/components/Spinner/Spinner.d.ts.map +1 -1
  284. package/dist/types/components/Spinner/Spinner.types.d.ts +2 -1
  285. package/dist/types/components/Spinner/Spinner.types.d.ts.map +1 -1
  286. package/dist/types/components/TagBadge/Badge/Badge.d.ts +1 -1
  287. package/dist/types/components/TagBadge/Badge/Badge.d.ts.map +1 -1
  288. package/dist/types/components/TagBadge/Badge/Badge.types.d.ts +2 -2
  289. package/dist/types/components/TagBadge/Badge/Badge.types.d.ts.map +1 -1
  290. package/dist/types/components/TagBadge/Tag/Tag.d.ts +1 -1
  291. package/dist/types/components/TagBadge/Tag/Tag.d.ts.map +1 -1
  292. package/dist/types/components/Toast/Toast.types.d.ts +4 -4
  293. package/dist/types/components/Toast/Toast.types.d.ts.map +1 -1
  294. package/dist/types/components/Toast/ToastElement.d.ts.map +1 -1
  295. package/dist/types/components/Toast/utils.d.ts.map +1 -1
  296. package/dist/types/components/Tooltip/Tooltip.d.ts +31 -5
  297. package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -1
  298. package/dist/types/components/Tooltip/Tooltip.styled.d.ts +22 -12
  299. package/dist/types/components/Tooltip/Tooltip.styled.d.ts.map +1 -1
  300. package/dist/types/components/Tooltip/Tooltip.types.d.ts +105 -24
  301. package/dist/types/components/Tooltip/Tooltip.types.d.ts.map +1 -1
  302. package/dist/types/components/Tooltip/index.d.ts +3 -5
  303. package/dist/types/components/Tooltip/index.d.ts.map +1 -1
  304. package/dist/types/components/VisuallyHidden/VisuallyHidden.types.d.ts +2 -1
  305. package/dist/types/components/VisuallyHidden/VisuallyHidden.types.d.ts.map +1 -1
  306. package/dist/types/index.d.ts +1 -0
  307. package/dist/types/index.d.ts.map +1 -1
  308. package/dist/types/providers/BezierProvider.d.ts.map +1 -1
  309. package/package.json +3 -5
  310. package/src/components/Avatars/AvatarGroup/__snapshots__/AvatarGroup.test.tsx.snap +17 -17
  311. package/src/components/Button/__snapshots__/Button.test.tsx.snap +15 -15
  312. package/src/components/Forms/FormControl/__snapshots__/FormControl.test.tsx.snap +119 -119
  313. package/src/components/Forms/Slider/Slider.stories.tsx +10 -63
  314. package/src/components/Forms/Slider/Slider.styled.ts +46 -95
  315. package/src/components/Forms/Slider/Slider.test.tsx +130 -97
  316. package/src/components/Forms/Slider/Slider.tsx +117 -96
  317. package/src/components/Forms/Slider/Slider.types.ts +55 -17
  318. package/src/components/Forms/Slider/__snapshots__/Slider.test.tsx.snap +156 -0
  319. package/src/components/Help/Help.styled.ts +4 -7
  320. package/src/components/Help/Help.tsx +19 -12
  321. package/src/components/Help/Help.types.ts +1 -1
  322. package/src/components/KeyValueListItem/KeyValueListItem.test.tsx +10 -6
  323. package/src/components/KeyValueListItem/__snapshots__/KeyValueListItem.test.tsx.snap +13 -13
  324. package/src/components/KeyValueListItem/common/ItemActions/ItemAction.styled.ts +5 -15
  325. package/src/components/KeyValueListItem/common/ItemActions/ItemAction.tsx +6 -13
  326. package/src/components/KeyValueListItem/common/ItemActions/ItemAction.types.ts +3 -6
  327. package/src/components/KeyValueListItem/common/KeyItem/KeyItem.types.ts +2 -5
  328. package/src/components/LegacyTooltip/LegacyTooltip.stories.tsx +105 -0
  329. package/src/components/LegacyTooltip/LegacyTooltip.styled.ts +46 -0
  330. package/src/components/LegacyTooltip/LegacyTooltip.test.tsx +100 -0
  331. package/src/components/LegacyTooltip/LegacyTooltip.tsx +152 -0
  332. package/src/components/LegacyTooltip/LegacyTooltip.types.ts +69 -0
  333. package/src/components/{Tooltip/TooltipContent.test.tsx → LegacyTooltip/LegacyTooltipContent.test.tsx} +9 -8
  334. package/src/components/{Tooltip/TooltipContent.tsx → LegacyTooltip/LegacyTooltipContent.tsx} +6 -7
  335. package/src/components/LegacyTooltip/index.ts +5 -0
  336. package/src/components/{Tooltip → LegacyTooltip}/utils.ts +35 -35
  337. package/src/components/ListMenuTitle/ListMenuTitle.tsx +10 -6
  338. package/src/components/ListMenuTitle/ListMenuTitle.types.ts +1 -1
  339. package/src/components/Modals/Modal/Modal.types.ts +2 -2
  340. package/src/components/Navigator/NavGroup/NavGroup.stories.tsx +5 -2
  341. package/src/components/Navigator/NavGroup/NavGroup.test.tsx +1 -1
  342. package/src/components/Navigator/NavGroup/NavGroup.tsx +13 -16
  343. package/src/components/Navigator/NavGroup/NavGroup.types.ts +3 -2
  344. package/src/components/Navigator/NavItem/NavItem.test.tsx +3 -1
  345. package/src/components/Navigator/NavItem/NavItem.tsx +13 -12
  346. package/src/components/Navigator/NavItem/NavItem.types.ts +3 -2
  347. package/src/components/SectionLabel/SectionLabel.stories.tsx +1 -1
  348. package/src/components/SectionLabel/SectionLabel.styled.ts +2 -4
  349. package/src/components/SectionLabel/SectionLabel.test.tsx +5 -25
  350. package/src/components/SectionLabel/SectionLabel.tsx +11 -17
  351. package/src/components/SectionLabel/SectionLabel.types.ts +2 -8
  352. package/src/components/Spinner/Spinner.tsx +7 -4
  353. package/src/components/Spinner/Spinner.types.ts +2 -1
  354. package/src/components/TagBadge/Badge/Badge.stories.tsx +2 -1
  355. package/src/components/TagBadge/Badge/Badge.tsx +15 -10
  356. package/src/components/TagBadge/Badge/Badge.types.ts +2 -2
  357. package/src/components/TagBadge/Tag/Tag.tsx +9 -4
  358. package/src/components/TagBadge/TagBadge.mdx +1 -1
  359. package/src/components/TagBadge/TagBadge.stories.tsx +48 -33
  360. package/src/components/Toast/Toast.stories.tsx +9 -8
  361. package/src/components/Toast/Toast.types.ts +8 -5
  362. package/src/components/Toast/ToastElement.tsx +4 -5
  363. package/src/components/Toast/ToastProvider.tsx +2 -2
  364. package/src/components/Toast/ToastService.test.ts +3 -1
  365. package/src/components/Toast/useToastContextValues.test.tsx +5 -4
  366. package/src/components/Toast/utils.ts +13 -5
  367. package/src/components/Tooltip/Tooltip.stories.tsx +28 -67
  368. package/src/components/Tooltip/Tooltip.styled.ts +109 -19
  369. package/src/components/Tooltip/Tooltip.test.tsx +136 -63
  370. package/src/components/Tooltip/Tooltip.tsx +262 -120
  371. package/src/components/Tooltip/Tooltip.types.ts +111 -47
  372. package/src/components/Tooltip/index.ts +8 -8
  373. package/src/components/VisuallyHidden/VisuallyHidden.types.ts +1 -1
  374. package/src/index.ts +1 -0
  375. package/src/providers/BezierProvider.tsx +10 -6
  376. package/dist/cjs/components/Tooltip/TooltipContent.js.map +0 -1
  377. package/dist/cjs/components/Tooltip/utils.js.map +0 -1
  378. package/dist/esm/components/Tooltip/TooltipContent.mjs.map +0 -1
  379. package/dist/esm/components/Tooltip/utils.mjs.map +0 -1
  380. package/dist/types/components/Tooltip/TooltipContent.d.ts +0 -5
  381. package/dist/types/components/Tooltip/TooltipContent.d.ts.map +0 -1
  382. package/dist/types/components/Tooltip/utils.d.ts.map +0 -1
  383. /package/src/components/{Tooltip/__snapshots__/Tooltip.test.tsx.snap → LegacyTooltip/__snapshots__/LegacyTooltip.test.tsx.snap} +0 -0
@@ -3,14 +3,14 @@ import { getRootElement } from '~/src/utils/domUtils'
3
3
  import {
4
4
  type GetReplacement,
5
5
  type GetTooltipStyle,
6
- TooltipPosition,
7
- } from './Tooltip.types'
6
+ LegacyTooltipPosition,
7
+ } from './LegacyTooltip.types'
8
8
 
9
9
  export function getReplacement({
10
10
  tooltip,
11
11
  keepInContainer,
12
12
  placement,
13
- }: GetReplacement): TooltipPosition {
13
+ }: GetReplacement): LegacyTooltipPosition {
14
14
  if (!keepInContainer) {
15
15
  return placement
16
16
  }
@@ -36,42 +36,42 @@ export function getReplacement({
36
36
 
37
37
  if (isOverTop) {
38
38
  if (isOverLeft) {
39
- return TooltipPosition.BottomLeft
39
+ return LegacyTooltipPosition.BottomLeft
40
40
  }
41
41
  if (isOverRight) {
42
- return TooltipPosition.BottomRight
42
+ return LegacyTooltipPosition.BottomRight
43
43
  }
44
- return TooltipPosition.BottomCenter
44
+ return LegacyTooltipPosition.BottomCenter
45
45
  }
46
46
 
47
47
  if (isOverBottom) {
48
48
  if (isOverLeft) {
49
- return TooltipPosition.TopLeft
49
+ return LegacyTooltipPosition.TopLeft
50
50
  }
51
51
  if (isOverRight) {
52
- return TooltipPosition.TopRight
52
+ return LegacyTooltipPosition.TopRight
53
53
  }
54
- return TooltipPosition.TopCenter
54
+ return LegacyTooltipPosition.TopCenter
55
55
  }
56
56
 
57
57
  if (isOverLeft) {
58
58
  if (isOverTop) {
59
- return TooltipPosition.RightTop
59
+ return LegacyTooltipPosition.RightTop
60
60
  }
61
61
  if (isOverBottom) {
62
- return TooltipPosition.RightBottom
62
+ return LegacyTooltipPosition.RightBottom
63
63
  }
64
- return TooltipPosition.RightCenter
64
+ return LegacyTooltipPosition.RightCenter
65
65
  }
66
66
 
67
67
  if (isOverRight) {
68
68
  if (isOverTop) {
69
- return TooltipPosition.LeftTop
69
+ return LegacyTooltipPosition.LeftTop
70
70
  }
71
71
  if (isOverBottom) {
72
- return TooltipPosition.LeftBottom
72
+ return LegacyTooltipPosition.LeftBottom
73
73
  }
74
- return TooltipPosition.LeftCenter
74
+ return LegacyTooltipPosition.LeftCenter
75
75
  }
76
76
 
77
77
  return placement
@@ -102,50 +102,50 @@ export function getTooltipStyle({
102
102
  let offsetStyle = {}
103
103
 
104
104
  switch (placement) {
105
- case TooltipPosition.TopCenter:
106
- case TooltipPosition.TopLeft:
107
- case TooltipPosition.TopRight:
105
+ case LegacyTooltipPosition.TopCenter:
106
+ case LegacyTooltipPosition.TopLeft:
107
+ case LegacyTooltipPosition.TopRight:
108
108
  translateY = -100
109
109
  offsetBottom = offset
110
110
  break
111
- case TooltipPosition.RightCenter:
112
- case TooltipPosition.RightTop:
113
- case TooltipPosition.RightBottom:
111
+ case LegacyTooltipPosition.RightCenter:
112
+ case LegacyTooltipPosition.RightTop:
113
+ case LegacyTooltipPosition.RightBottom:
114
114
  left += containerWidth
115
115
  offsetLeft = offset
116
116
  break
117
- case TooltipPosition.BottomCenter:
118
- case TooltipPosition.BottomLeft:
119
- case TooltipPosition.BottomRight:
117
+ case LegacyTooltipPosition.BottomCenter:
118
+ case LegacyTooltipPosition.BottomLeft:
119
+ case LegacyTooltipPosition.BottomRight:
120
120
  top += containerHeight
121
121
  offsetTop = offset
122
122
  break
123
- case TooltipPosition.LeftCenter:
124
- case TooltipPosition.LeftTop:
125
- case TooltipPosition.LeftBottom:
123
+ case LegacyTooltipPosition.LeftCenter:
124
+ case LegacyTooltipPosition.LeftTop:
125
+ case LegacyTooltipPosition.LeftBottom:
126
126
  translateX = -100
127
127
  offsetRight = offset
128
128
  break
129
129
  }
130
130
 
131
131
  switch (placement) {
132
- case TooltipPosition.TopCenter:
133
- case TooltipPosition.BottomCenter:
132
+ case LegacyTooltipPosition.TopCenter:
133
+ case LegacyTooltipPosition.BottomCenter:
134
134
  translateX = -50
135
135
  left += (containerWidth / 2)
136
136
  break
137
- case TooltipPosition.TopRight:
138
- case TooltipPosition.BottomRight:
137
+ case LegacyTooltipPosition.TopRight:
138
+ case LegacyTooltipPosition.BottomRight:
139
139
  translateX = -100
140
140
  left += containerWidth
141
141
  break
142
- case TooltipPosition.RightCenter:
143
- case TooltipPosition.LeftCenter:
142
+ case LegacyTooltipPosition.RightCenter:
143
+ case LegacyTooltipPosition.LeftCenter:
144
144
  translateY = -50
145
145
  top += (containerHeight / 2)
146
146
  break
147
- case TooltipPosition.RightBottom:
148
- case TooltipPosition.LeftBottom:
147
+ case LegacyTooltipPosition.RightBottom:
148
+ case LegacyTooltipPosition.LeftBottom:
149
149
  translateY = -100
150
150
  top += containerHeight
151
151
  break
@@ -1,4 +1,7 @@
1
- import React, { useCallback } from 'react'
1
+ import React, {
2
+ forwardRef,
3
+ useCallback,
4
+ } from 'react'
2
5
 
3
6
  import { noop } from '~/src/utils/functionUtils'
4
7
  import { isNil } from '~/src/utils/typeUtils'
@@ -12,17 +15,17 @@ import {
12
15
 
13
16
  export const SIDEBAR_MENU_TITLE_TEST_ID = 'bezier-react-sidebar-menu-title'
14
17
 
15
- function ListMenuTitle({
18
+ const ListMenuTitle = forwardRef<HTMLDivElement, ListMenuTitleProps>(function ListMenuTitle({
16
19
  as,
17
20
  testId = SIDEBAR_MENU_TITLE_TEST_ID,
18
21
  content,
19
22
  hide = false,
20
23
  rightAction = null,
21
- onClick = noop,
22
24
  onClickAction = noop,
23
25
  style,
24
26
  className,
25
- }: ListMenuTitleProps) {
27
+ ...rest
28
+ }, forwardedRef) {
26
29
  const handleClickAction = useCallback((ev: React.MouseEvent<HTMLDivElement>) => {
27
30
  ev.stopPropagation()
28
31
  onClickAction()
@@ -34,11 +37,12 @@ function ListMenuTitle({
34
37
 
35
38
  return (
36
39
  <Wrapper
40
+ {...rest}
41
+ ref={forwardedRef}
37
42
  data-testid={testId}
38
43
  as={as}
39
44
  style={style}
40
45
  className={className}
41
- onClick={onClick}
42
46
  >
43
47
  <TitleWrapper>
44
48
  { content }
@@ -54,6 +58,6 @@ function ListMenuTitle({
54
58
  }
55
59
  </Wrapper>
56
60
  )
57
- }
61
+ })
58
62
 
59
63
  export default ListMenuTitle
@@ -8,13 +8,13 @@ import {
8
8
  interface ListMenuTitleOptions {
9
9
  rightAction?: React.ReactNode
10
10
  hide?: boolean
11
- onClick?: React.MouseEventHandler
12
11
  onClickAction?: () => void
13
12
  }
14
13
 
15
14
  export default interface ListMenuTitleProps extends
16
15
  BezierComponentProps,
17
16
  ContentProps,
17
+ Omit<React.HTMLAttributes<HTMLDivElement>, 'content'>,
18
18
  ListMenuTitleOptions {}
19
19
 
20
20
  export interface StyledWrapperProps extends BezierComponentProps {}
@@ -128,10 +128,10 @@ export interface ModalFooterProps extends
128
128
  ModalFooterOptions {}
129
129
 
130
130
  export interface ModalTriggerProps extends
131
- ChildrenProps {}
131
+ ChildrenProps<React.ReactElement> {}
132
132
 
133
133
  export interface ModalCloseProps extends
134
- ChildrenProps {}
134
+ ChildrenProps<React.ReactElement> {}
135
135
 
136
136
  export interface ModalContentContextValue extends
137
137
  NonNullable<Pick<ModalContentOptions, 'showCloseIcon'>> {}
@@ -1,6 +1,9 @@
1
1
  import React from 'react'
2
2
 
3
- import { DotIcon } from '@channel.io/bezier-icons'
3
+ import {
4
+ DotIcon,
5
+ SettingsIcon,
6
+ } from '@channel.io/bezier-icons'
4
7
  import {
5
8
  type Meta,
6
9
  type Story,
@@ -54,6 +57,6 @@ Primary.args = {
54
57
  active: false,
55
58
  name: 'general',
56
59
  content: '일반 설정',
57
- leftIcon: 'settings',
60
+ leftIcon: SettingsIcon,
58
61
  rightContent: <Icon source={DotIcon} size={IconSize.XS} color="bgtxt-orange-normal" />,
59
62
  }
@@ -22,7 +22,7 @@ describe('NavGroup Test >', () => {
22
22
 
23
23
  beforeEach(() => {
24
24
  props = {
25
- leftIcon: 'dot',
25
+ leftIcon: DotIcon,
26
26
  name: 'general',
27
27
  content: 'test-content',
28
28
  rightContent: <Icon source={DotIcon} size={IconSize.XS} color="bgtxt-orange-normal" />,
@@ -1,4 +1,5 @@
1
1
  import React, {
2
+ forwardRef,
2
3
  memo,
3
4
  useCallback,
4
5
  } from 'react'
@@ -17,10 +18,6 @@ import {
17
18
  Icon,
18
19
  IconSize,
19
20
  } from '~/src/components/Icon'
20
- import {
21
- LegacyIcon,
22
- isIconName,
23
- } from '~/src/components/LegacyIcon'
24
21
  import { Text } from '~/src/components/Text'
25
22
 
26
23
  import type NavGroupProps from './NavGroup.types'
@@ -37,7 +34,7 @@ import {
37
34
  export const NAV_GROUP_TEST_ID = 'bezier-react-nav-group'
38
35
  export const NAV_GROUP_LEFT_ICON_TEST_ID = 'bezier-react-nav-group-left-icon'
39
36
 
40
- function NavGroup({
37
+ const NavGroup = forwardRef<HTMLButtonElement, NavGroupProps>(function NavGroup({
41
38
  as,
42
39
  testId = NAV_GROUP_TEST_ID,
43
40
  name,
@@ -51,7 +48,8 @@ function NavGroup({
51
48
  open,
52
49
  active,
53
50
  onClick = noop,
54
- }: NavGroupProps) {
51
+ ...rest
52
+ }, forwardedRef) {
55
53
  const handleClickItem = useCallback((e?: React.MouseEvent) => {
56
54
  onClick(e, name)
57
55
  }, [
@@ -61,12 +59,13 @@ function NavGroup({
61
59
 
62
60
  const hasChildren = !isNil(children)
63
61
  const chevronIconSource = open ? ChevronSmallDownIcon : ChevronSmallRightIcon
64
- const showLeftIcon = isIconName(leftIcon)
65
62
  const ariaName = `${name}Menu`
66
63
 
67
64
  return (
68
65
  <Wrapper role="none">
69
66
  <Item
67
+ {...rest}
68
+ ref={forwardedRef}
70
69
  as={as}
71
70
  active={active}
72
71
  style={style}
@@ -80,14 +79,12 @@ function NavGroup({
80
79
  aria-controls={ariaName}
81
80
  >
82
81
  <LeftIconWrapper>
83
- { showLeftIcon && (
84
- <LegacyIcon
85
- testId={NAV_GROUP_LEFT_ICON_TEST_ID}
86
- name={leftIcon}
87
- size={IconSize.S}
88
- color={active ? 'bgtxt-blue-normal' : 'txt-black-dark'}
89
- />
90
- ) }
82
+ <Icon
83
+ testId={NAV_GROUP_LEFT_ICON_TEST_ID}
84
+ source={leftIcon}
85
+ size={IconSize.S}
86
+ color={active ? 'bgtxt-blue-normal' : 'txt-black-dark'}
87
+ />
91
88
  </LeftIconWrapper>
92
89
 
93
90
  <Text typo={Typography.Size14} truncated>
@@ -121,6 +118,6 @@ function NavGroup({
121
118
  ) }
122
119
  </Wrapper>
123
120
  )
124
- }
121
+ })
125
122
 
126
123
  export default memo(NavGroup)
@@ -1,4 +1,4 @@
1
- import { type IconName } from '@channel.io/bezier-icons'
1
+ import { type BezierIcon } from '@channel.io/bezier-icons'
2
2
 
3
3
  import type {
4
4
  ActivatableProps,
@@ -10,7 +10,7 @@ import type {
10
10
 
11
11
  interface NavGroupOptions {
12
12
  open?: boolean
13
- leftIcon: IconName
13
+ leftIcon: BezierIcon
14
14
  name: string
15
15
  onClick?: (e?: React.MouseEvent, name?: string) => void
16
16
  }
@@ -21,4 +21,5 @@ export default interface NavGroupProps extends
21
21
  ContentProps,
22
22
  Pick<SideContentProps, 'rightContent'>,
23
23
  Pick<ActivatableProps, 'active'>,
24
+ Omit<React.HTMLAttributes<HTMLButtonElement>, 'onClick' | 'content'>,
24
25
  NavGroupOptions {}
@@ -1,5 +1,7 @@
1
1
  import React from 'react'
2
2
 
3
+ import { DotIcon } from '@channel.io/bezier-icons'
4
+
3
5
  import { LightTheme } from '~/src/foundation/Colors/Theme'
4
6
 
5
7
  import { render } from '~/src/utils/testUtils'
@@ -15,7 +17,7 @@ describe('NavItem Test >', () => {
15
17
 
16
18
  beforeEach(() => {
17
19
  props = {
18
- leftIcon: 'dot',
20
+ leftIcon: DotIcon,
19
21
  name: 'general',
20
22
  content: 'test-content',
21
23
  }
@@ -1,4 +1,5 @@
1
1
  import React, {
2
+ forwardRef,
2
3
  memo,
3
4
  useCallback,
4
5
  } from 'react'
@@ -7,11 +8,10 @@ import { Typography } from '~/src/foundation'
7
8
 
8
9
  import { noop } from '~/src/utils/functionUtils'
9
10
 
10
- import { IconSize } from '~/src/components/Icon'
11
11
  import {
12
- LegacyIcon,
13
- isIconName,
14
- } from '~/src/components/LegacyIcon'
12
+ Icon,
13
+ IconSize,
14
+ } from '~/src/components/Icon'
15
15
  import { Text } from '~/src/components/Text'
16
16
 
17
17
  import type NavItemProps from './NavItem.types'
@@ -26,7 +26,7 @@ import {
26
26
  export const NAV_ITEM_TEST_ID = 'bezier-react-nav-item'
27
27
  export const NAV_ITEM_LEFT_ICON_TEST_ID = 'bezier-react-nav-item-left-icon'
28
28
 
29
- function NavItem({
29
+ const NavItem = forwardRef<HTMLAnchorElement, NavItemProps>(function NavItem({
30
30
  as,
31
31
  testId = NAV_ITEM_TEST_ID,
32
32
  name,
@@ -40,7 +40,8 @@ function NavItem({
40
40
  leftIcon,
41
41
  active,
42
42
  onClick = noop,
43
- }: NavItemProps) {
43
+ ...rest
44
+ }, forwardedRef) {
44
45
  const handleClickItem = useCallback((e?: React.MouseEvent) => {
45
46
  onClick(e, name)
46
47
  }, [
@@ -48,11 +49,11 @@ function NavItem({
48
49
  onClick,
49
50
  ])
50
51
 
51
- const showLeftIcon = isIconName(leftIcon)
52
-
53
52
  return (
54
53
  <Wrapper role="none">
55
54
  <Item
55
+ {...rest}
56
+ ref={forwardedRef}
56
57
  as={as}
57
58
  active={active}
58
59
  style={style}
@@ -65,10 +66,10 @@ function NavItem({
65
66
  role="menuitem"
66
67
  >
67
68
  <LeftIconWrapper>
68
- { showLeftIcon && (
69
- <LegacyIcon
69
+ { leftIcon && (
70
+ <Icon
70
71
  testId={NAV_ITEM_LEFT_ICON_TEST_ID}
71
- name={leftIcon}
72
+ source={leftIcon}
72
73
  size={IconSize.S}
73
74
  color={active ? 'bgtxt-blue-normal' : 'txt-black-dark'}
74
75
  />
@@ -87,6 +88,6 @@ function NavItem({
87
88
  </Item>
88
89
  </Wrapper>
89
90
  )
90
- }
91
+ })
91
92
 
92
93
  export default memo(NavItem)
@@ -1,4 +1,4 @@
1
- import { type IconName } from '@channel.io/bezier-icons'
1
+ import { type BezierIcon } from '@channel.io/bezier-icons'
2
2
 
3
3
  import type {
4
4
  ActivatableProps,
@@ -9,7 +9,7 @@ import type {
9
9
  } from '~/src/types/ComponentProps'
10
10
 
11
11
  interface NavItemOptions {
12
- leftIcon?: IconName
12
+ leftIcon?: BezierIcon
13
13
  name: string
14
14
  target?: HTMLAnchorElement['target']
15
15
  onClick?: (e?: React.MouseEvent, name?: string) => void
@@ -21,4 +21,5 @@ export default interface NavItemProps extends
21
21
  LinkProps,
22
22
  Pick<SideContentProps, 'rightContent'>,
23
23
  Pick<ActivatableProps, 'active'>,
24
+ Omit<React.HTMLAttributes<HTMLAnchorElement>, 'onClick' | 'content'>,
24
25
  NavItemOptions {}
@@ -127,7 +127,7 @@ const Template: Story<SectionLabelProps & {
127
127
  />
128
128
  </SectionLabel>
129
129
  <SectionLabel
130
- help={{ tooltipContent: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.' }}
130
+ help="Lorem ipsum dolor sit amet, consectetur adipiscing elit."
131
131
  rightContent={{ icon: open ? 'chevron-down' : 'chevron-right' }}
132
132
  {...otherSectionLabelProps}
133
133
  />
@@ -42,9 +42,7 @@ const ContentWrapper = styled.div<InterpolationProps>`
42
42
  ${({ interpolation }) => interpolation}
43
43
  `
44
44
 
45
- const HelpIconWrapper = styled.div`
46
- width: 16px;
47
- height: 16px;
45
+ const HelpContainer = styled.div`
48
46
  margin-left: 8px;
49
47
  `
50
48
 
@@ -86,7 +84,7 @@ export default {
86
84
  LeftContentWrapper,
87
85
  ContentText,
88
86
  ContentWrapper,
89
- HelpIconWrapper,
87
+ HelpContainer,
90
88
  RightContentWrapper,
91
89
  RightItemWrapper,
92
90
  ChildrenWrapper,
@@ -6,11 +6,11 @@ import { render } from '~/src/utils/testUtils'
6
6
 
7
7
  import { BUTTON_TEST_ID } from '~/src/components/Button/Button'
8
8
  import { DIVIDER_TEST_ID } from '~/src/components/Divider/Divider'
9
+ import { HELP_TEST_ID } from '~/src/components/Help/Help'
9
10
  import { ICON_TEST_ID } from '~/src/components/Icon/Icon'
10
11
 
11
12
  import SectionLabel, {
12
13
  SECTION_LABEL_TEST_CONTENT_ID,
13
- SECTION_LABEL_TEST_HELP_CONTENT_ID,
14
14
  SECTION_LABEL_TEST_ID,
15
15
  SECTION_LABEL_TEST_LEFT_CONTENT_ID,
16
16
  SECTION_LABEL_TEST_RIGHT_CONTENT_ID,
@@ -83,32 +83,12 @@ describe('SectionLabel', () => {
83
83
  expect(leftIcon?.id).toBe('foo')
84
84
  })
85
85
 
86
- it('renders help content with default color if the help prop exists', () => {
86
+ it('renders help icon if help prop exists', () => {
87
87
  const { getByTestId } = renderComponent({
88
- help: {
89
- tooltipContent: <div>happy</div>,
90
- },
88
+ help: <div>happy</div>,
91
89
  })
92
- const helpContent = getByTestId(SECTION_LABEL_TEST_HELP_CONTENT_ID)
93
-
94
- const helpIcon = helpContent.children.item(0)
95
- expect(helpIcon).toHaveAttribute('data-testid', ICON_TEST_ID)
96
- expect(helpIcon).toHaveStyle(`color: ${LightFoundation.theme['txt-black-dark']};`)
97
- })
98
-
99
- it('renders help content with specified icon and icon color', () => {
100
- const { getByTestId } = renderComponent({
101
- help: {
102
- icon: 'weather-snow',
103
- tooltipContent: <div>happy</div>,
104
- iconColor: 'txt-white-normal',
105
- },
106
- })
107
- const helpContent = getByTestId(SECTION_LABEL_TEST_HELP_CONTENT_ID)
108
-
109
- const helpIcon = helpContent.children.item(0)
110
- expect(helpIcon).toHaveAttribute('data-testid', ICON_TEST_ID)
111
- expect(helpIcon).toHaveStyle(`color: ${LightFoundation.theme['txt-white-normal']};`)
90
+ const helpContent = getByTestId(HELP_TEST_ID)
91
+ expect(helpContent).toBeInTheDocument()
112
92
  })
113
93
 
114
94
  it('does not render right content if given null', () => {
@@ -1,4 +1,5 @@
1
1
  import React, {
2
+ forwardRef,
2
3
  useCallback,
3
4
  useMemo,
4
5
  } from 'react'
@@ -23,9 +24,9 @@ import {
23
24
  ButtonStyleVariant,
24
25
  } from '~/src/components/Button'
25
26
  import { Divider } from '~/src/components/Divider'
27
+ import { Help } from '~/src/components/Help'
26
28
  import { IconSize } from '~/src/components/Icon'
27
29
  import { LegacyIcon } from '~/src/components/LegacyIcon'
28
- import { Tooltip } from '~/src/components/Tooltip'
29
30
 
30
31
  import { type SectionLabelItemProps } from './SectionLabel.types'
31
32
  import type SectionLabelProps from './SectionLabel.types'
@@ -36,7 +37,6 @@ export const SECTION_LABEL_TEST_ID = 'bezier-react-section-label'
36
37
  export const SECTION_LABEL_TEST_CONTENT_ID = 'bezier-react-section-label-content'
37
38
  export const SECTION_LABEL_TEST_LEFT_CONTENT_ID = 'bezier-react-section-label-left-content'
38
39
  export const SECTION_LABEL_TEST_RIGHT_CONTENT_ID = 'bezier-react-section-label-right-content'
39
- export const SECTION_LABEL_TEST_HELP_CONTENT_ID = 'bezier-react-section-label-help-content'
40
40
 
41
41
  function clickableClassName(onClick?: React.MouseEventHandler) {
42
42
  return !isNil(onClick) ? 'clickable' : undefined
@@ -81,7 +81,7 @@ function renderSectionLabelActionItem(props: SectionLabelItemProps, key?: string
81
81
  )
82
82
  }
83
83
 
84
- function SectionLabel({
84
+ const SectionLabel = forwardRef<HTMLDivElement, SectionLabelProps>(function SectionLabel({
85
85
  content: givenContent,
86
86
  open = true,
87
87
  divider = false,
@@ -99,7 +99,7 @@ function SectionLabel({
99
99
  rightWrapperClassName,
100
100
  rightWrapperInterpolation,
101
101
  ...props
102
- }: SectionLabelProps) {
102
+ }, forwardedRef) {
103
103
  const content = useMemo(() => (
104
104
  <Styled.ContentWrapper
105
105
  className={contentWrapperClassName}
@@ -181,24 +181,18 @@ function SectionLabel({
181
181
  ])
182
182
 
183
183
  const helpContent = useMemo(() => !isNil(help) && (
184
- <Tooltip
185
- content={help.tooltipContent}
186
- allowHover
187
- >
188
- <Styled.HelpIconWrapper data-testid={SECTION_LABEL_TEST_HELP_CONTENT_ID}>
189
- <LegacyIcon
190
- name={help.icon ?? 'help-filled'}
191
- size={IconSize.XS}
192
- color={help.iconColor ?? 'txt-black-dark'}
193
- />
194
- </Styled.HelpIconWrapper>
195
- </Tooltip>
184
+ <Styled.HelpContainer>
185
+ <Help allowHover>
186
+ { help }
187
+ </Help>
188
+ </Styled.HelpContainer>
196
189
  ), [help])
197
190
 
198
191
  return (
199
192
  <div data-testid={SECTION_LABEL_TEST_ID}>
200
193
  { divider && <Divider orientation="horizontal" /> }
201
194
  <Styled.Wrapper
195
+ ref={forwardedRef}
202
196
  className={classNames(
203
197
  wrapperClassName,
204
198
  clickableClassName(onClick),
@@ -219,6 +213,6 @@ function SectionLabel({
219
213
  ) }
220
214
  </div>
221
215
  )
222
- }
216
+ })
223
217
 
224
218
  export default SectionLabel
@@ -11,17 +11,10 @@ import type {
11
11
  SideContentProps,
12
12
  } from '~/src/types/ComponentProps'
13
13
 
14
- import type { IconSize } from '~/src/components/Icon'
15
-
16
14
  interface IconInfo extends AdditionalColorProps<'icon'> {
17
15
  icon: IconName
18
16
  }
19
17
 
20
- interface SectionLabelHelpProps extends Partial<IconInfo> {
21
- iconSize?: IconSize
22
- tooltipContent: React.ReactNode
23
- }
24
-
25
18
  export type SectionLabelItemProps = (IconInfo & {
26
19
  onClick?: React.MouseEventHandler
27
20
  }) | React.ReactElement
@@ -29,7 +22,7 @@ export type SectionLabelItemProps = (IconInfo & {
29
22
  interface SectionLabelOptions {
30
23
  open?: boolean
31
24
  divider?: boolean
32
- help?: SectionLabelHelpProps
25
+ help?: React.ReactNode
33
26
  onClick?: React.MouseEventHandler
34
27
  }
35
28
 
@@ -40,4 +33,5 @@ export default interface SectionLabelProps extends
40
33
  ChildrenProps,
41
34
  SideContentProps<SectionLabelItemProps, SectionLabelItemProps | SectionLabelItemProps[]>,
42
35
  AdditionalStylableProps<['wrapper', 'contentWrapper', 'leftWrapper', 'rightWrapper']>,
36
+ Omit<React.HTMLAttributes<HTMLDivElement>, 'content' | 'onClick'>,
43
37
  SectionLabelOptions {}