@jigowatts/jigowatts-ui 1.2.1 → 2.0.0

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 (302) hide show
  1. package/dist/assets/index8.css +1 -1
  2. package/dist/components/Button/index.cjs.js.map +1 -1
  3. package/dist/components/Button/index.es.js.map +1 -1
  4. package/dist/components/Button/index.test.cjs.js +1 -1
  5. package/dist/components/Button/index.test.cjs.js.map +1 -1
  6. package/dist/components/Button/index.test.es.js +1 -1
  7. package/dist/components/Button/index.test.es.js.map +1 -1
  8. package/dist/components/Card/index.cjs.js.map +1 -1
  9. package/dist/components/Card/index.es.js.map +1 -1
  10. package/dist/components/Card/index.test.cjs.js +1 -1
  11. package/dist/components/Card/index.test.cjs.js.map +1 -1
  12. package/dist/components/Card/index.test.es.js +1 -1
  13. package/dist/components/Card/index.test.es.js.map +1 -1
  14. package/dist/components/CardWithTitle/index.cjs.js +1 -1
  15. package/dist/components/CardWithTitle/index.cjs.js.map +1 -1
  16. package/dist/components/CardWithTitle/index.d.ts +6 -0
  17. package/dist/components/CardWithTitle/index.es.js +20 -13
  18. package/dist/components/CardWithTitle/index.es.js.map +1 -1
  19. package/dist/components/CardWithTitle/index.test.cjs.js +1 -1
  20. package/dist/components/CardWithTitle/index.test.cjs.js.map +1 -1
  21. package/dist/components/CardWithTitle/index.test.es.js +2 -2
  22. package/dist/components/CardWithTitle/index.test.es.js.map +1 -1
  23. package/dist/components/CustomLink/index.cjs.js.map +1 -1
  24. package/dist/components/CustomLink/index.es.js.map +1 -1
  25. package/dist/components/CustomLink/index.test.cjs.js +1 -1
  26. package/dist/components/CustomLink/index.test.cjs.js.map +1 -1
  27. package/dist/components/CustomLink/index.test.es.js +2 -2
  28. package/dist/components/CustomLink/index.test.es.js.map +1 -1
  29. package/dist/components/DataTable/index.cjs.js.map +1 -1
  30. package/dist/components/DataTable/index.es.js.map +1 -1
  31. package/dist/components/DataTable/index.test.cjs.js +1 -1
  32. package/dist/components/DataTable/index.test.cjs.js.map +1 -1
  33. package/dist/components/DataTable/index.test.es.js +3 -3
  34. package/dist/components/DataTable/index.test.es.js.map +1 -1
  35. package/dist/components/DatePickerController/index.cjs.js.map +1 -1
  36. package/dist/components/DatePickerController/index.d.ts +1 -0
  37. package/dist/components/DatePickerController/index.es.js.map +1 -1
  38. package/dist/components/DatePickerController/index.test.cjs.js +1 -1
  39. package/dist/components/DatePickerController/index.test.cjs.js.map +1 -1
  40. package/dist/components/DatePickerController/index.test.es.js +1 -1
  41. package/dist/components/DatePickerController/index.test.es.js.map +1 -1
  42. package/dist/components/ErrorMessage/index.cjs.js.map +1 -1
  43. package/dist/components/ErrorMessage/index.es.js.map +1 -1
  44. package/dist/components/ErrorMessage/index.test.cjs.js +1 -1
  45. package/dist/components/ErrorMessage/index.test.cjs.js.map +1 -1
  46. package/dist/components/ErrorMessage/index.test.es.js +2 -2
  47. package/dist/components/ErrorMessage/index.test.es.js.map +1 -1
  48. package/dist/components/EvseStateLabel/index.cjs.js.map +1 -1
  49. package/dist/components/EvseStateLabel/index.es.js.map +1 -1
  50. package/dist/components/FlexButtons/index.cjs.js.map +1 -1
  51. package/dist/components/FlexButtons/index.es.js.map +1 -1
  52. package/dist/components/FlexButtons/index.test.cjs.js +1 -1
  53. package/dist/components/FlexButtons/index.test.cjs.js.map +1 -1
  54. package/dist/components/FlexButtons/index.test.es.js +2 -2
  55. package/dist/components/FlexButtons/index.test.es.js.map +1 -1
  56. package/dist/components/Form/index.cjs.js.map +1 -1
  57. package/dist/components/Form/index.es.js.map +1 -1
  58. package/dist/components/Form/index.test.cjs.js +1 -1
  59. package/dist/components/Form/index.test.cjs.js.map +1 -1
  60. package/dist/components/Form/index.test.es.js +2 -2
  61. package/dist/components/Form/index.test.es.js.map +1 -1
  62. package/dist/components/FormItem/index.cjs.js.map +1 -1
  63. package/dist/components/FormItem/index.es.js.map +1 -1
  64. package/dist/components/FormItem/index.test.cjs.js +1 -1
  65. package/dist/components/FormItem/index.test.cjs.js.map +1 -1
  66. package/dist/components/FormItem/index.test.es.js +2 -2
  67. package/dist/components/FormItem/index.test.es.js.map +1 -1
  68. package/dist/components/FormTitle/index.cjs.js.map +1 -1
  69. package/dist/components/FormTitle/index.es.js.map +1 -1
  70. package/dist/components/FormTitle/index.test.cjs.js +1 -1
  71. package/dist/components/FormTitle/index.test.cjs.js.map +1 -1
  72. package/dist/components/FormTitle/index.test.es.js +2 -2
  73. package/dist/components/FormTitle/index.test.es.js.map +1 -1
  74. package/dist/components/HStack/index.cjs.js.map +1 -1
  75. package/dist/components/HStack/index.es.js.map +1 -1
  76. package/dist/components/HStack/index.test.cjs.js +1 -1
  77. package/dist/components/HStack/index.test.cjs.js.map +1 -1
  78. package/dist/components/HStack/index.test.es.js +2 -2
  79. package/dist/components/HStack/index.test.es.js.map +1 -1
  80. package/dist/components/HtmlRenderer/index.cjs.js +1 -1
  81. package/dist/components/HtmlRenderer/index.es.js +1 -1
  82. package/dist/components/HtmlRenderer/index.test.cjs.js +1 -1
  83. package/dist/components/HtmlRenderer/index.test.cjs.js.map +1 -1
  84. package/dist/components/HtmlRenderer/index.test.es.js +2 -2
  85. package/dist/components/HtmlRenderer/index.test.es.js.map +1 -1
  86. package/dist/components/Input/index.cjs.js.map +1 -1
  87. package/dist/components/Input/index.es.js.map +1 -1
  88. package/dist/components/Input/index.test.cjs.js +1 -1
  89. package/dist/components/Input/index.test.cjs.js.map +1 -1
  90. package/dist/components/Input/index.test.es.js +1 -1
  91. package/dist/components/Input/index.test.es.js.map +1 -1
  92. package/dist/components/InputController/index.cjs.js.map +1 -1
  93. package/dist/components/InputController/index.es.js.map +1 -1
  94. package/dist/components/InputController/index.test.cjs.js +1 -1
  95. package/dist/components/InputController/index.test.cjs.js.map +1 -1
  96. package/dist/components/InputController/index.test.es.js +1 -1
  97. package/dist/components/InputController/index.test.es.js.map +1 -1
  98. package/dist/components/InputGroup/index.cjs.js.map +1 -1
  99. package/dist/components/InputGroup/index.es.js.map +1 -1
  100. package/dist/components/InputGroup/index.test.cjs.js +1 -1
  101. package/dist/components/InputGroup/index.test.cjs.js.map +1 -1
  102. package/dist/components/InputGroup/index.test.es.js +2 -2
  103. package/dist/components/InputGroup/index.test.es.js.map +1 -1
  104. package/dist/components/Label/index.cjs.js.map +1 -1
  105. package/dist/components/Label/index.es.js.map +1 -1
  106. package/dist/components/Label/index.test.cjs.js +1 -1
  107. package/dist/components/Label/index.test.cjs.js.map +1 -1
  108. package/dist/components/Label/index.test.es.js +2 -2
  109. package/dist/components/Label/index.test.es.js.map +1 -1
  110. package/dist/components/LabeledContent/index.cjs.js.map +1 -1
  111. package/dist/components/LabeledContent/index.es.js.map +1 -1
  112. package/dist/components/LabeledContent/index.test.cjs.js +1 -1
  113. package/dist/components/LabeledContent/index.test.cjs.js.map +1 -1
  114. package/dist/components/LabeledContent/index.test.es.js +1 -1
  115. package/dist/components/LabeledContent/index.test.es.js.map +1 -1
  116. package/dist/components/LoadingOverlay/index.cjs.js.map +1 -1
  117. package/dist/components/LoadingOverlay/index.es.js.map +1 -1
  118. package/dist/components/LoadingOverlay/index.test.cjs.js +1 -1
  119. package/dist/components/LoadingOverlay/index.test.cjs.js.map +1 -1
  120. package/dist/components/LoadingOverlay/index.test.es.js +2 -2
  121. package/dist/components/LoadingOverlay/index.test.es.js.map +1 -1
  122. package/dist/components/Map/index.cjs.js +2 -2
  123. package/dist/components/Map/index.cjs.js.map +1 -1
  124. package/dist/components/Map/index.es.js +709 -716
  125. package/dist/components/Map/index.es.js.map +1 -1
  126. package/dist/components/MaxWidthContainer/index.cjs.js.map +1 -1
  127. package/dist/components/MaxWidthContainer/index.es.js.map +1 -1
  128. package/dist/components/MaxWidthContainer/index.test.cjs.js +1 -1
  129. package/dist/components/MaxWidthContainer/index.test.cjs.js.map +1 -1
  130. package/dist/components/MaxWidthContainer/index.test.es.js +2 -2
  131. package/dist/components/MaxWidthContainer/index.test.es.js.map +1 -1
  132. package/dist/components/NumericFieldController/index.cjs.js.map +1 -1
  133. package/dist/components/NumericFieldController/index.d.ts +1 -0
  134. package/dist/components/NumericFieldController/index.es.js.map +1 -1
  135. package/dist/components/NumericFieldController/index.test.cjs.js +1 -1
  136. package/dist/components/NumericFieldController/index.test.cjs.js.map +1 -1
  137. package/dist/components/NumericFieldController/index.test.es.js +1 -1
  138. package/dist/components/NumericFieldController/index.test.es.js.map +1 -1
  139. package/dist/components/OfflineLabel/index.cjs.js.map +1 -1
  140. package/dist/components/OfflineLabel/index.es.js.map +1 -1
  141. package/dist/components/PageSizeSelector/index.cjs.js.map +1 -1
  142. package/dist/components/PageSizeSelector/index.es.js.map +1 -1
  143. package/dist/components/Pagination/index.cjs.js +2 -2
  144. package/dist/components/Pagination/index.cjs.js.map +1 -1
  145. package/dist/components/Pagination/index.es.js +17 -17
  146. package/dist/components/Pagination/index.es.js.map +1 -1
  147. package/dist/components/Pagination/index.test.cjs.js +1 -1
  148. package/dist/components/Pagination/index.test.cjs.js.map +1 -1
  149. package/dist/components/Pagination/index.test.es.js +1 -1
  150. package/dist/components/Pagination/index.test.es.js.map +1 -1
  151. package/dist/components/PasswordInputController/index.cjs.js.map +1 -1
  152. package/dist/components/PasswordInputController/index.es.js.map +1 -1
  153. package/dist/components/PasswordInputController/index.test.cjs.js +1 -1
  154. package/dist/components/PasswordInputController/index.test.cjs.js.map +1 -1
  155. package/dist/components/PasswordInputController/index.test.es.js +1 -1
  156. package/dist/components/PasswordInputController/index.test.es.js.map +1 -1
  157. package/dist/components/RadioButton/index.test.cjs.js +1 -1
  158. package/dist/components/RadioButton/index.test.cjs.js.map +1 -1
  159. package/dist/components/RadioButton/index.test.es.js +2 -2
  160. package/dist/components/RadioButton/index.test.es.js.map +1 -1
  161. package/dist/components/RadioGroupController/index.cjs.js.map +1 -1
  162. package/dist/components/RadioGroupController/index.es.js.map +1 -1
  163. package/dist/components/RadioGroupController/index.test.cjs.js +1 -1
  164. package/dist/components/RadioGroupController/index.test.cjs.js.map +1 -1
  165. package/dist/components/RadioGroupController/index.test.es.js +1 -1
  166. package/dist/components/RadioGroupController/index.test.es.js.map +1 -1
  167. package/dist/components/RangeDatePicker/index.cjs.js.map +1 -1
  168. package/dist/components/RangeDatePicker/index.es.js.map +1 -1
  169. package/dist/components/RangeDatePickerController/index.cjs.js.map +1 -1
  170. package/dist/components/RangeDatePickerController/index.es.js.map +1 -1
  171. package/dist/components/RangeDatePickerController/index.test.cjs.js +1 -1
  172. package/dist/components/RangeDatePickerController/index.test.cjs.js.map +1 -1
  173. package/dist/components/RangeDatePickerController/index.test.es.js +1 -1
  174. package/dist/components/RangeDatePickerController/index.test.es.js.map +1 -1
  175. package/dist/components/ReportCard/index.cjs.js.map +1 -1
  176. package/dist/components/ReportCard/index.es.js.map +1 -1
  177. package/dist/components/ReportCard/index.test.cjs.js +1 -1
  178. package/dist/components/ReportCard/index.test.cjs.js.map +1 -1
  179. package/dist/components/ReportCard/index.test.es.js +1 -1
  180. package/dist/components/ReportCard/index.test.es.js.map +1 -1
  181. package/dist/components/ReportChart/index.cjs.js +1 -1
  182. package/dist/components/ReportChart/index.cjs.js.map +1 -1
  183. package/dist/components/ReportChart/index.es.js +26 -33
  184. package/dist/components/ReportChart/index.es.js.map +1 -1
  185. package/dist/components/ReportChartMulti/index.cjs.js.map +1 -1
  186. package/dist/components/ReportChartMulti/index.es.js.map +1 -1
  187. package/dist/components/ReportChartMulti/index.test.cjs.js +1 -1
  188. package/dist/components/ReportChartMulti/index.test.cjs.js.map +1 -1
  189. package/dist/components/ReportChartMulti/index.test.es.js +1 -1
  190. package/dist/components/ReportChartMulti/index.test.es.js.map +1 -1
  191. package/dist/components/ScrollableDialog/index.cjs.js.map +1 -1
  192. package/dist/components/ScrollableDialog/index.es.js.map +1 -1
  193. package/dist/components/ScrollableDialog/index.test.cjs.js +1 -1
  194. package/dist/components/ScrollableDialog/index.test.cjs.js.map +1 -1
  195. package/dist/components/ScrollableDialog/index.test.es.js +1 -1
  196. package/dist/components/ScrollableDialog/index.test.es.js.map +1 -1
  197. package/dist/components/SearchForm/index.cjs.js.map +1 -1
  198. package/dist/components/SearchForm/index.es.js.map +1 -1
  199. package/dist/components/SelectBox/index.test.cjs.js +1 -1
  200. package/dist/components/SelectBox/index.test.cjs.js.map +1 -1
  201. package/dist/components/SelectBox/index.test.es.js +1 -1
  202. package/dist/components/SelectBox/index.test.es.js.map +1 -1
  203. package/dist/components/SelectBoxController/index.cjs.js.map +1 -1
  204. package/dist/components/SelectBoxController/index.es.js.map +1 -1
  205. package/dist/components/SelectBoxController/index.test.cjs.js +1 -1
  206. package/dist/components/SelectBoxController/index.test.cjs.js.map +1 -1
  207. package/dist/components/SelectBoxController/index.test.es.js +1 -1
  208. package/dist/components/SelectBoxController/index.test.es.js.map +1 -1
  209. package/dist/components/SideMenu/index.cjs.js.map +1 -1
  210. package/dist/components/SideMenu/index.es.js.map +1 -1
  211. package/dist/components/SideMenu/index.test.cjs.js +1 -1
  212. package/dist/components/SideMenu/index.test.cjs.js.map +1 -1
  213. package/dist/components/SideMenu/index.test.es.js +3 -3
  214. package/dist/components/SideMenu/index.test.es.js.map +1 -1
  215. package/dist/components/SpinnerButton/index.cjs.js.map +1 -1
  216. package/dist/components/SpinnerButton/index.es.js.map +1 -1
  217. package/dist/components/SpinnerButton/index.test.cjs.js +1 -1
  218. package/dist/components/SpinnerButton/index.test.cjs.js.map +1 -1
  219. package/dist/components/SpinnerButton/index.test.es.js +2 -2
  220. package/dist/components/SpinnerButton/index.test.es.js.map +1 -1
  221. package/dist/components/SubMenu/index.cjs.js.map +1 -1
  222. package/dist/components/SubMenu/index.es.js.map +1 -1
  223. package/dist/components/SubMenu/index.test.cjs.js +1 -1
  224. package/dist/components/SubMenu/index.test.cjs.js.map +1 -1
  225. package/dist/components/SubMenu/index.test.es.js +1 -1
  226. package/dist/components/SubMenu/index.test.es.js.map +1 -1
  227. package/dist/components/Tabs/index.cjs.js.map +1 -1
  228. package/dist/components/Tabs/index.d.ts +1 -1
  229. package/dist/components/Tabs/index.es.js.map +1 -1
  230. package/dist/components/Tabs/index.test.cjs.js +1 -1
  231. package/dist/components/Tabs/index.test.cjs.js.map +1 -1
  232. package/dist/components/Tabs/index.test.es.js +2 -2
  233. package/dist/components/Tabs/index.test.es.js.map +1 -1
  234. package/dist/components/Textarea/index.cjs.js.map +1 -1
  235. package/dist/components/Textarea/index.es.js.map +1 -1
  236. package/dist/components/Textarea/index.test.cjs.js +1 -1
  237. package/dist/components/Textarea/index.test.cjs.js.map +1 -1
  238. package/dist/components/Textarea/index.test.es.js +2 -2
  239. package/dist/components/Textarea/index.test.es.js.map +1 -1
  240. package/dist/components/Title/index.cjs.js +1 -1
  241. package/dist/components/Title/index.cjs.js.map +1 -1
  242. package/dist/components/Title/index.d.ts +2 -0
  243. package/dist/components/Title/index.es.js +9 -9
  244. package/dist/components/Title/index.es.js.map +1 -1
  245. package/dist/components/Title/index.test.cjs.js +1 -1
  246. package/dist/components/Title/index.test.cjs.js.map +1 -1
  247. package/dist/components/Title/index.test.es.js +2 -2
  248. package/dist/components/Title/index.test.es.js.map +1 -1
  249. package/dist/components/ToggleButton/index.cjs.js.map +1 -1
  250. package/dist/components/ToggleButton/index.es.js.map +1 -1
  251. package/dist/components/ToggleButton/index.test.cjs.js +1 -1
  252. package/dist/components/ToggleButton/index.test.cjs.js.map +1 -1
  253. package/dist/components/ToggleButton/index.test.es.js +1 -1
  254. package/dist/components/ToggleButton/index.test.es.js.map +1 -1
  255. package/dist/components/VStack/index.cjs.js.map +1 -1
  256. package/dist/components/VStack/index.es.js.map +1 -1
  257. package/dist/components/VStack/index.test.cjs.js +1 -1
  258. package/dist/components/VStack/index.test.cjs.js.map +1 -1
  259. package/dist/components/VStack/index.test.es.js +2 -2
  260. package/dist/components/VStack/index.test.es.js.map +1 -1
  261. package/dist/{index-D5b3AasF.js → index--uHewOkd.js} +2 -2
  262. package/dist/{index-D5b3AasF.js.map → index--uHewOkd.js.map} +1 -1
  263. package/dist/index-9p9q0wxE.cjs +39 -0
  264. package/dist/index-9p9q0wxE.cjs.map +1 -0
  265. package/dist/index-B663CLQ0.cjs.map +1 -1
  266. package/dist/{index-C50NsnJO.cjs → index-Bbj4TMfJ.cjs} +2 -2
  267. package/dist/{index-C50NsnJO.cjs.map → index-Bbj4TMfJ.cjs.map} +1 -1
  268. package/dist/{index-ZP4xL6Dt.js → index-Bt_ypxrX.js} +7373 -6726
  269. package/dist/index-Bt_ypxrX.js.map +1 -0
  270. package/dist/index-C9Dbd7MM.cjs +4 -0
  271. package/dist/index-C9Dbd7MM.cjs.map +1 -0
  272. package/dist/index-CCbJ_2yU.cjs.map +1 -1
  273. package/dist/index-CSiE_l9r.js.map +1 -1
  274. package/dist/index-CaEC29Xt.cjs +96 -0
  275. package/dist/index-CaEC29Xt.cjs.map +1 -0
  276. package/dist/{index-DCSLk6pp.js → index-Cj9ZvtM1.js} +1890 -2721
  277. package/dist/index-Cj9ZvtM1.js.map +1 -0
  278. package/dist/index-pr0ncuNy.js.map +1 -1
  279. package/dist/{index-BqN32Ptm.js → index-zix1zlkq.js} +628 -602
  280. package/dist/index-zix1zlkq.js.map +1 -0
  281. package/dist/index.cjs.js +1 -1
  282. package/dist/index.es.js +1 -1
  283. package/dist/{react.esm-CiMn0Rnx.cjs → react.esm-BcRJ42eI.cjs} +31 -31
  284. package/dist/react.esm-BcRJ42eI.cjs.map +1 -0
  285. package/dist/{react.esm-2FJSSo-S.js → react.esm-DVhZgPrH.js} +629 -608
  286. package/dist/react.esm-DVhZgPrH.js.map +1 -0
  287. package/package.json +21 -18
  288. package/dist/browser-BCVsA9bD.cjs +0 -2
  289. package/dist/browser-BCVsA9bD.cjs.map +0 -1
  290. package/dist/browser-BYxLWVDg.js +0 -654
  291. package/dist/browser-BYxLWVDg.js.map +0 -1
  292. package/dist/index-BHsZ5xlA.cjs +0 -96
  293. package/dist/index-BHsZ5xlA.cjs.map +0 -1
  294. package/dist/index-BoNIpBs7.cjs +0 -4
  295. package/dist/index-BoNIpBs7.cjs.map +0 -1
  296. package/dist/index-BpMSrIOq.cjs +0 -43
  297. package/dist/index-BpMSrIOq.cjs.map +0 -1
  298. package/dist/index-BqN32Ptm.js.map +0 -1
  299. package/dist/index-DCSLk6pp.js.map +0 -1
  300. package/dist/index-ZP4xL6Dt.js.map +0 -1
  301. package/dist/react.esm-2FJSSo-S.js.map +0 -1
  302. package/dist/react.esm-CiMn0Rnx.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SelectBoxController/index.test.tsx"],"sourcesContent":["import { render, renderHook, screen } from \"@testing-library/react\";\nimport { useForm } from \"react-hook-form\";\n\nimport SelectBoxController from \".\";\n\ndescribe(\"SelectBoxController component\", () => {\n it(\"renders select box with options and correct default value\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const placeholder = \"Select an option\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = [\"option2\"]; // Example of default value\n const isMulti = true; // Example of multi-select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n placeholder={placeholder}\n />,\n );\n\n // Check if the select box renders with correct default value\n defaultValue.forEach((value) => {\n const option = options.find((opt) => opt.value === value);\n if (option) {\n expect(screen.getByText(option.label)).toBeInTheDocument();\n }\n });\n });\n\n it(\"renders select box with options and correct default value for single select\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = \"option2\"; // Example of default value for single select\n const isMulti = false; // Example of single select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n />,\n );\n\n // Check if the select box renders with correct default value\n const option = options.find((opt) => opt.value === defaultValue);\n if (option) {\n // Check if the default value's label is displayed\n const displayedValue = screen.getByText(option.label);\n expect(displayedValue).toBeInTheDocument();\n }\n });\n});\n"],"names":["result","renderHook","useForm","control","testName","placeholder","options","defaultValue","render","jsx","SelectBoxController","value","option","opt","screen","displayedValue"],"mappings":"qJAKA,SAAS,gCAAiC,IAAM,CAC9C,GAAG,4DAA6D,IAAM,CACpE,KAAM,CAAE,OAAAA,CAAO,EAAIC,aAAW,IAAMC,WAAS,EACvC,CAAE,QAAAC,GAAYH,EAAO,QAErBI,EAAW,aACXC,EAAc,mBACdC,EAAU,CACd,CAAE,MAAO,WAAY,MAAO,SAAU,EACtC,CAAE,MAAO,WAAY,MAAO,SAAU,EACtC,CAAE,MAAO,WAAY,MAAO,SAAU,CACxC,EACMC,EAAe,CAAC,SAAS,EAG/BC,EAAA,OACEC,EAAA,IAACC,EAAA,oBAAA,CACC,QAAAP,EACA,KAAMC,EACN,QAAAE,EACA,aAAAC,EACA,QARY,GASZ,YAAAF,CAAA,CAAA,CAEJ,EAGaE,EAAA,QAASI,GAAU,CAC9B,MAAMC,EAASN,EAAQ,KAAMO,GAAQA,EAAI,QAAUF,CAAK,EACpDC,GACF,OAAOE,SAAO,UAAUF,EAAO,KAAK,CAAC,EAAE,kBAAkB,CAC3D,CACD,CAAA,CACF,EAED,GAAG,8EAA+E,IAAM,CACtF,KAAM,CAAE,OAAAZ,CAAO,EAAIC,aAAW,IAAMC,WAAS,EACvC,CAAE,QAAAC,GAAYH,EAAO,QAErBI,EAAW,aACXE,EAAU,CACd,CAAE,MAAO,WAAY,MAAO,SAAU,EACtC,CAAE,MAAO,WAAY,MAAO,SAAU,EACtC,CAAE,MAAO,WAAY,MAAO,SAAU,CACxC,EACMC,EAAe,UAGrBC,EAAA,OACEC,EAAA,IAACC,EAAA,oBAAA,CACC,QAAAP,EACA,KAAMC,EACN,QAAAE,EACA,aAAAC,EACA,QARY,EAQZ,CAAA,CAEJ,EAGA,MAAMK,EAASN,EAAQ,KAAMO,GAAQA,EAAI,QAAUN,CAAY,EAC/D,GAAIK,EAAQ,CAEV,MAAMG,EAAiBD,EAAA,OAAO,UAAUF,EAAO,KAAK,EAC7C,OAAAG,CAAc,EAAE,kBAAkB,CAAA,CAC3C,CACD,CACH,CAAC"}
1
+ {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SelectBoxController/index.test.tsx"],"sourcesContent":["import { render, renderHook, screen } from \"@testing-library/react\";\nimport { useForm } from \"react-hook-form\";\n\nimport SelectBoxController from \".\";\n\ndescribe(\"SelectBoxController component\", () => {\n it(\"renders select box with options and correct default value\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const placeholder = \"Select an option\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = [\"option2\"]; // Example of default value\n const isMulti = true; // Example of multi-select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n placeholder={placeholder}\n />,\n );\n\n // Check if the select box renders with correct default value\n defaultValue.forEach((value) => {\n const option = options.find((opt) => opt.value === value);\n if (option) {\n expect(screen.getByText(option.label)).toBeInTheDocument();\n }\n });\n });\n\n it(\"renders select box with options and correct default value for single select\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = \"option2\"; // Example of default value for single select\n const isMulti = false; // Example of single select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n />,\n );\n\n // Check if the select box renders with correct default value\n const option = options.find((opt) => opt.value === defaultValue);\n if (option) {\n // Check if the default value's label is displayed\n const displayedValue = screen.getByText(option.label);\n expect(displayedValue).toBeInTheDocument();\n }\n });\n});\n"],"names":["result","renderHook","useForm","control","testName","placeholder","options","defaultValue","render","jsx","SelectBoxController","value","option","opt","screen","displayedValue"],"mappings":"qJAKA,SAAS,gCAAiC,IAAM,CAC9C,GAAG,4DAA6D,IAAM,CACpE,KAAM,CAAE,OAAAA,CAAA,EAAWC,aAAW,IAAMC,EAAAA,SAAS,EACvC,CAAE,QAAAC,GAAYH,EAAO,QAErBI,EAAW,aACXC,EAAc,mBACdC,EAAU,CACd,CAAE,MAAO,WAAY,MAAO,SAAA,EAC5B,CAAE,MAAO,WAAY,MAAO,SAAA,EAC5B,CAAE,MAAO,WAAY,MAAO,SAAA,CAAU,EAElCC,EAAe,CAAC,SAAS,EAG/BC,EAAAA,OACEC,EAAAA,IAACC,EAAAA,oBAAA,CACC,QAAAP,EACA,KAAMC,EACN,QAAAE,EACA,aAAAC,EACA,QARY,GASZ,YAAAF,CAAA,CAAA,CACF,EAIFE,EAAa,QAASI,GAAU,CAC9B,MAAMC,EAASN,EAAQ,KAAMO,GAAQA,EAAI,QAAUF,CAAK,EACpDC,GACF,OAAOE,EAAAA,OAAO,UAAUF,EAAO,KAAK,CAAC,EAAE,kBAAA,CAE3C,CAAC,CACH,CAAC,EAED,GAAG,8EAA+E,IAAM,CACtF,KAAM,CAAE,OAAAZ,CAAA,EAAWC,aAAW,IAAMC,EAAAA,SAAS,EACvC,CAAE,QAAAC,GAAYH,EAAO,QAErBI,EAAW,aACXE,EAAU,CACd,CAAE,MAAO,WAAY,MAAO,SAAA,EAC5B,CAAE,MAAO,WAAY,MAAO,SAAA,EAC5B,CAAE,MAAO,WAAY,MAAO,SAAA,CAAU,EAElCC,EAAe,UAGrBC,EAAAA,OACEC,EAAAA,IAACC,EAAAA,oBAAA,CACC,QAAAP,EACA,KAAMC,EACN,QAAAE,EACA,aAAAC,EACA,QARY,EAQZ,CAAA,CACF,EAIF,MAAMK,EAASN,EAAQ,KAAMO,GAAQA,EAAI,QAAUN,CAAY,EAC/D,GAAIK,EAAQ,CAEV,MAAMG,EAAiBD,EAAAA,OAAO,UAAUF,EAAO,KAAK,EACpD,OAAOG,CAAc,EAAE,kBAAA,CACzB,CACF,CAAC,CACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { a as p, r as u, s as d } from "../../react.esm-2FJSSo-S.js";
2
+ import { a as p, r as u, s as d } from "../../react.esm-DVhZgPrH.js";
3
3
  import { useForm as m } from "react-hook-form";
4
4
  import { SelectBoxController as f } from "./index.es.js";
5
5
  describe("SelectBoxController component", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SelectBoxController/index.test.tsx"],"sourcesContent":["import { render, renderHook, screen } from \"@testing-library/react\";\nimport { useForm } from \"react-hook-form\";\n\nimport SelectBoxController from \".\";\n\ndescribe(\"SelectBoxController component\", () => {\n it(\"renders select box with options and correct default value\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const placeholder = \"Select an option\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = [\"option2\"]; // Example of default value\n const isMulti = true; // Example of multi-select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n placeholder={placeholder}\n />,\n );\n\n // Check if the select box renders with correct default value\n defaultValue.forEach((value) => {\n const option = options.find((opt) => opt.value === value);\n if (option) {\n expect(screen.getByText(option.label)).toBeInTheDocument();\n }\n });\n });\n\n it(\"renders select box with options and correct default value for single select\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = \"option2\"; // Example of default value for single select\n const isMulti = false; // Example of single select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n />,\n );\n\n // Check if the select box renders with correct default value\n const option = options.find((opt) => opt.value === defaultValue);\n if (option) {\n // Check if the default value's label is displayed\n const displayedValue = screen.getByText(option.label);\n expect(displayedValue).toBeInTheDocument();\n }\n });\n});\n"],"names":["result","renderHook","useForm","control","testName","placeholder","options","defaultValue","render","jsx","SelectBoxController","value","option","opt","screen","displayedValue"],"mappings":";;;;AAKA,SAAS,iCAAiC,MAAM;AAC9C,KAAG,6DAA6D,MAAM;AACpE,UAAM,EAAE,QAAAA,EAAO,IAAIC,EAAW,MAAMC,GAAS,GACvC,EAAE,SAAAC,MAAYH,EAAO,SAErBI,IAAW,cACXC,IAAc,oBACdC,IAAU;AAAA,MACd,EAAE,OAAO,YAAY,OAAO,UAAU;AAAA,MACtC,EAAE,OAAO,YAAY,OAAO,UAAU;AAAA,MACtC,EAAE,OAAO,YAAY,OAAO,UAAU;AAAA,IACxC,GACMC,IAAe,CAAC,SAAS;AAG/B,IAAAC;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,SAAAP;AAAA,UACA,MAAMC;AAAA,UACN,SAAAE;AAAA,UACA,cAAAC;AAAA,UACA,SARY;AAAA,UASZ,aAAAF;AAAA,QAAA;AAAA,MAAA;AAAA,IAEJ,GAGaE,EAAA,QAAQ,CAACI,MAAU;AAC9B,YAAMC,IAASN,EAAQ,KAAK,CAACO,MAAQA,EAAI,UAAUF,CAAK;AACxD,MAAIC,KACF,OAAOE,EAAO,UAAUF,EAAO,KAAK,CAAC,EAAE,kBAAkB;AAAA,IAC3D,CACD;AAAA,EAAA,CACF,GAED,GAAG,+EAA+E,MAAM;AACtF,UAAM,EAAE,QAAAZ,EAAO,IAAIC,EAAW,MAAMC,GAAS,GACvC,EAAE,SAAAC,MAAYH,EAAO,SAErBI,IAAW,cACXE,IAAU;AAAA,MACd,EAAE,OAAO,YAAY,OAAO,UAAU;AAAA,MACtC,EAAE,OAAO,YAAY,OAAO,UAAU;AAAA,MACtC,EAAE,OAAO,YAAY,OAAO,UAAU;AAAA,IACxC,GACMC,IAAe;AAGrB,IAAAC;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,SAAAP;AAAA,UACA,MAAMC;AAAA,UACN,SAAAE;AAAA,UACA,cAAAC;AAAA,UACA,SARY;AAAA,QAQZ;AAAA,MAAA;AAAA,IAEJ;AAGA,UAAMK,IAASN,EAAQ,KAAK,CAACO,MAAQA,EAAI,UAAUN,CAAY;AAC/D,QAAIK,GAAQ;AAEV,YAAMG,IAAiBD,EAAO,UAAUF,EAAO,KAAK;AAC7C,aAAAG,CAAc,EAAE,kBAAkB;AAAA,IAAA;AAAA,EAC3C,CACD;AACH,CAAC;"}
1
+ {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SelectBoxController/index.test.tsx"],"sourcesContent":["import { render, renderHook, screen } from \"@testing-library/react\";\nimport { useForm } from \"react-hook-form\";\n\nimport SelectBoxController from \".\";\n\ndescribe(\"SelectBoxController component\", () => {\n it(\"renders select box with options and correct default value\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const placeholder = \"Select an option\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = [\"option2\"]; // Example of default value\n const isMulti = true; // Example of multi-select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n placeholder={placeholder}\n />,\n );\n\n // Check if the select box renders with correct default value\n defaultValue.forEach((value) => {\n const option = options.find((opt) => opt.value === value);\n if (option) {\n expect(screen.getByText(option.label)).toBeInTheDocument();\n }\n });\n });\n\n it(\"renders select box with options and correct default value for single select\", () => {\n const { result } = renderHook(() => useForm());\n const { control } = result.current;\n\n const testName = \"TestSelect\";\n const options = [\n { label: \"Option 1\", value: \"option1\" },\n { label: \"Option 2\", value: \"option2\" },\n { label: \"Option 3\", value: \"option3\" },\n ];\n const defaultValue = \"option2\"; // Example of default value for single select\n const isMulti = false; // Example of single select\n\n render(\n <SelectBoxController\n control={control}\n name={testName}\n options={options}\n defaultValue={defaultValue}\n isMulti={isMulti}\n />,\n );\n\n // Check if the select box renders with correct default value\n const option = options.find((opt) => opt.value === defaultValue);\n if (option) {\n // Check if the default value's label is displayed\n const displayedValue = screen.getByText(option.label);\n expect(displayedValue).toBeInTheDocument();\n }\n });\n});\n"],"names":["result","renderHook","useForm","control","testName","placeholder","options","defaultValue","render","jsx","SelectBoxController","value","option","opt","screen","displayedValue"],"mappings":";;;;AAKA,SAAS,iCAAiC,MAAM;AAC9C,KAAG,6DAA6D,MAAM;AACpE,UAAM,EAAE,QAAAA,EAAA,IAAWC,EAAW,MAAMC,GAAS,GACvC,EAAE,SAAAC,MAAYH,EAAO,SAErBI,IAAW,cACXC,IAAc,oBACdC,IAAU;AAAA,MACd,EAAE,OAAO,YAAY,OAAO,UAAA;AAAA,MAC5B,EAAE,OAAO,YAAY,OAAO,UAAA;AAAA,MAC5B,EAAE,OAAO,YAAY,OAAO,UAAA;AAAA,IAAU,GAElCC,IAAe,CAAC,SAAS;AAG/B,IAAAC;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,SAAAP;AAAA,UACA,MAAMC;AAAA,UACN,SAAAE;AAAA,UACA,cAAAC;AAAA,UACA,SARY;AAAA,UASZ,aAAAF;AAAA,QAAA;AAAA,MAAA;AAAA,IACF,GAIFE,EAAa,QAAQ,CAACI,MAAU;AAC9B,YAAMC,IAASN,EAAQ,KAAK,CAACO,MAAQA,EAAI,UAAUF,CAAK;AACxD,MAAIC,KACF,OAAOE,EAAO,UAAUF,EAAO,KAAK,CAAC,EAAE,kBAAA;AAAA,IAE3C,CAAC;AAAA,EACH,CAAC,GAED,GAAG,+EAA+E,MAAM;AACtF,UAAM,EAAE,QAAAZ,EAAA,IAAWC,EAAW,MAAMC,GAAS,GACvC,EAAE,SAAAC,MAAYH,EAAO,SAErBI,IAAW,cACXE,IAAU;AAAA,MACd,EAAE,OAAO,YAAY,OAAO,UAAA;AAAA,MAC5B,EAAE,OAAO,YAAY,OAAO,UAAA;AAAA,MAC5B,EAAE,OAAO,YAAY,OAAO,UAAA;AAAA,IAAU,GAElCC,IAAe;AAGrB,IAAAC;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,SAAAP;AAAA,UACA,MAAMC;AAAA,UACN,SAAAE;AAAA,UACA,cAAAC;AAAA,UACA,SARY;AAAA,QAQZ;AAAA,MAAA;AAAA,IACF;AAIF,UAAMK,IAASN,EAAQ,KAAK,CAACO,MAAQA,EAAI,UAAUN,CAAY;AAC/D,QAAIK,GAAQ;AAEV,YAAMG,IAAiBD,EAAO,UAAUF,EAAO,KAAK;AACpD,aAAOG,CAAc,EAAE,kBAAA;AAAA,IACzB;AAAA,EACF,CAAC;AACH,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/SideMenu/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\nimport { Drawer } from \"@mui/material\";\nimport classnames from \"classnames\";\n\nimport styles from \"./index.module.scss\";\n\nexport type Menu = {\n label: string;\n icon?: React.ReactNode;\n href?: string;\n isTitle?: boolean;\n};\n\ntype Props = {\n isOpen: boolean;\n isMobile: boolean;\n onClose: () => void;\n menus: Menu[];\n logoSrc: string;\n topPageUrl?: string;\n isStorybook?: boolean;\n currentPath?: string | null;\n};\n\nconst DRAWER_WIDTH = 235;\n\nexport const SideMenu = (props: Props) => {\n const {\n isOpen,\n isMobile,\n onClose,\n menus,\n logoSrc,\n topPageUrl = \"/\",\n isStorybook = false,\n currentPath,\n } = props;\n\n const path = currentPath?.split(\"/\")[1] ?? null;\n const href = path === \"\" ? \"/\" : \"/\" + path;\n const [selectedHref, setSelectedHref] = useState<string | undefined>(href);\n\n useEffect(() => {\n setSelectedHref(href);\n }, [href, currentPath]);\n\n const handleLinkClick = (\n e:\n | React.MouseEvent<HTMLAnchorElement | HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n ) => {\n if (isMobile) {\n onClose();\n }\n if (isStorybook) {\n e.preventDefault();\n }\n };\n\n return (\n <Drawer\n variant={isMobile ? \"temporary\" : \"permanent\"}\n open={isMobile ? isOpen : undefined}\n onClose={onClose}\n sx={{\n width: DRAWER_WIDTH,\n flexShrink: 0,\n \"& .MuiDrawer-paper\": {\n width: DRAWER_WIDTH,\n boxSizing: \"border-box\",\n },\n display: isOpen ? \"block\" : \"none\",\n }}\n >\n <div className={styles.sideMenu}>\n <div className={styles.logo}>\n <Link\n href={topPageUrl}\n style={{ textDecoration: \"none\" }}\n onClick={(e) => handleLinkClick(e)}\n >\n <Image\n src={logoSrc}\n alt=\"logo\"\n width={202}\n height={56}\n className={styles.logoImage}\n priority\n />\n </Link>\n </div>\n <div className={styles.menus}>\n {menus.map((menu) =>\n menu.isTitle ? (\n <div className={styles.menuTitle} key={menu.label}>\n {menu.label}\n </div>\n ) : (\n <Link\n href={menu.href ?? \"\"}\n key={menu.label}\n style={{ textDecoration: \"none\" }}\n role=\"menuitem\"\n aria-current={selectedHref === menu.href ? \"page\" : undefined}\n >\n <div\n onClick={(e) => handleLinkClick(e)}\n className={classnames(styles.menuItem, {\n [styles.selected]: selectedHref === menu.href,\n })}\n tabIndex={0}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n handleLinkClick(e);\n }\n }}\n >\n {menu.icon}\n <div>{menu.label}</div>\n </div>\n </Link>\n ),\n )}\n </div>\n </div>\n </Drawer>\n );\n};\n\nexport default SideMenu;\n"],"names":["DRAWER_WIDTH","SideMenu","props","isOpen","isMobile","onClose","menus","logoSrc","topPageUrl","isStorybook","currentPath","path","href","selectedHref","setSelectedHref","useState","useEffect","handleLinkClick","jsx","Drawer","jsxs","styles","Link","Image","menu","e","classnames"],"mappings":"4eA0BMA,EAAe,IAERC,EAAYC,GAAiB,CAClC,KAAA,CACJ,OAAAC,EACA,SAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAAAC,EACA,WAAAC,EAAa,IACb,YAAAC,EAAc,GACd,YAAAC,CAAA,EACER,EAEES,GAAOD,GAAA,YAAAA,EAAa,MAAM,KAAK,KAAM,KACrCE,EAAOD,IAAS,GAAK,IAAM,IAAMA,EACjC,CAACE,EAAcC,CAAe,EAAIC,EAAAA,SAA6BH,CAAI,EAEzEI,EAAAA,UAAU,IAAM,CACdF,EAAgBF,CAAI,CAAA,EACnB,CAACA,EAAMF,CAAW,CAAC,EAEhB,MAAAO,EACJ,GAGG,CACCb,GACMC,EAAA,EAENI,GACF,EAAE,eAAe,CAErB,EAGE,OAAAS,EAAA,IAACC,EAAA,OAAA,CACC,QAASf,EAAW,YAAc,YAClC,KAAMA,EAAWD,EAAS,OAC1B,QAAAE,EACA,GAAI,CACF,MAAOL,EACP,WAAY,EACZ,qBAAsB,CACpB,MAAOA,EACP,UAAW,YACb,EACA,QAASG,EAAS,QAAU,MAC9B,EAEA,SAACiB,EAAA,KAAA,MAAA,CAAI,UAAWC,EAAO,SACrB,SAAA,CAACH,EAAA,IAAA,MAAA,CAAI,UAAWG,EAAO,KACrB,SAAAH,EAAA,IAACI,EAAA,CACC,KAAMd,EACN,MAAO,CAAE,eAAgB,MAAO,EAChC,QAAU,GAAMS,EAAgB,CAAC,EAEjC,SAAAC,EAAA,IAACK,EAAA,CACC,IAAKhB,EACL,IAAI,OACJ,MAAO,IACP,OAAQ,GACR,UAAWc,EAAO,UAClB,SAAQ,EAAA,CAAA,CACV,CAAA,EAEJ,EACCH,EAAA,IAAA,MAAA,CAAI,UAAWG,EAAO,MACpB,SAAMf,EAAA,IAAKkB,GACVA,EAAK,QACFN,EAAAA,IAAA,MAAA,CAAI,UAAWG,EAAO,UACpB,SAAAG,EAAK,KAD+B,EAAAA,EAAK,KAE5C,EAEAN,EAAA,IAACI,EAAA,CACC,KAAME,EAAK,MAAQ,GAEnB,MAAO,CAAE,eAAgB,MAAO,EAChC,KAAK,WACL,eAAcX,IAAiBW,EAAK,KAAO,OAAS,OAEpD,SAAAJ,EAAA,KAAC,MAAA,CACC,QAAUK,GAAMR,EAAgBQ,CAAC,EACjC,UAAWC,EAAWL,EAAO,SAAU,CACrC,CAACA,EAAO,QAAQ,EAAGR,IAAiBW,EAAK,IAAA,CAC1C,EACD,SAAU,EACV,UAAYC,GAAM,EACZA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MACjCR,EAAgBQ,CAAC,CAErB,EAEC,SAAA,CAAKD,EAAA,KACNN,EAAAA,IAAC,MAAK,CAAA,SAAAM,EAAK,KAAM,CAAA,CAAA,CAAA,CAAA,CACnB,EAnBKA,EAAK,KAAA,CAoBZ,CAGN,CAAA,CAAA,CACF,CAAA,CAAA,CACF,CAEJ"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/SideMenu/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\nimport { Drawer } from \"@mui/material\";\nimport classnames from \"classnames\";\n\nimport styles from \"./index.module.scss\";\n\nexport type Menu = {\n label: string;\n icon?: React.ReactNode;\n href?: string;\n isTitle?: boolean;\n};\n\ntype Props = {\n isOpen: boolean;\n isMobile: boolean;\n onClose: () => void;\n menus: Menu[];\n logoSrc: string;\n topPageUrl?: string;\n isStorybook?: boolean;\n currentPath?: string | null;\n};\n\nconst DRAWER_WIDTH = 235;\n\nexport const SideMenu = (props: Props) => {\n const {\n isOpen,\n isMobile,\n onClose,\n menus,\n logoSrc,\n topPageUrl = \"/\",\n isStorybook = false,\n currentPath,\n } = props;\n\n const path = currentPath?.split(\"/\")[1] ?? null;\n const href = path === \"\" ? \"/\" : \"/\" + path;\n const [selectedHref, setSelectedHref] = useState<string | undefined>(href);\n\n useEffect(() => {\n setSelectedHref(href);\n }, [href, currentPath]);\n\n const handleLinkClick = (\n e:\n | React.MouseEvent<HTMLAnchorElement | HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n ) => {\n if (isMobile) {\n onClose();\n }\n if (isStorybook) {\n e.preventDefault();\n }\n };\n\n return (\n <Drawer\n variant={isMobile ? \"temporary\" : \"permanent\"}\n open={isMobile ? isOpen : undefined}\n onClose={onClose}\n sx={{\n width: DRAWER_WIDTH,\n flexShrink: 0,\n \"& .MuiDrawer-paper\": {\n width: DRAWER_WIDTH,\n boxSizing: \"border-box\",\n },\n display: isOpen ? \"block\" : \"none\",\n }}\n >\n <div className={styles.sideMenu}>\n <div className={styles.logo}>\n <Link\n href={topPageUrl}\n style={{ textDecoration: \"none\" }}\n onClick={(e) => handleLinkClick(e)}\n >\n <Image\n src={logoSrc}\n alt=\"logo\"\n width={202}\n height={56}\n className={styles.logoImage}\n priority\n />\n </Link>\n </div>\n <div className={styles.menus}>\n {menus.map((menu) =>\n menu.isTitle ? (\n <div className={styles.menuTitle} key={menu.label}>\n {menu.label}\n </div>\n ) : (\n <Link\n href={menu.href ?? \"\"}\n key={menu.label}\n style={{ textDecoration: \"none\" }}\n role=\"menuitem\"\n aria-current={selectedHref === menu.href ? \"page\" : undefined}\n >\n <div\n onClick={(e) => handleLinkClick(e)}\n className={classnames(styles.menuItem, {\n [styles.selected]: selectedHref === menu.href,\n })}\n tabIndex={0}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n handleLinkClick(e);\n }\n }}\n >\n {menu.icon}\n <div>{menu.label}</div>\n </div>\n </Link>\n ),\n )}\n </div>\n </div>\n </Drawer>\n );\n};\n\nexport default SideMenu;\n"],"names":["DRAWER_WIDTH","SideMenu","props","isOpen","isMobile","onClose","menus","logoSrc","topPageUrl","isStorybook","currentPath","path","href","selectedHref","setSelectedHref","useState","useEffect","handleLinkClick","jsx","Drawer","jsxs","styles","Link","Image","menu","e","classnames"],"mappings":"4eA0BMA,EAAe,IAERC,EAAYC,GAAiB,CACxC,KAAM,CACJ,OAAAC,EACA,SAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAAAC,EACA,WAAAC,EAAa,IACb,YAAAC,EAAc,GACd,YAAAC,CAAA,EACER,EAEES,GAAOD,GAAA,YAAAA,EAAa,MAAM,KAAK,KAAM,KACrCE,EAAOD,IAAS,GAAK,IAAM,IAAMA,EACjC,CAACE,EAAcC,CAAe,EAAIC,EAAAA,SAA6BH,CAAI,EAEzEI,EAAAA,UAAU,IAAM,CACdF,EAAgBF,CAAI,CACtB,EAAG,CAACA,EAAMF,CAAW,CAAC,EAEtB,MAAMO,EACJ,GAGG,CACCb,GACFC,EAAA,EAEEI,GACF,EAAE,eAAA,CAEN,EAEA,OACES,EAAAA,IAACC,EAAAA,OAAA,CACC,QAASf,EAAW,YAAc,YAClC,KAAMA,EAAWD,EAAS,OAC1B,QAAAE,EACA,GAAI,CACF,MAAOL,EACP,WAAY,EACZ,qBAAsB,CACpB,MAAOA,EACP,UAAW,YAAA,EAEb,QAASG,EAAS,QAAU,MAAA,EAG9B,SAAAiB,EAAAA,KAAC,MAAA,CAAI,UAAWC,EAAO,SACrB,SAAA,CAAAH,EAAAA,IAAC,MAAA,CAAI,UAAWG,EAAO,KACrB,SAAAH,EAAAA,IAACI,EAAA,CACC,KAAMd,EACN,MAAO,CAAE,eAAgB,MAAA,EACzB,QAAU,GAAMS,EAAgB,CAAC,EAEjC,SAAAC,EAAAA,IAACK,EAAA,CACC,IAAKhB,EACL,IAAI,OACJ,MAAO,IACP,OAAQ,GACR,UAAWc,EAAO,UAClB,SAAQ,EAAA,CAAA,CACV,CAAA,EAEJ,EACAH,EAAAA,IAAC,MAAA,CAAI,UAAWG,EAAO,MACpB,SAAAf,EAAM,IAAKkB,GACVA,EAAK,QACHN,EAAAA,IAAC,MAAA,CAAI,UAAWG,EAAO,UACpB,SAAAG,EAAK,KAAA,EAD+BA,EAAK,KAE5C,EAEAN,EAAAA,IAACI,EAAA,CACC,KAAME,EAAK,MAAQ,GAEnB,MAAO,CAAE,eAAgB,MAAA,EACzB,KAAK,WACL,eAAcX,IAAiBW,EAAK,KAAO,OAAS,OAEpD,SAAAJ,EAAAA,KAAC,MAAA,CACC,QAAUK,GAAMR,EAAgBQ,CAAC,EACjC,UAAWC,EAAWL,EAAO,SAAU,CACrC,CAACA,EAAO,QAAQ,EAAGR,IAAiBW,EAAK,IAAA,CAC1C,EACD,SAAU,EACV,UAAYC,GAAM,EACZA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MACjCR,EAAgBQ,CAAC,CAErB,EAEC,SAAA,CAAAD,EAAK,KACNN,EAAAA,IAAC,MAAA,CAAK,SAAAM,EAAK,KAAA,CAAM,CAAA,CAAA,CAAA,CACnB,EAnBKA,EAAK,KAAA,CAoBZ,CAEJ,CACF,CAAA,CAAA,CACF,CAAA,CAAA,CAGN"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../src/components/SideMenu/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\nimport { Drawer } from \"@mui/material\";\nimport classnames from \"classnames\";\n\nimport styles from \"./index.module.scss\";\n\nexport type Menu = {\n label: string;\n icon?: React.ReactNode;\n href?: string;\n isTitle?: boolean;\n};\n\ntype Props = {\n isOpen: boolean;\n isMobile: boolean;\n onClose: () => void;\n menus: Menu[];\n logoSrc: string;\n topPageUrl?: string;\n isStorybook?: boolean;\n currentPath?: string | null;\n};\n\nconst DRAWER_WIDTH = 235;\n\nexport const SideMenu = (props: Props) => {\n const {\n isOpen,\n isMobile,\n onClose,\n menus,\n logoSrc,\n topPageUrl = \"/\",\n isStorybook = false,\n currentPath,\n } = props;\n\n const path = currentPath?.split(\"/\")[1] ?? null;\n const href = path === \"\" ? \"/\" : \"/\" + path;\n const [selectedHref, setSelectedHref] = useState<string | undefined>(href);\n\n useEffect(() => {\n setSelectedHref(href);\n }, [href, currentPath]);\n\n const handleLinkClick = (\n e:\n | React.MouseEvent<HTMLAnchorElement | HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n ) => {\n if (isMobile) {\n onClose();\n }\n if (isStorybook) {\n e.preventDefault();\n }\n };\n\n return (\n <Drawer\n variant={isMobile ? \"temporary\" : \"permanent\"}\n open={isMobile ? isOpen : undefined}\n onClose={onClose}\n sx={{\n width: DRAWER_WIDTH,\n flexShrink: 0,\n \"& .MuiDrawer-paper\": {\n width: DRAWER_WIDTH,\n boxSizing: \"border-box\",\n },\n display: isOpen ? \"block\" : \"none\",\n }}\n >\n <div className={styles.sideMenu}>\n <div className={styles.logo}>\n <Link\n href={topPageUrl}\n style={{ textDecoration: \"none\" }}\n onClick={(e) => handleLinkClick(e)}\n >\n <Image\n src={logoSrc}\n alt=\"logo\"\n width={202}\n height={56}\n className={styles.logoImage}\n priority\n />\n </Link>\n </div>\n <div className={styles.menus}>\n {menus.map((menu) =>\n menu.isTitle ? (\n <div className={styles.menuTitle} key={menu.label}>\n {menu.label}\n </div>\n ) : (\n <Link\n href={menu.href ?? \"\"}\n key={menu.label}\n style={{ textDecoration: \"none\" }}\n role=\"menuitem\"\n aria-current={selectedHref === menu.href ? \"page\" : undefined}\n >\n <div\n onClick={(e) => handleLinkClick(e)}\n className={classnames(styles.menuItem, {\n [styles.selected]: selectedHref === menu.href,\n })}\n tabIndex={0}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n handleLinkClick(e);\n }\n }}\n >\n {menu.icon}\n <div>{menu.label}</div>\n </div>\n </Link>\n ),\n )}\n </div>\n </div>\n </Drawer>\n );\n};\n\nexport default SideMenu;\n"],"names":["DRAWER_WIDTH","SideMenu","props","isOpen","isMobile","onClose","menus","logoSrc","topPageUrl","isStorybook","currentPath","path","href","selectedHref","setSelectedHref","useState","useEffect","handleLinkClick","jsx","Drawer","jsxs","styles","Link","Image","menu","e","classnames"],"mappings":";;;;;;;;;;;;;;GA0BMA,IAAe,KAERC,IAAW,CAACC,MAAiB;AAClC,QAAA;AAAA,IACJ,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,SAAAC;AAAA,IACA,OAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC,IAAa;AAAA,IACb,aAAAC,IAAc;AAAA,IACd,aAAAC;AAAA,EAAA,IACER,GAEES,KAAOD,KAAA,gBAAAA,EAAa,MAAM,KAAK,OAAM,MACrCE,IAAOD,MAAS,KAAK,MAAM,MAAMA,GACjC,CAACE,GAAcC,CAAe,IAAIC,EAA6BH,CAAI;AAEzE,EAAAI,EAAU,MAAM;AACd,IAAAF,EAAgBF,CAAI;AAAA,EAAA,GACnB,CAACA,GAAMF,CAAW,CAAC;AAEhB,QAAAO,IAAkB,CACtB,MAGG;AACH,IAAIb,KACMC,EAAA,GAENI,KACF,EAAE,eAAe;AAAA,EAErB;AAGE,SAAA,gBAAAS;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAASf,IAAW,cAAc;AAAA,MAClC,MAAMA,IAAWD,IAAS;AAAA,MAC1B,SAAAE;AAAA,MACA,IAAI;AAAA,QACF,OAAOL;AAAA,QACP,YAAY;AAAA,QACZ,sBAAsB;AAAA,UACpB,OAAOA;AAAA,UACP,WAAW;AAAA,QACb;AAAA,QACA,SAASG,IAAS,UAAU;AAAA,MAC9B;AAAA,MAEA,UAAC,gBAAAiB,EAAA,OAAA,EAAI,WAAWC,EAAO,UACrB,UAAA;AAAA,QAAC,gBAAAH,EAAA,OAAA,EAAI,WAAWG,EAAO,MACrB,UAAA,gBAAAH;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,MAAMd;AAAA,YACN,OAAO,EAAE,gBAAgB,OAAO;AAAA,YAChC,SAAS,CAAC,MAAMS,EAAgB,CAAC;AAAA,YAEjC,UAAA,gBAAAC;AAAA,cAACK;AAAA,cAAA;AAAA,gBACC,KAAKhB;AAAA,gBACL,KAAI;AAAA,gBACJ,OAAO;AAAA,gBACP,QAAQ;AAAA,gBACR,WAAWc,EAAO;AAAA,gBAClB,UAAQ;AAAA,cAAA;AAAA,YAAA;AAAA,UACV;AAAA,QAAA,GAEJ;AAAA,QACC,gBAAAH,EAAA,OAAA,EAAI,WAAWG,EAAO,OACpB,UAAMf,EAAA;AAAA,UAAI,CAACkB,MACVA,EAAK,UACF,gBAAAN,EAAA,OAAA,EAAI,WAAWG,EAAO,WACpB,UAAAG,EAAK,MAD+B,GAAAA,EAAK,KAE5C,IAEA,gBAAAN;AAAA,YAACI;AAAA,YAAA;AAAA,cACC,MAAME,EAAK,QAAQ;AAAA,cAEnB,OAAO,EAAE,gBAAgB,OAAO;AAAA,cAChC,MAAK;AAAA,cACL,gBAAcX,MAAiBW,EAAK,OAAO,SAAS;AAAA,cAEpD,UAAA,gBAAAJ;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,SAAS,CAACK,MAAMR,EAAgBQ,CAAC;AAAA,kBACjC,WAAWC,EAAWL,EAAO,UAAU;AAAA,oBACrC,CAACA,EAAO,QAAQ,GAAGR,MAAiBW,EAAK;AAAA,kBAAA,CAC1C;AAAA,kBACD,UAAU;AAAA,kBACV,WAAW,CAACC,MAAM;AAChB,qBAAIA,EAAE,QAAQ,WAAWA,EAAE,QAAQ,QACjCR,EAAgBQ,CAAC;AAAA,kBAErB;AAAA,kBAEC,UAAA;AAAA,oBAAKD,EAAA;AAAA,oBACN,gBAAAN,EAAC,OAAK,EAAA,UAAAM,EAAK,MAAM,CAAA;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAAA;AAAA,YACnB;AAAA,YAnBKA,EAAK;AAAA,UAAA;AAAA,QAoBZ,EAGN,CAAA;AAAA,MAAA,EACF,CAAA;AAAA,IAAA;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../src/components/SideMenu/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport Image from \"next/image\";\nimport Link from \"next/link\";\nimport { Drawer } from \"@mui/material\";\nimport classnames from \"classnames\";\n\nimport styles from \"./index.module.scss\";\n\nexport type Menu = {\n label: string;\n icon?: React.ReactNode;\n href?: string;\n isTitle?: boolean;\n};\n\ntype Props = {\n isOpen: boolean;\n isMobile: boolean;\n onClose: () => void;\n menus: Menu[];\n logoSrc: string;\n topPageUrl?: string;\n isStorybook?: boolean;\n currentPath?: string | null;\n};\n\nconst DRAWER_WIDTH = 235;\n\nexport const SideMenu = (props: Props) => {\n const {\n isOpen,\n isMobile,\n onClose,\n menus,\n logoSrc,\n topPageUrl = \"/\",\n isStorybook = false,\n currentPath,\n } = props;\n\n const path = currentPath?.split(\"/\")[1] ?? null;\n const href = path === \"\" ? \"/\" : \"/\" + path;\n const [selectedHref, setSelectedHref] = useState<string | undefined>(href);\n\n useEffect(() => {\n setSelectedHref(href);\n }, [href, currentPath]);\n\n const handleLinkClick = (\n e:\n | React.MouseEvent<HTMLAnchorElement | HTMLDivElement>\n | React.KeyboardEvent<HTMLDivElement>,\n ) => {\n if (isMobile) {\n onClose();\n }\n if (isStorybook) {\n e.preventDefault();\n }\n };\n\n return (\n <Drawer\n variant={isMobile ? \"temporary\" : \"permanent\"}\n open={isMobile ? isOpen : undefined}\n onClose={onClose}\n sx={{\n width: DRAWER_WIDTH,\n flexShrink: 0,\n \"& .MuiDrawer-paper\": {\n width: DRAWER_WIDTH,\n boxSizing: \"border-box\",\n },\n display: isOpen ? \"block\" : \"none\",\n }}\n >\n <div className={styles.sideMenu}>\n <div className={styles.logo}>\n <Link\n href={topPageUrl}\n style={{ textDecoration: \"none\" }}\n onClick={(e) => handleLinkClick(e)}\n >\n <Image\n src={logoSrc}\n alt=\"logo\"\n width={202}\n height={56}\n className={styles.logoImage}\n priority\n />\n </Link>\n </div>\n <div className={styles.menus}>\n {menus.map((menu) =>\n menu.isTitle ? (\n <div className={styles.menuTitle} key={menu.label}>\n {menu.label}\n </div>\n ) : (\n <Link\n href={menu.href ?? \"\"}\n key={menu.label}\n style={{ textDecoration: \"none\" }}\n role=\"menuitem\"\n aria-current={selectedHref === menu.href ? \"page\" : undefined}\n >\n <div\n onClick={(e) => handleLinkClick(e)}\n className={classnames(styles.menuItem, {\n [styles.selected]: selectedHref === menu.href,\n })}\n tabIndex={0}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n handleLinkClick(e);\n }\n }}\n >\n {menu.icon}\n <div>{menu.label}</div>\n </div>\n </Link>\n ),\n )}\n </div>\n </div>\n </Drawer>\n );\n};\n\nexport default SideMenu;\n"],"names":["DRAWER_WIDTH","SideMenu","props","isOpen","isMobile","onClose","menus","logoSrc","topPageUrl","isStorybook","currentPath","path","href","selectedHref","setSelectedHref","useState","useEffect","handleLinkClick","jsx","Drawer","jsxs","styles","Link","Image","menu","e","classnames"],"mappings":";;;;;;;;;;;;;;GA0BMA,IAAe,KAERC,IAAW,CAACC,MAAiB;AACxC,QAAM;AAAA,IACJ,QAAAC;AAAA,IACA,UAAAC;AAAA,IACA,SAAAC;AAAA,IACA,OAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC,IAAa;AAAA,IACb,aAAAC,IAAc;AAAA,IACd,aAAAC;AAAA,EAAA,IACER,GAEES,KAAOD,KAAA,gBAAAA,EAAa,MAAM,KAAK,OAAM,MACrCE,IAAOD,MAAS,KAAK,MAAM,MAAMA,GACjC,CAACE,GAAcC,CAAe,IAAIC,EAA6BH,CAAI;AAEzE,EAAAI,EAAU,MAAM;AACd,IAAAF,EAAgBF,CAAI;AAAA,EACtB,GAAG,CAACA,GAAMF,CAAW,CAAC;AAEtB,QAAMO,IAAkB,CACtB,MAGG;AACH,IAAIb,KACFC,EAAA,GAEEI,KACF,EAAE,eAAA;AAAA,EAEN;AAEA,SACE,gBAAAS;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,SAASf,IAAW,cAAc;AAAA,MAClC,MAAMA,IAAWD,IAAS;AAAA,MAC1B,SAAAE;AAAA,MACA,IAAI;AAAA,QACF,OAAOL;AAAA,QACP,YAAY;AAAA,QACZ,sBAAsB;AAAA,UACpB,OAAOA;AAAA,UACP,WAAW;AAAA,QAAA;AAAA,QAEb,SAASG,IAAS,UAAU;AAAA,MAAA;AAAA,MAG9B,UAAA,gBAAAiB,EAAC,OAAA,EAAI,WAAWC,EAAO,UACrB,UAAA;AAAA,QAAA,gBAAAH,EAAC,OAAA,EAAI,WAAWG,EAAO,MACrB,UAAA,gBAAAH;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,MAAMd;AAAA,YACN,OAAO,EAAE,gBAAgB,OAAA;AAAA,YACzB,SAAS,CAAC,MAAMS,EAAgB,CAAC;AAAA,YAEjC,UAAA,gBAAAC;AAAA,cAACK;AAAA,cAAA;AAAA,gBACC,KAAKhB;AAAA,gBACL,KAAI;AAAA,gBACJ,OAAO;AAAA,gBACP,QAAQ;AAAA,gBACR,WAAWc,EAAO;AAAA,gBAClB,UAAQ;AAAA,cAAA;AAAA,YAAA;AAAA,UACV;AAAA,QAAA,GAEJ;AAAA,QACA,gBAAAH,EAAC,OAAA,EAAI,WAAWG,EAAO,OACpB,UAAAf,EAAM;AAAA,UAAI,CAACkB,MACVA,EAAK,UACH,gBAAAN,EAAC,OAAA,EAAI,WAAWG,EAAO,WACpB,UAAAG,EAAK,MAAA,GAD+BA,EAAK,KAE5C,IAEA,gBAAAN;AAAA,YAACI;AAAA,YAAA;AAAA,cACC,MAAME,EAAK,QAAQ;AAAA,cAEnB,OAAO,EAAE,gBAAgB,OAAA;AAAA,cACzB,MAAK;AAAA,cACL,gBAAcX,MAAiBW,EAAK,OAAO,SAAS;AAAA,cAEpD,UAAA,gBAAAJ;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,SAAS,CAACK,MAAMR,EAAgBQ,CAAC;AAAA,kBACjC,WAAWC,EAAWL,EAAO,UAAU;AAAA,oBACrC,CAACA,EAAO,QAAQ,GAAGR,MAAiBW,EAAK;AAAA,kBAAA,CAC1C;AAAA,kBACD,UAAU;AAAA,kBACV,WAAW,CAACC,MAAM;AAChB,qBAAIA,EAAE,QAAQ,WAAWA,EAAE,QAAQ,QACjCR,EAAgBQ,CAAC;AAAA,kBAErB;AAAA,kBAEC,UAAA;AAAA,oBAAAD,EAAK;AAAA,oBACN,gBAAAN,EAAC,OAAA,EAAK,UAAAM,EAAK,MAAA,CAAM;AAAA,kBAAA;AAAA,gBAAA;AAAA,cAAA;AAAA,YACnB;AAAA,YAnBKA,EAAK;AAAA,UAAA;AAAA,QAoBZ,EAEJ,CACF;AAAA,MAAA,EAAA,CACF;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -1,2 +1,2 @@
1
- "use strict";const t=require("react/jsx-runtime"),e=require("../../react.esm-CiMn0Rnx.cjs"),u=require("../../index-C50NsnJO.cjs");require("../../index-BpMSrIOq.cjs");const s=require("./index.cjs.js");jest.mock("next/navigation",()=>({usePathname:jest.fn(()=>"/")}));const i=[{label:"Dashboard",href:"/",isTitle:!1},{label:"管理メニュー",isTitle:!0},{label:"制御グループ一覧",href:"/management-groups",isTitle:!1}],r={isOpen:!0,isMobile:!1,onClose:jest.fn(),menus:i,logoSrc:"/leaflet/images/logo.png"};describe("Given SideMenu",()=>{it("Then renders the side menu with correct menu items",()=>{e.render(t.jsx(s.SideMenu,{...r})),i.forEach(n=>{const o=e.screen.getByText(n.label);expect(o).toBeInTheDocument()})}),it("Then renders menu titles correctly",()=>{e.render(t.jsx(s.SideMenu,{...r}));const n=e.screen.getByText("管理メニュー");expect(n).toBeInTheDocument(),expect(n.tagName).toBe("DIV")}),it("When isMobile is true and isOpen is true, Then renders correctly",()=>{e.render(t.jsx(s.SideMenu,{...r,isMobile:!0,isOpen:!0})),expect(e.screen.getByRole("presentation")).toBeInTheDocument()}),it("When isMobile is true and isOpen is false, Then does not render",()=>{e.render(t.jsx(s.SideMenu,{...r,isMobile:!0,isOpen:!1})),expect(e.screen.queryByRole("presentation")).not.toBeInTheDocument()}),it("When a menu item is clicked in mobile mode, Then triggers onClose",async()=>{const n=u.userEvent.setup(),o=jest.fn(),c={...r,isMobile:!0,onClose:o};e.render(t.jsx(s.SideMenu,{...c})),await n.click(e.screen.getByText("Dashboard")),expect(o).toHaveBeenCalled()}),it("When menus are empty, Then renders nothing",()=>{e.render(t.jsx(s.SideMenu,{...r,menus:[]})),expect(e.screen.getByAltText("logo")).toBeInTheDocument(),expect(e.screen.queryByText("Dashboard")).not.toBeInTheDocument(),expect(e.screen.queryByText("管理メニュー")).not.toBeInTheDocument()})});
1
+ "use strict";const t=require("react/jsx-runtime"),e=require("../../react.esm-BcRJ42eI.cjs"),u=require("../../index-Bbj4TMfJ.cjs");require("../../index-9p9q0wxE.cjs");const s=require("./index.cjs.js");jest.mock("next/navigation",()=>({usePathname:jest.fn(()=>"/")}));const i=[{label:"Dashboard",href:"/",isTitle:!1},{label:"管理メニュー",isTitle:!0},{label:"制御グループ一覧",href:"/management-groups",isTitle:!1}],r={isOpen:!0,isMobile:!1,onClose:jest.fn(),menus:i,logoSrc:"/leaflet/images/logo.png"};describe("Given SideMenu",()=>{it("Then renders the side menu with correct menu items",()=>{e.render(t.jsx(s.SideMenu,{...r})),i.forEach(n=>{const o=e.screen.getByText(n.label);expect(o).toBeInTheDocument()})}),it("Then renders menu titles correctly",()=>{e.render(t.jsx(s.SideMenu,{...r}));const n=e.screen.getByText("管理メニュー");expect(n).toBeInTheDocument(),expect(n.tagName).toBe("DIV")}),it("When isMobile is true and isOpen is true, Then renders correctly",()=>{e.render(t.jsx(s.SideMenu,{...r,isMobile:!0,isOpen:!0})),expect(e.screen.getByRole("presentation")).toBeInTheDocument()}),it("When isMobile is true and isOpen is false, Then does not render",()=>{e.render(t.jsx(s.SideMenu,{...r,isMobile:!0,isOpen:!1})),expect(e.screen.queryByRole("presentation")).not.toBeInTheDocument()}),it("When a menu item is clicked in mobile mode, Then triggers onClose",async()=>{const n=u.userEvent.setup(),o=jest.fn(),c={...r,isMobile:!0,onClose:o};e.render(t.jsx(s.SideMenu,{...c})),await n.click(e.screen.getByText("Dashboard")),expect(o).toHaveBeenCalled()}),it("When menus are empty, Then renders nothing",()=>{e.render(t.jsx(s.SideMenu,{...r,menus:[]})),expect(e.screen.getByAltText("logo")).toBeInTheDocument(),expect(e.screen.queryByText("Dashboard")).not.toBeInTheDocument(),expect(e.screen.queryByText("管理メニュー")).not.toBeInTheDocument()})});
2
2
  //# sourceMappingURL=index.test.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SideMenu/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\nimport userEvent from \"@testing-library/user-event\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { Menu, SideMenu } from \".\";\n\njest.mock(\"next/navigation\", () => ({\n usePathname: jest.fn(() => \"/\"),\n}));\n\nconst menus: Menu[] = [\n { label: \"Dashboard\", href: \"/\", isTitle: false },\n { label: \"管理メニュー\", isTitle: true },\n { label: \"制御グループ一覧\", href: \"/management-groups\", isTitle: false },\n];\n\nconst defaultProps = {\n isOpen: true,\n isMobile: false,\n onClose: jest.fn(),\n menus: menus,\n logoSrc: \"/leaflet/images/logo.png\",\n};\n\ndescribe(\"Given SideMenu\", () => {\n it(\"Then renders the side menu with correct menu items\", () => {\n render(<SideMenu {...defaultProps} />);\n\n menus.forEach((menu) => {\n const menuItem = screen.getByText(menu.label);\n expect(menuItem).toBeInTheDocument();\n });\n });\n\n it(\"Then renders menu titles correctly\", () => {\n render(<SideMenu {...defaultProps} />);\n\n const title = screen.getByText(\"管理メニュー\");\n expect(title).toBeInTheDocument();\n expect(title.tagName).toBe(\"DIV\");\n });\n\n it(\"When isMobile is true and isOpen is true, Then renders correctly\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={true} />);\n\n expect(screen.getByRole(\"presentation\")).toBeInTheDocument();\n });\n\n it(\"When isMobile is true and isOpen is false, Then does not render\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={false} />);\n\n expect(screen.queryByRole(\"presentation\")).not.toBeInTheDocument();\n });\n\n it(\"When a menu item is clicked in mobile mode, Then triggers onClose\", async () => {\n const user = userEvent.setup();\n const onCloseMock = jest.fn();\n const MockedProps = {\n ...defaultProps,\n isMobile: true,\n onClose: onCloseMock,\n };\n\n render(<SideMenu {...MockedProps} />);\n\n await user.click(screen.getByText(\"Dashboard\"));\n expect(onCloseMock).toHaveBeenCalled();\n });\n\n it(\"When menus are empty, Then renders nothing\", () => {\n render(<SideMenu {...defaultProps} menus={[]} />);\n\n expect(screen.getByAltText(\"logo\")).toBeInTheDocument();\n expect(screen.queryByText(\"Dashboard\")).not.toBeInTheDocument();\n expect(screen.queryByText(\"管理メニュー\")).not.toBeInTheDocument();\n });\n});\n"],"names":["menus","defaultProps","render","jsx","SideMenu","menu","menuItem","screen","title","user","userEvent","onCloseMock","MockedProps"],"mappings":"wMAOA,KAAK,KAAK,kBAAmB,KAAO,CAClC,YAAa,KAAK,GAAG,IAAM,GAAG,CAChC,EAAE,EAEF,MAAMA,EAAgB,CACpB,CAAE,MAAO,YAAa,KAAM,IAAK,QAAS,EAAM,EAChD,CAAE,MAAO,SAAU,QAAS,EAAK,EACjC,CAAE,MAAO,WAAY,KAAM,qBAAsB,QAAS,EAAM,CAClE,EAEMC,EAAe,CACnB,OAAQ,GACR,SAAU,GACV,QAAS,KAAK,GAAG,EACjB,MAAAD,EACA,QAAS,0BACX,EAEA,SAAS,iBAAkB,IAAM,CAC/B,GAAG,qDAAsD,IAAM,CAC7DE,EAAAA,OAAQC,EAAAA,IAAAC,EAAAA,SAAA,CAAU,GAAGH,CAAc,CAAA,CAAE,EAE/BD,EAAA,QAASK,GAAS,CACtB,MAAMC,EAAWC,EAAA,OAAO,UAAUF,EAAK,KAAK,EACrC,OAAAC,CAAQ,EAAE,kBAAkB,CAAA,CACpC,CAAA,CACF,EAED,GAAG,qCAAsC,IAAM,CAC7CJ,EAAAA,OAAQC,EAAAA,IAAAC,EAAAA,SAAA,CAAU,GAAGH,CAAc,CAAA,CAAE,EAE/B,MAAAO,EAAQD,EAAAA,OAAO,UAAU,QAAQ,EAChC,OAAAC,CAAK,EAAE,kBAAkB,EAChC,OAAOA,EAAM,OAAO,EAAE,KAAK,KAAK,CAAA,CACjC,EAED,GAAG,mEAAoE,IAAM,CACpEN,SAAAC,EAAAA,IAACC,YAAU,GAAGH,EAAc,SAAU,GAAM,OAAQ,GAAM,CAAE,EAEnE,OAAOM,EAAAA,OAAO,UAAU,cAAc,CAAC,EAAE,kBAAkB,CAAA,CAC5D,EAED,GAAG,kEAAmE,IAAM,CACnEL,SAAAC,EAAAA,IAACC,YAAU,GAAGH,EAAc,SAAU,GAAM,OAAQ,GAAO,CAAE,EAEpE,OAAOM,SAAO,YAAY,cAAc,CAAC,EAAE,IAAI,kBAAkB,CAAA,CAClE,EAED,GAAG,oEAAqE,SAAY,CAC5E,MAAAE,EAAOC,YAAU,MAAM,EACvBC,EAAc,KAAK,GAAG,EACtBC,EAAc,CAClB,GAAGX,EACH,SAAU,GACV,QAASU,CACX,EAEAT,EAAAA,OAAQC,EAAAA,IAAAC,EAAAA,SAAA,CAAU,GAAGQ,CAAa,CAAA,CAAE,EAEpC,MAAMH,EAAK,MAAMF,EAAO,OAAA,UAAU,WAAW,CAAC,EACvC,OAAAI,CAAW,EAAE,iBAAiB,CAAA,CACtC,EAED,GAAG,6CAA8C,IAAM,CACrDT,EAAA,aAAQE,WAAU,CAAA,GAAGH,EAAc,MAAO,GAAI,CAAE,EAEhD,OAAOM,EAAAA,OAAO,aAAa,MAAM,CAAC,EAAE,kBAAkB,EACtD,OAAOA,SAAO,YAAY,WAAW,CAAC,EAAE,IAAI,kBAAkB,EAC9D,OAAOA,SAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,kBAAkB,CAAA,CAC5D,CACH,CAAC"}
1
+ {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SideMenu/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\nimport userEvent from \"@testing-library/user-event\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { Menu, SideMenu } from \".\";\n\njest.mock(\"next/navigation\", () => ({\n usePathname: jest.fn(() => \"/\"),\n}));\n\nconst menus: Menu[] = [\n { label: \"Dashboard\", href: \"/\", isTitle: false },\n { label: \"管理メニュー\", isTitle: true },\n { label: \"制御グループ一覧\", href: \"/management-groups\", isTitle: false },\n];\n\nconst defaultProps = {\n isOpen: true,\n isMobile: false,\n onClose: jest.fn(),\n menus: menus,\n logoSrc: \"/leaflet/images/logo.png\",\n};\n\ndescribe(\"Given SideMenu\", () => {\n it(\"Then renders the side menu with correct menu items\", () => {\n render(<SideMenu {...defaultProps} />);\n\n menus.forEach((menu) => {\n const menuItem = screen.getByText(menu.label);\n expect(menuItem).toBeInTheDocument();\n });\n });\n\n it(\"Then renders menu titles correctly\", () => {\n render(<SideMenu {...defaultProps} />);\n\n const title = screen.getByText(\"管理メニュー\");\n expect(title).toBeInTheDocument();\n expect(title.tagName).toBe(\"DIV\");\n });\n\n it(\"When isMobile is true and isOpen is true, Then renders correctly\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={true} />);\n\n expect(screen.getByRole(\"presentation\")).toBeInTheDocument();\n });\n\n it(\"When isMobile is true and isOpen is false, Then does not render\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={false} />);\n\n expect(screen.queryByRole(\"presentation\")).not.toBeInTheDocument();\n });\n\n it(\"When a menu item is clicked in mobile mode, Then triggers onClose\", async () => {\n const user = userEvent.setup();\n const onCloseMock = jest.fn();\n const MockedProps = {\n ...defaultProps,\n isMobile: true,\n onClose: onCloseMock,\n };\n\n render(<SideMenu {...MockedProps} />);\n\n await user.click(screen.getByText(\"Dashboard\"));\n expect(onCloseMock).toHaveBeenCalled();\n });\n\n it(\"When menus are empty, Then renders nothing\", () => {\n render(<SideMenu {...defaultProps} menus={[]} />);\n\n expect(screen.getByAltText(\"logo\")).toBeInTheDocument();\n expect(screen.queryByText(\"Dashboard\")).not.toBeInTheDocument();\n expect(screen.queryByText(\"管理メニュー\")).not.toBeInTheDocument();\n });\n});\n"],"names":["menus","defaultProps","render","jsx","SideMenu","menu","menuItem","screen","title","user","userEvent","onCloseMock","MockedProps"],"mappings":"wMAOA,KAAK,KAAK,kBAAmB,KAAO,CAClC,YAAa,KAAK,GAAG,IAAM,GAAG,CAChC,EAAE,EAEF,MAAMA,EAAgB,CACpB,CAAE,MAAO,YAAa,KAAM,IAAK,QAAS,EAAA,EAC1C,CAAE,MAAO,SAAU,QAAS,EAAA,EAC5B,CAAE,MAAO,WAAY,KAAM,qBAAsB,QAAS,EAAA,CAC5D,EAEMC,EAAe,CACnB,OAAQ,GACR,SAAU,GACV,QAAS,KAAK,GAAA,EACd,MAAAD,EACA,QAAS,0BACX,EAEA,SAAS,iBAAkB,IAAM,CAC/B,GAAG,qDAAsD,IAAM,CAC7DE,EAAAA,OAAOC,EAAAA,IAACC,EAAAA,SAAA,CAAU,GAAGH,CAAA,CAAc,CAAE,EAErCD,EAAM,QAASK,GAAS,CACtB,MAAMC,EAAWC,EAAAA,OAAO,UAAUF,EAAK,KAAK,EAC5C,OAAOC,CAAQ,EAAE,kBAAA,CACnB,CAAC,CACH,CAAC,EAED,GAAG,qCAAsC,IAAM,CAC7CJ,EAAAA,OAAOC,EAAAA,IAACC,EAAAA,SAAA,CAAU,GAAGH,CAAA,CAAc,CAAE,EAErC,MAAMO,EAAQD,EAAAA,OAAO,UAAU,QAAQ,EACvC,OAAOC,CAAK,EAAE,kBAAA,EACd,OAAOA,EAAM,OAAO,EAAE,KAAK,KAAK,CAClC,CAAC,EAED,GAAG,mEAAoE,IAAM,CAC3EN,SAAOC,EAAAA,IAACC,EAAAA,UAAU,GAAGH,EAAc,SAAU,GAAM,OAAQ,GAAM,CAAE,EAEnE,OAAOM,EAAAA,OAAO,UAAU,cAAc,CAAC,EAAE,kBAAA,CAC3C,CAAC,EAED,GAAG,kEAAmE,IAAM,CAC1EL,SAAOC,EAAAA,IAACC,EAAAA,UAAU,GAAGH,EAAc,SAAU,GAAM,OAAQ,GAAO,CAAE,EAEpE,OAAOM,EAAAA,OAAO,YAAY,cAAc,CAAC,EAAE,IAAI,kBAAA,CACjD,CAAC,EAED,GAAG,oEAAqE,SAAY,CAClF,MAAME,EAAOC,EAAAA,UAAU,MAAA,EACjBC,EAAc,KAAK,GAAA,EACnBC,EAAc,CAClB,GAAGX,EACH,SAAU,GACV,QAASU,CAAA,EAGXT,EAAAA,OAAOC,EAAAA,IAACC,EAAAA,SAAA,CAAU,GAAGQ,CAAA,CAAa,CAAE,EAEpC,MAAMH,EAAK,MAAMF,EAAAA,OAAO,UAAU,WAAW,CAAC,EAC9C,OAAOI,CAAW,EAAE,iBAAA,CACtB,CAAC,EAED,GAAG,6CAA8C,IAAM,CACrDT,EAAAA,aAAQE,WAAA,CAAU,GAAGH,EAAc,MAAO,CAAA,EAAI,CAAE,EAEhD,OAAOM,EAAAA,OAAO,aAAa,MAAM,CAAC,EAAE,kBAAA,EACpC,OAAOA,EAAAA,OAAO,YAAY,WAAW,CAAC,EAAE,IAAI,kBAAA,EAC5C,OAAOA,EAAAA,OAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,kBAAA,CAC3C,CAAC,CACH,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
- import { r as o, s as e } from "../../react.esm-2FJSSo-S.js";
3
- import { u as c } from "../../index-D5b3AasF.js";
4
- import "../../index-DCSLk6pp.js";
2
+ import { r as o, s as e } from "../../react.esm-DVhZgPrH.js";
3
+ import { u as c } from "../../index--uHewOkd.js";
4
+ import "../../index-Cj9ZvtM1.js";
5
5
  import { SideMenu as s } from "./index.es.js";
6
6
  jest.mock("next/navigation", () => ({
7
7
  usePathname: jest.fn(() => "/")
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SideMenu/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\nimport userEvent from \"@testing-library/user-event\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { Menu, SideMenu } from \".\";\n\njest.mock(\"next/navigation\", () => ({\n usePathname: jest.fn(() => \"/\"),\n}));\n\nconst menus: Menu[] = [\n { label: \"Dashboard\", href: \"/\", isTitle: false },\n { label: \"管理メニュー\", isTitle: true },\n { label: \"制御グループ一覧\", href: \"/management-groups\", isTitle: false },\n];\n\nconst defaultProps = {\n isOpen: true,\n isMobile: false,\n onClose: jest.fn(),\n menus: menus,\n logoSrc: \"/leaflet/images/logo.png\",\n};\n\ndescribe(\"Given SideMenu\", () => {\n it(\"Then renders the side menu with correct menu items\", () => {\n render(<SideMenu {...defaultProps} />);\n\n menus.forEach((menu) => {\n const menuItem = screen.getByText(menu.label);\n expect(menuItem).toBeInTheDocument();\n });\n });\n\n it(\"Then renders menu titles correctly\", () => {\n render(<SideMenu {...defaultProps} />);\n\n const title = screen.getByText(\"管理メニュー\");\n expect(title).toBeInTheDocument();\n expect(title.tagName).toBe(\"DIV\");\n });\n\n it(\"When isMobile is true and isOpen is true, Then renders correctly\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={true} />);\n\n expect(screen.getByRole(\"presentation\")).toBeInTheDocument();\n });\n\n it(\"When isMobile is true and isOpen is false, Then does not render\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={false} />);\n\n expect(screen.queryByRole(\"presentation\")).not.toBeInTheDocument();\n });\n\n it(\"When a menu item is clicked in mobile mode, Then triggers onClose\", async () => {\n const user = userEvent.setup();\n const onCloseMock = jest.fn();\n const MockedProps = {\n ...defaultProps,\n isMobile: true,\n onClose: onCloseMock,\n };\n\n render(<SideMenu {...MockedProps} />);\n\n await user.click(screen.getByText(\"Dashboard\"));\n expect(onCloseMock).toHaveBeenCalled();\n });\n\n it(\"When menus are empty, Then renders nothing\", () => {\n render(<SideMenu {...defaultProps} menus={[]} />);\n\n expect(screen.getByAltText(\"logo\")).toBeInTheDocument();\n expect(screen.queryByText(\"Dashboard\")).not.toBeInTheDocument();\n expect(screen.queryByText(\"管理メニュー\")).not.toBeInTheDocument();\n });\n});\n"],"names":["menus","defaultProps","render","jsx","SideMenu","menu","menuItem","screen","title","user","userEvent","onCloseMock","MockedProps"],"mappings":";;;;;AAOA,KAAK,KAAK,mBAAmB,OAAO;AAAA,EAClC,aAAa,KAAK,GAAG,MAAM,GAAG;AAChC,EAAE;AAEF,MAAMA,IAAgB;AAAA,EACpB,EAAE,OAAO,aAAa,MAAM,KAAK,SAAS,GAAM;AAAA,EAChD,EAAE,OAAO,UAAU,SAAS,GAAK;AAAA,EACjC,EAAE,OAAO,YAAY,MAAM,sBAAsB,SAAS,GAAM;AAClE,GAEMC,IAAe;AAAA,EACnB,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,SAAS,KAAK,GAAG;AAAA,EACjB,OAAAD;AAAA,EACA,SAAS;AACX;AAEA,SAAS,kBAAkB,MAAM;AAC/B,KAAG,sDAAsD,MAAM;AAC7D,IAAAE,EAAQ,gBAAAC,EAAAC,GAAA,EAAU,GAAGH,EAAc,CAAA,CAAE,GAE/BD,EAAA,QAAQ,CAACK,MAAS;AACtB,YAAMC,IAAWC,EAAO,UAAUF,EAAK,KAAK;AACrC,aAAAC,CAAQ,EAAE,kBAAkB;AAAA,IAAA,CACpC;AAAA,EAAA,CACF,GAED,GAAG,sCAAsC,MAAM;AAC7C,IAAAJ,EAAQ,gBAAAC,EAAAC,GAAA,EAAU,GAAGH,EAAc,CAAA,CAAE;AAE/B,UAAAO,IAAQD,EAAO,UAAU,QAAQ;AAChC,WAAAC,CAAK,EAAE,kBAAkB,GAChC,OAAOA,EAAM,OAAO,EAAE,KAAK,KAAK;AAAA,EAAA,CACjC,GAED,GAAG,oEAAoE,MAAM;AACpE,IAAAN,EAAA,gBAAAC,EAACC,KAAU,GAAGH,GAAc,UAAU,IAAM,QAAQ,IAAM,CAAE,GAEnE,OAAOM,EAAO,UAAU,cAAc,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC5D,GAED,GAAG,mEAAmE,MAAM;AACnE,IAAAL,EAAA,gBAAAC,EAACC,KAAU,GAAGH,GAAc,UAAU,IAAM,QAAQ,IAAO,CAAE,GAEpE,OAAOM,EAAO,YAAY,cAAc,CAAC,EAAE,IAAI,kBAAkB;AAAA,EAAA,CAClE,GAED,GAAG,qEAAqE,YAAY;AAC5E,UAAAE,IAAOC,EAAU,MAAM,GACvBC,IAAc,KAAK,GAAG,GACtBC,IAAc;AAAA,MAClB,GAAGX;AAAA,MACH,UAAU;AAAA,MACV,SAASU;AAAA,IACX;AAEA,IAAAT,EAAQ,gBAAAC,EAAAC,GAAA,EAAU,GAAGQ,EAAa,CAAA,CAAE,GAEpC,MAAMH,EAAK,MAAMF,EAAO,UAAU,WAAW,CAAC,GACvC,OAAAI,CAAW,EAAE,iBAAiB;AAAA,EAAA,CACtC,GAED,GAAG,8CAA8C,MAAM;AACrD,IAAAT,oBAAQE,GAAU,EAAA,GAAGH,GAAc,OAAO,IAAI,CAAE,GAEhD,OAAOM,EAAO,aAAa,MAAM,CAAC,EAAE,kBAAkB,GACtD,OAAOA,EAAO,YAAY,WAAW,CAAC,EAAE,IAAI,kBAAkB,GAC9D,OAAOA,EAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,kBAAkB;AAAA,EAAA,CAC5D;AACH,CAAC;"}
1
+ {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SideMenu/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\nimport userEvent from \"@testing-library/user-event\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { Menu, SideMenu } from \".\";\n\njest.mock(\"next/navigation\", () => ({\n usePathname: jest.fn(() => \"/\"),\n}));\n\nconst menus: Menu[] = [\n { label: \"Dashboard\", href: \"/\", isTitle: false },\n { label: \"管理メニュー\", isTitle: true },\n { label: \"制御グループ一覧\", href: \"/management-groups\", isTitle: false },\n];\n\nconst defaultProps = {\n isOpen: true,\n isMobile: false,\n onClose: jest.fn(),\n menus: menus,\n logoSrc: \"/leaflet/images/logo.png\",\n};\n\ndescribe(\"Given SideMenu\", () => {\n it(\"Then renders the side menu with correct menu items\", () => {\n render(<SideMenu {...defaultProps} />);\n\n menus.forEach((menu) => {\n const menuItem = screen.getByText(menu.label);\n expect(menuItem).toBeInTheDocument();\n });\n });\n\n it(\"Then renders menu titles correctly\", () => {\n render(<SideMenu {...defaultProps} />);\n\n const title = screen.getByText(\"管理メニュー\");\n expect(title).toBeInTheDocument();\n expect(title.tagName).toBe(\"DIV\");\n });\n\n it(\"When isMobile is true and isOpen is true, Then renders correctly\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={true} />);\n\n expect(screen.getByRole(\"presentation\")).toBeInTheDocument();\n });\n\n it(\"When isMobile is true and isOpen is false, Then does not render\", () => {\n render(<SideMenu {...defaultProps} isMobile={true} isOpen={false} />);\n\n expect(screen.queryByRole(\"presentation\")).not.toBeInTheDocument();\n });\n\n it(\"When a menu item is clicked in mobile mode, Then triggers onClose\", async () => {\n const user = userEvent.setup();\n const onCloseMock = jest.fn();\n const MockedProps = {\n ...defaultProps,\n isMobile: true,\n onClose: onCloseMock,\n };\n\n render(<SideMenu {...MockedProps} />);\n\n await user.click(screen.getByText(\"Dashboard\"));\n expect(onCloseMock).toHaveBeenCalled();\n });\n\n it(\"When menus are empty, Then renders nothing\", () => {\n render(<SideMenu {...defaultProps} menus={[]} />);\n\n expect(screen.getByAltText(\"logo\")).toBeInTheDocument();\n expect(screen.queryByText(\"Dashboard\")).not.toBeInTheDocument();\n expect(screen.queryByText(\"管理メニュー\")).not.toBeInTheDocument();\n });\n});\n"],"names":["menus","defaultProps","render","jsx","SideMenu","menu","menuItem","screen","title","user","userEvent","onCloseMock","MockedProps"],"mappings":";;;;;AAOA,KAAK,KAAK,mBAAmB,OAAO;AAAA,EAClC,aAAa,KAAK,GAAG,MAAM,GAAG;AAChC,EAAE;AAEF,MAAMA,IAAgB;AAAA,EACpB,EAAE,OAAO,aAAa,MAAM,KAAK,SAAS,GAAA;AAAA,EAC1C,EAAE,OAAO,UAAU,SAAS,GAAA;AAAA,EAC5B,EAAE,OAAO,YAAY,MAAM,sBAAsB,SAAS,GAAA;AAC5D,GAEMC,IAAe;AAAA,EACnB,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,SAAS,KAAK,GAAA;AAAA,EACd,OAAAD;AAAA,EACA,SAAS;AACX;AAEA,SAAS,kBAAkB,MAAM;AAC/B,KAAG,sDAAsD,MAAM;AAC7D,IAAAE,EAAO,gBAAAC,EAACC,GAAA,EAAU,GAAGH,EAAA,CAAc,CAAE,GAErCD,EAAM,QAAQ,CAACK,MAAS;AACtB,YAAMC,IAAWC,EAAO,UAAUF,EAAK,KAAK;AAC5C,aAAOC,CAAQ,EAAE,kBAAA;AAAA,IACnB,CAAC;AAAA,EACH,CAAC,GAED,GAAG,sCAAsC,MAAM;AAC7C,IAAAJ,EAAO,gBAAAC,EAACC,GAAA,EAAU,GAAGH,EAAA,CAAc,CAAE;AAErC,UAAMO,IAAQD,EAAO,UAAU,QAAQ;AACvC,WAAOC,CAAK,EAAE,kBAAA,GACd,OAAOA,EAAM,OAAO,EAAE,KAAK,KAAK;AAAA,EAClC,CAAC,GAED,GAAG,oEAAoE,MAAM;AAC3E,IAAAN,EAAO,gBAAAC,EAACC,KAAU,GAAGH,GAAc,UAAU,IAAM,QAAQ,IAAM,CAAE,GAEnE,OAAOM,EAAO,UAAU,cAAc,CAAC,EAAE,kBAAA;AAAA,EAC3C,CAAC,GAED,GAAG,mEAAmE,MAAM;AAC1E,IAAAL,EAAO,gBAAAC,EAACC,KAAU,GAAGH,GAAc,UAAU,IAAM,QAAQ,IAAO,CAAE,GAEpE,OAAOM,EAAO,YAAY,cAAc,CAAC,EAAE,IAAI,kBAAA;AAAA,EACjD,CAAC,GAED,GAAG,qEAAqE,YAAY;AAClF,UAAME,IAAOC,EAAU,MAAA,GACjBC,IAAc,KAAK,GAAA,GACnBC,IAAc;AAAA,MAClB,GAAGX;AAAA,MACH,UAAU;AAAA,MACV,SAASU;AAAA,IAAA;AAGX,IAAAT,EAAO,gBAAAC,EAACC,GAAA,EAAU,GAAGQ,EAAA,CAAa,CAAE,GAEpC,MAAMH,EAAK,MAAMF,EAAO,UAAU,WAAW,CAAC,GAC9C,OAAOI,CAAW,EAAE,iBAAA;AAAA,EACtB,CAAC,GAED,GAAG,8CAA8C,MAAM;AACrD,IAAAT,oBAAQE,GAAA,EAAU,GAAGH,GAAc,OAAO,CAAA,GAAI,CAAE,GAEhD,OAAOM,EAAO,aAAa,MAAM,CAAC,EAAE,kBAAA,GACpC,OAAOA,EAAO,YAAY,WAAW,CAAC,EAAE,IAAI,kBAAA,GAC5C,OAAOA,EAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,kBAAA;AAAA,EAC3C,CAAC;AACH,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/SpinnerButton/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Button from \"../Button\";\nimport styles from \"./index.module.scss\";\n\ntype SpinnerButtonProps = React.ComponentProps<typeof Button> & {\n /** ローディング状態 */\n isPending?: boolean;\n};\n\n/**\n * ローディング状態を表示できるボタンコンポーネント\n * isPending=trueの場合、ボタンテキストの代わりにスピナーを表示します\n */\nexport const SpinnerButton = (props: SpinnerButtonProps) => {\n const { children, isPending = false, disabled, ...buttonProps } = props;\n\n return (\n <Button {...buttonProps} disabled={disabled || isPending}>\n {isPending ? (\n <div className={styles.spinner} role=\"progressbar\" />\n ) : (\n <span>{children}</span>\n )}\n </Button>\n );\n};\n\nexport default SpinnerButton;\n"],"names":["SpinnerButton","props","children","isPending","disabled","buttonProps","Button","jsx","styles"],"mappings":"wNAcaA,EAAiBC,GAA8B,CAC1D,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAY,GAAO,SAAAC,EAAU,GAAGC,GAAgBJ,EAElE,aACGK,EAAAA,OAAQ,CAAA,GAAGD,EAAa,SAAUD,GAAYD,EAC5C,SACCA,EAAAI,MAAC,OAAI,UAAWC,EAAO,QAAS,KAAK,aAAA,CAAc,EAElDD,EAAAA,IAAA,OAAA,CAAM,SAAAL,EAAS,CAEpB,CAAA,CAEJ"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/SpinnerButton/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Button from \"../Button\";\nimport styles from \"./index.module.scss\";\n\ntype SpinnerButtonProps = React.ComponentProps<typeof Button> & {\n /** ローディング状態 */\n isPending?: boolean;\n};\n\n/**\n * ローディング状態を表示できるボタンコンポーネント\n * isPending=trueの場合、ボタンテキストの代わりにスピナーを表示します\n */\nexport const SpinnerButton = (props: SpinnerButtonProps) => {\n const { children, isPending = false, disabled, ...buttonProps } = props;\n\n return (\n <Button {...buttonProps} disabled={disabled || isPending}>\n {isPending ? (\n <div className={styles.spinner} role=\"progressbar\" />\n ) : (\n <span>{children}</span>\n )}\n </Button>\n );\n};\n\nexport default SpinnerButton;\n"],"names":["SpinnerButton","props","children","isPending","disabled","buttonProps","Button","jsx","styles"],"mappings":"wNAcaA,EAAiBC,GAA8B,CAC1D,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAY,GAAO,SAAAC,EAAU,GAAGC,GAAgBJ,EAElE,aACGK,EAAAA,OAAA,CAAQ,GAAGD,EAAa,SAAUD,GAAYD,EAC5C,SAAAA,EACCI,MAAC,OAAI,UAAWC,EAAO,QAAS,KAAK,aAAA,CAAc,EAEnDD,EAAAA,IAAC,OAAA,CAAM,SAAAL,EAAS,CAAA,CAEpB,CAEJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../src/components/SpinnerButton/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Button from \"../Button\";\nimport styles from \"./index.module.scss\";\n\ntype SpinnerButtonProps = React.ComponentProps<typeof Button> & {\n /** ローディング状態 */\n isPending?: boolean;\n};\n\n/**\n * ローディング状態を表示できるボタンコンポーネント\n * isPending=trueの場合、ボタンテキストの代わりにスピナーを表示します\n */\nexport const SpinnerButton = (props: SpinnerButtonProps) => {\n const { children, isPending = false, disabled, ...buttonProps } = props;\n\n return (\n <Button {...buttonProps} disabled={disabled || isPending}>\n {isPending ? (\n <div className={styles.spinner} role=\"progressbar\" />\n ) : (\n <span>{children}</span>\n )}\n </Button>\n );\n};\n\nexport default SpinnerButton;\n"],"names":["SpinnerButton","props","children","isPending","disabled","buttonProps","Button","jsx","styles"],"mappings":";;;;GAcaA,IAAgB,CAACC,MAA8B;AAC1D,QAAM,EAAE,UAAAC,GAAU,WAAAC,IAAY,IAAO,UAAAC,GAAU,GAAGC,MAAgBJ;AAElE,2BACGK,GAAQ,EAAA,GAAGD,GAAa,UAAUD,KAAYD,GAC5C,UACCA,IAAA,gBAAAI,EAAC,SAAI,WAAWC,EAAO,SAAS,MAAK,cAAA,CAAc,IAElD,gBAAAD,EAAA,QAAA,EAAM,UAAAL,GAAS,EAEpB,CAAA;AAEJ;"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../src/components/SpinnerButton/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Button from \"../Button\";\nimport styles from \"./index.module.scss\";\n\ntype SpinnerButtonProps = React.ComponentProps<typeof Button> & {\n /** ローディング状態 */\n isPending?: boolean;\n};\n\n/**\n * ローディング状態を表示できるボタンコンポーネント\n * isPending=trueの場合、ボタンテキストの代わりにスピナーを表示します\n */\nexport const SpinnerButton = (props: SpinnerButtonProps) => {\n const { children, isPending = false, disabled, ...buttonProps } = props;\n\n return (\n <Button {...buttonProps} disabled={disabled || isPending}>\n {isPending ? (\n <div className={styles.spinner} role=\"progressbar\" />\n ) : (\n <span>{children}</span>\n )}\n </Button>\n );\n};\n\nexport default SpinnerButton;\n"],"names":["SpinnerButton","props","children","isPending","disabled","buttonProps","Button","jsx","styles"],"mappings":";;;;GAcaA,IAAgB,CAACC,MAA8B;AAC1D,QAAM,EAAE,UAAAC,GAAU,WAAAC,IAAY,IAAO,UAAAC,GAAU,GAAGC,MAAgBJ;AAElE,2BACGK,GAAA,EAAQ,GAAGD,GAAa,UAAUD,KAAYD,GAC5C,UAAAA,IACC,gBAAAI,EAAC,SAAI,WAAWC,EAAO,SAAS,MAAK,cAAA,CAAc,IAEnD,gBAAAD,EAAC,QAAA,EAAM,UAAAL,GAAS,EAAA,CAEpB;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";const t=require("react/jsx-runtime"),e=require("../../react.esm-CiMn0Rnx.cjs");require("../../index-BpMSrIOq.cjs");const r=require("./index.cjs.js");describe("SpinnerButton Component",()=>{it("renders button text when not pending",()=>{e.render(t.jsx(r.SpinnerButton,{children:"ボタンテキスト"})),expect(e.screen.getByText("ボタンテキスト")).toBeInTheDocument()}),it("renders spinner when pending",()=>{const{container:n}=e.render(t.jsx(r.SpinnerButton,{isPending:!0,children:"ボタンテキスト"}));expect(e.screen.queryByText("ボタンテキスト")).not.toBeInTheDocument(),expect(n.querySelector(".spinner")).toBeInTheDocument()}),it("adds progressbar role to spinner",()=>{e.render(t.jsx(r.SpinnerButton,{isPending:!0,children:"ボタンテキスト"})),expect(e.screen.getByRole("progressbar")).toBeInTheDocument()}),it("disables button when pending",()=>{e.render(t.jsx(r.SpinnerButton,{isPending:!0,children:"ボタンテキスト"}));const n=e.screen.getByRole("button");expect(n).toBeDisabled()}),it("disables button when disabled prop is true",()=>{e.render(t.jsx(r.SpinnerButton,{disabled:!0,children:"ボタンテキスト"}));const n=e.screen.getByRole("button");expect(n).toBeDisabled()}),it("passes other props to Button component",()=>{e.render(t.jsx(r.SpinnerButton,{color:"secondary",fullWidth:!0,variant:"contained",children:"ボタンテキスト"}));const n=e.screen.getByRole("button");expect(n).toHaveClass("MuiButton-fullWidth"),expect(n).toHaveClass("MuiButton-containedSecondary")})});
1
+ "use strict";const t=require("react/jsx-runtime"),e=require("../../react.esm-BcRJ42eI.cjs");require("../../index-9p9q0wxE.cjs");const r=require("./index.cjs.js");describe("SpinnerButton Component",()=>{it("renders button text when not pending",()=>{e.render(t.jsx(r.SpinnerButton,{children:"ボタンテキスト"})),expect(e.screen.getByText("ボタンテキスト")).toBeInTheDocument()}),it("renders spinner when pending",()=>{const{container:n}=e.render(t.jsx(r.SpinnerButton,{isPending:!0,children:"ボタンテキスト"}));expect(e.screen.queryByText("ボタンテキスト")).not.toBeInTheDocument(),expect(n.querySelector(".spinner")).toBeInTheDocument()}),it("adds progressbar role to spinner",()=>{e.render(t.jsx(r.SpinnerButton,{isPending:!0,children:"ボタンテキスト"})),expect(e.screen.getByRole("progressbar")).toBeInTheDocument()}),it("disables button when pending",()=>{e.render(t.jsx(r.SpinnerButton,{isPending:!0,children:"ボタンテキスト"}));const n=e.screen.getByRole("button");expect(n).toBeDisabled()}),it("disables button when disabled prop is true",()=>{e.render(t.jsx(r.SpinnerButton,{disabled:!0,children:"ボタンテキスト"}));const n=e.screen.getByRole("button");expect(n).toBeDisabled()}),it("passes other props to Button component",()=>{e.render(t.jsx(r.SpinnerButton,{color:"secondary",fullWidth:!0,variant:"contained",children:"ボタンテキスト"}));const n=e.screen.getByRole("button");expect(n).toHaveClass("MuiButton-fullWidth"),expect(n).toHaveClass("MuiButton-containedSecondary")})});
2
2
  //# sourceMappingURL=index.test.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SpinnerButton/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { SpinnerButton } from \".\";\n\ndescribe(\"SpinnerButton Component\", () => {\n it(\"renders button text when not pending\", () => {\n render(<SpinnerButton>ボタンテキスト</SpinnerButton>);\n expect(screen.getByText(\"ボタンテキスト\")).toBeInTheDocument();\n });\n\n it(\"renders spinner when pending\", () => {\n const { container } = render(\n <SpinnerButton isPending>ボタンテキスト</SpinnerButton>,\n );\n expect(screen.queryByText(\"ボタンテキスト\")).not.toBeInTheDocument();\n expect(container.querySelector(\".spinner\")).toBeInTheDocument();\n });\n\n it(\"adds progressbar role to spinner\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n expect(screen.getByRole(\"progressbar\")).toBeInTheDocument();\n });\n\n it(\"disables button when pending\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"disables button when disabled prop is true\", () => {\n render(<SpinnerButton disabled>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"passes other props to Button component\", () => {\n render(\n <SpinnerButton color=\"secondary\" fullWidth variant=\"contained\">\n ボタンテキスト\n </SpinnerButton>,\n );\n const button = screen.getByRole(\"button\");\n expect(button).toHaveClass(\"MuiButton-fullWidth\");\n expect(button).toHaveClass(\"MuiButton-containedSecondary\");\n });\n});\n"],"names":["render","jsx","SpinnerButton","screen","container","button"],"mappings":"kKAMA,SAAS,0BAA2B,IAAM,CACxC,GAAG,uCAAwC,IAAM,CACxCA,EAAA,OAAAC,EAAA,IAACC,EAAc,cAAA,CAAA,SAAA,SAAO,CAAA,CAAgB,EAC7C,OAAOC,EAAAA,OAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB,CAAA,CACvD,EAED,GAAG,+BAAgC,IAAM,CACjC,KAAA,CAAE,UAAAC,GAAcJ,EAAA,OACnBC,EAAA,IAAAC,EAAA,cAAA,CAAc,UAAS,GAAC,SAAO,SAAA,CAAA,CAClC,EACA,OAAOC,SAAO,YAAY,SAAS,CAAC,EAAE,IAAI,kBAAkB,EAC5D,OAAOC,EAAU,cAAc,UAAU,CAAC,EAAE,kBAAkB,CAAA,CAC/D,EAED,GAAG,mCAAoC,IAAM,CAC3CJ,SAAQC,EAAAA,IAAAC,EAAAA,cAAA,CAAc,UAAS,GAAC,mBAAO,CAAgB,EACvD,OAAOC,EAAAA,OAAO,UAAU,aAAa,CAAC,EAAE,kBAAkB,CAAA,CAC3D,EAED,GAAG,+BAAgC,IAAM,CACvCH,SAAQC,EAAAA,IAAAC,EAAAA,cAAA,CAAc,UAAS,GAAC,mBAAO,CAAgB,EACjD,MAAAG,EAASF,EAAAA,OAAO,UAAU,QAAQ,EACjC,OAAAE,CAAM,EAAE,aAAa,CAAA,CAC7B,EAED,GAAG,6CAA8C,IAAM,CACrDL,SAAQC,EAAAA,IAAAC,EAAAA,cAAA,CAAc,SAAQ,GAAC,mBAAO,CAAgB,EAChD,MAAAG,EAASF,EAAAA,OAAO,UAAU,QAAQ,EACjC,OAAAE,CAAM,EAAE,aAAa,CAAA,CAC7B,EAED,GAAG,yCAA0C,IAAM,CACjDL,EAAA,OACEC,EAAAA,IAACC,iBAAc,MAAM,YAAY,UAAS,GAAC,QAAQ,YAAY,SAE/D,SAAA,CAAA,CACF,EACM,MAAAG,EAASF,EAAAA,OAAO,UAAU,QAAQ,EACjC,OAAAE,CAAM,EAAE,YAAY,qBAAqB,EACzC,OAAAA,CAAM,EAAE,YAAY,8BAA8B,CAAA,CAC1D,CACH,CAAC"}
1
+ {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SpinnerButton/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { SpinnerButton } from \".\";\n\ndescribe(\"SpinnerButton Component\", () => {\n it(\"renders button text when not pending\", () => {\n render(<SpinnerButton>ボタンテキスト</SpinnerButton>);\n expect(screen.getByText(\"ボタンテキスト\")).toBeInTheDocument();\n });\n\n it(\"renders spinner when pending\", () => {\n const { container } = render(\n <SpinnerButton isPending>ボタンテキスト</SpinnerButton>,\n );\n expect(screen.queryByText(\"ボタンテキスト\")).not.toBeInTheDocument();\n expect(container.querySelector(\".spinner\")).toBeInTheDocument();\n });\n\n it(\"adds progressbar role to spinner\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n expect(screen.getByRole(\"progressbar\")).toBeInTheDocument();\n });\n\n it(\"disables button when pending\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"disables button when disabled prop is true\", () => {\n render(<SpinnerButton disabled>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"passes other props to Button component\", () => {\n render(\n <SpinnerButton color=\"secondary\" fullWidth variant=\"contained\">\n ボタンテキスト\n </SpinnerButton>,\n );\n const button = screen.getByRole(\"button\");\n expect(button).toHaveClass(\"MuiButton-fullWidth\");\n expect(button).toHaveClass(\"MuiButton-containedSecondary\");\n });\n});\n"],"names":["render","jsx","SpinnerButton","screen","container","button"],"mappings":"kKAMA,SAAS,0BAA2B,IAAM,CACxC,GAAG,uCAAwC,IAAM,CAC/CA,EAAAA,OAAOC,EAAAA,IAACC,EAAAA,cAAA,CAAc,SAAA,SAAA,CAAO,CAAgB,EAC7C,OAAOC,EAAAA,OAAO,UAAU,SAAS,CAAC,EAAE,kBAAA,CACtC,CAAC,EAED,GAAG,+BAAgC,IAAM,CACvC,KAAM,CAAE,UAAAC,GAAcJ,EAAAA,OACpBC,EAAAA,IAACC,EAAAA,cAAA,CAAc,UAAS,GAAC,SAAA,SAAA,CAAO,CAAA,EAElC,OAAOC,EAAAA,OAAO,YAAY,SAAS,CAAC,EAAE,IAAI,kBAAA,EAC1C,OAAOC,EAAU,cAAc,UAAU,CAAC,EAAE,kBAAA,CAC9C,CAAC,EAED,GAAG,mCAAoC,IAAM,CAC3CJ,SAAOC,EAAAA,IAACC,EAAAA,cAAA,CAAc,UAAS,GAAC,mBAAO,CAAgB,EACvD,OAAOC,EAAAA,OAAO,UAAU,aAAa,CAAC,EAAE,kBAAA,CAC1C,CAAC,EAED,GAAG,+BAAgC,IAAM,CACvCH,SAAOC,EAAAA,IAACC,EAAAA,cAAA,CAAc,UAAS,GAAC,mBAAO,CAAgB,EACvD,MAAMG,EAASF,EAAAA,OAAO,UAAU,QAAQ,EACxC,OAAOE,CAAM,EAAE,aAAA,CACjB,CAAC,EAED,GAAG,6CAA8C,IAAM,CACrDL,SAAOC,EAAAA,IAACC,EAAAA,cAAA,CAAc,SAAQ,GAAC,mBAAO,CAAgB,EACtD,MAAMG,EAASF,EAAAA,OAAO,UAAU,QAAQ,EACxC,OAAOE,CAAM,EAAE,aAAA,CACjB,CAAC,EAED,GAAG,yCAA0C,IAAM,CACjDL,EAAAA,OACEC,EAAAA,IAACC,EAAAA,eAAc,MAAM,YAAY,UAAS,GAAC,QAAQ,YAAY,SAAA,SAAA,CAE/D,CAAA,EAEF,MAAMG,EAASF,EAAAA,OAAO,UAAU,QAAQ,EACxC,OAAOE,CAAM,EAAE,YAAY,qBAAqB,EAChD,OAAOA,CAAM,EAAE,YAAY,8BAA8B,CAC3D,CAAC,CACH,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { r as n, s as o } from "../../react.esm-2FJSSo-S.js";
3
- import "../../index-DCSLk6pp.js";
2
+ import { r as n, s as o } from "../../react.esm-DVhZgPrH.js";
3
+ import "../../index-Cj9ZvtM1.js";
4
4
  import { SpinnerButton as r } from "./index.es.js";
5
5
  describe("SpinnerButton Component", () => {
6
6
  it("renders button text when not pending", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SpinnerButton/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { SpinnerButton } from \".\";\n\ndescribe(\"SpinnerButton Component\", () => {\n it(\"renders button text when not pending\", () => {\n render(<SpinnerButton>ボタンテキスト</SpinnerButton>);\n expect(screen.getByText(\"ボタンテキスト\")).toBeInTheDocument();\n });\n\n it(\"renders spinner when pending\", () => {\n const { container } = render(\n <SpinnerButton isPending>ボタンテキスト</SpinnerButton>,\n );\n expect(screen.queryByText(\"ボタンテキスト\")).not.toBeInTheDocument();\n expect(container.querySelector(\".spinner\")).toBeInTheDocument();\n });\n\n it(\"adds progressbar role to spinner\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n expect(screen.getByRole(\"progressbar\")).toBeInTheDocument();\n });\n\n it(\"disables button when pending\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"disables button when disabled prop is true\", () => {\n render(<SpinnerButton disabled>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"passes other props to Button component\", () => {\n render(\n <SpinnerButton color=\"secondary\" fullWidth variant=\"contained\">\n ボタンテキスト\n </SpinnerButton>,\n );\n const button = screen.getByRole(\"button\");\n expect(button).toHaveClass(\"MuiButton-fullWidth\");\n expect(button).toHaveClass(\"MuiButton-containedSecondary\");\n });\n});\n"],"names":["render","jsx","SpinnerButton","screen","container","button"],"mappings":";;;;AAMA,SAAS,2BAA2B,MAAM;AACxC,KAAG,wCAAwC,MAAM;AACxC,IAAAA,EAAA,gBAAAC,EAACC,GAAc,EAAA,UAAA,UAAO,CAAA,CAAgB,GAC7C,OAAOC,EAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB;AAAA,EAAA,CACvD,GAED,GAAG,gCAAgC,MAAM;AACjC,UAAA,EAAE,WAAAC,MAAcJ;AAAA,MACnB,gBAAAC,EAAAC,GAAA,EAAc,WAAS,IAAC,UAAO,UAAA,CAAA;AAAA,IAClC;AACA,WAAOC,EAAO,YAAY,SAAS,CAAC,EAAE,IAAI,kBAAkB,GAC5D,OAAOC,EAAU,cAAc,UAAU,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC/D,GAED,GAAG,oCAAoC,MAAM;AAC3C,IAAAJ,EAAQ,gBAAAC,EAAAC,GAAA,EAAc,WAAS,IAAC,qBAAO,CAAgB,GACvD,OAAOC,EAAO,UAAU,aAAa,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC3D,GAED,GAAG,gCAAgC,MAAM;AACvC,IAAAH,EAAQ,gBAAAC,EAAAC,GAAA,EAAc,WAAS,IAAC,qBAAO,CAAgB;AACjD,UAAAG,IAASF,EAAO,UAAU,QAAQ;AACjC,WAAAE,CAAM,EAAE,aAAa;AAAA,EAAA,CAC7B,GAED,GAAG,8CAA8C,MAAM;AACrD,IAAAL,EAAQ,gBAAAC,EAAAC,GAAA,EAAc,UAAQ,IAAC,qBAAO,CAAgB;AAChD,UAAAG,IAASF,EAAO,UAAU,QAAQ;AACjC,WAAAE,CAAM,EAAE,aAAa;AAAA,EAAA,CAC7B,GAED,GAAG,0CAA0C,MAAM;AACjD,IAAAL;AAAA,MACE,gBAAAC,EAACC,KAAc,OAAM,aAAY,WAAS,IAAC,SAAQ,aAAY,UAE/D,UAAA,CAAA;AAAA,IACF;AACM,UAAAG,IAASF,EAAO,UAAU,QAAQ;AACjC,WAAAE,CAAM,EAAE,YAAY,qBAAqB,GACzC,OAAAA,CAAM,EAAE,YAAY,8BAA8B;AAAA,EAAA,CAC1D;AACH,CAAC;"}
1
+ {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SpinnerButton/index.test.tsx"],"sourcesContent":["import { render, screen } from \"@testing-library/react\";\n\nimport \"@testing-library/jest-dom\";\n\nimport { SpinnerButton } from \".\";\n\ndescribe(\"SpinnerButton Component\", () => {\n it(\"renders button text when not pending\", () => {\n render(<SpinnerButton>ボタンテキスト</SpinnerButton>);\n expect(screen.getByText(\"ボタンテキスト\")).toBeInTheDocument();\n });\n\n it(\"renders spinner when pending\", () => {\n const { container } = render(\n <SpinnerButton isPending>ボタンテキスト</SpinnerButton>,\n );\n expect(screen.queryByText(\"ボタンテキスト\")).not.toBeInTheDocument();\n expect(container.querySelector(\".spinner\")).toBeInTheDocument();\n });\n\n it(\"adds progressbar role to spinner\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n expect(screen.getByRole(\"progressbar\")).toBeInTheDocument();\n });\n\n it(\"disables button when pending\", () => {\n render(<SpinnerButton isPending>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"disables button when disabled prop is true\", () => {\n render(<SpinnerButton disabled>ボタンテキスト</SpinnerButton>);\n const button = screen.getByRole(\"button\");\n expect(button).toBeDisabled();\n });\n\n it(\"passes other props to Button component\", () => {\n render(\n <SpinnerButton color=\"secondary\" fullWidth variant=\"contained\">\n ボタンテキスト\n </SpinnerButton>,\n );\n const button = screen.getByRole(\"button\");\n expect(button).toHaveClass(\"MuiButton-fullWidth\");\n expect(button).toHaveClass(\"MuiButton-containedSecondary\");\n });\n});\n"],"names":["render","jsx","SpinnerButton","screen","container","button"],"mappings":";;;;AAMA,SAAS,2BAA2B,MAAM;AACxC,KAAG,wCAAwC,MAAM;AAC/C,IAAAA,EAAO,gBAAAC,EAACC,GAAA,EAAc,UAAA,UAAA,CAAO,CAAgB,GAC7C,OAAOC,EAAO,UAAU,SAAS,CAAC,EAAE,kBAAA;AAAA,EACtC,CAAC,GAED,GAAG,gCAAgC,MAAM;AACvC,UAAM,EAAE,WAAAC,MAAcJ;AAAA,MACpB,gBAAAC,EAACC,GAAA,EAAc,WAAS,IAAC,UAAA,UAAA,CAAO;AAAA,IAAA;AAElC,WAAOC,EAAO,YAAY,SAAS,CAAC,EAAE,IAAI,kBAAA,GAC1C,OAAOC,EAAU,cAAc,UAAU,CAAC,EAAE,kBAAA;AAAA,EAC9C,CAAC,GAED,GAAG,oCAAoC,MAAM;AAC3C,IAAAJ,EAAO,gBAAAC,EAACC,GAAA,EAAc,WAAS,IAAC,qBAAO,CAAgB,GACvD,OAAOC,EAAO,UAAU,aAAa,CAAC,EAAE,kBAAA;AAAA,EAC1C,CAAC,GAED,GAAG,gCAAgC,MAAM;AACvC,IAAAH,EAAO,gBAAAC,EAACC,GAAA,EAAc,WAAS,IAAC,qBAAO,CAAgB;AACvD,UAAMG,IAASF,EAAO,UAAU,QAAQ;AACxC,WAAOE,CAAM,EAAE,aAAA;AAAA,EACjB,CAAC,GAED,GAAG,8CAA8C,MAAM;AACrD,IAAAL,EAAO,gBAAAC,EAACC,GAAA,EAAc,UAAQ,IAAC,qBAAO,CAAgB;AACtD,UAAMG,IAASF,EAAO,UAAU,QAAQ;AACxC,WAAOE,CAAM,EAAE,aAAA;AAAA,EACjB,CAAC,GAED,GAAG,0CAA0C,MAAM;AACjD,IAAAL;AAAA,MACE,gBAAAC,EAACC,KAAc,OAAM,aAAY,WAAS,IAAC,SAAQ,aAAY,UAAA,UAAA,CAE/D;AAAA,IAAA;AAEF,UAAMG,IAASF,EAAO,UAAU,QAAQ;AACxC,WAAOE,CAAM,EAAE,YAAY,qBAAqB,GAChD,OAAOA,CAAM,EAAE,YAAY,8BAA8B;AAAA,EAC3D,CAAC;AACH,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/SubMenu/index.tsx"],"sourcesContent":["import { ReactNode, useState } from \"react\";\nimport {\n Button,\n Divider,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n Typography,\n} from \"@mui/material\";\n\ntype MenuItemType = {\n /** 操作メニューのアイコン */\n icon: React.ReactNode;\n /** 操作メニュー名 */\n title: string;\n /** ショートカットキー */\n shortcut?: string;\n /** メニュー下の区切り線有無 */\n separatorLine?: boolean;\n /** クリックした時の動作 */\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n /** クリックした時に閉じるか否か。指定がない場合はクリック時メニューが自動的に閉じます*/\n closeWhenClick?: boolean;\n};\n\ntype Props = {\n menuItems: MenuItemType[];\n buttonElement: ReactNode;\n};\n\nexport const SubMenu = (props: Props) => {\n const { menuItems, buttonElement } = props;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(null);\n };\n\n const handleItemClick = (\n event: React.MouseEvent<HTMLLIElement, MouseEvent>,\n item: MenuItemType,\n ) => {\n event.stopPropagation();\n if (item.onClick) {\n item.onClick(event);\n }\n if (item.closeWhenClick !== false) {\n handleClose(event);\n }\n };\n\n return [\n (\n <Button\n key=\"submenu-button\"\n id=\"fade-button\"\n aria-controls={open ? \"fade-menu\" : undefined}\n aria-haspopup=\"true\"\n aria-expanded={open ? \"true\" : undefined}\n onClick={handleClick}\n color={\"inherit\"}\n >\n {buttonElement} {/* ここでButton要素を表示します */}\n </Button>\n ),\n (\n <Menu\n key=\"submenu-menu\"\n id=\"fade-menu\"\n MenuListProps={{\n \"aria-labelledby\": \"fade-button\",\n }}\n anchorEl={anchorEl}\n open={open}\n onClose={handleClose}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n >\n {menuItems.flatMap((item, index) => {\n const elements = [\n (\n <MenuItem\n key={`item-${index}`}\n onClick={(e) => handleItemClick(e, item)}\n sx={{ minWidth: 200 }}\n >\n <ListItemIcon>{item.icon}</ListItemIcon>\n <ListItemText>{item.title}</ListItemText>\n {item.shortcut && (\n <Typography variant=\"body2\" color=\"text.secondary\">\n {item.shortcut}\n </Typography>\n )}\n </MenuItem>\n ),\n ];\n if (item.separatorLine) {\n elements.push(<Divider key={`divider-${index}`} />);\n }\n return elements;\n })}\n </Menu>\n ),\n ];\n};\n\nexport default SubMenu;\n"],"names":["SubMenu","props","menuItems","buttonElement","anchorEl","setAnchorEl","useState","open","handleClick","event","handleClose","handleItemClick","item","jsxs","Button","jsx","Menu","index","elements","MenuItem","e","ListItemIcon","ListItemText","Typography","Divider"],"mappings":"+LA+BaA,EAAWC,GAAiB,CACjC,KAAA,CAAE,UAAAC,EAAW,cAAAC,CAAA,EAAkBF,EAE/B,CAACG,EAAUC,CAAW,EAAIC,EAAAA,SAA6B,IAAI,EAC3DC,EAAO,EAAQH,EACfI,EAAeC,GAAyC,CAC5DA,EAAM,gBAAgB,EACtBJ,EAAYI,EAAM,aAAa,CACjC,EACMC,EAAeD,GAAyC,CAC5DA,EAAM,gBAAgB,EACtBJ,EAAY,IAAI,CAClB,EAEMM,EAAkB,CACtBF,EACAG,IACG,CACHH,EAAM,gBAAgB,EAClBG,EAAK,SACPA,EAAK,QAAQH,CAAK,EAEhBG,EAAK,iBAAmB,IAC1BF,EAAYD,CAAK,CAErB,EAEO,MAAA,CAEHI,EAAA,KAACC,EAAA,OAAA,CAEC,GAAG,cACH,gBAAeP,EAAO,YAAc,OACpC,gBAAc,OACd,gBAAeA,EAAO,OAAS,OAC/B,QAASC,EACT,MAAO,UAEN,SAAA,CAAAL,EAAc,GAAA,CAAA,EARX,gBASN,EAGAY,EAAA,IAACC,EAAA,KAAA,CAEC,GAAG,YACH,cAAe,CACb,kBAAmB,aACrB,EACA,SAAAZ,EACA,KAAAG,EACA,QAASG,EACT,aAAc,CACZ,SAAU,SACV,WAAY,OACd,EACA,gBAAiB,CACf,SAAU,MACV,WAAY,OACd,EAEC,SAAUR,EAAA,QAAQ,CAACU,EAAMK,IAAU,CAClC,MAAMC,EAAW,CAEbL,EAAA,KAACM,EAAA,SAAA,CAEC,QAAUC,GAAMT,EAAgBS,EAAGR,CAAI,EACvC,GAAI,CAAE,SAAU,GAAI,EAEpB,SAAA,CAACG,EAAAA,IAAAM,EAAAA,aAAA,CAAc,WAAK,IAAK,CAAA,EACzBN,EAAAA,IAACO,EAAAA,aAAc,CAAA,SAAAV,EAAK,KAAM,CAAA,EACzBA,EAAK,UACHG,MAAAQ,EAAAA,WAAA,CAAW,QAAQ,QAAQ,MAAM,iBAC/B,SAAAX,EAAK,QACR,CAAA,CAAA,CAAA,EATG,QAAQK,CAAK,EAAA,CAaxB,EACA,OAAIL,EAAK,eACPM,EAAS,KAAMH,EAAAA,IAAAS,EAAA,QAAA,CAAA,EAAa,WAAWP,CAAK,EAAI,CAAE,EAE7CC,CACR,CAAA,CAAA,EAvCG,cAAA,CA0CV,CACF"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/SubMenu/index.tsx"],"sourcesContent":["import { ReactNode, useState } from \"react\";\nimport {\n Button,\n Divider,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n Typography,\n} from \"@mui/material\";\n\ntype MenuItemType = {\n /** 操作メニューのアイコン */\n icon: React.ReactNode;\n /** 操作メニュー名 */\n title: string;\n /** ショートカットキー */\n shortcut?: string;\n /** メニュー下の区切り線有無 */\n separatorLine?: boolean;\n /** クリックした時の動作 */\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n /** クリックした時に閉じるか否か。指定がない場合はクリック時メニューが自動的に閉じます*/\n closeWhenClick?: boolean;\n};\n\ntype Props = {\n menuItems: MenuItemType[];\n buttonElement: ReactNode;\n};\n\nexport const SubMenu = (props: Props) => {\n const { menuItems, buttonElement } = props;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(null);\n };\n\n const handleItemClick = (\n event: React.MouseEvent<HTMLLIElement, MouseEvent>,\n item: MenuItemType,\n ) => {\n event.stopPropagation();\n if (item.onClick) {\n item.onClick(event);\n }\n if (item.closeWhenClick !== false) {\n handleClose(event);\n }\n };\n\n return [\n <Button\n key=\"submenu-button\"\n id=\"fade-button\"\n aria-controls={open ? \"fade-menu\" : undefined}\n aria-haspopup=\"true\"\n aria-expanded={open ? \"true\" : undefined}\n onClick={handleClick}\n color={\"inherit\"}\n >\n {buttonElement} {/* ここでButton要素を表示します */}\n </Button>,\n <Menu\n key=\"submenu-menu\"\n id=\"fade-menu\"\n MenuListProps={{\n \"aria-labelledby\": \"fade-button\",\n }}\n anchorEl={anchorEl}\n open={open}\n onClose={handleClose}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n >\n {menuItems.flatMap((item, index) => {\n const elements = [\n <MenuItem\n key={`item-${index}`}\n onClick={(e) => handleItemClick(e, item)}\n sx={{ minWidth: 200 }}\n >\n <ListItemIcon>{item.icon}</ListItemIcon>\n <ListItemText>{item.title}</ListItemText>\n {item.shortcut && (\n <Typography variant=\"body2\" color=\"text.secondary\">\n {item.shortcut}\n </Typography>\n )}\n </MenuItem>,\n ];\n if (item.separatorLine) {\n elements.push(<Divider key={`divider-${index}`} />);\n }\n return elements;\n })}\n </Menu>,\n ];\n};\n\nexport default SubMenu;\n"],"names":["SubMenu","props","menuItems","buttonElement","anchorEl","setAnchorEl","useState","open","handleClick","event","handleClose","handleItemClick","item","jsxs","Button","jsx","Menu","index","elements","MenuItem","e","ListItemIcon","ListItemText","Typography","Divider"],"mappings":"+LA+BaA,EAAWC,GAAiB,CACvC,KAAM,CAAE,UAAAC,EAAW,cAAAC,CAAA,EAAkBF,EAE/B,CAACG,EAAUC,CAAW,EAAIC,EAAAA,SAA6B,IAAI,EAC3DC,EAAO,EAAQH,EACfI,EAAeC,GAAyC,CAC5DA,EAAM,gBAAA,EACNJ,EAAYI,EAAM,aAAa,CACjC,EACMC,EAAeD,GAAyC,CAC5DA,EAAM,gBAAA,EACNJ,EAAY,IAAI,CAClB,EAEMM,EAAkB,CACtBF,EACAG,IACG,CACHH,EAAM,gBAAA,EACFG,EAAK,SACPA,EAAK,QAAQH,CAAK,EAEhBG,EAAK,iBAAmB,IAC1BF,EAAYD,CAAK,CAErB,EAEA,MAAO,CACLI,EAAAA,KAACC,EAAAA,OAAA,CAEC,GAAG,cACH,gBAAeP,EAAO,YAAc,OACpC,gBAAc,OACd,gBAAeA,EAAO,OAAS,OAC/B,QAASC,EACT,MAAO,UAEN,SAAA,CAAAL,EAAc,GAAA,CAAA,EARX,gBAAA,EAUNY,EAAAA,IAACC,EAAAA,KAAA,CAEC,GAAG,YACH,cAAe,CACb,kBAAmB,aAAA,EAErB,SAAAZ,EACA,KAAAG,EACA,QAASG,EACT,aAAc,CACZ,SAAU,SACV,WAAY,OAAA,EAEd,gBAAiB,CACf,SAAU,MACV,WAAY,OAAA,EAGb,SAAAR,EAAU,QAAQ,CAACU,EAAMK,IAAU,CAClC,MAAMC,EAAW,CACfL,EAAAA,KAACM,EAAAA,SAAA,CAEC,QAAUC,GAAMT,EAAgBS,EAAGR,CAAI,EACvC,GAAI,CAAE,SAAU,GAAA,EAEhB,SAAA,CAAAG,EAAAA,IAACM,EAAAA,aAAA,CAAc,WAAK,IAAA,CAAK,EACzBN,EAAAA,IAACO,EAAAA,aAAA,CAAc,SAAAV,EAAK,KAAA,CAAM,EACzBA,EAAK,UACJG,MAACQ,EAAAA,WAAA,CAAW,QAAQ,QAAQ,MAAM,iBAC/B,SAAAX,EAAK,QAAA,CACR,CAAA,CAAA,EATG,QAAQK,CAAK,EAAA,CAWpB,EAEF,OAAIL,EAAK,eACPM,EAAS,KAAKH,EAAAA,IAACS,EAAAA,QAAA,CAAA,EAAa,WAAWP,CAAK,EAAI,CAAE,EAE7CC,CACT,CAAC,CAAA,EArCG,cAAA,CAsCN,CAEJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../src/components/SubMenu/index.tsx"],"sourcesContent":["import { ReactNode, useState } from \"react\";\nimport {\n Button,\n Divider,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n Typography,\n} from \"@mui/material\";\n\ntype MenuItemType = {\n /** 操作メニューのアイコン */\n icon: React.ReactNode;\n /** 操作メニュー名 */\n title: string;\n /** ショートカットキー */\n shortcut?: string;\n /** メニュー下の区切り線有無 */\n separatorLine?: boolean;\n /** クリックした時の動作 */\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n /** クリックした時に閉じるか否か。指定がない場合はクリック時メニューが自動的に閉じます*/\n closeWhenClick?: boolean;\n};\n\ntype Props = {\n menuItems: MenuItemType[];\n buttonElement: ReactNode;\n};\n\nexport const SubMenu = (props: Props) => {\n const { menuItems, buttonElement } = props;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(null);\n };\n\n const handleItemClick = (\n event: React.MouseEvent<HTMLLIElement, MouseEvent>,\n item: MenuItemType,\n ) => {\n event.stopPropagation();\n if (item.onClick) {\n item.onClick(event);\n }\n if (item.closeWhenClick !== false) {\n handleClose(event);\n }\n };\n\n return [\n (\n <Button\n key=\"submenu-button\"\n id=\"fade-button\"\n aria-controls={open ? \"fade-menu\" : undefined}\n aria-haspopup=\"true\"\n aria-expanded={open ? \"true\" : undefined}\n onClick={handleClick}\n color={\"inherit\"}\n >\n {buttonElement} {/* ここでButton要素を表示します */}\n </Button>\n ),\n (\n <Menu\n key=\"submenu-menu\"\n id=\"fade-menu\"\n MenuListProps={{\n \"aria-labelledby\": \"fade-button\",\n }}\n anchorEl={anchorEl}\n open={open}\n onClose={handleClose}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n >\n {menuItems.flatMap((item, index) => {\n const elements = [\n (\n <MenuItem\n key={`item-${index}`}\n onClick={(e) => handleItemClick(e, item)}\n sx={{ minWidth: 200 }}\n >\n <ListItemIcon>{item.icon}</ListItemIcon>\n <ListItemText>{item.title}</ListItemText>\n {item.shortcut && (\n <Typography variant=\"body2\" color=\"text.secondary\">\n {item.shortcut}\n </Typography>\n )}\n </MenuItem>\n ),\n ];\n if (item.separatorLine) {\n elements.push(<Divider key={`divider-${index}`} />);\n }\n return elements;\n })}\n </Menu>\n ),\n ];\n};\n\nexport default SubMenu;\n"],"names":["SubMenu","props","menuItems","buttonElement","anchorEl","setAnchorEl","useState","open","handleClick","event","handleClose","handleItemClick","item","jsxs","Button","jsx","Menu","index","elements","MenuItem","e","ListItemIcon","ListItemText","Typography","Divider"],"mappings":";;;AA+Ba,MAAAA,IAAU,CAACC,MAAiB;AACjC,QAAA,EAAE,WAAAC,GAAW,eAAAC,EAAA,IAAkBF,GAE/B,CAACG,GAAUC,CAAW,IAAIC,EAA6B,IAAI,GAC3DC,IAAO,EAAQH,GACfI,IAAc,CAACC,MAAyC;AAC5D,IAAAA,EAAM,gBAAgB,GACtBJ,EAAYI,EAAM,aAAa;AAAA,EACjC,GACMC,IAAc,CAACD,MAAyC;AAC5D,IAAAA,EAAM,gBAAgB,GACtBJ,EAAY,IAAI;AAAA,EAClB,GAEMM,IAAkB,CACtBF,GACAG,MACG;AACH,IAAAH,EAAM,gBAAgB,GAClBG,EAAK,WACPA,EAAK,QAAQH,CAAK,GAEhBG,EAAK,mBAAmB,MAC1BF,EAAYD,CAAK;AAAA,EAErB;AAEO,SAAA;AAAA,IAEH,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QAEC,IAAG;AAAA,QACH,iBAAeP,IAAO,cAAc;AAAA,QACpC,iBAAc;AAAA,QACd,iBAAeA,IAAO,SAAS;AAAA,QAC/B,SAASC;AAAA,QACT,OAAO;AAAA,QAEN,UAAA;AAAA,UAAAL;AAAA,UAAc;AAAA,QAAA;AAAA,MAAA;AAAA,MARX;AAAA,IASN;AAAA,IAGA,gBAAAY;AAAA,MAACC;AAAA,MAAA;AAAA,QAEC,IAAG;AAAA,QACH,eAAe;AAAA,UACb,mBAAmB;AAAA,QACrB;AAAA,QACA,UAAAZ;AAAA,QACA,MAAAG;AAAA,QACA,SAASG;AAAA,QACT,cAAc;AAAA,UACZ,UAAU;AAAA,UACV,YAAY;AAAA,QACd;AAAA,QACA,iBAAiB;AAAA,UACf,UAAU;AAAA,UACV,YAAY;AAAA,QACd;AAAA,QAEC,UAAUR,EAAA,QAAQ,CAACU,GAAMK,MAAU;AAClC,gBAAMC,IAAW;AAAA,YAEb,gBAAAL;AAAA,cAACM;AAAA,cAAA;AAAA,gBAEC,SAAS,CAACC,MAAMT,EAAgBS,GAAGR,CAAI;AAAA,gBACvC,IAAI,EAAE,UAAU,IAAI;AAAA,gBAEpB,UAAA;AAAA,kBAAC,gBAAAG,EAAAM,GAAA,EAAc,YAAK,KAAK,CAAA;AAAA,kBACzB,gBAAAN,EAACO,GAAc,EAAA,UAAAV,EAAK,MAAM,CAAA;AAAA,kBACzBA,EAAK,YACH,gBAAAG,EAAAQ,GAAA,EAAW,SAAQ,SAAQ,OAAM,kBAC/B,UAAAX,EAAK,SACR,CAAA;AAAA,gBAAA;AAAA,cAAA;AAAA,cATG,QAAQK,CAAK;AAAA,YAAA;AAAA,UAaxB;AACA,iBAAIL,EAAK,iBACPM,EAAS,KAAM,gBAAAH,EAAAS,GAAA,CAAA,GAAa,WAAWP,CAAK,EAAI,CAAE,GAE7CC;AAAA,QACR,CAAA;AAAA,MAAA;AAAA,MAvCG;AAAA,IAAA;AAAA,EA0CV;AACF;"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../src/components/SubMenu/index.tsx"],"sourcesContent":["import { ReactNode, useState } from \"react\";\nimport {\n Button,\n Divider,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n Typography,\n} from \"@mui/material\";\n\ntype MenuItemType = {\n /** 操作メニューのアイコン */\n icon: React.ReactNode;\n /** 操作メニュー名 */\n title: string;\n /** ショートカットキー */\n shortcut?: string;\n /** メニュー下の区切り線有無 */\n separatorLine?: boolean;\n /** クリックした時の動作 */\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n /** クリックした時に閉じるか否か。指定がない場合はクリック時メニューが自動的に閉じます*/\n closeWhenClick?: boolean;\n};\n\ntype Props = {\n menuItems: MenuItemType[];\n buttonElement: ReactNode;\n};\n\nexport const SubMenu = (props: Props) => {\n const { menuItems, buttonElement } = props;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const open = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(event.currentTarget);\n };\n const handleClose = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setAnchorEl(null);\n };\n\n const handleItemClick = (\n event: React.MouseEvent<HTMLLIElement, MouseEvent>,\n item: MenuItemType,\n ) => {\n event.stopPropagation();\n if (item.onClick) {\n item.onClick(event);\n }\n if (item.closeWhenClick !== false) {\n handleClose(event);\n }\n };\n\n return [\n <Button\n key=\"submenu-button\"\n id=\"fade-button\"\n aria-controls={open ? \"fade-menu\" : undefined}\n aria-haspopup=\"true\"\n aria-expanded={open ? \"true\" : undefined}\n onClick={handleClick}\n color={\"inherit\"}\n >\n {buttonElement} {/* ここでButton要素を表示します */}\n </Button>,\n <Menu\n key=\"submenu-menu\"\n id=\"fade-menu\"\n MenuListProps={{\n \"aria-labelledby\": \"fade-button\",\n }}\n anchorEl={anchorEl}\n open={open}\n onClose={handleClose}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n >\n {menuItems.flatMap((item, index) => {\n const elements = [\n <MenuItem\n key={`item-${index}`}\n onClick={(e) => handleItemClick(e, item)}\n sx={{ minWidth: 200 }}\n >\n <ListItemIcon>{item.icon}</ListItemIcon>\n <ListItemText>{item.title}</ListItemText>\n {item.shortcut && (\n <Typography variant=\"body2\" color=\"text.secondary\">\n {item.shortcut}\n </Typography>\n )}\n </MenuItem>,\n ];\n if (item.separatorLine) {\n elements.push(<Divider key={`divider-${index}`} />);\n }\n return elements;\n })}\n </Menu>,\n ];\n};\n\nexport default SubMenu;\n"],"names":["SubMenu","props","menuItems","buttonElement","anchorEl","setAnchorEl","useState","open","handleClick","event","handleClose","handleItemClick","item","jsxs","Button","jsx","Menu","index","elements","MenuItem","e","ListItemIcon","ListItemText","Typography","Divider"],"mappings":";;;AA+BO,MAAMA,IAAU,CAACC,MAAiB;AACvC,QAAM,EAAE,WAAAC,GAAW,eAAAC,EAAA,IAAkBF,GAE/B,CAACG,GAAUC,CAAW,IAAIC,EAA6B,IAAI,GAC3DC,IAAO,EAAQH,GACfI,IAAc,CAACC,MAAyC;AAC5D,IAAAA,EAAM,gBAAA,GACNJ,EAAYI,EAAM,aAAa;AAAA,EACjC,GACMC,IAAc,CAACD,MAAyC;AAC5D,IAAAA,EAAM,gBAAA,GACNJ,EAAY,IAAI;AAAA,EAClB,GAEMM,IAAkB,CACtBF,GACAG,MACG;AACH,IAAAH,EAAM,gBAAA,GACFG,EAAK,WACPA,EAAK,QAAQH,CAAK,GAEhBG,EAAK,mBAAmB,MAC1BF,EAAYD,CAAK;AAAA,EAErB;AAEA,SAAO;AAAA,IACL,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QAEC,IAAG;AAAA,QACH,iBAAeP,IAAO,cAAc;AAAA,QACpC,iBAAc;AAAA,QACd,iBAAeA,IAAO,SAAS;AAAA,QAC/B,SAASC;AAAA,QACT,OAAO;AAAA,QAEN,UAAA;AAAA,UAAAL;AAAA,UAAc;AAAA,QAAA;AAAA,MAAA;AAAA,MARX;AAAA,IAAA;AAAA,IAUN,gBAAAY;AAAA,MAACC;AAAA,MAAA;AAAA,QAEC,IAAG;AAAA,QACH,eAAe;AAAA,UACb,mBAAmB;AAAA,QAAA;AAAA,QAErB,UAAAZ;AAAA,QACA,MAAAG;AAAA,QACA,SAASG;AAAA,QACT,cAAc;AAAA,UACZ,UAAU;AAAA,UACV,YAAY;AAAA,QAAA;AAAA,QAEd,iBAAiB;AAAA,UACf,UAAU;AAAA,UACV,YAAY;AAAA,QAAA;AAAA,QAGb,UAAAR,EAAU,QAAQ,CAACU,GAAMK,MAAU;AAClC,gBAAMC,IAAW;AAAA,YACf,gBAAAL;AAAA,cAACM;AAAA,cAAA;AAAA,gBAEC,SAAS,CAACC,MAAMT,EAAgBS,GAAGR,CAAI;AAAA,gBACvC,IAAI,EAAE,UAAU,IAAA;AAAA,gBAEhB,UAAA;AAAA,kBAAA,gBAAAG,EAACM,GAAA,EAAc,YAAK,KAAA,CAAK;AAAA,kBACzB,gBAAAN,EAACO,GAAA,EAAc,UAAAV,EAAK,MAAA,CAAM;AAAA,kBACzBA,EAAK,YACJ,gBAAAG,EAACQ,GAAA,EAAW,SAAQ,SAAQ,OAAM,kBAC/B,UAAAX,EAAK,SAAA,CACR;AAAA,gBAAA;AAAA,cAAA;AAAA,cATG,QAAQK,CAAK;AAAA,YAAA;AAAA,UAWpB;AAEF,iBAAIL,EAAK,iBACPM,EAAS,KAAK,gBAAAH,EAACS,GAAA,CAAA,GAAa,WAAWP,CAAK,EAAI,CAAE,GAE7CC;AAAA,QACT,CAAC;AAAA,MAAA;AAAA,MArCG;AAAA,IAAA;AAAA,EAsCN;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";const n=require("react/jsx-runtime"),e=require("../../react.esm-CiMn0Rnx.cjs"),x=require("./index.cjs.js");describe("SubMenu component",()=>{test("renders SubMenu component with given menu items and button element",()=>{const c=jest.fn(),o=jest.fn(),u=jest.fn(),s=[{icon:n.jsx("span",{children:"Icon 1"}),title:"Menu 1",onClick:c,closeWhenClick:!0},{icon:n.jsx("span",{children:"Icon 2"}),title:"Menu 2",onClick:o},{icon:n.jsx("span",{children:"Icon 3"}),title:"Menu 3",onClick:u,closeWhenClick:!1}],i=n.jsx("button",{children:"Menu Button"});e.render(n.jsx(x.SubMenu,{menuItems:s,buttonElement:i}));const t=e.screen.getByText("Menu Button");e.fireEvent.click(t);const l=e.screen.getByText("Menu 1");e.fireEvent.click(l),expect(c).toHaveBeenCalled(),setTimeout(()=>{expect(e.screen.queryByText("Menu 1")).toBeNull()},0),e.fireEvent.click(t);const r=e.screen.getByText("Menu 2");e.fireEvent.click(r),expect(o).toHaveBeenCalled(),setTimeout(()=>{expect(e.screen.queryByText("Menu 2")).toBeNull()},0),e.fireEvent.click(t);const m=e.screen.getByText("Menu 3");e.fireEvent.click(m),expect(u).toHaveBeenCalled(),setTimeout(()=>{expect(e.screen.queryByText("Menu 3")).not.toBeNull()},0)})});
1
+ "use strict";const n=require("react/jsx-runtime"),e=require("../../react.esm-BcRJ42eI.cjs"),x=require("./index.cjs.js");describe("SubMenu component",()=>{test("renders SubMenu component with given menu items and button element",()=>{const c=jest.fn(),o=jest.fn(),u=jest.fn(),s=[{icon:n.jsx("span",{children:"Icon 1"}),title:"Menu 1",onClick:c,closeWhenClick:!0},{icon:n.jsx("span",{children:"Icon 2"}),title:"Menu 2",onClick:o},{icon:n.jsx("span",{children:"Icon 3"}),title:"Menu 3",onClick:u,closeWhenClick:!1}],i=n.jsx("button",{children:"Menu Button"});e.render(n.jsx(x.SubMenu,{menuItems:s,buttonElement:i}));const t=e.screen.getByText("Menu Button");e.fireEvent.click(t);const l=e.screen.getByText("Menu 1");e.fireEvent.click(l),expect(c).toHaveBeenCalled(),setTimeout(()=>{expect(e.screen.queryByText("Menu 1")).toBeNull()},0),e.fireEvent.click(t);const r=e.screen.getByText("Menu 2");e.fireEvent.click(r),expect(o).toHaveBeenCalled(),setTimeout(()=>{expect(e.screen.queryByText("Menu 2")).toBeNull()},0),e.fireEvent.click(t);const m=e.screen.getByText("Menu 3");e.fireEvent.click(m),expect(u).toHaveBeenCalled(),setTimeout(()=>{expect(e.screen.queryByText("Menu 3")).not.toBeNull()},0)})});
2
2
  //# sourceMappingURL=index.test.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SubMenu/index.test.tsx"],"sourcesContent":["import { fireEvent, render, screen } from \"@testing-library/react\";\n\nimport { SubMenu } from \".\";\n\ndescribe(\"SubMenu component\", () => {\n test(\"renders SubMenu component with given menu items and button element\", () => {\n const mockOnClickMenu1 = jest.fn();\n const mockOnClickMenu2 = jest.fn();\n const mockOnClickMenu3 = jest.fn();\n\n const menuItems = [\n {\n icon: <span>Icon 1</span>,\n title: \"Menu 1\",\n onClick: mockOnClickMenu1,\n closeWhenClick: true,\n },\n {\n icon: <span>Icon 2</span>,\n title: \"Menu 2\",\n onClick: mockOnClickMenu2,\n },\n {\n icon: <span>Icon 3</span>,\n title: \"Menu 3\",\n onClick: mockOnClickMenu3,\n closeWhenClick: false,\n },\n ];\n\n const buttonElement = <button>Menu Button</button>;\n\n render(<SubMenu menuItems={menuItems} buttonElement={buttonElement} />);\n\n // Menu 1のテスト menuクリック時消えていること\n const button = screen.getByText(\"Menu Button\");\n fireEvent.click(button);\n const menuItem1 = screen.getByText(\"Menu 1\");\n fireEvent.click(menuItem1);\n expect(mockOnClickMenu1).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 1\")).toBeNull();\n }, 0);\n\n // Menu 2のテスト menuクリック時消えていること\n fireEvent.click(button);\n const menuItem2 = screen.getByText(\"Menu 2\");\n fireEvent.click(menuItem2);\n expect(mockOnClickMenu2).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 2\")).toBeNull();\n }, 0);\n\n // Menu 3のテスト menuクリック時消えていないこと\n fireEvent.click(button);\n const menuItem3 = screen.getByText(\"Menu 3\");\n fireEvent.click(menuItem3);\n expect(mockOnClickMenu3).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 3\")).not.toBeNull();\n }, 0);\n });\n});\n"],"names":["mockOnClickMenu1","mockOnClickMenu2","mockOnClickMenu3","menuItems","jsx","buttonElement","render","SubMenu","button","screen","fireEvent","menuItem1","menuItem2","menuItem3"],"mappings":"wHAIA,SAAS,oBAAqB,IAAM,CAClC,KAAK,qEAAsE,IAAM,CACzE,MAAAA,EAAmB,KAAK,GAAG,EAC3BC,EAAmB,KAAK,GAAG,EAC3BC,EAAmB,KAAK,GAAG,EAE3BC,EAAY,CAChB,CACE,KAAOC,EAAAA,IAAA,OAAA,CAAK,SAAM,QAAA,CAAA,EAClB,MAAO,SACP,QAASJ,EACT,eAAgB,EAClB,EACA,CACE,KAAOI,EAAAA,IAAA,OAAA,CAAK,SAAM,QAAA,CAAA,EAClB,MAAO,SACP,QAASH,CACX,EACA,CACE,KAAOG,EAAAA,IAAA,OAAA,CAAK,SAAM,QAAA,CAAA,EAClB,MAAO,SACP,QAASF,EACT,eAAgB,EAAA,CAEpB,EAEMG,EAAiBD,EAAAA,IAAA,SAAA,CAAO,SAAW,aAAA,CAAA,EAEzCE,EAAA,OAAQF,EAAA,IAAAG,EAAA,QAAA,CAAQ,UAAAJ,EAAsB,cAAAE,CAA8B,CAAA,CAAE,EAGhE,MAAAG,EAASC,EAAAA,OAAO,UAAU,aAAa,EAC7CC,EAAA,UAAU,MAAMF,CAAM,EAChB,MAAAG,EAAYF,EAAAA,OAAO,UAAU,QAAQ,EAC3CC,EAAA,UAAU,MAAMC,CAAS,EAClB,OAAAX,CAAgB,EAAE,iBAAiB,EAC1C,WAAW,IAAM,CACf,OAAOS,EAAAA,OAAO,YAAY,QAAQ,CAAC,EAAE,SAAS,GAC7C,CAAC,EAGJC,EAAA,UAAU,MAAMF,CAAM,EAChB,MAAAI,EAAYH,EAAAA,OAAO,UAAU,QAAQ,EAC3CC,EAAA,UAAU,MAAME,CAAS,EAClB,OAAAX,CAAgB,EAAE,iBAAiB,EAC1C,WAAW,IAAM,CACf,OAAOQ,EAAAA,OAAO,YAAY,QAAQ,CAAC,EAAE,SAAS,GAC7C,CAAC,EAGJC,EAAA,UAAU,MAAMF,CAAM,EAChB,MAAAK,EAAYJ,EAAAA,OAAO,UAAU,QAAQ,EAC3CC,EAAA,UAAU,MAAMG,CAAS,EAClB,OAAAX,CAAgB,EAAE,iBAAiB,EAC1C,WAAW,IAAM,CACf,OAAOO,SAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,SAAS,GACjD,CAAC,CAAA,CACL,CACH,CAAC"}
1
+ {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/SubMenu/index.test.tsx"],"sourcesContent":["import { fireEvent, render, screen } from \"@testing-library/react\";\n\nimport { SubMenu } from \".\";\n\ndescribe(\"SubMenu component\", () => {\n test(\"renders SubMenu component with given menu items and button element\", () => {\n const mockOnClickMenu1 = jest.fn();\n const mockOnClickMenu2 = jest.fn();\n const mockOnClickMenu3 = jest.fn();\n\n const menuItems = [\n {\n icon: <span>Icon 1</span>,\n title: \"Menu 1\",\n onClick: mockOnClickMenu1,\n closeWhenClick: true,\n },\n {\n icon: <span>Icon 2</span>,\n title: \"Menu 2\",\n onClick: mockOnClickMenu2,\n },\n {\n icon: <span>Icon 3</span>,\n title: \"Menu 3\",\n onClick: mockOnClickMenu3,\n closeWhenClick: false,\n },\n ];\n\n const buttonElement = <button>Menu Button</button>;\n\n render(<SubMenu menuItems={menuItems} buttonElement={buttonElement} />);\n\n // Menu 1のテスト menuクリック時消えていること\n const button = screen.getByText(\"Menu Button\");\n fireEvent.click(button);\n const menuItem1 = screen.getByText(\"Menu 1\");\n fireEvent.click(menuItem1);\n expect(mockOnClickMenu1).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 1\")).toBeNull();\n }, 0);\n\n // Menu 2のテスト menuクリック時消えていること\n fireEvent.click(button);\n const menuItem2 = screen.getByText(\"Menu 2\");\n fireEvent.click(menuItem2);\n expect(mockOnClickMenu2).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 2\")).toBeNull();\n }, 0);\n\n // Menu 3のテスト menuクリック時消えていないこと\n fireEvent.click(button);\n const menuItem3 = screen.getByText(\"Menu 3\");\n fireEvent.click(menuItem3);\n expect(mockOnClickMenu3).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 3\")).not.toBeNull();\n }, 0);\n });\n});\n"],"names":["mockOnClickMenu1","mockOnClickMenu2","mockOnClickMenu3","menuItems","jsx","buttonElement","render","SubMenu","button","screen","fireEvent","menuItem1","menuItem2","menuItem3"],"mappings":"wHAIA,SAAS,oBAAqB,IAAM,CAClC,KAAK,qEAAsE,IAAM,CAC/E,MAAMA,EAAmB,KAAK,GAAA,EACxBC,EAAmB,KAAK,GAAA,EACxBC,EAAmB,KAAK,GAAA,EAExBC,EAAY,CAChB,CACE,KAAMC,EAAAA,IAAC,OAAA,CAAK,SAAA,QAAA,CAAM,EAClB,MAAO,SACP,QAASJ,EACT,eAAgB,EAAA,EAElB,CACE,KAAMI,EAAAA,IAAC,OAAA,CAAK,SAAA,QAAA,CAAM,EAClB,MAAO,SACP,QAASH,CAAA,EAEX,CACE,KAAMG,EAAAA,IAAC,OAAA,CAAK,SAAA,QAAA,CAAM,EAClB,MAAO,SACP,QAASF,EACT,eAAgB,EAAA,CAClB,EAGIG,EAAgBD,EAAAA,IAAC,SAAA,CAAO,SAAA,aAAA,CAAW,EAEzCE,EAAAA,OAAOF,EAAAA,IAACG,EAAAA,QAAA,CAAQ,UAAAJ,EAAsB,cAAAE,CAAA,CAA8B,CAAE,EAGtE,MAAMG,EAASC,EAAAA,OAAO,UAAU,aAAa,EAC7CC,EAAAA,UAAU,MAAMF,CAAM,EACtB,MAAMG,EAAYF,EAAAA,OAAO,UAAU,QAAQ,EAC3CC,EAAAA,UAAU,MAAMC,CAAS,EACzB,OAAOX,CAAgB,EAAE,iBAAA,EACzB,WAAW,IAAM,CACf,OAAOS,EAAAA,OAAO,YAAY,QAAQ,CAAC,EAAE,SAAA,CACvC,EAAG,CAAC,EAGJC,EAAAA,UAAU,MAAMF,CAAM,EACtB,MAAMI,EAAYH,EAAAA,OAAO,UAAU,QAAQ,EAC3CC,EAAAA,UAAU,MAAME,CAAS,EACzB,OAAOX,CAAgB,EAAE,iBAAA,EACzB,WAAW,IAAM,CACf,OAAOQ,EAAAA,OAAO,YAAY,QAAQ,CAAC,EAAE,SAAA,CACvC,EAAG,CAAC,EAGJC,EAAAA,UAAU,MAAMF,CAAM,EACtB,MAAMK,EAAYJ,EAAAA,OAAO,UAAU,QAAQ,EAC3CC,EAAAA,UAAU,MAAMG,CAAS,EACzB,OAAOX,CAAgB,EAAE,iBAAA,EACzB,WAAW,IAAM,CACf,OAAOO,EAAAA,OAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,SAAA,CAC3C,EAAG,CAAC,CACN,CAAC,CACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
- import { r, s as e, f as t } from "../../react.esm-2FJSSo-S.js";
2
+ import { r, s as e, f as t } from "../../react.esm-DVhZgPrH.js";
3
3
  import { SubMenu as k } from "./index.es.js";
4
4
  describe("SubMenu component", () => {
5
5
  test("renders SubMenu component with given menu items and button element", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SubMenu/index.test.tsx"],"sourcesContent":["import { fireEvent, render, screen } from \"@testing-library/react\";\n\nimport { SubMenu } from \".\";\n\ndescribe(\"SubMenu component\", () => {\n test(\"renders SubMenu component with given menu items and button element\", () => {\n const mockOnClickMenu1 = jest.fn();\n const mockOnClickMenu2 = jest.fn();\n const mockOnClickMenu3 = jest.fn();\n\n const menuItems = [\n {\n icon: <span>Icon 1</span>,\n title: \"Menu 1\",\n onClick: mockOnClickMenu1,\n closeWhenClick: true,\n },\n {\n icon: <span>Icon 2</span>,\n title: \"Menu 2\",\n onClick: mockOnClickMenu2,\n },\n {\n icon: <span>Icon 3</span>,\n title: \"Menu 3\",\n onClick: mockOnClickMenu3,\n closeWhenClick: false,\n },\n ];\n\n const buttonElement = <button>Menu Button</button>;\n\n render(<SubMenu menuItems={menuItems} buttonElement={buttonElement} />);\n\n // Menu 1のテスト menuクリック時消えていること\n const button = screen.getByText(\"Menu Button\");\n fireEvent.click(button);\n const menuItem1 = screen.getByText(\"Menu 1\");\n fireEvent.click(menuItem1);\n expect(mockOnClickMenu1).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 1\")).toBeNull();\n }, 0);\n\n // Menu 2のテスト menuクリック時消えていること\n fireEvent.click(button);\n const menuItem2 = screen.getByText(\"Menu 2\");\n fireEvent.click(menuItem2);\n expect(mockOnClickMenu2).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 2\")).toBeNull();\n }, 0);\n\n // Menu 3のテスト menuクリック時消えていないこと\n fireEvent.click(button);\n const menuItem3 = screen.getByText(\"Menu 3\");\n fireEvent.click(menuItem3);\n expect(mockOnClickMenu3).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 3\")).not.toBeNull();\n }, 0);\n });\n});\n"],"names":["mockOnClickMenu1","mockOnClickMenu2","mockOnClickMenu3","render","jsx","SubMenu","button","screen","fireEvent","menuItem1","menuItem2","menuItem3"],"mappings":";;;AAIA,SAAS,qBAAqB,MAAM;AAClC,OAAK,sEAAsE,MAAM;AACzE,UAAAA,IAAmB,KAAK,GAAG,GAC3BC,IAAmB,KAAK,GAAG,GAC3BC,IAAmB,KAAK,GAAG;AAwBjC,IAAAC,EAAQ,gBAAAC,EAAAC,GAAA,EAAQ,WAtBE;AAAA,MAChB;AAAA,QACE,MAAO,gBAAAD,EAAA,QAAA,EAAK,UAAM,SAAA,CAAA;AAAA,QAClB,OAAO;AAAA,QACP,SAASJ;AAAA,QACT,gBAAgB;AAAA,MAClB;AAAA,MACA;AAAA,QACE,MAAO,gBAAAI,EAAA,QAAA,EAAK,UAAM,SAAA,CAAA;AAAA,QAClB,OAAO;AAAA,QACP,SAASH;AAAA,MACX;AAAA,MACA;AAAA,QACE,MAAO,gBAAAG,EAAA,QAAA,EAAK,UAAM,SAAA,CAAA;AAAA,QAClB,OAAO;AAAA,QACP,SAASF;AAAA,QACT,gBAAgB;AAAA,MAAA;AAAA,IAEpB,GAIsC,eAFf,gBAAAE,EAAA,UAAA,EAAO,UAAW,cAAA,CAAA,EAE2B,CAAA,CAAE;AAGhE,UAAAE,IAASC,EAAO,UAAU,aAAa;AAC7C,IAAAC,EAAU,MAAMF,CAAM;AAChB,UAAAG,IAAYF,EAAO,UAAU,QAAQ;AAC3C,IAAAC,EAAU,MAAMC,CAAS,GAClB,OAAAT,CAAgB,EAAE,iBAAiB,GAC1C,WAAW,MAAM;AACf,aAAOO,EAAO,YAAY,QAAQ,CAAC,EAAE,SAAS;AAAA,OAC7C,CAAC,GAGJC,EAAU,MAAMF,CAAM;AAChB,UAAAI,IAAYH,EAAO,UAAU,QAAQ;AAC3C,IAAAC,EAAU,MAAME,CAAS,GAClB,OAAAT,CAAgB,EAAE,iBAAiB,GAC1C,WAAW,MAAM;AACf,aAAOM,EAAO,YAAY,QAAQ,CAAC,EAAE,SAAS;AAAA,OAC7C,CAAC,GAGJC,EAAU,MAAMF,CAAM;AAChB,UAAAK,IAAYJ,EAAO,UAAU,QAAQ;AAC3C,IAAAC,EAAU,MAAMG,CAAS,GAClB,OAAAT,CAAgB,EAAE,iBAAiB,GAC1C,WAAW,MAAM;AACf,aAAOK,EAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,SAAS;AAAA,OACjD,CAAC;AAAA,EAAA,CACL;AACH,CAAC;"}
1
+ {"version":3,"file":"index.test.es.js","sources":["../../../src/components/SubMenu/index.test.tsx"],"sourcesContent":["import { fireEvent, render, screen } from \"@testing-library/react\";\n\nimport { SubMenu } from \".\";\n\ndescribe(\"SubMenu component\", () => {\n test(\"renders SubMenu component with given menu items and button element\", () => {\n const mockOnClickMenu1 = jest.fn();\n const mockOnClickMenu2 = jest.fn();\n const mockOnClickMenu3 = jest.fn();\n\n const menuItems = [\n {\n icon: <span>Icon 1</span>,\n title: \"Menu 1\",\n onClick: mockOnClickMenu1,\n closeWhenClick: true,\n },\n {\n icon: <span>Icon 2</span>,\n title: \"Menu 2\",\n onClick: mockOnClickMenu2,\n },\n {\n icon: <span>Icon 3</span>,\n title: \"Menu 3\",\n onClick: mockOnClickMenu3,\n closeWhenClick: false,\n },\n ];\n\n const buttonElement = <button>Menu Button</button>;\n\n render(<SubMenu menuItems={menuItems} buttonElement={buttonElement} />);\n\n // Menu 1のテスト menuクリック時消えていること\n const button = screen.getByText(\"Menu Button\");\n fireEvent.click(button);\n const menuItem1 = screen.getByText(\"Menu 1\");\n fireEvent.click(menuItem1);\n expect(mockOnClickMenu1).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 1\")).toBeNull();\n }, 0);\n\n // Menu 2のテスト menuクリック時消えていること\n fireEvent.click(button);\n const menuItem2 = screen.getByText(\"Menu 2\");\n fireEvent.click(menuItem2);\n expect(mockOnClickMenu2).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 2\")).toBeNull();\n }, 0);\n\n // Menu 3のテスト menuクリック時消えていないこと\n fireEvent.click(button);\n const menuItem3 = screen.getByText(\"Menu 3\");\n fireEvent.click(menuItem3);\n expect(mockOnClickMenu3).toHaveBeenCalled();\n setTimeout(() => {\n expect(screen.queryByText(\"Menu 3\")).not.toBeNull();\n }, 0);\n });\n});\n"],"names":["mockOnClickMenu1","mockOnClickMenu2","mockOnClickMenu3","render","jsx","SubMenu","button","screen","fireEvent","menuItem1","menuItem2","menuItem3"],"mappings":";;;AAIA,SAAS,qBAAqB,MAAM;AAClC,OAAK,sEAAsE,MAAM;AAC/E,UAAMA,IAAmB,KAAK,GAAA,GACxBC,IAAmB,KAAK,GAAA,GACxBC,IAAmB,KAAK,GAAA;AAwB9B,IAAAC,EAAO,gBAAAC,EAACC,GAAA,EAAQ,WAtBE;AAAA,MAChB;AAAA,QACE,MAAM,gBAAAD,EAAC,QAAA,EAAK,UAAA,SAAA,CAAM;AAAA,QAClB,OAAO;AAAA,QACP,SAASJ;AAAA,QACT,gBAAgB;AAAA,MAAA;AAAA,MAElB;AAAA,QACE,MAAM,gBAAAI,EAAC,QAAA,EAAK,UAAA,SAAA,CAAM;AAAA,QAClB,OAAO;AAAA,QACP,SAASH;AAAA,MAAA;AAAA,MAEX;AAAA,QACE,MAAM,gBAAAG,EAAC,QAAA,EAAK,UAAA,SAAA,CAAM;AAAA,QAClB,OAAO;AAAA,QACP,SAASF;AAAA,QACT,gBAAgB;AAAA,MAAA;AAAA,IAClB,GAKoC,eAFhB,gBAAAE,EAAC,UAAA,EAAO,UAAA,cAAA,CAAW,EAEH,CAA8B,CAAE;AAGtE,UAAME,IAASC,EAAO,UAAU,aAAa;AAC7C,IAAAC,EAAU,MAAMF,CAAM;AACtB,UAAMG,IAAYF,EAAO,UAAU,QAAQ;AAC3C,IAAAC,EAAU,MAAMC,CAAS,GACzB,OAAOT,CAAgB,EAAE,iBAAA,GACzB,WAAW,MAAM;AACf,aAAOO,EAAO,YAAY,QAAQ,CAAC,EAAE,SAAA;AAAA,IACvC,GAAG,CAAC,GAGJC,EAAU,MAAMF,CAAM;AACtB,UAAMI,IAAYH,EAAO,UAAU,QAAQ;AAC3C,IAAAC,EAAU,MAAME,CAAS,GACzB,OAAOT,CAAgB,EAAE,iBAAA,GACzB,WAAW,MAAM;AACf,aAAOM,EAAO,YAAY,QAAQ,CAAC,EAAE,SAAA;AAAA,IACvC,GAAG,CAAC,GAGJC,EAAU,MAAMF,CAAM;AACtB,UAAMK,IAAYJ,EAAO,UAAU,QAAQ;AAC3C,IAAAC,EAAU,MAAMG,CAAS,GACzB,OAAOT,CAAgB,EAAE,iBAAA,GACzB,WAAW,MAAM;AACf,aAAOK,EAAO,YAAY,QAAQ,CAAC,EAAE,IAAI,SAAA;AAAA,IAC3C,GAAG,CAAC;AAAA,EACN,CAAC;AACH,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/Tabs/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Box, Tabs as MuiTabs, styled, Tab } from \"@mui/material\";\n\ntype TabItem = {\n /** タブの識別値 */\n value: string;\n /** 表示名 */\n label: string;\n /** 表示アイコン example:\n * <PhoneIcon sx={{ fontSize: 20 }} />\n */\n icon?: React.ReactElement;\n};\n\ntype Props = {\n /** タブアイテム情報*/\n items: TabItem[];\n /** 現在選択中のvalue state管理 */\n value: string;\n /** 選択中のTabが変更された時のhandler */\n handleChange: (event: React.SyntheticEvent, newValue: string) => void;\n};\n\ninterface StyledTabsProps {\n children?: React.ReactNode;\n value: string;\n onChange: (event: React.SyntheticEvent, newValue: string) => void;\n}\n\nconst StyledTabs = styled((props: StyledTabsProps) => (\n <MuiTabs\n {...props}\n aria-label=\"wrapped tabs\"\n TabIndicatorProps={{ children: <span className=\"MuiTabs-indicatorSpan\" /> }}\n />\n))({\n \"& .MuiTabs-indicator\": {\n display: \"flex\",\n justifyContent: \"center\",\n backgroundColor: \"transparent\",\n },\n \"& .MuiTabs-indicatorSpan\": {\n width: \"100%\",\n backgroundColor: \"#6672e8\",\n },\n});\n\nconst StyledTab = styled((props: TabItem) => (\n <Tab {...props} iconPosition=\"start\" />\n))(({}) => ({\n \"&.Mui-selected\": {\n color: \"#000\",\n fontWeight: \"800\",\n },\n}));\n\nexport const Tabs = (props: Props) => {\n const { items, value, handleChange } = props;\n\n return (\n <Box sx={{ width: \"100%\" }}>\n <StyledTabs\n value={value}\n onChange={handleChange}\n aria-label=\"wrapped tabs\"\n >\n {items.map((item) => (\n <StyledTab\n key={item.value}\n icon={item.icon}\n label={item.label}\n value={item.value}\n />\n ))}\n </StyledTabs>\n </Box>\n );\n};\n\nexport default Tabs;\n"],"names":["StyledTabs","styled","props","jsx","MuiTabs","StyledTab","Tab","Tabs","items","value","handleChange","Box","item"],"mappings":"4KA6BMA,EAAaC,EAAAA,OAAQC,GACzBC,EAAA,IAACC,EAAA,KAAA,CACE,GAAGF,EACJ,aAAW,eACX,kBAAmB,CAAE,eAAW,OAAK,CAAA,UAAU,wBAAwB,CAAG,CAAA,CAC5E,CACD,EAAE,CACD,uBAAwB,CACtB,QAAS,OACT,eAAgB,SAChB,gBAAiB,aACnB,EACA,2BAA4B,CAC1B,MAAO,OACP,gBAAiB,SAAA,CAErB,CAAC,EAEKG,EAAYJ,EAAAA,OAAQC,SACvBI,EAAAA,IAAK,CAAA,GAAGJ,EAAO,aAAa,OAAQ,CAAA,CACtC,EAAE,CAAC,CAAA,KAAQ,CACV,iBAAkB,CAChB,MAAO,OACP,WAAY,KAAA,CAEhB,EAAE,EAEWK,EAAQL,GAAiB,CACpC,KAAM,CAAE,MAAAM,EAAO,MAAAC,EAAO,aAAAC,CAAiB,EAAAR,EAEvC,aACGS,EAAI,IAAA,CAAA,GAAI,CAAE,MAAO,QAChB,SAAAR,EAAA,IAACH,EAAA,CACC,MAAAS,EACA,SAAUC,EACV,aAAW,eAEV,SAAAF,EAAM,IAAKI,GACVT,EAAA,IAACE,EAAA,CAEC,KAAMO,EAAK,KACX,MAAOA,EAAK,MACZ,MAAOA,EAAK,KAAA,EAHPA,EAAK,KAKb,CAAA,CAAA,CAAA,EAEL,CAEJ"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/Tabs/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Box, Tabs as MuiTabs, styled, Tab } from \"@mui/material\";\n\ntype TabItem = {\n /** タブの識別値 */\n value: string;\n /** 表示名 */\n label: string;\n /** 表示アイコン example:\n * <PhoneIcon sx={{ fontSize: 20 }} />\n */\n icon?: React.ReactElement<unknown>;\n};\n\ntype Props = {\n /** タブアイテム情報*/\n items: TabItem[];\n /** 現在選択中のvalue state管理 */\n value: string;\n /** 選択中のTabが変更された時のhandler */\n handleChange: (event: React.SyntheticEvent, newValue: string) => void;\n};\n\ninterface StyledTabsProps {\n children?: React.ReactNode;\n value: string;\n onChange: (event: React.SyntheticEvent, newValue: string) => void;\n}\n\nconst StyledTabs = styled((props: StyledTabsProps) => (\n <MuiTabs\n {...props}\n aria-label=\"wrapped tabs\"\n TabIndicatorProps={{ children: <span className=\"MuiTabs-indicatorSpan\" /> }}\n />\n))({\n \"& .MuiTabs-indicator\": {\n display: \"flex\",\n justifyContent: \"center\",\n backgroundColor: \"transparent\",\n },\n \"& .MuiTabs-indicatorSpan\": {\n width: \"100%\",\n backgroundColor: \"#6672e8\",\n },\n});\n\nconst StyledTab = styled((props: TabItem) => (\n <Tab {...props} iconPosition=\"start\" />\n))(({}) => ({\n \"&.Mui-selected\": {\n color: \"#000\",\n fontWeight: \"800\",\n },\n}));\n\nexport const Tabs = (props: Props) => {\n const { items, value, handleChange } = props;\n\n return (\n <Box sx={{ width: \"100%\" }}>\n <StyledTabs\n value={value}\n onChange={handleChange}\n aria-label=\"wrapped tabs\"\n >\n {items.map((item) => (\n <StyledTab\n key={item.value}\n icon={item.icon}\n label={item.label}\n value={item.value}\n />\n ))}\n </StyledTabs>\n </Box>\n );\n};\n\nexport default Tabs;\n"],"names":["StyledTabs","styled","props","jsx","MuiTabs","StyledTab","Tab","Tabs","items","value","handleChange","Box","item"],"mappings":"4KA6BMA,EAAaC,EAAAA,OAAQC,GACzBC,EAAAA,IAACC,EAAAA,KAAA,CACE,GAAGF,EACJ,aAAW,eACX,kBAAmB,CAAE,eAAW,OAAA,CAAK,UAAU,wBAAwB,CAAA,CAAG,CAC5E,CACD,EAAE,CACD,uBAAwB,CACtB,QAAS,OACT,eAAgB,SAChB,gBAAiB,aAAA,EAEnB,2BAA4B,CAC1B,MAAO,OACP,gBAAiB,SAAA,CAErB,CAAC,EAEKG,EAAYJ,EAAAA,OAAQC,SACvBI,EAAAA,IAAA,CAAK,GAAGJ,EAAO,aAAa,OAAA,CAAQ,CACtC,EAAE,CAAC,CAAA,KAAQ,CACV,iBAAkB,CAChB,MAAO,OACP,WAAY,KAAA,CAEhB,EAAE,EAEWK,EAAQL,GAAiB,CACpC,KAAM,CAAE,MAAAM,EAAO,MAAAC,EAAO,aAAAC,CAAA,EAAiBR,EAEvC,aACGS,EAAAA,IAAA,CAAI,GAAI,CAAE,MAAO,QAChB,SAAAR,EAAAA,IAACH,EAAA,CACC,MAAAS,EACA,SAAUC,EACV,aAAW,eAEV,SAAAF,EAAM,IAAKI,GACVT,EAAAA,IAACE,EAAA,CAEC,KAAMO,EAAK,KACX,MAAOA,EAAK,MACZ,MAAOA,EAAK,KAAA,EAHPA,EAAK,KAAA,CAKb,CAAA,CAAA,EAEL,CAEJ"}
@@ -7,7 +7,7 @@ type TabItem = {
7
7
  /** 表示アイコン example:
8
8
  * <PhoneIcon sx={{ fontSize: 20 }} />
9
9
  */
10
- icon?: React.ReactElement;
10
+ icon?: React.ReactElement<unknown>;
11
11
  };
12
12
  type Props = {
13
13
  /** タブアイテム情報*/
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../src/components/Tabs/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Box, Tabs as MuiTabs, styled, Tab } from \"@mui/material\";\n\ntype TabItem = {\n /** タブの識別値 */\n value: string;\n /** 表示名 */\n label: string;\n /** 表示アイコン example:\n * <PhoneIcon sx={{ fontSize: 20 }} />\n */\n icon?: React.ReactElement;\n};\n\ntype Props = {\n /** タブアイテム情報*/\n items: TabItem[];\n /** 現在選択中のvalue state管理 */\n value: string;\n /** 選択中のTabが変更された時のhandler */\n handleChange: (event: React.SyntheticEvent, newValue: string) => void;\n};\n\ninterface StyledTabsProps {\n children?: React.ReactNode;\n value: string;\n onChange: (event: React.SyntheticEvent, newValue: string) => void;\n}\n\nconst StyledTabs = styled((props: StyledTabsProps) => (\n <MuiTabs\n {...props}\n aria-label=\"wrapped tabs\"\n TabIndicatorProps={{ children: <span className=\"MuiTabs-indicatorSpan\" /> }}\n />\n))({\n \"& .MuiTabs-indicator\": {\n display: \"flex\",\n justifyContent: \"center\",\n backgroundColor: \"transparent\",\n },\n \"& .MuiTabs-indicatorSpan\": {\n width: \"100%\",\n backgroundColor: \"#6672e8\",\n },\n});\n\nconst StyledTab = styled((props: TabItem) => (\n <Tab {...props} iconPosition=\"start\" />\n))(({}) => ({\n \"&.Mui-selected\": {\n color: \"#000\",\n fontWeight: \"800\",\n },\n}));\n\nexport const Tabs = (props: Props) => {\n const { items, value, handleChange } = props;\n\n return (\n <Box sx={{ width: \"100%\" }}>\n <StyledTabs\n value={value}\n onChange={handleChange}\n aria-label=\"wrapped tabs\"\n >\n {items.map((item) => (\n <StyledTab\n key={item.value}\n icon={item.icon}\n label={item.label}\n value={item.value}\n />\n ))}\n </StyledTabs>\n </Box>\n );\n};\n\nexport default Tabs;\n"],"names":["StyledTabs","styled","props","jsx","MuiTabs","StyledTab","Tab","Tabs","items","value","handleChange","Box","item"],"mappings":";;AA6BA,MAAMA,IAAaC,EAAO,CAACC,MACzB,gBAAAC;AAAA,EAACC;AAAAA,EAAA;AAAA,IACE,GAAGF;AAAA,IACJ,cAAW;AAAA,IACX,mBAAmB,EAAE,4BAAW,QAAK,EAAA,WAAU,yBAAwB,EAAG;AAAA,EAAA;AAC5E,CACD,EAAE;AAAA,EACD,wBAAwB;AAAA,IACtB,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,EACnB;AAAA,EACA,4BAA4B;AAAA,IAC1B,OAAO;AAAA,IACP,iBAAiB;AAAA,EAAA;AAErB,CAAC,GAEKG,IAAYJ,EAAO,CAACC,wBACvBI,GAAK,EAAA,GAAGJ,GAAO,cAAa,QAAQ,CAAA,CACtC,EAAE,CAAC,CAAA,OAAQ;AAAA,EACV,kBAAkB;AAAA,IAChB,OAAO;AAAA,IACP,YAAY;AAAA,EAAA;AAEhB,EAAE,GAEWK,IAAO,CAACL,MAAiB;AACpC,QAAM,EAAE,OAAAM,GAAO,OAAAC,GAAO,cAAAC,EAAiB,IAAAR;AAEvC,2BACGS,GAAI,EAAA,IAAI,EAAE,OAAO,UAChB,UAAA,gBAAAR;AAAA,IAACH;AAAA,IAAA;AAAA,MACC,OAAAS;AAAA,MACA,UAAUC;AAAA,MACV,cAAW;AAAA,MAEV,UAAAF,EAAM,IAAI,CAACI,MACV,gBAAAT;AAAA,QAACE;AAAA,QAAA;AAAA,UAEC,MAAMO,EAAK;AAAA,UACX,OAAOA,EAAK;AAAA,UACZ,OAAOA,EAAK;AAAA,QAAA;AAAA,QAHPA,EAAK;AAAA,MAKb,CAAA;AAAA,IAAA;AAAA,EAAA,GAEL;AAEJ;"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../src/components/Tabs/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Box, Tabs as MuiTabs, styled, Tab } from \"@mui/material\";\n\ntype TabItem = {\n /** タブの識別値 */\n value: string;\n /** 表示名 */\n label: string;\n /** 表示アイコン example:\n * <PhoneIcon sx={{ fontSize: 20 }} />\n */\n icon?: React.ReactElement<unknown>;\n};\n\ntype Props = {\n /** タブアイテム情報*/\n items: TabItem[];\n /** 現在選択中のvalue state管理 */\n value: string;\n /** 選択中のTabが変更された時のhandler */\n handleChange: (event: React.SyntheticEvent, newValue: string) => void;\n};\n\ninterface StyledTabsProps {\n children?: React.ReactNode;\n value: string;\n onChange: (event: React.SyntheticEvent, newValue: string) => void;\n}\n\nconst StyledTabs = styled((props: StyledTabsProps) => (\n <MuiTabs\n {...props}\n aria-label=\"wrapped tabs\"\n TabIndicatorProps={{ children: <span className=\"MuiTabs-indicatorSpan\" /> }}\n />\n))({\n \"& .MuiTabs-indicator\": {\n display: \"flex\",\n justifyContent: \"center\",\n backgroundColor: \"transparent\",\n },\n \"& .MuiTabs-indicatorSpan\": {\n width: \"100%\",\n backgroundColor: \"#6672e8\",\n },\n});\n\nconst StyledTab = styled((props: TabItem) => (\n <Tab {...props} iconPosition=\"start\" />\n))(({}) => ({\n \"&.Mui-selected\": {\n color: \"#000\",\n fontWeight: \"800\",\n },\n}));\n\nexport const Tabs = (props: Props) => {\n const { items, value, handleChange } = props;\n\n return (\n <Box sx={{ width: \"100%\" }}>\n <StyledTabs\n value={value}\n onChange={handleChange}\n aria-label=\"wrapped tabs\"\n >\n {items.map((item) => (\n <StyledTab\n key={item.value}\n icon={item.icon}\n label={item.label}\n value={item.value}\n />\n ))}\n </StyledTabs>\n </Box>\n );\n};\n\nexport default Tabs;\n"],"names":["StyledTabs","styled","props","jsx","MuiTabs","StyledTab","Tab","Tabs","items","value","handleChange","Box","item"],"mappings":";;AA6BA,MAAMA,IAAaC,EAAO,CAACC,MACzB,gBAAAC;AAAA,EAACC;AAAAA,EAAA;AAAA,IACE,GAAGF;AAAA,IACJ,cAAW;AAAA,IACX,mBAAmB,EAAE,4BAAW,QAAA,EAAK,WAAU,yBAAwB,EAAA;AAAA,EAAG;AAC5E,CACD,EAAE;AAAA,EACD,wBAAwB;AAAA,IACtB,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,EAAA;AAAA,EAEnB,4BAA4B;AAAA,IAC1B,OAAO;AAAA,IACP,iBAAiB;AAAA,EAAA;AAErB,CAAC,GAEKG,IAAYJ,EAAO,CAACC,wBACvBI,GAAA,EAAK,GAAGJ,GAAO,cAAa,QAAA,CAAQ,CACtC,EAAE,CAAC,CAAA,OAAQ;AAAA,EACV,kBAAkB;AAAA,IAChB,OAAO;AAAA,IACP,YAAY;AAAA,EAAA;AAEhB,EAAE,GAEWK,IAAO,CAACL,MAAiB;AACpC,QAAM,EAAE,OAAAM,GAAO,OAAAC,GAAO,cAAAC,EAAA,IAAiBR;AAEvC,2BACGS,GAAA,EAAI,IAAI,EAAE,OAAO,UAChB,UAAA,gBAAAR;AAAA,IAACH;AAAA,IAAA;AAAA,MACC,OAAAS;AAAA,MACA,UAAUC;AAAA,MACV,cAAW;AAAA,MAEV,UAAAF,EAAM,IAAI,CAACI,MACV,gBAAAT;AAAA,QAACE;AAAA,QAAA;AAAA,UAEC,MAAMO,EAAK;AAAA,UACX,OAAOA,EAAK;AAAA,UACZ,OAAOA,EAAK;AAAA,QAAA;AAAA,QAHPA,EAAK;AAAA,MAAA,CAKb;AAAA,IAAA;AAAA,EAAA,GAEL;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";const c=require("react/jsx-runtime"),l=require("../../react.esm-CiMn0Rnx.cjs"),s=require("./index.cjs.js");require("../../index-BpMSrIOq.cjs");describe("Tabs Component",()=>{const e=jest.fn(),t=[{value:"tab1",label:"Tab 1"},{value:"tab2",label:"Tab 2"},{value:"tab3",label:"Tab 3"}];it("renders the tabs correctly",()=>{const{getByText:a}=l.render(c.jsx(s.Tabs,{items:t,value:"tab1",handleChange:e}));t.forEach(n=>{expect(a(n.label)).toBeInTheDocument()})}),it("calls handleChange with the right value when a tab is clicked",()=>{const{getByText:a}=l.render(c.jsx(s.Tabs,{items:t,value:"tab1",handleChange:e})),n=a("Tab 2");l.fireEvent.click(n),expect(e).toHaveBeenCalled(),expect(e).toHaveBeenCalledWith(expect.anything(),"tab2")})});
1
+ "use strict";const c=require("react/jsx-runtime"),l=require("../../react.esm-BcRJ42eI.cjs"),s=require("./index.cjs.js");require("../../index-9p9q0wxE.cjs");describe("Tabs Component",()=>{const e=jest.fn(),t=[{value:"tab1",label:"Tab 1"},{value:"tab2",label:"Tab 2"},{value:"tab3",label:"Tab 3"}];it("renders the tabs correctly",()=>{const{getByText:a}=l.render(c.jsx(s.Tabs,{items:t,value:"tab1",handleChange:e}));t.forEach(n=>{expect(a(n.label)).toBeInTheDocument()})}),it("calls handleChange with the right value when a tab is clicked",()=>{const{getByText:a}=l.render(c.jsx(s.Tabs,{items:t,value:"tab1",handleChange:e})),n=a("Tab 2");l.fireEvent.click(n),expect(e).toHaveBeenCalled(),expect(e).toHaveBeenCalledWith(expect.anything(),"tab2")})});
2
2
  //# sourceMappingURL=index.test.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/Tabs/index.test.tsx"],"sourcesContent":["import { fireEvent, render } from \"@testing-library/react\";\n\nimport { Tabs } from \".\";\n\nimport \"@testing-library/jest-dom\";\n\ndescribe(\"Tabs Component\", () => {\n const mockHandleChange = jest.fn();\n const items = [\n { value: \"tab1\", label: \"Tab 1\" },\n { value: \"tab2\", label: \"Tab 2\" },\n { value: \"tab3\", label: \"Tab 3\" },\n ];\n\n it(\"renders the tabs correctly\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n items.forEach((item) => {\n expect(getByText(item.label)).toBeInTheDocument();\n });\n });\n\n it(\"calls handleChange with the right value when a tab is clicked\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n const tab2 = getByText(\"Tab 2\");\n fireEvent.click(tab2);\n\n expect(mockHandleChange).toHaveBeenCalled();\n expect(mockHandleChange).toHaveBeenCalledWith(expect.anything(), \"tab2\");\n });\n});\n"],"names":["mockHandleChange","items","getByText","render","Tabs","item","tab2","fireEvent"],"mappings":"4JAMA,SAAS,iBAAkB,IAAM,CACzB,MAAAA,EAAmB,KAAK,GAAG,EAC3BC,EAAQ,CACZ,CAAE,MAAO,OAAQ,MAAO,OAAQ,EAChC,CAAE,MAAO,OAAQ,MAAO,OAAQ,EAChC,CAAE,MAAO,OAAQ,MAAO,OAAQ,CAClC,EAEA,GAAG,6BAA8B,IAAM,CAC/B,KAAA,CAAE,UAAAC,GAAcC,EAAA,aACnBC,EAAK,KAAA,CAAA,MAAAH,EAAc,MAAM,OAAO,aAAcD,CAAkB,CAAA,CACnE,EAEMC,EAAA,QAASI,GAAS,CACtB,OAAOH,EAAUG,EAAK,KAAK,CAAC,EAAE,kBAAkB,CAAA,CACjD,CAAA,CACF,EAED,GAAG,gEAAiE,IAAM,CAClE,KAAA,CAAE,UAAAH,GAAcC,EAAA,aACnBC,EAAK,KAAA,CAAA,MAAAH,EAAc,MAAM,OAAO,aAAcD,CAAkB,CAAA,CACnE,EAEMM,EAAOJ,EAAU,OAAO,EAC9BK,EAAA,UAAU,MAAMD,CAAI,EAEb,OAAAN,CAAgB,EAAE,iBAAiB,EAC1C,OAAOA,CAAgB,EAAE,qBAAqB,OAAO,WAAY,MAAM,CAAA,CACxE,CACH,CAAC"}
1
+ {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/Tabs/index.test.tsx"],"sourcesContent":["import { fireEvent, render } from \"@testing-library/react\";\n\nimport { Tabs } from \".\";\n\nimport \"@testing-library/jest-dom\";\n\ndescribe(\"Tabs Component\", () => {\n const mockHandleChange = jest.fn();\n const items = [\n { value: \"tab1\", label: \"Tab 1\" },\n { value: \"tab2\", label: \"Tab 2\" },\n { value: \"tab3\", label: \"Tab 3\" },\n ];\n\n it(\"renders the tabs correctly\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n items.forEach((item) => {\n expect(getByText(item.label)).toBeInTheDocument();\n });\n });\n\n it(\"calls handleChange with the right value when a tab is clicked\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n const tab2 = getByText(\"Tab 2\");\n fireEvent.click(tab2);\n\n expect(mockHandleChange).toHaveBeenCalled();\n expect(mockHandleChange).toHaveBeenCalledWith(expect.anything(), \"tab2\");\n });\n});\n"],"names":["mockHandleChange","items","getByText","render","Tabs","item","tab2","fireEvent"],"mappings":"4JAMA,SAAS,iBAAkB,IAAM,CAC/B,MAAMA,EAAmB,KAAK,GAAA,EACxBC,EAAQ,CACZ,CAAE,MAAO,OAAQ,MAAO,OAAA,EACxB,CAAE,MAAO,OAAQ,MAAO,OAAA,EACxB,CAAE,MAAO,OAAQ,MAAO,OAAA,CAAQ,EAGlC,GAAG,6BAA8B,IAAM,CACrC,KAAM,CAAE,UAAAC,GAAcC,EAAAA,aACnBC,EAAAA,KAAA,CAAK,MAAAH,EAAc,MAAM,OAAO,aAAcD,CAAA,CAAkB,CAAA,EAGnEC,EAAM,QAASI,GAAS,CACtB,OAAOH,EAAUG,EAAK,KAAK,CAAC,EAAE,kBAAA,CAChC,CAAC,CACH,CAAC,EAED,GAAG,gEAAiE,IAAM,CACxE,KAAM,CAAE,UAAAH,GAAcC,EAAAA,aACnBC,EAAAA,KAAA,CAAK,MAAAH,EAAc,MAAM,OAAO,aAAcD,CAAA,CAAkB,CAAA,EAG7DM,EAAOJ,EAAU,OAAO,EAC9BK,EAAAA,UAAU,MAAMD,CAAI,EAEpB,OAAON,CAAgB,EAAE,iBAAA,EACzB,OAAOA,CAAgB,EAAE,qBAAqB,OAAO,SAAA,EAAY,MAAM,CACzE,CAAC,CACH,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
- import { r as o, f as c } from "../../react.esm-2FJSSo-S.js";
2
+ import { r as o, f as c } from "../../react.esm-DVhZgPrH.js";
3
3
  import { Tabs as b } from "./index.es.js";
4
- import "../../index-DCSLk6pp.js";
4
+ import "../../index-Cj9ZvtM1.js";
5
5
  describe("Tabs Component", () => {
6
6
  const e = jest.fn(), a = [
7
7
  { value: "tab1", label: "Tab 1" },
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.es.js","sources":["../../../src/components/Tabs/index.test.tsx"],"sourcesContent":["import { fireEvent, render } from \"@testing-library/react\";\n\nimport { Tabs } from \".\";\n\nimport \"@testing-library/jest-dom\";\n\ndescribe(\"Tabs Component\", () => {\n const mockHandleChange = jest.fn();\n const items = [\n { value: \"tab1\", label: \"Tab 1\" },\n { value: \"tab2\", label: \"Tab 2\" },\n { value: \"tab3\", label: \"Tab 3\" },\n ];\n\n it(\"renders the tabs correctly\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n items.forEach((item) => {\n expect(getByText(item.label)).toBeInTheDocument();\n });\n });\n\n it(\"calls handleChange with the right value when a tab is clicked\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n const tab2 = getByText(\"Tab 2\");\n fireEvent.click(tab2);\n\n expect(mockHandleChange).toHaveBeenCalled();\n expect(mockHandleChange).toHaveBeenCalledWith(expect.anything(), \"tab2\");\n });\n});\n"],"names":["mockHandleChange","items","getByText","render","Tabs","item","tab2","fireEvent"],"mappings":";;;;AAMA,SAAS,kBAAkB,MAAM;AACzB,QAAAA,IAAmB,KAAK,GAAG,GAC3BC,IAAQ;AAAA,IACZ,EAAE,OAAO,QAAQ,OAAO,QAAQ;AAAA,IAChC,EAAE,OAAO,QAAQ,OAAO,QAAQ;AAAA,IAChC,EAAE,OAAO,QAAQ,OAAO,QAAQ;AAAA,EAClC;AAEA,KAAG,8BAA8B,MAAM;AAC/B,UAAA,EAAE,WAAAC,MAAcC;AAAA,wBACnBC,GAAK,EAAA,OAAAH,GAAc,OAAM,QAAO,cAAcD,EAAkB,CAAA;AAAA,IACnE;AAEM,IAAAC,EAAA,QAAQ,CAACI,MAAS;AACtB,aAAOH,EAAUG,EAAK,KAAK,CAAC,EAAE,kBAAkB;AAAA,IAAA,CACjD;AAAA,EAAA,CACF,GAED,GAAG,iEAAiE,MAAM;AAClE,UAAA,EAAE,WAAAH,MAAcC;AAAA,wBACnBC,GAAK,EAAA,OAAAH,GAAc,OAAM,QAAO,cAAcD,EAAkB,CAAA;AAAA,IACnE,GAEMM,IAAOJ,EAAU,OAAO;AAC9B,IAAAK,EAAU,MAAMD,CAAI,GAEb,OAAAN,CAAgB,EAAE,iBAAiB,GAC1C,OAAOA,CAAgB,EAAE,qBAAqB,OAAO,YAAY,MAAM;AAAA,EAAA,CACxE;AACH,CAAC;"}
1
+ {"version":3,"file":"index.test.es.js","sources":["../../../src/components/Tabs/index.test.tsx"],"sourcesContent":["import { fireEvent, render } from \"@testing-library/react\";\n\nimport { Tabs } from \".\";\n\nimport \"@testing-library/jest-dom\";\n\ndescribe(\"Tabs Component\", () => {\n const mockHandleChange = jest.fn();\n const items = [\n { value: \"tab1\", label: \"Tab 1\" },\n { value: \"tab2\", label: \"Tab 2\" },\n { value: \"tab3\", label: \"Tab 3\" },\n ];\n\n it(\"renders the tabs correctly\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n items.forEach((item) => {\n expect(getByText(item.label)).toBeInTheDocument();\n });\n });\n\n it(\"calls handleChange with the right value when a tab is clicked\", () => {\n const { getByText } = render(\n <Tabs items={items} value=\"tab1\" handleChange={mockHandleChange} />,\n );\n\n const tab2 = getByText(\"Tab 2\");\n fireEvent.click(tab2);\n\n expect(mockHandleChange).toHaveBeenCalled();\n expect(mockHandleChange).toHaveBeenCalledWith(expect.anything(), \"tab2\");\n });\n});\n"],"names":["mockHandleChange","items","getByText","render","Tabs","item","tab2","fireEvent"],"mappings":";;;;AAMA,SAAS,kBAAkB,MAAM;AAC/B,QAAMA,IAAmB,KAAK,GAAA,GACxBC,IAAQ;AAAA,IACZ,EAAE,OAAO,QAAQ,OAAO,QAAA;AAAA,IACxB,EAAE,OAAO,QAAQ,OAAO,QAAA;AAAA,IACxB,EAAE,OAAO,QAAQ,OAAO,QAAA;AAAA,EAAQ;AAGlC,KAAG,8BAA8B,MAAM;AACrC,UAAM,EAAE,WAAAC,MAAcC;AAAA,wBACnBC,GAAA,EAAK,OAAAH,GAAc,OAAM,QAAO,cAAcD,EAAA,CAAkB;AAAA,IAAA;AAGnE,IAAAC,EAAM,QAAQ,CAACI,MAAS;AACtB,aAAOH,EAAUG,EAAK,KAAK,CAAC,EAAE,kBAAA;AAAA,IAChC,CAAC;AAAA,EACH,CAAC,GAED,GAAG,iEAAiE,MAAM;AACxE,UAAM,EAAE,WAAAH,MAAcC;AAAA,wBACnBC,GAAA,EAAK,OAAAH,GAAc,OAAM,QAAO,cAAcD,EAAA,CAAkB;AAAA,IAAA,GAG7DM,IAAOJ,EAAU,OAAO;AAC9B,IAAAK,EAAU,MAAMD,CAAI,GAEpB,OAAON,CAAgB,EAAE,iBAAA,GACzB,OAAOA,CAAgB,EAAE,qBAAqB,OAAO,SAAA,GAAY,MAAM;AAAA,EACzE,CAAC;AACH,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/Textarea/index.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport type { UseFormRegisterReturn } from \"react-hook-form\";\n\nimport styles from \"./index.module.scss\";\n\ntype Props = {\n id?: string;\n register?: UseFormRegisterReturn;\n placeholder?: string;\n rows?: number;\n errorMessage?: string;\n disabled?: boolean;\n};\n\nexport const TextArea = (props: Props) => {\n const { id, register, placeholder, rows, errorMessage, disabled } = props;\n\n return (\n <div className={styles.inputContainer}>\n <textarea\n id={id}\n {...register}\n className={classNames(styles.textArea, {\n [styles.error]: errorMessage,\n })}\n placeholder={placeholder}\n rows={rows}\n disabled={disabled}\n />\n {errorMessage && (\n <small className={styles.errorMessage}>{errorMessage}</small>\n )}\n </div>\n );\n};\n\nTextArea.defaultProps = {\n rows: 3,\n disabled: false,\n};\n\nexport default TextArea;\n"],"names":["TextArea","props","id","register","placeholder","rows","errorMessage","disabled","jsxs","styles","jsx","classNames"],"mappings":"iUAcaA,EAAYC,GAAiB,CACxC,KAAM,CAAE,GAAAC,EAAI,SAAAC,EAAU,YAAAC,EAAa,KAAAC,EAAM,aAAAC,EAAc,SAAAC,GAAaN,EAEpE,OACGO,EAAAA,KAAA,MAAA,CAAI,UAAWC,EAAO,eACrB,SAAA,CAAAC,EAAA,IAAC,WAAA,CACC,GAAAR,EACC,GAAGC,EACJ,UAAWQ,EAAWF,EAAO,SAAU,CACrC,CAACA,EAAO,KAAK,EAAGH,CAAA,CACjB,EACD,YAAAF,EACA,KAAAC,EACA,SAAAE,CAAA,CACF,EACCD,GACEI,EAAAA,IAAA,QAAA,CAAM,UAAWD,EAAO,aAAe,SAAaH,CAAA,CAAA,CAAA,EAEzD,CAEJ,EAEAN,EAAS,aAAe,CACtB,KAAM,EACN,SAAU,EACZ"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/Textarea/index.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport type { UseFormRegisterReturn } from \"react-hook-form\";\n\nimport styles from \"./index.module.scss\";\n\ntype Props = {\n id?: string;\n register?: UseFormRegisterReturn;\n placeholder?: string;\n rows?: number;\n errorMessage?: string;\n disabled?: boolean;\n};\n\nexport const TextArea = (props: Props) => {\n const { id, register, placeholder, rows, errorMessage, disabled } = props;\n\n return (\n <div className={styles.inputContainer}>\n <textarea\n id={id}\n {...register}\n className={classNames(styles.textArea, {\n [styles.error]: errorMessage,\n })}\n placeholder={placeholder}\n rows={rows}\n disabled={disabled}\n />\n {errorMessage && (\n <small className={styles.errorMessage}>{errorMessage}</small>\n )}\n </div>\n );\n};\n\nTextArea.defaultProps = {\n rows: 3,\n disabled: false,\n};\n\nexport default TextArea;\n"],"names":["TextArea","props","id","register","placeholder","rows","errorMessage","disabled","jsxs","styles","jsx","classNames"],"mappings":"iUAcaA,EAAYC,GAAiB,CACxC,KAAM,CAAE,GAAAC,EAAI,SAAAC,EAAU,YAAAC,EAAa,KAAAC,EAAM,aAAAC,EAAc,SAAAC,GAAaN,EAEpE,OACEO,EAAAA,KAAC,MAAA,CAAI,UAAWC,EAAO,eACrB,SAAA,CAAAC,EAAAA,IAAC,WAAA,CACC,GAAAR,EACC,GAAGC,EACJ,UAAWQ,EAAWF,EAAO,SAAU,CACrC,CAACA,EAAO,KAAK,EAAGH,CAAA,CACjB,EACD,YAAAF,EACA,KAAAC,EACA,SAAAE,CAAA,CAAA,EAEDD,GACCI,EAAAA,IAAC,QAAA,CAAM,UAAWD,EAAO,aAAe,SAAAH,CAAA,CAAa,CAAA,EAEzD,CAEJ,EAEAN,EAAS,aAAe,CACtB,KAAM,EACN,SAAU,EACZ"}