ikoncomponents 1.4.8 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/bin.js +2 -0
  2. package/dist/commands/init.js +57 -0
  3. package/dist/index.js +3 -116
  4. package/dist/utlis/copyDir.js +7 -0
  5. package/package.json +18 -92
  6. package/templates/default/hooks/use-mobile.ts +19 -0
  7. package/templates/default/ikonShade/accordion.tsx +66 -0
  8. package/templates/default/ikonShade/alert-dialog.tsx +179 -0
  9. package/templates/default/ikonShade/alert.tsx +66 -0
  10. package/templates/default/ikonShade/aspect-ratio.tsx +11 -0
  11. package/templates/default/ikonShade/avatar.tsx +53 -0
  12. package/templates/default/ikonShade/badge.tsx +49 -0
  13. package/templates/default/ikonShade/breadcrumb.tsx +109 -0
  14. package/templates/default/ikonShade/button.tsx +64 -0
  15. package/templates/default/ikonShade/calendar.tsx +227 -0
  16. package/templates/default/ikonShade/card.tsx +92 -0
  17. package/templates/default/ikonShade/checkbox.tsx +33 -0
  18. package/templates/default/ikonShade/collapsible.tsx +33 -0
  19. package/templates/default/ikonShade/command.tsx +184 -0
  20. package/templates/default/ikonShade/date-input.tsx +259 -0
  21. package/templates/default/ikonShade/date-range-picker.tsx +103 -0
  22. package/templates/default/ikonShade/dialog.tsx +143 -0
  23. package/templates/default/ikonShade/drawer.tsx +134 -0
  24. package/templates/default/ikonShade/dropdown-menu.tsx +259 -0
  25. package/templates/default/ikonShade/form.tsx +166 -0
  26. package/templates/default/ikonShade/hover-card.tsx +44 -0
  27. package/templates/default/ikonShade/input-otp.tsx +71 -0
  28. package/templates/default/ikonShade/input.tsx +22 -0
  29. package/templates/default/ikonShade/label.tsx +24 -0
  30. package/templates/default/ikonShade/navigation-menu.tsx +195 -0
  31. package/templates/default/ikonShade/popover.tsx +48 -0
  32. package/templates/default/ikonShade/progress.tsx +40 -0
  33. package/templates/default/ikonShade/radio-group.tsx +45 -0
  34. package/templates/default/ikonShade/scroll-area.tsx +58 -0
  35. package/templates/default/ikonShade/select.tsx +184 -0
  36. package/templates/default/ikonShade/separator.tsx +28 -0
  37. package/templates/default/ikonShade/sheet.tsx +139 -0
  38. package/templates/default/ikonShade/sidebar.tsx +726 -0
  39. package/templates/default/ikonShade/skeleton.tsx +15 -0
  40. package/templates/default/ikonShade/slider.tsx +64 -0
  41. package/templates/default/ikonShade/sonner.tsx +25 -0
  42. package/templates/default/ikonShade/switch.tsx +31 -0
  43. package/templates/default/ikonShade/table.tsx +116 -0
  44. package/templates/default/ikonShade/tabs.tsx +67 -0
  45. package/templates/default/ikonShade/textarea.tsx +18 -0
  46. package/templates/default/ikonShade/toggle-group.tsx +83 -0
  47. package/templates/default/ikonShade/toggle.tsx +47 -0
  48. package/templates/default/ikonShade/tooltip.tsx +65 -0
  49. package/templates/default/ikonShade/workflow.tsx +119 -0
  50. package/templates/default/ikoncomponents/action-menu/index.tsx +108 -0
  51. package/templates/default/ikoncomponents/action-menu/type.ts +18 -0
  52. package/templates/default/ikoncomponents/activity-sheet/index.tsx +63 -0
  53. package/templates/default/ikoncomponents/alert-dialog/dialog-context.tsx +65 -0
  54. package/templates/default/ikoncomponents/alert-dialog/index.tsx +80 -0
  55. package/templates/default/ikoncomponents/app-breadcrumb/BreadcrumbProvider.tsx +68 -0
  56. package/templates/default/ikoncomponents/app-breadcrumb/index.tsx +222 -0
  57. package/templates/default/ikoncomponents/big-calendar/big-calender-event/index.tsx +38 -0
  58. package/templates/default/ikoncomponents/big-calendar/big-calender-toolbar/index.tsx +81 -0
  59. package/templates/default/ikoncomponents/big-calendar/index.css +879 -0
  60. package/templates/default/ikoncomponents/big-calendar/index.tsx +59 -0
  61. package/templates/default/ikoncomponents/big-calendar/type.ts +37 -0
  62. package/templates/default/ikoncomponents/buttons/index.tsx +127 -0
  63. package/templates/default/ikoncomponents/combobox-input/index.tsx +75 -0
  64. package/templates/default/ikoncomponents/combobox-input/type.ts +14 -0
  65. package/templates/default/ikoncomponents/custom-combo-dropdown/index.tsx +242 -0
  66. package/templates/default/ikoncomponents/data-table/datatable-column-filter/index.tsx +80 -0
  67. package/templates/default/ikoncomponents/data-table/datatable-faceted-filter/index.tsx +149 -0
  68. package/templates/default/ikoncomponents/data-table/datatable-filter-menu/index.tsx +98 -0
  69. package/templates/default/ikoncomponents/data-table/datatable-pagination/index.tsx +119 -0
  70. package/templates/default/ikoncomponents/data-table/datatable-toolbar/index.tsx +45 -0
  71. package/templates/default/ikoncomponents/data-table/function.ts +7 -0
  72. package/templates/default/ikoncomponents/data-table/index.tsx +549 -0
  73. package/templates/default/ikoncomponents/data-table/type.ts +75 -0
  74. package/templates/default/ikoncomponents/e-chart/index.tsx +183 -0
  75. package/templates/default/ikoncomponents/file-input/index.tsx +27 -0
  76. package/templates/default/ikoncomponents/fileUpload/index.tsx +121 -0
  77. package/templates/default/ikoncomponents/form-fields/combobox-input/index.tsx +111 -0
  78. package/templates/default/ikoncomponents/form-fields/combobox-input-value/index.tsx +121 -0
  79. package/templates/default/ikoncomponents/form-fields/date-input/index.tsx +80 -0
  80. package/templates/default/ikoncomponents/form-fields/file-input/index.tsx +9 -0
  81. package/templates/default/ikoncomponents/form-fields/input/index.tsx +27 -0
  82. package/{dist/ikoncomponents/form-fields/multi-combobox-input/index.js → templates/default/ikoncomponents/form-fields/multi-combobox-input/index.tsx} +574 -381
  83. package/templates/default/ikoncomponents/form-fields/otp-input/index.tsx +39 -0
  84. package/templates/default/ikoncomponents/form-fields/password-input/index.tsx +52 -0
  85. package/templates/default/ikoncomponents/form-fields/phone-input/index.tsx +7 -0
  86. package/templates/default/ikoncomponents/form-fields/textarea/index.tsx +28 -0
  87. package/templates/default/ikoncomponents/form-fields/types/index.ts +46 -0
  88. package/templates/default/ikoncomponents/glowing-effect/index.tsx +171 -0
  89. package/templates/default/ikoncomponents/icon/index.tsx +22 -0
  90. package/templates/default/ikoncomponents/image-cropper-upload/components/cropperImg.css +19 -0
  91. package/{dist/ikoncomponents/image-cropper-upload/components/newCropper.js → templates/default/ikoncomponents/image-cropper-upload/components/newCropper.tsx} +117 -85
  92. package/templates/default/ikoncomponents/image-cropper-upload/components/newImageUploadForm.tsx +352 -0
  93. package/templates/default/ikoncomponents/image-cropper-upload/cropper-form/index.tsx +250 -0
  94. package/templates/default/ikoncomponents/image-cropper-upload/cropper-form-with-modal/index.tsx +32 -0
  95. package/{dist/ikoncomponents/image-cropper-upload/image-cropper/index.js → templates/default/ikoncomponents/image-cropper-upload/image-cropper/index.tsx} +119 -87
  96. package/templates/default/ikoncomponents/image-cropper-upload/index.tsx +95 -0
  97. package/templates/default/ikoncomponents/image-cropper-upload/utils/index.ts +117 -0
  98. package/templates/default/ikoncomponents/loading-spinner/index.tsx +43 -0
  99. package/templates/default/ikoncomponents/main-layout/RefreshContext.tsx +30 -0
  100. package/templates/default/ikoncomponents/main-layout/SidebarNavContext.tsx +103 -0
  101. package/templates/default/ikoncomponents/main-layout/app-sidebar.tsx +36 -0
  102. package/templates/default/ikoncomponents/main-layout/footer.tsx +21 -0
  103. package/templates/default/ikoncomponents/main-layout/header.tsx +53 -0
  104. package/templates/default/ikoncomponents/main-layout/index.tsx +43 -0
  105. package/templates/default/ikoncomponents/main-layout/main-sidebar.tsx +389 -0
  106. package/templates/default/ikoncomponents/main-layout/nav-main.tsx +103 -0
  107. package/templates/default/ikoncomponents/multi-combobox/index.tsx +345 -0
  108. package/templates/default/ikoncomponents/no-data/index.tsx +11 -0
  109. package/templates/default/ikoncomponents/page-wrapper/index.tsx +30 -0
  110. package/templates/default/ikoncomponents/password-strength-meter/index.tsx +49 -0
  111. package/templates/default/ikoncomponents/phone-input/index.tsx +72 -0
  112. package/templates/default/ikoncomponents/provider-wrapper/index.tsx +32 -0
  113. package/templates/default/ikoncomponents/search-input/index.tsx +18 -0
  114. package/templates/default/ikoncomponents/sheet/index.tsx +34 -0
  115. package/templates/default/ikoncomponents/simple-widget/index.tsx +54 -0
  116. package/templates/default/ikoncomponents/skeleton-loader/skeleton-table.tsx +34 -0
  117. package/templates/default/ikoncomponents/skeleton-loader/skeleton-widget.tsx +13 -0
  118. package/templates/default/ikoncomponents/tabs/index.tsx +139 -0
  119. package/{dist/ikoncomponents/tabs/type.d.ts → templates/default/ikoncomponents/tabs/type.ts} +20 -20
  120. package/{dist/ikoncomponents/theme-toggle-btn/index.js → templates/default/ikoncomponents/theme-toggle-btn/index.tsx} +189 -118
  121. package/templates/default/ikoncomponents/title-progress/index.tsx +41 -0
  122. package/templates/default/ikoncomponents/tooltip/index.tsx +17 -0
  123. package/templates/default/ikoncomponents/twolevel-dropdown/convertToDropdownNodes.tsx +33 -0
  124. package/templates/default/ikoncomponents/twolevel-dropdown/index.tsx +279 -0
  125. package/templates/default/ikoncomponents/upload-tab/index.tsx +237 -0
  126. package/templates/default/ikoncomponents/widgets/index.tsx +81 -0
  127. package/templates/default/ikoncomponents/widgets/type.ts +11 -0
  128. package/templates/default/ikoncomponents/work-in-progress/index.tsx +16 -0
  129. package/{dist/index.d.ts → templates/default/index.ts} +234 -139
  130. package/templates/default/styles.css +1159 -0
  131. package/templates/default/utils/actions/account/index.ts +33 -0
  132. package/templates/default/utils/actions/account/type.ts +4 -0
  133. package/{dist/utils/actions/auth/index.js → templates/default/utils/actions/auth/index.ts} +69 -58
  134. package/templates/default/utils/actions/common/revalidate.ts +18 -0
  135. package/templates/default/utils/actions/common/type.ts +4 -0
  136. package/{dist/utils/actions/common/utils.js → templates/default/utils/actions/common/utils.ts} +28 -25
  137. package/templates/default/utils/actions/software/index.ts +106 -0
  138. package/templates/default/utils/api/accountService/index.ts +103 -0
  139. package/templates/default/utils/api/accountService/type.ts +4 -0
  140. package/templates/default/utils/api/file-upload/index.ts +103 -0
  141. package/templates/default/utils/api/file-upload/type.ts +8 -0
  142. package/{dist/utils/api/ikonBaseApi.js → templates/default/utils/api/ikonBaseApi.ts} +132 -104
  143. package/templates/default/utils/api/loginService/index.ts +108 -0
  144. package/{dist/utils/api/loginService/type.d.ts → templates/default/utils/api/loginService/type.ts} +35 -32
  145. package/templates/default/utils/api/softwareService/index.ts +356 -0
  146. package/templates/default/utils/api/softwareService/type.ts +62 -0
  147. package/{dist/utils/border-radius-provider.js → templates/default/utils/border-radius-provider.tsx} +59 -35
  148. package/templates/default/utils/cn.ts +6 -0
  149. package/{dist/utils/font-provider.js → templates/default/utils/font-provider.tsx} +61 -37
  150. package/templates/default/utils/session/cookieSession.ts +49 -0
  151. package/templates/default/utils/theme-provider/index.tsx +11 -0
  152. package/templates/default/utils/token-management/index.ts +115 -0
  153. package/templates/default/utils/token-management/types.ts +6 -0
  154. package/dist/hooks/use-mobile.d.ts +0 -2
  155. package/dist/hooks/use-mobile.d.ts.map +0 -1
  156. package/dist/hooks/use-mobile.js +0 -15
  157. package/dist/ikoncomponents/action-menu/index.d.ts +0 -6
  158. package/dist/ikoncomponents/action-menu/index.d.ts.map +0 -1
  159. package/dist/ikoncomponents/action-menu/index.js +0 -42
  160. package/dist/ikoncomponents/action-menu/type.d.ts +0 -15
  161. package/dist/ikoncomponents/action-menu/type.d.ts.map +0 -1
  162. package/dist/ikoncomponents/action-menu/type.js +0 -1
  163. package/dist/ikoncomponents/activity-sheet/index.d.ts +0 -12
  164. package/dist/ikoncomponents/activity-sheet/index.d.ts.map +0 -1
  165. package/dist/ikoncomponents/activity-sheet/index.js +0 -23
  166. package/dist/ikoncomponents/alert-dialog/dialog-context.d.ts +0 -22
  167. package/dist/ikoncomponents/alert-dialog/dialog-context.d.ts.map +0 -1
  168. package/dist/ikoncomponents/alert-dialog/dialog-context.js +0 -30
  169. package/dist/ikoncomponents/alert-dialog/index.d.ts +0 -15
  170. package/dist/ikoncomponents/alert-dialog/index.d.ts.map +0 -1
  171. package/dist/ikoncomponents/alert-dialog/index.js +0 -20
  172. package/dist/ikoncomponents/app-breadcrumb/BreadcrumbProvider.d.ts +0 -19
  173. package/dist/ikoncomponents/app-breadcrumb/BreadcrumbProvider.d.ts.map +0 -1
  174. package/dist/ikoncomponents/app-breadcrumb/BreadcrumbProvider.js +0 -43
  175. package/dist/ikoncomponents/app-breadcrumb/index.d.ts +0 -6
  176. package/dist/ikoncomponents/app-breadcrumb/index.d.ts.map +0 -1
  177. package/dist/ikoncomponents/app-breadcrumb/index.js +0 -57
  178. package/dist/ikoncomponents/big-calendar/big-calender-event/index.d.ts +0 -6
  179. package/dist/ikoncomponents/big-calendar/big-calender-event/index.d.ts.map +0 -1
  180. package/dist/ikoncomponents/big-calendar/big-calender-event/index.js +0 -16
  181. package/dist/ikoncomponents/big-calendar/big-calender-toolbar/index.d.ts +0 -3
  182. package/dist/ikoncomponents/big-calendar/big-calender-toolbar/index.d.ts.map +0 -1
  183. package/dist/ikoncomponents/big-calendar/big-calender-toolbar/index.js +0 -39
  184. package/dist/ikoncomponents/big-calendar/index.d.ts +0 -4
  185. package/dist/ikoncomponents/big-calendar/index.d.ts.map +0 -1
  186. package/dist/ikoncomponents/big-calendar/index.js +0 -35
  187. package/dist/ikoncomponents/big-calendar/type.d.ts +0 -32
  188. package/dist/ikoncomponents/big-calendar/type.d.ts.map +0 -1
  189. package/dist/ikoncomponents/big-calendar/type.js +0 -1
  190. package/dist/ikoncomponents/buttons/index.d.ts +0 -19
  191. package/dist/ikoncomponents/buttons/index.d.ts.map +0 -1
  192. package/dist/ikoncomponents/buttons/index.js +0 -38
  193. package/dist/ikoncomponents/combobox-input/index.d.ts +0 -3
  194. package/dist/ikoncomponents/combobox-input/index.d.ts.map +0 -1
  195. package/dist/ikoncomponents/combobox-input/index.js +0 -18
  196. package/dist/ikoncomponents/combobox-input/type.d.ts +0 -14
  197. package/dist/ikoncomponents/combobox-input/type.d.ts.map +0 -1
  198. package/dist/ikoncomponents/combobox-input/type.js +0 -1
  199. package/dist/ikoncomponents/custom-combo-dropdown/index.d.ts +0 -22
  200. package/dist/ikoncomponents/custom-combo-dropdown/index.d.ts.map +0 -1
  201. package/dist/ikoncomponents/custom-combo-dropdown/index.js +0 -85
  202. package/dist/ikoncomponents/data-table/datatable-column-filter/index.d.ts +0 -3
  203. package/dist/ikoncomponents/data-table/datatable-column-filter/index.d.ts.map +0 -1
  204. package/dist/ikoncomponents/data-table/datatable-column-filter/index.js +0 -22
  205. package/dist/ikoncomponents/data-table/datatable-faceted-filter/index.d.ts +0 -3
  206. package/dist/ikoncomponents/data-table/datatable-faceted-filter/index.d.ts.map +0 -1
  207. package/dist/ikoncomponents/data-table/datatable-faceted-filter/index.js +0 -35
  208. package/dist/ikoncomponents/data-table/datatable-filter-menu/index.d.ts +0 -3
  209. package/dist/ikoncomponents/data-table/datatable-filter-menu/index.d.ts.map +0 -1
  210. package/dist/ikoncomponents/data-table/datatable-filter-menu/index.js +0 -38
  211. package/dist/ikoncomponents/data-table/datatable-pagination/index.d.ts +0 -3
  212. package/dist/ikoncomponents/data-table/datatable-pagination/index.d.ts.map +0 -1
  213. package/dist/ikoncomponents/data-table/datatable-pagination/index.js +0 -13
  214. package/dist/ikoncomponents/data-table/datatable-toolbar/index.d.ts +0 -3
  215. package/dist/ikoncomponents/data-table/datatable-toolbar/index.d.ts.map +0 -1
  216. package/dist/ikoncomponents/data-table/datatable-toolbar/index.js +0 -18
  217. package/dist/ikoncomponents/data-table/function.d.ts +0 -2
  218. package/dist/ikoncomponents/data-table/function.d.ts.map +0 -1
  219. package/dist/ikoncomponents/data-table/function.js +0 -6
  220. package/dist/ikoncomponents/data-table/index.d.ts +0 -3
  221. package/dist/ikoncomponents/data-table/index.d.ts.map +0 -1
  222. package/dist/ikoncomponents/data-table/index.js +0 -223
  223. package/dist/ikoncomponents/data-table/type.d.ts +0 -61
  224. package/dist/ikoncomponents/data-table/type.d.ts.map +0 -1
  225. package/dist/ikoncomponents/data-table/type.js +0 -1
  226. package/dist/ikoncomponents/e-chart/index.d.ts +0 -16
  227. package/dist/ikoncomponents/e-chart/index.d.ts.map +0 -1
  228. package/dist/ikoncomponents/e-chart/index.js +0 -115
  229. package/dist/ikoncomponents/file-input/index.d.ts +0 -2
  230. package/dist/ikoncomponents/file-input/index.d.ts.map +0 -1
  231. package/dist/ikoncomponents/file-input/index.js +0 -21
  232. package/dist/ikoncomponents/fileUpload/index.d.ts +0 -16
  233. package/dist/ikoncomponents/fileUpload/index.d.ts.map +0 -1
  234. package/dist/ikoncomponents/fileUpload/index.js +0 -69
  235. package/dist/ikoncomponents/form-fields/combobox-input/index.d.ts +0 -3
  236. package/dist/ikoncomponents/form-fields/combobox-input/index.d.ts.map +0 -1
  237. package/dist/ikoncomponents/form-fields/combobox-input/index.js +0 -21
  238. package/dist/ikoncomponents/form-fields/combobox-input-value/index.d.ts +0 -19
  239. package/dist/ikoncomponents/form-fields/combobox-input-value/index.d.ts.map +0 -1
  240. package/dist/ikoncomponents/form-fields/combobox-input-value/index.js +0 -26
  241. package/dist/ikoncomponents/form-fields/date-input/index.d.ts +0 -3
  242. package/dist/ikoncomponents/form-fields/date-input/index.d.ts.map +0 -1
  243. package/dist/ikoncomponents/form-fields/date-input/index.js +0 -15
  244. package/dist/ikoncomponents/form-fields/file-input/index.d.ts +0 -2
  245. package/dist/ikoncomponents/form-fields/file-input/index.d.ts.map +0 -1
  246. package/dist/ikoncomponents/form-fields/file-input/index.js +0 -4
  247. package/dist/ikoncomponents/form-fields/input/index.d.ts +0 -3
  248. package/dist/ikoncomponents/form-fields/input/index.d.ts.map +0 -1
  249. package/dist/ikoncomponents/form-fields/input/index.js +0 -18
  250. package/dist/ikoncomponents/form-fields/multi-combobox-input/index.d.ts +0 -7
  251. package/dist/ikoncomponents/form-fields/multi-combobox-input/index.d.ts.map +0 -1
  252. package/dist/ikoncomponents/form-fields/otp-input/index.d.ts +0 -3
  253. package/dist/ikoncomponents/form-fields/otp-input/index.d.ts.map +0 -1
  254. package/dist/ikoncomponents/form-fields/otp-input/index.js +0 -18
  255. package/dist/ikoncomponents/form-fields/password-input/index.d.ts +0 -3
  256. package/dist/ikoncomponents/form-fields/password-input/index.d.ts.map +0 -1
  257. package/dist/ikoncomponents/form-fields/password-input/index.js +0 -23
  258. package/dist/ikoncomponents/form-fields/phone-input/index.d.ts +0 -2
  259. package/dist/ikoncomponents/form-fields/phone-input/index.d.ts.map +0 -1
  260. package/dist/ikoncomponents/form-fields/phone-input/index.js +0 -4
  261. package/dist/ikoncomponents/form-fields/textarea/index.d.ts +0 -3
  262. package/dist/ikoncomponents/form-fields/textarea/index.d.ts.map +0 -1
  263. package/dist/ikoncomponents/form-fields/textarea/index.js +0 -18
  264. package/dist/ikoncomponents/form-fields/types/index.d.ts +0 -37
  265. package/dist/ikoncomponents/form-fields/types/index.d.ts.map +0 -1
  266. package/dist/ikoncomponents/form-fields/types/index.js +0 -1
  267. package/dist/ikoncomponents/glowing-effect/index.d.ts +0 -15
  268. package/dist/ikoncomponents/glowing-effect/index.d.ts.map +0 -1
  269. package/dist/ikoncomponents/glowing-effect/index.js +0 -84
  270. package/dist/ikoncomponents/icon/index.d.ts +0 -9
  271. package/dist/ikoncomponents/icon/index.d.ts.map +0 -1
  272. package/dist/ikoncomponents/icon/index.js +0 -23
  273. package/dist/ikoncomponents/image-cropper-upload/components/newCropper.d.ts +0 -16
  274. package/dist/ikoncomponents/image-cropper-upload/components/newCropper.d.ts.map +0 -1
  275. package/dist/ikoncomponents/image-cropper-upload/components/newImageUploadForm.d.ts +0 -8
  276. package/dist/ikoncomponents/image-cropper-upload/components/newImageUploadForm.d.ts.map +0 -1
  277. package/dist/ikoncomponents/image-cropper-upload/components/newImageUploadForm.js +0 -145
  278. package/dist/ikoncomponents/image-cropper-upload/cropper-form/index.d.ts +0 -7
  279. package/dist/ikoncomponents/image-cropper-upload/cropper-form/index.d.ts.map +0 -1
  280. package/dist/ikoncomponents/image-cropper-upload/cropper-form/index.js +0 -92
  281. package/dist/ikoncomponents/image-cropper-upload/cropper-form-with-modal/index.d.ts +0 -7
  282. package/dist/ikoncomponents/image-cropper-upload/cropper-form-with-modal/index.d.ts.map +0 -1
  283. package/dist/ikoncomponents/image-cropper-upload/cropper-form-with-modal/index.js +0 -14
  284. package/dist/ikoncomponents/image-cropper-upload/image-cropper/index.d.ts +0 -15
  285. package/dist/ikoncomponents/image-cropper-upload/image-cropper/index.d.ts.map +0 -1
  286. package/dist/ikoncomponents/image-cropper-upload/index.d.ts +0 -28
  287. package/dist/ikoncomponents/image-cropper-upload/index.d.ts.map +0 -1
  288. package/dist/ikoncomponents/image-cropper-upload/index.js +0 -49
  289. package/dist/ikoncomponents/image-cropper-upload/utils/index.d.ts +0 -17
  290. package/dist/ikoncomponents/image-cropper-upload/utils/index.d.ts.map +0 -1
  291. package/dist/ikoncomponents/image-cropper-upload/utils/index.js +0 -73
  292. package/dist/ikoncomponents/loading-spinner/index.d.ts +0 -10
  293. package/dist/ikoncomponents/loading-spinner/index.d.ts.map +0 -1
  294. package/dist/ikoncomponents/loading-spinner/index.js +0 -19
  295. package/dist/ikoncomponents/main-layout/RefreshContext.d.ts +0 -11
  296. package/dist/ikoncomponents/main-layout/RefreshContext.d.ts.map +0 -1
  297. package/dist/ikoncomponents/main-layout/RefreshContext.js +0 -17
  298. package/dist/ikoncomponents/main-layout/SidebarNavContext.d.ts +0 -34
  299. package/dist/ikoncomponents/main-layout/SidebarNavContext.d.ts.map +0 -1
  300. package/dist/ikoncomponents/main-layout/SidebarNavContext.js +0 -52
  301. package/dist/ikoncomponents/main-layout/app-sidebar.d.ts +0 -4
  302. package/dist/ikoncomponents/main-layout/app-sidebar.d.ts.map +0 -1
  303. package/dist/ikoncomponents/main-layout/app-sidebar.js +0 -24
  304. package/dist/ikoncomponents/main-layout/footer.d.ts +0 -2
  305. package/dist/ikoncomponents/main-layout/footer.d.ts.map +0 -1
  306. package/dist/ikoncomponents/main-layout/footer.js +0 -5
  307. package/dist/ikoncomponents/main-layout/header.d.ts +0 -4
  308. package/dist/ikoncomponents/main-layout/header.d.ts.map +0 -1
  309. package/dist/ikoncomponents/main-layout/header.js +0 -15
  310. package/dist/ikoncomponents/main-layout/index.d.ts +0 -7
  311. package/dist/ikoncomponents/main-layout/index.d.ts.map +0 -1
  312. package/dist/ikoncomponents/main-layout/index.js +0 -12
  313. package/dist/ikoncomponents/main-layout/main-sidebar.d.ts +0 -61
  314. package/dist/ikoncomponents/main-layout/main-sidebar.d.ts.map +0 -1
  315. package/dist/ikoncomponents/main-layout/main-sidebar.js +0 -119
  316. package/dist/ikoncomponents/main-layout/nav-main.d.ts +0 -12
  317. package/dist/ikoncomponents/main-layout/nav-main.d.ts.map +0 -1
  318. package/dist/ikoncomponents/main-layout/nav-main.js +0 -33
  319. package/dist/ikoncomponents/multi-combobox/index.d.ts +0 -14
  320. package/dist/ikoncomponents/multi-combobox/index.d.ts.map +0 -1
  321. package/dist/ikoncomponents/multi-combobox/index.js +0 -202
  322. package/dist/ikoncomponents/no-data/index.d.ts +0 -4
  323. package/dist/ikoncomponents/no-data/index.d.ts.map +0 -1
  324. package/dist/ikoncomponents/no-data/index.js +0 -5
  325. package/dist/ikoncomponents/page-wrapper/index.d.ts +0 -10
  326. package/dist/ikoncomponents/page-wrapper/index.d.ts.map +0 -1
  327. package/dist/ikoncomponents/page-wrapper/index.js +0 -7
  328. package/dist/ikoncomponents/password-strength-meter/index.d.ts +0 -4
  329. package/dist/ikoncomponents/password-strength-meter/index.d.ts.map +0 -1
  330. package/dist/ikoncomponents/password-strength-meter/index.js +0 -40
  331. package/dist/ikoncomponents/phone-input/index.d.ts +0 -2
  332. package/dist/ikoncomponents/phone-input/index.d.ts.map +0 -1
  333. package/dist/ikoncomponents/phone-input/index.js +0 -41
  334. package/dist/ikoncomponents/provider-wrapper/index.d.ts +0 -7
  335. package/dist/ikoncomponents/provider-wrapper/index.d.ts.map +0 -1
  336. package/dist/ikoncomponents/provider-wrapper/index.js +0 -10
  337. package/dist/ikoncomponents/search-input/index.d.ts +0 -2
  338. package/dist/ikoncomponents/search-input/index.d.ts.map +0 -1
  339. package/dist/ikoncomponents/search-input/index.js +0 -19
  340. package/dist/ikoncomponents/sheet/index.d.ts +0 -11
  341. package/dist/ikoncomponents/sheet/index.d.ts.map +0 -1
  342. package/dist/ikoncomponents/sheet/index.js +0 -6
  343. package/dist/ikoncomponents/simple-widget/index.d.ts +0 -15
  344. package/dist/ikoncomponents/simple-widget/index.d.ts.map +0 -1
  345. package/dist/ikoncomponents/simple-widget/index.js +0 -14
  346. package/dist/ikoncomponents/skeleton-loader/skeleton-table.d.ts +0 -6
  347. package/dist/ikoncomponents/skeleton-loader/skeleton-table.d.ts.map +0 -1
  348. package/dist/ikoncomponents/skeleton-loader/skeleton-table.js +0 -6
  349. package/dist/ikoncomponents/skeleton-loader/skeleton-widget.d.ts +0 -4
  350. package/dist/ikoncomponents/skeleton-loader/skeleton-widget.d.ts.map +0 -1
  351. package/dist/ikoncomponents/skeleton-loader/skeleton-widget.js +0 -5
  352. package/dist/ikoncomponents/tabs/index.d.ts +0 -3
  353. package/dist/ikoncomponents/tabs/index.d.ts.map +0 -1
  354. package/dist/ikoncomponents/tabs/index.js +0 -50
  355. package/dist/ikoncomponents/tabs/type.d.ts.map +0 -1
  356. package/dist/ikoncomponents/tabs/type.js +0 -2
  357. package/dist/ikoncomponents/theme-toggle-btn/index.d.ts +0 -2
  358. package/dist/ikoncomponents/theme-toggle-btn/index.d.ts.map +0 -1
  359. package/dist/ikoncomponents/title-progress/index.d.ts +0 -13
  360. package/dist/ikoncomponents/title-progress/index.d.ts.map +0 -1
  361. package/dist/ikoncomponents/title-progress/index.js +0 -10
  362. package/dist/ikoncomponents/tooltip/index.d.ts +0 -6
  363. package/dist/ikoncomponents/tooltip/index.d.ts.map +0 -1
  364. package/dist/ikoncomponents/tooltip/index.js +0 -5
  365. package/dist/ikoncomponents/twolevel-dropdown/convertToDropdownNodes.d.ts +0 -10
  366. package/dist/ikoncomponents/twolevel-dropdown/convertToDropdownNodes.d.ts.map +0 -1
  367. package/dist/ikoncomponents/twolevel-dropdown/convertToDropdownNodes.js +0 -24
  368. package/dist/ikoncomponents/twolevel-dropdown/index.d.ts +0 -32
  369. package/dist/ikoncomponents/twolevel-dropdown/index.d.ts.map +0 -1
  370. package/dist/ikoncomponents/twolevel-dropdown/index.js +0 -143
  371. package/dist/ikoncomponents/upload-tab/index.d.ts +0 -2
  372. package/dist/ikoncomponents/upload-tab/index.d.ts.map +0 -1
  373. package/dist/ikoncomponents/upload-tab/index.js +0 -92
  374. package/dist/ikoncomponents/widgets/index.d.ts +0 -3
  375. package/dist/ikoncomponents/widgets/index.d.ts.map +0 -1
  376. package/dist/ikoncomponents/widgets/index.js +0 -14
  377. package/dist/ikoncomponents/widgets/type.d.ts +0 -11
  378. package/dist/ikoncomponents/widgets/type.d.ts.map +0 -1
  379. package/dist/ikoncomponents/widgets/type.js +0 -2
  380. package/dist/ikoncomponents/work-in-progress/index.d.ts +0 -2
  381. package/dist/ikoncomponents/work-in-progress/index.d.ts.map +0 -1
  382. package/dist/ikoncomponents/work-in-progress/index.js +0 -4
  383. package/dist/index.d.ts.map +0 -1
  384. package/dist/shadcn/accordion.d.ts +0 -8
  385. package/dist/shadcn/accordion.d.ts.map +0 -1
  386. package/dist/shadcn/accordion.js +0 -33
  387. package/dist/shadcn/alert-dialog.d.ts +0 -21
  388. package/dist/shadcn/alert-dialog.d.ts.map +0 -1
  389. package/dist/shadcn/alert-dialog.js +0 -83
  390. package/dist/shadcn/alert.d.ts +0 -10
  391. package/dist/shadcn/alert.d.ts.map +0 -1
  392. package/dist/shadcn/alert.js +0 -38
  393. package/dist/shadcn/aspect-ratio.d.ts +0 -4
  394. package/dist/shadcn/aspect-ratio.d.ts.map +0 -1
  395. package/dist/shadcn/aspect-ratio.js +0 -19
  396. package/dist/shadcn/avatar.d.ts +0 -7
  397. package/dist/shadcn/avatar.d.ts.map +0 -1
  398. package/dist/shadcn/avatar.js +0 -28
  399. package/dist/shadcn/badge.d.ts +0 -10
  400. package/dist/shadcn/badge.d.ts.map +0 -1
  401. package/dist/shadcn/badge.js +0 -35
  402. package/dist/shadcn/breadcrumb.d.ts +0 -12
  403. package/dist/shadcn/breadcrumb.d.ts.map +0 -1
  404. package/dist/shadcn/breadcrumb.js +0 -45
  405. package/dist/shadcn/button.d.ts +0 -11
  406. package/dist/shadcn/button.d.ts.map +0 -1
  407. package/dist/shadcn/button.js +0 -47
  408. package/dist/shadcn/calendar.d.ts +0 -9
  409. package/dist/shadcn/calendar.d.ts.map +0 -1
  410. package/dist/shadcn/calendar.js +0 -61
  411. package/dist/shadcn/card.d.ts +0 -10
  412. package/dist/shadcn/card.d.ts.map +0 -1
  413. package/dist/shadcn/card.js +0 -42
  414. package/dist/shadcn/checkbox.d.ts +0 -5
  415. package/dist/shadcn/checkbox.d.ts.map +0 -1
  416. package/dist/shadcn/checkbox.js +0 -21
  417. package/dist/shadcn/collapsible.d.ts +0 -6
  418. package/dist/shadcn/collapsible.d.ts.map +0 -1
  419. package/dist/shadcn/collapsible.js +0 -27
  420. package/dist/shadcn/command.d.ts +0 -19
  421. package/dist/shadcn/command.d.ts.map +0 -1
  422. package/dist/shadcn/command.js +0 -54
  423. package/dist/shadcn/date-input.d.ts +0 -8
  424. package/dist/shadcn/date-input.d.ts.map +0 -1
  425. package/dist/shadcn/date-input.js +0 -179
  426. package/dist/shadcn/date-range-picker.d.ts +0 -25
  427. package/dist/shadcn/date-range-picker.d.ts.map +0 -1
  428. package/dist/shadcn/date-range-picker.js +0 -45
  429. package/dist/shadcn/dialog.d.ts +0 -16
  430. package/dist/shadcn/dialog.d.ts.map +0 -1
  431. package/dist/shadcn/dialog.js +0 -57
  432. package/dist/shadcn/drawer.d.ts +0 -14
  433. package/dist/shadcn/drawer.d.ts.map +0 -1
  434. package/dist/shadcn/drawer.js +0 -56
  435. package/dist/shadcn/dropdown-menu.d.ts +0 -26
  436. package/dist/shadcn/dropdown-menu.d.ts.map +0 -1
  437. package/dist/shadcn/dropdown-menu.js +0 -77
  438. package/dist/shadcn/form.d.ts +0 -25
  439. package/dist/shadcn/form.d.ts.map +0 -1
  440. package/dist/shadcn/form.js +0 -70
  441. package/dist/shadcn/hover-card.d.ts +0 -7
  442. package/dist/shadcn/hover-card.d.ts.map +0 -1
  443. package/dist/shadcn/hover-card.js +0 -28
  444. package/dist/shadcn/input-otp.d.ts +0 -35
  445. package/dist/shadcn/input-otp.d.ts.map +0 -1
  446. package/dist/shadcn/input-otp.js +0 -40
  447. package/dist/shadcn/input.d.ts +0 -4
  448. package/dist/shadcn/input.d.ts.map +0 -1
  449. package/dist/shadcn/input.js +0 -18
  450. package/dist/shadcn/label.d.ts +0 -5
  451. package/dist/shadcn/label.d.ts.map +0 -1
  452. package/dist/shadcn/label.js +0 -20
  453. package/dist/shadcn/navigation-menu.d.ts +0 -17
  454. package/dist/shadcn/navigation-menu.d.ts.map +0 -1
  455. package/dist/shadcn/navigation-menu.js +0 -74
  456. package/dist/shadcn/popover.d.ts +0 -8
  457. package/dist/shadcn/popover.d.ts.map +0 -1
  458. package/dist/shadcn/popover.js +0 -32
  459. package/dist/shadcn/progress.d.ts +0 -9
  460. package/dist/shadcn/progress.d.ts.map +0 -1
  461. package/dist/shadcn/progress.js +0 -23
  462. package/dist/shadcn/radio-group.d.ts +0 -6
  463. package/dist/shadcn/radio-group.d.ts.map +0 -1
  464. package/dist/shadcn/radio-group.js +0 -25
  465. package/dist/shadcn/scroll-area.d.ts +0 -6
  466. package/dist/shadcn/scroll-area.d.ts.map +0 -1
  467. package/dist/shadcn/scroll-area.js +0 -26
  468. package/dist/shadcn/select.d.ts +0 -16
  469. package/dist/shadcn/select.d.ts.map +0 -1
  470. package/dist/shadcn/select.js +0 -59
  471. package/dist/shadcn/separator.d.ts +0 -5
  472. package/dist/shadcn/separator.d.ts.map +0 -1
  473. package/dist/shadcn/separator.js +0 -20
  474. package/dist/shadcn/sheet.d.ts +0 -14
  475. package/dist/shadcn/sheet.d.ts.map +0 -1
  476. package/dist/shadcn/sheet.js +0 -61
  477. package/dist/shadcn/sidebar.d.ts +0 -70
  478. package/dist/shadcn/sidebar.d.ts.map +0 -1
  479. package/dist/shadcn/sidebar.js +0 -242
  480. package/dist/shadcn/skeleton.d.ts +0 -4
  481. package/dist/shadcn/skeleton.d.ts.map +0 -1
  482. package/dist/shadcn/skeleton.js +0 -18
  483. package/dist/shadcn/slider.d.ts +0 -5
  484. package/dist/shadcn/slider.d.ts.map +0 -1
  485. package/dist/shadcn/slider.js +0 -26
  486. package/dist/shadcn/sonner.d.ts +0 -4
  487. package/dist/shadcn/sonner.d.ts.map +0 -1
  488. package/dist/shadcn/sonner.js +0 -25
  489. package/dist/shadcn/switch.d.ts +0 -5
  490. package/dist/shadcn/switch.d.ts.map +0 -1
  491. package/dist/shadcn/switch.js +0 -20
  492. package/dist/shadcn/table.d.ts +0 -11
  493. package/dist/shadcn/table.d.ts.map +0 -1
  494. package/dist/shadcn/table.js +0 -47
  495. package/dist/shadcn/tabs.d.ts +0 -8
  496. package/dist/shadcn/tabs.d.ts.map +0 -1
  497. package/dist/shadcn/tabs.js +0 -32
  498. package/dist/shadcn/textarea.d.ts +0 -4
  499. package/dist/shadcn/textarea.d.ts.map +0 -1
  500. package/dist/shadcn/textarea.js +0 -18
  501. package/dist/shadcn/toggle-group.d.ts +0 -10
  502. package/dist/shadcn/toggle-group.d.ts.map +0 -1
  503. package/dist/shadcn/toggle-group.js +0 -35
  504. package/dist/shadcn/toggle.d.ts +0 -10
  505. package/dist/shadcn/toggle.d.ts.map +0 -1
  506. package/dist/shadcn/toggle.js +0 -38
  507. package/dist/shadcn/tooltip.d.ts +0 -8
  508. package/dist/shadcn/tooltip.d.ts.map +0 -1
  509. package/dist/shadcn/tooltip.js +0 -32
  510. package/dist/shadcn/workflow.d.ts +0 -21
  511. package/dist/shadcn/workflow.d.ts.map +0 -1
  512. package/dist/shadcn/workflow.js +0 -20
  513. package/dist/styles.css +0 -1302
  514. package/dist/utils/actions/account/index.d.ts +0 -6
  515. package/dist/utils/actions/account/index.d.ts.map +0 -1
  516. package/dist/utils/actions/account/index.js +0 -28
  517. package/dist/utils/actions/account/type.d.ts +0 -5
  518. package/dist/utils/actions/account/type.d.ts.map +0 -1
  519. package/dist/utils/actions/account/type.js +0 -1
  520. package/dist/utils/actions/auth/index.d.ts +0 -8
  521. package/dist/utils/actions/auth/index.d.ts.map +0 -1
  522. package/dist/utils/actions/common/revalidate.d.ts +0 -3
  523. package/dist/utils/actions/common/revalidate.d.ts.map +0 -1
  524. package/dist/utils/actions/common/revalidate.js +0 -14
  525. package/dist/utils/actions/common/type.d.ts +0 -5
  526. package/dist/utils/actions/common/type.d.ts.map +0 -1
  527. package/dist/utils/actions/common/type.js +0 -1
  528. package/dist/utils/actions/common/utils.d.ts +0 -6
  529. package/dist/utils/actions/common/utils.d.ts.map +0 -1
  530. package/dist/utils/actions/software/index.d.ts +0 -12
  531. package/dist/utils/actions/software/index.d.ts.map +0 -1
  532. package/dist/utils/actions/software/index.js +0 -75
  533. package/dist/utils/api/accountService/index.d.ts +0 -24
  534. package/dist/utils/api/accountService/index.d.ts.map +0 -1
  535. package/dist/utils/api/accountService/index.js +0 -64
  536. package/dist/utils/api/accountService/type.d.ts +0 -5
  537. package/dist/utils/api/accountService/type.d.ts.map +0 -1
  538. package/dist/utils/api/accountService/type.js +0 -1
  539. package/dist/utils/api/file-upload/index.d.ts +0 -6
  540. package/dist/utils/api/file-upload/index.d.ts.map +0 -1
  541. package/dist/utils/api/file-upload/index.js +0 -80
  542. package/dist/utils/api/file-upload/type.d.ts +0 -7
  543. package/dist/utils/api/file-upload/type.d.ts.map +0 -1
  544. package/dist/utils/api/file-upload/type.js +0 -1
  545. package/dist/utils/api/ikonBaseApi.d.ts +0 -13
  546. package/dist/utils/api/ikonBaseApi.d.ts.map +0 -1
  547. package/dist/utils/api/loginService/index.d.ts +0 -13
  548. package/dist/utils/api/loginService/index.d.ts.map +0 -1
  549. package/dist/utils/api/loginService/index.js +0 -72
  550. package/dist/utils/api/loginService/type.d.ts.map +0 -1
  551. package/dist/utils/api/loginService/type.js +0 -1
  552. package/dist/utils/api/softwareService/index.d.ts +0 -65
  553. package/dist/utils/api/softwareService/index.d.ts.map +0 -1
  554. package/dist/utils/api/softwareService/index.js +0 -212
  555. package/dist/utils/api/softwareService/type.d.ts +0 -55
  556. package/dist/utils/api/softwareService/type.d.ts.map +0 -1
  557. package/dist/utils/api/softwareService/type.js +0 -1
  558. package/dist/utils/border-radius-provider.d.ts +0 -12
  559. package/dist/utils/border-radius-provider.d.ts.map +0 -1
  560. package/dist/utils/cn.d.ts +0 -3
  561. package/dist/utils/cn.d.ts.map +0 -1
  562. package/dist/utils/cn.js +0 -5
  563. package/dist/utils/font-provider.d.ts +0 -12
  564. package/dist/utils/font-provider.d.ts.map +0 -1
  565. package/dist/utils/session/cookieSession.d.ts +0 -9
  566. package/dist/utils/session/cookieSession.d.ts.map +0 -1
  567. package/dist/utils/session/cookieSession.js +0 -33
  568. package/dist/utils/theme-provider/index.d.ts +0 -4
  569. package/dist/utils/theme-provider/index.d.ts.map +0 -1
  570. package/dist/utils/theme-provider/index.js +0 -18
  571. package/dist/utils/token-management/index.d.ts +0 -11
  572. package/dist/utils/token-management/index.d.ts.map +0 -1
  573. package/dist/utils/token-management/index.js +0 -69
  574. package/dist/utils/token-management/types.d.ts +0 -7
  575. package/dist/utils/token-management/types.d.ts.map +0 -1
  576. package/dist/utils/token-management/types.js +0 -1
@@ -0,0 +1,59 @@
1
+ 'use client';
2
+ import { format, getDay, parse, startOfWeek } from "date-fns";
3
+ import { Calendar, dateFnsLocalizer, Views } from "react-big-calendar";
4
+ import "react-big-calendar/lib/css/react-big-calendar.css";
5
+ import { useState } from "react";
6
+ import { BigCalendarProps } from "./type";
7
+ import BigCalenderToolbar from "./big-calender-toolbar";
8
+ import BigCalenderEvent from "./big-calender-event";
9
+ import { enUS } from 'date-fns/locale';
10
+
11
+ // Localization settings
12
+ const locales = {
13
+ "en-US": enUS,
14
+ };
15
+
16
+ const localizer = dateFnsLocalizer({
17
+ format,
18
+ parse,
19
+ startOfWeek,
20
+ getDay,
21
+ locales,
22
+ });
23
+
24
+
25
+ export function BigCalendar({ events, extraParamsEvent, extraTools }: BigCalendarProps) {
26
+ const [view, setView] = useState(
27
+ extraParamsEvent?.defaultView === "day" ? Views.DAY :
28
+ extraParamsEvent?.defaultView === "week" ? Views.WEEK :
29
+ extraParamsEvent?.defaultView === "month" ? Views.MONTH :
30
+ extraParamsEvent?.defaultView === "work week" ? Views.WORK_WEEK :
31
+ extraParamsEvent?.defaultView === "agenda" ? Views.AGENDA : Views.MONTH
32
+ );
33
+ const [date, setDate] = useState(new Date());
34
+
35
+
36
+ return (
37
+ <Calendar
38
+ localizer={localizer}
39
+ events={events || []}
40
+ startAccessor="start"
41
+ endAccessor="end"
42
+ views={[Views.DAY, Views.WEEK, Views.MONTH]}
43
+ view={view}
44
+ onView={(view) => setView(view)}
45
+ date={date}
46
+ onNavigate={(date) => setDate(date)}
47
+ components={{
48
+ event: (props) => <BigCalenderEvent event={props.event} extraParamsEvent={extraParamsEvent} />,
49
+ toolbar: (props) => <BigCalenderToolbar {...props} extraTools={extraTools} view={view} />,
50
+ }}
51
+ style={{
52
+ height: extraParamsEvent?.height || "100%",
53
+ margin: extraParamsEvent?.margin || "0px",
54
+ }}
55
+ />
56
+ );
57
+ }
58
+
59
+
@@ -0,0 +1,37 @@
1
+ import { ReactNode } from "react";
2
+ //import { Event } from "react-big-calendar";
3
+
4
+ export interface BigCalendarProps {
5
+ events: BigCalendarEventProps[];
6
+ extraParamsEvent?: ExtraParamsEvent;
7
+ extraTools?: ReactNode[];
8
+ onDateClick?: (date: Date) => void;
9
+ }
10
+
11
+ export interface ExtraParamsEvent {
12
+ defaultView?: string;
13
+ isEditableAll?: boolean;
14
+ isViewable?: boolean;
15
+ onEditEventClick?: (event: BigCalendarEventProps) => void;
16
+ onViewEventClick?: (event: BigCalendarEventProps) => void;
17
+ height?: string;
18
+ margin?: string;
19
+ }
20
+
21
+ export interface BigCalendarEventProps extends Event {
22
+ title?: string;
23
+ isEditable?: boolean;
24
+ isViewable?: boolean;
25
+ start: Date;
26
+ end: Date;
27
+ onEventClick?: (event: any) => void;
28
+ }
29
+
30
+ export interface BigCalenderToolbarProps {
31
+ onNavigate: (view: any) => void;
32
+ onView: (view: any) => void;
33
+ label: string;
34
+ extraTools?: ReactNode[];
35
+ view: "month" | "week" | "work_week" | "day" | "agenda";
36
+ //extraParamsEvent?: ExtraParamsEvent;
37
+ }
@@ -0,0 +1,127 @@
1
+ import React from "react";
2
+ import { TooltipComponent as Tooltip } from "../tooltip";
3
+ import { Button, buttonVariants } from "../../ikonShade/button";
4
+ import { type VariantProps } from "class-variance-authority";
5
+
6
+ export interface ButtonProps
7
+ extends React.ButtonHTMLAttributes<HTMLButtonElement>,
8
+ VariantProps<typeof buttonVariants> {
9
+ children: React.ReactNode;
10
+ asChild?: boolean;
11
+ }
12
+
13
+ export interface ButtonWithTooltipProps
14
+ extends React.ButtonHTMLAttributes<HTMLButtonElement>,
15
+ VariantProps<typeof buttonVariants> {
16
+ children: React.ReactNode;
17
+ asChild?: boolean;
18
+ tooltipContent: string | React.ReactNode;
19
+ }
20
+
21
+ export function TextButton({
22
+ children,
23
+ variant,
24
+ asChild = false,
25
+ size,
26
+ ...props
27
+ }: ButtonProps) {
28
+ return (
29
+ <Button variant={variant} size={size} {...props} asChild={asChild}>
30
+ {children}
31
+ </Button>
32
+ );
33
+ }
34
+
35
+ export function TextButtonWithTooltip({
36
+ children,
37
+ variant,
38
+ asChild = false,
39
+ size,
40
+ tooltipContent,
41
+ ...props
42
+ }: ButtonWithTooltipProps) {
43
+ return (
44
+ <Tooltip tooltipContent={tooltipContent}>
45
+ <TextButton variant={variant} size={size} {...props} asChild={asChild}>
46
+ {children}
47
+ </TextButton>
48
+ </Tooltip>
49
+ );
50
+ }
51
+
52
+ export function IconTextButton({
53
+ children,
54
+ variant,
55
+ asChild = false,
56
+ size,
57
+ ...props
58
+ }: ButtonProps) {
59
+ return (
60
+ <Button
61
+ variant={variant || "outline"}
62
+ size={size || "sm"}
63
+ {...props}
64
+ asChild={asChild}
65
+ >
66
+ {children}
67
+ </Button>
68
+ );
69
+ }
70
+
71
+ export function IconTextButtonWithTooltip({
72
+ children,
73
+ variant,
74
+ size,
75
+ asChild = false,
76
+ tooltipContent,
77
+ ...props
78
+ }: ButtonWithTooltipProps) {
79
+ return (
80
+ <Tooltip tooltipContent={tooltipContent}>
81
+ <IconTextButton
82
+ variant={variant}
83
+ size={size}
84
+ {...props}
85
+ asChild={asChild}
86
+ >
87
+ {children}
88
+ </IconTextButton>
89
+ </Tooltip>
90
+ );
91
+ }
92
+
93
+ export function IconButton({
94
+ children,
95
+ variant,
96
+ size,
97
+ asChild = false,
98
+ ...props
99
+ }: ButtonProps) {
100
+ return (
101
+ <Button
102
+ variant={variant || "outline"}
103
+ size={size || "icon"}
104
+ {...props}
105
+ asChild={asChild}
106
+ >
107
+ {children}
108
+ </Button>
109
+ );
110
+ }
111
+
112
+ export function IconButtonWithTooltip({
113
+ children,
114
+ tooltipContent,
115
+ asChild = false,
116
+ variant,
117
+ size,
118
+ ...props
119
+ }: ButtonWithTooltipProps) {
120
+ return (
121
+ <Tooltip tooltipContent={tooltipContent}>
122
+ <IconButton variant={variant} size={size} {...props} asChild={asChild}>
123
+ {children}
124
+ </IconButton>
125
+ </Tooltip>
126
+ );
127
+ }
@@ -0,0 +1,75 @@
1
+ import React, { useEffect, useState } from "react";
2
+ import { Popover, PopoverContent, PopoverTrigger } from "../../ikonShade/popover";
3
+ import { Button } from "../../ikonShade/button";
4
+ import { Check, ChevronsUpDown } from "lucide-react";
5
+ import {
6
+ Command,
7
+ CommandEmpty,
8
+ CommandGroup,
9
+ CommandInput,
10
+ CommandItem,
11
+ CommandList,
12
+ } from "../../ikonShade/command";
13
+ import { ComboBoxInputProps } from "./type";
14
+ import { cn } from "../../utils/cn";
15
+
16
+ export function ComboboxInput({
17
+ placeholder,
18
+ items,
19
+ disabled,
20
+ onSelect,
21
+ defaultValue
22
+ }: ComboBoxInputProps) {
23
+ const [value, setValue] = useState(defaultValue ? defaultValue : '');
24
+ return (
25
+ <>
26
+ <Popover>
27
+ <PopoverTrigger asChild className="w-full">
28
+ <Button
29
+ variant="outline"
30
+ role="combobox"
31
+ className={cn("justify-between", !value && "text-muted-foreground", "bg-secondary")}
32
+ disabled={disabled == true || (disabled && disabled(...arguments))}
33
+ >
34
+ {value
35
+ ? items.find((item) => item.value === value)?.label || value
36
+ : placeholder}
37
+ <ChevronsUpDown className="opacity-50" />
38
+ </Button>
39
+ </PopoverTrigger>
40
+ <PopoverContent className="p-0" align="start">
41
+ <Command>
42
+ <CommandInput placeholder="Search..." />
43
+ <CommandList>
44
+ <CommandEmpty>No items found.</CommandEmpty>
45
+ <CommandGroup>
46
+ {items.map((item) => (
47
+ <CommandItem
48
+ value={item.value}
49
+ key={item.value}
50
+ disabled={
51
+ item.disabled == true ||
52
+ (item.disabled && item.disabled(item))
53
+ }
54
+ onSelect={(value) => {
55
+ setValue(value);
56
+ onSelect && onSelect(value);
57
+ }}
58
+ >
59
+ {item?.label || item.value}
60
+ <Check
61
+ className={cn(
62
+ "ml-auto",
63
+ item.value === value ? "opacity-100" : "opacity-0"
64
+ )}
65
+ />
66
+ </CommandItem>
67
+ ))}
68
+ </CommandGroup>
69
+ </CommandList>
70
+ </Command>
71
+ </PopoverContent>
72
+ </Popover>
73
+ </>
74
+ );
75
+ }
@@ -0,0 +1,14 @@
1
+ export interface ComboBoxInputProps {
2
+ placeholder?: string;
3
+ items: ComboboxItemProps[];
4
+ onSelect?: (value: string | string[]) => void;
5
+ disabled?: ((...args: any) => boolean) | boolean;
6
+ defaultValue?:string,
7
+ }
8
+
9
+ export interface ComboboxItemProps {
10
+ value: string;
11
+ label?: string | undefined;
12
+ extra?: any;
13
+ disabled?: ((...args: any) => boolean) | boolean;
14
+ }
@@ -0,0 +1,242 @@
1
+ "use client";
2
+
3
+ import * as React from "react";
4
+ import { Check, ChevronsUpDown, Plus } from "lucide-react";
5
+ import { FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from "../../ikonShade/form";
6
+ import { cn } from "../../utils/cn";
7
+ import { Button } from "../../ikonShade/button";
8
+ import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList } from "../../ikonShade/command";
9
+ import { Popover, PopoverContent, PopoverTrigger } from "../../ikonShade/popover";
10
+ import { Input } from "../../ikonShade/input";
11
+
12
+ export type Option = {
13
+ value: string;
14
+ label: string;
15
+ disabled?: boolean;
16
+ };
17
+
18
+ type CustomComboboxInputProps = {
19
+ formControl: any;
20
+ name: string;
21
+ label?: string | React.ReactNode;
22
+ options: Option[];
23
+ placeholder?: string;
24
+ emptyMessage?: string;
25
+ onValueChange?: (value: string) => void;
26
+ className?: string;
27
+ addNewPlaceholder?: string;
28
+ formDescription?: string;
29
+ disabled?: boolean;
30
+ };
31
+
32
+ export function CustomComboboxInput({
33
+ formControl,
34
+ name,
35
+ label,
36
+ options,
37
+ placeholder = "Select an option",
38
+ emptyMessage = "No options found.",
39
+ onValueChange,
40
+ className,
41
+ addNewPlaceholder = "Add custom value...",
42
+ formDescription,
43
+ disabled,
44
+ }: CustomComboboxInputProps) {
45
+ const [open, setOpen] = React.useState(false);
46
+ const [searchValue, setSearchValue] = React.useState("");
47
+ const [items, setItems] = React.useState<Option[]>(options);
48
+ const [isAddingNew, setIsAddingNew] = React.useState(false);
49
+ const [newValue, setNewValue] = React.useState("");
50
+
51
+ React.useEffect(() => {
52
+ setItems(options);
53
+ }, [options]);
54
+
55
+ return (
56
+ <FormField
57
+ control={formControl}
58
+ name={name}
59
+ render={({ field }) => {
60
+ const selectedItem = items.find((item) => item.value === field.value);
61
+
62
+ const handleAddNewItem = () => {
63
+ const trimmedValue = newValue.trim();
64
+ if (!trimmedValue) return;
65
+
66
+ if (items.some((item) => item.value === trimmedValue)) {
67
+ const existingItem = items.find(i => i.value === trimmedValue);
68
+ if (existingItem) {
69
+ field.onChange(existingItem.value);
70
+ onValueChange?.(existingItem.value);
71
+ setNewValue("");
72
+ setIsAddingNew(false);
73
+ setOpen(false);
74
+ setSearchValue("");
75
+ }
76
+ return;
77
+ }
78
+
79
+ const newOption: Option = {
80
+ value: trimmedValue,
81
+ label: trimmedValue,
82
+ disabled: true,
83
+ };
84
+
85
+ setItems((prev) => [...prev, newOption]);
86
+ field.onChange(trimmedValue);
87
+ onValueChange?.(trimmedValue);
88
+
89
+ setNewValue("");
90
+ setIsAddingNew(false);
91
+ setOpen(false);
92
+ setSearchValue("");
93
+ };
94
+
95
+ return (
96
+ <FormItem className={cn(className)}>
97
+ {label && (
98
+ <>
99
+ <FormLabel>{label}</FormLabel>
100
+ <br />
101
+ </>
102
+ )}
103
+ <Popover
104
+ open={open}
105
+ onOpenChange={(isOpen) => {
106
+ setOpen(isOpen);
107
+ if (!isOpen) {
108
+ setSearchValue("");
109
+ setIsAddingNew(false);
110
+ setNewValue("");
111
+ }
112
+ }}
113
+ >
114
+ <PopoverTrigger asChild>
115
+ <FormControl>
116
+ <Button
117
+ variant="outline"
118
+ role="combobox"
119
+ aria-expanded={open}
120
+ className={cn(
121
+ "w-full justify-between",
122
+ !field.value && "text-foreground/50",
123
+ className
124
+ )}
125
+ disabled={disabled || field.disabled}
126
+ >
127
+ <span className="line-clamp-1 text-left">
128
+ {field.value
129
+ ? selectedItem
130
+ ? selectedItem.label
131
+ : field.value
132
+ : placeholder}
133
+ </span>
134
+ <ChevronsUpDown className="ml-2 h-4 w-4 shrink-0 opacity-50" />
135
+ </Button>
136
+ </FormControl>
137
+ </PopoverTrigger>
138
+ <PopoverContent className="p-0 w-[--radix-popover-trigger-width]" align="start">
139
+ <Command shouldFilter={true}>
140
+ <CommandInput
141
+ placeholder="Search..."
142
+ value={searchValue}
143
+ onValueChange={setSearchValue}
144
+ />
145
+ <CommandList>
146
+ <CommandEmpty>
147
+ {searchValue && items.length > 0 ? "No results found." : emptyMessage}
148
+ </CommandEmpty>
149
+ <CommandGroup>
150
+ {items
151
+ .filter(item => item.label.toLowerCase().includes(searchValue.toLowerCase()) || item.value.toLowerCase().includes(searchValue.toLowerCase()))
152
+ .map((item) => (
153
+ <CommandItem
154
+ key={item.value}
155
+ value={item.value}
156
+ onSelect={(currentValue) => {
157
+ field.onChange(currentValue);
158
+ onValueChange?.(currentValue);
159
+ setOpen(false);
160
+ setSearchValue("");
161
+ }}
162
+ className="cursor-pointer"
163
+ disabled={item?.disabled}
164
+ >
165
+ <Check
166
+ className={cn(
167
+ "mr-2 h-4 w-4",
168
+ field.value === item.value
169
+ ? "opacity-100"
170
+ : "opacity-0"
171
+ )}
172
+ />
173
+ {item.label}
174
+ </CommandItem>
175
+ ))}
176
+ </CommandGroup>
177
+ </CommandList>
178
+ <div className="border-t p-2">
179
+ {isAddingNew ? (
180
+ <div className="flex items-center gap-2">
181
+ <Input
182
+ placeholder={addNewPlaceholder}
183
+ value={newValue}
184
+ onChange={(e) => setNewValue(e.target.value)}
185
+ onKeyDown={(e) => {
186
+ if (e.key === "Enter") {
187
+ e.preventDefault();
188
+ handleAddNewItem();
189
+ }
190
+ if (e.key === "Escape") {
191
+ setIsAddingNew(false);
192
+ setNewValue("");
193
+ }
194
+ }}
195
+ autoFocus
196
+ className="h-8"
197
+ />
198
+ <Button
199
+ size="sm"
200
+ variant="ghost"
201
+ onClick={() => {
202
+ setIsAddingNew(false);
203
+ setNewValue("");
204
+ }}
205
+ className="h-8"
206
+ >
207
+ Cancel
208
+ </Button>
209
+ <Button
210
+ size="sm"
211
+ variant="default"
212
+ onClick={handleAddNewItem}
213
+ className="h-8"
214
+ disabled={!newValue.trim() || items.some(item => item.value === newValue.trim())}
215
+ >
216
+ Add
217
+ </Button>
218
+ </div>
219
+ ) : (
220
+ <Button
221
+ variant="outline"
222
+ className="w-full justify-start"
223
+ onClick={() => setIsAddingNew(true)}
224
+ >
225
+ <Plus className="mr-2 h-4 w-4" />
226
+ Add new option
227
+ </Button>
228
+ )}
229
+ </div>
230
+ </Command>
231
+ </PopoverContent>
232
+ </Popover>
233
+ {formDescription && (
234
+ <FormDescription>{formDescription}</FormDescription>
235
+ )}
236
+ <FormMessage />
237
+ </FormItem>
238
+ );
239
+ }}
240
+ />
241
+ );
242
+ }
@@ -0,0 +1,80 @@
1
+ import * as React from "react";
2
+ import {
3
+ Command,
4
+ CommandEmpty,
5
+ CommandGroup,
6
+ CommandInput,
7
+ CommandItem,
8
+ CommandList,
9
+ CommandSeparator,
10
+ } from "../../../ikonShade/command";
11
+ import { Popover, PopoverContent, PopoverTrigger } from "../../../ikonShade/popover";
12
+ import { Check, Columns, PlusCircle, Settings2 } from "lucide-react";
13
+ import { DataTableViewOptionsProps } from "../type";
14
+ import { getDataTableColumnTitle } from "../function";
15
+ import { TooltipComponent as Tooltip } from "../../tooltip";
16
+ import { IconButton, IconTextButton } from "../../buttons";
17
+ import { cn } from "../../../utils/cn";
18
+
19
+ export function DataTableColumnFilter<TData>({
20
+ table,
21
+ }: DataTableViewOptionsProps<TData>) {
22
+ return (
23
+ <Popover>
24
+ <Tooltip tooltipContent="Column View">
25
+ <PopoverTrigger asChild>
26
+ <IconTextButton>
27
+ <Settings2 />
28
+ View
29
+ </IconTextButton>
30
+ </PopoverTrigger>
31
+ </Tooltip>
32
+ <PopoverContent className="w-[220px] p-0" align="end">
33
+ <Command>
34
+ <CommandInput placeholder={"Search..."} />
35
+ <CommandList>
36
+ <CommandEmpty>No results found.</CommandEmpty>
37
+ <CommandGroup>
38
+ {table
39
+ .getAllColumns()
40
+ .filter(
41
+ (column) =>
42
+ typeof column.accessorFn !== "undefined" &&
43
+ column.getCanHide()
44
+ )
45
+ .map((column) => {
46
+ const isVisbile = column.getIsVisible();
47
+ return (
48
+ <CommandItem
49
+ key={column.id}
50
+ onSelect={() => {
51
+ column.toggleVisibility(!isVisbile);
52
+ }}
53
+ disabled={column.getIsGrouped()}
54
+ >
55
+ <div
56
+ className={cn(
57
+ "mr-2 flex h-4 w-4 items-center justify-center rounded-sm border border-black dark:border-white",
58
+ isVisbile
59
+ ? "bg-black dark:bg-white text-white dark:text-black"
60
+ : "opacity-50 [&_svg]:invisible"
61
+ )}
62
+ >
63
+ <Check />
64
+ </div>
65
+ <span
66
+ className="overflow-hidden text-ellipsis"
67
+ title={getDataTableColumnTitle(column)}
68
+ >
69
+ {getDataTableColumnTitle(column)}
70
+ </span>
71
+ </CommandItem>
72
+ );
73
+ })}
74
+ </CommandGroup>
75
+ </CommandList>
76
+ </Command>
77
+ </PopoverContent>
78
+ </Popover>
79
+ );
80
+ }