@erpsquad/common 1.8.46 → 1.8.47

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 (255) hide show
  1. package/dist/_virtual/index/index.esm.js +4 -2
  2. package/dist/_virtual/index/index.esm.js.map +1 -1
  3. package/dist/_virtual/index/index.esm2.js +2 -4
  4. package/dist/_virtual/index/index.esm2.js.map +1 -1
  5. package/dist/_virtual/index/index.js +1 -1
  6. package/dist/_virtual/index/index2.js +1 -1
  7. package/dist/assets/index.d.ts +0 -1
  8. package/dist/components/charts/index.d.ts +3 -0
  9. package/dist/components/charts/line-chart/area-lineChart/index.esm.js +55 -0
  10. package/dist/components/charts/line-chart/area-lineChart/index.esm.js.map +1 -0
  11. package/dist/components/charts/line-chart/area-lineChart/index.js +2 -0
  12. package/dist/components/charts/line-chart/area-lineChart/index.js.map +1 -0
  13. package/dist/components/charts/{bar-chart/bar-chart → line-chart/line-chart}/index.esm.js +49 -27
  14. package/dist/components/charts/line-chart/line-chart/index.esm.js.map +1 -0
  15. package/dist/components/charts/line-chart/line-chart/index.js +2 -0
  16. package/dist/components/charts/line-chart/line-chart/index.js.map +1 -0
  17. package/dist/components/header/redux/reducer/index.esm.js +6 -1
  18. package/dist/components/header/redux/reducer/index.esm.js.map +1 -1
  19. package/dist/components/header/redux/reducer/index.js +1 -1
  20. package/dist/components/header/redux/reducer/index.js.map +1 -1
  21. package/dist/components/index.d.ts +9 -0
  22. package/dist/components/index.esm.js +273 -77
  23. package/dist/components/index.esm.js.map +1 -1
  24. package/dist/components/index.js +1 -1
  25. package/dist/components/material-table/aggregation-fns/index/index.esm.js +10 -0
  26. package/dist/components/material-table/aggregation-fns/index/index.esm.js.map +1 -1
  27. package/dist/components/material-table/aggregation-fns/index/index.js +1 -1
  28. package/dist/components/material-table/aggregation-fns/index/index.js.map +1 -1
  29. package/dist/components/material-table/components/number-aggregation/index.esm.js +134 -0
  30. package/dist/components/material-table/components/number-aggregation/index.esm.js.map +1 -0
  31. package/dist/components/material-table/components/number-aggregation/index.js +5 -0
  32. package/dist/components/material-table/components/number-aggregation/index.js.map +1 -0
  33. package/dist/components/reports-title-bar/redux/reducer/index.esm.js +2 -0
  34. package/dist/components/reports-title-bar/redux/reducer/index.esm.js.map +1 -1
  35. package/dist/components/reports-title-bar/redux/reducer/index.js +1 -1
  36. package/dist/components/reports-title-bar/redux/reducer/index.js.map +1 -1
  37. package/dist/components/reports-title-bar/report-buttons/report-buttons/index.esm.js +60 -0
  38. package/dist/components/reports-title-bar/report-buttons/report-buttons/index.esm.js.map +1 -0
  39. package/dist/components/reports-title-bar/report-buttons/report-buttons/index.js +2 -0
  40. package/dist/components/reports-title-bar/report-buttons/report-buttons/index.js.map +1 -0
  41. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js +736 -0
  42. package/dist/components/reports-title-bar/reports-title-bar/index.esm.js.map +1 -0
  43. package/dist/components/reports-title-bar/reports-title-bar/index.js +39 -0
  44. package/dist/components/reports-title-bar/reports-title-bar/index.js.map +1 -0
  45. package/dist/components/select/controller/chip-or-placeholder/index.esm.js +25 -0
  46. package/dist/components/select/controller/chip-or-placeholder/index.esm.js.map +1 -0
  47. package/dist/components/select/controller/chip-or-placeholder/index.js +2 -0
  48. package/dist/components/select/controller/chip-or-placeholder/index.js.map +1 -0
  49. package/dist/components/select/controller/controller-select/index.esm.js +165 -0
  50. package/dist/components/select/controller/controller-select/index.esm.js.map +1 -0
  51. package/dist/components/select/controller/controller-select/index.js +10 -0
  52. package/dist/components/select/controller/controller-select/index.js.map +1 -0
  53. package/dist/components/share-modal/redux/reducer/index.esm.js +2 -0
  54. package/dist/components/share-modal/redux/reducer/index.esm.js.map +1 -1
  55. package/dist/components/share-modal/redux/reducer/index.js +1 -1
  56. package/dist/components/share-modal/redux/reducer/index.js.map +1 -1
  57. package/dist/index.esm.js +354 -136
  58. package/dist/index.esm.js.map +1 -1
  59. package/dist/index.js +1 -1
  60. package/dist/node_modules/@mui/icons-material/esm/Remove/index.esm.js +9 -0
  61. package/dist/node_modules/@mui/icons-material/esm/Remove/index.esm.js.map +1 -0
  62. package/dist/node_modules/@mui/icons-material/esm/Remove/index.js +2 -0
  63. package/dist/node_modules/@mui/icons-material/esm/Remove/index.js.map +1 -0
  64. package/dist/node_modules/@mui/icons-material/utils/createSvgIcon/index.esm.js +1 -1
  65. package/dist/node_modules/@mui/icons-material/utils/createSvgIcon/index.js +1 -1
  66. package/dist/node_modules/@mui/icons-material/utils/createSvgIcon/index.js.map +1 -1
  67. package/dist/node_modules/prop-types/index/index.esm.js +1 -1
  68. package/dist/node_modules/prop-types/index/index.js +1 -1
  69. package/dist/node_modules/prop-types/index/index.js.map +1 -1
  70. package/dist/src/assets/index.d.ts +0 -1
  71. package/dist/src/components/charts/index.d.ts +3 -0
  72. package/dist/src/components/index.d.ts +9 -1
  73. package/dist/src/views/afterAuth/index.d.ts +1 -0
  74. package/dist/src/views/beforeAuth/index.d.ts +0 -1
  75. package/dist/src/views/index.d.ts +1 -0
  76. package/dist/style.css +72 -72
  77. package/dist/views/afterAuth/dashboard/redux/reducer/index.esm.js +0 -6
  78. package/dist/views/afterAuth/dashboard/redux/reducer/index.esm.js.map +1 -1
  79. package/dist/views/afterAuth/dashboard/redux/reducer/index.js +1 -1
  80. package/dist/views/afterAuth/dashboard/redux/reducer/index.js.map +1 -1
  81. package/dist/views/afterAuth/index.d.ts +1 -0
  82. package/dist/views/afterAuth/page-view/page-view/index.esm.js +101 -0
  83. package/dist/views/afterAuth/page-view/page-view/index.esm.js.map +1 -0
  84. package/dist/views/afterAuth/page-view/page-view/index.js +6 -0
  85. package/dist/views/afterAuth/page-view/page-view/index.js.map +1 -0
  86. package/dist/views/afterAuth/page-view/redux/actionCreator/index.esm.js +13 -0
  87. package/dist/views/afterAuth/page-view/redux/actionCreator/index.esm.js.map +1 -0
  88. package/dist/views/afterAuth/page-view/redux/actionCreator/index.js +2 -0
  89. package/dist/views/afterAuth/page-view/redux/actionCreator/index.js.map +1 -0
  90. package/dist/views/afterAuth/page-view/redux/reducer/index.esm.js +63 -0
  91. package/dist/views/afterAuth/page-view/redux/reducer/index.esm.js.map +1 -0
  92. package/dist/views/afterAuth/page-view/redux/reducer/index.js +2 -0
  93. package/dist/views/afterAuth/page-view/redux/reducer/index.js.map +1 -0
  94. package/dist/views/afterAuth/page-view/redux/state/index.esm.js +31 -0
  95. package/dist/views/afterAuth/page-view/redux/state/index.esm.js.map +1 -0
  96. package/dist/views/afterAuth/page-view/redux/state/index.js +2 -0
  97. package/dist/views/afterAuth/page-view/redux/state/index.js.map +1 -0
  98. package/dist/views/afterAuth/page-view/utils/default-data/index.esm.js +137 -0
  99. package/dist/views/afterAuth/page-view/utils/default-data/index.esm.js.map +1 -0
  100. package/dist/views/afterAuth/page-view/utils/default-data/index.js +2 -0
  101. package/dist/views/afterAuth/page-view/utils/default-data/index.js.map +1 -0
  102. package/dist/views/afterAuth/page-view/utils/local-data/index.esm.js +137 -0
  103. package/dist/views/afterAuth/page-view/utils/local-data/index.esm.js.map +1 -0
  104. package/dist/views/afterAuth/page-view/utils/local-data/index.js +2 -0
  105. package/dist/views/afterAuth/page-view/utils/local-data/index.js.map +1 -0
  106. package/dist/views/beforeAuth/index.d.ts +0 -1
  107. package/dist/views/form-builder/custom-form/index.esm.js +1151 -0
  108. package/dist/views/form-builder/custom-form/index.esm.js.map +1 -0
  109. package/dist/views/form-builder/custom-form/index.js +30 -0
  110. package/dist/views/form-builder/custom-form/index.js.map +1 -0
  111. package/dist/views/form-builder/element-edit-forms/checkbox/index.esm.js +327 -0
  112. package/dist/views/form-builder/element-edit-forms/checkbox/index.esm.js.map +1 -0
  113. package/dist/views/form-builder/element-edit-forms/checkbox/index.js +30 -0
  114. package/dist/views/form-builder/element-edit-forms/checkbox/index.js.map +1 -0
  115. package/dist/views/form-builder/element-edit-forms/column-width/index.esm.js +92 -0
  116. package/dist/views/form-builder/element-edit-forms/column-width/index.esm.js.map +1 -0
  117. package/dist/views/form-builder/element-edit-forms/column-width/index.js +4 -0
  118. package/dist/views/form-builder/element-edit-forms/column-width/index.js.map +1 -0
  119. package/dist/views/form-builder/element-edit-forms/field-select/index.esm.js +89 -0
  120. package/dist/views/form-builder/element-edit-forms/field-select/index.esm.js.map +1 -0
  121. package/dist/views/form-builder/element-edit-forms/field-select/index.js +3 -0
  122. package/dist/views/form-builder/element-edit-forms/field-select/index.js.map +1 -0
  123. package/dist/views/form-builder/element-edit-forms/section/index.esm.js +222 -0
  124. package/dist/views/form-builder/element-edit-forms/section/index.esm.js.map +1 -0
  125. package/dist/views/form-builder/element-edit-forms/section/index.js +15 -0
  126. package/dist/views/form-builder/element-edit-forms/section/index.js.map +1 -0
  127. package/dist/views/form-builder/element-edit-forms/select/index.esm.js +318 -0
  128. package/dist/views/form-builder/element-edit-forms/select/index.esm.js.map +1 -0
  129. package/dist/views/form-builder/element-edit-forms/select/index.js +25 -0
  130. package/dist/views/form-builder/element-edit-forms/select/index.js.map +1 -0
  131. package/dist/views/form-builder/element-edit-forms/table-form/index.esm.js +111 -0
  132. package/dist/views/form-builder/element-edit-forms/table-form/index.esm.js.map +1 -0
  133. package/dist/views/form-builder/element-edit-forms/table-form/index.js +5 -0
  134. package/dist/views/form-builder/element-edit-forms/table-form/index.js.map +1 -0
  135. package/dist/views/form-builder/element-edit-forms/text/index.esm.js +559 -0
  136. package/dist/views/form-builder/element-edit-forms/text/index.esm.js.map +1 -0
  137. package/dist/views/form-builder/element-edit-forms/text/index.js +31 -0
  138. package/dist/views/form-builder/element-edit-forms/text/index.js.map +1 -0
  139. package/dist/views/form-builder/field_properties/index.esm.js +216 -0
  140. package/dist/views/form-builder/field_properties/index.esm.js.map +1 -0
  141. package/dist/views/form-builder/field_properties/index.js +2 -0
  142. package/dist/views/form-builder/field_properties/index.js.map +1 -0
  143. package/dist/views/form-builder/form-fields/index.esm.js +355 -0
  144. package/dist/views/form-builder/form-fields/index.esm.js.map +1 -0
  145. package/dist/views/form-builder/form-fields/index.js +24 -0
  146. package/dist/views/form-builder/form-fields/index.js.map +1 -0
  147. package/dist/views/form-builder/redux/actionCreator/index.esm.js +1 -1
  148. package/dist/views/form-builder/redux/reducer/index.esm.js +6 -1
  149. package/dist/views/form-builder/redux/reducer/index.esm.js.map +1 -1
  150. package/dist/views/form-builder/redux/reducer/index.js +1 -1
  151. package/dist/views/form-builder/redux/reducer/index.js.map +1 -1
  152. package/dist/views/form-builder/utils/common/index.esm.js +285 -0
  153. package/dist/views/form-builder/utils/common/index.esm.js.map +1 -0
  154. package/dist/views/form-builder/utils/common/index.js +2 -0
  155. package/dist/views/form-builder/utils/common/index.js.map +1 -0
  156. package/dist/views/index.d.ts +1 -0
  157. package/dist/views/index.esm.js +90 -45
  158. package/dist/views/index.esm.js.map +1 -1
  159. package/dist/views/index.js +1 -1
  160. package/package.json +2 -1
  161. package/dist/components/activity-tag/activity-tag/index.esm.js +0 -154
  162. package/dist/components/activity-tag/activity-tag/index.esm.js.map +0 -1
  163. package/dist/components/activity-tag/activity-tag/index.js +0 -15
  164. package/dist/components/activity-tag/activity-tag/index.js.map +0 -1
  165. package/dist/components/charts/bar-chart/bar-chart/index.esm.js.map +0 -1
  166. package/dist/components/charts/bar-chart/bar-chart/index.js +0 -2
  167. package/dist/components/charts/bar-chart/bar-chart/index.js.map +0 -1
  168. package/dist/components/charts/donut-chart/donut-chart/index.esm.js +0 -86
  169. package/dist/components/charts/donut-chart/donut-chart/index.esm.js.map +0 -1
  170. package/dist/components/charts/donut-chart/donut-chart/index.js +0 -6
  171. package/dist/components/charts/donut-chart/donut-chart/index.js.map +0 -1
  172. package/dist/node_modules/@mui/lab/Timeline/Timeline/index.esm.js +0 -95
  173. package/dist/node_modules/@mui/lab/Timeline/Timeline/index.esm.js.map +0 -1
  174. package/dist/node_modules/@mui/lab/Timeline/Timeline/index.js +0 -3
  175. package/dist/node_modules/@mui/lab/Timeline/Timeline/index.js.map +0 -1
  176. package/dist/node_modules/@mui/lab/Timeline/TimelineContext/index.esm.js +0 -10
  177. package/dist/node_modules/@mui/lab/Timeline/TimelineContext/index.esm.js.map +0 -1
  178. package/dist/node_modules/@mui/lab/Timeline/TimelineContext/index.js +0 -2
  179. package/dist/node_modules/@mui/lab/Timeline/TimelineContext/index.js.map +0 -1
  180. package/dist/node_modules/@mui/lab/Timeline/timelineClasses/index.esm.js +0 -10
  181. package/dist/node_modules/@mui/lab/Timeline/timelineClasses/index.esm.js.map +0 -1
  182. package/dist/node_modules/@mui/lab/Timeline/timelineClasses/index.js +0 -2
  183. package/dist/node_modules/@mui/lab/Timeline/timelineClasses/index.js.map +0 -1
  184. package/dist/node_modules/@mui/lab/TimelineConnector/TimelineConnector/index.esm.js +0 -76
  185. package/dist/node_modules/@mui/lab/TimelineConnector/TimelineConnector/index.esm.js.map +0 -1
  186. package/dist/node_modules/@mui/lab/TimelineConnector/TimelineConnector/index.js +0 -3
  187. package/dist/node_modules/@mui/lab/TimelineConnector/TimelineConnector/index.js.map +0 -1
  188. package/dist/node_modules/@mui/lab/TimelineConnector/timelineConnectorClasses/index.esm.js +0 -10
  189. package/dist/node_modules/@mui/lab/TimelineConnector/timelineConnectorClasses/index.esm.js.map +0 -1
  190. package/dist/node_modules/@mui/lab/TimelineConnector/timelineConnectorClasses/index.js +0 -2
  191. package/dist/node_modules/@mui/lab/TimelineConnector/timelineConnectorClasses/index.js.map +0 -1
  192. package/dist/node_modules/@mui/lab/TimelineContent/TimelineContent/index.esm.js +0 -91
  193. package/dist/node_modules/@mui/lab/TimelineContent/TimelineContent/index.esm.js.map +0 -1
  194. package/dist/node_modules/@mui/lab/TimelineContent/TimelineContent/index.js +0 -3
  195. package/dist/node_modules/@mui/lab/TimelineContent/TimelineContent/index.js.map +0 -1
  196. package/dist/node_modules/@mui/lab/TimelineContent/timelineContentClasses/index.esm.js +0 -11
  197. package/dist/node_modules/@mui/lab/TimelineContent/timelineContentClasses/index.esm.js.map +0 -1
  198. package/dist/node_modules/@mui/lab/TimelineContent/timelineContentClasses/index.js +0 -2
  199. package/dist/node_modules/@mui/lab/TimelineContent/timelineContentClasses/index.js.map +0 -1
  200. package/dist/node_modules/@mui/lab/TimelineDot/TimelineDot/index.esm.js +0 -118
  201. package/dist/node_modules/@mui/lab/TimelineDot/TimelineDot/index.esm.js.map +0 -1
  202. package/dist/node_modules/@mui/lab/TimelineDot/TimelineDot/index.js +0 -3
  203. package/dist/node_modules/@mui/lab/TimelineDot/TimelineDot/index.js.map +0 -1
  204. package/dist/node_modules/@mui/lab/TimelineDot/timelineDotClasses/index.esm.js +0 -10
  205. package/dist/node_modules/@mui/lab/TimelineDot/timelineDotClasses/index.esm.js.map +0 -1
  206. package/dist/node_modules/@mui/lab/TimelineDot/timelineDotClasses/index.js +0 -2
  207. package/dist/node_modules/@mui/lab/TimelineDot/timelineDotClasses/index.js.map +0 -1
  208. package/dist/node_modules/@mui/lab/TimelineItem/TimelineItem/index.esm.js +0 -128
  209. package/dist/node_modules/@mui/lab/TimelineItem/TimelineItem/index.esm.js.map +0 -1
  210. package/dist/node_modules/@mui/lab/TimelineItem/TimelineItem/index.js +0 -3
  211. package/dist/node_modules/@mui/lab/TimelineItem/TimelineItem/index.js.map +0 -1
  212. package/dist/node_modules/@mui/lab/TimelineItem/timelineItemClasses/index.esm.js +0 -10
  213. package/dist/node_modules/@mui/lab/TimelineItem/timelineItemClasses/index.esm.js.map +0 -1
  214. package/dist/node_modules/@mui/lab/TimelineItem/timelineItemClasses/index.js +0 -2
  215. package/dist/node_modules/@mui/lab/TimelineItem/timelineItemClasses/index.js.map +0 -1
  216. package/dist/node_modules/@mui/lab/TimelineOppositeContent/timelineOppositeContentClasses/index.esm.js +0 -6
  217. package/dist/node_modules/@mui/lab/TimelineOppositeContent/timelineOppositeContentClasses/index.esm.js.map +0 -1
  218. package/dist/node_modules/@mui/lab/TimelineOppositeContent/timelineOppositeContentClasses/index.js +0 -2
  219. package/dist/node_modules/@mui/lab/TimelineOppositeContent/timelineOppositeContentClasses/index.js.map +0 -1
  220. package/dist/node_modules/@mui/lab/TimelineSeparator/TimelineSeparator/index.esm.js +0 -73
  221. package/dist/node_modules/@mui/lab/TimelineSeparator/TimelineSeparator/index.esm.js.map +0 -1
  222. package/dist/node_modules/@mui/lab/TimelineSeparator/TimelineSeparator/index.js +0 -3
  223. package/dist/node_modules/@mui/lab/TimelineSeparator/TimelineSeparator/index.js.map +0 -1
  224. package/dist/node_modules/@mui/lab/TimelineSeparator/timelineSeparatorClasses/index.esm.js +0 -10
  225. package/dist/node_modules/@mui/lab/TimelineSeparator/timelineSeparatorClasses/index.esm.js.map +0 -1
  226. package/dist/node_modules/@mui/lab/TimelineSeparator/timelineSeparatorClasses/index.js +0 -2
  227. package/dist/node_modules/@mui/lab/TimelineSeparator/timelineSeparatorClasses/index.js.map +0 -1
  228. package/dist/node_modules/@mui/lab/internal/convertTimelinePositionToClass/index.esm.js +0 -8
  229. package/dist/node_modules/@mui/lab/internal/convertTimelinePositionToClass/index.esm.js.map +0 -1
  230. package/dist/node_modules/@mui/lab/internal/convertTimelinePositionToClass/index.js +0 -2
  231. package/dist/node_modules/@mui/lab/internal/convertTimelinePositionToClass/index.js.map +0 -1
  232. package/dist/node_modules/d3-shape/src/arc/index.esm.js +0 -134
  233. package/dist/node_modules/d3-shape/src/arc/index.esm.js.map +0 -1
  234. package/dist/node_modules/d3-shape/src/arc/index.js +0 -2
  235. package/dist/node_modules/d3-shape/src/arc/index.js.map +0 -1
  236. package/dist/node_modules/d3-shape/src/descending/index.esm.js +0 -7
  237. package/dist/node_modules/d3-shape/src/descending/index.esm.js.map +0 -1
  238. package/dist/node_modules/d3-shape/src/descending/index.js +0 -2
  239. package/dist/node_modules/d3-shape/src/descending/index.js.map +0 -1
  240. package/dist/node_modules/d3-shape/src/identity/index.esm.js +0 -7
  241. package/dist/node_modules/d3-shape/src/identity/index.esm.js.map +0 -1
  242. package/dist/node_modules/d3-shape/src/identity/index.js +0 -2
  243. package/dist/node_modules/d3-shape/src/identity/index.js.map +0 -1
  244. package/dist/node_modules/d3-shape/src/math/index.esm.js +0 -33
  245. package/dist/node_modules/d3-shape/src/math/index.esm.js.map +0 -1
  246. package/dist/node_modules/d3-shape/src/math/index.js +0 -2
  247. package/dist/node_modules/d3-shape/src/math/index.js.map +0 -1
  248. package/dist/node_modules/d3-shape/src/pie/index.esm.js +0 -56
  249. package/dist/node_modules/d3-shape/src/pie/index.esm.js.map +0 -1
  250. package/dist/node_modules/d3-shape/src/pie/index.js +0 -2
  251. package/dist/node_modules/d3-shape/src/pie/index.js.map +0 -1
  252. package/dist/views/beforeAuth/login/index/index.esm.js +0 -209
  253. package/dist/views/beforeAuth/login/index/index.esm.js.map +0 -1
  254. package/dist/views/beforeAuth/login/index/index.js +0 -20
  255. package/dist/views/beforeAuth/login/index/index.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../../../src/components/reports-title-bar/reports-title-bar.tsx"],"sourcesContent":["import Button from \"../button/button\";\nimport Typography from \"../typography/typography\";\nimport \"./reports-title-bar.scss\";\n\nimport TitleDropdownButton from \"../title-dropdown-button/title-dropdown-button\";\nimport { useEffect, useRef, useState } from \"react\";\nimport KeyboardArrowDownIcon from \"@mui/icons-material/KeyboardArrowDown\";\nimport { generateFields } from \"../../utils/common\";\nimport ReportButtons, { IReportButtons } from \"./report-buttons/report-buttons\";\nimport TabBar, { TabProps } from \"../tabs/tabs\";\nimport { Box, ButtonGroup, ClickAwayListener, Grow, Menu, MenuItem, Paper, Popper, Button as MuiButton, Divider } from \"@mui/material\";\nimport images from \"../../assets/images\";\nimport {\n handleCompareDateRange,\n RANGE,\n} from \"../../utils/date-range\";\nimport { DateRange, Calendar } from \"react-date-range\";\nimport \"react-date-range/dist/styles.css\"; // main css file\nimport \"react-date-range/dist/theme/default.css\"; // theme css file\nimport dayjs from \"dayjs\";\nimport { useAppDispatch } from \"../../redux/hooks\";\nimport { fetchCompanies } from \"./redux/actionCreator\";\nimport SearchableSelect from \"../searchable-select\";\nimport Checkbox from \"../checkbox/checkbox\";\nimport { useTranslation } from \"react-i18next\";\nimport React from \"react\";\nimport { Calendar as CalendarIcon, Export as ExportIcon, Filter as FilterIcon } from \"../icons\";\nimport { enUS } from 'date-fns/locale';\n\ninterface IReportFilters {\n company: number;\n start_date: string;\n end_date: string;\n as_of_date: string;\n}\n\ninterface ActionBarPropsType extends Partial<TabProps>, IReportButtons {\n title: string;\n handleAddButton?: (e?: any) => void;\n isTitleMenu?: boolean;\n titleMenus?: any;\n reportFilterFields?: any[];\n isDateFilterEnabled?: boolean;\n onDateFilterChange?: (\n data: Partial<{\n company: string | number;\n start_date: string;\n end_date: string;\n as_of_date: string;\n }>\n ) => void;\n filters?: Partial<IReportFilters>;\n isDateRange?: boolean;\n showDateFilter?: boolean;\n dateFilter?: string;\n showCancelButton?: boolean;\n}\n\ntype TDatePickerVal = {\n startDate?: Date;\n endDate?: Date;\n key?: string;\n};\n\nconst ReportsTitleBar = (props: ActionBarPropsType) => {\n const {\n title,\n handleAddButton,\n buttons = [],\n dropdownMenuButtonData,\n isTitleMenu = false,\n titleMenus = [],\n reportFilterFields = [],\n toggleCallback,\n tabs,\n activeValue,\n setActiveValue,\n isDateFilterEnabled=true,\n onDateFilterChange,\n // showCancelButton,\n filters = {},\n isDateRange = true,\n showDateFilter = false,\n dateFilter = 'TODAY',\n filterDropDown,\n handleRowsCollapse,\n handleRowsExpand,\n showLevelBtn=false,\n dataLength=0,\n filterKeys={},\n } = props;\n // const { companies } = useAppSelector((store) => store.reportsTitleBar);\n\n const dispatch = useAppDispatch();\n const customStyle =\n {\n \n '&.MuiOutlinedInput-root': {\n '& fieldset': {\n border: 'none',\n borderColor: `#ade7cb`,\n borderRadius: `25px`\n },\n '& .MuiSelect-outlined': {\n padding: `4.5px 14px !important`\n },\n // '&:hover fieldset': {\n // border: 'none',\n // },\n\n // '&.Mui-focused fieldset': {\n // border: 'none',\n // },\n display: `flex`,\n gap: `4px`,\n width: `220px`,\n // height: 30px,\n border: `1px solid #ade7cb`,\n borderRadius: `50px`,\n backgroundColor: `#ebf9f2`,\n color: `#289b64`,\n alignItems: `center`,\n cursor: `pointer`,\n // height: `30px`\n \n },\n }\nconst inputStyle=\n {\n border: \"none\",\n \"&.Mui-focused\": {\n borderColor: \"transparent\",\n },\n \"& .MuiOutlinedInput-input\": {\n // padding: \"0px\",\n fontSize: \"14px\",\n color:'#289b64'\n },\n \"& .MuiOutlinedInput-notchedOutline\": {\n border: \"none\", \n },\n '& .MuiSelect-icon': {\n color: 'green',\n },\n}\n\n const defaultSelected=[\n {\n value:'company',\n },\n ]\n const [selectedItems, setSelectedItems] = useState<string[]>(defaultSelected);\n const [level, setLevel] = useState<number>(1)\n\n // const selectedCompany = useMemo(\n // () =>\n // companies?.find((company) => filters?.company === company.id)\n // ?.company_name || \"\",\n // [companies, filters?.company]\n // );\n \n\n // eslint-disable-next-line unused-imports/no-unused-vars, @typescript-eslint/no-unused-vars\n const [actionAnchorEl, setActionAnchorEl] = useState<null | HTMLElement>(\n null\n );\n // eslint-disable-next-line unused-imports/no-unused-vars, @typescript-eslint/no-unused-vars\n const [allFields, setAllFields] = useState<any[]>([]);\n const [dateRange, setDateRange] = useState<keyof typeof RANGE>();\n const [open, setOpen] = useState<boolean>(false);\n const [exportAnchorEl, setExportAnchorEl] = useState<null | HTMLElement>(null);\n const [customDate, setCustomDate] = useState<Date>(\n new Date(dayjs(filters?.as_of_date || \"\").format(\"YYYY-MM-DD\"))\n );\n const {t}=useTranslation();\n const [customDateRange, setCustomDateRange] = useState<TDatePickerVal>({\n startDate: new Date(dayjs(filters?.start_date || \"\").format(\"YYYY-MM-DD\")),\n endDate: new Date(dayjs(filters?.end_date || \"\").format(\"YYYY-MM-DD\")),\n key: \"selection\",\n });\n\n const anchorRef = useRef<HTMLDivElement | null>(null);\n const dateSelectRef = useRef<HTMLDivElement>(null);\n const chipDateSelectRef = useRef<HTMLDivElement>(null);\n\n const handleCloseDatePopper = () => {\n anchorRef.current = null;\n setOpen(false);\n };\n\n const handleDateChange = async (range: keyof typeof RANGE) => {\n setDateRange(range);\n if (range === \"CUSTOM\") {\n anchorRef.current = dateSelectRef.current;\n setOpen(true);\n } else {\n const data = await handleCompareDateRange({\n range: RANGE[range],\n from: \"\",\n to: \"\",\n });\n onDateFilterChange?.({\n start_date: data?.from ? data?.from : \"\",\n end_date: data?.to ? data?.to : \"\",\n });\n handleCloseDatePopper();\n }\n };\n\n const handleClose = (event: Event) => {\n if (\n anchorRef.current &&\n anchorRef.current.contains(event.target as HTMLElement)\n ) {\n return;\n }\n\n handleCloseDatePopper();\n };\n const handleSelectChange = (value: any) => {\n if (selectedItems.some((item) => item.value == value.value)) {\n setSelectedItems(selectedItems.filter((item) => item?.value != value.value));\n return;\n }\n setSelectedItems([...selectedItems, value]);\n };\n // Create filters config from filterDropDown and filterKeys\n // If reportFilters is needed, it should be provided by the consuming application\n const filtersConfig = filterDropDown?.map((filter: any) => ({\n key: filter.value || filter.key,\n label: filter.name || filter.label || `Search ${filter.value || filter.key}`,\n placeholder: filter.placeholder || filter.name || filter.label,\n apiType: filter.apiType || filter.value || filter.key,\n valueKey: filterKeys?.[filter.value || filter.key] || filter.value || filter.key,\n customFilter: filter.customFilter || null,\n multiple: filter.multiple || false,\n })) || []\n\n const options = [\n {\n label: RANGE.TODAY,\n callback: () => {\n handleDateChange(\"TODAY\");\n },\n },\n {\n label: RANGE.THIS_WEEK,\n callback: () => {\n handleDateChange(\"THIS_WEEK\");\n },\n },\n {\n label: RANGE.THIS_MONTH,\n callback: () => {\n handleDateChange(\"THIS_MONTH\");\n },\n },\n {\n label: RANGE.THIS_QUARTER,\n callback: () => {\n handleDateChange(\"THIS_QUARTER\");\n },\n },\n {\n label: RANGE.THIS_YEAR,\n callback: () => {\n handleDateChange(\"THIS_YEAR\");\n },\n },\n {\n label: RANGE.YESTERDAY,\n callback: () => {\n handleDateChange(\"YESTERDAY\");\n },\n },\n {\n label: RANGE.PREVIOUS_WEEK,\n callback: () => {\n handleDateChange(\"PREVIOUS_WEEK\");\n },\n },\n {\n label: RANGE.PREVIOUS_MONTH,\n callback: () => {\n handleDateChange(\"PREVIOUS_MONTH\");\n },\n },\n {\n label: RANGE.PREVIOUS_QUARTER,\n callback: () => {\n handleDateChange(\"PREVIOUS_QUARTER\");\n },\n },\n {\n label: RANGE.PREVIOUS_YEAR,\n callback: () => {\n handleDateChange(\"PREVIOUS_YEAR\");\n },\n },\n {\n label: RANGE.CUSTOM,\n callback: () => {\n handleDateChange(\"CUSTOM\");\n },\n },\n ];\n\n const isChecked =(value: any) => {\n return selectedItems.some(item => item?.value == value?.value)\n }\n \n const handleFilterPopperSubmit = () => {\n const dateRangeFilter = {\n start_date: dayjs(customDateRange.startDate).format(\"YYYY-MM-DD\"),\n end_date: dayjs(customDateRange.endDate).format(\"YYYY-MM-DD\"),\n };\n const dateFilter = {\n as_of_date: dayjs(customDate).format(\"YYYY-MM-DD\"),\n };\n\n onDateFilterChange?.({\n ...(isDateRange ? dateRangeFilter : dateFilter),\n });\n handleCloseDatePopper();\n };\n function showFilter(val) {\n return selectedItems.some(item => item?.value == val)\n }\n\n const getStartAndEndDate = (filters: any) => {\n const startDate = dayjs(filters?.start_date).isValid() ? dayjs(filters.start_date).toDate() : new Date();\n const endDate = dayjs(filters?.end_date).isValid() ? dayjs(filters.end_date).toDate() : new Date();\n return { startDate, endDate };\n};\n\n useEffect(() => {\n setCustomDate(\n new Date(dayjs(filters?.as_of_date || \"\").format(\"YYYY-MM-DD\"))\n );\n }, [filters?.as_of_date]);\n\n useEffect(() => {\n setCustomDateRange({\n ...customDateRange,\n ...getStartAndEndDate(filters)\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters?.end_date, filters?.start_date]);\n\n useEffect(() => {\n if (open) {\n if (isDateRange) {\n setCustomDateRange({\n ...customDateRange,\n ...getStartAndEndDate(filters)\n });\n } else {\n setCustomDate(\n new Date(dayjs(filters?.as_of_date || \"\").format(\"YYYY-MM-DD\"))\n );\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, isDateRange]);\n\n useEffect(() => {\n dispatch(fetchCompanies());\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n setAllFields(generateFields(reportFilterFields));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n useEffect(() => {\n handleDateChange(dateFilter)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dateFilter]);\n\n const filterDropDownFunc = () => {\n return (\n <Menu\n anchorEl={actionAnchorEl}\n open={Boolean(actionAnchorEl)}\n onClose={handleFilterClose}\n >\n {/* <MenuItem className=\"inventoryReportsTitleBar--report-filter\"> */}\n {/* Add your options here */}\n {filterDropDown?.map((item) => (\n <MenuItem onClick={() => handleSelectChange(item)} key={item} value={item?.value}>\n <Checkbox checked={isChecked(item)} />\n <Typography sx={{marginLeft:'10px'}} color='theme.neutral.800' type='s3'>{item?.name}</Typography>\n </MenuItem>\n ))}\n {/* </MenuItem> */}\n </Menu>\n );\n };\n\n const renderFilter = ({\n key,\n label,\n placeholder,\n apiType,\n valueKey,\n customFilter,\n multiple = false,\n options,\n show=true,\n showCancelButton=true\n }: FilterConfig) => {\n if (!showFilter(key)||!show) return null;\n \n return (\n // <div className=\"search-filter\" key={key}>\n <SearchableSelect\n labelId={`${key}-label`}\n searchPlaceholder={label}\n value={filters?.[valueKey]}\n onChange={(e) => onDateFilterChange({ [valueKey]: e.target.value })}\n showCancelButton={showCancelButton}\n apiType={apiType}\n options={options}\n multiple={multiple}\n placeholder={placeholder}\n customeFilter={customFilter}\n // CustomDropDownIcon={FilterAltIcon}\n customStyle={customStyle}\n inputStyle={inputStyle}\n />\n // </div>\n );\n };\n const FilterContainer = () => (\n <>\n {filtersConfig.map(renderFilter)}\n </>\n );\n const handleFilterClose = () => {\n setActionAnchorEl(null);\n };\n\n const ExportContainer = React.memo(()=>{\n const handleClose = () => setExportAnchorEl(null);\n return(\n <Menu\n open={Boolean(exportAnchorEl)}\n anchorEl={exportAnchorEl}\n onClose={handleClose}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n >\n {dropdownMenuButtonData?.options?.map((option, index) => (\n <MenuItem\n key={index}\n onClick={() => {\n option.callback();\n setExportAnchorEl(null);\n }} \n >\n <Typography type=\"s4\" weight=\"medium\" color={'inherit'}> {option.label}</Typography>\n </MenuItem>\n ))}\n </Menu>\n )\n })\n\n return (\n <div>\n <div className=\"reportsTitleBar\">\n <div className=\"reportsTitleBar--LeftContent\">\n {isTitleMenu ? (\n <div style={{ zIndex: 999 }}>\n <TitleDropdownButton\n onClick={handleAddButton}\n options={titleMenus}\n isMenuThirdItemDisabled={true}\n >\n {title}\n </TitleDropdownButton>\n </div>\n ) : (\n <Typography type=\"h3\" weight=\"medium\" color=\"theme.secondary.1000\">\n {title}\n </Typography>\n )}\n </div>\n \n <ReportButtons\n zIndex={999}\n className=\"reportsTitleBar--RightContent\"\n buttons={buttons}\n />\n </div>\n {tabs?.length ? (\n <div>\n <TabBar\n tabs={tabs || []}\n activeValue={activeValue}\n setActiveValue={setActiveValue}\n isTabViewOnly={true}\n />\n </div>\n ) : null}\n <Box sx={{ display: \"flex\", justifyContent: \"space-between\", my: 2.5, mx: 1 }}>\n <div className=\"reportsTitleBar--FilterWrapper\">\n {FilterContainer()}\n { (filters?.end_date && showDateFilter) && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n ref={chipDateSelectRef}\n onClick={() => {\n if (!open) {\n anchorRef.current = chipDateSelectRef.current;\n setOpen(true);\n } else {\n handleCloseDatePopper();\n }\n }}\n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(filters?.start_date).format(\"DD/MM/YYYY\")} - ${dayjs(filters?.end_date).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.dateRange\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(filters?.start_date).format(\"DD/MM/YYYY\")} -{\" \"}\n {dayjs(filters?.end_date).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n <KeyboardArrowDownIcon />\n </div>\n </div>\n )}\n {(customDateRange?.startDate && customDateRange?.endDate && isDateFilterEnabled && !['TODAY','YESTERDAY'].includes(dateRange)) && (\n \n <>\n {customDateRange?.startDate && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n style={{padding:' 5px 12px'}}\n ref={chipDateSelectRef}\n \n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(customDateRange?.startDate).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.startDate\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(customDateRange?.startDate).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n {/* <KeyboardArrowDownIcon /> */}\n </div>\n </div>\n )}\n {customDateRange?.endDate && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n ref={chipDateSelectRef}\n style={{padding:' 5px 12px'}}\n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(customDateRange?.startDate).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.endDate\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(customDateRange?.endDate).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n {/* <KeyboardArrowDownIcon /> */}\n </div>\n </div>\n )}\n </>\n )}\n {filters?.as_of_date && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n ref={chipDateSelectRef}\n onClick={() => {\n if (!open) {\n anchorRef.current = chipDateSelectRef.current;\n setOpen(true);\n } else {\n handleCloseDatePopper();\n }\n }}\n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(filters?.as_of_date).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.date\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(filters?.as_of_date).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n <KeyboardArrowDownIcon />\n </div>\n </div>\n )}\n {/* {((filters?.company && selectedCompany) ||\n (filters?.start_date && filters?.end_date) ||\n filters?.as_of_date) &&\n reportFilterFields?.length\n ? \"|\"\n : \"\"} */}\n </div>\n <div className=\"report-display\">\n {dropdownMenuButtonData?.options?.length>0 && \n <Box> \n <Button\n sx={({ palette }) => ({\n border: \"1px solid\",\n borderColor: 'grey.200',\n borderRadius: \"50px\",\n color: `${palette.grey[800]} !important`,\n '&:hover': {\n bgcolor: `${palette.grey[200]} !important`,\n }\n })}\n variant=\"text\"\n startIcon={<ExportIcon fontSize=\"small\"/>}\n onClick={(event) => setExportAnchorEl (event.currentTarget)}\n >\n {t(\"common.export\")}\n </Button>\n {exportAnchorEl && (\n <ExportContainer />\n ) }\n </Box>\n }\n \n {filterDropDown?.length && \n <>\n <Box> \n <Button\n sx={({ palette }) => ({\n border: \"1px solid\",\n borderColor: 'grey.200',\n borderRadius: \"50px\",\n color: `${palette.grey[800]} !important`,\n '&:hover': {\n bgcolor: `${palette.grey[200]} !important`,\n }\n })}\n variant=\"text\"\n startIcon={<FilterIcon fontSize=\"small\"/>}\n onClick={(event) => setActionAnchorEl(event.currentTarget)}\n >\n {t(\"common.filter\")}\n </Button>\n </Box>\n {showLevelBtn && <Divider flexItem orientation=\"vertical\" sx= {{ height: '50%', alignSelf: 'auto'}} />}\n </>\n }\n \n {filterDropDownFunc()}\n {showLevelBtn && (\n <>\n <Box className=\"reportsTitleBar--FilterAction--lvWrapper\" >\n <Typography type=\"s3\" weight=\"medium\" color='grey.800'> Level {level} of {dataLength}</Typography>\n <ButtonGroup variant=\"outlined\" disableElevation sx={({ palette }) => ({ \n '& .MuiButton-root' :{\n borderColor: `${palette.grey[200]} !important`,\n '&:hover': {\n bgcolor: `${palette.grey[200]} !important`,\n }\n },\n '& .MuiButtonGroup-firstButton' : {\n borderTopLeftRadius: 20,\n borderBottomLeftRadius: 20\n },\n '& .MuiButtonGroup-lastButton' : {\n borderTopRightRadius: 20,\n borderBottomRightRadius: 20\n }\n })}>\n <MuiButton onClick={() => {\n setLevel(level == dataLength ? level : level + 1)\n handleRowsCollapse?.(level)\n }}>\n <img src={images.common.expand} />\n </MuiButton>\n <MuiButton onClick={() => {\n setLevel(level != 1 ? level - 1 : 1)\n handleRowsExpand?.(level)\n }}>\n <img src={images.common.collapse} />\n </MuiButton>\n </ButtonGroup>\n </Box>\n {isDateFilterEnabled && <Divider flexItem orientation=\"vertical\" sx= {{ height: '50%', alignSelf: 'auto'}} />}\n </>\n )}\n {isDateFilterEnabled && (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 0.5 }}>\n <Typography type=\"s3\" weight=\"medium\" color='grey.800'>As of: </Typography>\n <ReportButtons\n zIndex={997}\n className=\"reportsTitleBar--RightContent\"\n dropdownMenuButtonData={{\n icon: <CalendarIcon fontSize=\"small\"/>,\n children: (\n <>\n {RANGE[dateRange]}\n <KeyboardArrowDownIcon />\n </>\n ),\n options: options,\n }}\n toggleCallback={toggleCallback}\n />\n <div ref={dateSelectRef}></div>\n </Box>\n )}\n </div>\n </Box>\n {/* <Filter\n open={openFilterPopup}\n onClose={() => setOpenFilterPopup(false)}\n fields={allFields}\n onSelectedFilter={(filterName: string) => console.log(filterName)}\n // getFilterStatesOnApply={() => {}}\n applyFilter={(val: any) => console.log('val', val)}\n /> */}\n <Popper\n sx={{\n zIndex: 9999,\n }}\n open={open}\n anchorEl={anchorRef.current}\n role={undefined}\n transition\n disablePortal\n >\n {({ TransitionProps, placement }) => (\n <Grow\n {...TransitionProps}\n style={{\n margin: \"0 20px 0 20px\",\n transformOrigin:\n placement === \"bottom\" ? \"center top\" : \"center bottom\",\n }}\n >\n <Paper>\n <ClickAwayListener onClickAway={handleClose}>\n <Box\n sx={{\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"flex-end\",\n }}\n >\n <div>\n {isDateRange ? (\n <DateRange\n editableDateInputs={true}\n onChange={(item) => setCustomDateRange(item.selection)}\n moveRangeOnFirstSelection={false}\n ranges={[customDateRange]}\n locale={enUS}\n />\n ) : (\n <Calendar\n onChange={(item) => setCustomDate(item)}\n date={customDate}\n locale={enUS}\n />\n )}\n </div>\n <Box sx={{ padding: \"0 12px 12px 0\" }}>\n <Button\n variant=\"contained\"\n sx={{ width: \"fit-content\" }}\n onClick={handleFilterPopperSubmit}\n >\n {t(\"common.apply\")}\n </Button>\n </Box>\n </Box>\n </ClickAwayListener>\n </Paper>\n </Grow>\n )}\n </Popper>\n </div>\n );\n};\n\nexport { ReportsTitleBar };\nexport default ReportsTitleBar;\n"],"names":["dateFilter","filters","options","React","handleClose","_a","KeyboardArrowDownIcon","ExportIcon","FilterIcon","MuiButton","CalendarIcon","Calendar"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=,/* empty css */l=;/* empty css */;/* empty css */var r=,/* empty css */a=require("react"),i=,/* empty css */n=,/* empty css */o=,/* empty css */s=,/* empty css */d=,/* empty css */u=,/* empty css */c=require("react-date-range"),p=require("dayjs"),x=,/* empty css */m=,/* empty css */h=,/* empty css */f=,/* empty css */v=require("react-i18next"),j=require("date-fns/locale"),g=,/* empty css */y=,/* empty css */b=,/* empty css */Y=,/* empty css */D=,/* empty css */T=,/* empty css */M=,/* empty css */_=,/* empty css */R=,/* empty css */C=,/* empty css */E=,/* empty css */B=,/* empty css */S=;/* empty css */function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var w=/* @__PURE__ */k(a),A=/* @__PURE__ */k(p);const N=p=>{var k;const{title:N,handleAddButton:I,buttons:q=[],dropdownMenuButtonData:F,isTitleMenu:O=!1,titleMenus:G=[],reportFilterFields:V=[],toggleCallback:W,tabs:U,activeValue:P,setActiveValue:$,isDateFilterEnabled:H=!0,onDateFilterChange:z,filters:L={},isDateRange:K=!0,showDateFilter:Q=!1,dateFilter:J="TODAY",filterDropDown:X,handleRowsCollapse:Z,handleRowsExpand:ee,showLevelBtn:te=!1,dataLength:le=0,filterKeys:re={}}=p,ae=x.useAppDispatch(),ie={"&.MuiOutlinedInput-root":{"& fieldset":{border:"none",borderColor:"#ade7cb",borderRadius:"25px"},"& .MuiSelect-outlined":{padding:"4.5px 14px !important"},display:"flex",gap:"4px",width:"220px",border:"1px solid #ade7cb",borderRadius:"50px",backgroundColor:"#ebf9f2",color:"#289b64",alignItems:"center",cursor:"pointer"}},ne={border:"none","&.Mui-focused":{borderColor:"transparent"},"& .MuiOutlinedInput-input":{fontSize:"14px",color:"#289b64"},"& .MuiOutlinedInput-notchedOutline":{border:"none"},"& .MuiSelect-icon":{color:"green"}},[oe,se]=a.useState([{value:"company"}]),[de,ue]=a.useState(1),[ce,pe]=a.useState(null),[xe,me]=a.useState([]),[he,fe]=a.useState(),[ve,je]=a.useState(!1),[ge,ye]=a.useState(null),[be,Ye]=a.useState(new Date(A.default((null==L?void 0:L.as_of_date)||"").format("YYYY-MM-DD"))),{t:De}=v.useTranslation(),[Te,Me]=a.useState({startDate:new Date(A.default((null==L?void 0:L.start_date)||"").format("YYYY-MM-DD")),endDate:new Date(A.default((null==L?void 0:L.end_date)||"").format("YYYY-MM-DD")),key:"selection"}),_e=a.useRef(null),Re=a.useRef(null),Ce=a.useRef(null),Ee=()=>{_e.current=null,je(!1)},Be=async e=>{if(fe(e),"CUSTOM"===e)_e.current=Re.current,je(!0);else{const t=await u.handleCompareDateRange({range:u.RANGE[e],from:"",to:""});null==z||z({start_date:(null==t?void 0:t.from)?null==t?void 0:t.from:"",end_date:(null==t?void 0:t.to)?null==t?void 0:t.to:""}),Ee()}},Se=e=>{_e.current&&_e.current.contains(e.target)||Ee()},ke=(null==X?void 0:X.map(e=>({key:e.value||e.key,label:e.name||e.label||`Search ${e.value||e.key}`,placeholder:e.placeholder||e.name||e.label,apiType:e.apiType||e.value||e.key,valueKey:(null==re?void 0:re[e.value||e.key])||e.value||e.key,customFilter:e.customFilter||null,multiple:e.multiple||!1})))||[],we=[{label:u.RANGE.TODAY,callback:()=>{Be("TODAY")}},{label:u.RANGE.THIS_WEEK,callback:()=>{Be("THIS_WEEK")}},{label:u.RANGE.THIS_MONTH,callback:()=>{Be("THIS_MONTH")}},{label:u.RANGE.THIS_QUARTER,callback:()=>{Be("THIS_QUARTER")}},{label:u.RANGE.THIS_YEAR,callback:()=>{Be("THIS_YEAR")}},{label:u.RANGE.YESTERDAY,callback:()=>{Be("YESTERDAY")}},{label:u.RANGE.PREVIOUS_WEEK,callback:()=>{Be("PREVIOUS_WEEK")}},{label:u.RANGE.PREVIOUS_MONTH,callback:()=>{Be("PREVIOUS_MONTH")}},{label:u.RANGE.PREVIOUS_QUARTER,callback:()=>{Be("PREVIOUS_QUARTER")}},{label:u.RANGE.PREVIOUS_YEAR,callback:()=>{Be("PREVIOUS_YEAR")}},{label:u.RANGE.CUSTOM,callback:()=>{Be("CUSTOM")}}],Ae=()=>{const e={start_date:A.default(Te.startDate).format("YYYY-MM-DD"),end_date:A.default(Te.endDate).format("YYYY-MM-DD")},t={as_of_date:A.default(be).format("YYYY-MM-DD")};null==z||z({...K?e:t}),Ee()},Ne=e=>({startDate:A.default(null==e?void 0:e.start_date).isValid()?A.default(e.start_date).toDate():/* @__PURE__ */new Date,endDate:A.default(null==e?void 0:e.end_date).isValid()?A.default(e.end_date).toDate():/* @__PURE__ */new Date});a.useEffect(()=>{Ye(new Date(A.default((null==L?void 0:L.as_of_date)||"").format("YYYY-MM-DD")))},[null==L?void 0:L.as_of_date]),a.useEffect(()=>{Me({...Te,...Ne(L)})},[null==L?void 0:L.end_date,null==L?void 0:L.start_date]),a.useEffect(()=>{ve&&(K?Me({...Te,...Ne(L)}):Ye(new Date(A.default((null==L?void 0:L.as_of_date)||"").format("YYYY-MM-DD"))))},[ve,K]),a.useEffect(()=>{ae(m.fetchCompanies())},[]),a.useEffect(()=>{me(n.generateFields(V))},[]),a.useEffect(()=>{Be(J)},[J]);const Ie=w.default.memo(()=>{var t;/* @__PURE__ */
2
+ return e.jsx(g.default,{open:Boolean(ge),anchorEl:ge,onClose:()=>ye(null),anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:null==(t=null==F?void 0:F.options)?void 0:t.map((t,r)=>/* @__PURE__ */e.jsx(y.default,{onClick:()=>{t.callback(),ye(null)},children:/* @__PURE__ */e.jsxs(l.Typography,{type:"s4",weight:"medium",color:"inherit",children:[" ",t.label]})},r))})});/* @__PURE__ */
3
+ return e.jsxs("div",{children:[
4
+ /* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar",children:[
5
+ /* @__PURE__ */e.jsx("div",{className:"reportsTitleBar--LeftContent",children:O?/* @__PURE__ */e.jsx("div",{style:{zIndex:999},children:/* @__PURE__ */e.jsx(r.default,{onClick:I,options:G,isMenuThirdItemDisabled:!0,children:N})}):/* @__PURE__ */e.jsx(l.Typography,{type:"h3",weight:"medium",color:"theme.secondary.1000",children:N})}),
6
+ /* @__PURE__ */e.jsx(o.ReportButtons,{zIndex:999,className:"reportsTitleBar--RightContent",buttons:q})]}),(null==U?void 0:U.length)?/* @__PURE__ */e.jsx("div",{children:/* @__PURE__ */e.jsx(s.default,{tabs:U||[],activeValue:P,setActiveValue:$,isTabViewOnly:!0})}):null,
7
+ /* @__PURE__ */e.jsxs(b.default,{sx:{display:"flex",justifyContent:"space-between",my:2.5,mx:1},children:[
8
+ /* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper",children:[/* @__PURE__ */e.jsx(e.Fragment,{children:ke.map(({key:t,label:l,placeholder:r,apiType:a,valueKey:i,customFilter:n,multiple:o=!1,options:s,show:d=!0,showCancelButton:u=!0})=>{return c=t,oe.some(e=>(null==e?void 0:e.value)==c)&&d?
9
+ /* @__PURE__ */e.jsx(h.default,{labelId:`${t}-label`,searchPlaceholder:l,value:null==L?void 0:L[i],onChange:e=>z({[i]:e.target.value}),showCancelButton:u,apiType:a,options:s,multiple:o,placeholder:r,customeFilter:n,customStyle:ie,inputStyle:ne}):null;var c})}),(null==L?void 0:L.end_date)&&Q&&/* @__PURE__ */e.jsx("div",{style:{display:"flex",gap:"8px"},children:/* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper--Chip",ref:Ce,onClick:()=>{ve?Ee():(_e.current=Ce.current,je(!0))},children:[
10
+ /* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper--Chip--Text",title:`${A.default(null==L?void 0:L.start_date).format("DD/MM/YYYY")} - ${A.default(null==L?void 0:L.end_date).format("DD/MM/YYYY")}`,children:[
11
+ /* @__PURE__ */e.jsxs(l.Typography,{type:"s4",weight:"medium",children:[De("common.dateRange"),":"]}),
12
+ /* @__PURE__ */e.jsxs(l.Typography,{className:"reportsTitleBar--FilterWrapper--Chip--Text--Value",type:"s4",children:[A.default(null==L?void 0:L.start_date).format("DD/MM/YYYY")," -"," ",A.default(null==L?void 0:L.end_date).format("DD/MM/YYYY")]})]}),
13
+ /* @__PURE__ */e.jsx(i.default,{})]})}),(null==Te?void 0:Te.startDate)&&(null==Te?void 0:Te.endDate)&&H&&!["TODAY","YESTERDAY"].includes(he)&&/* @__PURE__ */e.jsxs(e.Fragment,{children:[(null==Te?void 0:Te.startDate)&&/* @__PURE__ */e.jsx("div",{style:{display:"flex",gap:"8px"},children:/* @__PURE__ */e.jsx("div",{className:"reportsTitleBar--FilterWrapper--Chip",style:{padding:" 5px 12px"},ref:Ce,children:/* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper--Chip--Text",title:`${A.default(null==Te?void 0:Te.startDate).format("DD/MM/YYYY")}`,children:[
14
+ /* @__PURE__ */e.jsxs(l.Typography,{type:"s4",weight:"medium",children:[De("common.startDate"),":"]}),
15
+ /* @__PURE__ */e.jsx(l.Typography,{className:"reportsTitleBar--FilterWrapper--Chip--Text--Value",type:"s4",children:A.default(null==Te?void 0:Te.startDate).format("DD/MM/YYYY")})]})})}),(null==Te?void 0:Te.endDate)&&/* @__PURE__ */e.jsx("div",{style:{display:"flex",gap:"8px"},children:/* @__PURE__ */e.jsx("div",{className:"reportsTitleBar--FilterWrapper--Chip",ref:Ce,style:{padding:" 5px 12px"},children:/* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper--Chip--Text",title:`${A.default(null==Te?void 0:Te.startDate).format("DD/MM/YYYY")}`,children:[
16
+ /* @__PURE__ */e.jsxs(l.Typography,{type:"s4",weight:"medium",children:[De("common.endDate"),":"]}),
17
+ /* @__PURE__ */e.jsx(l.Typography,{className:"reportsTitleBar--FilterWrapper--Chip--Text--Value",type:"s4",children:A.default(null==Te?void 0:Te.endDate).format("DD/MM/YYYY")})]})})})]}),(null==L?void 0:L.as_of_date)&&/* @__PURE__ */e.jsx("div",{style:{display:"flex",gap:"8px"},children:/* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper--Chip",ref:Ce,onClick:()=>{ve?Ee():(_e.current=Ce.current,je(!0))},children:[
18
+ /* @__PURE__ */e.jsxs("div",{className:"reportsTitleBar--FilterWrapper--Chip--Text",title:`${A.default(null==L?void 0:L.as_of_date).format("DD/MM/YYYY")}`,children:[
19
+ /* @__PURE__ */e.jsxs(l.Typography,{type:"s4",weight:"medium",children:[De("common.date"),":"]}),
20
+ /* @__PURE__ */e.jsx(l.Typography,{className:"reportsTitleBar--FilterWrapper--Chip--Text--Value",type:"s4",children:A.default(null==L?void 0:L.as_of_date).format("DD/MM/YYYY")})]}),
21
+ /* @__PURE__ */e.jsx(i.default,{})]})})]}),
22
+ /* @__PURE__ */e.jsxs("div",{className:"report-display",children:[(null==(k=null==F?void 0:F.options)?void 0:k.length)>0&&/* @__PURE__ */e.jsxs(b.default,{children:[
23
+ /* @__PURE__ */e.jsx(t.Button,{sx:({palette:e})=>({border:"1px solid",borderColor:"grey.200",borderRadius:"50px",color:`${e.grey[800]} !important`,"&:hover":{bgcolor:`${e.grey[200]} !important`}}),variant:"text",startIcon:/* @__PURE__ */e.jsx(Y.Export,{fontSize:"small"}),onClick:e=>ye(e.currentTarget),children:De("common.export")}),ge&&/* @__PURE__ */e.jsx(Ie,{})]}),(null==X?void 0:X.length)&&/* @__PURE__ */e.jsxs(e.Fragment,{children:[
24
+ /* @__PURE__ */e.jsx(b.default,{children:/* @__PURE__ */e.jsx(t.Button,{sx:({palette:e})=>({border:"1px solid",borderColor:"grey.200",borderRadius:"50px",color:`${e.grey[800]} !important`,"&:hover":{bgcolor:`${e.grey[200]} !important`}}),variant:"text",startIcon:/* @__PURE__ */e.jsx(D.Filter,{fontSize:"small"}),onClick:e=>pe(e.currentTarget),children:De("common.filter")})}),te&&/* @__PURE__ */e.jsx(T.default,{flexItem:!0,orientation:"vertical",sx:{height:"50%",alignSelf:"auto"}})]}),/* @__PURE__ */e.jsx(g.default,{anchorEl:ce,open:Boolean(ce),onClose:()=>{pe(null)},children:null==X?void 0:X.map(t=>{/* @__PURE__ */return e.jsxs(y.default,{onClick:()=>{return e=t,void(oe.some(t=>t.value==e.value)?se(oe.filter(t=>(null==t?void 0:t.value)!=e.value)):se([...oe,e]));var e},value:null==t?void 0:t.value,children:[
25
+ /* @__PURE__ */e.jsx(f.Checkbox,{checked:(r=t,oe.some(e=>(null==e?void 0:e.value)==(null==r?void 0:r.value)))}),
26
+ /* @__PURE__ */e.jsx(l.Typography,{sx:{marginLeft:"10px"},color:"theme.neutral.800",type:"s3",children:null==t?void 0:t.name})]},t);var r})}),te&&/* @__PURE__ */e.jsxs(e.Fragment,{children:[
27
+ /* @__PURE__ */e.jsxs(b.default,{className:"reportsTitleBar--FilterAction--lvWrapper",children:[
28
+ /* @__PURE__ */e.jsxs(l.Typography,{type:"s3",weight:"medium",color:"grey.800",children:[" Level ",de," of ",le]}),
29
+ /* @__PURE__ */e.jsxs(M.default,{variant:"outlined",disableElevation:!0,sx:({palette:e})=>({"& .MuiButton-root":{borderColor:`${e.grey[200]} !important`,"&:hover":{bgcolor:`${e.grey[200]} !important`}},"& .MuiButtonGroup-firstButton":{borderTopLeftRadius:20,borderBottomLeftRadius:20},"& .MuiButtonGroup-lastButton":{borderTopRightRadius:20,borderBottomRightRadius:20}}),children:[
30
+ /* @__PURE__ */e.jsx(_.default,{onClick:()=>{ue(de==le?de:de+1),null==Z||Z(de)},children:/* @__PURE__ */e.jsx("img",{src:d.images.common.expand})}),
31
+ /* @__PURE__ */e.jsx(_.default,{onClick:()=>{ue(1!=de?de-1:1),null==ee||ee(de)},children:/* @__PURE__ */e.jsx("img",{src:d.images.common.collapse})})]})]}),H&&/* @__PURE__ */e.jsx(T.default,{flexItem:!0,orientation:"vertical",sx:{height:"50%",alignSelf:"auto"}})]}),H&&/* @__PURE__ */e.jsxs(b.default,{sx:{display:"flex",alignItems:"center",gap:.5},children:[
32
+ /* @__PURE__ */e.jsx(l.Typography,{type:"s3",weight:"medium",color:"grey.800",children:"As of: "}),
33
+ /* @__PURE__ */e.jsx(o.ReportButtons,{zIndex:997,className:"reportsTitleBar--RightContent",dropdownMenuButtonData:{icon:/* @__PURE__ */e.jsx(R.Calendar,{fontSize:"small"}),children:/* @__PURE__ */e.jsxs(e.Fragment,{children:[u.RANGE[he],
34
+ /* @__PURE__ */e.jsx(i.default,{})]}),options:we},toggleCallback:W}),
35
+ /* @__PURE__ */e.jsx("div",{ref:Re})]})]})]}),
36
+ /* @__PURE__ */e.jsx(C.default,{sx:{zIndex:9999},open:ve,anchorEl:_e.current,role:void 0,transition:!0,disablePortal:!0,children:({TransitionProps:l,placement:r})=>/* @__PURE__ */e.jsx(E.default,{...l,style:{margin:"0 20px 0 20px",transformOrigin:"bottom"===r?"center top":"center bottom"},children:/* @__PURE__ */e.jsx(B.default,{children:/* @__PURE__ */e.jsx(S.ClickAwayListener,{onClickAway:Se,children:/* @__PURE__ */e.jsxs(b.default,{sx:{display:"flex",flexDirection:"column",alignItems:"flex-end"},children:[
37
+ /* @__PURE__ */e.jsx("div",{children:K?/* @__PURE__ */e.jsx(c.DateRange,{editableDateInputs:!0,onChange:e=>Me(e.selection),moveRangeOnFirstSelection:!1,ranges:[Te],locale:j.enUS}):/* @__PURE__ */e.jsx(c.Calendar,{onChange:e=>Ye(e),date:be,locale:j.enUS})}),
38
+ /* @__PURE__ */e.jsx(b.default,{sx:{padding:"0 12px 12px 0"},children:/* @__PURE__ */e.jsx(t.Button,{variant:"contained",sx:{width:"fit-content"},onClick:Ae,children:De("common.apply")})})]})})})})})]})};exports.ReportsTitleBar=N,exports.default=N;
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/reports-title-bar/reports-title-bar.tsx"],"sourcesContent":["import Button from \"../button/button\";\nimport Typography from \"../typography/typography\";\nimport \"./reports-title-bar.scss\";\n\nimport TitleDropdownButton from \"../title-dropdown-button/title-dropdown-button\";\nimport { useEffect, useRef, useState } from \"react\";\nimport KeyboardArrowDownIcon from \"@mui/icons-material/KeyboardArrowDown\";\nimport { generateFields } from \"../../utils/common\";\nimport ReportButtons, { IReportButtons } from \"./report-buttons/report-buttons\";\nimport TabBar, { TabProps } from \"../tabs/tabs\";\nimport { Box, ButtonGroup, ClickAwayListener, Grow, Menu, MenuItem, Paper, Popper, Button as MuiButton, Divider } from \"@mui/material\";\nimport images from \"../../assets/images\";\nimport {\n handleCompareDateRange,\n RANGE,\n} from \"../../utils/date-range\";\nimport { DateRange, Calendar } from \"react-date-range\";\nimport \"react-date-range/dist/styles.css\"; // main css file\nimport \"react-date-range/dist/theme/default.css\"; // theme css file\nimport dayjs from \"dayjs\";\nimport { useAppDispatch } from \"../../redux/hooks\";\nimport { fetchCompanies } from \"./redux/actionCreator\";\nimport SearchableSelect from \"../searchable-select\";\nimport Checkbox from \"../checkbox/checkbox\";\nimport { useTranslation } from \"react-i18next\";\nimport React from \"react\";\nimport { Calendar as CalendarIcon, Export as ExportIcon, Filter as FilterIcon } from \"../icons\";\nimport { enUS } from 'date-fns/locale';\n\ninterface IReportFilters {\n company: number;\n start_date: string;\n end_date: string;\n as_of_date: string;\n}\n\ninterface ActionBarPropsType extends Partial<TabProps>, IReportButtons {\n title: string;\n handleAddButton?: (e?: any) => void;\n isTitleMenu?: boolean;\n titleMenus?: any;\n reportFilterFields?: any[];\n isDateFilterEnabled?: boolean;\n onDateFilterChange?: (\n data: Partial<{\n company: string | number;\n start_date: string;\n end_date: string;\n as_of_date: string;\n }>\n ) => void;\n filters?: Partial<IReportFilters>;\n isDateRange?: boolean;\n showDateFilter?: boolean;\n dateFilter?: string;\n showCancelButton?: boolean;\n}\n\ntype TDatePickerVal = {\n startDate?: Date;\n endDate?: Date;\n key?: string;\n};\n\nconst ReportsTitleBar = (props: ActionBarPropsType) => {\n const {\n title,\n handleAddButton,\n buttons = [],\n dropdownMenuButtonData,\n isTitleMenu = false,\n titleMenus = [],\n reportFilterFields = [],\n toggleCallback,\n tabs,\n activeValue,\n setActiveValue,\n isDateFilterEnabled=true,\n onDateFilterChange,\n // showCancelButton,\n filters = {},\n isDateRange = true,\n showDateFilter = false,\n dateFilter = 'TODAY',\n filterDropDown,\n handleRowsCollapse,\n handleRowsExpand,\n showLevelBtn=false,\n dataLength=0,\n filterKeys={},\n } = props;\n // const { companies } = useAppSelector((store) => store.reportsTitleBar);\n\n const dispatch = useAppDispatch();\n const customStyle =\n {\n \n '&.MuiOutlinedInput-root': {\n '& fieldset': {\n border: 'none',\n borderColor: `#ade7cb`,\n borderRadius: `25px`\n },\n '& .MuiSelect-outlined': {\n padding: `4.5px 14px !important`\n },\n // '&:hover fieldset': {\n // border: 'none',\n // },\n\n // '&.Mui-focused fieldset': {\n // border: 'none',\n // },\n display: `flex`,\n gap: `4px`,\n width: `220px`,\n // height: 30px,\n border: `1px solid #ade7cb`,\n borderRadius: `50px`,\n backgroundColor: `#ebf9f2`,\n color: `#289b64`,\n alignItems: `center`,\n cursor: `pointer`,\n // height: `30px`\n \n },\n }\nconst inputStyle=\n {\n border: \"none\",\n \"&.Mui-focused\": {\n borderColor: \"transparent\",\n },\n \"& .MuiOutlinedInput-input\": {\n // padding: \"0px\",\n fontSize: \"14px\",\n color:'#289b64'\n },\n \"& .MuiOutlinedInput-notchedOutline\": {\n border: \"none\", \n },\n '& .MuiSelect-icon': {\n color: 'green',\n },\n}\n\n const defaultSelected=[\n {\n value:'company',\n },\n ]\n const [selectedItems, setSelectedItems] = useState<string[]>(defaultSelected);\n const [level, setLevel] = useState<number>(1)\n\n // const selectedCompany = useMemo(\n // () =>\n // companies?.find((company) => filters?.company === company.id)\n // ?.company_name || \"\",\n // [companies, filters?.company]\n // );\n \n\n // eslint-disable-next-line unused-imports/no-unused-vars, @typescript-eslint/no-unused-vars\n const [actionAnchorEl, setActionAnchorEl] = useState<null | HTMLElement>(\n null\n );\n // eslint-disable-next-line unused-imports/no-unused-vars, @typescript-eslint/no-unused-vars\n const [allFields, setAllFields] = useState<any[]>([]);\n const [dateRange, setDateRange] = useState<keyof typeof RANGE>();\n const [open, setOpen] = useState<boolean>(false);\n const [exportAnchorEl, setExportAnchorEl] = useState<null | HTMLElement>(null);\n const [customDate, setCustomDate] = useState<Date>(\n new Date(dayjs(filters?.as_of_date || \"\").format(\"YYYY-MM-DD\"))\n );\n const {t}=useTranslation();\n const [customDateRange, setCustomDateRange] = useState<TDatePickerVal>({\n startDate: new Date(dayjs(filters?.start_date || \"\").format(\"YYYY-MM-DD\")),\n endDate: new Date(dayjs(filters?.end_date || \"\").format(\"YYYY-MM-DD\")),\n key: \"selection\",\n });\n\n const anchorRef = useRef<HTMLDivElement | null>(null);\n const dateSelectRef = useRef<HTMLDivElement>(null);\n const chipDateSelectRef = useRef<HTMLDivElement>(null);\n\n const handleCloseDatePopper = () => {\n anchorRef.current = null;\n setOpen(false);\n };\n\n const handleDateChange = async (range: keyof typeof RANGE) => {\n setDateRange(range);\n if (range === \"CUSTOM\") {\n anchorRef.current = dateSelectRef.current;\n setOpen(true);\n } else {\n const data = await handleCompareDateRange({\n range: RANGE[range],\n from: \"\",\n to: \"\",\n });\n onDateFilterChange?.({\n start_date: data?.from ? data?.from : \"\",\n end_date: data?.to ? data?.to : \"\",\n });\n handleCloseDatePopper();\n }\n };\n\n const handleClose = (event: Event) => {\n if (\n anchorRef.current &&\n anchorRef.current.contains(event.target as HTMLElement)\n ) {\n return;\n }\n\n handleCloseDatePopper();\n };\n const handleSelectChange = (value: any) => {\n if (selectedItems.some((item) => item.value == value.value)) {\n setSelectedItems(selectedItems.filter((item) => item?.value != value.value));\n return;\n }\n setSelectedItems([...selectedItems, value]);\n };\n // Create filters config from filterDropDown and filterKeys\n // If reportFilters is needed, it should be provided by the consuming application\n const filtersConfig = filterDropDown?.map((filter: any) => ({\n key: filter.value || filter.key,\n label: filter.name || filter.label || `Search ${filter.value || filter.key}`,\n placeholder: filter.placeholder || filter.name || filter.label,\n apiType: filter.apiType || filter.value || filter.key,\n valueKey: filterKeys?.[filter.value || filter.key] || filter.value || filter.key,\n customFilter: filter.customFilter || null,\n multiple: filter.multiple || false,\n })) || []\n\n const options = [\n {\n label: RANGE.TODAY,\n callback: () => {\n handleDateChange(\"TODAY\");\n },\n },\n {\n label: RANGE.THIS_WEEK,\n callback: () => {\n handleDateChange(\"THIS_WEEK\");\n },\n },\n {\n label: RANGE.THIS_MONTH,\n callback: () => {\n handleDateChange(\"THIS_MONTH\");\n },\n },\n {\n label: RANGE.THIS_QUARTER,\n callback: () => {\n handleDateChange(\"THIS_QUARTER\");\n },\n },\n {\n label: RANGE.THIS_YEAR,\n callback: () => {\n handleDateChange(\"THIS_YEAR\");\n },\n },\n {\n label: RANGE.YESTERDAY,\n callback: () => {\n handleDateChange(\"YESTERDAY\");\n },\n },\n {\n label: RANGE.PREVIOUS_WEEK,\n callback: () => {\n handleDateChange(\"PREVIOUS_WEEK\");\n },\n },\n {\n label: RANGE.PREVIOUS_MONTH,\n callback: () => {\n handleDateChange(\"PREVIOUS_MONTH\");\n },\n },\n {\n label: RANGE.PREVIOUS_QUARTER,\n callback: () => {\n handleDateChange(\"PREVIOUS_QUARTER\");\n },\n },\n {\n label: RANGE.PREVIOUS_YEAR,\n callback: () => {\n handleDateChange(\"PREVIOUS_YEAR\");\n },\n },\n {\n label: RANGE.CUSTOM,\n callback: () => {\n handleDateChange(\"CUSTOM\");\n },\n },\n ];\n\n const isChecked =(value: any) => {\n return selectedItems.some(item => item?.value == value?.value)\n }\n \n const handleFilterPopperSubmit = () => {\n const dateRangeFilter = {\n start_date: dayjs(customDateRange.startDate).format(\"YYYY-MM-DD\"),\n end_date: dayjs(customDateRange.endDate).format(\"YYYY-MM-DD\"),\n };\n const dateFilter = {\n as_of_date: dayjs(customDate).format(\"YYYY-MM-DD\"),\n };\n\n onDateFilterChange?.({\n ...(isDateRange ? dateRangeFilter : dateFilter),\n });\n handleCloseDatePopper();\n };\n function showFilter(val) {\n return selectedItems.some(item => item?.value == val)\n }\n\n const getStartAndEndDate = (filters: any) => {\n const startDate = dayjs(filters?.start_date).isValid() ? dayjs(filters.start_date).toDate() : new Date();\n const endDate = dayjs(filters?.end_date).isValid() ? dayjs(filters.end_date).toDate() : new Date();\n return { startDate, endDate };\n};\n\n useEffect(() => {\n setCustomDate(\n new Date(dayjs(filters?.as_of_date || \"\").format(\"YYYY-MM-DD\"))\n );\n }, [filters?.as_of_date]);\n\n useEffect(() => {\n setCustomDateRange({\n ...customDateRange,\n ...getStartAndEndDate(filters)\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters?.end_date, filters?.start_date]);\n\n useEffect(() => {\n if (open) {\n if (isDateRange) {\n setCustomDateRange({\n ...customDateRange,\n ...getStartAndEndDate(filters)\n });\n } else {\n setCustomDate(\n new Date(dayjs(filters?.as_of_date || \"\").format(\"YYYY-MM-DD\"))\n );\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, isDateRange]);\n\n useEffect(() => {\n dispatch(fetchCompanies());\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n setAllFields(generateFields(reportFilterFields));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n useEffect(() => {\n handleDateChange(dateFilter)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dateFilter]);\n\n const filterDropDownFunc = () => {\n return (\n <Menu\n anchorEl={actionAnchorEl}\n open={Boolean(actionAnchorEl)}\n onClose={handleFilterClose}\n >\n {/* <MenuItem className=\"inventoryReportsTitleBar--report-filter\"> */}\n {/* Add your options here */}\n {filterDropDown?.map((item) => (\n <MenuItem onClick={() => handleSelectChange(item)} key={item} value={item?.value}>\n <Checkbox checked={isChecked(item)} />\n <Typography sx={{marginLeft:'10px'}} color='theme.neutral.800' type='s3'>{item?.name}</Typography>\n </MenuItem>\n ))}\n {/* </MenuItem> */}\n </Menu>\n );\n };\n\n const renderFilter = ({\n key,\n label,\n placeholder,\n apiType,\n valueKey,\n customFilter,\n multiple = false,\n options,\n show=true,\n showCancelButton=true\n }: FilterConfig) => {\n if (!showFilter(key)||!show) return null;\n \n return (\n // <div className=\"search-filter\" key={key}>\n <SearchableSelect\n labelId={`${key}-label`}\n searchPlaceholder={label}\n value={filters?.[valueKey]}\n onChange={(e) => onDateFilterChange({ [valueKey]: e.target.value })}\n showCancelButton={showCancelButton}\n apiType={apiType}\n options={options}\n multiple={multiple}\n placeholder={placeholder}\n customeFilter={customFilter}\n // CustomDropDownIcon={FilterAltIcon}\n customStyle={customStyle}\n inputStyle={inputStyle}\n />\n // </div>\n );\n };\n const FilterContainer = () => (\n <>\n {filtersConfig.map(renderFilter)}\n </>\n );\n const handleFilterClose = () => {\n setActionAnchorEl(null);\n };\n\n const ExportContainer = React.memo(()=>{\n const handleClose = () => setExportAnchorEl(null);\n return(\n <Menu\n open={Boolean(exportAnchorEl)}\n anchorEl={exportAnchorEl}\n onClose={handleClose}\n anchorOrigin={{\n vertical: \"bottom\",\n horizontal: \"right\",\n }}\n transformOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n >\n {dropdownMenuButtonData?.options?.map((option, index) => (\n <MenuItem\n key={index}\n onClick={() => {\n option.callback();\n setExportAnchorEl(null);\n }} \n >\n <Typography type=\"s4\" weight=\"medium\" color={'inherit'}> {option.label}</Typography>\n </MenuItem>\n ))}\n </Menu>\n )\n })\n\n return (\n <div>\n <div className=\"reportsTitleBar\">\n <div className=\"reportsTitleBar--LeftContent\">\n {isTitleMenu ? (\n <div style={{ zIndex: 999 }}>\n <TitleDropdownButton\n onClick={handleAddButton}\n options={titleMenus}\n isMenuThirdItemDisabled={true}\n >\n {title}\n </TitleDropdownButton>\n </div>\n ) : (\n <Typography type=\"h3\" weight=\"medium\" color=\"theme.secondary.1000\">\n {title}\n </Typography>\n )}\n </div>\n \n <ReportButtons\n zIndex={999}\n className=\"reportsTitleBar--RightContent\"\n buttons={buttons}\n />\n </div>\n {tabs?.length ? (\n <div>\n <TabBar\n tabs={tabs || []}\n activeValue={activeValue}\n setActiveValue={setActiveValue}\n isTabViewOnly={true}\n />\n </div>\n ) : null}\n <Box sx={{ display: \"flex\", justifyContent: \"space-between\", my: 2.5, mx: 1 }}>\n <div className=\"reportsTitleBar--FilterWrapper\">\n {FilterContainer()}\n { (filters?.end_date && showDateFilter) && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n ref={chipDateSelectRef}\n onClick={() => {\n if (!open) {\n anchorRef.current = chipDateSelectRef.current;\n setOpen(true);\n } else {\n handleCloseDatePopper();\n }\n }}\n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(filters?.start_date).format(\"DD/MM/YYYY\")} - ${dayjs(filters?.end_date).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.dateRange\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(filters?.start_date).format(\"DD/MM/YYYY\")} -{\" \"}\n {dayjs(filters?.end_date).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n <KeyboardArrowDownIcon />\n </div>\n </div>\n )}\n {(customDateRange?.startDate && customDateRange?.endDate && isDateFilterEnabled && !['TODAY','YESTERDAY'].includes(dateRange)) && (\n \n <>\n {customDateRange?.startDate && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n style={{padding:' 5px 12px'}}\n ref={chipDateSelectRef}\n \n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(customDateRange?.startDate).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.startDate\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(customDateRange?.startDate).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n {/* <KeyboardArrowDownIcon /> */}\n </div>\n </div>\n )}\n {customDateRange?.endDate && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n ref={chipDateSelectRef}\n style={{padding:' 5px 12px'}}\n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(customDateRange?.startDate).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.endDate\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(customDateRange?.endDate).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n {/* <KeyboardArrowDownIcon /> */}\n </div>\n </div>\n )}\n </>\n )}\n {filters?.as_of_date && (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip\"\n ref={chipDateSelectRef}\n onClick={() => {\n if (!open) {\n anchorRef.current = chipDateSelectRef.current;\n setOpen(true);\n } else {\n handleCloseDatePopper();\n }\n }}\n >\n <div\n className=\"reportsTitleBar--FilterWrapper--Chip--Text\"\n title={`${dayjs(filters?.as_of_date).format(\"DD/MM/YYYY\")}`}\n >\n <Typography type=\"s4\" weight=\"medium\">\n {t(\"common.date\")}:\n </Typography>\n <Typography\n className=\"reportsTitleBar--FilterWrapper--Chip--Text--Value\"\n type=\"s4\"\n >\n {dayjs(filters?.as_of_date).format(\"DD/MM/YYYY\")}\n </Typography>\n </div>\n <KeyboardArrowDownIcon />\n </div>\n </div>\n )}\n {/* {((filters?.company && selectedCompany) ||\n (filters?.start_date && filters?.end_date) ||\n filters?.as_of_date) &&\n reportFilterFields?.length\n ? \"|\"\n : \"\"} */}\n </div>\n <div className=\"report-display\">\n {dropdownMenuButtonData?.options?.length>0 && \n <Box> \n <Button\n sx={({ palette }) => ({\n border: \"1px solid\",\n borderColor: 'grey.200',\n borderRadius: \"50px\",\n color: `${palette.grey[800]} !important`,\n '&:hover': {\n bgcolor: `${palette.grey[200]} !important`,\n }\n })}\n variant=\"text\"\n startIcon={<ExportIcon fontSize=\"small\"/>}\n onClick={(event) => setExportAnchorEl (event.currentTarget)}\n >\n {t(\"common.export\")}\n </Button>\n {exportAnchorEl && (\n <ExportContainer />\n ) }\n </Box>\n }\n \n {filterDropDown?.length && \n <>\n <Box> \n <Button\n sx={({ palette }) => ({\n border: \"1px solid\",\n borderColor: 'grey.200',\n borderRadius: \"50px\",\n color: `${palette.grey[800]} !important`,\n '&:hover': {\n bgcolor: `${palette.grey[200]} !important`,\n }\n })}\n variant=\"text\"\n startIcon={<FilterIcon fontSize=\"small\"/>}\n onClick={(event) => setActionAnchorEl(event.currentTarget)}\n >\n {t(\"common.filter\")}\n </Button>\n </Box>\n {showLevelBtn && <Divider flexItem orientation=\"vertical\" sx= {{ height: '50%', alignSelf: 'auto'}} />}\n </>\n }\n \n {filterDropDownFunc()}\n {showLevelBtn && (\n <>\n <Box className=\"reportsTitleBar--FilterAction--lvWrapper\" >\n <Typography type=\"s3\" weight=\"medium\" color='grey.800'> Level {level} of {dataLength}</Typography>\n <ButtonGroup variant=\"outlined\" disableElevation sx={({ palette }) => ({ \n '& .MuiButton-root' :{\n borderColor: `${palette.grey[200]} !important`,\n '&:hover': {\n bgcolor: `${palette.grey[200]} !important`,\n }\n },\n '& .MuiButtonGroup-firstButton' : {\n borderTopLeftRadius: 20,\n borderBottomLeftRadius: 20\n },\n '& .MuiButtonGroup-lastButton' : {\n borderTopRightRadius: 20,\n borderBottomRightRadius: 20\n }\n })}>\n <MuiButton onClick={() => {\n setLevel(level == dataLength ? level : level + 1)\n handleRowsCollapse?.(level)\n }}>\n <img src={images.common.expand} />\n </MuiButton>\n <MuiButton onClick={() => {\n setLevel(level != 1 ? level - 1 : 1)\n handleRowsExpand?.(level)\n }}>\n <img src={images.common.collapse} />\n </MuiButton>\n </ButtonGroup>\n </Box>\n {isDateFilterEnabled && <Divider flexItem orientation=\"vertical\" sx= {{ height: '50%', alignSelf: 'auto'}} />}\n </>\n )}\n {isDateFilterEnabled && (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 0.5 }}>\n <Typography type=\"s3\" weight=\"medium\" color='grey.800'>As of: </Typography>\n <ReportButtons\n zIndex={997}\n className=\"reportsTitleBar--RightContent\"\n dropdownMenuButtonData={{\n icon: <CalendarIcon fontSize=\"small\"/>,\n children: (\n <>\n {RANGE[dateRange]}\n <KeyboardArrowDownIcon />\n </>\n ),\n options: options,\n }}\n toggleCallback={toggleCallback}\n />\n <div ref={dateSelectRef}></div>\n </Box>\n )}\n </div>\n </Box>\n {/* <Filter\n open={openFilterPopup}\n onClose={() => setOpenFilterPopup(false)}\n fields={allFields}\n onSelectedFilter={(filterName: string) => console.log(filterName)}\n // getFilterStatesOnApply={() => {}}\n applyFilter={(val: any) => console.log('val', val)}\n /> */}\n <Popper\n sx={{\n zIndex: 9999,\n }}\n open={open}\n anchorEl={anchorRef.current}\n role={undefined}\n transition\n disablePortal\n >\n {({ TransitionProps, placement }) => (\n <Grow\n {...TransitionProps}\n style={{\n margin: \"0 20px 0 20px\",\n transformOrigin:\n placement === \"bottom\" ? \"center top\" : \"center bottom\",\n }}\n >\n <Paper>\n <ClickAwayListener onClickAway={handleClose}>\n <Box\n sx={{\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"flex-end\",\n }}\n >\n <div>\n {isDateRange ? (\n <DateRange\n editableDateInputs={true}\n onChange={(item) => setCustomDateRange(item.selection)}\n moveRangeOnFirstSelection={false}\n ranges={[customDateRange]}\n locale={enUS}\n />\n ) : (\n <Calendar\n onChange={(item) => setCustomDate(item)}\n date={customDate}\n locale={enUS}\n />\n )}\n </div>\n <Box sx={{ padding: \"0 12px 12px 0\" }}>\n <Button\n variant=\"contained\"\n sx={{ width: \"fit-content\" }}\n onClick={handleFilterPopperSubmit}\n >\n {t(\"common.apply\")}\n </Button>\n </Box>\n </Box>\n </ClickAwayListener>\n </Paper>\n </Grow>\n )}\n </Popper>\n </div>\n );\n};\n\nexport { ReportsTitleBar };\nexport default ReportsTitleBar;\n"],"names":["ReportsTitleBar","props","title","handleAddButton","buttons","dropdownMenuButtonData","isTitleMenu","titleMenus","reportFilterFields","toggleCallback","tabs","activeValue","setActiveValue","isDateFilterEnabled","onDateFilterChange","filters","isDateRange","showDateFilter","dateFilter","filterDropDown","handleRowsCollapse","handleRowsExpand","showLevelBtn","dataLength","filterKeys","dispatch","useAppDispatch","customStyle","border","borderColor","borderRadius","padding","display","gap","width","backgroundColor","color","alignItems","cursor","inputStyle","fontSize","selectedItems","setSelectedItems","useState","value","level","setLevel","actionAnchorEl","setActionAnchorEl","allFields","setAllFields","dateRange","setDateRange","open","setOpen","exportAnchorEl","setExportAnchorEl","customDate","setCustomDate","Date","dayjs","as_of_date","format","t","useTranslation","customDateRange","setCustomDateRange","startDate","start_date","endDate","end_date","key","anchorRef","useRef","dateSelectRef","chipDateSelectRef","handleCloseDatePopper","current","handleDateChange","async","range","data","handleCompareDateRange","RANGE","from","to","handleClose","event","contains","target","filtersConfig","map","filter","label","name","placeholder","apiType","valueKey","customFilter","multiple","options","TODAY","callback","THIS_WEEK","THIS_MONTH","THIS_QUARTER","THIS_YEAR","YESTERDAY","PREVIOUS_WEEK","PREVIOUS_MONTH","PREVIOUS_QUARTER","PREVIOUS_YEAR","CUSTOM","handleFilterPopperSubmit","dateRangeFilter","getStartAndEndDate","isValid","toDate","useEffect","fetchCompanies","generateFields","ExportContainer","React","memo","jsx","Menu","Boolean","anchorEl","onClose","anchorOrigin","vertical","horizontal","transformOrigin","children","_a","option","index","MenuItem","onClick","Typography","type","weight","jsxs","className","style","zIndex","TitleDropdownButton","isMenuThirdItemDisabled","ReportButtons","length","TabBar","isTabViewOnly","Box","sx","justifyContent","my","mx","Fragment","show","showCancelButton","val","some","item","SearchableSelect","labelId","searchPlaceholder","onChange","e","customeFilter","ref","KeyboardArrowDownIcon","includes","Button","palette","grey","bgcolor","variant","startIcon","ExportIcon","currentTarget","FilterIcon","Divider","flexItem","orientation","height","alignSelf","handleSelectChange","Checkbox","checked","marginLeft","ButtonGroup","disableElevation","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","MuiButton","src","images","common","expand","collapse","icon","CalendarIcon","Popper","role","transition","disablePortal","TransitionProps","placement","Grow","margin","Paper","ClickAwayListener","onClickAway","flexDirection","DateRange","editableDateInputs","selection","moveRangeOnFirstSelection","ranges","locale","enUS","Calendar","date"],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { jsx, Fragment } from "react/jsx-runtime";
2
+ import { Chip } from "../../../chip/chip/index.esm.js";
3
+ import { Typography } from "../../../typography/typography/index.esm.js";
4
+ import Close from "../../../../node_modules/@mui/icons-material/esm/Close/index.esm.js";
5
+ const ChipOrPlaceholder = ({
6
+ data,
7
+ placeholder,
8
+ onDelete,
9
+ chipProps
10
+ }) => /* @__PURE__ */ jsx(Fragment, { children: data.length ? /* @__PURE__ */ jsx(
11
+ Chip,
12
+ {
13
+ variant: "outlined",
14
+ type: "normal",
15
+ label: `${data.length} Selected`,
16
+ deleteIcon: /* @__PURE__ */ jsx(Close, { fontSize: "large" }),
17
+ onDelete,
18
+ onMouseDown: (event) => event.stopPropagation(),
19
+ ...chipProps
20
+ }
21
+ ) : /* @__PURE__ */ jsx(Typography, { color: "inherit", type: "s3", children: placeholder }) });
22
+ export {
23
+ ChipOrPlaceholder as default
24
+ };
25
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../../../../src/components/select/controller/chip-or-placeholder.tsx"],"sourcesContent":["import { Close } from \"@mui/icons-material\";\r\nimport { ChipProps } from \"@mui/material\";\r\nimport Chip from \"../../chip/chip\";\r\nimport Typography from \"../../typography/typography\";\r\n\r\ninterface ChipOrPlaceholderProps {\r\n data: string[];\r\n placeholder: string;\r\n onDelete?: () => void;\r\n chipProps?: Omit<ChipProps, \"label\">;\r\n}\r\n\r\nconst ChipOrPlaceholder: React.FC<ChipOrPlaceholderProps> = ({\r\n data,\r\n placeholder,\r\n onDelete,\r\n chipProps,\r\n}) => (\r\n <>\r\n {data.length ? (\r\n <Chip\r\n variant=\"outlined\"\r\n type=\"normal\"\r\n label={`${data.length} Selected`}\r\n deleteIcon={<Close fontSize=\"large\" />}\r\n onDelete={onDelete}\r\n onMouseDown={(event) => event.stopPropagation()}\r\n {...chipProps}\r\n />\r\n ) : (\r\n <Typography color=\"inherit\" type=\"s3\">\r\n {placeholder}\r\n </Typography>\r\n )}\r\n </>\r\n);\r\n\r\nexport default ChipOrPlaceholder;\r\n"],"names":[],"mappings":";;;;AAYA,MAAM,oBAAsD,CAAC;AAAA,EAC3D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MACE,oBAAA,UAAA,EACG,eAAK,SACJ;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,OAAO,GAAG,KAAK,MAAM;AAAA,IACrB,YAAY,oBAAC,OAAA,EAAM,UAAS,QAAA,CAAQ;AAAA,IACpC;AAAA,IACA,aAAa,CAAC,UAAU,MAAM,gBAAA;AAAA,IAC7B,GAAG;AAAA,EAAA;AACN,wBAEC,YAAA,EAAW,OAAM,WAAU,MAAK,MAC9B,uBACH,EAAA,CAEJ;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../../../chip/chip/index.js"),t=require("../../../typography/typography/index.js"),o=require("../../../../node_modules/@mui/icons-material/esm/Close/index.js");exports.default=({data:i,placeholder:l,onDelete:n,chipProps:a})=>/* @__PURE__ */e.jsx(e.Fragment,{children:i.length?/* @__PURE__ */e.jsx(r.Chip,{variant:"outlined",type:"normal",label:`${i.length} Selected`,deleteIcon:/* @__PURE__ */e.jsx(o.default,{fontSize:"large"}),onDelete:n,onMouseDown:e=>e.stopPropagation(),...a}):/* @__PURE__ */e.jsx(t.Typography,{color:"inherit",type:"s3",children:l})});
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/select/controller/chip-or-placeholder.tsx"],"sourcesContent":["import { Close } from \"@mui/icons-material\";\r\nimport { ChipProps } from \"@mui/material\";\r\nimport Chip from \"../../chip/chip\";\r\nimport Typography from \"../../typography/typography\";\r\n\r\ninterface ChipOrPlaceholderProps {\r\n data: string[];\r\n placeholder: string;\r\n onDelete?: () => void;\r\n chipProps?: Omit<ChipProps, \"label\">;\r\n}\r\n\r\nconst ChipOrPlaceholder: React.FC<ChipOrPlaceholderProps> = ({\r\n data,\r\n placeholder,\r\n onDelete,\r\n chipProps,\r\n}) => (\r\n <>\r\n {data.length ? (\r\n <Chip\r\n variant=\"outlined\"\r\n type=\"normal\"\r\n label={`${data.length} Selected`}\r\n deleteIcon={<Close fontSize=\"large\" />}\r\n onDelete={onDelete}\r\n onMouseDown={(event) => event.stopPropagation()}\r\n {...chipProps}\r\n />\r\n ) : (\r\n <Typography color=\"inherit\" type=\"s3\">\r\n {placeholder}\r\n </Typography>\r\n )}\r\n </>\r\n);\r\n\r\nexport default ChipOrPlaceholder;\r\n"],"names":["data","placeholder","onDelete","chipProps","jsx","Fragment","children","length","Chip","variant","type","label","deleteIcon","Close","fontSize","onMouseDown","event","stopPropagation","Typography","color"],"mappings":"kSAY4D,EAC1DA,OACAC,cACAC,WACAC,8BAEAC,EAAAA,IAAAC,EAAAA,SAAA,CACGC,WAAKC,sBACJH,EAAAA,IAACI,EAAAA,KAAA,CACCC,QAAQ,WACRC,KAAK,SACLC,MAAO,GAAGX,EAAKO,kBACfK,4BAAYR,IAACS,EAAAA,QAAA,CAAMC,SAAS,UAC5BZ,WACAa,YAAcC,GAAUA,EAAMC,qBAC1Bd,yBAGLe,aAAA,CAAWC,MAAM,UAAUT,KAAK,KAC9BJ"}
@@ -0,0 +1,165 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { Controller } from "react-hook-form";
3
+ import { Select } from "../../select/index.esm.js";
4
+ import { Checkbox } from "../../../checkbox/checkbox/index.esm.js";
5
+ import { Typography } from "../../../typography/typography/index.esm.js";
6
+ import { Chip } from "../../../chip/chip/index.esm.js";
7
+ import { MoreIcon } from "../../../icons/more/index.esm.js";
8
+ import ChipOrPlaceholder from "../chip-or-placeholder/index.esm.js";
9
+ /* empty css */
10
+ import FormHelperText from "../../../../node_modules/@mui/material/FormHelperText/FormHelperText/index.esm.js";
11
+ import MenuItem from "../../../../node_modules/@mui/material/MenuItem/MenuItem/index.esm.js";
12
+ import Box from "../../../../node_modules/@mui/material/Box/Box/index.esm.js";
13
+ const SelectedItems = ({
14
+ data,
15
+ options
16
+ }) => {
17
+ const displayTitle = data.map(
18
+ (selectedItem) => {
19
+ var _a;
20
+ return ((_a = options.find((option) => option.value === selectedItem)) == null ? void 0 : _a.text) || selectedItem;
21
+ }
22
+ );
23
+ return /* @__PURE__ */ jsxs(
24
+ Typography,
25
+ {
26
+ type: "s4",
27
+ color: "inherit",
28
+ sx: { display: "flex", gap: 1, alignItems: "center", mt: 0.5 },
29
+ children: [
30
+ displayTitle.slice(0.4).join(", "),
31
+ data.length > 4 && /* @__PURE__ */ jsx(Chip, { variant: "outlined", type: "normal", label: /* @__PURE__ */ jsx(MoreIcon, {}) })
32
+ ]
33
+ }
34
+ );
35
+ };
36
+ const generateMenuItems = ({
37
+ options,
38
+ multiple,
39
+ placeholder,
40
+ with_checkboxes,
41
+ onChange,
42
+ values
43
+ }) => {
44
+ const items = [];
45
+ if (!multiple) {
46
+ items.push(
47
+ /* @__PURE__ */ jsx(MenuItem, { disabled: true, value: "", children: /* @__PURE__ */ jsx("em", { children: placeholder }) })
48
+ );
49
+ }
50
+ const handleParentChange = (parentValue, childOptions) => {
51
+ const childValues = childOptions.map((child) => child.value);
52
+ const isParentSelected = values.includes(parentValue);
53
+ const updatedValues = isParentSelected ? values.filter((value) => value !== parentValue && !childValues.includes(value)) : [...values, parentValue, ...childValues];
54
+ onChange(updatedValues);
55
+ };
56
+ options.forEach((option) => {
57
+ items.push(
58
+ /* @__PURE__ */ jsx(
59
+ MenuItem,
60
+ {
61
+ value: option.value,
62
+ className: (option == null ? void 0 : option.isGroup) ? "select--MenuItemHeader" : "",
63
+ children: /* @__PURE__ */ jsxs(Box, { sx: { display: "flex", gap: 1 }, children: [
64
+ multiple && with_checkboxes && // <Checkbox checked={values?.indexOf((option.value)) > -1} />
65
+ /* @__PURE__ */ jsx(
66
+ Checkbox,
67
+ {
68
+ checked: (values == null ? void 0 : values.indexOf(option.value)) > -1,
69
+ onChange: () => handleParentChange(option.value, option.options || [])
70
+ }
71
+ ),
72
+ /* @__PURE__ */ jsx(Typography, { type: "s4", color: "inherit", children: option.text })
73
+ ] })
74
+ }
75
+ )
76
+ );
77
+ if ((option == null ? void 0 : option.isGroup) && Array.isArray(option == null ? void 0 : option.options)) {
78
+ option.options.forEach((opt) => {
79
+ items.push(
80
+ /* @__PURE__ */ jsx(MenuItem, { value: opt.value, sx: { pl: 5 }, children: /* @__PURE__ */ jsxs(Box, { sx: { display: "flex", gap: 1 }, children: [
81
+ multiple && with_checkboxes && /* @__PURE__ */ jsx(Checkbox, { checked: (values == null ? void 0 : values.indexOf(opt.value)) > -1 }),
82
+ /* @__PURE__ */ jsx(Typography, { type: "s4", color: "inherit", children: opt.text })
83
+ ] }) })
84
+ );
85
+ });
86
+ }
87
+ });
88
+ return items;
89
+ };
90
+ const ControllerSelect = ({
91
+ name,
92
+ fieldArrayName,
93
+ options,
94
+ label,
95
+ placeholder,
96
+ formControl,
97
+ position,
98
+ required,
99
+ size = "small",
100
+ multiple,
101
+ disabled,
102
+ searchPlaceholder,
103
+ handleSearch,
104
+ classes,
105
+ with_checkboxes,
106
+ onChipRemove
107
+ }) => {
108
+ return /* @__PURE__ */ jsx(
109
+ Controller,
110
+ {
111
+ control: formControl,
112
+ name: `${fieldArrayName}.${name}`,
113
+ render: ({ field, fieldState: { error } }) => /* @__PURE__ */ jsxs(Fragment, { children: [
114
+ /* @__PURE__ */ jsx(
115
+ Select,
116
+ {
117
+ fullWidth: true,
118
+ name,
119
+ dataPosition: position,
120
+ dataName: `${fieldArrayName}.${name}`,
121
+ placeholder,
122
+ label,
123
+ value: field.value || (multiple ? [] : ""),
124
+ defaultValue: "",
125
+ onChange: (e) => {
126
+ var _a, _b, _c;
127
+ return multiple && ((_b = (_a = e.target) == null ? void 0 : _a.value.filter((i) => i)) == null ? void 0 : _b.length) > 0 || !multiple && ((_c = e.target) == null ? void 0 : _c.value) ? field.onChange(e.target.value) : field.onChange("");
128
+ },
129
+ required: Boolean(required),
130
+ size,
131
+ multiple: Boolean(multiple),
132
+ disabled: Boolean(disabled),
133
+ searchPlaceholder,
134
+ handleSearch,
135
+ className: classes,
136
+ variant: "outlined",
137
+ error: Boolean(error),
138
+ renderValue: (selected) => /* @__PURE__ */ jsx(Fragment, { children: Array.isArray(selected) ? /* @__PURE__ */ jsx(
139
+ ChipOrPlaceholder,
140
+ {
141
+ data: selected,
142
+ placeholder,
143
+ onDelete: onChipRemove
144
+ }
145
+ ) : selected || placeholder }),
146
+ children: generateMenuItems({
147
+ options,
148
+ multiple: Boolean(multiple),
149
+ placeholder,
150
+ values: field.value,
151
+ with_checkboxes: Boolean(with_checkboxes),
152
+ onChange: field.onChange
153
+ })
154
+ }
155
+ ),
156
+ error && /* @__PURE__ */ jsx(FormHelperText, { error: true, children: error.message }),
157
+ multiple && Array.isArray(field == null ? void 0 : field.value) && /* @__PURE__ */ jsx(SelectedItems, { data: field.value, options })
158
+ ] })
159
+ }
160
+ );
161
+ };
162
+ export {
163
+ ControllerSelect as default
164
+ };
165
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../../../../src/components/select/controller/controller-select.tsx"],"sourcesContent":["import { Control, Controller, FieldValue } from \"react-hook-form\";\nimport { Box, FormHelperText, MenuItem, SelectProps } from \"@mui/material\";\n\nimport Select from '../select';\nimport Checkbox from '../../checkbox/checkbox';\nimport Typography from '../../typography/typography';\nimport Chip from '../../chip/chip';\nimport MoreIcon from '../../icons/more';\nimport { MenuItemProps } from '@mui/material';\nimport { ReactElement } from 'react';\nimport ChipOrPlaceholder from './chip-or-placeholder';\nimport './controller-select.scss';\n\ninterface IControllerSelect {\n name: string;\n label: string;\n options: any;\n placeholder: string;\n formControl: Control<FieldValue<any>, any>;\n fieldArrayName?: string;\n position?: string;\n required?: boolean;\n size?: SelectProps[\"size\"];\n multiple?: boolean;\n disabled?: boolean;\n searchPlaceholder?: string;\n handleSearch?: () => void;\n classes?: string;\n with_checkboxes?: boolean;\n onChipRemove?: () => void;\n}\n\nexport interface IOption {\n\ttext: string;\n\tvalue: string | number;\n\tisGroup?: boolean;\n\tparent?: string;\n\toptions?: { text: string; value: string }[];\n}\n\ninterface IMenuItems extends MenuItemProps {\n\toptions: IOption[];\n\tmultiple: boolean;\n\tplaceholder: string;\n\twith_checkboxes: boolean;\n onChange: (value: string[]) => void\n\tvalues: string | string[];\n}\n\nconst SelectedItems = ({\n\tdata,\n\toptions\n}: {\n\tdata: string[];\n\toptions: IOption[];\n}) => {\n\tconst displayTitle = data.map(\n\t\t(selectedItem) =>\n\t\t\toptions.find((option: any) => option.value === selectedItem)?.text ||\n\t\t\tselectedItem\n\t);\n\n\treturn (\n\t\t<Typography\n\t\t\ttype='s4'\n\t\t\tcolor='inherit'\n\t\t\tsx={{ display: 'flex', gap: 1, alignItems: 'center', mt: 0.5 }}>\n\t\t\t{displayTitle.slice(0.4).join(', ')}\n\t\t\t{data.length > 4 && (\n\t\t\t\t<Chip variant='outlined' type='normal' label={<MoreIcon />} />\n\t\t\t)}\n\t\t</Typography>\n\t);\n};\n\nconst generateMenuItems = ({\n\toptions,\n\tmultiple,\n\tplaceholder,\n\twith_checkboxes,\n onChange,\n\tvalues\n}: IMenuItems) => {\n\tconst items: ReactElement[] = [];\n\tif (!multiple) {\n\t\titems.push(\n\t\t\t<MenuItem disabled value=''>\n\t\t\t\t<em>{placeholder}</em>\n\t\t\t</MenuItem>\n\t\t);\n\t}\n\n const handleParentChange = (parentValue: string, childOptions: IOption[]) => {\n const childValues = childOptions.map((child) => child.value);\n\n const isParentSelected = values.includes(parentValue);\n const updatedValues = isParentSelected\n ? values.filter((value) => value !== parentValue && !childValues.includes(value))\n : [...values, parentValue, ...childValues];\n\n onChange(updatedValues);\n };\n\n\toptions.forEach((option) => {\n\t\titems.push(\n\t\t\t<MenuItem\n\t\t\t\tvalue={option.value}\n\t\t\t\tclassName={option?.isGroup ? 'select--MenuItemHeader' : ''}>\n\t\t\t\t<Box sx={{ display: 'flex', gap: 1 }}>\n\t\t\t\t\t{multiple && with_checkboxes && (\n\t\t\t\t\t\t// <Checkbox checked={values?.indexOf((option.value)) > -1} />\n <Checkbox checked={values?.indexOf((option.value)) > -1}\n onChange={() => handleParentChange(option.value, option.options || [])}\n />\n\t\t\t\t\t)}\n\t\t\t\t\t<Typography type='s4' color='inherit'>\n\t\t\t\t\t\t{option.text}\n\t\t\t\t\t</Typography>\n\t\t\t\t</Box>\n\t\t\t</MenuItem>\n\t\t);\n\t\tif (option?.isGroup && Array.isArray(option?.options)) {\n\t\t\toption.options.forEach((opt) => {\n\t\t\t\titems.push(\n\t\t\t\t\t<MenuItem value={opt.value} sx={{ pl: 5 }}>\n\t\t\t\t\t\t<Box sx={{ display: 'flex', gap: 1 }}>\n\t\t\t\t\t\t\t{multiple && with_checkboxes && (\n\t\t\t\t\t\t\t\t<Checkbox checked={values?.indexOf(opt.value) > -1} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Typography type='s4' color='inherit'>\n\t\t\t\t\t\t\t\t{opt.text}\n\t\t\t\t\t\t\t</Typography>\n\t\t\t\t\t\t</Box>\n\t\t\t\t\t</MenuItem>\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\t});\n\n\treturn items;\n};\n\nconst ControllerSelect: React.FC<IControllerSelect> = ({\n name,\n fieldArrayName,\n options,\n label,\n placeholder,\n formControl,\n position,\n required,\n size = \"small\",\n multiple,\n disabled,\n searchPlaceholder,\n handleSearch,\n classes,\n with_checkboxes,\n onChipRemove,\n}) => {\n return (\n <Controller\n control={formControl}\n name={`${fieldArrayName}.${name}`}\n render={({ field, fieldState: { error } }) => (\n <>\n <Select\n fullWidth\n name={name}\n dataPosition={position}\n dataName={`${fieldArrayName}.${name}`}\n placeholder={placeholder}\n label={label}\n value={field.value || (multiple ? [] : \"\")}\n defaultValue=\"\"\n onChange={(e:any)=>(multiple&&e.target?.value.filter((i:any)=>i)?.length>0||!multiple&&(e.target?.value))?field.onChange(e.target.value):field.onChange(\"\")}\n required={Boolean(required)}\n size={size}\n multiple={Boolean(multiple)}\n disabled={Boolean(disabled)}\n searchPlaceholder={searchPlaceholder}\n handleSearch={handleSearch}\n className={classes}\n variant=\"outlined\"\n error={Boolean(error)}\n renderValue={(selected: string | string[]) => (\n <>\n {Array.isArray(selected) ? (\n <ChipOrPlaceholder\n data={selected}\n placeholder={placeholder}\n onDelete={onChipRemove}\n />\n ) : (\n selected || placeholder\n )}\n </>\n )}\n >\n {generateMenuItems({\n options,\n multiple: Boolean(multiple),\n placeholder: placeholder,\n values: field.value,\n with_checkboxes: Boolean(with_checkboxes),\n onChange: field.onChange\n })}\n </Select>\n {error &&\n <FormHelperText error>{error.message}</FormHelperText>\n }\n {multiple && Array.isArray(field?.value) && (\n <SelectedItems data={field.value} options={options} />\n )}\n </>\n )}\n />\n );\n};\n\nexport default ControllerSelect;\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),l=require("react-hook-form"),r=,/* empty css */a=,/* empty css */o=,/* empty css */i=,/* empty css */n=,/* empty css */s=;/* empty css */;/* empty css */var t=,/* empty css */d=,/* empty css */u=;/* empty css */const c=({data:l,options:r})=>{const a=l.map(e=>{var l;return(null==(l=r.find(l=>l.value===e))?void 0:l.text)||e});/* @__PURE__ */
2
+ return e.jsxs(o.Typography,{type:"s4",color:"inherit",sx:{display:"flex",gap:1,alignItems:"center",mt:.5},children:[a.slice(.4).join(", "),l.length>4&&/* @__PURE__ */e.jsx(i.Chip,{variant:"outlined",type:"normal",label:/* @__PURE__ */e.jsx(n.MoreIcon,{})})]})},h=({options:l,multiple:r,placeholder:i,with_checkboxes:n,onChange:s,values:t})=>{const c=[];return r||c.push(
3
+ /* @__PURE__ */e.jsx(d.default,{disabled:!0,value:"",children:/* @__PURE__ */e.jsx("em",{children:i})})),l.forEach(l=>{c.push(
4
+ /* @__PURE__ */e.jsx(d.default,{value:l.value,className:(null==l?void 0:l.isGroup)?"select--MenuItemHeader":"",children:/* @__PURE__ */e.jsxs(u.default,{sx:{display:"flex",gap:1},children:[r&&n&&
5
+ /* @__PURE__ */e.jsx(a.Checkbox,{checked:(null==t?void 0:t.indexOf(l.value))>-1,onChange:()=>((e,l)=>{const r=l.map(e=>e.value),a=t.includes(e)?t.filter(l=>l!==e&&!r.includes(l)):[...t,e,...r];s(a)})(l.value,l.options||[])}),
6
+ /* @__PURE__ */e.jsx(o.Typography,{type:"s4",color:"inherit",children:l.text})]})})),(null==l?void 0:l.isGroup)&&Array.isArray(null==l?void 0:l.options)&&l.options.forEach(l=>{c.push(
7
+ /* @__PURE__ */e.jsx(d.default,{value:l.value,sx:{pl:5},children:/* @__PURE__ */e.jsxs(u.default,{sx:{display:"flex",gap:1},children:[r&&n&&/* @__PURE__ */e.jsx(a.Checkbox,{checked:(null==t?void 0:t.indexOf(l.value))>-1}),
8
+ /* @__PURE__ */e.jsx(o.Typography,{type:"s4",color:"inherit",children:l.text})]})}))})}),c};exports.default=({name:a,fieldArrayName:o,options:i,label:n,placeholder:d,formControl:u,position:p,required:x,size:m="small",multiple:v,disabled:j,searchPlaceholder:f,handleSearch:y,classes:g,with_checkboxes:b,onChipRemove:q})=>/* @__PURE__ */e.jsx(l.Controller,{control:u,name:`${o}.${a}`,render:({field:l,fieldState:{error:u}})=>/* @__PURE__ */e.jsxs(e.Fragment,{children:[
9
+ /* @__PURE__ */e.jsx(r.Select,{fullWidth:!0,name:a,dataPosition:p,dataName:`${o}.${a}`,placeholder:d,label:n,value:l.value||(v?[]:""),defaultValue:"",onChange:e=>{var r,a,o;return v&&(null==(a=null==(r=e.target)?void 0:r.value.filter(e=>e))?void 0:a.length)>0||!v&&(null==(o=e.target)?void 0:o.value)?l.onChange(e.target.value):l.onChange("")},required:Boolean(x),size:m,multiple:Boolean(v),disabled:Boolean(j),searchPlaceholder:f,handleSearch:y,className:g,variant:"outlined",error:Boolean(u),renderValue:l=>/* @__PURE__ */e.jsx(e.Fragment,{children:Array.isArray(l)?/* @__PURE__ */e.jsx(s.default,{data:l,placeholder:d,onDelete:q}):l||d}),children:h({options:i,multiple:Boolean(v),placeholder:d,values:l.value,with_checkboxes:Boolean(b),onChange:l.onChange})}),u&&/* @__PURE__ */e.jsx(t.default,{error:!0,children:u.message}),v&&Array.isArray(null==l?void 0:l.value)&&/* @__PURE__ */e.jsx(c,{data:l.value,options:i})]})});
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/select/controller/controller-select.tsx"],"sourcesContent":["import { Control, Controller, FieldValue } from \"react-hook-form\";\nimport { Box, FormHelperText, MenuItem, SelectProps } from \"@mui/material\";\n\nimport Select from '../select';\nimport Checkbox from '../../checkbox/checkbox';\nimport Typography from '../../typography/typography';\nimport Chip from '../../chip/chip';\nimport MoreIcon from '../../icons/more';\nimport { MenuItemProps } from '@mui/material';\nimport { ReactElement } from 'react';\nimport ChipOrPlaceholder from './chip-or-placeholder';\nimport './controller-select.scss';\n\ninterface IControllerSelect {\n name: string;\n label: string;\n options: any;\n placeholder: string;\n formControl: Control<FieldValue<any>, any>;\n fieldArrayName?: string;\n position?: string;\n required?: boolean;\n size?: SelectProps[\"size\"];\n multiple?: boolean;\n disabled?: boolean;\n searchPlaceholder?: string;\n handleSearch?: () => void;\n classes?: string;\n with_checkboxes?: boolean;\n onChipRemove?: () => void;\n}\n\nexport interface IOption {\n\ttext: string;\n\tvalue: string | number;\n\tisGroup?: boolean;\n\tparent?: string;\n\toptions?: { text: string; value: string }[];\n}\n\ninterface IMenuItems extends MenuItemProps {\n\toptions: IOption[];\n\tmultiple: boolean;\n\tplaceholder: string;\n\twith_checkboxes: boolean;\n onChange: (value: string[]) => void\n\tvalues: string | string[];\n}\n\nconst SelectedItems = ({\n\tdata,\n\toptions\n}: {\n\tdata: string[];\n\toptions: IOption[];\n}) => {\n\tconst displayTitle = data.map(\n\t\t(selectedItem) =>\n\t\t\toptions.find((option: any) => option.value === selectedItem)?.text ||\n\t\t\tselectedItem\n\t);\n\n\treturn (\n\t\t<Typography\n\t\t\ttype='s4'\n\t\t\tcolor='inherit'\n\t\t\tsx={{ display: 'flex', gap: 1, alignItems: 'center', mt: 0.5 }}>\n\t\t\t{displayTitle.slice(0.4).join(', ')}\n\t\t\t{data.length > 4 && (\n\t\t\t\t<Chip variant='outlined' type='normal' label={<MoreIcon />} />\n\t\t\t)}\n\t\t</Typography>\n\t);\n};\n\nconst generateMenuItems = ({\n\toptions,\n\tmultiple,\n\tplaceholder,\n\twith_checkboxes,\n onChange,\n\tvalues\n}: IMenuItems) => {\n\tconst items: ReactElement[] = [];\n\tif (!multiple) {\n\t\titems.push(\n\t\t\t<MenuItem disabled value=''>\n\t\t\t\t<em>{placeholder}</em>\n\t\t\t</MenuItem>\n\t\t);\n\t}\n\n const handleParentChange = (parentValue: string, childOptions: IOption[]) => {\n const childValues = childOptions.map((child) => child.value);\n\n const isParentSelected = values.includes(parentValue);\n const updatedValues = isParentSelected\n ? values.filter((value) => value !== parentValue && !childValues.includes(value))\n : [...values, parentValue, ...childValues];\n\n onChange(updatedValues);\n };\n\n\toptions.forEach((option) => {\n\t\titems.push(\n\t\t\t<MenuItem\n\t\t\t\tvalue={option.value}\n\t\t\t\tclassName={option?.isGroup ? 'select--MenuItemHeader' : ''}>\n\t\t\t\t<Box sx={{ display: 'flex', gap: 1 }}>\n\t\t\t\t\t{multiple && with_checkboxes && (\n\t\t\t\t\t\t// <Checkbox checked={values?.indexOf((option.value)) > -1} />\n <Checkbox checked={values?.indexOf((option.value)) > -1}\n onChange={() => handleParentChange(option.value, option.options || [])}\n />\n\t\t\t\t\t)}\n\t\t\t\t\t<Typography type='s4' color='inherit'>\n\t\t\t\t\t\t{option.text}\n\t\t\t\t\t</Typography>\n\t\t\t\t</Box>\n\t\t\t</MenuItem>\n\t\t);\n\t\tif (option?.isGroup && Array.isArray(option?.options)) {\n\t\t\toption.options.forEach((opt) => {\n\t\t\t\titems.push(\n\t\t\t\t\t<MenuItem value={opt.value} sx={{ pl: 5 }}>\n\t\t\t\t\t\t<Box sx={{ display: 'flex', gap: 1 }}>\n\t\t\t\t\t\t\t{multiple && with_checkboxes && (\n\t\t\t\t\t\t\t\t<Checkbox checked={values?.indexOf(opt.value) > -1} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Typography type='s4' color='inherit'>\n\t\t\t\t\t\t\t\t{opt.text}\n\t\t\t\t\t\t\t</Typography>\n\t\t\t\t\t\t</Box>\n\t\t\t\t\t</MenuItem>\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\t});\n\n\treturn items;\n};\n\nconst ControllerSelect: React.FC<IControllerSelect> = ({\n name,\n fieldArrayName,\n options,\n label,\n placeholder,\n formControl,\n position,\n required,\n size = \"small\",\n multiple,\n disabled,\n searchPlaceholder,\n handleSearch,\n classes,\n with_checkboxes,\n onChipRemove,\n}) => {\n return (\n <Controller\n control={formControl}\n name={`${fieldArrayName}.${name}`}\n render={({ field, fieldState: { error } }) => (\n <>\n <Select\n fullWidth\n name={name}\n dataPosition={position}\n dataName={`${fieldArrayName}.${name}`}\n placeholder={placeholder}\n label={label}\n value={field.value || (multiple ? [] : \"\")}\n defaultValue=\"\"\n onChange={(e:any)=>(multiple&&e.target?.value.filter((i:any)=>i)?.length>0||!multiple&&(e.target?.value))?field.onChange(e.target.value):field.onChange(\"\")}\n required={Boolean(required)}\n size={size}\n multiple={Boolean(multiple)}\n disabled={Boolean(disabled)}\n searchPlaceholder={searchPlaceholder}\n handleSearch={handleSearch}\n className={classes}\n variant=\"outlined\"\n error={Boolean(error)}\n renderValue={(selected: string | string[]) => (\n <>\n {Array.isArray(selected) ? (\n <ChipOrPlaceholder\n data={selected}\n placeholder={placeholder}\n onDelete={onChipRemove}\n />\n ) : (\n selected || placeholder\n )}\n </>\n )}\n >\n {generateMenuItems({\n options,\n multiple: Boolean(multiple),\n placeholder: placeholder,\n values: field.value,\n with_checkboxes: Boolean(with_checkboxes),\n onChange: field.onChange\n })}\n </Select>\n {error &&\n <FormHelperText error>{error.message}</FormHelperText>\n }\n {multiple && Array.isArray(field?.value) && (\n <SelectedItems data={field.value} options={options} />\n )}\n </>\n )}\n />\n );\n};\n\nexport default ControllerSelect;\n"],"names":["SelectedItems","data","options","displayTitle","map","selectedItem","_a","find","option","value","text","jsxs","Typography","type","color","sx","display","gap","alignItems","mt","children","slice","join","length","jsx","Chip","variant","label","MoreIcon","generateMenuItems","multiple","placeholder","with_checkboxes","onChange","values","items","push","MenuItem","disabled","forEach","className","isGroup","Box","Checkbox","checked","indexOf","parentValue","childOptions","childValues","child","updatedValues","includes","filter","handleParentChange","Array","isArray","opt","pl","name","fieldArrayName","formControl","position","required","size","searchPlaceholder","handleSearch","classes","onChipRemove","Controller","control","render","field","fieldState","error","Fragment","Select","fullWidth","dataPosition","dataName","defaultValue","e","_b","target","i","_c","Boolean","renderValue","selected","ChipOrPlaceholder","onDelete","FormHelperText","message"],"mappings":"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"}
@@ -42,7 +42,9 @@ const shareSlice = createSlice({
42
42
  );
43
43
  }
44
44
  });
45
+ var reducer = shareSlice.reducer;
45
46
  export {
47
+ reducer as default,
46
48
  shareSlice
47
49
  };
48
50
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../../../../src/components/share-modal/redux/reducer.ts"],"sourcesContent":["import { createSlice } from \"@reduxjs/toolkit\";\nimport initialState from \"./state\";\nimport { getAllUserAndDepartmentDropdown } from \"./actionCreator\";\n\nexport const shareSlice = createSlice({\n name: \"share\",\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n /*-------------------------------- get share drive Pending State ---------------------------------*/\n\n builder.addCase(getAllUserAndDepartmentDropdown.pending, (state) => {\n state.loading = true;\n state.error = \"\";\n state.users = [];\n state.departments = [];\n state.isError = false;\n });\n\n /*-------------------------------- get share drive fullfiled State ---------------------------------*/\n builder.addCase(\n getAllUserAndDepartmentDropdown.fulfilled,\n (state, action) => {\n state.loading = false;\n state.users = action.payload?.data?.users?.map((user: any) => ({\n ...user,\n label: `${user.first_name} ${user.last_name}`,\n value: user.id,\n }));\n state.departments = action.payload?.data?.roles?.map((role: any) => ({\n ...role,\n label: role.name,\n value: role.id,\n }));\n state.error = \"\";\n state.isError = false;\n },\n );\n\n /*-------------------------------- get share drive Rejected State ---------------------------------*/\n builder.addCase(\n getAllUserAndDepartmentDropdown.rejected,\n (state, action) => {\n state.loading = false;\n state.error = action.error.message || \"\";\n state.isError = true;\n },\n );\n },\n});\n\nexport default shareSlice.reducer;\n"],"names":["initialState","state"],"mappings":";;;AAIO,MAAM,aAAa,YAAY;AAAA,EACpC,MAAM;AAAA,EAAA,cACNA;AAAAA,EACA,UAAU,CAAA;AAAA,EACV,eAAe,CAAC,YAAY;AAG1B,YAAQ,QAAQ,gCAAgC,SAAS,CAACC,WAAU;AAClE,MAAAA,OAAM,UAAU;AAChB,MAAAA,OAAM,QAAQ;AACd,MAAAA,OAAM,QAAQ,CAAA;AACd,MAAAA,OAAM,cAAc,CAAA;AACpB,MAAAA,OAAM,UAAU;AAAA,IAClB,CAAC;AAGD,YAAQ;AAAA,MACN,gCAAgC;AAAA,MAChC,CAACA,QAAO,WAAW;;AACjB,QAAAA,OAAM,UAAU;AAChB,QAAAA,OAAM,SAAQ,wBAAO,YAAP,mBAAgB,SAAhB,mBAAsB,UAAtB,mBAA6B,IAAI,CAAC,UAAe;AAAA,UAC7D,GAAG;AAAA,UACH,OAAO,GAAG,KAAK,UAAU,IAAI,KAAK,SAAS;AAAA,UAC3C,OAAO,KAAK;AAAA,QAAA;AAEd,QAAAA,OAAM,eAAc,wBAAO,YAAP,mBAAgB,SAAhB,mBAAsB,UAAtB,mBAA6B,IAAI,CAAC,UAAe;AAAA,UACnE,GAAG;AAAA,UACH,OAAO,KAAK;AAAA,UACZ,OAAO,KAAK;AAAA,QAAA;AAEd,QAAAA,OAAM,QAAQ;AACd,QAAAA,OAAM,UAAU;AAAA,MAClB;AAAA,IAAA;AAIF,YAAQ;AAAA,MACN,gCAAgC;AAAA,MAChC,CAACA,QAAO,WAAW;AACjB,QAAAA,OAAM,UAAU;AAChB,QAAAA,OAAM,QAAQ,OAAO,MAAM,WAAW;AACtC,QAAAA,OAAM,UAAU;AAAA,MAClB;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../../../../src/components/share-modal/redux/reducer.ts"],"sourcesContent":["import { createSlice } from \"@reduxjs/toolkit\";\nimport initialState from \"./state\";\nimport { getAllUserAndDepartmentDropdown } from \"./actionCreator\";\n\nexport const shareSlice = createSlice({\n name: \"share\",\n initialState,\n reducers: {},\n extraReducers: (builder) => {\n /*-------------------------------- get share drive Pending State ---------------------------------*/\n\n builder.addCase(getAllUserAndDepartmentDropdown.pending, (state) => {\n state.loading = true;\n state.error = \"\";\n state.users = [];\n state.departments = [];\n state.isError = false;\n });\n\n /*-------------------------------- get share drive fullfiled State ---------------------------------*/\n builder.addCase(\n getAllUserAndDepartmentDropdown.fulfilled,\n (state, action) => {\n state.loading = false;\n state.users = action.payload?.data?.users?.map((user: any) => ({\n ...user,\n label: `${user.first_name} ${user.last_name}`,\n value: user.id,\n }));\n state.departments = action.payload?.data?.roles?.map((role: any) => ({\n ...role,\n label: role.name,\n value: role.id,\n }));\n state.error = \"\";\n state.isError = false;\n },\n );\n\n /*-------------------------------- get share drive Rejected State ---------------------------------*/\n builder.addCase(\n getAllUserAndDepartmentDropdown.rejected,\n (state, action) => {\n state.loading = false;\n state.error = action.error.message || \"\";\n state.isError = true;\n },\n );\n },\n});\n\nexport default shareSlice.reducer;\n"],"names":["initialState","state"],"mappings":";;;AAIO,MAAM,aAAa,YAAY;AAAA,EACpC,MAAM;AAAA,EAAA,cACNA;AAAAA,EACA,UAAU,CAAA;AAAA,EACV,eAAe,CAAC,YAAY;AAG1B,YAAQ,QAAQ,gCAAgC,SAAS,CAACC,WAAU;AAClE,MAAAA,OAAM,UAAU;AAChB,MAAAA,OAAM,QAAQ;AACd,MAAAA,OAAM,QAAQ,CAAA;AACd,MAAAA,OAAM,cAAc,CAAA;AACpB,MAAAA,OAAM,UAAU;AAAA,IAClB,CAAC;AAGD,YAAQ;AAAA,MACN,gCAAgC;AAAA,MAChC,CAACA,QAAO,WAAW;;AACjB,QAAAA,OAAM,UAAU;AAChB,QAAAA,OAAM,SAAQ,wBAAO,YAAP,mBAAgB,SAAhB,mBAAsB,UAAtB,mBAA6B,IAAI,CAAC,UAAe;AAAA,UAC7D,GAAG;AAAA,UACH,OAAO,GAAG,KAAK,UAAU,IAAI,KAAK,SAAS;AAAA,UAC3C,OAAO,KAAK;AAAA,QAAA;AAEd,QAAAA,OAAM,eAAc,wBAAO,YAAP,mBAAgB,SAAhB,mBAAsB,UAAtB,mBAA6B,IAAI,CAAC,UAAe;AAAA,UACnE,GAAG;AAAA,UACH,OAAO,KAAK;AAAA,UACZ,OAAO,KAAK;AAAA,QAAA;AAEd,QAAAA,OAAM,QAAQ;AACd,QAAAA,OAAM,UAAU;AAAA,MAClB;AAAA,IAAA;AAIF,YAAQ;AAAA,MACN,gCAAgC;AAAA,MAChC,CAACA,QAAO,WAAW;AACjB,QAAAA,OAAM,UAAU;AAChB,QAAAA,OAAM,QAAQ,OAAO,MAAM,WAAW;AACtC,QAAAA,OAAM,UAAU;AAAA,MAClB;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;AAED,IAAA,UAAe,WAAW;"}