@remember-web/primitive 0.1.11 → 0.1.13

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 (397) hide show
  1. package/package.json +2 -2
  2. package/src/Control/BaseToggle/ToggleIcon/index.tsx +27 -5
  3. package/src/Control/BaseToggle/index.tsx +20 -1
  4. package/src/Control/BaseToggle/styles.ts +9 -0
  5. package/src/Control/BaseToggle/types.ts +2 -1
  6. package/src/Control/Checkbox.stories.tsx +28 -1
  7. package/src/Control/Checkbox.tsx +9 -3
  8. package/src/Control/Radio.tsx +1 -1
  9. package/src/Control/Toggle.tsx +1 -1
  10. package/dist/src/Avatars/Avatar/index.cjs.js +0 -42
  11. package/dist/src/Avatars/Avatar/index.cjs.js.map +0 -1
  12. package/dist/src/Avatars/Avatar/index.d.ts +0 -7
  13. package/dist/src/Avatars/Avatar/index.d.ts.map +0 -1
  14. package/dist/src/Avatars/Avatar/index.esm.js +0 -40
  15. package/dist/src/Avatars/Avatar/index.esm.js.map +0 -1
  16. package/dist/src/Avatars/Avatar/styles.cjs.js +0 -45
  17. package/dist/src/Avatars/Avatar/styles.cjs.js.map +0 -1
  18. package/dist/src/Avatars/Avatar/styles.d.ts +0 -22
  19. package/dist/src/Avatars/Avatar/styles.d.ts.map +0 -1
  20. package/dist/src/Avatars/Avatar/styles.esm.js +0 -38
  21. package/dist/src/Avatars/Avatar/styles.esm.js.map +0 -1
  22. package/dist/src/Avatars/index.d.ts +0 -4
  23. package/dist/src/Avatars/index.d.ts.map +0 -1
  24. package/dist/src/Badge/Badge.cjs.js +0 -15
  25. package/dist/src/Badge/Badge.cjs.js.map +0 -1
  26. package/dist/src/Badge/Badge.d.ts +0 -6
  27. package/dist/src/Badge/Badge.d.ts.map +0 -1
  28. package/dist/src/Badge/Badge.esm.js +0 -13
  29. package/dist/src/Badge/Badge.esm.js.map +0 -1
  30. package/dist/src/Badge/index.d.ts +0 -6
  31. package/dist/src/Badge/index.d.ts.map +0 -1
  32. package/dist/src/Badge/style.cjs.js +0 -38
  33. package/dist/src/Badge/style.cjs.js.map +0 -1
  34. package/dist/src/Badge/style.d.ts +0 -16
  35. package/dist/src/Badge/style.d.ts.map +0 -1
  36. package/dist/src/Badge/style.esm.js +0 -29
  37. package/dist/src/Badge/style.esm.js.map +0 -1
  38. package/dist/src/Badge/types.d.ts +0 -10
  39. package/dist/src/Badge/types.d.ts.map +0 -1
  40. package/dist/src/Badge/utils.cjs.js +0 -26
  41. package/dist/src/Badge/utils.cjs.js.map +0 -1
  42. package/dist/src/Badge/utils.d.ts +0 -12
  43. package/dist/src/Badge/utils.d.ts.map +0 -1
  44. package/dist/src/Badge/utils.esm.js +0 -23
  45. package/dist/src/Badge/utils.esm.js.map +0 -1
  46. package/dist/src/Buttons/Button/const.cjs.js +0 -59
  47. package/dist/src/Buttons/Button/const.cjs.js.map +0 -1
  48. package/dist/src/Buttons/Button/const.d.ts +0 -50
  49. package/dist/src/Buttons/Button/const.d.ts.map +0 -1
  50. package/dist/src/Buttons/Button/const.esm.js +0 -54
  51. package/dist/src/Buttons/Button/const.esm.js.map +0 -1
  52. package/dist/src/Buttons/Button/index.cjs.js +0 -62
  53. package/dist/src/Buttons/Button/index.cjs.js.map +0 -1
  54. package/dist/src/Buttons/Button/index.d.ts +0 -10
  55. package/dist/src/Buttons/Button/index.d.ts.map +0 -1
  56. package/dist/src/Buttons/Button/index.esm.js +0 -55
  57. package/dist/src/Buttons/Button/index.esm.js.map +0 -1
  58. package/dist/src/Buttons/Button/styles.cjs.js +0 -33
  59. package/dist/src/Buttons/Button/styles.cjs.js.map +0 -1
  60. package/dist/src/Buttons/Button/styles.d.ts +0 -5
  61. package/dist/src/Buttons/Button/styles.d.ts.map +0 -1
  62. package/dist/src/Buttons/Button/styles.esm.js +0 -25
  63. package/dist/src/Buttons/Button/styles.esm.js.map +0 -1
  64. package/dist/src/Buttons/Button/types.d.ts +0 -22
  65. package/dist/src/Buttons/Button/types.d.ts.map +0 -1
  66. package/dist/src/Buttons/index.d.ts +0 -2
  67. package/dist/src/Buttons/index.d.ts.map +0 -1
  68. package/dist/src/Common/Divider/index.cjs.js +0 -54
  69. package/dist/src/Common/Divider/index.cjs.js.map +0 -1
  70. package/dist/src/Common/Divider/index.d.ts +0 -10
  71. package/dist/src/Common/Divider/index.d.ts.map +0 -1
  72. package/dist/src/Common/Divider/index.esm.js +0 -27
  73. package/dist/src/Common/Divider/index.esm.js.map +0 -1
  74. package/dist/src/Common/Flex/index.cjs.js +0 -71
  75. package/dist/src/Common/Flex/index.cjs.js.map +0 -1
  76. package/dist/src/Common/Flex/index.d.ts +0 -23
  77. package/dist/src/Common/Flex/index.d.ts.map +0 -1
  78. package/dist/src/Common/Flex/index.esm.js +0 -62
  79. package/dist/src/Common/Flex/index.esm.js.map +0 -1
  80. package/dist/src/Common/Grid/index.cjs.js +0 -72
  81. package/dist/src/Common/Grid/index.cjs.js.map +0 -1
  82. package/dist/src/Common/Grid/index.d.ts +0 -25
  83. package/dist/src/Common/Grid/index.d.ts.map +0 -1
  84. package/dist/src/Common/Grid/index.esm.js +0 -64
  85. package/dist/src/Common/Grid/index.esm.js.map +0 -1
  86. package/dist/src/Common/Spinner/index.cjs.js +0 -26
  87. package/dist/src/Common/Spinner/index.cjs.js.map +0 -1
  88. package/dist/src/Common/Spinner/index.d.ts +0 -3
  89. package/dist/src/Common/Spinner/index.d.ts.map +0 -1
  90. package/dist/src/Common/Spinner/index.esm.js +0 -24
  91. package/dist/src/Common/Spinner/index.esm.js.map +0 -1
  92. package/dist/src/Common/Spinner/styles.cjs.js +0 -21
  93. package/dist/src/Common/Spinner/styles.cjs.js.map +0 -1
  94. package/dist/src/Common/Spinner/styles.d.ts +0 -4
  95. package/dist/src/Common/Spinner/styles.d.ts.map +0 -1
  96. package/dist/src/Common/Spinner/styles.esm.js +0 -14
  97. package/dist/src/Common/Spinner/styles.esm.js.map +0 -1
  98. package/dist/src/Common/Spinner/types.d.ts +0 -15
  99. package/dist/src/Common/Spinner/types.d.ts.map +0 -1
  100. package/dist/src/Common/Typography/index.cjs.js +0 -40
  101. package/dist/src/Common/Typography/index.cjs.js.map +0 -1
  102. package/dist/src/Common/Typography/index.d.ts +0 -16
  103. package/dist/src/Common/Typography/index.d.ts.map +0 -1
  104. package/dist/src/Common/Typography/index.esm.js +0 -33
  105. package/dist/src/Common/Typography/index.esm.js.map +0 -1
  106. package/dist/src/Common/Typography/styles.cjs.js +0 -26
  107. package/dist/src/Common/Typography/styles.cjs.js.map +0 -1
  108. package/dist/src/Common/Typography/styles.d.ts +0 -9
  109. package/dist/src/Common/Typography/styles.d.ts.map +0 -1
  110. package/dist/src/Common/Typography/styles.esm.js +0 -19
  111. package/dist/src/Common/Typography/styles.esm.js.map +0 -1
  112. package/dist/src/Common/index.d.ts +0 -8
  113. package/dist/src/Common/index.d.ts.map +0 -1
  114. package/dist/src/Control/BaseToggle/ToggleIcon/index.cjs.js +0 -44
  115. package/dist/src/Control/BaseToggle/ToggleIcon/index.cjs.js.map +0 -1
  116. package/dist/src/Control/BaseToggle/ToggleIcon/index.d.ts +0 -8
  117. package/dist/src/Control/BaseToggle/ToggleIcon/index.d.ts.map +0 -1
  118. package/dist/src/Control/BaseToggle/ToggleIcon/index.esm.js +0 -42
  119. package/dist/src/Control/BaseToggle/ToggleIcon/index.esm.js.map +0 -1
  120. package/dist/src/Control/BaseToggle/index.cjs.js +0 -75
  121. package/dist/src/Control/BaseToggle/index.cjs.js.map +0 -1
  122. package/dist/src/Control/BaseToggle/index.d.ts +0 -12
  123. package/dist/src/Control/BaseToggle/index.d.ts.map +0 -1
  124. package/dist/src/Control/BaseToggle/index.esm.js +0 -68
  125. package/dist/src/Control/BaseToggle/index.esm.js.map +0 -1
  126. package/dist/src/Control/BaseToggle/styles.cjs.js +0 -22
  127. package/dist/src/Control/BaseToggle/styles.cjs.js.map +0 -1
  128. package/dist/src/Control/BaseToggle/styles.d.ts +0 -6
  129. package/dist/src/Control/BaseToggle/styles.d.ts.map +0 -1
  130. package/dist/src/Control/BaseToggle/styles.esm.js +0 -14
  131. package/dist/src/Control/BaseToggle/styles.esm.js.map +0 -1
  132. package/dist/src/Control/BaseToggle/types.d.ts +0 -21
  133. package/dist/src/Control/BaseToggle/types.d.ts.map +0 -1
  134. package/dist/src/Control/Checkbox.cjs.js +0 -31
  135. package/dist/src/Control/Checkbox.cjs.js.map +0 -1
  136. package/dist/src/Control/Checkbox.d.ts +0 -9
  137. package/dist/src/Control/Checkbox.d.ts.map +0 -1
  138. package/dist/src/Control/Checkbox.esm.js +0 -23
  139. package/dist/src/Control/Checkbox.esm.js.map +0 -1
  140. package/dist/src/Control/Radio.cjs.js +0 -30
  141. package/dist/src/Control/Radio.cjs.js.map +0 -1
  142. package/dist/src/Control/Radio.d.ts +0 -4
  143. package/dist/src/Control/Radio.d.ts.map +0 -1
  144. package/dist/src/Control/Radio.esm.js +0 -22
  145. package/dist/src/Control/Radio.esm.js.map +0 -1
  146. package/dist/src/Control/Switch/index.cjs.js +0 -34
  147. package/dist/src/Control/Switch/index.cjs.js.map +0 -1
  148. package/dist/src/Control/Switch/index.d.ts +0 -3
  149. package/dist/src/Control/Switch/index.d.ts.map +0 -1
  150. package/dist/src/Control/Switch/index.esm.js +0 -27
  151. package/dist/src/Control/Switch/index.esm.js.map +0 -1
  152. package/dist/src/Control/Switch/styles.cjs.js +0 -47
  153. package/dist/src/Control/Switch/styles.cjs.js.map +0 -1
  154. package/dist/src/Control/Switch/styles.d.ts +0 -15
  155. package/dist/src/Control/Switch/styles.d.ts.map +0 -1
  156. package/dist/src/Control/Switch/styles.esm.js +0 -19
  157. package/dist/src/Control/Switch/styles.esm.js.map +0 -1
  158. package/dist/src/Control/Switch/types.d.ts +0 -5
  159. package/dist/src/Control/Switch/types.d.ts.map +0 -1
  160. package/dist/src/Control/Toggle.cjs.js +0 -37
  161. package/dist/src/Control/Toggle.cjs.js.map +0 -1
  162. package/dist/src/Control/Toggle.d.ts +0 -30
  163. package/dist/src/Control/Toggle.d.ts.map +0 -1
  164. package/dist/src/Control/Toggle.esm.js +0 -26
  165. package/dist/src/Control/Toggle.esm.js.map +0 -1
  166. package/dist/src/Control/index.d.ts +0 -5
  167. package/dist/src/Control/index.d.ts.map +0 -1
  168. package/dist/src/Floating/DropdownMenu/DropdownMenuSection.cjs.js +0 -28
  169. package/dist/src/Floating/DropdownMenu/DropdownMenuSection.cjs.js.map +0 -1
  170. package/dist/src/Floating/DropdownMenu/DropdownMenuSection.d.ts +0 -9
  171. package/dist/src/Floating/DropdownMenu/DropdownMenuSection.d.ts.map +0 -1
  172. package/dist/src/Floating/DropdownMenu/DropdownMenuSection.esm.js +0 -21
  173. package/dist/src/Floating/DropdownMenu/DropdownMenuSection.esm.js.map +0 -1
  174. package/dist/src/Floating/DropdownMenu/index.cjs.js +0 -62
  175. package/dist/src/Floating/DropdownMenu/index.cjs.js.map +0 -1
  176. package/dist/src/Floating/DropdownMenu/index.d.ts +0 -27
  177. package/dist/src/Floating/DropdownMenu/index.d.ts.map +0 -1
  178. package/dist/src/Floating/DropdownMenu/index.esm.js +0 -36
  179. package/dist/src/Floating/DropdownMenu/index.esm.js.map +0 -1
  180. package/dist/src/Floating/DropdownMenu/styles.cjs.js +0 -54
  181. package/dist/src/Floating/DropdownMenu/styles.cjs.js.map +0 -1
  182. package/dist/src/Floating/DropdownMenu/styles.d.ts +0 -22
  183. package/dist/src/Floating/DropdownMenu/styles.d.ts.map +0 -1
  184. package/dist/src/Floating/DropdownMenu/styles.esm.js +0 -38
  185. package/dist/src/Floating/DropdownMenu/styles.esm.js.map +0 -1
  186. package/dist/src/Floating/Popover/index.cjs.js +0 -66
  187. package/dist/src/Floating/Popover/index.cjs.js.map +0 -1
  188. package/dist/src/Floating/Popover/index.d.ts +0 -19
  189. package/dist/src/Floating/Popover/index.d.ts.map +0 -1
  190. package/dist/src/Floating/Popover/index.esm.js +0 -40
  191. package/dist/src/Floating/Popover/index.esm.js.map +0 -1
  192. package/dist/src/Floating/Popover/styles.cjs.js +0 -27
  193. package/dist/src/Floating/Popover/styles.cjs.js.map +0 -1
  194. package/dist/src/Floating/Popover/styles.d.ts +0 -7
  195. package/dist/src/Floating/Popover/styles.d.ts.map +0 -1
  196. package/dist/src/Floating/Popover/styles.esm.js +0 -18
  197. package/dist/src/Floating/Popover/styles.esm.js.map +0 -1
  198. package/dist/src/Floating/Tooltip/index.cjs.js +0 -136
  199. package/dist/src/Floating/Tooltip/index.cjs.js.map +0 -1
  200. package/dist/src/Floating/Tooltip/index.d.ts +0 -4
  201. package/dist/src/Floating/Tooltip/index.d.ts.map +0 -1
  202. package/dist/src/Floating/Tooltip/index.esm.js +0 -110
  203. package/dist/src/Floating/Tooltip/index.esm.js.map +0 -1
  204. package/dist/src/Floating/Tooltip/styles.cjs.js +0 -60
  205. package/dist/src/Floating/Tooltip/styles.cjs.js.map +0 -1
  206. package/dist/src/Floating/Tooltip/styles.d.ts +0 -16
  207. package/dist/src/Floating/Tooltip/styles.d.ts.map +0 -1
  208. package/dist/src/Floating/Tooltip/styles.esm.js +0 -32
  209. package/dist/src/Floating/Tooltip/styles.esm.js.map +0 -1
  210. package/dist/src/Floating/Tooltip/types.cjs.js +0 -12
  211. package/dist/src/Floating/Tooltip/types.cjs.js.map +0 -1
  212. package/dist/src/Floating/Tooltip/types.d.ts +0 -31
  213. package/dist/src/Floating/Tooltip/types.d.ts.map +0 -1
  214. package/dist/src/Floating/Tooltip/types.esm.js +0 -9
  215. package/dist/src/Floating/Tooltip/types.esm.js.map +0 -1
  216. package/dist/src/Floating/index.d.ts +0 -11
  217. package/dist/src/Floating/index.d.ts.map +0 -1
  218. package/dist/src/Inputs/Select/DesignedSelect/const.cjs.js +0 -8
  219. package/dist/src/Inputs/Select/DesignedSelect/const.cjs.js.map +0 -1
  220. package/dist/src/Inputs/Select/DesignedSelect/const.d.ts +0 -3
  221. package/dist/src/Inputs/Select/DesignedSelect/const.d.ts.map +0 -1
  222. package/dist/src/Inputs/Select/DesignedSelect/const.esm.js +0 -5
  223. package/dist/src/Inputs/Select/DesignedSelect/const.esm.js.map +0 -1
  224. package/dist/src/Inputs/Select/DesignedSelect/index.cjs.js +0 -251
  225. package/dist/src/Inputs/Select/DesignedSelect/index.cjs.js.map +0 -1
  226. package/dist/src/Inputs/Select/DesignedSelect/index.d.ts +0 -12
  227. package/dist/src/Inputs/Select/DesignedSelect/index.d.ts.map +0 -1
  228. package/dist/src/Inputs/Select/DesignedSelect/index.esm.js +0 -243
  229. package/dist/src/Inputs/Select/DesignedSelect/index.esm.js.map +0 -1
  230. package/dist/src/Inputs/Select/DesignedSelect/styles.cjs.js +0 -49
  231. package/dist/src/Inputs/Select/DesignedSelect/styles.cjs.js.map +0 -1
  232. package/dist/src/Inputs/Select/DesignedSelect/styles.d.ts +0 -15
  233. package/dist/src/Inputs/Select/DesignedSelect/styles.d.ts.map +0 -1
  234. package/dist/src/Inputs/Select/DesignedSelect/styles.esm.js +0 -39
  235. package/dist/src/Inputs/Select/DesignedSelect/styles.esm.js.map +0 -1
  236. package/dist/src/Inputs/Select/DesignedSelect/types.d.ts +0 -12
  237. package/dist/src/Inputs/Select/DesignedSelect/types.d.ts.map +0 -1
  238. package/dist/src/Inputs/Select/NativeSelect/Option/index.cjs.js +0 -18
  239. package/dist/src/Inputs/Select/NativeSelect/Option/index.cjs.js.map +0 -1
  240. package/dist/src/Inputs/Select/NativeSelect/Option/index.d.ts +0 -3
  241. package/dist/src/Inputs/Select/NativeSelect/Option/index.d.ts.map +0 -1
  242. package/dist/src/Inputs/Select/NativeSelect/Option/index.esm.js +0 -16
  243. package/dist/src/Inputs/Select/NativeSelect/Option/index.esm.js.map +0 -1
  244. package/dist/src/Inputs/Select/NativeSelect/index.cjs.js +0 -55
  245. package/dist/src/Inputs/Select/NativeSelect/index.cjs.js.map +0 -1
  246. package/dist/src/Inputs/Select/NativeSelect/index.d.ts +0 -8
  247. package/dist/src/Inputs/Select/NativeSelect/index.d.ts.map +0 -1
  248. package/dist/src/Inputs/Select/NativeSelect/index.esm.js +0 -48
  249. package/dist/src/Inputs/Select/NativeSelect/index.esm.js.map +0 -1
  250. package/dist/src/Inputs/Select/NativeSelect/styles.cjs.js +0 -31
  251. package/dist/src/Inputs/Select/NativeSelect/styles.cjs.js.map +0 -1
  252. package/dist/src/Inputs/Select/NativeSelect/styles.d.ts +0 -7
  253. package/dist/src/Inputs/Select/NativeSelect/styles.d.ts.map +0 -1
  254. package/dist/src/Inputs/Select/NativeSelect/styles.esm.js +0 -23
  255. package/dist/src/Inputs/Select/NativeSelect/styles.esm.js.map +0 -1
  256. package/dist/src/Inputs/Select/NativeSelect/types.d.ts +0 -11
  257. package/dist/src/Inputs/Select/NativeSelect/types.d.ts.map +0 -1
  258. package/dist/src/Inputs/Select/Option/index.cjs.js +0 -11
  259. package/dist/src/Inputs/Select/Option/index.cjs.js.map +0 -1
  260. package/dist/src/Inputs/Select/Option/index.d.ts +0 -6
  261. package/dist/src/Inputs/Select/Option/index.d.ts.map +0 -1
  262. package/dist/src/Inputs/Select/Option/index.esm.js +0 -9
  263. package/dist/src/Inputs/Select/Option/index.esm.js.map +0 -1
  264. package/dist/src/Inputs/Select/index.cjs.js +0 -81
  265. package/dist/src/Inputs/Select/index.cjs.js.map +0 -1
  266. package/dist/src/Inputs/Select/index.d.ts +0 -10
  267. package/dist/src/Inputs/Select/index.d.ts.map +0 -1
  268. package/dist/src/Inputs/Select/index.esm.js +0 -75
  269. package/dist/src/Inputs/Select/index.esm.js.map +0 -1
  270. package/dist/src/Inputs/Select/styles.cjs.js +0 -28
  271. package/dist/src/Inputs/Select/styles.cjs.js.map +0 -1
  272. package/dist/src/Inputs/Select/styles.d.ts +0 -6
  273. package/dist/src/Inputs/Select/styles.d.ts.map +0 -1
  274. package/dist/src/Inputs/Select/styles.esm.js +0 -20
  275. package/dist/src/Inputs/Select/styles.esm.js.map +0 -1
  276. package/dist/src/Inputs/Select/types.d.ts +0 -35
  277. package/dist/src/Inputs/Select/types.d.ts.map +0 -1
  278. package/dist/src/Inputs/Select/utils.cjs.js +0 -44
  279. package/dist/src/Inputs/Select/utils.cjs.js.map +0 -1
  280. package/dist/src/Inputs/Select/utils.d.ts +0 -2
  281. package/dist/src/Inputs/Select/utils.d.ts.map +0 -1
  282. package/dist/src/Inputs/Select/utils.esm.js +0 -42
  283. package/dist/src/Inputs/Select/utils.esm.js.map +0 -1
  284. package/dist/src/Inputs/TextInput/index.cjs.js +0 -95
  285. package/dist/src/Inputs/TextInput/index.cjs.js.map +0 -1
  286. package/dist/src/Inputs/TextInput/index.d.ts +0 -5
  287. package/dist/src/Inputs/TextInput/index.d.ts.map +0 -1
  288. package/dist/src/Inputs/TextInput/index.esm.js +0 -87
  289. package/dist/src/Inputs/TextInput/index.esm.js.map +0 -1
  290. package/dist/src/Inputs/TextInput/styles.cjs.js +0 -42
  291. package/dist/src/Inputs/TextInput/styles.cjs.js.map +0 -1
  292. package/dist/src/Inputs/TextInput/styles.d.ts +0 -17
  293. package/dist/src/Inputs/TextInput/styles.d.ts.map +0 -1
  294. package/dist/src/Inputs/TextInput/styles.esm.js +0 -28
  295. package/dist/src/Inputs/TextInput/styles.esm.js.map +0 -1
  296. package/dist/src/Inputs/TextInput/types.d.ts +0 -19
  297. package/dist/src/Inputs/TextInput/types.d.ts.map +0 -1
  298. package/dist/src/Inputs/index.d.ts +0 -3
  299. package/dist/src/Inputs/index.d.ts.map +0 -1
  300. package/dist/src/Logos/EnvLabel/index.cjs.js +0 -28
  301. package/dist/src/Logos/EnvLabel/index.cjs.js.map +0 -1
  302. package/dist/src/Logos/EnvLabel/index.d.ts +0 -3
  303. package/dist/src/Logos/EnvLabel/index.d.ts.map +0 -1
  304. package/dist/src/Logos/EnvLabel/index.esm.js +0 -26
  305. package/dist/src/Logos/EnvLabel/index.esm.js.map +0 -1
  306. package/dist/src/Logos/RememberLogo/index.cjs.js +0 -91
  307. package/dist/src/Logos/RememberLogo/index.cjs.js.map +0 -1
  308. package/dist/src/Logos/RememberLogo/index.d.ts +0 -5
  309. package/dist/src/Logos/RememberLogo/index.d.ts.map +0 -1
  310. package/dist/src/Logos/RememberLogo/index.esm.js +0 -83
  311. package/dist/src/Logos/RememberLogo/index.esm.js.map +0 -1
  312. package/dist/src/Logos/RememberMobileLogo/index.cjs.js +0 -52
  313. package/dist/src/Logos/RememberMobileLogo/index.cjs.js.map +0 -1
  314. package/dist/src/Logos/RememberMobileLogo/index.d.ts +0 -3
  315. package/dist/src/Logos/RememberMobileLogo/index.d.ts.map +0 -1
  316. package/dist/src/Logos/RememberMobileLogo/index.esm.js +0 -45
  317. package/dist/src/Logos/RememberMobileLogo/index.esm.js.map +0 -1
  318. package/dist/src/Logos/RememberServiceLogo/index.cjs.js +0 -47
  319. package/dist/src/Logos/RememberServiceLogo/index.cjs.js.map +0 -1
  320. package/dist/src/Logos/RememberServiceLogo/index.d.ts +0 -9
  321. package/dist/src/Logos/RememberServiceLogo/index.d.ts.map +0 -1
  322. package/dist/src/Logos/RememberServiceLogo/index.esm.js +0 -40
  323. package/dist/src/Logos/RememberServiceLogo/index.esm.js.map +0 -1
  324. package/dist/src/Logos/RememberServiceLogo/style.cjs.js +0 -16
  325. package/dist/src/Logos/RememberServiceLogo/style.cjs.js.map +0 -1
  326. package/dist/src/Logos/RememberServiceLogo/style.d.ts +0 -3
  327. package/dist/src/Logos/RememberServiceLogo/style.d.ts.map +0 -1
  328. package/dist/src/Logos/RememberServiceLogo/style.esm.js +0 -9
  329. package/dist/src/Logos/RememberServiceLogo/style.esm.js.map +0 -1
  330. package/dist/src/Logos/RememberSquareLogo/index.cjs.js +0 -68
  331. package/dist/src/Logos/RememberSquareLogo/index.cjs.js.map +0 -1
  332. package/dist/src/Logos/RememberSquareLogo/index.d.ts +0 -3
  333. package/dist/src/Logos/RememberSquareLogo/index.d.ts.map +0 -1
  334. package/dist/src/Logos/RememberSquareLogo/index.esm.js +0 -61
  335. package/dist/src/Logos/RememberSquareLogo/index.esm.js.map +0 -1
  336. package/dist/src/Logos/index.d.ts +0 -5
  337. package/dist/src/Logos/index.d.ts.map +0 -1
  338. package/dist/src/Logos/types.d.ts +0 -12
  339. package/dist/src/Logos/types.d.ts.map +0 -1
  340. package/dist/src/Modals/Dialog/index.cjs.js +0 -95
  341. package/dist/src/Modals/Dialog/index.cjs.js.map +0 -1
  342. package/dist/src/Modals/Dialog/index.d.ts +0 -32
  343. package/dist/src/Modals/Dialog/index.d.ts.map +0 -1
  344. package/dist/src/Modals/Dialog/index.esm.js +0 -88
  345. package/dist/src/Modals/Dialog/index.esm.js.map +0 -1
  346. package/dist/src/Modals/Dialog/styles.cjs.js +0 -51
  347. package/dist/src/Modals/Dialog/styles.cjs.js.map +0 -1
  348. package/dist/src/Modals/Dialog/styles.d.ts +0 -19
  349. package/dist/src/Modals/Dialog/styles.d.ts.map +0 -1
  350. package/dist/src/Modals/Dialog/styles.esm.js +0 -18
  351. package/dist/src/Modals/Dialog/styles.esm.js.map +0 -1
  352. package/dist/src/Modals/index.d.ts +0 -2
  353. package/dist/src/Modals/index.d.ts.map +0 -1
  354. package/dist/src/Paginations/CompactPagination/index.cjs.js +0 -98
  355. package/dist/src/Paginations/CompactPagination/index.cjs.js.map +0 -1
  356. package/dist/src/Paginations/CompactPagination/index.d.ts +0 -3
  357. package/dist/src/Paginations/CompactPagination/index.d.ts.map +0 -1
  358. package/dist/src/Paginations/CompactPagination/index.esm.js +0 -96
  359. package/dist/src/Paginations/CompactPagination/index.esm.js.map +0 -1
  360. package/dist/src/Paginations/Pagination/index.cjs.js +0 -116
  361. package/dist/src/Paginations/Pagination/index.cjs.js.map +0 -1
  362. package/dist/src/Paginations/Pagination/index.d.ts +0 -3
  363. package/dist/src/Paginations/Pagination/index.d.ts.map +0 -1
  364. package/dist/src/Paginations/Pagination/index.esm.js +0 -114
  365. package/dist/src/Paginations/Pagination/index.esm.js.map +0 -1
  366. package/dist/src/Paginations/index.d.ts +0 -3
  367. package/dist/src/Paginations/index.d.ts.map +0 -1
  368. package/dist/src/Paginations/styles.cjs.js +0 -37
  369. package/dist/src/Paginations/styles.cjs.js.map +0 -1
  370. package/dist/src/Paginations/styles.d.ts +0 -26
  371. package/dist/src/Paginations/styles.d.ts.map +0 -1
  372. package/dist/src/Paginations/styles.esm.js +0 -23
  373. package/dist/src/Paginations/styles.esm.js.map +0 -1
  374. package/dist/src/Paginations/types.d.ts +0 -17
  375. package/dist/src/Paginations/types.d.ts.map +0 -1
  376. package/dist/src/Paginations/usePagination.cjs.js +0 -40
  377. package/dist/src/Paginations/usePagination.cjs.js.map +0 -1
  378. package/dist/src/Paginations/usePagination.d.ts +0 -15
  379. package/dist/src/Paginations/usePagination.d.ts.map +0 -1
  380. package/dist/src/Paginations/usePagination.esm.js +0 -38
  381. package/dist/src/Paginations/usePagination.esm.js.map +0 -1
  382. package/dist/src/hooks/useMouseEventAway.cjs.js +0 -27
  383. package/dist/src/hooks/useMouseEventAway.cjs.js.map +0 -1
  384. package/dist/src/hooks/useMouseEventAway.d.ts +0 -5
  385. package/dist/src/hooks/useMouseEventAway.d.ts.map +0 -1
  386. package/dist/src/hooks/useMouseEventAway.esm.js +0 -25
  387. package/dist/src/hooks/useMouseEventAway.esm.js.map +0 -1
  388. package/dist/src/index.cjs.js +0 -79
  389. package/dist/src/index.cjs.js.map +0 -1
  390. package/dist/src/index.d.ts +0 -11
  391. package/dist/src/index.d.ts.map +0 -1
  392. package/dist/src/index.esm.js +0 -31
  393. package/dist/src/index.esm.js.map +0 -1
  394. package/dist/src/stories/common.styles.d.ts +0 -18
  395. package/dist/src/stories/common.styles.d.ts.map +0 -1
  396. package/dist/src/stories/util.d.ts +0 -7
  397. package/dist/src/stories/util.d.ts.map +0 -1
@@ -1,251 +0,0 @@
1
- "use client";
2
- 'use strict';
3
-
4
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
- var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
- var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
7
- var react = require('react');
8
- var icon = require('@remember-web/icon');
9
- var useMouseEventAway = require('../../../hooks/useMouseEventAway.cjs.js');
10
- var utils = require('../utils.cjs.js');
11
- var index = require('../Option/index.cjs.js');
12
- var styles = require('../styles.cjs.js');
13
- var _const = require('./const.cjs.js');
14
- var styles$1 = require('./styles.cjs.js');
15
- var jsxRuntime = require('react/jsx-runtime');
16
-
17
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
18
-
19
- var _defineProperty__default = /*#__PURE__*/_interopDefault(_defineProperty);
20
- var _slicedToArray__default = /*#__PURE__*/_interopDefault(_slicedToArray);
21
- var _objectWithoutProperties__default = /*#__PURE__*/_interopDefault(_objectWithoutProperties);
22
-
23
- var _excluded = ["children", "value", "maxHeight", "placeholder", "onChange", "width", "extendDirection", "disabled", "onClick"];
24
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26
- var DesignedSelect = function DesignedSelect(_ref, ref) {
27
- var children = _ref.children,
28
- value = _ref.value,
29
- _ref$maxHeight = _ref.maxHeight,
30
- maxHeight = _ref$maxHeight === void 0 ? _const.DEFAULT_MAX_HEIGHT_PX : _ref$maxHeight,
31
- placeholder = _ref.placeholder,
32
- onChange = _ref.onChange,
33
- width = _ref.width,
34
- extendDirection = _ref.extendDirection,
35
- disabled = _ref.disabled,
36
- onClick = _ref.onClick,
37
- props = _objectWithoutProperties__default.default(_ref, _excluded);
38
- var id = react.useId();
39
- var _useState = react.useState('none'),
40
- _useState2 = _slicedToArray__default.default(_useState, 2),
41
- expandedDirection = _useState2[0],
42
- _setExpandedDirection = _useState2[1];
43
- var selectContainerRef = react.useRef(null);
44
- var selectListRef = react.useRef(null);
45
- var clickAwayRef = useMouseEventAway('pointerdown', function () {
46
- setExpandedDirection('none');
47
- });
48
- var setExpandedDirection = react.useCallback(function () {
49
- if (disabled) {
50
- return;
51
- }
52
- _setExpandedDirection.apply(void 0, arguments);
53
- }, [disabled]);
54
- var options = react.Children.toArray(children).filter(function (child) {
55
- return /*#__PURE__*/react.isValidElement(child) && child.type === index.OptionHolder;
56
- }).map(function (_ref2) {
57
- var _ref2$props = _ref2.props,
58
- _children = _ref2$props.children,
59
- _value = _ref2$props.value,
60
- _disabled = _ref2$props.disabled;
61
- return {
62
- label: _children,
63
- value: _value,
64
- disabled: _disabled
65
- };
66
- });
67
- var selectedOption = options.find(function (option) {
68
- return value === option.value;
69
- });
70
- var isExpanded = expandedDirection !== 'none';
71
- var onSelectOption = function onSelectOption(_value, _label) {
72
- var _selectContainerRef$c;
73
- onChange === null || onChange === void 0 || onChange(_value, _label);
74
- setExpandedDirection('none');
75
- (_selectContainerRef$c = selectContainerRef.current) === null || _selectContainerRef$c === void 0 || _selectContainerRef$c.focus();
76
- };
77
-
78
- // 리스트가 하단으로 나와야하는지 상단으로 나와야하는지 계산하는 함수
79
- // 현재 Viewport기준으로 Select컴포넌트가 아래로 확장되었을 때 뷰포트 내에 리스트박스가 노출될 수 있다면 하단으로 확장, 아니라면 상단으로 확장
80
- // direction이 props로 전달되었다면 해당 방향으로 확장
81
- var expandSelectListAtComputedPosition = function expandSelectListAtComputedPosition() {
82
- var _selectContainerRef$c2;
83
- if (extendDirection) {
84
- setExpandedDirection(extendDirection);
85
- return;
86
- }
87
- var selectContainerRect = (_selectContainerRef$c2 = selectContainerRef.current) === null || _selectContainerRef$c2 === void 0 ? void 0 : _selectContainerRef$c2.getBoundingClientRect();
88
- if (!selectContainerRect) {
89
- setExpandedDirection('below');
90
- return;
91
- }
92
-
93
- // SelectOptionWrapper가 마운트되기 전에 계산해야 하기 때문에 clientHeight를 사용하지 못하고 직접 계산
94
- var currentSelectHeight = Math.min(maxHeight, options.length * _const.OPTION_ITEM_HEIGHT_PX);
95
- var bottomGap = document.body.clientHeight - selectContainerRect.bottom;
96
- setExpandedDirection(currentSelectHeight > bottomGap ? 'above' : 'below');
97
- };
98
- var optionItemRef = react.useCallback(function (ele) {
99
- if (!ele) {
100
- return;
101
- }
102
-
103
- // 선택한 요소가 없을때는 첫번째 요소에 focus
104
- if (!value && !ele.previousSibling) {
105
- setTimeout(function () {
106
- return ele.focus();
107
- });
108
- return;
109
- }
110
-
111
- // 선택한 요소가 있다면 해당 요소에 focus
112
- var optionValue = ele.dataset.optionValue || null;
113
- if (optionValue === value) {
114
- setTimeout(function () {
115
- return ele.focus();
116
- });
117
- }
118
- }, [value]);
119
- var keyDownHandler = function keyDownHandler(e) {
120
- var _selectContainerRef$c3;
121
- var focusedElement = document.activeElement;
122
- if (!focusedElement || !(focusedElement instanceof HTMLElement)) {
123
- return;
124
- }
125
- switch (e.key) {
126
- case 'Tab':
127
- if (isExpanded) {
128
- e.preventDefault();
129
- }
130
- break;
131
- case 'ArrowUp':
132
- e.preventDefault();
133
- if (!isExpanded) {
134
- expandSelectListAtComputedPosition();
135
- break;
136
- }
137
- utils.focusSibling(focusedElement, 'previous');
138
- break;
139
- case 'ArrowDown':
140
- e.preventDefault();
141
- if (!isExpanded) {
142
- expandSelectListAtComputedPosition();
143
- break;
144
- }
145
- utils.focusSibling(focusedElement, 'next');
146
- break;
147
- case 'Escape':
148
- e.preventDefault();
149
- setExpandedDirection('none');
150
- (_selectContainerRef$c3 = selectContainerRef.current) === null || _selectContainerRef$c3 === void 0 || _selectContainerRef$c3.focus();
151
- break;
152
- case 'Enter':
153
- case ' ':
154
- e.preventDefault();
155
- if (e.target === e.currentTarget) {
156
- if (isExpanded) {
157
- setExpandedDirection('none');
158
- return;
159
- }
160
- expandSelectListAtComputedPosition();
161
- }
162
- if (focusedElement !== null && focusedElement !== void 0 && focusedElement.matches('[data-option-value]') && focusedElement instanceof HTMLLIElement && focusedElement.dataset.optionValue) {
163
- onSelectOption(focusedElement.dataset.optionValue, focusedElement.innerText);
164
- }
165
- break;
166
- }
167
- };
168
- return /*#__PURE__*/jsxRuntime.jsxs(styles.SelectContainer, _objectSpread(_objectSpread({
169
- ref: function ref(el) {
170
- if (!el) {
171
- return;
172
- }
173
- selectContainerRef.current = el;
174
- clickAwayRef.current = el;
175
- },
176
- $width: width,
177
- tabIndex: disabled ? undefined : 0,
178
- "aria-expanded": isExpanded,
179
- "aria-haspopup": "listbox",
180
- "aria-disabled": disabled,
181
- onKeyDown: keyDownHandler
182
- }, props), {}, {
183
- children: [/*#__PURE__*/jsxRuntime.jsx(styles$1.StyledSelect, {
184
- ref: ref,
185
- onClick: onClick,
186
- expandedDirection: expandedDirection,
187
- isPlaceholder: !selectedOption && !!placeholder,
188
- onPointerDown: function onPointerDown(e) {
189
- if (isExpanded) {
190
- setExpandedDirection('none');
191
- return;
192
- }
193
- e.stopPropagation();
194
- expandSelectListAtComputedPosition();
195
- },
196
- children: (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) || placeholder || 'ㅤ'
197
- }), /*#__PURE__*/jsxRuntime.jsx(styles$1.SelectDownIcon, {
198
- children: isExpanded ? /*#__PURE__*/jsxRuntime.jsx(icon.IconArrow2Up, {
199
- size: "small"
200
- }) : /*#__PURE__*/jsxRuntime.jsx(icon.IconArrow2Down, {
201
- size: "small"
202
- })
203
- }), isExpanded && /*#__PURE__*/jsxRuntime.jsx(styles$1.SelectOptionWrapper, {
204
- role: "listbox",
205
- "aria-activedescendant": value != null ? "".concat(id, "-select-option-").concat(value) : undefined,
206
- ref: selectListRef,
207
- expandedDirection: expandedDirection,
208
- maxHeight: maxHeight,
209
- children: options.map(function (_ref3) {
210
- var optionValue = _ref3.value,
211
- label = _ref3.label,
212
- _disabled = _ref3.disabled;
213
- return /*#__PURE__*/jsxRuntime.jsx(styles$1.SelectOption, {
214
- id: "".concat(id, "-select-option-").concat(optionValue),
215
- role: "option",
216
- tabIndex: _disabled ? undefined : 0,
217
- "aria-selected": optionValue === value,
218
- "aria-disabled": _disabled,
219
- ref: optionItemRef,
220
- isSelected: optionValue === value,
221
- "data-option-value": optionValue
222
- // onMouseEnter를 사용하게 되면 키보드로 스크롤 할 때도 focus가 이동하게 되기 때문에 onMouseMove를 사용
223
- ,
224
- onMouseMove: function onMouseMove(e) {
225
- if (e.currentTarget === document.activeElement) {
226
- return;
227
- }
228
- e.currentTarget.focus({
229
- preventScroll: true
230
- });
231
- },
232
- onFocus: function onFocus() {
233
- var _selectListRef$curren;
234
- (_selectListRef$curren = selectListRef.current) === null || _selectListRef$curren === void 0 || _selectListRef$curren.setAttribute('aria-activedescendant', "".concat(id, "-select-option-").concat(optionValue));
235
- },
236
- onClick: function onClick() {
237
- if (_disabled) {
238
- return;
239
- }
240
- onSelectOption(optionValue, label);
241
- },
242
- children: label
243
- }, optionValue);
244
- })
245
- })]
246
- }));
247
- };
248
- var DesignedSelect$1 = /*#__PURE__*/react.forwardRef(DesignedSelect);
249
-
250
- module.exports = DesignedSelect$1;
251
- //# sourceMappingURL=index.cjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../../../src/Inputs/Select/DesignedSelect/index.tsx"],"sourcesContent":["'use client';\n\nimport type { KeyboardEvent, ReactNode, Ref, RefCallback } from 'react';\nimport {\n Children,\n forwardRef,\n isValidElement,\n useCallback,\n useRef,\n useState,\n useId,\n} from 'react';\nimport { IconArrow2Down, IconArrow2Up } from '@remember-web/icon';\n\nimport useMouseEventAway from '@/hooks/useMouseEventAway';\n\nimport { focusSibling } from '../utils';\nimport { OptionHolder } from '../Option';\nimport { SelectContainer } from '../styles';\nimport type { OptionElementType, SelectValue } from '../types';\nimport { DEFAULT_MAX_HEIGHT_PX, OPTION_ITEM_HEIGHT_PX } from './const';\nimport {\n SelectDownIcon,\n SelectOption,\n SelectOptionWrapper,\n StyledSelect,\n} from './styles';\nimport type { DesignedSelectInternalProps, ExpandedType } from './types';\n\nconst DesignedSelect = <Value extends SelectValue>(\n {\n children,\n value,\n maxHeight = DEFAULT_MAX_HEIGHT_PX,\n placeholder,\n onChange,\n width,\n extendDirection,\n disabled,\n onClick,\n ...props\n }: DesignedSelectInternalProps<Value>,\n ref?: Ref<HTMLDivElement>\n) => {\n const id = useId();\n const [expandedDirection, _setExpandedDirection] =\n useState<ExpandedType>('none');\n const selectContainerRef = useRef<HTMLDivElement | null>(null);\n const selectListRef = useRef<HTMLUListElement | null>(null);\n const clickAwayRef = useMouseEventAway<HTMLDivElement, 'pointerdown'>(\n 'pointerdown',\n () => {\n setExpandedDirection('none');\n }\n );\n\n const setExpandedDirection = useCallback(\n (...args: Parameters<typeof _setExpandedDirection>) => {\n if (disabled) {\n return;\n }\n _setExpandedDirection(...args);\n },\n [disabled]\n );\n\n const options = Children.toArray(children)\n .filter(\n (child): child is OptionElementType<Value> =>\n isValidElement(child) && child.type === OptionHolder\n )\n .map(\n ({\n props: { children: _children, value: _value, disabled: _disabled },\n }) => ({\n label: _children,\n value: _value,\n disabled: _disabled,\n })\n );\n\n const selectedOption = options.find((option) => value === option.value);\n\n const isExpanded = expandedDirection !== 'none';\n\n const onSelectOption = (_value: Value, _label: ReactNode) => {\n onChange?.(_value, _label);\n setExpandedDirection('none');\n selectContainerRef.current?.focus();\n };\n\n // 리스트가 하단으로 나와야하는지 상단으로 나와야하는지 계산하는 함수\n // 현재 Viewport기준으로 Select컴포넌트가 아래로 확장되었을 때 뷰포트 내에 리스트박스가 노출될 수 있다면 하단으로 확장, 아니라면 상단으로 확장\n // direction이 props로 전달되었다면 해당 방향으로 확장\n const expandSelectListAtComputedPosition = () => {\n if (extendDirection) {\n setExpandedDirection(extendDirection);\n return;\n }\n\n const selectContainerRect =\n selectContainerRef.current?.getBoundingClientRect();\n\n if (!selectContainerRect) {\n setExpandedDirection('below');\n return;\n }\n\n // SelectOptionWrapper가 마운트되기 전에 계산해야 하기 때문에 clientHeight를 사용하지 못하고 직접 계산\n const currentSelectHeight = Math.min(\n maxHeight,\n options.length * OPTION_ITEM_HEIGHT_PX\n );\n const bottomGap = document.body.clientHeight - selectContainerRect.bottom;\n\n setExpandedDirection(currentSelectHeight > bottomGap ? 'above' : 'below');\n };\n\n const optionItemRef = useCallback<RefCallback<HTMLLIElement>>(\n (ele) => {\n if (!ele) {\n return;\n }\n\n // 선택한 요소가 없을때는 첫번째 요소에 focus\n if (!value && !ele.previousSibling) {\n setTimeout(() => ele.focus());\n return;\n }\n\n // 선택한 요소가 있다면 해당 요소에 focus\n const optionValue = ele.dataset.optionValue || null;\n if (optionValue === value) {\n setTimeout(() => ele.focus());\n }\n },\n [value]\n );\n\n const keyDownHandler = (e: KeyboardEvent) => {\n const focusedElement = document.activeElement;\n\n if (!focusedElement || !(focusedElement instanceof HTMLElement)) {\n return;\n }\n\n switch (e.key) {\n case 'Tab':\n if (isExpanded) {\n e.preventDefault();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n if (!isExpanded) {\n expandSelectListAtComputedPosition();\n break;\n }\n focusSibling(focusedElement, 'previous');\n break;\n case 'ArrowDown':\n e.preventDefault();\n if (!isExpanded) {\n expandSelectListAtComputedPosition();\n break;\n }\n focusSibling(focusedElement, 'next');\n break;\n case 'Escape':\n e.preventDefault();\n setExpandedDirection('none');\n selectContainerRef.current?.focus();\n break;\n case 'Enter':\n case ' ':\n e.preventDefault();\n\n if (e.target === e.currentTarget) {\n if (isExpanded) {\n setExpandedDirection('none');\n return;\n }\n expandSelectListAtComputedPosition();\n }\n\n if (\n focusedElement?.matches('[data-option-value]') &&\n focusedElement instanceof HTMLLIElement &&\n focusedElement.dataset.optionValue\n ) {\n onSelectOption(\n focusedElement.dataset.optionValue as Value,\n focusedElement.innerText\n );\n }\n break;\n default:\n break;\n }\n };\n\n return (\n <SelectContainer\n ref={(el) => {\n if (!el) {\n return;\n }\n selectContainerRef.current = el;\n clickAwayRef.current = el;\n }}\n $width={width}\n tabIndex={disabled ? undefined : 0}\n aria-expanded={isExpanded}\n aria-haspopup=\"listbox\"\n aria-disabled={disabled}\n onKeyDown={keyDownHandler}\n {...props}\n >\n <StyledSelect\n ref={ref}\n onClick={onClick}\n expandedDirection={expandedDirection}\n isPlaceholder={!selectedOption && !!placeholder}\n onPointerDown={(e) => {\n if (isExpanded) {\n setExpandedDirection('none');\n return;\n }\n\n e.stopPropagation();\n\n expandSelectListAtComputedPosition();\n }}\n >\n {selectedOption?.label || placeholder || 'ㅤ'}\n </StyledSelect>\n <SelectDownIcon>\n {isExpanded ? (\n <IconArrow2Up size=\"small\" />\n ) : (\n <IconArrow2Down size=\"small\" />\n )}\n </SelectDownIcon>\n {isExpanded && (\n <SelectOptionWrapper\n role=\"listbox\"\n aria-activedescendant={\n value != null ? `${id}-select-option-${value}` : undefined\n }\n ref={selectListRef}\n expandedDirection={expandedDirection}\n maxHeight={maxHeight}\n >\n {options.map(({ value: optionValue, label, disabled: _disabled }) => (\n <SelectOption\n id={`${id}-select-option-${optionValue}`}\n role=\"option\"\n key={optionValue}\n tabIndex={_disabled ? undefined : 0}\n aria-selected={optionValue === value}\n aria-disabled={_disabled}\n ref={optionItemRef}\n isSelected={optionValue === value}\n data-option-value={optionValue}\n // onMouseEnter를 사용하게 되면 키보드로 스크롤 할 때도 focus가 이동하게 되기 때문에 onMouseMove를 사용\n onMouseMove={(e) => {\n if (e.currentTarget === document.activeElement) {\n return;\n }\n e.currentTarget.focus({\n preventScroll: true,\n });\n }}\n onFocus={() => {\n selectListRef.current?.setAttribute(\n 'aria-activedescendant',\n `${id}-select-option-${optionValue}`\n );\n }}\n onClick={() => {\n if (_disabled) {\n return;\n }\n\n onSelectOption(optionValue, label);\n }}\n >\n {label}\n </SelectOption>\n ))}\n </SelectOptionWrapper>\n )}\n </SelectContainer>\n );\n};\n\nexport default forwardRef(DesignedSelect);\n"],"names":["maxHeight","props","expandedDirection","_setExpandedDirection","label","value","disabled","setTimeout","expandSelectListAtComputedPosition","focusSibling","ref","$width","tabIndex","onKeyDown","onClick","isPlaceholder","onPointerDown","children","size","role","onMouseMove","e","preventScroll","onSelectOption"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAa;AAAA;AAAA;AA6Bb;AAcK;;;AAVDA;;;;;;;AAOGC;AAIL;AACA;;AAAOC;AAAmBC;AAE1B;AACA;AACA;;AAIE;AAGF;AAEI;AACE;AACF;AACAA;AACF;AAIF;;AAG0D;AAGtD;;;;;AAGEC;AACAC;AACAC;;AACD;AAGL;AAA2C;;AAE3C;;AAE6D;;;AAG3D;;;AAGF;AACA;AACA;AACA;AAAiD;AAC/C;;AAEE;AACF;AAEA;;;AAKE;AACF;;AAEA;AACA;;;;AASF;;AAGM;AACF;;AAEA;AACA;AACEC;AAAW;;AACX;AACF;;AAEA;;;AAGEA;AAAW;;AACb;AACF;AAIF;AAA6C;AAC3C;;AAGE;AACF;;AAGE;AACE;;AAEA;AACA;AACF;;;AAGIC;AACA;AACF;AACAC;AACA;AACF;;;AAGID;AACA;AACF;AACAC;AACA;AACF;;;AAGE;AACA;AACF;AACA;;AAGE;AACE;;AAEE;AACF;AACAD;AACF;;;AAWA;AACA;AAGJ;;AAGF;AAEIE;;AAEI;AACF;;;;AAIFC;AACAC;AACA;AACA;AACA;AACAC;AAA0B;;AAIxBH;AACAI;AACAZ;AACAa;AACAC;AACE;;AAEE;AACF;;AAIAR;;;AAG0C;AAE/BS;AAEGC;AAAY;AAEVA;;AACjB;AAICC;AACA;AAGAT;AACAR;AACAF;AAAqBiB;AAER;;;;;AAGTE;AAEAP;;AAEA;AACAF;;;AAGA;AAAA;AACAU;AACE;AACE;AACF;AACAC;AACEC;AACF;;;AAEa;;;;AAOb;AACE;AACF;AAEAC;;AACAN;AAEI;;AAER;AAEL;AAGP;AAEA;;"}
@@ -1,12 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- import type { OptionElementType, SelectValue } from '../types';
3
- declare const _default: import("react").ForwardRefExoticComponent<Omit<import("react").SelectHTMLAttributes<HTMLDivElement>, `aria-${string}` | "children" | "onChange"> & {
4
- children: OptionElementType<SelectValue> | OptionElementType<SelectValue>[];
5
- onChange?: ((targetValue: SelectValue, targetLabel: ReactNode) => void | Promise<void>) | undefined;
6
- maxHeight?: number | undefined;
7
- width?: string | number | undefined;
8
- placeholder?: string | undefined;
9
- extendDirection?: "above" | "below" | undefined;
10
- } & import("react").RefAttributes<HTMLDivElement>>;
11
- export default _default;
12
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/Inputs/Select/DesignedSelect/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,SAAS,EAAoB,MAAM,OAAO,CAAC;AAiBxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;;;;;;;;;AAqR/D,wBAA0C"}
@@ -1,243 +0,0 @@
1
- "use client";
2
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
3
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
4
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
5
- import { forwardRef, useId, useState, useRef, useCallback, Children, isValidElement } from 'react';
6
- import { IconArrow2Up, IconArrow2Down } from '@remember-web/icon';
7
- import useMouseEventAway from '../../../hooks/useMouseEventAway.esm.js';
8
- import { focusSibling } from '../utils.esm.js';
9
- import { OptionHolder } from '../Option/index.esm.js';
10
- import { SelectContainer } from '../styles.esm.js';
11
- import { DEFAULT_MAX_HEIGHT_PX, OPTION_ITEM_HEIGHT_PX } from './const.esm.js';
12
- import { StyledSelect, SelectDownIcon, SelectOptionWrapper, SelectOption } from './styles.esm.js';
13
- import { jsxs, jsx } from 'react/jsx-runtime';
14
-
15
- var _excluded = ["children", "value", "maxHeight", "placeholder", "onChange", "width", "extendDirection", "disabled", "onClick"];
16
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
- var DesignedSelect = function DesignedSelect(_ref, ref) {
19
- var children = _ref.children,
20
- value = _ref.value,
21
- _ref$maxHeight = _ref.maxHeight,
22
- maxHeight = _ref$maxHeight === void 0 ? DEFAULT_MAX_HEIGHT_PX : _ref$maxHeight,
23
- placeholder = _ref.placeholder,
24
- onChange = _ref.onChange,
25
- width = _ref.width,
26
- extendDirection = _ref.extendDirection,
27
- disabled = _ref.disabled,
28
- onClick = _ref.onClick,
29
- props = _objectWithoutProperties(_ref, _excluded);
30
- var id = useId();
31
- var _useState = useState('none'),
32
- _useState2 = _slicedToArray(_useState, 2),
33
- expandedDirection = _useState2[0],
34
- _setExpandedDirection = _useState2[1];
35
- var selectContainerRef = useRef(null);
36
- var selectListRef = useRef(null);
37
- var clickAwayRef = useMouseEventAway('pointerdown', function () {
38
- setExpandedDirection('none');
39
- });
40
- var setExpandedDirection = useCallback(function () {
41
- if (disabled) {
42
- return;
43
- }
44
- _setExpandedDirection.apply(void 0, arguments);
45
- }, [disabled]);
46
- var options = Children.toArray(children).filter(function (child) {
47
- return /*#__PURE__*/isValidElement(child) && child.type === OptionHolder;
48
- }).map(function (_ref2) {
49
- var _ref2$props = _ref2.props,
50
- _children = _ref2$props.children,
51
- _value = _ref2$props.value,
52
- _disabled = _ref2$props.disabled;
53
- return {
54
- label: _children,
55
- value: _value,
56
- disabled: _disabled
57
- };
58
- });
59
- var selectedOption = options.find(function (option) {
60
- return value === option.value;
61
- });
62
- var isExpanded = expandedDirection !== 'none';
63
- var onSelectOption = function onSelectOption(_value, _label) {
64
- var _selectContainerRef$c;
65
- onChange === null || onChange === void 0 || onChange(_value, _label);
66
- setExpandedDirection('none');
67
- (_selectContainerRef$c = selectContainerRef.current) === null || _selectContainerRef$c === void 0 || _selectContainerRef$c.focus();
68
- };
69
-
70
- // 리스트가 하단으로 나와야하는지 상단으로 나와야하는지 계산하는 함수
71
- // 현재 Viewport기준으로 Select컴포넌트가 아래로 확장되었을 때 뷰포트 내에 리스트박스가 노출될 수 있다면 하단으로 확장, 아니라면 상단으로 확장
72
- // direction이 props로 전달되었다면 해당 방향으로 확장
73
- var expandSelectListAtComputedPosition = function expandSelectListAtComputedPosition() {
74
- var _selectContainerRef$c2;
75
- if (extendDirection) {
76
- setExpandedDirection(extendDirection);
77
- return;
78
- }
79
- var selectContainerRect = (_selectContainerRef$c2 = selectContainerRef.current) === null || _selectContainerRef$c2 === void 0 ? void 0 : _selectContainerRef$c2.getBoundingClientRect();
80
- if (!selectContainerRect) {
81
- setExpandedDirection('below');
82
- return;
83
- }
84
-
85
- // SelectOptionWrapper가 마운트되기 전에 계산해야 하기 때문에 clientHeight를 사용하지 못하고 직접 계산
86
- var currentSelectHeight = Math.min(maxHeight, options.length * OPTION_ITEM_HEIGHT_PX);
87
- var bottomGap = document.body.clientHeight - selectContainerRect.bottom;
88
- setExpandedDirection(currentSelectHeight > bottomGap ? 'above' : 'below');
89
- };
90
- var optionItemRef = useCallback(function (ele) {
91
- if (!ele) {
92
- return;
93
- }
94
-
95
- // 선택한 요소가 없을때는 첫번째 요소에 focus
96
- if (!value && !ele.previousSibling) {
97
- setTimeout(function () {
98
- return ele.focus();
99
- });
100
- return;
101
- }
102
-
103
- // 선택한 요소가 있다면 해당 요소에 focus
104
- var optionValue = ele.dataset.optionValue || null;
105
- if (optionValue === value) {
106
- setTimeout(function () {
107
- return ele.focus();
108
- });
109
- }
110
- }, [value]);
111
- var keyDownHandler = function keyDownHandler(e) {
112
- var _selectContainerRef$c3;
113
- var focusedElement = document.activeElement;
114
- if (!focusedElement || !(focusedElement instanceof HTMLElement)) {
115
- return;
116
- }
117
- switch (e.key) {
118
- case 'Tab':
119
- if (isExpanded) {
120
- e.preventDefault();
121
- }
122
- break;
123
- case 'ArrowUp':
124
- e.preventDefault();
125
- if (!isExpanded) {
126
- expandSelectListAtComputedPosition();
127
- break;
128
- }
129
- focusSibling(focusedElement, 'previous');
130
- break;
131
- case 'ArrowDown':
132
- e.preventDefault();
133
- if (!isExpanded) {
134
- expandSelectListAtComputedPosition();
135
- break;
136
- }
137
- focusSibling(focusedElement, 'next');
138
- break;
139
- case 'Escape':
140
- e.preventDefault();
141
- setExpandedDirection('none');
142
- (_selectContainerRef$c3 = selectContainerRef.current) === null || _selectContainerRef$c3 === void 0 || _selectContainerRef$c3.focus();
143
- break;
144
- case 'Enter':
145
- case ' ':
146
- e.preventDefault();
147
- if (e.target === e.currentTarget) {
148
- if (isExpanded) {
149
- setExpandedDirection('none');
150
- return;
151
- }
152
- expandSelectListAtComputedPosition();
153
- }
154
- if (focusedElement !== null && focusedElement !== void 0 && focusedElement.matches('[data-option-value]') && focusedElement instanceof HTMLLIElement && focusedElement.dataset.optionValue) {
155
- onSelectOption(focusedElement.dataset.optionValue, focusedElement.innerText);
156
- }
157
- break;
158
- }
159
- };
160
- return /*#__PURE__*/jsxs(SelectContainer, _objectSpread(_objectSpread({
161
- ref: function ref(el) {
162
- if (!el) {
163
- return;
164
- }
165
- selectContainerRef.current = el;
166
- clickAwayRef.current = el;
167
- },
168
- $width: width,
169
- tabIndex: disabled ? undefined : 0,
170
- "aria-expanded": isExpanded,
171
- "aria-haspopup": "listbox",
172
- "aria-disabled": disabled,
173
- onKeyDown: keyDownHandler
174
- }, props), {}, {
175
- children: [/*#__PURE__*/jsx(StyledSelect, {
176
- ref: ref,
177
- onClick: onClick,
178
- expandedDirection: expandedDirection,
179
- isPlaceholder: !selectedOption && !!placeholder,
180
- onPointerDown: function onPointerDown(e) {
181
- if (isExpanded) {
182
- setExpandedDirection('none');
183
- return;
184
- }
185
- e.stopPropagation();
186
- expandSelectListAtComputedPosition();
187
- },
188
- children: (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) || placeholder || 'ㅤ'
189
- }), /*#__PURE__*/jsx(SelectDownIcon, {
190
- children: isExpanded ? /*#__PURE__*/jsx(IconArrow2Up, {
191
- size: "small"
192
- }) : /*#__PURE__*/jsx(IconArrow2Down, {
193
- size: "small"
194
- })
195
- }), isExpanded && /*#__PURE__*/jsx(SelectOptionWrapper, {
196
- role: "listbox",
197
- "aria-activedescendant": value != null ? "".concat(id, "-select-option-").concat(value) : undefined,
198
- ref: selectListRef,
199
- expandedDirection: expandedDirection,
200
- maxHeight: maxHeight,
201
- children: options.map(function (_ref3) {
202
- var optionValue = _ref3.value,
203
- label = _ref3.label,
204
- _disabled = _ref3.disabled;
205
- return /*#__PURE__*/jsx(SelectOption, {
206
- id: "".concat(id, "-select-option-").concat(optionValue),
207
- role: "option",
208
- tabIndex: _disabled ? undefined : 0,
209
- "aria-selected": optionValue === value,
210
- "aria-disabled": _disabled,
211
- ref: optionItemRef,
212
- isSelected: optionValue === value,
213
- "data-option-value": optionValue
214
- // onMouseEnter를 사용하게 되면 키보드로 스크롤 할 때도 focus가 이동하게 되기 때문에 onMouseMove를 사용
215
- ,
216
- onMouseMove: function onMouseMove(e) {
217
- if (e.currentTarget === document.activeElement) {
218
- return;
219
- }
220
- e.currentTarget.focus({
221
- preventScroll: true
222
- });
223
- },
224
- onFocus: function onFocus() {
225
- var _selectListRef$curren;
226
- (_selectListRef$curren = selectListRef.current) === null || _selectListRef$curren === void 0 || _selectListRef$curren.setAttribute('aria-activedescendant', "".concat(id, "-select-option-").concat(optionValue));
227
- },
228
- onClick: function onClick() {
229
- if (_disabled) {
230
- return;
231
- }
232
- onSelectOption(optionValue, label);
233
- },
234
- children: label
235
- }, optionValue);
236
- })
237
- })]
238
- }));
239
- };
240
- var DesignedSelect$1 = /*#__PURE__*/forwardRef(DesignedSelect);
241
-
242
- export { DesignedSelect$1 as default };
243
- //# sourceMappingURL=index.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../../../../src/Inputs/Select/DesignedSelect/index.tsx"],"sourcesContent":["'use client';\n\nimport type { KeyboardEvent, ReactNode, Ref, RefCallback } from 'react';\nimport {\n Children,\n forwardRef,\n isValidElement,\n useCallback,\n useRef,\n useState,\n useId,\n} from 'react';\nimport { IconArrow2Down, IconArrow2Up } from '@remember-web/icon';\n\nimport useMouseEventAway from '@/hooks/useMouseEventAway';\n\nimport { focusSibling } from '../utils';\nimport { OptionHolder } from '../Option';\nimport { SelectContainer } from '../styles';\nimport type { OptionElementType, SelectValue } from '../types';\nimport { DEFAULT_MAX_HEIGHT_PX, OPTION_ITEM_HEIGHT_PX } from './const';\nimport {\n SelectDownIcon,\n SelectOption,\n SelectOptionWrapper,\n StyledSelect,\n} from './styles';\nimport type { DesignedSelectInternalProps, ExpandedType } from './types';\n\nconst DesignedSelect = <Value extends SelectValue>(\n {\n children,\n value,\n maxHeight = DEFAULT_MAX_HEIGHT_PX,\n placeholder,\n onChange,\n width,\n extendDirection,\n disabled,\n onClick,\n ...props\n }: DesignedSelectInternalProps<Value>,\n ref?: Ref<HTMLDivElement>\n) => {\n const id = useId();\n const [expandedDirection, _setExpandedDirection] =\n useState<ExpandedType>('none');\n const selectContainerRef = useRef<HTMLDivElement | null>(null);\n const selectListRef = useRef<HTMLUListElement | null>(null);\n const clickAwayRef = useMouseEventAway<HTMLDivElement, 'pointerdown'>(\n 'pointerdown',\n () => {\n setExpandedDirection('none');\n }\n );\n\n const setExpandedDirection = useCallback(\n (...args: Parameters<typeof _setExpandedDirection>) => {\n if (disabled) {\n return;\n }\n _setExpandedDirection(...args);\n },\n [disabled]\n );\n\n const options = Children.toArray(children)\n .filter(\n (child): child is OptionElementType<Value> =>\n isValidElement(child) && child.type === OptionHolder\n )\n .map(\n ({\n props: { children: _children, value: _value, disabled: _disabled },\n }) => ({\n label: _children,\n value: _value,\n disabled: _disabled,\n })\n );\n\n const selectedOption = options.find((option) => value === option.value);\n\n const isExpanded = expandedDirection !== 'none';\n\n const onSelectOption = (_value: Value, _label: ReactNode) => {\n onChange?.(_value, _label);\n setExpandedDirection('none');\n selectContainerRef.current?.focus();\n };\n\n // 리스트가 하단으로 나와야하는지 상단으로 나와야하는지 계산하는 함수\n // 현재 Viewport기준으로 Select컴포넌트가 아래로 확장되었을 때 뷰포트 내에 리스트박스가 노출될 수 있다면 하단으로 확장, 아니라면 상단으로 확장\n // direction이 props로 전달되었다면 해당 방향으로 확장\n const expandSelectListAtComputedPosition = () => {\n if (extendDirection) {\n setExpandedDirection(extendDirection);\n return;\n }\n\n const selectContainerRect =\n selectContainerRef.current?.getBoundingClientRect();\n\n if (!selectContainerRect) {\n setExpandedDirection('below');\n return;\n }\n\n // SelectOptionWrapper가 마운트되기 전에 계산해야 하기 때문에 clientHeight를 사용하지 못하고 직접 계산\n const currentSelectHeight = Math.min(\n maxHeight,\n options.length * OPTION_ITEM_HEIGHT_PX\n );\n const bottomGap = document.body.clientHeight - selectContainerRect.bottom;\n\n setExpandedDirection(currentSelectHeight > bottomGap ? 'above' : 'below');\n };\n\n const optionItemRef = useCallback<RefCallback<HTMLLIElement>>(\n (ele) => {\n if (!ele) {\n return;\n }\n\n // 선택한 요소가 없을때는 첫번째 요소에 focus\n if (!value && !ele.previousSibling) {\n setTimeout(() => ele.focus());\n return;\n }\n\n // 선택한 요소가 있다면 해당 요소에 focus\n const optionValue = ele.dataset.optionValue || null;\n if (optionValue === value) {\n setTimeout(() => ele.focus());\n }\n },\n [value]\n );\n\n const keyDownHandler = (e: KeyboardEvent) => {\n const focusedElement = document.activeElement;\n\n if (!focusedElement || !(focusedElement instanceof HTMLElement)) {\n return;\n }\n\n switch (e.key) {\n case 'Tab':\n if (isExpanded) {\n e.preventDefault();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n if (!isExpanded) {\n expandSelectListAtComputedPosition();\n break;\n }\n focusSibling(focusedElement, 'previous');\n break;\n case 'ArrowDown':\n e.preventDefault();\n if (!isExpanded) {\n expandSelectListAtComputedPosition();\n break;\n }\n focusSibling(focusedElement, 'next');\n break;\n case 'Escape':\n e.preventDefault();\n setExpandedDirection('none');\n selectContainerRef.current?.focus();\n break;\n case 'Enter':\n case ' ':\n e.preventDefault();\n\n if (e.target === e.currentTarget) {\n if (isExpanded) {\n setExpandedDirection('none');\n return;\n }\n expandSelectListAtComputedPosition();\n }\n\n if (\n focusedElement?.matches('[data-option-value]') &&\n focusedElement instanceof HTMLLIElement &&\n focusedElement.dataset.optionValue\n ) {\n onSelectOption(\n focusedElement.dataset.optionValue as Value,\n focusedElement.innerText\n );\n }\n break;\n default:\n break;\n }\n };\n\n return (\n <SelectContainer\n ref={(el) => {\n if (!el) {\n return;\n }\n selectContainerRef.current = el;\n clickAwayRef.current = el;\n }}\n $width={width}\n tabIndex={disabled ? undefined : 0}\n aria-expanded={isExpanded}\n aria-haspopup=\"listbox\"\n aria-disabled={disabled}\n onKeyDown={keyDownHandler}\n {...props}\n >\n <StyledSelect\n ref={ref}\n onClick={onClick}\n expandedDirection={expandedDirection}\n isPlaceholder={!selectedOption && !!placeholder}\n onPointerDown={(e) => {\n if (isExpanded) {\n setExpandedDirection('none');\n return;\n }\n\n e.stopPropagation();\n\n expandSelectListAtComputedPosition();\n }}\n >\n {selectedOption?.label || placeholder || 'ㅤ'}\n </StyledSelect>\n <SelectDownIcon>\n {isExpanded ? (\n <IconArrow2Up size=\"small\" />\n ) : (\n <IconArrow2Down size=\"small\" />\n )}\n </SelectDownIcon>\n {isExpanded && (\n <SelectOptionWrapper\n role=\"listbox\"\n aria-activedescendant={\n value != null ? `${id}-select-option-${value}` : undefined\n }\n ref={selectListRef}\n expandedDirection={expandedDirection}\n maxHeight={maxHeight}\n >\n {options.map(({ value: optionValue, label, disabled: _disabled }) => (\n <SelectOption\n id={`${id}-select-option-${optionValue}`}\n role=\"option\"\n key={optionValue}\n tabIndex={_disabled ? undefined : 0}\n aria-selected={optionValue === value}\n aria-disabled={_disabled}\n ref={optionItemRef}\n isSelected={optionValue === value}\n data-option-value={optionValue}\n // onMouseEnter를 사용하게 되면 키보드로 스크롤 할 때도 focus가 이동하게 되기 때문에 onMouseMove를 사용\n onMouseMove={(e) => {\n if (e.currentTarget === document.activeElement) {\n return;\n }\n e.currentTarget.focus({\n preventScroll: true,\n });\n }}\n onFocus={() => {\n selectListRef.current?.setAttribute(\n 'aria-activedescendant',\n `${id}-select-option-${optionValue}`\n );\n }}\n onClick={() => {\n if (_disabled) {\n return;\n }\n\n onSelectOption(optionValue, label);\n }}\n >\n {label}\n </SelectOption>\n ))}\n </SelectOptionWrapper>\n )}\n </SelectContainer>\n );\n};\n\nexport default forwardRef(DesignedSelect);\n"],"names":["maxHeight","props","expandedDirection","_setExpandedDirection","label","value","disabled","setTimeout","expandSelectListAtComputedPosition","focusSibling","ref","$width","tabIndex","onKeyDown","onClick","isPlaceholder","onPointerDown","children","size","role","onMouseMove","e","preventScroll","onSelectOption"],"mappings":";;;;;;;;;;;;;;AAAa;AAAA;AAAA;AA6Bb;AAcK;;;AAVDA;;;;;;;AAOGC;AAIL;AACA;;AAAOC;AAAmBC;AAE1B;AACA;AACA;;AAIE;AAGF;AAEI;AACE;AACF;AACAA;AACF;AAIF;;AAG0D;AAGtD;;;;;AAGEC;AACAC;AACAC;;AACD;AAGL;AAA2C;;AAE3C;;AAE6D;;;AAG3D;;;AAGF;AACA;AACA;AACA;AAAiD;AAC/C;;AAEE;AACF;AAEA;;;AAKE;AACF;;AAEA;AACA;;;;AASF;;AAGM;AACF;;AAEA;AACA;AACEC;AAAW;;AACX;AACF;;AAEA;;;AAGEA;AAAW;;AACb;AACF;AAIF;AAA6C;AAC3C;;AAGE;AACF;;AAGE;AACE;;AAEA;AACA;AACF;;;AAGIC;AACA;AACF;AACAC;AACA;AACF;;;AAGID;AACA;AACF;AACAC;AACA;AACF;;;AAGE;AACA;AACF;AACA;;AAGE;AACE;;AAEE;AACF;AACAD;AACF;;;AAWA;AACA;AAGJ;;AAGF;AAEIE;;AAEI;AACF;;;;AAIFC;AACAC;AACA;AACA;AACA;AACAC;AAA0B;;AAIxBH;AACAI;AACAZ;AACAa;AACAC;AACE;;AAEE;AACF;;AAIAR;;;AAG0C;AAE/BS;AAEGC;AAAY;AAEVA;;AACjB;AAICC;AACA;AAGAT;AACAR;AACAF;AAAqBiB;AAER;;;;;AAGTE;AAEAP;;AAEA;AACAF;;;AAGA;AAAA;AACAU;AACE;AACE;AACF;AACAC;AACEC;AACF;;;AAEa;;;;AAOb;AACE;AACF;AAEAC;;AACAN;AAEI;;AAER;AAEL;AAGP;AAEA;;"}
@@ -1,49 +0,0 @@
1
- "use client";
2
- 'use strict';
3
-
4
- var _taggedTemplateLiteral = require('@babel/runtime/helpers/taggedTemplateLiteral');
5
- var styled = require('styled-components');
6
- var mixin = require('@remember-web/mixin');
7
- var styles = require('../styles.cjs.js');
8
-
9
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
10
-
11
- var _taggedTemplateLiteral__default = /*#__PURE__*/_interopDefault(_taggedTemplateLiteral);
12
- var styled__default = /*#__PURE__*/_interopDefault(styled);
13
-
14
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
15
- var StyledSelect = styled__default.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral__default.default(["\n ", "\n border: 1px solid ", ";\n ", ";\n\n padding: 10px 36px 10px 12px;\n transition: border-color 0.2s, background-color 0.2s;\n\n ", "\n\n ", ":focus-within & {\n outline: none;\n border-color: ", ";\n }\n ", ":not([aria-disabled='true']) & {\n @media (hover: hover) {\n &:hover {\n background-color: ", ";\n }\n }\n\n &:active {\n background-color: ", ";\n }\n }\n"])), mixin.ellipsis(), mixin.contents300, function (_ref) {
16
- var expandedDirection = _ref.expandedDirection;
17
- return {
18
- none: styled.css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral__default.default(["\n border-radius: 4px;\n "]))),
19
- above: styled.css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral__default.default(["\n border-radius: 0 0 4px 4px;\n border-top-color: transparent;\n "]))),
20
- below: styled.css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral__default.default(["\n border-radius: 4px 4px 0 0;\n border-bottom-color: transparent;\n "])))
21
- }[expandedDirection !== null && expandedDirection !== void 0 ? expandedDirection : 'none'];
22
- }, function (_ref2) {
23
- var isPlaceholder = _ref2.isPlaceholder;
24
- return isPlaceholder && styled.css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral__default.default(["\n color: ", ";\n "])), mixin.contents200);
25
- }, styles.SelectContainer, mixin.contents000, styles.SelectContainer, mixin.bg200, mixin.bg300);
26
- var SelectDownIcon = styled__default.default.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral__default.default(["\n position: absolute;\n right: 12px;\n top: 50%;\n transform: translateY(-50%);\n\n & > svg {\n display: block;\n }\n\n pointer-events: none;\n"])));
27
- var SelectOptionWrapper = styled__default.default.ul(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral__default.default(["\n all: unset;\n position: absolute;\n left: 0;\n right: 0;\n z-index: 1;\n border: 1px solid ", ";\n background-color: ", ";\n overflow-y: scroll;\n overscroll-behavior: contain;\n transition: border-color 0.2s, background-color 0.2s;\n\n ", ";\n\n ", "\n\n ", ":focus &, ", ":focus-within & {\n outline: none;\n border-color: ", ";\n }\n"])), mixin.contents300, mixin.bg100, function (_ref3) {
28
- var maxHeight = _ref3.maxHeight;
29
- if (!maxHeight) {
30
- return null;
31
- }
32
- if (typeof maxHeight === 'number') {
33
- return styled.css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral__default.default(["\n max-height: ", "px;\n "])), maxHeight);
34
- }
35
- return styled.css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral__default.default(["\n max-height: ", ";\n "])), maxHeight);
36
- }, function (_ref4) {
37
- var expandedDirection = _ref4.expandedDirection;
38
- return expandedDirection === 'below' ? styled.css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral__default.default(["\n top: calc(100% - 1px);\n border-top: none;\n border-radius: 0 0 4px 4px;\n "]))) : styled.css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral__default.default(["\n bottom: calc(100% - 1px);\n border-bottom: none;\n border-radius: 4px 4px 0 0;\n "])));
39
- }, styles.SelectContainer, styles.SelectContainer, mixin.contents000);
40
- var SelectOption = styled__default.default.li(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral__default.default(["\n ", "\n padding: 10px 12px;\n color: ", ";\n\n &[aria-disabled='true'] {\n color: ", ";\n }\n\n &:focus {\n background-color: ", ";\n outline: none;\n }\n\n ", "\n"])), mixin.ellipsis(), mixin.contents000, mixin.contents300, mixin.bg200, function (_ref5) {
41
- var isSelected = _ref5.isSelected;
42
- return isSelected && styled.css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral__default.default(["\n background-color: ", ";\n "])), mixin.bg200);
43
- });
44
-
45
- exports.SelectDownIcon = SelectDownIcon;
46
- exports.SelectOption = SelectOption;
47
- exports.SelectOptionWrapper = SelectOptionWrapper;
48
- exports.StyledSelect = StyledSelect;
49
- //# sourceMappingURL=styles.cjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.cjs.js","sources":["../../../../../src/Inputs/Select/DesignedSelect/styles.ts"],"sourcesContent":["'use client';\n\nimport styled, { css } from 'styled-components';\nimport {\n bg100,\n bg200,\n bg300,\n contents000,\n contents200,\n contents300,\n ellipsis,\n} from '@remember-web/mixin';\n\nimport { SelectContainer } from '../styles';\nimport type { ExpandedType } from './types';\n\nexport const StyledSelect = styled.div<{\n expandedDirection?: ExpandedType;\n isPlaceholder?: boolean;\n}>`\n ${ellipsis()}\n border: 1px solid ${contents300};\n ${({ expandedDirection }) =>\n ({\n none: css`\n border-radius: 4px;\n `,\n above: css`\n border-radius: 0 0 4px 4px;\n border-top-color: transparent;\n `,\n below: css`\n border-radius: 4px 4px 0 0;\n border-bottom-color: transparent;\n `,\n }[expandedDirection ?? 'none'])};\n\n padding: 10px 36px 10px 12px;\n transition: border-color 0.2s, background-color 0.2s;\n\n ${({ isPlaceholder }) =>\n isPlaceholder &&\n css`\n color: ${contents200};\n `}\n\n ${SelectContainer}:focus-within & {\n outline: none;\n border-color: ${contents000};\n }\n ${SelectContainer}:not([aria-disabled='true']) & {\n @media (hover: hover) {\n &:hover {\n background-color: ${bg200};\n }\n }\n\n &:active {\n background-color: ${bg300};\n }\n }\n`;\n\nexport const SelectDownIcon = styled.div`\n position: absolute;\n right: 12px;\n top: 50%;\n transform: translateY(-50%);\n\n & > svg {\n display: block;\n }\n\n pointer-events: none;\n`;\n\nexport const SelectOptionWrapper = styled.ul<{\n expandedDirection?: ExpandedType;\n maxHeight?: number | string;\n}>`\n all: unset;\n position: absolute;\n left: 0;\n right: 0;\n z-index: 1;\n border: 1px solid ${contents300};\n background-color: ${bg100};\n overflow-y: scroll;\n overscroll-behavior: contain;\n transition: border-color 0.2s, background-color 0.2s;\n\n ${({ maxHeight }) => {\n if (!maxHeight) {\n return null;\n }\n\n if (typeof maxHeight === 'number') {\n return css`\n max-height: ${maxHeight}px;\n `;\n }\n\n return css`\n max-height: ${maxHeight};\n `;\n }};\n\n ${({ expandedDirection }) =>\n expandedDirection === 'below'\n ? css`\n top: calc(100% - 1px);\n border-top: none;\n border-radius: 0 0 4px 4px;\n `\n : css`\n bottom: calc(100% - 1px);\n border-bottom: none;\n border-radius: 4px 4px 0 0;\n `}\n\n ${SelectContainer}:focus &, ${SelectContainer}:focus-within & {\n outline: none;\n border-color: ${contents000};\n }\n`;\n\nexport const SelectOption = styled.li<{ isSelected?: boolean }>`\n ${ellipsis()}\n padding: 10px 12px;\n color: ${contents000};\n\n &[aria-disabled='true'] {\n color: ${contents300};\n }\n\n &:focus {\n background-color: ${bg200};\n outline: none;\n }\n\n ${({ isSelected }) =>\n isSelected &&\n css`\n background-color: ${bg200};\n `}\n`;\n"],"names":["below","SelectDownIcon"],"mappings":";;;;;;;;;;;;;AAAa;AAgBN;AAMH;;;;AASEA;;AAI4B;AAK9B;;AAIC;AAmBQC;;AA4BU;;AAEjB;AACF;AAEA;;AAIA;;AAKF;AAEE;AAAoB;AAWf;AAQF;AAcH;;AAIC;;;;;"}
@@ -1,15 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ExpandedType } from './types';
3
- export declare const StyledSelect: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
4
- expandedDirection?: ExpandedType | undefined;
5
- isPlaceholder?: boolean | undefined;
6
- }>>;
7
- export declare const SelectDownIcon: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
8
- export declare const SelectOptionWrapper: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLUListElement>, HTMLUListElement>, {
9
- expandedDirection?: ExpandedType | undefined;
10
- maxHeight?: string | number | undefined;
11
- }>>;
12
- export declare const SelectOption: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, {
13
- isSelected?: boolean | undefined;
14
- }>>;
15
- //# sourceMappingURL=styles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../../src/Inputs/Select/DesignedSelect/styles.ts"],"names":[],"mappings":";AAcA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,YAAY;;;GA6CxB,CAAC;AAEF,eAAO,MAAM,cAAc,gNAW1B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;GAgD/B,CAAC;AAEF,eAAO,MAAM,YAAY;;GAmBxB,CAAC"}