@jigowatts/jigowatts-ui 1.1.7 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (452) hide show
  1. package/dist/_commonjsHelpers-DKOUU3wS.cjs +2 -0
  2. package/dist/_commonjsHelpers-DKOUU3wS.cjs.map +1 -0
  3. package/dist/_commonjsHelpers-DaMA6jEr.js +9 -0
  4. package/dist/_commonjsHelpers-DaMA6jEr.js.map +1 -0
  5. package/dist/assets/index10.css +1 -1
  6. package/dist/assets/index11.css +1 -1
  7. package/dist/assets/index12.css +1 -1
  8. package/dist/assets/index13.css +1 -1
  9. package/dist/assets/index14.css +1 -1
  10. package/dist/assets/index15.css +1 -1
  11. package/dist/assets/index16.css +1 -1
  12. package/dist/assets/index17.css +1 -1
  13. package/dist/assets/index18.css +1 -1
  14. package/dist/assets/index19.css +1 -1
  15. package/dist/assets/index20.css +1 -1
  16. package/dist/assets/index21.css +1 -1
  17. package/dist/assets/index22.css +1 -1
  18. package/dist/assets/index23.css +1 -1
  19. package/dist/assets/index24.css +1 -1
  20. package/dist/assets/index25.css +1 -1
  21. package/dist/assets/index26.css +1 -1
  22. package/dist/assets/index27.css +1 -1
  23. package/dist/assets/index28.css +1 -1
  24. package/dist/assets/index29.css +1 -1
  25. package/dist/assets/index30.css +1 -1
  26. package/dist/assets/index31.css +1 -1
  27. package/dist/assets/index32.css +1 -1
  28. package/dist/assets/index33.css +1 -1
  29. package/dist/assets/index34.css +1 -1
  30. package/dist/assets/index4.css +1 -1
  31. package/dist/assets/index5.css +1 -1
  32. package/dist/assets/index6.css +1 -1
  33. package/dist/assets/index7.css +1 -1
  34. package/dist/assets/index8.css +1 -1
  35. package/dist/assets/index9.css +1 -1
  36. package/dist/components/Button/index.cjs.js +1 -1
  37. package/dist/components/Button/index.cjs.js.map +1 -1
  38. package/dist/components/Button/index.es.js +5 -5
  39. package/dist/components/Button/index.es.js.map +1 -1
  40. package/dist/components/Button/index.test.cjs.js +1 -1
  41. package/dist/components/Button/index.test.cjs.js.map +1 -1
  42. package/dist/components/Button/index.test.es.js +6 -6
  43. package/dist/components/Button/index.test.es.js.map +1 -1
  44. package/dist/components/Card/index.cjs.js +1 -1
  45. package/dist/components/Card/index.cjs.js.map +1 -1
  46. package/dist/components/Card/index.es.js +27 -27
  47. package/dist/components/Card/index.es.js.map +1 -1
  48. package/dist/components/Card/index.test.cjs.js +1 -1
  49. package/dist/components/Card/index.test.cjs.js.map +1 -1
  50. package/dist/components/Card/index.test.es.js +18 -18
  51. package/dist/components/Card/index.test.es.js.map +1 -1
  52. package/dist/components/CardWithTitle/index.cjs.js +1 -1
  53. package/dist/components/CardWithTitle/index.cjs.js.map +1 -1
  54. package/dist/components/CardWithTitle/index.es.js +14 -14
  55. package/dist/components/CardWithTitle/index.es.js.map +1 -1
  56. package/dist/components/CardWithTitle/index.test.cjs.js +1 -1
  57. package/dist/components/CardWithTitle/index.test.cjs.js.map +1 -1
  58. package/dist/components/CardWithTitle/index.test.es.js +7 -7
  59. package/dist/components/CardWithTitle/index.test.es.js.map +1 -1
  60. package/dist/components/CustomLink/index.cjs.js +1 -1
  61. package/dist/components/CustomLink/index.cjs.js.map +1 -1
  62. package/dist/components/CustomLink/index.es.js +7 -7
  63. package/dist/components/CustomLink/index.es.js.map +1 -1
  64. package/dist/components/CustomLink/index.test.cjs.js +1 -1
  65. package/dist/components/CustomLink/index.test.cjs.js.map +1 -1
  66. package/dist/components/CustomLink/index.test.es.js +9 -9
  67. package/dist/components/CustomLink/index.test.es.js.map +1 -1
  68. package/dist/components/DataTable/index.cjs.js +1 -1
  69. package/dist/components/DataTable/index.cjs.js.map +1 -1
  70. package/dist/components/DataTable/index.es.js +91 -96
  71. package/dist/components/DataTable/index.es.js.map +1 -1
  72. package/dist/components/DataTable/index.test.cjs.js +1 -1
  73. package/dist/components/DataTable/index.test.cjs.js.map +1 -1
  74. package/dist/components/DataTable/index.test.es.js +25 -25
  75. package/dist/components/DataTable/index.test.es.js.map +1 -1
  76. package/dist/components/DatePickerController/index.cjs.js +1 -1
  77. package/dist/components/DatePickerController/index.cjs.js.map +1 -1
  78. package/dist/components/DatePickerController/index.es.js +29 -28
  79. package/dist/components/DatePickerController/index.es.js.map +1 -1
  80. package/dist/components/DatePickerController/index.test.cjs.js +1 -1
  81. package/dist/components/DatePickerController/index.test.cjs.js.map +1 -1
  82. package/dist/components/DatePickerController/index.test.es.js +3 -3
  83. package/dist/components/DatePickerController/index.test.es.js.map +1 -1
  84. package/dist/components/ErrorMessage/index.cjs.js +1 -1
  85. package/dist/components/ErrorMessage/index.cjs.js.map +1 -1
  86. package/dist/components/ErrorMessage/index.es.js +7 -7
  87. package/dist/components/ErrorMessage/index.es.js.map +1 -1
  88. package/dist/components/ErrorMessage/index.test.cjs.js +1 -1
  89. package/dist/components/ErrorMessage/index.test.cjs.js.map +1 -1
  90. package/dist/components/ErrorMessage/index.test.es.js +7 -7
  91. package/dist/components/ErrorMessage/index.test.es.js.map +1 -1
  92. package/dist/components/EvseStateLabel/index.cjs.js +1 -1
  93. package/dist/components/EvseStateLabel/index.cjs.js.map +1 -1
  94. package/dist/components/EvseStateLabel/index.es.js +6 -6
  95. package/dist/components/EvseStateLabel/index.es.js.map +1 -1
  96. package/dist/components/FlexButtons/index.cjs.js +1 -1
  97. package/dist/components/FlexButtons/index.cjs.js.map +1 -1
  98. package/dist/components/FlexButtons/index.es.js +6 -6
  99. package/dist/components/FlexButtons/index.es.js.map +1 -1
  100. package/dist/components/FlexButtons/index.test.cjs.js +1 -1
  101. package/dist/components/FlexButtons/index.test.cjs.js.map +1 -1
  102. package/dist/components/FlexButtons/index.test.es.js +15 -15
  103. package/dist/components/FlexButtons/index.test.es.js.map +1 -1
  104. package/dist/components/Form/index.cjs.js +1 -1
  105. package/dist/components/Form/index.cjs.js.map +1 -1
  106. package/dist/components/Form/index.es.js +8 -8
  107. package/dist/components/Form/index.es.js.map +1 -1
  108. package/dist/components/Form/index.test.cjs.js +1 -1
  109. package/dist/components/Form/index.test.cjs.js.map +1 -1
  110. package/dist/components/Form/index.test.es.js +15 -15
  111. package/dist/components/Form/index.test.es.js.map +1 -1
  112. package/dist/components/FormItem/index.cjs.js +1 -1
  113. package/dist/components/FormItem/index.cjs.js.map +1 -1
  114. package/dist/components/FormItem/index.es.js +10 -10
  115. package/dist/components/FormItem/index.es.js.map +1 -1
  116. package/dist/components/FormItem/index.test.cjs.js +1 -1
  117. package/dist/components/FormItem/index.test.cjs.js.map +1 -1
  118. package/dist/components/FormItem/index.test.es.js +7 -7
  119. package/dist/components/FormItem/index.test.es.js.map +1 -1
  120. package/dist/components/FormTitle/index.cjs.js +1 -1
  121. package/dist/components/FormTitle/index.cjs.js.map +1 -1
  122. package/dist/components/FormTitle/index.es.js +7 -7
  123. package/dist/components/FormTitle/index.es.js.map +1 -1
  124. package/dist/components/FormTitle/index.test.cjs.js +1 -1
  125. package/dist/components/FormTitle/index.test.cjs.js.map +1 -1
  126. package/dist/components/FormTitle/index.test.es.js +8 -8
  127. package/dist/components/FormTitle/index.test.es.js.map +1 -1
  128. package/dist/components/HStack/index.cjs.js +1 -1
  129. package/dist/components/HStack/index.cjs.js.map +1 -1
  130. package/dist/components/HStack/index.es.js +5 -5
  131. package/dist/components/HStack/index.es.js.map +1 -1
  132. package/dist/components/HStack/index.test.cjs.js +1 -1
  133. package/dist/components/HStack/index.test.cjs.js.map +1 -1
  134. package/dist/components/HStack/index.test.es.js +8 -8
  135. package/dist/components/HStack/index.test.es.js.map +1 -1
  136. package/dist/components/HtmlRenderer/index.cjs.js +1 -1
  137. package/dist/components/HtmlRenderer/index.es.js +2 -2
  138. package/dist/components/HtmlRenderer/index.test.cjs.js +1 -1
  139. package/dist/components/HtmlRenderer/index.test.cjs.js.map +1 -1
  140. package/dist/components/HtmlRenderer/index.test.es.js +7 -7
  141. package/dist/components/HtmlRenderer/index.test.es.js.map +1 -1
  142. package/dist/components/Input/index.cjs.js +1 -1
  143. package/dist/components/Input/index.cjs.js.map +1 -1
  144. package/dist/components/Input/index.es.js +15 -15
  145. package/dist/components/Input/index.es.js.map +1 -1
  146. package/dist/components/Input/index.test.cjs.js +1 -1
  147. package/dist/components/Input/index.test.cjs.js.map +1 -1
  148. package/dist/components/Input/index.test.es.js +9 -9
  149. package/dist/components/Input/index.test.es.js.map +1 -1
  150. package/dist/components/InputController/index.cjs.js +1 -1
  151. package/dist/components/InputController/index.cjs.js.map +1 -1
  152. package/dist/components/InputController/index.es.js +29 -29
  153. package/dist/components/InputController/index.es.js.map +1 -1
  154. package/dist/components/InputController/index.test.cjs.js +1 -1
  155. package/dist/components/InputController/index.test.cjs.js.map +1 -1
  156. package/dist/components/InputController/index.test.es.js +14 -14
  157. package/dist/components/InputController/index.test.es.js.map +1 -1
  158. package/dist/components/InputGroup/index.cjs.js +1 -1
  159. package/dist/components/InputGroup/index.cjs.js.map +1 -1
  160. package/dist/components/InputGroup/index.es.js +7 -7
  161. package/dist/components/InputGroup/index.es.js.map +1 -1
  162. package/dist/components/InputGroup/index.test.cjs.js +1 -1
  163. package/dist/components/InputGroup/index.test.cjs.js.map +1 -1
  164. package/dist/components/InputGroup/index.test.es.js +7 -7
  165. package/dist/components/InputGroup/index.test.es.js.map +1 -1
  166. package/dist/components/Label/index.cjs.js +1 -1
  167. package/dist/components/Label/index.cjs.js.map +1 -1
  168. package/dist/components/Label/index.es.js +8 -8
  169. package/dist/components/Label/index.es.js.map +1 -1
  170. package/dist/components/Label/index.test.cjs.js +1 -1
  171. package/dist/components/Label/index.test.cjs.js.map +1 -1
  172. package/dist/components/Label/index.test.es.js +7 -7
  173. package/dist/components/Label/index.test.es.js.map +1 -1
  174. package/dist/components/LabeledContent/index.cjs.js +1 -1
  175. package/dist/components/LabeledContent/index.cjs.js.map +1 -1
  176. package/dist/components/LabeledContent/index.es.js +17 -17
  177. package/dist/components/LabeledContent/index.es.js.map +1 -1
  178. package/dist/components/LabeledContent/index.test.cjs.js +1 -1
  179. package/dist/components/LabeledContent/index.test.cjs.js.map +1 -1
  180. package/dist/components/LabeledContent/index.test.es.js +4 -4
  181. package/dist/components/LabeledContent/index.test.es.js.map +1 -1
  182. package/dist/components/LoadingOverlay/index.cjs.js +1 -5
  183. package/dist/components/LoadingOverlay/index.cjs.js.map +1 -1
  184. package/dist/components/LoadingOverlay/index.es.js +7 -127
  185. package/dist/components/LoadingOverlay/index.es.js.map +1 -1
  186. package/dist/components/LoadingOverlay/index.test.cjs.js +1 -1
  187. package/dist/components/LoadingOverlay/index.test.cjs.js.map +1 -1
  188. package/dist/components/LoadingOverlay/index.test.es.js +7 -7
  189. package/dist/components/LoadingOverlay/index.test.es.js.map +1 -1
  190. package/dist/components/Map/index.cjs.js +2 -2
  191. package/dist/components/Map/index.cjs.js.map +1 -1
  192. package/dist/components/Map/index.es.js +174 -174
  193. package/dist/components/Map/index.es.js.map +1 -1
  194. package/dist/components/MaxWidthContainer/index.cjs.js +1 -1
  195. package/dist/components/MaxWidthContainer/index.cjs.js.map +1 -1
  196. package/dist/components/MaxWidthContainer/index.es.js +9 -9
  197. package/dist/components/MaxWidthContainer/index.es.js.map +1 -1
  198. package/dist/components/MaxWidthContainer/index.test.cjs.js +1 -1
  199. package/dist/components/MaxWidthContainer/index.test.cjs.js.map +1 -1
  200. package/dist/components/MaxWidthContainer/index.test.es.js +9 -9
  201. package/dist/components/MaxWidthContainer/index.test.es.js.map +1 -1
  202. package/dist/components/NumericFieldController/index.cjs.js +1 -1
  203. package/dist/components/NumericFieldController/index.cjs.js.map +1 -1
  204. package/dist/components/NumericFieldController/index.es.js +31 -31
  205. package/dist/components/NumericFieldController/index.es.js.map +1 -1
  206. package/dist/components/NumericFieldController/index.test.cjs.js +1 -1
  207. package/dist/components/NumericFieldController/index.test.cjs.js.map +1 -1
  208. package/dist/components/NumericFieldController/index.test.es.js +3 -3
  209. package/dist/components/NumericFieldController/index.test.es.js.map +1 -1
  210. package/dist/components/OfflineLabel/index.cjs.js +1 -1
  211. package/dist/components/OfflineLabel/index.cjs.js.map +1 -1
  212. package/dist/components/OfflineLabel/index.es.js +12 -23
  213. package/dist/components/OfflineLabel/index.es.js.map +1 -1
  214. package/dist/components/PageSizeSelector/index.cjs.js +1 -1
  215. package/dist/components/PageSizeSelector/index.cjs.js.map +1 -1
  216. package/dist/components/PageSizeSelector/index.es.js +25 -25
  217. package/dist/components/PageSizeSelector/index.es.js.map +1 -1
  218. package/dist/components/Pagination/index.cjs.js +2 -1
  219. package/dist/components/Pagination/index.cjs.js.map +1 -1
  220. package/dist/components/Pagination/index.es.js +305 -5
  221. package/dist/components/Pagination/index.es.js.map +1 -1
  222. package/dist/components/Pagination/index.test.cjs.js +1 -1
  223. package/dist/components/Pagination/index.test.cjs.js.map +1 -1
  224. package/dist/components/Pagination/index.test.es.js +5 -5
  225. package/dist/components/Pagination/index.test.es.js.map +1 -1
  226. package/dist/components/PasswordInputController/index.cjs.js +1 -1
  227. package/dist/components/PasswordInputController/index.cjs.js.map +1 -1
  228. package/dist/components/PasswordInputController/index.es.js +31 -47
  229. package/dist/components/PasswordInputController/index.es.js.map +1 -1
  230. package/dist/components/PasswordInputController/index.test.cjs.js +1 -1
  231. package/dist/components/PasswordInputController/index.test.cjs.js.map +1 -1
  232. package/dist/components/PasswordInputController/index.test.es.js +4 -4
  233. package/dist/components/PasswordInputController/index.test.es.js.map +1 -1
  234. package/dist/components/RadioButton/index.cjs.js +1 -1
  235. package/dist/components/RadioButton/index.es.js +2 -2
  236. package/dist/components/RadioButton/index.test.cjs.js +1 -1
  237. package/dist/components/RadioButton/index.test.cjs.js.map +1 -1
  238. package/dist/components/RadioButton/index.test.es.js +18 -18
  239. package/dist/components/RadioButton/index.test.es.js.map +1 -1
  240. package/dist/components/RadioGroupController/index.cjs.js +1 -1
  241. package/dist/components/RadioGroupController/index.cjs.js.map +1 -1
  242. package/dist/components/RadioGroupController/index.es.js +19 -19
  243. package/dist/components/RadioGroupController/index.es.js.map +1 -1
  244. package/dist/components/RadioGroupController/index.test.cjs.js +1 -1
  245. package/dist/components/RadioGroupController/index.test.cjs.js.map +1 -1
  246. package/dist/components/RadioGroupController/index.test.es.js +4 -4
  247. package/dist/components/RadioGroupController/index.test.es.js.map +1 -1
  248. package/dist/components/RangeDatePicker/index.cjs.js +1 -1
  249. package/dist/components/RangeDatePicker/index.cjs.js.map +1 -1
  250. package/dist/components/RangeDatePicker/index.es.js +12 -11
  251. package/dist/components/RangeDatePicker/index.es.js.map +1 -1
  252. package/dist/components/RangeDatePickerController/index.cjs.js +1 -1
  253. package/dist/components/RangeDatePickerController/index.cjs.js.map +1 -1
  254. package/dist/components/RangeDatePickerController/index.es.js +32 -31
  255. package/dist/components/RangeDatePickerController/index.es.js.map +1 -1
  256. package/dist/components/RangeDatePickerController/index.test.cjs.js +1 -1
  257. package/dist/components/RangeDatePickerController/index.test.cjs.js.map +1 -1
  258. package/dist/components/RangeDatePickerController/index.test.es.js +8 -8
  259. package/dist/components/RangeDatePickerController/index.test.es.js.map +1 -1
  260. package/dist/components/ReportCard/index.cjs.js +1 -1
  261. package/dist/components/ReportCard/index.cjs.js.map +1 -1
  262. package/dist/components/ReportCard/index.es.js +17 -17
  263. package/dist/components/ReportCard/index.es.js.map +1 -1
  264. package/dist/components/ReportCard/index.test.cjs.js +1 -1
  265. package/dist/components/ReportCard/index.test.cjs.js.map +1 -1
  266. package/dist/components/ReportCard/index.test.es.js +8 -8
  267. package/dist/components/ReportCard/index.test.es.js.map +1 -1
  268. package/dist/components/ReportChart/index.cjs.js +1 -1
  269. package/dist/components/ReportChart/index.cjs.js.map +1 -1
  270. package/dist/components/ReportChart/index.es.js +22 -22
  271. package/dist/components/ReportChart/index.es.js.map +1 -1
  272. package/dist/components/ReportChartMulti/index.cjs.js +1 -1
  273. package/dist/components/ReportChartMulti/index.cjs.js.map +1 -1
  274. package/dist/components/ReportChartMulti/index.es.js +26 -26
  275. package/dist/components/ReportChartMulti/index.es.js.map +1 -1
  276. package/dist/components/ReportChartMulti/index.test.cjs.js +1 -1
  277. package/dist/components/ReportChartMulti/index.test.cjs.js.map +1 -1
  278. package/dist/components/ReportChartMulti/index.test.es.js +7 -7
  279. package/dist/components/ReportChartMulti/index.test.es.js.map +1 -1
  280. package/dist/components/ScrollableDialog/index.cjs.js +1 -1
  281. package/dist/components/ScrollableDialog/index.cjs.js.map +1 -1
  282. package/dist/components/ScrollableDialog/index.es.js +15 -15
  283. package/dist/components/ScrollableDialog/index.es.js.map +1 -1
  284. package/dist/components/ScrollableDialog/index.test.cjs.js +1 -1
  285. package/dist/components/ScrollableDialog/index.test.cjs.js.map +1 -1
  286. package/dist/components/ScrollableDialog/index.test.es.js +19 -20
  287. package/dist/components/ScrollableDialog/index.test.es.js.map +1 -1
  288. package/dist/components/SearchForm/index.cjs.js +1 -1
  289. package/dist/components/SearchForm/index.cjs.js.map +1 -1
  290. package/dist/components/SearchForm/index.es.js +39 -48
  291. package/dist/components/SearchForm/index.es.js.map +1 -1
  292. package/dist/components/SelectBox/index.cjs.js +1 -1
  293. package/dist/components/SelectBox/index.es.js +2 -2
  294. package/dist/components/SelectBox/index.test.cjs.js +1 -1
  295. package/dist/components/SelectBox/index.test.cjs.js.map +1 -1
  296. package/dist/components/SelectBox/index.test.es.js +16 -16
  297. package/dist/components/SelectBox/index.test.es.js.map +1 -1
  298. package/dist/components/SelectBoxController/index.cjs.js +1 -1
  299. package/dist/components/SelectBoxController/index.cjs.js.map +1 -1
  300. package/dist/components/SelectBoxController/index.es.js +44 -44
  301. package/dist/components/SelectBoxController/index.es.js.map +1 -1
  302. package/dist/components/SelectBoxController/index.test.cjs.js +1 -1
  303. package/dist/components/SelectBoxController/index.test.cjs.js.map +1 -1
  304. package/dist/components/SelectBoxController/index.test.es.js +12 -12
  305. package/dist/components/SelectBoxController/index.test.es.js.map +1 -1
  306. package/dist/components/SideMenu/index.cjs.js +1 -14
  307. package/dist/components/SideMenu/index.cjs.js.map +1 -1
  308. package/dist/components/SideMenu/index.es.js +61 -1745
  309. package/dist/components/SideMenu/index.es.js.map +1 -1
  310. package/dist/components/SideMenu/index.test.cjs.js +1 -1
  311. package/dist/components/SideMenu/index.test.cjs.js.map +1 -1
  312. package/dist/components/SideMenu/index.test.es.js +11 -11
  313. package/dist/components/SideMenu/index.test.es.js.map +1 -1
  314. package/dist/components/SpinnerButton/index.cjs.js +1 -1
  315. package/dist/components/SpinnerButton/index.cjs.js.map +1 -1
  316. package/dist/components/SpinnerButton/index.es.js +3 -3
  317. package/dist/components/SpinnerButton/index.es.js.map +1 -1
  318. package/dist/components/SpinnerButton/index.test.cjs.js +1 -1
  319. package/dist/components/SpinnerButton/index.test.cjs.js.map +1 -1
  320. package/dist/components/SpinnerButton/index.test.es.js +9 -9
  321. package/dist/components/SpinnerButton/index.test.es.js.map +1 -1
  322. package/dist/components/SubMenu/index.cjs.js +1 -1
  323. package/dist/components/SubMenu/index.cjs.js.map +1 -1
  324. package/dist/components/SubMenu/index.es.js +32 -32
  325. package/dist/components/SubMenu/index.es.js.map +1 -1
  326. package/dist/components/SubMenu/index.test.cjs.js +1 -1
  327. package/dist/components/SubMenu/index.test.cjs.js.map +1 -1
  328. package/dist/components/SubMenu/index.test.es.js +16 -16
  329. package/dist/components/SubMenu/index.test.es.js.map +1 -1
  330. package/dist/components/Tabs/index.cjs.js +1 -1
  331. package/dist/components/Tabs/index.cjs.js.map +1 -1
  332. package/dist/components/Tabs/index.es.js +18 -18
  333. package/dist/components/Tabs/index.es.js.map +1 -1
  334. package/dist/components/Tabs/index.test.cjs.js +1 -1
  335. package/dist/components/Tabs/index.test.cjs.js.map +1 -1
  336. package/dist/components/Tabs/index.test.es.js +13 -13
  337. package/dist/components/Tabs/index.test.es.js.map +1 -1
  338. package/dist/components/Textarea/index.cjs.js +1 -1
  339. package/dist/components/Textarea/index.cjs.js.map +1 -1
  340. package/dist/components/Textarea/index.es.js +15 -15
  341. package/dist/components/Textarea/index.es.js.map +1 -1
  342. package/dist/components/Textarea/index.test.cjs.js +1 -1
  343. package/dist/components/Textarea/index.test.cjs.js.map +1 -1
  344. package/dist/components/Textarea/index.test.es.js +7 -7
  345. package/dist/components/Textarea/index.test.es.js.map +1 -1
  346. package/dist/components/Title/index.cjs.js +1 -1
  347. package/dist/components/Title/index.cjs.js.map +1 -1
  348. package/dist/components/Title/index.es.js +8 -8
  349. package/dist/components/Title/index.es.js.map +1 -1
  350. package/dist/components/Title/index.test.cjs.js +1 -1
  351. package/dist/components/Title/index.test.cjs.js.map +1 -1
  352. package/dist/components/Title/index.test.es.js +6 -6
  353. package/dist/components/Title/index.test.es.js.map +1 -1
  354. package/dist/components/ToggleButton/index.cjs.js +1 -1
  355. package/dist/components/ToggleButton/index.cjs.js.map +1 -1
  356. package/dist/components/ToggleButton/index.es.js +22 -22
  357. package/dist/components/ToggleButton/index.es.js.map +1 -1
  358. package/dist/components/ToggleButton/index.test.cjs.js +1 -1
  359. package/dist/components/ToggleButton/index.test.cjs.js.map +1 -1
  360. package/dist/components/ToggleButton/index.test.es.js +10 -10
  361. package/dist/components/ToggleButton/index.test.es.js.map +1 -1
  362. package/dist/components/VStack/index.cjs.js +1 -1
  363. package/dist/components/VStack/index.cjs.js.map +1 -1
  364. package/dist/components/VStack/index.es.js +3 -3
  365. package/dist/components/VStack/index.es.js.map +1 -1
  366. package/dist/components/VStack/index.test.cjs.js +1 -1
  367. package/dist/components/VStack/index.test.cjs.js.map +1 -1
  368. package/dist/components/VStack/index.test.es.js +8 -8
  369. package/dist/components/VStack/index.test.es.js.map +1 -1
  370. package/dist/index-B663CLQ0.cjs +2 -0
  371. package/dist/{index-DOtVVz6D.cjs.map → index-B663CLQ0.cjs.map} +1 -1
  372. package/dist/{index-DwYqI3bz.cjs → index-BHsZ5xlA.cjs} +2 -2
  373. package/dist/{index-DwYqI3bz.cjs.map → index-BHsZ5xlA.cjs.map} +1 -1
  374. package/dist/{index-DD-KSgEi.cjs → index-BoNIpBs7.cjs} +4 -4
  375. package/dist/{index-DD-KSgEi.cjs.map → index-BoNIpBs7.cjs.map} +1 -1
  376. package/dist/{index-0ocAFlwM.cjs → index-BpMSrIOq.cjs} +2 -2
  377. package/dist/{index-0ocAFlwM.cjs.map → index-BpMSrIOq.cjs.map} +1 -1
  378. package/dist/{index-DgMRcQ1J.js → index-BqN32Ptm.js} +6 -6
  379. package/dist/{index-DgMRcQ1J.js.map → index-BqN32Ptm.js.map} +1 -1
  380. package/dist/{index-CKlK963j.cjs → index-C50NsnJO.cjs} +2 -2
  381. package/dist/{index-CKlK963j.cjs.map → index-C50NsnJO.cjs.map} +1 -1
  382. package/dist/index-CCbJ_2yU.cjs +2 -0
  383. package/dist/{index-CC8i8yVF.cjs.map → index-CCbJ_2yU.cjs.map} +1 -1
  384. package/dist/index-CSiE_l9r.js +51 -0
  385. package/dist/{index-BFpfBoIf.js.map → index-CSiE_l9r.js.map} +1 -1
  386. package/dist/{index-Cm_1lb-3.js → index-D5b3AasF.js} +2 -2
  387. package/dist/{index-Cm_1lb-3.js.map → index-D5b3AasF.js.map} +1 -1
  388. package/dist/{index-BWKwvsbv.js → index-DCSLk6pp.js} +2 -2
  389. package/dist/{index-BWKwvsbv.js.map → index-DCSLk6pp.js.map} +1 -1
  390. package/dist/{index-LAxM3Vwk.js → index-ZP4xL6Dt.js} +3 -3
  391. package/dist/{index-LAxM3Vwk.js.map → index-ZP4xL6Dt.js.map} +1 -1
  392. package/dist/index-pr0ncuNy.js +35 -0
  393. package/dist/{index-B4IV6BB3.js.map → index-pr0ncuNy.js.map} +1 -1
  394. package/dist/index.cjs.js +1 -1
  395. package/dist/index.es.js +90 -87
  396. package/dist/index.es.js.map +1 -1
  397. package/dist/{react.esm-BL1KU4o5.js → react.esm-2FJSSo-S.js} +2829 -3959
  398. package/dist/react.esm-2FJSSo-S.js.map +1 -0
  399. package/dist/react.esm-CiMn0Rnx.cjs +73 -0
  400. package/dist/react.esm-CiMn0Rnx.cjs.map +1 -0
  401. package/package.json +1 -1
  402. package/dist/Clear-CyYcHjou.js +0 -15
  403. package/dist/Clear-CyYcHjou.js.map +0 -1
  404. package/dist/Clear-DsR7N4Q8.cjs +0 -2
  405. package/dist/Clear-DsR7N4Q8.cjs.map +0 -1
  406. package/dist/ExpandMore-BwxQSgiA.js +0 -15
  407. package/dist/ExpandMore-BwxQSgiA.js.map +0 -1
  408. package/dist/ExpandMore-WGCtrXpN.cjs +0 -2
  409. package/dist/ExpandMore-WGCtrXpN.cjs.map +0 -1
  410. package/dist/LocalizationProvider-4-QUqEIG.js +0 -161
  411. package/dist/LocalizationProvider-4-QUqEIG.js.map +0 -1
  412. package/dist/LocalizationProvider-CVNn6-0m.cjs +0 -3
  413. package/dist/LocalizationProvider-CVNn6-0m.cjs.map +0 -1
  414. package/dist/_commonjsHelpers-BkfeUUK-.js +0 -29
  415. package/dist/_commonjsHelpers-BkfeUUK-.js.map +0 -1
  416. package/dist/_commonjsHelpers-DwTZ_eVU.cjs +0 -2
  417. package/dist/_commonjsHelpers-DwTZ_eVU.cjs.map +0 -1
  418. package/dist/createSvgIcon-DO5XgE_n.cjs +0 -28
  419. package/dist/createSvgIcon-DO5XgE_n.cjs.map +0 -1
  420. package/dist/createSvgIcon-DhxOl24O.js +0 -1550
  421. package/dist/createSvgIcon-DhxOl24O.js.map +0 -1
  422. package/dist/extends-GhUDsoav.cjs +0 -2
  423. package/dist/extends-GhUDsoav.cjs.map +0 -1
  424. package/dist/extends-hS2Bh-Yp.js +0 -13
  425. package/dist/extends-hS2Bh-Yp.js.map +0 -1
  426. package/dist/index-B4IV6BB3.js +0 -35
  427. package/dist/index-BFpfBoIf.js +0 -51
  428. package/dist/index-BPja4eo8.cjs +0 -3
  429. package/dist/index-BPja4eo8.cjs.map +0 -1
  430. package/dist/index-CC8i8yVF.cjs +0 -2
  431. package/dist/index-COE1iIM7.cjs +0 -4
  432. package/dist/index-COE1iIM7.cjs.map +0 -1
  433. package/dist/index-DOtVVz6D.cjs +0 -2
  434. package/dist/index-F101coZ0.js +0 -4355
  435. package/dist/index-F101coZ0.js.map +0 -1
  436. package/dist/index-IKsAEDzd.js +0 -369
  437. package/dist/index-IKsAEDzd.js.map +0 -1
  438. package/dist/jsx-runtime-CbmOdJhC.js +0 -616
  439. package/dist/jsx-runtime-CbmOdJhC.js.map +0 -1
  440. package/dist/jsx-runtime-Dajn0hD2.cjs +0 -26
  441. package/dist/jsx-runtime-Dajn0hD2.cjs.map +0 -1
  442. package/dist/link-DvineOMa.js +0 -1880
  443. package/dist/link-DvineOMa.js.map +0 -1
  444. package/dist/link-Dz7XpBNS.cjs +0 -5
  445. package/dist/link-Dz7XpBNS.cjs.map +0 -1
  446. package/dist/react.esm-BL1KU4o5.js.map +0 -1
  447. package/dist/react.esm-DzAzWxXs.cjs +0 -91
  448. package/dist/react.esm-DzAzWxXs.cjs.map +0 -1
  449. package/dist/resolveProps-BbPxVWKC.cjs +0 -43
  450. package/dist/resolveProps-BbPxVWKC.cjs.map +0 -1
  451. package/dist/resolveProps-uiOkGxuE.js +0 -2244
  452. package/dist/resolveProps-uiOkGxuE.js.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('../../assets/index6.css');const r=require("../../jsx-runtime-Dajn0hD2.cjs"),y=require("react"),R=require("@mui/material"),e=require("chart.js"),_=require("react-chartjs-2"),v="_chart_l9ziq_10",C="_reportBox_l9ziq_19",E="_nodata_l9ziq_23",s={chart:v,reportBox:C,nodata:E};e.Chart.register(e.CategoryScale,e.LinearScale,e.PointElement,e.LineElement,e.Title,e.Tooltip,e.Legend);const d=u=>{const{dataList:a,xLabel:p="",yLabel:x="",labelKey:l,valueKey:i,borderColor:c="#ff6384",chartMargin:o={top:0,right:20,bottom:20,left:10},tooltipFormatter:h=(t,n)=>[String(t),String(n)],isLoading:m}=u,f=y.useRef(null),b={responsive:!0,aspectRatio:2,maintainAspectRatio:!1,animation:{delay:200},transitions:{resize:{animations:{x:{from:0},y:{from:0}}},show:{animations:{x:{from:0},y:{from:0}}}},layout:{padding:{left:o.left,right:o.right,top:o.top,bottom:o.bottom}},plugins:{legend:{display:!1,position:"top"},title:{display:!1},tooltip:{callbacks:{label:t=>{const n=t.dataset.label||"";return h(t.parsed.y,n).reverse().join("")}}}},scales:{x:{title:{display:!0,text:p}},y:{beginAtZero:!0,title:{display:!0,text:x}}}},g={labels:a.map(t=>{if(typeof t=="object"&&t!==null&&l in t)return t[l];throw new Error("Invalid data structure")}),datasets:[{label:"",data:a.map(t=>{if(typeof t=="object"&&t!==null&&i in t)return t[i];throw new Error("Invalid data structure")}),borderColor:c,backgroundColor:c,tension:.4},{label:"",data:a.map(()=>[70,70,70,70,70,70,70]),borderColor:"red",backgroundColor:"red",tension:.4}]},j=()=>m?r.jsxRuntimeExports.jsx("div",{className:s.nodata,children:"loading..."}):a.length===0?r.jsxRuntimeExports.jsx("div",{className:s.nodata,children:"NO DATA"}):r.jsxRuntimeExports.jsx(_.Line,{ref:f,options:b,data:g});return r.jsxRuntimeExports.jsx(R.Box,{className:s.reportBox,children:r.jsxRuntimeExports.jsx("div",{className:s.chart,children:r.jsxRuntimeExports.jsx(j,{})})})};exports.ReportChart=d;exports.default=d;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('../../assets/index8.css');const r=require("react/jsx-runtime"),j=require("react"),_=require("@mui/material"),e=require("chart.js"),v=require("react-chartjs-2"),C="_chart_l9ziq_10",q="_reportBox_l9ziq_19",L="_nodata_l9ziq_23",n={chart:C,reportBox:q,nodata:L};e.Chart.register(e.CategoryScale,e.LinearScale,e.PointElement,e.LineElement,e.Title,e.Tooltip,e.Legend);const d=u=>{const{dataList:a,xLabel:p="",yLabel:h="",labelKey:l,valueKey:i,borderColor:c="#ff6384",chartMargin:o={top:0,right:20,bottom:20,left:10},tooltipFormatter:f=(t,s)=>[String(t),String(s)],isLoading:b}=u,g=j.useRef(null),m={responsive:!0,aspectRatio:2,maintainAspectRatio:!1,animation:{delay:200},transitions:{resize:{animations:{x:{from:0},y:{from:0}}},show:{animations:{x:{from:0},y:{from:0}}}},layout:{padding:{left:o.left,right:o.right,top:o.top,bottom:o.bottom}},plugins:{legend:{display:!1,position:"top"},title:{display:!1},tooltip:{callbacks:{label:t=>{const s=t.dataset.label||"";return f(t.parsed.y,s).reverse().join("")}}}},scales:{x:{title:{display:!0,text:p}},y:{beginAtZero:!0,title:{display:!0,text:h}}}},y={labels:a.map(t=>{if(typeof t=="object"&&t!==null&&l in t)return t[l];throw new Error("Invalid data structure")}),datasets:[{label:"",data:a.map(t=>{if(typeof t=="object"&&t!==null&&i in t)return t[i];throw new Error("Invalid data structure")}),borderColor:c,backgroundColor:c,tension:.4},{label:"",data:a.map(()=>[70,70,70,70,70,70,70]),borderColor:"red",backgroundColor:"red",tension:.4}]},x=()=>b?r.jsx("div",{className:n.nodata,children:"loading..."}):a.length===0?r.jsx("div",{className:n.nodata,children:"NO DATA"}):r.jsx(v.Line,{ref:g,options:m,data:y});return r.jsx(_.Box,{className:n.reportBox,children:r.jsx("div",{className:n.chart,children:r.jsx(x,{})})})};exports.ReportChart=d;exports.default=d;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/ReportChart/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n Legend,\n LinearScale,\n LineElement,\n PointElement,\n Title,\n TooltipItem,\n} from \"chart.js\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport styles from \"./index.module.scss\";\n\ntype Props = {\n dataList: unknown[];\n xLabel: string;\n yLabel: string;\n labelKey: string;\n valueKey: string;\n borderColor: string;\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Title,\n ChartJSTooltip,\n Legend,\n);\n\nexport const ReportChart = (props: Props) => {\n const {\n dataList,\n xLabel = \"\",\n yLabel = \"\",\n labelKey,\n valueKey,\n borderColor = \"#ff6384\",\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n } = props;\n\n const chartRef = useRef(null);\n\n const options = {\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: {\n delay: 200,\n },\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: false,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n const label = context.dataset.label || \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\"\");\n return str;\n },\n },\n },\n },\n scales: {\n x: {\n title: {\n display: true,\n text: xLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: 25, // フォントサイズを指定\n // },\n // },\n },\n y: {\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: styles.y.fontsize, // フォントサイズを指定\n // },\n // },\n },\n },\n };\n\n const chartJsData = {\n labels: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && labelKey in item) {\n return (item as { [key: string]: unknown })[labelKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n datasets: [\n {\n label: \"\",\n data: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && valueKey in item) {\n return (item as { [key: string]: unknown })[valueKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n borderColor: borderColor,\n backgroundColor: borderColor,\n tension: 0.4,\n },\n {\n label: \"\",\n data: dataList.map(() => {\n return [70, 70, 70, 70, 70, 70, 70];\n }),\n borderColor: \"red\",\n backgroundColor: \"red\",\n tension: 0.4,\n },\n ],\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (dataList.length === 0) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n );\n};\n\nexport default ReportChart;\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Title","ChartJSTooltip","Legend","ReportChart","props","dataList","xLabel","yLabel","labelKey","valueKey","borderColor","chartMargin","tooltipFormatter","value","label","isLoading","chartRef","useRef","options","context","chartJsData","item","ChartData","jsx","styles","LineChartJS","Box"],"mappings":"iWAsCAA,EAAAA,MAAQ,SACNC,EAAA,cACAC,EAAA,YACAC,EAAA,aACAC,EAAA,YACAC,EAAA,MACAC,EAAA,QACAC,EAAAA,MACF,EAEa,MAAAC,EAAeC,GAAiB,CACrC,KAAA,CACJ,SAAAC,EACA,OAAAC,EAAS,GACT,OAAAC,EAAS,GACT,SAAAC,EACA,SAAAC,EACA,YAAAC,EAAc,UACd,YAAAC,EAAc,CAAE,IAAK,EAAG,MAAO,GAAI,OAAQ,GAAI,KAAM,EAAG,EACxD,iBAAAC,EAAmB,CAACC,EAAgBC,IAAkB,CACpD,OAAOD,CAAK,EACZ,OAAOC,CAAK,CACd,EACA,UAAAC,CAAA,EACEX,EAEEY,EAAWC,SAAO,IAAI,EAEtBC,EAAU,CACd,WAAY,GACZ,YAAa,EACb,oBAAqB,GACrB,UAAW,CACT,MAAO,GACT,EACA,YAAa,CACX,OAAQ,CACN,WAAY,CACV,EAAG,CACD,KAAM,CACR,EACA,EAAG,CACD,KAAM,CAAA,CACR,CAEJ,EACA,KAAM,CACJ,WAAY,CACV,EAAG,CACD,KAAM,CACR,EACA,EAAG,CACD,KAAM,CAAA,CACR,CACF,CAEJ,EACA,OAAQ,CACN,QAAS,CACP,KAAMP,EAAY,KAClB,MAAOA,EAAY,MACnB,IAAKA,EAAY,IACjB,OAAQA,EAAY,MAAA,CAExB,EACA,QAAS,CACP,OAAQ,CACN,QAAS,GACT,SAAU,KACZ,EACA,MAAO,CACL,QAAS,EACX,EACA,QAAS,CACP,UAAW,CACT,MAAQQ,GAAiC,CACjC,MAAAL,EAAQK,EAAQ,QAAQ,OAAS,GAGhC,OAFIP,EAAiBO,EAAQ,OAAO,EAAGL,CAAK,EACpC,QAAQ,EAAE,KAAK,EAAE,CACzB,CACT,CACF,CAEJ,EACA,OAAQ,CACN,EAAG,CACD,MAAO,CACL,QAAS,GACT,KAAMR,CAAA,CAYV,EACA,EAAG,CACD,YAAa,GACb,MAAO,CACL,QAAS,GACT,KAAMC,CAAA,CAKR,CAOF,CAEJ,EAEMa,EAAc,CAClB,OAAQf,EAAS,IAAKgB,GAAS,CAC7B,GAAI,OAAOA,GAAS,UAAYA,IAAS,MAAQb,KAAYa,EAC3D,OAAQA,EAAoCb,CAAQ,EAEhD,MAAA,IAAI,MAAM,wBAAwB,CAAA,CACzC,EACD,SAAU,CACR,CACE,MAAO,GACP,KAAMH,EAAS,IAAKgB,GAAS,CAC3B,GAAI,OAAOA,GAAS,UAAYA,IAAS,MAAQZ,KAAYY,EAC3D,OAAQA,EAAoCZ,CAAQ,EAEhD,MAAA,IAAI,MAAM,wBAAwB,CAAA,CACzC,EACD,YAAAC,EACA,gBAAiBA,EACjB,QAAS,EACX,EACA,CACE,MAAO,GACP,KAAML,EAAS,IAAI,IACV,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAE,CACnC,EACD,YAAa,MACb,gBAAiB,MACjB,QAAS,EAAA,CACX,CAEJ,EAEMiB,EAAY,IACZP,EACMQ,EAAA,kBAAA,IAAA,MAAA,CAAI,UAAWC,EAAO,OAAQ,SAAU,aAAA,EACvCnB,EAAS,SAAW,EACrBkB,EAAA,kBAAA,IAAA,MAAA,CAAI,UAAWC,EAAO,OAAQ,SAAO,UAAA,0BAG1CC,EAAY,KAAA,CAAA,IAAKT,EAAU,QAAAE,EAAkB,KAAME,EAAa,EAKvE,OACGG,EAAA,kBAAA,IAAAG,EAAA,IAAA,CAAI,UAAWF,EAAO,UACrB,SAAAD,EAAAA,kBAAAA,IAAC,MAAI,CAAA,UAAWC,EAAO,MACrB,SAACD,EAAAA,kBAAAA,IAAAD,EAAA,CAAU,CAAA,CACb,CAAA,EACF,CAEJ"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/ReportChart/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n Legend,\n LinearScale,\n LineElement,\n PointElement,\n Title,\n TooltipItem,\n} from \"chart.js\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport styles from \"./index.module.scss\";\n\ntype Props = {\n dataList: unknown[];\n xLabel: string;\n yLabel: string;\n labelKey: string;\n valueKey: string;\n borderColor: string;\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Title,\n ChartJSTooltip,\n Legend,\n);\n\nexport const ReportChart = (props: Props) => {\n const {\n dataList,\n xLabel = \"\",\n yLabel = \"\",\n labelKey,\n valueKey,\n borderColor = \"#ff6384\",\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n } = props;\n\n const chartRef = useRef(null);\n\n const options = {\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: {\n delay: 200,\n },\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: false,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n const label = context.dataset.label || \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\"\");\n return str;\n },\n },\n },\n },\n scales: {\n x: {\n title: {\n display: true,\n text: xLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: 25, // フォントサイズを指定\n // },\n // },\n },\n y: {\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: styles.y.fontsize, // フォントサイズを指定\n // },\n // },\n },\n },\n };\n\n const chartJsData = {\n labels: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && labelKey in item) {\n return (item as { [key: string]: unknown })[labelKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n datasets: [\n {\n label: \"\",\n data: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && valueKey in item) {\n return (item as { [key: string]: unknown })[valueKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n borderColor: borderColor,\n backgroundColor: borderColor,\n tension: 0.4,\n },\n {\n label: \"\",\n data: dataList.map(() => {\n return [70, 70, 70, 70, 70, 70, 70];\n }),\n borderColor: \"red\",\n backgroundColor: \"red\",\n tension: 0.4,\n },\n ],\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (dataList.length === 0) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n );\n};\n\nexport default ReportChart;\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Title","ChartJSTooltip","Legend","ReportChart","props","dataList","xLabel","yLabel","labelKey","valueKey","borderColor","chartMargin","tooltipFormatter","value","label","isLoading","chartRef","useRef","options","context","chartJsData","item","ChartData","jsx","styles","LineChartJS","Box"],"mappings":"oVAsCAA,EAAAA,MAAQ,SACNC,EAAA,cACAC,EAAA,YACAC,EAAA,aACAC,EAAA,YACAC,EAAA,MACAC,EAAA,QACAC,EAAAA,MACF,EAEa,MAAAC,EAAeC,GAAiB,CACrC,KAAA,CACJ,SAAAC,EACA,OAAAC,EAAS,GACT,OAAAC,EAAS,GACT,SAAAC,EACA,SAAAC,EACA,YAAAC,EAAc,UACd,YAAAC,EAAc,CAAE,IAAK,EAAG,MAAO,GAAI,OAAQ,GAAI,KAAM,EAAG,EACxD,iBAAAC,EAAmB,CAACC,EAAgBC,IAAkB,CACpD,OAAOD,CAAK,EACZ,OAAOC,CAAK,CACd,EACA,UAAAC,CAAA,EACEX,EAEEY,EAAWC,SAAO,IAAI,EAEtBC,EAAU,CACd,WAAY,GACZ,YAAa,EACb,oBAAqB,GACrB,UAAW,CACT,MAAO,GACT,EACA,YAAa,CACX,OAAQ,CACN,WAAY,CACV,EAAG,CACD,KAAM,CACR,EACA,EAAG,CACD,KAAM,CAAA,CACR,CAEJ,EACA,KAAM,CACJ,WAAY,CACV,EAAG,CACD,KAAM,CACR,EACA,EAAG,CACD,KAAM,CAAA,CACR,CACF,CAEJ,EACA,OAAQ,CACN,QAAS,CACP,KAAMP,EAAY,KAClB,MAAOA,EAAY,MACnB,IAAKA,EAAY,IACjB,OAAQA,EAAY,MAAA,CAExB,EACA,QAAS,CACP,OAAQ,CACN,QAAS,GACT,SAAU,KACZ,EACA,MAAO,CACL,QAAS,EACX,EACA,QAAS,CACP,UAAW,CACT,MAAQQ,GAAiC,CACjC,MAAAL,EAAQK,EAAQ,QAAQ,OAAS,GAGhC,OAFIP,EAAiBO,EAAQ,OAAO,EAAGL,CAAK,EACpC,QAAQ,EAAE,KAAK,EAAE,CACzB,CACT,CACF,CAEJ,EACA,OAAQ,CACN,EAAG,CACD,MAAO,CACL,QAAS,GACT,KAAMR,CAAA,CAYV,EACA,EAAG,CACD,YAAa,GACb,MAAO,CACL,QAAS,GACT,KAAMC,CAAA,CAKR,CAOF,CAEJ,EAEMa,EAAc,CAClB,OAAQf,EAAS,IAAKgB,GAAS,CAC7B,GAAI,OAAOA,GAAS,UAAYA,IAAS,MAAQb,KAAYa,EAC3D,OAAQA,EAAoCb,CAAQ,EAEhD,MAAA,IAAI,MAAM,wBAAwB,CAAA,CACzC,EACD,SAAU,CACR,CACE,MAAO,GACP,KAAMH,EAAS,IAAKgB,GAAS,CAC3B,GAAI,OAAOA,GAAS,UAAYA,IAAS,MAAQZ,KAAYY,EAC3D,OAAQA,EAAoCZ,CAAQ,EAEhD,MAAA,IAAI,MAAM,wBAAwB,CAAA,CACzC,EACD,YAAAC,EACA,gBAAiBA,EACjB,QAAS,EACX,EACA,CACE,MAAO,GACP,KAAML,EAAS,IAAI,IACV,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAE,CACnC,EACD,YAAa,MACb,gBAAiB,MACjB,QAAS,EAAA,CACX,CAEJ,EAEMiB,EAAY,IACZP,EACMQ,EAAA,IAAA,MAAA,CAAI,UAAWC,EAAO,OAAQ,SAAU,aAAA,EACvCnB,EAAS,SAAW,EACrBkB,EAAA,IAAA,MAAA,CAAI,UAAWC,EAAO,OAAQ,SAAO,UAAA,QAG1CC,EAAY,KAAA,CAAA,IAAKT,EAAU,QAAAE,EAAkB,KAAME,EAAa,EAKvE,OACGG,EAAA,IAAAG,EAAA,IAAA,CAAI,UAAWF,EAAO,UACrB,SAAAD,EAAAA,IAAC,MAAI,CAAA,UAAWC,EAAO,MACrB,SAACD,EAAAA,IAAAD,EAAA,CAAU,CAAA,CACb,CAAA,EACF,CAEJ"}
@@ -1,29 +1,29 @@
1
- import { j as r } from "../../jsx-runtime-CbmOdJhC.js";
2
- import { useRef as g } from "react";
3
- import { Box as y } from "@mui/material";
4
- import { Chart as j, CategoryScale as _, LinearScale as v, PointElement as C, LineElement as L, Title as R, Tooltip as w, Legend as B } from "chart.js";
5
- import { Line as E } from "react-chartjs-2";
6
- import '../../assets/index6.css';const N = "_chart_l9ziq_10", z = "_reportBox_l9ziq_19", A = "_nodata_l9ziq_23", o = {
7
- chart: N,
8
- reportBox: z,
9
- nodata: A
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { useRef as y } from "react";
3
+ import { Box as x } from "@mui/material";
4
+ import { Chart as _, CategoryScale as v, LinearScale as C, PointElement as L, LineElement as w, Title as B, Tooltip as N, Legend as R } from "chart.js";
5
+ import { Line as j } from "react-chartjs-2";
6
+ import '../../assets/index8.css';const z = "_chart_l9ziq_10", A = "_reportBox_l9ziq_19", E = "_nodata_l9ziq_23", o = {
7
+ chart: z,
8
+ reportBox: A,
9
+ nodata: E
10
10
  };
11
- j.register(
12
- _,
11
+ _.register(
13
12
  v,
14
13
  C,
15
14
  L,
16
- R,
17
15
  w,
18
- B
16
+ B,
17
+ N,
18
+ R
19
19
  );
20
20
  const F = (d) => {
21
21
  const {
22
22
  dataList: a,
23
23
  xLabel: c = "",
24
24
  yLabel: p = "",
25
- labelKey: s,
26
- valueKey: l,
25
+ labelKey: l,
26
+ valueKey: s,
27
27
  borderColor: i = "#ff6384",
28
28
  chartMargin: e = { top: 0, right: 20, bottom: 20, left: 10 },
29
29
  tooltipFormatter: f = (t, n) => [
@@ -31,7 +31,7 @@ const F = (d) => {
31
31
  String(n)
32
32
  ],
33
33
  isLoading: u
34
- } = d, m = g(null), h = {
34
+ } = d, m = y(null), h = {
35
35
  responsive: !0,
36
36
  aspectRatio: 2,
37
37
  maintainAspectRatio: !1,
@@ -122,16 +122,16 @@ const F = (d) => {
122
122
  }
123
123
  }, b = {
124
124
  labels: a.map((t) => {
125
- if (typeof t == "object" && t !== null && s in t)
126
- return t[s];
125
+ if (typeof t == "object" && t !== null && l in t)
126
+ return t[l];
127
127
  throw new Error("Invalid data structure");
128
128
  }),
129
129
  datasets: [
130
130
  {
131
131
  label: "",
132
132
  data: a.map((t) => {
133
- if (typeof t == "object" && t !== null && l in t)
134
- return t[l];
133
+ if (typeof t == "object" && t !== null && s in t)
134
+ return t[s];
135
135
  throw new Error("Invalid data structure");
136
136
  }),
137
137
  borderColor: i,
@@ -146,8 +146,8 @@ const F = (d) => {
146
146
  tension: 0.4
147
147
  }
148
148
  ]
149
- }, x = () => u ? /* @__PURE__ */ r.jsx("div", { className: o.nodata, children: "loading..." }) : a.length === 0 ? /* @__PURE__ */ r.jsx("div", { className: o.nodata, children: "NO DATA" }) : /* @__PURE__ */ r.jsx(E, { ref: m, options: h, data: b });
150
- return /* @__PURE__ */ r.jsx(y, { className: o.reportBox, children: /* @__PURE__ */ r.jsx("div", { className: o.chart, children: /* @__PURE__ */ r.jsx(x, {}) }) });
149
+ }, g = () => u ? /* @__PURE__ */ r("div", { className: o.nodata, children: "loading..." }) : a.length === 0 ? /* @__PURE__ */ r("div", { className: o.nodata, children: "NO DATA" }) : /* @__PURE__ */ r(j, { ref: m, options: h, data: b });
150
+ return /* @__PURE__ */ r(x, { className: o.reportBox, children: /* @__PURE__ */ r("div", { className: o.chart, children: /* @__PURE__ */ r(g, {}) }) });
151
151
  };
152
152
  export {
153
153
  F as ReportChart,
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../src/components/ReportChart/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n Legend,\n LinearScale,\n LineElement,\n PointElement,\n Title,\n TooltipItem,\n} from \"chart.js\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport styles from \"./index.module.scss\";\n\ntype Props = {\n dataList: unknown[];\n xLabel: string;\n yLabel: string;\n labelKey: string;\n valueKey: string;\n borderColor: string;\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Title,\n ChartJSTooltip,\n Legend,\n);\n\nexport const ReportChart = (props: Props) => {\n const {\n dataList,\n xLabel = \"\",\n yLabel = \"\",\n labelKey,\n valueKey,\n borderColor = \"#ff6384\",\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n } = props;\n\n const chartRef = useRef(null);\n\n const options = {\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: {\n delay: 200,\n },\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: false,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n const label = context.dataset.label || \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\"\");\n return str;\n },\n },\n },\n },\n scales: {\n x: {\n title: {\n display: true,\n text: xLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: 25, // フォントサイズを指定\n // },\n // },\n },\n y: {\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: styles.y.fontsize, // フォントサイズを指定\n // },\n // },\n },\n },\n };\n\n const chartJsData = {\n labels: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && labelKey in item) {\n return (item as { [key: string]: unknown })[labelKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n datasets: [\n {\n label: \"\",\n data: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && valueKey in item) {\n return (item as { [key: string]: unknown })[valueKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n borderColor: borderColor,\n backgroundColor: borderColor,\n tension: 0.4,\n },\n {\n label: \"\",\n data: dataList.map(() => {\n return [70, 70, 70, 70, 70, 70, 70];\n }),\n borderColor: \"red\",\n backgroundColor: \"red\",\n tension: 0.4,\n },\n ],\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (dataList.length === 0) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n );\n};\n\nexport default ReportChart;\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Title","ChartJSTooltip","Legend","ReportChart","props","dataList","xLabel","yLabel","labelKey","valueKey","borderColor","chartMargin","tooltipFormatter","value","label","isLoading","chartRef","useRef","options","context","chartJsData","item","ChartData","jsx","styles","LineChartJS","Box"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../src/components/ReportChart/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n Legend,\n LinearScale,\n LineElement,\n PointElement,\n Title,\n TooltipItem,\n} from \"chart.js\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport styles from \"./index.module.scss\";\n\ntype Props = {\n dataList: unknown[];\n xLabel: string;\n yLabel: string;\n labelKey: string;\n valueKey: string;\n borderColor: string;\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Title,\n ChartJSTooltip,\n Legend,\n);\n\nexport const ReportChart = (props: Props) => {\n const {\n dataList,\n xLabel = \"\",\n yLabel = \"\",\n labelKey,\n valueKey,\n borderColor = \"#ff6384\",\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n } = props;\n\n const chartRef = useRef(null);\n\n const options = {\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: {\n delay: 200,\n },\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: false,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n const label = context.dataset.label || \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\"\");\n return str;\n },\n },\n },\n },\n scales: {\n x: {\n title: {\n display: true,\n text: xLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: 25, // フォントサイズを指定\n // },\n // },\n },\n y: {\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n // font: {\n // family: \"\", // フォントファミリーを指定\n // size: 30, // フォントサイズを指定\n // },\n },\n // ticks: {\n // font: {\n // family: \"Arial\", // フォントファミリーを指定\n // size: styles.y.fontsize, // フォントサイズを指定\n // },\n // },\n },\n },\n };\n\n const chartJsData = {\n labels: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && labelKey in item) {\n return (item as { [key: string]: unknown })[labelKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n datasets: [\n {\n label: \"\",\n data: dataList.map((item) => {\n if (typeof item === \"object\" && item !== null && valueKey in item) {\n return (item as { [key: string]: unknown })[valueKey];\n }\n throw new Error(\"Invalid data structure\");\n }),\n borderColor: borderColor,\n backgroundColor: borderColor,\n tension: 0.4,\n },\n {\n label: \"\",\n data: dataList.map(() => {\n return [70, 70, 70, 70, 70, 70, 70];\n }),\n borderColor: \"red\",\n backgroundColor: \"red\",\n tension: 0.4,\n },\n ],\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (dataList.length === 0) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n );\n};\n\nexport default ReportChart;\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Title","ChartJSTooltip","Legend","ReportChart","props","dataList","xLabel","yLabel","labelKey","valueKey","borderColor","chartMargin","tooltipFormatter","value","label","isLoading","chartRef","useRef","options","context","chartJsData","item","ChartData","jsx","styles","LineChartJS","Box"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index5.css');const o=require("../../jsx-runtime-Dajn0hD2.cjs"),E=require("react"),w=require("@mui/material"),a=require("chart.js");require("chartjs-adapter-date-fns");const c=require("date-fns"),L=require("react-chartjs-2"),H=require("../CardWithTitle/index.cjs.js"),M="_reportChart_t9sla_1",q="_chart_t9sla_10",N="_reportBox_t9sla_15",O="_nodata_t9sla_19",n={reportChart:M,chart:q,reportBox:N,nodata:O};a.Chart.register(a.CategoryScale,a.LinearScale,a.PointElement,a.LineElement,a.Filler,a.LineController,a.Title,a.Tooltip,a.Legend,a.TimeScale);const F={red:"rgb(255, 99, 132)",orange:"rgb(255, 184, 76)",yellow:"rgb(255, 205, 86)",green:"rgb(102, 187, 106)",blue:"rgb(41, 182, 246)",purple:"rgb(153, 102, 255)",grey:"rgb(201, 203, 207)",redTransparent:"rgba(255, 99, 132, 0.5)",orangeTransparent:"rgba(255, 184, 76, 0.5)",yellowTransparent:"rgba(255, 205, 86, 0.5)",greenTransparent:"rgba(102, 187, 106, 0.5)",blueTransparent:"rgba(41, 182, 246, 0.5)",purpleTransparent:"rgba(153, 102, 255, 0.5)",greyTransparent:"rgba(201, 203, 207, 0.5)"},B=m=>{const{datasets:s,xLabel:p="",yLabel:g="",xType:d="day",dataIntervalMin:b=5,chartMargin:i={top:0,right:20,bottom:20,left:10},tooltipFormatter:h=(t,e)=>[String(t),String(e)],isLoading:f,title:y,precision:x}=m,D=E.useRef(null),T=s.some(t=>t.stack!==void 0);if(d==="day"){const t=c.format(c.startOfDay(new Date),"yyyy-MM-dd'T'HH:mm:ss.SSSxxx"),e=c.format(c.endOfDay(new Date),"yyyy-MM-dd'T'HH:mm:ss.SSSxxx"),r=[{date:t,value:0},{date:e,value:0}];s.unshift({label:"",data:r,borderColor:"rgba(0, 0, 0, 0)"})}const C={type:"time",time:{unit:"minute",displayFormats:{minute:"HH:mm"},tooltipFormat:"HH:mm"},title:{display:!0,text:p},ticks:{source:"auto",autoSkip:!0,maxTicksLimit:24,callback:function(t){return`${(typeof t=="string"?new Date(t):new Date(t)).getHours()}時`}}},j={title:{display:!0,text:p}},k={interaction:{intersect:!1},responsive:!0,aspectRatio:2,maintainAspectRatio:!1,animation:!1,transitions:{resize:{animations:{x:{from:0},y:{from:0}}},show:{animations:{x:{from:0},y:{from:0}}}},layout:{padding:{left:i.left,right:i.right,top:i.top,bottom:i.bottom}},plugins:{legend:{display:!0,position:"top"},title:{display:!1},tooltip:{callbacks:{label:t=>{if(t.dataset.label==="")return"";const e=t.dataset.label?`${t.dataset.label}`:"";return h(t.parsed.y,e).reverse().join(":")}}}},scales:{x:d==="day"?C:j,y:{stacked:T,beginAtZero:!0,title:{display:!0,text:g},ticks:{precision:x}}}},u=(t,e)=>t.p0.skip||t.p1.skip?e:void 0,S=(t,e)=>t.p0.parsed.y>t.p1.parsed.y?e:void 0,R=t=>{const e=[...t];if(t.length>1){const r=new Date(t[t.length-1].date).getTime(),l=new Date(t[t.length-2].date).getTime();(r-l)/(1e3*60)>b&&e.splice(e.length-1,0,{date:new Date(l+1).toISOString(),value:NaN})}return e},v={datasets:s.map(t=>{const e=t.skipEmptyData?R(t.data):t.data;return{label:t.label,data:e.map(r=>({x:new Date(r.date),y:r.value})),borderColor:t.borderColor,backgroundColor:t.backgroundColor||t.borderColor,tension:.4,borderWidth:t.borderWidth||void 0,fill:t.fill||!1,stack:t.stack||void 0,pointRadius:0,spanGaps:!!t.skipEmptyData,segment:t.skipEmptyData?{borderColor:r=>u(r,"rgba(0,0,0,0.2)")||S(r,t.borderColor),borderDash:r=>u(r,[6,6])}:void 0}})},_=()=>f?o.jsxRuntimeExports.jsx("div",{className:n.nodata,children:"loading..."}):s.length===0||s.length===1&&s[0].label===""?o.jsxRuntimeExports.jsx("div",{className:n.nodata,children:"NO DATA"}):o.jsxRuntimeExports.jsx(L.Line,{ref:D,options:k,data:v});return o.jsxRuntimeExports.jsx("div",{className:n.reportChart,children:o.jsxRuntimeExports.jsx(H.CardWithTitle,{title:y,spacingFromTitle:0,children:o.jsxRuntimeExports.jsx(w.Box,{className:n.reportBox,children:o.jsxRuntimeExports.jsx("div",{className:n.chart,children:o.jsxRuntimeExports.jsx(_,{})})})})})};exports.ReportChartMulti=B;exports.chartColors=F;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('../../assets/index7.css');const o=require("react/jsx-runtime"),L=require("react"),H=require("@mui/material"),a=require("chart.js");require("chartjs-adapter-date-fns");const c=require("date-fns"),M=require("react-chartjs-2"),R=require("../CardWithTitle/index.cjs.js"),q="_reportChart_t9sla_1",N="_chart_t9sla_10",O="_reportBox_t9sla_15",F="_nodata_t9sla_19",n={reportChart:q,chart:N,reportBox:O,nodata:F};a.Chart.register(a.CategoryScale,a.LinearScale,a.PointElement,a.LineElement,a.Filler,a.LineController,a.Title,a.Tooltip,a.Legend,a.TimeScale);const B={red:"rgb(255, 99, 132)",orange:"rgb(255, 184, 76)",yellow:"rgb(255, 205, 86)",green:"rgb(102, 187, 106)",blue:"rgb(41, 182, 246)",purple:"rgb(153, 102, 255)",grey:"rgb(201, 203, 207)",redTransparent:"rgba(255, 99, 132, 0.5)",orangeTransparent:"rgba(255, 184, 76, 0.5)",yellowTransparent:"rgba(255, 205, 86, 0.5)",greenTransparent:"rgba(102, 187, 106, 0.5)",blueTransparent:"rgba(41, 182, 246, 0.5)",purpleTransparent:"rgba(153, 102, 255, 0.5)",greyTransparent:"rgba(201, 203, 207, 0.5)"},E=m=>{const{datasets:s,xLabel:d="",yLabel:g="",xType:p="day",dataIntervalMin:b=5,chartMargin:i={top:0,right:20,bottom:20,left:10},tooltipFormatter:h=(t,e)=>[String(t),String(e)],isLoading:f,title:y,precision:x}=m,D=L.useRef(null),T=s.some(t=>t.stack!==void 0);if(p==="day"){const t=c.format(c.startOfDay(new Date),"yyyy-MM-dd'T'HH:mm:ss.SSSxxx"),e=c.format(c.endOfDay(new Date),"yyyy-MM-dd'T'HH:mm:ss.SSSxxx"),r=[{date:t,value:0},{date:e,value:0}];s.unshift({label:"",data:r,borderColor:"rgba(0, 0, 0, 0)"})}const C={type:"time",time:{unit:"minute",displayFormats:{minute:"HH:mm"},tooltipFormat:"HH:mm"},title:{display:!0,text:d},ticks:{source:"auto",autoSkip:!0,maxTicksLimit:24,callback:function(t){return`${(typeof t=="string"?new Date(t):new Date(t)).getHours()}時`}}},k={title:{display:!0,text:d}},S={interaction:{intersect:!1},responsive:!0,aspectRatio:2,maintainAspectRatio:!1,animation:!1,transitions:{resize:{animations:{x:{from:0},y:{from:0}}},show:{animations:{x:{from:0},y:{from:0}}}},layout:{padding:{left:i.left,right:i.right,top:i.top,bottom:i.bottom}},plugins:{legend:{display:!0,position:"top"},title:{display:!1},tooltip:{callbacks:{label:t=>{if(t.dataset.label==="")return"";const e=t.dataset.label?`${t.dataset.label}`:"";return h(t.parsed.y,e).reverse().join(":")}}}},scales:{x:p==="day"?C:k,y:{stacked:T,beginAtZero:!0,title:{display:!0,text:g},ticks:{precision:x}}}},u=(t,e)=>t.p0.skip||t.p1.skip?e:void 0,v=(t,e)=>t.p0.parsed.y>t.p1.parsed.y?e:void 0,_=t=>{const e=[...t];if(t.length>1){const r=new Date(t[t.length-1].date).getTime(),l=new Date(t[t.length-2].date).getTime();(r-l)/(1e3*60)>b&&e.splice(e.length-1,0,{date:new Date(l+1).toISOString(),value:NaN})}return e},j={datasets:s.map(t=>{const e=t.skipEmptyData?_(t.data):t.data;return{label:t.label,data:e.map(r=>({x:new Date(r.date),y:r.value})),borderColor:t.borderColor,backgroundColor:t.backgroundColor||t.borderColor,tension:.4,borderWidth:t.borderWidth||void 0,fill:t.fill||!1,stack:t.stack||void 0,pointRadius:0,spanGaps:!!t.skipEmptyData,segment:t.skipEmptyData?{borderColor:r=>u(r,"rgba(0,0,0,0.2)")||v(r,t.borderColor),borderDash:r=>u(r,[6,6])}:void 0}})},w=()=>f?o.jsx("div",{className:n.nodata,children:"loading..."}):s.length===0||s.length===1&&s[0].label===""?o.jsx("div",{className:n.nodata,children:"NO DATA"}):o.jsx(M.Line,{ref:D,options:S,data:j});return o.jsx("div",{className:n.reportChart,children:o.jsx(R.CardWithTitle,{title:y,spacingFromTitle:0,children:o.jsx(H.Box,{className:n.reportBox,children:o.jsx("div",{className:n.chart,children:o.jsx(w,{})})})})})};exports.ReportChartMulti=E;exports.chartColors=B;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../src/components/ReportChartMulti/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n ChartOptions,\n Filler,\n Legend,\n LinearScale,\n LineController,\n LineElement,\n PointElement,\n TimeScale,\n Title,\n TooltipItem,\n} from \"chart.js\";\n\nimport \"chartjs-adapter-date-fns\";\n\nimport { endOfDay, format, startOfDay } from \"date-fns\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport { CardWithTitle } from \"../CardWithTitle\";\nimport styles from \"./index.module.scss\";\n\nexport type datasetType = {\n label: string;\n data: { date: string; value: number }[];\n borderColor: string;\n backgroundColor?: string;\n borderWidth?: number;\n fill?: boolean | number | string;\n stack?: string;\n skipEmptyData?: boolean;\n};\n\ntype Props = {\n datasets: datasetType[];\n xLabel: string;\n yLabel: string;\n dataIntervalMin?: number;\n xType: \"day\" | \"week\" | \"month\" | \"year\";\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n title: string; // Add title prop\n precision?: number; // Y軸の小数点以下の桁数を指定\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Filler,\n LineController,\n Title,\n ChartJSTooltip,\n Legend,\n TimeScale, // TimeScaleを登録\n);\n\n// グラフで利用する標準色を定義\nexport const chartColors = {\n red: \"rgb(255, 99, 132)\",\n orange: \"rgb(255, 184, 76)\",\n yellow: \"rgb(255, 205, 86)\",\n green: \"rgb(102, 187, 106)\",\n blue: \"rgb(41, 182, 246)\",\n purple: \"rgb(153, 102, 255)\",\n grey: \"rgb(201, 203, 207)\",\n // 透過色(塗りつぶしに利用)\n redTransparent: \"rgba(255, 99, 132, 0.5)\",\n orangeTransparent: \"rgba(255, 184, 76, 0.5)\",\n yellowTransparent: \"rgba(255, 205, 86, 0.5)\",\n greenTransparent: \"rgba(102, 187, 106, 0.5)\",\n blueTransparent: \"rgba(41, 182, 246, 0.5)\",\n purpleTransparent: \"rgba(153, 102, 255, 0.5)\",\n greyTransparent: \"rgba(201, 203, 207, 0.5)\",\n};\n\nexport const ReportChartMulti = (props: Props) => {\n const {\n datasets,\n xLabel = \"\",\n yLabel = \"\",\n xType = \"day\",\n dataIntervalMin = 5,\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n title, // Destructure title from props\n precision,\n } = props;\n\n const chartRef = useRef(null);\n\n // stackにグループを追加している場合は、積み上げグラフとなる\n const isStacked = datasets.some((dataset) => dataset.stack !== undefined);\n\n // 時間の範囲を描画する基準として利用するダミーデータをdatasetsに追加\n // TODO:現状はxTypeがdayの場合のみ対応している\n if (xType === \"day\") {\n const startDate = format(\n startOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n const endDate = format(\n endOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n\n const rangeOfDate = [\n { date: startDate, value: 0 },\n { date: endDate, value: 0 },\n ];\n\n datasets.unshift({\n label: \"\",\n data: rangeOfDate,\n borderColor: \"rgba(0, 0, 0, 0)\", // 透明色\n });\n }\n\n const dayScaleOptions = {\n type: \"time\",\n time: {\n unit: \"minute\",\n displayFormats: {\n minute: \"HH:mm\",\n },\n tooltipFormat: \"HH:mm\",\n },\n title: {\n display: true,\n text: xLabel,\n },\n ticks: {\n source: \"auto\",\n autoSkip: true,\n maxTicksLimit: 24,\n callback: function (value: string | number): string {\n const dateValue =\n typeof value === \"string\" ? new Date(value) : new Date(value);\n const hours = dateValue.getHours();\n return `${hours}時`;\n },\n },\n };\n\n const otherScaleOptions = {\n title: {\n display: true,\n text: xLabel,\n },\n };\n\n const options: ChartOptions<\"line\"> = {\n interaction: {\n intersect: false,\n },\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: false,\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: true,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n // 時間基準データはツールチップに表示させない\n if (context.dataset.label === \"\") {\n return \"\";\n }\n const label = context.dataset.label\n ? `${context.dataset.label}`\n : \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\":\");\n return str;\n },\n },\n },\n },\n scales: {\n x: xType === \"day\" ? dayScaleOptions : otherScaleOptions, // 実際使うTypeが増えたらここを改修\n y: {\n stacked: isStacked,\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n },\n ticks: {\n precision: precision,\n },\n },\n },\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const skipped = (ctx: any, value: any): any =>\n ctx.p0.skip || ctx.p1.skip ? value : undefined;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const down = (ctx: any, value: any): any =>\n ctx.p0.parsed.y > ctx.p1.parsed.y ? value : undefined;\n\n const fillGaps = (data: { date: string; value: number | null }[]) => {\n const filledData: { date: string; value: number | null }[] = [...data];\n\n if (data.length > 1) {\n const lastTime = new Date(data[data.length - 1].date).getTime();\n const secondLastTime = new Date(data[data.length - 2].date).getTime();\n const finalTimeDifference = (lastTime - secondLastTime) / (1000 * 60);\n\n // 最後のデータポイントが大きなギャップを持つ場合にNaNを挿入\n if (finalTimeDifference > dataIntervalMin) {\n filledData.splice(filledData.length - 1, 0, {\n date: new Date(secondLastTime + 1).toISOString(),\n value: NaN,\n });\n }\n }\n return filledData;\n };\n\n // データセットの整形\n const formattedDatasets = datasets.map((dataset) => {\n const dataWithGaps = dataset.skipEmptyData\n ? fillGaps(dataset.data)\n : dataset.data;\n return {\n label: dataset.label,\n data: dataWithGaps.map((item) => {\n const date = new Date(item.date);\n return { x: date, y: item.value };\n }),\n borderColor: dataset.borderColor,\n backgroundColor: dataset.backgroundColor || dataset.borderColor,\n tension: 0.4,\n borderWidth: dataset.borderWidth || undefined,\n fill: dataset.fill || false,\n stack: dataset.stack || undefined,\n pointRadius: 0,\n spanGaps: dataset.skipEmptyData ? true : false,\n segment: dataset.skipEmptyData\n ? {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderColor: (ctx: any) =>\n skipped(ctx, \"rgba(0,0,0,0.2)\") || down(ctx, dataset.borderColor),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderDash: (ctx: any) => skipped(ctx, [6, 6]),\n }\n : undefined,\n };\n });\n\n const chartJsData = {\n datasets: formattedDatasets,\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (\n datasets.length === 0 ||\n (datasets.length === 1 && datasets[0].label === \"\")\n ) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <div className={styles.reportChart}>\n <CardWithTitle title={title} spacingFromTitle={0}>\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n </CardWithTitle>\n </div>\n );\n};\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Filler","LineController","Title","ChartJSTooltip","Legend","TimeScale","chartColors","ReportChartMulti","props","datasets","xLabel","yLabel","xType","dataIntervalMin","chartMargin","tooltipFormatter","value","label","isLoading","title","precision","chartRef","useRef","isStacked","dataset","startDate","format","startOfDay","endDate","endOfDay","rangeOfDate","dayScaleOptions","otherScaleOptions","options","context","skipped","ctx","down","fillGaps","data","filledData","lastTime","secondLastTime","chartJsData","dataWithGaps","item","ChartData","jsx","styles","LineChartJS","CardWithTitle","Box"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../src/components/ReportChartMulti/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n ChartOptions,\n Filler,\n Legend,\n LinearScale,\n LineController,\n LineElement,\n PointElement,\n TimeScale,\n Title,\n TooltipItem,\n} from \"chart.js\";\n\nimport \"chartjs-adapter-date-fns\";\n\nimport { endOfDay, format, startOfDay } from \"date-fns\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport { CardWithTitle } from \"../CardWithTitle\";\nimport styles from \"./index.module.scss\";\n\nexport type datasetType = {\n label: string;\n data: { date: string; value: number }[];\n borderColor: string;\n backgroundColor?: string;\n borderWidth?: number;\n fill?: boolean | number | string;\n stack?: string;\n skipEmptyData?: boolean;\n};\n\ntype Props = {\n datasets: datasetType[];\n xLabel: string;\n yLabel: string;\n dataIntervalMin?: number;\n xType: \"day\" | \"week\" | \"month\" | \"year\";\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n title: string; // Add title prop\n precision?: number; // Y軸の小数点以下の桁数を指定\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Filler,\n LineController,\n Title,\n ChartJSTooltip,\n Legend,\n TimeScale, // TimeScaleを登録\n);\n\n// グラフで利用する標準色を定義\nexport const chartColors = {\n red: \"rgb(255, 99, 132)\",\n orange: \"rgb(255, 184, 76)\",\n yellow: \"rgb(255, 205, 86)\",\n green: \"rgb(102, 187, 106)\",\n blue: \"rgb(41, 182, 246)\",\n purple: \"rgb(153, 102, 255)\",\n grey: \"rgb(201, 203, 207)\",\n // 透過色(塗りつぶしに利用)\n redTransparent: \"rgba(255, 99, 132, 0.5)\",\n orangeTransparent: \"rgba(255, 184, 76, 0.5)\",\n yellowTransparent: \"rgba(255, 205, 86, 0.5)\",\n greenTransparent: \"rgba(102, 187, 106, 0.5)\",\n blueTransparent: \"rgba(41, 182, 246, 0.5)\",\n purpleTransparent: \"rgba(153, 102, 255, 0.5)\",\n greyTransparent: \"rgba(201, 203, 207, 0.5)\",\n};\n\nexport const ReportChartMulti = (props: Props) => {\n const {\n datasets,\n xLabel = \"\",\n yLabel = \"\",\n xType = \"day\",\n dataIntervalMin = 5,\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n title, // Destructure title from props\n precision,\n } = props;\n\n const chartRef = useRef(null);\n\n // stackにグループを追加している場合は、積み上げグラフとなる\n const isStacked = datasets.some((dataset) => dataset.stack !== undefined);\n\n // 時間の範囲を描画する基準として利用するダミーデータをdatasetsに追加\n // TODO:現状はxTypeがdayの場合のみ対応している\n if (xType === \"day\") {\n const startDate = format(\n startOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n const endDate = format(\n endOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n\n const rangeOfDate = [\n { date: startDate, value: 0 },\n { date: endDate, value: 0 },\n ];\n\n datasets.unshift({\n label: \"\",\n data: rangeOfDate,\n borderColor: \"rgba(0, 0, 0, 0)\", // 透明色\n });\n }\n\n const dayScaleOptions = {\n type: \"time\",\n time: {\n unit: \"minute\",\n displayFormats: {\n minute: \"HH:mm\",\n },\n tooltipFormat: \"HH:mm\",\n },\n title: {\n display: true,\n text: xLabel,\n },\n ticks: {\n source: \"auto\",\n autoSkip: true,\n maxTicksLimit: 24,\n callback: function (value: string | number): string {\n const dateValue =\n typeof value === \"string\" ? new Date(value) : new Date(value);\n const hours = dateValue.getHours();\n return `${hours}時`;\n },\n },\n };\n\n const otherScaleOptions = {\n title: {\n display: true,\n text: xLabel,\n },\n };\n\n const options: ChartOptions<\"line\"> = {\n interaction: {\n intersect: false,\n },\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: false,\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: true,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n // 時間基準データはツールチップに表示させない\n if (context.dataset.label === \"\") {\n return \"\";\n }\n const label = context.dataset.label\n ? `${context.dataset.label}`\n : \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\":\");\n return str;\n },\n },\n },\n },\n scales: {\n x: xType === \"day\" ? dayScaleOptions : otherScaleOptions, // 実際使うTypeが増えたらここを改修\n y: {\n stacked: isStacked,\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n },\n ticks: {\n precision: precision,\n },\n },\n },\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const skipped = (ctx: any, value: any): any =>\n ctx.p0.skip || ctx.p1.skip ? value : undefined;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const down = (ctx: any, value: any): any =>\n ctx.p0.parsed.y > ctx.p1.parsed.y ? value : undefined;\n\n const fillGaps = (data: { date: string; value: number | null }[]) => {\n const filledData: { date: string; value: number | null }[] = [...data];\n\n if (data.length > 1) {\n const lastTime = new Date(data[data.length - 1].date).getTime();\n const secondLastTime = new Date(data[data.length - 2].date).getTime();\n const finalTimeDifference = (lastTime - secondLastTime) / (1000 * 60);\n\n // 最後のデータポイントが大きなギャップを持つ場合にNaNを挿入\n if (finalTimeDifference > dataIntervalMin) {\n filledData.splice(filledData.length - 1, 0, {\n date: new Date(secondLastTime + 1).toISOString(),\n value: NaN,\n });\n }\n }\n return filledData;\n };\n\n // データセットの整形\n const formattedDatasets = datasets.map((dataset) => {\n const dataWithGaps = dataset.skipEmptyData\n ? fillGaps(dataset.data)\n : dataset.data;\n return {\n label: dataset.label,\n data: dataWithGaps.map((item) => {\n const date = new Date(item.date);\n return { x: date, y: item.value };\n }),\n borderColor: dataset.borderColor,\n backgroundColor: dataset.backgroundColor || dataset.borderColor,\n tension: 0.4,\n borderWidth: dataset.borderWidth || undefined,\n fill: dataset.fill || false,\n stack: dataset.stack || undefined,\n pointRadius: 0,\n spanGaps: dataset.skipEmptyData ? true : false,\n segment: dataset.skipEmptyData\n ? {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderColor: (ctx: any) =>\n skipped(ctx, \"rgba(0,0,0,0.2)\") || down(ctx, dataset.borderColor),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderDash: (ctx: any) => skipped(ctx, [6, 6]),\n }\n : undefined,\n };\n });\n\n const chartJsData = {\n datasets: formattedDatasets,\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (\n datasets.length === 0 ||\n (datasets.length === 1 && datasets[0].label === \"\")\n ) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <div className={styles.reportChart}>\n <CardWithTitle title={title} spacingFromTitle={0}>\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n </CardWithTitle>\n </div>\n );\n};\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Filler","LineController","Title","ChartJSTooltip","Legend","TimeScale","chartColors","ReportChartMulti","props","datasets","xLabel","yLabel","xType","dataIntervalMin","chartMargin","tooltipFormatter","value","label","isLoading","title","precision","chartRef","useRef","isStacked","dataset","startDate","format","startOfDay","endDate","endOfDay","rangeOfDate","dayScaleOptions","otherScaleOptions","options","context","skipped","ctx","down","fillGaps","data","filledData","lastTime","secondLastTime","chartJsData","dataWithGaps","item","ChartData","jsx","styles","LineChartJS","CardWithTitle","Box"],"mappings":"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"}
@@ -1,31 +1,31 @@
1
- import { j as a } from "../../jsx-runtime-CbmOdJhC.js";
2
- import { useRef as j } from "react";
3
- import { Box as L } from "@mui/material";
4
- import { Chart as H, CategoryScale as N, LinearScale as M, PointElement as O, LineElement as R, Filler as E, LineController as B, Title as F, Tooltip as A, Legend as W, TimeScale as G } from "chart.js";
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { useRef as L } from "react";
3
+ import { Box as H } from "@mui/material";
4
+ import { Chart as N, CategoryScale as M, LinearScale as O, PointElement as R, LineElement as B, Filler as E, LineController as F, Title as A, Tooltip as W, Legend as G, TimeScale as j } from "chart.js";
5
5
  import "chartjs-adapter-date-fns";
6
6
  import { format as d, startOfDay as I, endOfDay as V } from "date-fns";
7
7
  import { Line as $ } from "react-chartjs-2";
8
8
  import { CardWithTitle as z } from "../CardWithTitle/index.es.js";
9
- import '../../assets/index5.css';const J = "_reportChart_t9sla_1", P = "_chart_t9sla_10", Z = "_reportBox_t9sla_15", q = "_nodata_t9sla_19", s = {
9
+ import '../../assets/index7.css';const J = "_reportChart_t9sla_1", P = "_chart_t9sla_10", Z = "_reportBox_t9sla_15", q = "_nodata_t9sla_19", n = {
10
10
  reportChart: J,
11
11
  chart: P,
12
12
  reportBox: Z,
13
13
  nodata: q
14
14
  };
15
- H.register(
16
- N,
15
+ N.register(
17
16
  M,
18
17
  O,
19
18
  R,
20
- E,
21
19
  B,
20
+ E,
22
21
  F,
23
22
  A,
24
23
  W,
25
- G
24
+ G,
25
+ j
26
26
  // TimeScaleを登録
27
27
  );
28
- const st = {
28
+ const nt = {
29
29
  red: "rgb(255, 99, 132)",
30
30
  orange: "rgb(255, 184, 76)",
31
31
  yellow: "rgb(255, 205, 86)",
@@ -41,14 +41,14 @@ const st = {
41
41
  blueTransparent: "rgba(41, 182, 246, 0.5)",
42
42
  purpleTransparent: "rgba(153, 102, 255, 0.5)",
43
43
  greyTransparent: "rgba(201, 203, 207, 0.5)"
44
- }, nt = (m) => {
44
+ }, st = (m) => {
45
45
  const {
46
46
  datasets: o,
47
47
  xLabel: l = "",
48
48
  yLabel: g = "",
49
49
  xType: p = "day",
50
50
  dataIntervalMin: f = 5,
51
- chartMargin: n = { top: 0, right: 20, bottom: 20, left: 10 },
51
+ chartMargin: s = { top: 0, right: 20, bottom: 20, left: 10 },
52
52
  tooltipFormatter: b = (t, e) => [
53
53
  String(t),
54
54
  String(e)
@@ -57,7 +57,7 @@ const st = {
57
57
  title: y,
58
58
  // Destructure title from props
59
59
  precision: h
60
- } = m, x = j(null), D = o.some((t) => t.stack !== void 0);
60
+ } = m, D = L(null), T = o.some((t) => t.stack !== void 0);
61
61
  if (p === "day") {
62
62
  const t = d(
63
63
  I(/* @__PURE__ */ new Date()),
@@ -76,7 +76,7 @@ const st = {
76
76
  // 透明色
77
77
  });
78
78
  }
79
- const T = {
79
+ const k = {
80
80
  type: "time",
81
81
  time: {
82
82
  unit: "minute",
@@ -97,12 +97,12 @@ const st = {
97
97
  return `${(typeof t == "string" ? new Date(t) : new Date(t)).getHours()}時`;
98
98
  }
99
99
  }
100
- }, k = {
100
+ }, C = {
101
101
  title: {
102
102
  display: !0,
103
103
  text: l
104
104
  }
105
- }, C = {
105
+ }, x = {
106
106
  interaction: {
107
107
  intersect: !1
108
108
  },
@@ -134,10 +134,10 @@ const st = {
134
134
  },
135
135
  layout: {
136
136
  padding: {
137
- left: n.left,
138
- right: n.right,
139
- top: n.top,
140
- bottom: n.bottom
137
+ left: s.left,
138
+ right: s.right,
139
+ top: s.top,
140
+ bottom: s.bottom
141
141
  }
142
142
  },
143
143
  plugins: {
@@ -160,10 +160,10 @@ const st = {
160
160
  }
161
161
  },
162
162
  scales: {
163
- x: p === "day" ? T : k,
163
+ x: p === "day" ? k : C,
164
164
  // 実際使うTypeが増えたらここを改修
165
165
  y: {
166
- stacked: D,
166
+ stacked: T,
167
167
  beginAtZero: !0,
168
168
  title: {
169
169
  display: !0,
@@ -206,11 +206,11 @@ const st = {
206
206
  } : void 0
207
207
  };
208
208
  })
209
- }, _ = () => u ? /* @__PURE__ */ a.jsx("div", { className: s.nodata, children: "loading..." }) : o.length === 0 || o.length === 1 && o[0].label === "" ? /* @__PURE__ */ a.jsx("div", { className: s.nodata, children: "NO DATA" }) : /* @__PURE__ */ a.jsx($, { ref: x, options: C, data: w });
210
- return /* @__PURE__ */ a.jsx("div", { className: s.reportChart, children: /* @__PURE__ */ a.jsx(z, { title: y, spacingFromTitle: 0, children: /* @__PURE__ */ a.jsx(L, { className: s.reportBox, children: /* @__PURE__ */ a.jsx("div", { className: s.chart, children: /* @__PURE__ */ a.jsx(_, {}) }) }) }) });
209
+ }, _ = () => u ? /* @__PURE__ */ a("div", { className: n.nodata, children: "loading..." }) : o.length === 0 || o.length === 1 && o[0].label === "" ? /* @__PURE__ */ a("div", { className: n.nodata, children: "NO DATA" }) : /* @__PURE__ */ a($, { ref: D, options: x, data: w });
210
+ return /* @__PURE__ */ a("div", { className: n.reportChart, children: /* @__PURE__ */ a(z, { title: y, spacingFromTitle: 0, children: /* @__PURE__ */ a(H, { className: n.reportBox, children: /* @__PURE__ */ a("div", { className: n.chart, children: /* @__PURE__ */ a(_, {}) }) }) }) });
211
211
  };
212
212
  export {
213
- nt as ReportChartMulti,
214
- st as chartColors
213
+ st as ReportChartMulti,
214
+ nt as chartColors
215
215
  };
216
216
  //# sourceMappingURL=index.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../../src/components/ReportChartMulti/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n ChartOptions,\n Filler,\n Legend,\n LinearScale,\n LineController,\n LineElement,\n PointElement,\n TimeScale,\n Title,\n TooltipItem,\n} from \"chart.js\";\n\nimport \"chartjs-adapter-date-fns\";\n\nimport { endOfDay, format, startOfDay } from \"date-fns\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport { CardWithTitle } from \"../CardWithTitle\";\nimport styles from \"./index.module.scss\";\n\nexport type datasetType = {\n label: string;\n data: { date: string; value: number }[];\n borderColor: string;\n backgroundColor?: string;\n borderWidth?: number;\n fill?: boolean | number | string;\n stack?: string;\n skipEmptyData?: boolean;\n};\n\ntype Props = {\n datasets: datasetType[];\n xLabel: string;\n yLabel: string;\n dataIntervalMin?: number;\n xType: \"day\" | \"week\" | \"month\" | \"year\";\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n title: string; // Add title prop\n precision?: number; // Y軸の小数点以下の桁数を指定\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Filler,\n LineController,\n Title,\n ChartJSTooltip,\n Legend,\n TimeScale, // TimeScaleを登録\n);\n\n// グラフで利用する標準色を定義\nexport const chartColors = {\n red: \"rgb(255, 99, 132)\",\n orange: \"rgb(255, 184, 76)\",\n yellow: \"rgb(255, 205, 86)\",\n green: \"rgb(102, 187, 106)\",\n blue: \"rgb(41, 182, 246)\",\n purple: \"rgb(153, 102, 255)\",\n grey: \"rgb(201, 203, 207)\",\n // 透過色(塗りつぶしに利用)\n redTransparent: \"rgba(255, 99, 132, 0.5)\",\n orangeTransparent: \"rgba(255, 184, 76, 0.5)\",\n yellowTransparent: \"rgba(255, 205, 86, 0.5)\",\n greenTransparent: \"rgba(102, 187, 106, 0.5)\",\n blueTransparent: \"rgba(41, 182, 246, 0.5)\",\n purpleTransparent: \"rgba(153, 102, 255, 0.5)\",\n greyTransparent: \"rgba(201, 203, 207, 0.5)\",\n};\n\nexport const ReportChartMulti = (props: Props) => {\n const {\n datasets,\n xLabel = \"\",\n yLabel = \"\",\n xType = \"day\",\n dataIntervalMin = 5,\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n title, // Destructure title from props\n precision,\n } = props;\n\n const chartRef = useRef(null);\n\n // stackにグループを追加している場合は、積み上げグラフとなる\n const isStacked = datasets.some((dataset) => dataset.stack !== undefined);\n\n // 時間の範囲を描画する基準として利用するダミーデータをdatasetsに追加\n // TODO:現状はxTypeがdayの場合のみ対応している\n if (xType === \"day\") {\n const startDate = format(\n startOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n const endDate = format(\n endOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n\n const rangeOfDate = [\n { date: startDate, value: 0 },\n { date: endDate, value: 0 },\n ];\n\n datasets.unshift({\n label: \"\",\n data: rangeOfDate,\n borderColor: \"rgba(0, 0, 0, 0)\", // 透明色\n });\n }\n\n const dayScaleOptions = {\n type: \"time\",\n time: {\n unit: \"minute\",\n displayFormats: {\n minute: \"HH:mm\",\n },\n tooltipFormat: \"HH:mm\",\n },\n title: {\n display: true,\n text: xLabel,\n },\n ticks: {\n source: \"auto\",\n autoSkip: true,\n maxTicksLimit: 24,\n callback: function (value: string | number): string {\n const dateValue =\n typeof value === \"string\" ? new Date(value) : new Date(value);\n const hours = dateValue.getHours();\n return `${hours}時`;\n },\n },\n };\n\n const otherScaleOptions = {\n title: {\n display: true,\n text: xLabel,\n },\n };\n\n const options: ChartOptions<\"line\"> = {\n interaction: {\n intersect: false,\n },\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: false,\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: true,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n // 時間基準データはツールチップに表示させない\n if (context.dataset.label === \"\") {\n return \"\";\n }\n const label = context.dataset.label\n ? `${context.dataset.label}`\n : \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\":\");\n return str;\n },\n },\n },\n },\n scales: {\n x: xType === \"day\" ? dayScaleOptions : otherScaleOptions, // 実際使うTypeが増えたらここを改修\n y: {\n stacked: isStacked,\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n },\n ticks: {\n precision: precision,\n },\n },\n },\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const skipped = (ctx: any, value: any): any =>\n ctx.p0.skip || ctx.p1.skip ? value : undefined;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const down = (ctx: any, value: any): any =>\n ctx.p0.parsed.y > ctx.p1.parsed.y ? value : undefined;\n\n const fillGaps = (data: { date: string; value: number | null }[]) => {\n const filledData: { date: string; value: number | null }[] = [...data];\n\n if (data.length > 1) {\n const lastTime = new Date(data[data.length - 1].date).getTime();\n const secondLastTime = new Date(data[data.length - 2].date).getTime();\n const finalTimeDifference = (lastTime - secondLastTime) / (1000 * 60);\n\n // 最後のデータポイントが大きなギャップを持つ場合にNaNを挿入\n if (finalTimeDifference > dataIntervalMin) {\n filledData.splice(filledData.length - 1, 0, {\n date: new Date(secondLastTime + 1).toISOString(),\n value: NaN,\n });\n }\n }\n return filledData;\n };\n\n // データセットの整形\n const formattedDatasets = datasets.map((dataset) => {\n const dataWithGaps = dataset.skipEmptyData\n ? fillGaps(dataset.data)\n : dataset.data;\n return {\n label: dataset.label,\n data: dataWithGaps.map((item) => {\n const date = new Date(item.date);\n return { x: date, y: item.value };\n }),\n borderColor: dataset.borderColor,\n backgroundColor: dataset.backgroundColor || dataset.borderColor,\n tension: 0.4,\n borderWidth: dataset.borderWidth || undefined,\n fill: dataset.fill || false,\n stack: dataset.stack || undefined,\n pointRadius: 0,\n spanGaps: dataset.skipEmptyData ? true : false,\n segment: dataset.skipEmptyData\n ? {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderColor: (ctx: any) =>\n skipped(ctx, \"rgba(0,0,0,0.2)\") || down(ctx, dataset.borderColor),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderDash: (ctx: any) => skipped(ctx, [6, 6]),\n }\n : undefined,\n };\n });\n\n const chartJsData = {\n datasets: formattedDatasets,\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (\n datasets.length === 0 ||\n (datasets.length === 1 && datasets[0].label === \"\")\n ) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <div className={styles.reportChart}>\n <CardWithTitle title={title} spacingFromTitle={0}>\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n </CardWithTitle>\n </div>\n );\n};\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Filler","LineController","Title","ChartJSTooltip","Legend","TimeScale","chartColors","ReportChartMulti","props","datasets","xLabel","yLabel","xType","dataIntervalMin","chartMargin","tooltipFormatter","value","label","isLoading","title","precision","chartRef","useRef","isStacked","dataset","startDate","format","startOfDay","endDate","endOfDay","rangeOfDate","dayScaleOptions","otherScaleOptions","options","context","skipped","ctx","down","fillGaps","data","filledData","lastTime","secondLastTime","chartJsData","dataWithGaps","item","ChartData","jsx","styles","LineChartJS","CardWithTitle","Box"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../../../src/components/ReportChartMulti/index.tsx"],"sourcesContent":["import { useRef } from \"react\";\nimport { Box } from \"@mui/material\";\nimport {\n CategoryScale,\n Chart as ChartJS,\n Tooltip as ChartJSTooltip,\n ChartOptions,\n Filler,\n Legend,\n LinearScale,\n LineController,\n LineElement,\n PointElement,\n TimeScale,\n Title,\n TooltipItem,\n} from \"chart.js\";\n\nimport \"chartjs-adapter-date-fns\";\n\nimport { endOfDay, format, startOfDay } from \"date-fns\";\nimport { Line as LineChartJS } from \"react-chartjs-2\";\n\nimport { CardWithTitle } from \"../CardWithTitle\";\nimport styles from \"./index.module.scss\";\n\nexport type datasetType = {\n label: string;\n data: { date: string; value: number }[];\n borderColor: string;\n backgroundColor?: string;\n borderWidth?: number;\n fill?: boolean | number | string;\n stack?: string;\n skipEmptyData?: boolean;\n};\n\ntype Props = {\n datasets: datasetType[];\n xLabel: string;\n yLabel: string;\n dataIntervalMin?: number;\n xType: \"day\" | \"week\" | \"month\" | \"year\";\n chartMargin?: ChartMargin;\n tooltipFormatter?: CustomToolTipFormatter;\n isLoading?: boolean;\n title: string; // Add title prop\n precision?: number; // Y軸の小数点以下の桁数を指定\n};\n\ntype ChartMargin = {\n top: number;\n right: number;\n bottom: number;\n left: number;\n};\n\ntype CustomToolTipFormatter = (value: unknown, label: string) => string[];\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Filler,\n LineController,\n Title,\n ChartJSTooltip,\n Legend,\n TimeScale, // TimeScaleを登録\n);\n\n// グラフで利用する標準色を定義\nexport const chartColors = {\n red: \"rgb(255, 99, 132)\",\n orange: \"rgb(255, 184, 76)\",\n yellow: \"rgb(255, 205, 86)\",\n green: \"rgb(102, 187, 106)\",\n blue: \"rgb(41, 182, 246)\",\n purple: \"rgb(153, 102, 255)\",\n grey: \"rgb(201, 203, 207)\",\n // 透過色(塗りつぶしに利用)\n redTransparent: \"rgba(255, 99, 132, 0.5)\",\n orangeTransparent: \"rgba(255, 184, 76, 0.5)\",\n yellowTransparent: \"rgba(255, 205, 86, 0.5)\",\n greenTransparent: \"rgba(102, 187, 106, 0.5)\",\n blueTransparent: \"rgba(41, 182, 246, 0.5)\",\n purpleTransparent: \"rgba(153, 102, 255, 0.5)\",\n greyTransparent: \"rgba(201, 203, 207, 0.5)\",\n};\n\nexport const ReportChartMulti = (props: Props) => {\n const {\n datasets,\n xLabel = \"\",\n yLabel = \"\",\n xType = \"day\",\n dataIntervalMin = 5,\n chartMargin = { top: 0, right: 20, bottom: 20, left: 10 },\n tooltipFormatter = (value: unknown, label: string) => [\n String(value),\n String(label),\n ],\n isLoading,\n title, // Destructure title from props\n precision,\n } = props;\n\n const chartRef = useRef(null);\n\n // stackにグループを追加している場合は、積み上げグラフとなる\n const isStacked = datasets.some((dataset) => dataset.stack !== undefined);\n\n // 時間の範囲を描画する基準として利用するダミーデータをdatasetsに追加\n // TODO:現状はxTypeがdayの場合のみ対応している\n if (xType === \"day\") {\n const startDate = format(\n startOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n const endDate = format(\n endOfDay(new Date()),\n \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\",\n );\n\n const rangeOfDate = [\n { date: startDate, value: 0 },\n { date: endDate, value: 0 },\n ];\n\n datasets.unshift({\n label: \"\",\n data: rangeOfDate,\n borderColor: \"rgba(0, 0, 0, 0)\", // 透明色\n });\n }\n\n const dayScaleOptions = {\n type: \"time\",\n time: {\n unit: \"minute\",\n displayFormats: {\n minute: \"HH:mm\",\n },\n tooltipFormat: \"HH:mm\",\n },\n title: {\n display: true,\n text: xLabel,\n },\n ticks: {\n source: \"auto\",\n autoSkip: true,\n maxTicksLimit: 24,\n callback: function (value: string | number): string {\n const dateValue =\n typeof value === \"string\" ? new Date(value) : new Date(value);\n const hours = dateValue.getHours();\n return `${hours}時`;\n },\n },\n };\n\n const otherScaleOptions = {\n title: {\n display: true,\n text: xLabel,\n },\n };\n\n const options: ChartOptions<\"line\"> = {\n interaction: {\n intersect: false,\n },\n responsive: true,\n aspectRatio: 2,\n maintainAspectRatio: false,\n animation: false,\n transitions: {\n resize: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n show: {\n animations: {\n x: {\n from: 0,\n },\n y: {\n from: 0,\n },\n },\n },\n },\n layout: {\n padding: {\n left: chartMargin.left,\n right: chartMargin.right,\n top: chartMargin.top,\n bottom: chartMargin.bottom,\n },\n },\n plugins: {\n legend: {\n display: true,\n position: \"top\" as const,\n },\n title: {\n display: false,\n },\n tooltip: {\n callbacks: {\n label: (context: TooltipItem<\"line\">) => {\n // 時間基準データはツールチップに表示させない\n if (context.dataset.label === \"\") {\n return \"\";\n }\n const label = context.dataset.label\n ? `${context.dataset.label}`\n : \"\";\n const ar = tooltipFormatter(context.parsed.y, label);\n const str = ar.reverse().join(\":\");\n return str;\n },\n },\n },\n },\n scales: {\n x: xType === \"day\" ? dayScaleOptions : otherScaleOptions, // 実際使うTypeが増えたらここを改修\n y: {\n stacked: isStacked,\n beginAtZero: true,\n title: {\n display: true,\n text: yLabel,\n },\n ticks: {\n precision: precision,\n },\n },\n },\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const skipped = (ctx: any, value: any): any =>\n ctx.p0.skip || ctx.p1.skip ? value : undefined;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const down = (ctx: any, value: any): any =>\n ctx.p0.parsed.y > ctx.p1.parsed.y ? value : undefined;\n\n const fillGaps = (data: { date: string; value: number | null }[]) => {\n const filledData: { date: string; value: number | null }[] = [...data];\n\n if (data.length > 1) {\n const lastTime = new Date(data[data.length - 1].date).getTime();\n const secondLastTime = new Date(data[data.length - 2].date).getTime();\n const finalTimeDifference = (lastTime - secondLastTime) / (1000 * 60);\n\n // 最後のデータポイントが大きなギャップを持つ場合にNaNを挿入\n if (finalTimeDifference > dataIntervalMin) {\n filledData.splice(filledData.length - 1, 0, {\n date: new Date(secondLastTime + 1).toISOString(),\n value: NaN,\n });\n }\n }\n return filledData;\n };\n\n // データセットの整形\n const formattedDatasets = datasets.map((dataset) => {\n const dataWithGaps = dataset.skipEmptyData\n ? fillGaps(dataset.data)\n : dataset.data;\n return {\n label: dataset.label,\n data: dataWithGaps.map((item) => {\n const date = new Date(item.date);\n return { x: date, y: item.value };\n }),\n borderColor: dataset.borderColor,\n backgroundColor: dataset.backgroundColor || dataset.borderColor,\n tension: 0.4,\n borderWidth: dataset.borderWidth || undefined,\n fill: dataset.fill || false,\n stack: dataset.stack || undefined,\n pointRadius: 0,\n spanGaps: dataset.skipEmptyData ? true : false,\n segment: dataset.skipEmptyData\n ? {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderColor: (ctx: any) =>\n skipped(ctx, \"rgba(0,0,0,0.2)\") || down(ctx, dataset.borderColor),\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n borderDash: (ctx: any) => skipped(ctx, [6, 6]),\n }\n : undefined,\n };\n });\n\n const chartJsData = {\n datasets: formattedDatasets,\n };\n\n const ChartData = () => {\n if (isLoading) {\n return <div className={styles.nodata}>loading...</div>;\n } else if (\n datasets.length === 0 ||\n (datasets.length === 1 && datasets[0].label === \"\")\n ) {\n return <div className={styles.nodata}>NO DATA</div>;\n } else {\n return (\n <LineChartJS ref={chartRef} options={options} data={chartJsData} />\n );\n }\n };\n\n return (\n <div className={styles.reportChart}>\n <CardWithTitle title={title} spacingFromTitle={0}>\n <Box className={styles.reportBox}>\n <div className={styles.chart}>\n <ChartData />\n </div>\n </Box>\n </CardWithTitle>\n </div>\n );\n};\n"],"names":["ChartJS","CategoryScale","LinearScale","PointElement","LineElement","Filler","LineController","Title","ChartJSTooltip","Legend","TimeScale","chartColors","ReportChartMulti","props","datasets","xLabel","yLabel","xType","dataIntervalMin","chartMargin","tooltipFormatter","value","label","isLoading","title","precision","chartRef","useRef","isStacked","dataset","startDate","format","startOfDay","endDate","endOfDay","rangeOfDate","dayScaleOptions","otherScaleOptions","options","context","skipped","ctx","down","fillGaps","data","filledData","lastTime","secondLastTime","chartJsData","dataWithGaps","item","ChartData","jsx","styles","LineChartJS","CardWithTitle","Box"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const t=require("../../jsx-runtime-Dajn0hD2.cjs"),e=require("../../react.esm-DzAzWxXs.cjs"),r=require("./index.cjs.js");require("chartjs-adapter-date-fns");jest.mock("react-chartjs-2",()=>({Line:()=>t.jsxRuntimeExports.jsx("canvas",{"data-testid":"chartjs-line"})}));const i=[{label:"Dataset 1",data:[{date:"2024-07-10T00:00:00+09:00",value:70},{date:"2024-07-10T00:05:00+09:00",value:75},{date:"2024-07-10T00:10:00+09:00",value:80}],borderColor:"red",skipEmptyData:!0},{label:"Dataset 2",data:[{date:"2024-07-10T01:00:00+09:00",value:60},{date:"2024-07-10T01:05:00+09:00",value:65},{date:"2024-07-10T01:10:00+09:00",value:70}],borderColor:"blue",skipEmptyData:!1}],a={datasets:i,title:"Test Chart",xLabel:"Time",yLabel:"Value",xType:"day",dataIntervalMin:5,chartMargin:{top:0,right:20,bottom:20,left:10},isLoading:!1,precision:void 0};describe("ReportChartMulti",()=>{it("renders the chart with the given title",()=>{e.render(t.jsxRuntimeExports.jsx(r.ReportChartMulti,{...a})),expect(e.screen.getByText("Test Chart")).toBeInTheDocument()}),it("renders the chart with NO DATA when datasets are empty",()=>{e.render(t.jsxRuntimeExports.jsx(r.ReportChartMulti,{...a,datasets:[]})),expect(e.screen.getByText("NO DATA")).toBeInTheDocument()}),it("renders the chart with loading message when isLoading is true",()=>{e.render(t.jsxRuntimeExports.jsx(r.ReportChartMulti,{...a,isLoading:!0})),expect(e.screen.getByText("loading...")).toBeInTheDocument()}),it("renders the chart with the correct datasets",()=>{e.render(t.jsxRuntimeExports.jsx(r.ReportChartMulti,{...a}));const s=e.screen.getByTestId("chartjs-line");expect(s).toBeInTheDocument()})});
1
+ "use strict";const t=require("react/jsx-runtime"),e=require("../../react.esm-CiMn0Rnx.cjs"),a=require("./index.cjs.js");require("chartjs-adapter-date-fns");jest.mock("react-chartjs-2",()=>({Line:()=>t.jsx("canvas",{"data-testid":"chartjs-line"})}));const i=[{label:"Dataset 1",data:[{date:"2024-07-10T00:00:00+09:00",value:70},{date:"2024-07-10T00:05:00+09:00",value:75},{date:"2024-07-10T00:10:00+09:00",value:80}],borderColor:"red",skipEmptyData:!0},{label:"Dataset 2",data:[{date:"2024-07-10T01:00:00+09:00",value:60},{date:"2024-07-10T01:05:00+09:00",value:65},{date:"2024-07-10T01:10:00+09:00",value:70}],borderColor:"blue",skipEmptyData:!1}],r={datasets:i,title:"Test Chart",xLabel:"Time",yLabel:"Value",xType:"day",dataIntervalMin:5,chartMargin:{top:0,right:20,bottom:20,left:10},isLoading:!1,precision:void 0};describe("ReportChartMulti",()=>{it("renders the chart with the given title",()=>{e.render(t.jsx(a.ReportChartMulti,{...r})),expect(e.screen.getByText("Test Chart")).toBeInTheDocument()}),it("renders the chart with NO DATA when datasets are empty",()=>{e.render(t.jsx(a.ReportChartMulti,{...r,datasets:[]})),expect(e.screen.getByText("NO DATA")).toBeInTheDocument()}),it("renders the chart with loading message when isLoading is true",()=>{e.render(t.jsx(a.ReportChartMulti,{...r,isLoading:!0})),expect(e.screen.getByText("loading...")).toBeInTheDocument()}),it("renders the chart with the correct datasets",()=>{e.render(t.jsx(a.ReportChartMulti,{...r}));const s=e.screen.getByTestId("chartjs-line");expect(s).toBeInTheDocument()})});
2
2
  //# sourceMappingURL=index.test.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/ReportChartMulti/index.test.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { render, screen } from \"@testing-library/react\";\n\nimport { ReportChartMulti } from \".\";\n\nimport \"chartjs-adapter-date-fns\";\n\njest.mock(\"react-chartjs-2\", () => ({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Line: () => <canvas data-testid=\"chartjs-line\" />,\n}));\n\nconst mockDatasets = [\n {\n label: \"Dataset 1\",\n data: [\n { date: \"2024-07-10T00:00:00+09:00\", value: 70 },\n { date: \"2024-07-10T00:05:00+09:00\", value: 75 },\n { date: \"2024-07-10T00:10:00+09:00\", value: 80 },\n ],\n borderColor: \"red\",\n skipEmptyData: true,\n },\n {\n label: \"Dataset 2\",\n data: [\n { date: \"2024-07-10T01:00:00+09:00\", value: 60 },\n { date: \"2024-07-10T01:05:00+09:00\", value: 65 },\n { date: \"2024-07-10T01:10:00+09:00\", value: 70 },\n ],\n borderColor: \"blue\",\n skipEmptyData: false,\n },\n];\n\nconst defaultProps = {\n datasets: mockDatasets,\n title: \"Test Chart\",\n xLabel: \"Time\",\n yLabel: \"Value\",\n xType: \"day\" as const,\n dataIntervalMin: 5,\n chartMargin: { top: 0, right: 20, bottom: 20, left: 10 },\n isLoading: false,\n precision: undefined,\n};\n\ndescribe(\"ReportChartMulti\", () => {\n it(\"renders the chart with the given title\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n expect(screen.getByText(\"Test Chart\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with NO DATA when datasets are empty\", () => {\n render(<ReportChartMulti {...defaultProps} datasets={[]} />);\n expect(screen.getByText(\"NO DATA\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with loading message when isLoading is true\", () => {\n render(<ReportChartMulti {...defaultProps} isLoading={true} />);\n expect(screen.getByText(\"loading...\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with the correct datasets\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n const chart = screen.getByTestId(\"chartjs-line\");\n expect(chart).toBeInTheDocument();\n });\n});\n"],"names":["jsx","mockDatasets","defaultProps","render","ReportChartMulti","screen","chart"],"mappings":"yKAOA,KAAK,KAAK,kBAAmB,KAAO,CAElC,KAAM,IAAOA,EAAA,kBAAA,IAAA,SAAA,CAAO,cAAY,cAAe,CAAA,CACjD,EAAE,EAEF,MAAMC,EAAe,CACnB,CACE,MAAO,YACP,KAAM,CACJ,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,CACjD,EACA,YAAa,MACb,cAAe,EACjB,EACA,CACE,MAAO,YACP,KAAM,CACJ,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,CACjD,EACA,YAAa,OACb,cAAe,EAAA,CAEnB,EAEMC,EAAe,CACnB,SAAUD,EACV,MAAO,aACP,OAAQ,OACR,OAAQ,QACR,MAAO,MACP,gBAAiB,EACjB,YAAa,CAAE,IAAK,EAAG,MAAO,GAAI,OAAQ,GAAI,KAAM,EAAG,EACvD,UAAW,GACX,UAAW,MACb,EAEA,SAAS,mBAAoB,IAAM,CACjC,GAAG,yCAA0C,IAAM,CACjDE,EAAAA,OAAQH,EAAAA,kBAAAA,IAAAI,EAAAA,iBAAA,CAAkB,GAAGF,CAAc,CAAA,CAAE,EAC7C,OAAOG,EAAAA,OAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB,CAAA,CAC1D,EAED,GAAG,yDAA0D,IAAM,CACjEF,EAAA,+BAAQC,mBAAkB,CAAA,GAAGF,EAAc,SAAU,GAAI,CAAE,EAC3D,OAAOG,EAAAA,OAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB,CAAA,CACvD,EAED,GAAG,gEAAiE,IAAM,CACxEF,EAAA,+BAAQC,mBAAkB,CAAA,GAAGF,EAAc,UAAW,GAAM,CAAE,EAC9D,OAAOG,EAAAA,OAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB,CAAA,CAC1D,EAED,GAAG,8CAA+C,IAAM,CACtDF,EAAAA,OAAQH,EAAAA,kBAAAA,IAAAI,EAAAA,iBAAA,CAAkB,GAAGF,CAAc,CAAA,CAAE,EACvC,MAAAI,EAAQD,EAAAA,OAAO,YAAY,cAAc,EACxC,OAAAC,CAAK,EAAE,kBAAkB,CAAA,CACjC,CACH,CAAC"}
1
+ {"version":3,"file":"index.test.cjs.js","sources":["../../../src/components/ReportChartMulti/index.test.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { render, screen } from \"@testing-library/react\";\n\nimport { ReportChartMulti } from \".\";\n\nimport \"chartjs-adapter-date-fns\";\n\njest.mock(\"react-chartjs-2\", () => ({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Line: () => <canvas data-testid=\"chartjs-line\" />,\n}));\n\nconst mockDatasets = [\n {\n label: \"Dataset 1\",\n data: [\n { date: \"2024-07-10T00:00:00+09:00\", value: 70 },\n { date: \"2024-07-10T00:05:00+09:00\", value: 75 },\n { date: \"2024-07-10T00:10:00+09:00\", value: 80 },\n ],\n borderColor: \"red\",\n skipEmptyData: true,\n },\n {\n label: \"Dataset 2\",\n data: [\n { date: \"2024-07-10T01:00:00+09:00\", value: 60 },\n { date: \"2024-07-10T01:05:00+09:00\", value: 65 },\n { date: \"2024-07-10T01:10:00+09:00\", value: 70 },\n ],\n borderColor: \"blue\",\n skipEmptyData: false,\n },\n];\n\nconst defaultProps = {\n datasets: mockDatasets,\n title: \"Test Chart\",\n xLabel: \"Time\",\n yLabel: \"Value\",\n xType: \"day\" as const,\n dataIntervalMin: 5,\n chartMargin: { top: 0, right: 20, bottom: 20, left: 10 },\n isLoading: false,\n precision: undefined,\n};\n\ndescribe(\"ReportChartMulti\", () => {\n it(\"renders the chart with the given title\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n expect(screen.getByText(\"Test Chart\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with NO DATA when datasets are empty\", () => {\n render(<ReportChartMulti {...defaultProps} datasets={[]} />);\n expect(screen.getByText(\"NO DATA\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with loading message when isLoading is true\", () => {\n render(<ReportChartMulti {...defaultProps} isLoading={true} />);\n expect(screen.getByText(\"loading...\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with the correct datasets\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n const chart = screen.getByTestId(\"chartjs-line\");\n expect(chart).toBeInTheDocument();\n });\n});\n"],"names":["jsx","mockDatasets","defaultProps","render","ReportChartMulti","screen","chart"],"mappings":"4JAOA,KAAK,KAAK,kBAAmB,KAAO,CAElC,KAAM,IAAOA,EAAA,IAAA,SAAA,CAAO,cAAY,cAAe,CAAA,CACjD,EAAE,EAEF,MAAMC,EAAe,CACnB,CACE,MAAO,YACP,KAAM,CACJ,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,CACjD,EACA,YAAa,MACb,cAAe,EACjB,EACA,CACE,MAAO,YACP,KAAM,CACJ,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,EAC/C,CAAE,KAAM,4BAA6B,MAAO,EAAG,CACjD,EACA,YAAa,OACb,cAAe,EAAA,CAEnB,EAEMC,EAAe,CACnB,SAAUD,EACV,MAAO,aACP,OAAQ,OACR,OAAQ,QACR,MAAO,MACP,gBAAiB,EACjB,YAAa,CAAE,IAAK,EAAG,MAAO,GAAI,OAAQ,GAAI,KAAM,EAAG,EACvD,UAAW,GACX,UAAW,MACb,EAEA,SAAS,mBAAoB,IAAM,CACjC,GAAG,yCAA0C,IAAM,CACjDE,EAAAA,OAAQH,EAAAA,IAAAI,EAAAA,iBAAA,CAAkB,GAAGF,CAAc,CAAA,CAAE,EAC7C,OAAOG,EAAAA,OAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB,CAAA,CAC1D,EAED,GAAG,yDAA0D,IAAM,CACjEF,EAAA,aAAQC,mBAAkB,CAAA,GAAGF,EAAc,SAAU,GAAI,CAAE,EAC3D,OAAOG,EAAAA,OAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB,CAAA,CACvD,EAED,GAAG,gEAAiE,IAAM,CACxEF,EAAA,aAAQC,mBAAkB,CAAA,GAAGF,EAAc,UAAW,GAAM,CAAE,EAC9D,OAAOG,EAAAA,OAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB,CAAA,CAC1D,EAED,GAAG,8CAA+C,IAAM,CACtDF,EAAAA,OAAQH,EAAAA,IAAAI,EAAAA,iBAAA,CAAkB,GAAGF,CAAc,CAAA,CAAE,EACvC,MAAAI,EAAQD,EAAAA,OAAO,YAAY,cAAc,EACxC,OAAAC,CAAK,EAAE,kBAAkB,CAAA,CACjC,CACH,CAAC"}
@@ -1,10 +1,10 @@
1
- import { j as t } from "../../jsx-runtime-CbmOdJhC.js";
2
- import { r as e, s as a } from "../../react.esm-BL1KU4o5.js";
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import { r as e, s as a } from "../../react.esm-2FJSSo-S.js";
3
3
  import { ReportChartMulti as r } from "./index.es.js";
4
4
  import "chartjs-adapter-date-fns";
5
5
  jest.mock("react-chartjs-2", () => ({
6
6
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
7
- Line: () => /* @__PURE__ */ t.jsx("canvas", { "data-testid": "chartjs-line" })
7
+ Line: () => /* @__PURE__ */ t("canvas", { "data-testid": "chartjs-line" })
8
8
  }));
9
9
  const o = [
10
10
  {
@@ -40,13 +40,13 @@ const o = [
40
40
  };
41
41
  describe("ReportChartMulti", () => {
42
42
  it("renders the chart with the given title", () => {
43
- e(/* @__PURE__ */ t.jsx(r, { ...s })), expect(a.getByText("Test Chart")).toBeInTheDocument();
43
+ e(/* @__PURE__ */ t(r, { ...s })), expect(a.getByText("Test Chart")).toBeInTheDocument();
44
44
  }), it("renders the chart with NO DATA when datasets are empty", () => {
45
- e(/* @__PURE__ */ t.jsx(r, { ...s, datasets: [] })), expect(a.getByText("NO DATA")).toBeInTheDocument();
45
+ e(/* @__PURE__ */ t(r, { ...s, datasets: [] })), expect(a.getByText("NO DATA")).toBeInTheDocument();
46
46
  }), it("renders the chart with loading message when isLoading is true", () => {
47
- e(/* @__PURE__ */ t.jsx(r, { ...s, isLoading: !0 })), expect(a.getByText("loading...")).toBeInTheDocument();
47
+ e(/* @__PURE__ */ t(r, { ...s, isLoading: !0 })), expect(a.getByText("loading...")).toBeInTheDocument();
48
48
  }), it("renders the chart with the correct datasets", () => {
49
- e(/* @__PURE__ */ t.jsx(r, { ...s }));
49
+ e(/* @__PURE__ */ t(r, { ...s }));
50
50
  const i = a.getByTestId("chartjs-line");
51
51
  expect(i).toBeInTheDocument();
52
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.es.js","sources":["../../../src/components/ReportChartMulti/index.test.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { render, screen } from \"@testing-library/react\";\n\nimport { ReportChartMulti } from \".\";\n\nimport \"chartjs-adapter-date-fns\";\n\njest.mock(\"react-chartjs-2\", () => ({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Line: () => <canvas data-testid=\"chartjs-line\" />,\n}));\n\nconst mockDatasets = [\n {\n label: \"Dataset 1\",\n data: [\n { date: \"2024-07-10T00:00:00+09:00\", value: 70 },\n { date: \"2024-07-10T00:05:00+09:00\", value: 75 },\n { date: \"2024-07-10T00:10:00+09:00\", value: 80 },\n ],\n borderColor: \"red\",\n skipEmptyData: true,\n },\n {\n label: \"Dataset 2\",\n data: [\n { date: \"2024-07-10T01:00:00+09:00\", value: 60 },\n { date: \"2024-07-10T01:05:00+09:00\", value: 65 },\n { date: \"2024-07-10T01:10:00+09:00\", value: 70 },\n ],\n borderColor: \"blue\",\n skipEmptyData: false,\n },\n];\n\nconst defaultProps = {\n datasets: mockDatasets,\n title: \"Test Chart\",\n xLabel: \"Time\",\n yLabel: \"Value\",\n xType: \"day\" as const,\n dataIntervalMin: 5,\n chartMargin: { top: 0, right: 20, bottom: 20, left: 10 },\n isLoading: false,\n precision: undefined,\n};\n\ndescribe(\"ReportChartMulti\", () => {\n it(\"renders the chart with the given title\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n expect(screen.getByText(\"Test Chart\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with NO DATA when datasets are empty\", () => {\n render(<ReportChartMulti {...defaultProps} datasets={[]} />);\n expect(screen.getByText(\"NO DATA\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with loading message when isLoading is true\", () => {\n render(<ReportChartMulti {...defaultProps} isLoading={true} />);\n expect(screen.getByText(\"loading...\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with the correct datasets\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n const chart = screen.getByTestId(\"chartjs-line\");\n expect(chart).toBeInTheDocument();\n });\n});\n"],"names":["jsx","mockDatasets","defaultProps","render","ReportChartMulti","screen","chart"],"mappings":";;;;AAOA,KAAK,KAAK,mBAAmB,OAAO;AAAA;AAAA,EAElC,MAAM,MAAOA,gBAAAA,EAAA,IAAA,UAAA,EAAO,eAAY,eAAe,CAAA;AACjD,EAAE;AAEF,MAAMC,IAAe;AAAA,EACnB;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,MACJ,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,IACjD;AAAA,IACA,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,MACJ,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,IACjD;AAAA,IACA,aAAa;AAAA,IACb,eAAe;AAAA,EAAA;AAEnB,GAEMC,IAAe;AAAA,EACnB,UAAUD;AAAA,EACV,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,iBAAiB;AAAA,EACjB,aAAa,EAAE,KAAK,GAAG,OAAO,IAAI,QAAQ,IAAI,MAAM,GAAG;AAAA,EACvD,WAAW;AAAA,EACX,WAAW;AACb;AAEA,SAAS,oBAAoB,MAAM;AACjC,KAAG,0CAA0C,MAAM;AACjD,IAAAE,EAAQH,gBAAAA,EAAAA,IAAAI,GAAA,EAAkB,GAAGF,EAAc,CAAA,CAAE,GAC7C,OAAOG,EAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC1D,GAED,GAAG,0DAA0D,MAAM;AACjE,IAAAF,wBAAQC,GAAkB,EAAA,GAAGF,GAAc,UAAU,IAAI,CAAE,GAC3D,OAAOG,EAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB;AAAA,EAAA,CACvD,GAED,GAAG,iEAAiE,MAAM;AACxE,IAAAF,wBAAQC,GAAkB,EAAA,GAAGF,GAAc,WAAW,IAAM,CAAE,GAC9D,OAAOG,EAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC1D,GAED,GAAG,+CAA+C,MAAM;AACtD,IAAAF,EAAQH,gBAAAA,EAAAA,IAAAI,GAAA,EAAkB,GAAGF,EAAc,CAAA,CAAE;AACvC,UAAAI,IAAQD,EAAO,YAAY,cAAc;AACxC,WAAAC,CAAK,EAAE,kBAAkB;AAAA,EAAA,CACjC;AACH,CAAC;"}
1
+ {"version":3,"file":"index.test.es.js","sources":["../../../src/components/ReportChartMulti/index.test.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { render, screen } from \"@testing-library/react\";\n\nimport { ReportChartMulti } from \".\";\n\nimport \"chartjs-adapter-date-fns\";\n\njest.mock(\"react-chartjs-2\", () => ({\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Line: () => <canvas data-testid=\"chartjs-line\" />,\n}));\n\nconst mockDatasets = [\n {\n label: \"Dataset 1\",\n data: [\n { date: \"2024-07-10T00:00:00+09:00\", value: 70 },\n { date: \"2024-07-10T00:05:00+09:00\", value: 75 },\n { date: \"2024-07-10T00:10:00+09:00\", value: 80 },\n ],\n borderColor: \"red\",\n skipEmptyData: true,\n },\n {\n label: \"Dataset 2\",\n data: [\n { date: \"2024-07-10T01:00:00+09:00\", value: 60 },\n { date: \"2024-07-10T01:05:00+09:00\", value: 65 },\n { date: \"2024-07-10T01:10:00+09:00\", value: 70 },\n ],\n borderColor: \"blue\",\n skipEmptyData: false,\n },\n];\n\nconst defaultProps = {\n datasets: mockDatasets,\n title: \"Test Chart\",\n xLabel: \"Time\",\n yLabel: \"Value\",\n xType: \"day\" as const,\n dataIntervalMin: 5,\n chartMargin: { top: 0, right: 20, bottom: 20, left: 10 },\n isLoading: false,\n precision: undefined,\n};\n\ndescribe(\"ReportChartMulti\", () => {\n it(\"renders the chart with the given title\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n expect(screen.getByText(\"Test Chart\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with NO DATA when datasets are empty\", () => {\n render(<ReportChartMulti {...defaultProps} datasets={[]} />);\n expect(screen.getByText(\"NO DATA\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with loading message when isLoading is true\", () => {\n render(<ReportChartMulti {...defaultProps} isLoading={true} />);\n expect(screen.getByText(\"loading...\")).toBeInTheDocument();\n });\n\n it(\"renders the chart with the correct datasets\", () => {\n render(<ReportChartMulti {...defaultProps} />);\n const chart = screen.getByTestId(\"chartjs-line\");\n expect(chart).toBeInTheDocument();\n });\n});\n"],"names":["jsx","mockDatasets","defaultProps","render","ReportChartMulti","screen","chart"],"mappings":";;;;AAOA,KAAK,KAAK,mBAAmB,OAAO;AAAA;AAAA,EAElC,MAAM,MAAO,gBAAAA,EAAA,UAAA,EAAO,eAAY,eAAe,CAAA;AACjD,EAAE;AAEF,MAAMC,IAAe;AAAA,EACnB;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,MACJ,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,IACjD;AAAA,IACA,aAAa;AAAA,IACb,eAAe;AAAA,EACjB;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,MACJ,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,MAC/C,EAAE,MAAM,6BAA6B,OAAO,GAAG;AAAA,IACjD;AAAA,IACA,aAAa;AAAA,IACb,eAAe;AAAA,EAAA;AAEnB,GAEMC,IAAe;AAAA,EACnB,UAAUD;AAAA,EACV,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,iBAAiB;AAAA,EACjB,aAAa,EAAE,KAAK,GAAG,OAAO,IAAI,QAAQ,IAAI,MAAM,GAAG;AAAA,EACvD,WAAW;AAAA,EACX,WAAW;AACb;AAEA,SAAS,oBAAoB,MAAM;AACjC,KAAG,0CAA0C,MAAM;AACjD,IAAAE,EAAQ,gBAAAH,EAAAI,GAAA,EAAkB,GAAGF,EAAc,CAAA,CAAE,GAC7C,OAAOG,EAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC1D,GAED,GAAG,0DAA0D,MAAM;AACjE,IAAAF,oBAAQC,GAAkB,EAAA,GAAGF,GAAc,UAAU,IAAI,CAAE,GAC3D,OAAOG,EAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB;AAAA,EAAA,CACvD,GAED,GAAG,iEAAiE,MAAM;AACxE,IAAAF,oBAAQC,GAAkB,EAAA,GAAGF,GAAc,WAAW,IAAM,CAAE,GAC9D,OAAOG,EAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC1D,GAED,GAAG,+CAA+C,MAAM;AACtD,IAAAF,EAAQ,gBAAAH,EAAAI,GAAA,EAAkB,GAAGF,EAAc,CAAA,CAAE;AACvC,UAAAI,IAAQD,EAAO,YAAY,cAAc;AACxC,WAAAC,CAAK,EAAE,kBAAkB;AAAA,EAAA,CACjC;AACH,CAAC;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../../jsx-runtime-Dajn0hD2.cjs"),l=require("@mui/material"),i=o=>{const{dialogTitle:t,dialogContent:s,dialogActions:r,open:a,onCloseDialog:n,...c}=o;return e.jsxRuntimeExports.jsxs(l.Dialog,{...c,open:a,onClose:()=>n("cancel"),scroll:"paper","aria-labelledby":"scroll-dialog-title","aria-describedby":"scroll-dialog-description",children:[e.jsxRuntimeExports.jsx(l.DialogTitle,{sx:{display:"flex",gap:"5px",alignItems:"center"},children:t}),e.jsxRuntimeExports.jsx(l.DialogContent,{dividers:!0,children:e.jsxRuntimeExports.jsx(l.DialogContentText,{tabIndex:-1,children:s})}),e.jsxRuntimeExports.jsx(l.DialogActions,{sx:{gap:"10px"},children:r})]})};exports.ScrollableDialog=i;exports.default=i;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),l=require("@mui/material"),i=o=>{const{dialogTitle:a,dialogContent:t,dialogActions:r,open:s,onCloseDialog:n,...c}=o;return e.jsxs(l.Dialog,{...c,open:s,onClose:()=>n("cancel"),scroll:"paper","aria-labelledby":"scroll-dialog-title","aria-describedby":"scroll-dialog-description",children:[e.jsx(l.DialogTitle,{sx:{display:"flex",gap:"5px",alignItems:"center"},children:a}),e.jsx(l.DialogContent,{dividers:!0,children:e.jsx(l.DialogContentText,{tabIndex:-1,children:t})}),e.jsx(l.DialogActions,{sx:{gap:"10px"},children:r})]})};exports.ScrollableDialog=i;exports.default=i;
2
2
  //# sourceMappingURL=index.cjs.js.map