robobyte-front-builder 1.0.19 → 1.0.21

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 (513) hide show
  1. package/README.md +211 -0
  2. package/next.config.js +19 -48
  3. package/package.json +39 -85
  4. package/src/context/BuilderContext.jsx +134 -6
  5. package/src/context/SystemContext.js +2 -2
  6. package/src/hooks/useGlobalStore.js +36 -0
  7. package/src/hooks/useTimerEngine.js +54 -0
  8. package/src/lib/index.js +11 -3
  9. package/src/lib/layouts/BlankLayout.jsx +13 -0
  10. package/src/lib/providers/RoboByteFrontBuilderProvider.jsx +61 -7
  11. package/src/lib/themes/builderTheme.js +41 -0
  12. package/src/pages/_app.js +32 -134
  13. package/src/pages/api/ai.js +87 -0
  14. package/src/pages/builders/report/index.js +1 -0
  15. package/src/pages/builders/report/list/index.js +1 -0
  16. package/src/pages/builders/report/viewer/index.js +1 -0
  17. package/src/pages/index.js +88 -37
  18. package/src/pages/printBuilder/index.jsx +263 -0
  19. package/src/pages/printBuilder/layouts/index.jsx +298 -0
  20. package/src/pages/reportModule/reportBuilder/index.js +8 -6
  21. package/src/pages/reportModule/reportBuilder/reportViewer/index.js +33 -22
  22. package/src/pages/reportModule/reportBuilder/reports/index.js +3 -5
  23. package/src/pages/reportModule/reportBuilder/reportsPermissions/index.js +2 -3
  24. package/src/pages/viewBuilder/index.jsx +117 -32
  25. package/src/pages/viewBuilder/views/index.js +3 -3
  26. package/src/pages/viewer/[id]/index.js +2 -1
  27. package/src/services/DeleteService.js +31 -60
  28. package/src/services/Endpoints/PrintLayoutEndpoints.js +42 -0
  29. package/src/services/Endpoints.js +2 -0
  30. package/src/services/GetService.js +33 -54
  31. package/src/services/PatchService.js +38 -65
  32. package/src/services/PostService.js +37 -63
  33. package/src/services/UpdateService.js +39 -65
  34. package/src/services/builderHelper/actionExecutor.js +141 -25
  35. package/src/services/builderHelper/builderHelper.js +92 -0
  36. package/src/services/builderHelper/colorSchema.js +95 -0
  37. package/src/services/builderHelper/iconResolver.js +50 -0
  38. package/src/services/builderHelper/jsExecutor.js +212 -46
  39. package/src/services/builderHelper/nodeFactory.js +32 -15
  40. package/src/services/builderHelper/numberFormat.js +123 -0
  41. package/src/services/builderHelper/resolveProps.js +73 -4
  42. package/src/services/builderHelper/thresholdEngine.js +77 -0
  43. package/src/services/builderHelper/tree.js +31 -0
  44. package/src/services/components/agGridAutoComplete.js +5 -9
  45. package/src/services/config.js +9 -1
  46. package/src/services/globalStore.js +80 -0
  47. package/src/services/helper/multiSelectEditor.js +5 -9
  48. package/src/services/helper/multiSelectEditorByBuilder.js +5 -9
  49. package/src/services/reportData/fetchReportData.js +69 -28
  50. package/src/services/routerRef.js +35 -0
  51. package/src/views/ConfirmDialog.js +2 -2
  52. package/src/views/builder/JSEditor.js +105 -107
  53. package/src/views/builder/inspector/Inspector.jsx +6 -9
  54. package/src/views/builder/inspector/Tabs/ComponentActionsTab.jsx +7 -13
  55. package/src/views/builder/inspector/Tabs/MainTab.jsx +143 -25
  56. package/src/views/builder/inspector/Tabs/RulesTab.jsx +9 -24
  57. package/src/views/builder/inspector/Tabs/StyleTab.jsx +9 -24
  58. package/src/views/builder/inspector/definitions/autocomplete/main.js +4 -6
  59. package/src/views/builder/inspector/definitions/banner/actions.js +7 -0
  60. package/src/views/builder/inspector/definitions/banner/main.js +22 -0
  61. package/src/views/builder/inspector/definitions/banner/rules.js +1 -0
  62. package/src/views/builder/inspector/definitions/banner/style.js +1 -0
  63. package/src/views/builder/inspector/definitions/breadcrumb/main.js +43 -6
  64. package/src/views/builder/inspector/definitions/button/main.js +11 -12
  65. package/src/views/builder/inspector/definitions/button/style.js +18 -30
  66. package/src/views/builder/inspector/definitions/checkbox/actions.js +3 -1
  67. package/src/views/builder/inspector/definitions/checkbox/main.js +4 -6
  68. package/src/views/builder/inspector/definitions/common/main.js +13 -2
  69. package/src/views/builder/inspector/definitions/dataGrid/main.js +23 -0
  70. package/src/views/builder/inspector/definitions/dataTableViewer/main.js +46 -0
  71. package/src/views/builder/inspector/definitions/datepicker/actions.js +3 -1
  72. package/src/views/builder/inspector/definitions/datepicker/main.js +6 -14
  73. package/src/views/builder/inspector/definitions/dialog/main.js +36 -0
  74. package/src/views/builder/inspector/definitions/dropdown/main.js +5 -8
  75. package/src/views/builder/inspector/definitions/excelUpload/actions.js +23 -0
  76. package/src/views/builder/inspector/definitions/excelUpload/main.js +17 -0
  77. package/src/views/builder/inspector/definitions/excelUpload/rules.js +1 -0
  78. package/src/views/builder/inspector/definitions/excelUpload/style.js +45 -0
  79. package/src/views/builder/inspector/definitions/header/main.js +10 -1
  80. package/src/views/builder/inspector/definitions/index.js +106 -19
  81. package/src/views/builder/inspector/definitions/input/actions.js +4 -1
  82. package/src/views/builder/inspector/definitions/input/main.js +20 -11
  83. package/src/views/builder/inspector/definitions/kpi/avatarGroup.js +22 -0
  84. package/src/views/builder/inspector/definitions/kpi/badge.js +17 -0
  85. package/src/views/builder/inspector/definitions/kpi/bulletChart.js +47 -0
  86. package/src/views/builder/inspector/definitions/kpi/chart.js +55 -0
  87. package/src/views/builder/inspector/definitions/kpi/colorScale.js +60 -0
  88. package/src/views/builder/inspector/definitions/kpi/comparisonBars.js +41 -0
  89. package/src/views/builder/inspector/definitions/kpi/countdown.js +46 -0
  90. package/src/views/builder/inspector/definitions/kpi/donut.js +51 -0
  91. package/src/views/builder/inspector/definitions/kpi/funnel.js +25 -0
  92. package/src/views/builder/inspector/definitions/kpi/gauge.js +39 -0
  93. package/src/views/builder/inspector/definitions/kpi/heatmapGrid.js +96 -0
  94. package/src/views/builder/inspector/definitions/kpi/iconBox.js +20 -0
  95. package/src/views/builder/inspector/definitions/kpi/metric.js +45 -0
  96. package/src/views/builder/inspector/definitions/kpi/rating.js +27 -0
  97. package/src/views/builder/inspector/definitions/kpi/statusDot.js +18 -0
  98. package/src/views/builder/inspector/definitions/kpi/stepStage.js +65 -0
  99. package/src/views/builder/inspector/definitions/kpi/tagList.js +32 -0
  100. package/src/views/builder/inspector/definitions/kpi/timeline.js +80 -0
  101. package/src/views/builder/inspector/definitions/kpi/trend.js +20 -0
  102. package/src/views/builder/inspector/definitions/label/main.js +10 -1
  103. package/src/views/builder/inspector/definitions/layout/main.js +27 -3
  104. package/src/views/builder/inspector/definitions/number/main.js +6 -14
  105. package/src/views/builder/inspector/definitions/pageNumber/main.js +21 -0
  106. package/src/views/builder/inspector/definitions/popover/main.js +71 -0
  107. package/src/views/builder/inspector/definitions/radio/main.js +5 -8
  108. package/src/views/builder/inspector/definitions/repeater/main.js +31 -0
  109. package/src/views/builder/inspector/definitions/reportViewer/main.js +15 -1
  110. package/src/views/builder/inspector/definitions/richtext/main.js +5 -8
  111. package/src/views/builder/inspector/definitions/signature/main.js +4 -1
  112. package/src/views/builder/inspector/definitions/tag/main.js +5 -8
  113. package/src/views/builder/inspector/definitions/textarea/actions.js +4 -1
  114. package/src/views/builder/inspector/definitions/textarea/main.js +5 -7
  115. package/src/views/builder/inspector/definitions/time/main.js +5 -8
  116. package/src/views/builder/inspector/definitions/toggle/main.js +5 -19
  117. package/src/views/builder/inspector/definitions/treeView/main.js +61 -0
  118. package/src/views/builder/inspector/definitions/viewRenderer/main.js +53 -0
  119. package/src/views/builder/inspector/definitions/wizard/main.js +68 -0
  120. package/src/views/builder/inspector/definitions/wizard-step/main.js +25 -0
  121. package/src/views/builder/inspector/fields/ActionsConfigEditor.jsx +426 -0
  122. package/src/views/builder/inspector/fields/ColorSchemaField.jsx +140 -0
  123. package/src/views/builder/inspector/fields/ColumnFunctionEditor.jsx +238 -0
  124. package/src/views/builder/inspector/fields/ColumnMappingEditor.jsx +105 -0
  125. package/src/views/builder/inspector/fields/ColumnsConfigEditor.jsx +506 -0
  126. package/src/views/builder/inspector/fields/DonutRingsEditorField.jsx +337 -0
  127. package/src/views/builder/inspector/fields/ExtraColsEditor.jsx +618 -0
  128. package/src/views/builder/inspector/fields/FunctionHelpPopover.jsx +295 -0
  129. package/src/views/builder/inspector/fields/IconEditor.jsx +64 -0
  130. package/src/views/builder/inspector/fields/KpiActionField.jsx +223 -0
  131. package/src/views/builder/inspector/fields/MarkersEditorField.jsx +173 -0
  132. package/src/views/builder/inspector/fields/SelectEditor.jsx +9 -5
  133. package/src/views/builder/inspector/fields/SeriesEditorField.jsx +363 -0
  134. package/src/views/builder/inspector/fields/TableColumnsEditor.jsx +104 -0
  135. package/src/views/builder/inspector/fields/ThresholdsEditor.jsx +247 -0
  136. package/src/views/builder/inspector/fields/ValueFunctionsRefPanel.jsx +217 -0
  137. package/src/views/builder/inspector/fields/columnEditorShared.jsx +217 -0
  138. package/src/views/builder/sidebar/Sidebar.jsx +4 -2
  139. package/src/views/builder/sidebar/SidebarTabs.jsx +28 -17
  140. package/src/views/builder/sidebar/tabs/ActionsTab.jsx +7 -3
  141. package/src/views/builder/sidebar/tabs/AiTab/AiPreviewDialog.jsx +193 -0
  142. package/src/views/builder/sidebar/tabs/AiTab/aiProvider.js +49 -0
  143. package/src/views/builder/sidebar/tabs/AiTab/index.jsx +409 -0
  144. package/src/views/builder/sidebar/tabs/AiTab/schemaTransformer.js +102 -0
  145. package/src/views/builder/sidebar/tabs/AiTab/schemaValidator.js +64 -0
  146. package/src/views/builder/sidebar/tabs/AiTab/systemPrompt.js +1151 -0
  147. package/src/views/builder/sidebar/tabs/Components/ComponentsTab.jsx +31 -31
  148. package/src/views/builder/sidebar/tabs/Components/componentCatalog.js +43 -21
  149. package/src/views/builder/sidebar/tabs/Components/printComponentCatalog.js +81 -0
  150. package/src/views/builder/sidebar/tabs/TimersTab.jsx +338 -0
  151. package/src/views/builder/sidebar/tabs/TreeTab.jsx +13 -4
  152. package/src/views/builder/sidebar/tabs/ViewTab.jsx +1 -1
  153. package/src/views/builder/viewer/AdornedLabel.jsx +82 -0
  154. package/src/views/builder/viewer/ComponentRenderer.jsx +98 -24
  155. package/src/views/builder/viewer/DialogsZone.jsx +259 -0
  156. package/src/views/builder/viewer/FieldLabel.jsx +106 -0
  157. package/src/views/builder/viewer/PrintDialog.jsx +481 -0
  158. package/src/views/builder/viewer/ProductionViewer.jsx +80 -5
  159. package/src/views/builder/viewer/Viewer.jsx +106 -8
  160. package/src/views/builder/viewer/ViewerComponentWrapper.jsx +61 -4
  161. package/src/views/builder/viewer/ViewerToolbar.jsx +273 -59
  162. package/src/views/builder/viewer/renderers/AutoCompleteRenderer.jsx +26 -22
  163. package/src/views/builder/viewer/renderers/AvatarGroupRenderer.jsx +112 -0
  164. package/src/views/builder/viewer/renderers/BadgeRenderer.jsx +79 -0
  165. package/src/views/builder/viewer/renderers/BannerRenderer.jsx +62 -0
  166. package/src/views/builder/viewer/renderers/BreadcrumbRenderer.jsx +203 -15
  167. package/src/views/builder/viewer/renderers/BulletChartRenderer.jsx +147 -0
  168. package/src/views/builder/viewer/renderers/ButtonRenderer.jsx +98 -39
  169. package/src/views/builder/viewer/renderers/CardRenderer.jsx +1 -1
  170. package/src/views/builder/viewer/renderers/ChartRenderer.jsx +388 -0
  171. package/src/views/builder/viewer/renderers/CheckboxRenderer.jsx +17 -9
  172. package/src/views/builder/viewer/renderers/ColorScaleRenderer.jsx +300 -0
  173. package/src/views/builder/viewer/renderers/ComparisonBarsRenderer.jsx +133 -0
  174. package/src/views/builder/viewer/renderers/ContainerRenderer.jsx +3 -1
  175. package/src/views/builder/viewer/renderers/CountdownRenderer.jsx +249 -0
  176. package/src/views/builder/viewer/renderers/DataGridRenderer.jsx +380 -0
  177. package/src/views/builder/viewer/renderers/DataTableViewerRenderer.jsx +240 -0
  178. package/src/views/builder/viewer/renderers/DatePickerRenderer.jsx +25 -24
  179. package/src/views/builder/viewer/renderers/DialogRenderer.jsx +327 -0
  180. package/src/views/builder/viewer/renderers/DividerRenderer.jsx +1 -1
  181. package/src/views/builder/viewer/renderers/DonutRenderer.jsx +294 -0
  182. package/src/views/builder/viewer/renderers/DropdownRenderer.jsx +36 -44
  183. package/src/views/builder/viewer/renderers/ExcelUploadRenderer.jsx +639 -0
  184. package/src/views/builder/viewer/renderers/FunnelRenderer.jsx +93 -0
  185. package/src/views/builder/viewer/renderers/GaugeRenderer.jsx +159 -0
  186. package/src/views/builder/viewer/renderers/HeaderRenderer.jsx +31 -9
  187. package/src/views/builder/viewer/renderers/HeatmapGridRenderer.jsx +432 -0
  188. package/src/views/builder/viewer/renderers/IconBoxRenderer.jsx +59 -0
  189. package/src/views/builder/viewer/renderers/ImageRenderer.jsx +1 -1
  190. package/src/views/builder/viewer/renderers/InputRenderer.jsx +75 -18
  191. package/src/views/builder/viewer/renderers/LabelRenderer.jsx +35 -9
  192. package/src/views/builder/viewer/renderers/LayoutCellRenderer.jsx +102 -40
  193. package/src/views/builder/viewer/renderers/LayoutContextMenu.jsx +8 -8
  194. package/src/views/builder/viewer/renderers/LayoutRenderer.jsx +48 -6
  195. package/src/views/builder/viewer/renderers/LinkRenderer.jsx +1 -1
  196. package/src/views/builder/viewer/renderers/MenuRenderer.jsx +2 -2
  197. package/src/views/builder/viewer/renderers/MetricRenderer.jsx +80 -0
  198. package/src/views/builder/viewer/renderers/NumberFormatRenderer.jsx +21 -30
  199. package/src/views/builder/viewer/renderers/PageNumberRenderer.jsx +76 -0
  200. package/src/views/builder/viewer/renderers/PopoverRenderer.jsx +350 -0
  201. package/src/views/builder/viewer/renderers/ProgressCircleRenderer.jsx +1 -1
  202. package/src/views/builder/viewer/renderers/ProgressLineRenderer.jsx +1 -1
  203. package/src/views/builder/viewer/renderers/RadioGroupRenderer.jsx +28 -39
  204. package/src/views/builder/viewer/renderers/RatingRenderer.jsx +80 -0
  205. package/src/views/builder/viewer/renderers/RepeaterRenderer.jsx +297 -38
  206. package/src/views/builder/viewer/renderers/ReportViewerRenderer.jsx +219 -5
  207. package/src/views/builder/viewer/renderers/RichTextRenderer.jsx +60 -66
  208. package/src/views/builder/viewer/renderers/RowActionsCell.jsx +308 -0
  209. package/src/views/builder/viewer/renderers/SignatureRenderer.jsx +33 -62
  210. package/src/views/builder/viewer/renderers/StatusDotRenderer.jsx +75 -0
  211. package/src/views/builder/viewer/renderers/StepStageRenderer.jsx +348 -0
  212. package/src/views/builder/viewer/renderers/TagListRenderer.jsx +115 -0
  213. package/src/views/builder/viewer/renderers/TagPickerRenderer.jsx +31 -45
  214. package/src/views/builder/viewer/renderers/TextAreaRenderer.jsx +25 -18
  215. package/src/views/builder/viewer/renderers/TextRenderer.jsx +7 -1
  216. package/src/views/builder/viewer/renderers/TimePickerRenderer.jsx +25 -24
  217. package/src/views/builder/viewer/renderers/TimelineRenderer.jsx +525 -0
  218. package/src/views/builder/viewer/renderers/ToggleRenderer.jsx +21 -27
  219. package/src/views/builder/viewer/renderers/TreeViewRenderer.jsx +832 -0
  220. package/src/views/builder/viewer/renderers/TrendRenderer.jsx +66 -0
  221. package/src/views/builder/viewer/renderers/ViewRendererRenderer.jsx +315 -0
  222. package/src/views/builder/viewer/renderers/WizardRenderer.jsx +380 -64
  223. package/src/views/builder/viewer/renderers/WizardStepRenderer.jsx +21 -12
  224. package/src/views/builder/viewer/renderers/dataGridComponents.jsx +824 -0
  225. package/src/views/customFilter/CustomFilterDialog.js +1023 -660
  226. package/src/views/customFilter/FixedFilterDialog.js +649 -0
  227. package/src/views/customFilter/SearchFilterDialog.js +248 -0
  228. package/src/views/genericTable/BuilderExpressionParams.js +3 -3
  229. package/src/views/genericTable/ColumnConfiguratorDialog.js +33 -24
  230. package/src/views/genericTable/FixedFilterDialog.js +3 -2
  231. package/src/views/genericTable/FormattingSettingsDialog.js +8 -3
  232. package/src/views/genericTable/SGrid.js +198 -97
  233. package/src/views/genericTable/SearchFilterDialog.js +3 -2
  234. package/src/views/genericTable/cellEditors/autocompleteEditor.js +5 -9
  235. package/src/views/genericTable/convertStringFunctions.js +274 -138
  236. package/src/views/genericTable/statusBar/rowCountStatusBar.js +3 -1
  237. package/src/views/genericTable/updateRefHelpers.js +9 -6
  238. package/src/views/printBuilder/PrintBuilderViewer.jsx +607 -0
  239. package/src/views/printBuilder/PrintPreviewCanvas.jsx +157 -0
  240. package/src/views/rolePermissions/UpdateReportPermissionDialog.js +3 -2
  241. package/src/@core/components/auth/AclGuard.js +0 -55
  242. package/src/@core/components/auth/AuthGuard.js +0 -40
  243. package/src/@core/components/auth/GuestGuard.js +0 -30
  244. package/src/@core/components/custom-inputs/Horizontal.jsx +0 -143
  245. package/src/@core/components/custom-inputs/Image.jsx +0 -78
  246. package/src/@core/components/custom-inputs/Vertical.jsx +0 -113
  247. package/src/@core/components/customizer/index.jsx +0 -470
  248. package/src/@core/components/customizer/styles.module.css +0 -169
  249. package/src/@core/components/mui/Avatar.jsx +0 -41
  250. package/src/@core/components/mui/Badge.jsx +0 -20
  251. package/src/@core/components/mui/IconButton.jsx +0 -74
  252. package/src/@core/components/mui/TabList.jsx +0 -60
  253. package/src/@core/components/option-menu/index.jsx +0 -137
  254. package/src/@core/components/scroll-to-top/index.jsx +0 -43
  255. package/src/@core/components/spinner/index.js +0 -26
  256. package/src/@core/components/window-wrapper/index.js +0 -27
  257. package/src/@core/contexts/settingsContext.jsx +0 -98
  258. package/src/@core/hooks/useBgColor.js +0 -63
  259. package/src/@core/hooks/useImageVariant.js +0 -27
  260. package/src/@core/hooks/useLayoutInit.js +0 -37
  261. package/src/@core/hooks/useObjectCookie.js +0 -18
  262. package/src/@core/hooks/useSettings.jsx +0 -15
  263. package/src/@core/layouts/BlankLayout.js +0 -37
  264. package/src/@core/layouts/BlankLayoutWithAppBar.js +0 -51
  265. package/src/@core/layouts/HorizontalLayout.jsx +0 -151
  266. package/src/@core/layouts/Layout.js +0 -39
  267. package/src/@core/layouts/VerticalLayout.jsx +0 -124
  268. package/src/@core/layouts/components/blank-layout-with-appBar/index.js +0 -115
  269. package/src/@core/layouts/components/horizontal/app-bar-content/index.js +0 -67
  270. package/src/@core/layouts/components/horizontal/navigation/HorizontalNavGroup.js +0 -352
  271. package/src/@core/layouts/components/horizontal/navigation/HorizontalNavItems.js +0 -21
  272. package/src/@core/layouts/components/horizontal/navigation/HorizontalNavLink.js +0 -195
  273. package/src/@core/layouts/components/horizontal/navigation/index.js +0 -31
  274. package/src/@core/layouts/components/shared-components/LanguageDropdown.js +0 -96
  275. package/src/@core/layouts/components/shared-components/ModeToggler.js +0 -32
  276. package/src/@core/layouts/components/shared-components/NotificationDropdown.js +0 -226
  277. package/src/@core/layouts/components/shared-components/UserDropdown.js +0 -177
  278. package/src/@core/layouts/components/shared-components/footer/FooterContent.js +0 -46
  279. package/src/@core/layouts/components/shared-components/footer/index.js +0 -61
  280. package/src/@core/layouts/components/vertical/appBar/index.js +0 -74
  281. package/src/@core/layouts/components/vertical/navigation/Drawer.js +0 -122
  282. package/src/@core/layouts/components/vertical/navigation/VerticalNavGroup.js +0 -435
  283. package/src/@core/layouts/components/vertical/navigation/VerticalNavHeader.js +0 -180
  284. package/src/@core/layouts/components/vertical/navigation/VerticalNavItems.js +0 -26
  285. package/src/@core/layouts/components/vertical/navigation/VerticalNavLink.js +0 -258
  286. package/src/@core/layouts/components/vertical/navigation/VerticalNavSectionTitle.js +0 -102
  287. package/src/@core/layouts/components/vertical/navigation/index.js +0 -169
  288. package/src/@core/layouts/utils.js +0 -69
  289. package/src/@core/styles/Table.module.css +0 -93
  290. package/src/@core/styles/horizontal/menuItemStyles.js +0 -100
  291. package/src/@core/styles/horizontal/menuRootStyles.js +0 -19
  292. package/src/@core/styles/libs/fullcalendar/index.js +0 -461
  293. package/src/@core/styles/libs/keen-slider/index.js +0 -111
  294. package/src/@core/styles/libs/react-apexcharts/index.js +0 -107
  295. package/src/@core/styles/libs/react-cleave/index.js +0 -33
  296. package/src/@core/styles/libs/react-credit-cards/index.js +0 -11
  297. package/src/@core/styles/libs/react-datepicker/index.js +0 -388
  298. package/src/@core/styles/libs/react-draft-wysiwyg/index.js +0 -144
  299. package/src/@core/styles/libs/react-dropzone/index.js +0 -76
  300. package/src/@core/styles/libs/react-hot-toast/index.js +0 -37
  301. package/src/@core/styles/libs/recharts/index.js +0 -47
  302. package/src/@core/styles/stepper.js +0 -103
  303. package/src/@core/styles/vertical/menuItemStyles.js +0 -138
  304. package/src/@core/styles/vertical/menuSectionStyles.js +0 -54
  305. package/src/@core/styles/vertical/navigationCustomStyles.js +0 -62
  306. package/src/@core/svg/ContentCompact.jsx +0 -17
  307. package/src/@core/svg/ContentWide.jsx +0 -17
  308. package/src/@core/svg/DirectionLtr.jsx +0 -93
  309. package/src/@core/svg/DirectionRtl.jsx +0 -93
  310. package/src/@core/svg/LayoutCollapsed.jsx +0 -59
  311. package/src/@core/svg/LayoutHorizontal.jsx +0 -42
  312. package/src/@core/svg/LayoutVertical.jsx +0 -59
  313. package/src/@core/svg/Logo.jsx +0 -76
  314. package/src/@core/svg/SkinBordered.jsx +0 -54
  315. package/src/@core/svg/SkinDefault.jsx +0 -59
  316. package/src/@core/tailwind/plugin.js +0 -78
  317. package/src/@core/theme/ThemeComponent.js +0 -63
  318. package/src/@core/theme/ThemeOptions.js +0 -71
  319. package/src/@core/theme/breakpoints/index.js +0 -11
  320. package/src/@core/theme/colorSchemes.js +0 -326
  321. package/src/@core/theme/customShadows.js +0 -11
  322. package/src/@core/theme/globalStyles.js +0 -81
  323. package/src/@core/theme/index.js +0 -42
  324. package/src/@core/theme/overrides/accordion.js +0 -51
  325. package/src/@core/theme/overrides/accordion.jsx +0 -85
  326. package/src/@core/theme/overrides/alerts.js +0 -110
  327. package/src/@core/theme/overrides/alerts.jsx +0 -180
  328. package/src/@core/theme/overrides/autocomplete.js +0 -14
  329. package/src/@core/theme/overrides/autocomplete.jsx +0 -68
  330. package/src/@core/theme/overrides/avatar.js +0 -38
  331. package/src/@core/theme/overrides/avatars.js +0 -27
  332. package/src/@core/theme/overrides/backdrop.js +0 -22
  333. package/src/@core/theme/overrides/badges.js +0 -16
  334. package/src/@core/theme/overrides/breadcrumbs.js +0 -11
  335. package/src/@core/theme/overrides/button-group.js +0 -84
  336. package/src/@core/theme/overrides/button.js +0 -93
  337. package/src/@core/theme/overrides/buttonGroup.js +0 -9
  338. package/src/@core/theme/overrides/card.js +0 -83
  339. package/src/@core/theme/overrides/checkbox.jsx +0 -95
  340. package/src/@core/theme/overrides/chip.js +0 -72
  341. package/src/@core/theme/overrides/dataGrid.js +0 -114
  342. package/src/@core/theme/overrides/dateTimePicker.js +0 -65
  343. package/src/@core/theme/overrides/dialog.js +0 -120
  344. package/src/@core/theme/overrides/divider.js +0 -13
  345. package/src/@core/theme/overrides/drawer.js +0 -20
  346. package/src/@core/theme/overrides/fab.js +0 -13
  347. package/src/@core/theme/overrides/form-control-label.js +0 -19
  348. package/src/@core/theme/overrides/icon-button.js +0 -145
  349. package/src/@core/theme/overrides/index.js +0 -103
  350. package/src/@core/theme/overrides/input.js +0 -72
  351. package/src/@core/theme/overrides/link.js +0 -9
  352. package/src/@core/theme/overrides/list.js +0 -44
  353. package/src/@core/theme/overrides/menu.js +0 -25
  354. package/src/@core/theme/overrides/pagination.js +0 -41
  355. package/src/@core/theme/overrides/paper.js +0 -9
  356. package/src/@core/theme/overrides/popover.js +0 -16
  357. package/src/@core/theme/overrides/progress.js +0 -38
  358. package/src/@core/theme/overrides/radio.jsx +0 -80
  359. package/src/@core/theme/overrides/rating.js +0 -16
  360. package/src/@core/theme/overrides/rating.jsx +0 -32
  361. package/src/@core/theme/overrides/select.js +0 -19
  362. package/src/@core/theme/overrides/select.jsx +0 -52
  363. package/src/@core/theme/overrides/slider.js +0 -97
  364. package/src/@core/theme/overrides/snackbar.js +0 -19
  365. package/src/@core/theme/overrides/switch.js +0 -73
  366. package/src/@core/theme/overrides/switches.js +0 -25
  367. package/src/@core/theme/overrides/table-pagination.js +0 -39
  368. package/src/@core/theme/overrides/table.js +0 -81
  369. package/src/@core/theme/overrides/tabs.js +0 -30
  370. package/src/@core/theme/overrides/timeline.js +0 -80
  371. package/src/@core/theme/overrides/toggle-button.js +0 -33
  372. package/src/@core/theme/overrides/toggleButton.js +0 -16
  373. package/src/@core/theme/overrides/tooltip.js +0 -21
  374. package/src/@core/theme/overrides/typography.js +0 -13
  375. package/src/@core/theme/palette/index.js +0 -107
  376. package/src/@core/theme/shadows/index.js +0 -61
  377. package/src/@core/theme/shadows.js +0 -12
  378. package/src/@core/theme/spacing/index.js +0 -3
  379. package/src/@core/theme/spacing.js +0 -5
  380. package/src/@core/theme/typography/index.js +0 -65
  381. package/src/@core/theme/typography.js +0 -84
  382. package/src/@core/utils/create-emotion-cache.js +0 -5
  383. package/src/@core/utils/hex-to-rgba.js +0 -11
  384. package/src/@core/utils/serverHelpers.js +0 -45
  385. package/src/@menu/components/RouterLink.jsx +0 -18
  386. package/src/@menu/components/horizontal-menu/HorizontalNav.jsx +0 -88
  387. package/src/@menu/components/horizontal-menu/Menu.jsx +0 -83
  388. package/src/@menu/components/horizontal-menu/MenuButton.jsx +0 -100
  389. package/src/@menu/components/horizontal-menu/MenuItem.jsx +0 -183
  390. package/src/@menu/components/horizontal-menu/SubMenu.jsx +0 -418
  391. package/src/@menu/components/horizontal-menu/SubMenuContent.jsx +0 -41
  392. package/src/@menu/components/horizontal-menu/VerticalNavInHorizontal.jsx +0 -20
  393. package/src/@menu/components/vertical-menu/Menu.jsx +0 -161
  394. package/src/@menu/components/vertical-menu/MenuButton.jsx +0 -95
  395. package/src/@menu/components/vertical-menu/MenuItem.jsx +0 -180
  396. package/src/@menu/components/vertical-menu/MenuSection.jsx +0 -124
  397. package/src/@menu/components/vertical-menu/NavCollapseIcons.jsx +0 -70
  398. package/src/@menu/components/vertical-menu/NavHeader.jsx +0 -39
  399. package/src/@menu/components/vertical-menu/SubMenu.jsx +0 -420
  400. package/src/@menu/components/vertical-menu/SubMenuContent.jsx +0 -101
  401. package/src/@menu/components/vertical-menu/VerticalNav.jsx +0 -216
  402. package/src/@menu/contexts/horizontalNavContext.jsx +0 -29
  403. package/src/@menu/contexts/verticalNavContext.jsx +0 -65
  404. package/src/@menu/defaultConfigs.js +0 -12
  405. package/src/@menu/hooks/useHorizontalMenu.jsx +0 -19
  406. package/src/@menu/hooks/useHorizontalNav.jsx +0 -19
  407. package/src/@menu/hooks/useMediaQuery.jsx +0 -29
  408. package/src/@menu/hooks/useVerticalMenu.jsx +0 -19
  409. package/src/@menu/hooks/useVerticalNav.jsx +0 -19
  410. package/src/@menu/horizontal-menu/index.jsx +0 -8
  411. package/src/@menu/styles/StyledBackdrop.jsx +0 -15
  412. package/src/@menu/styles/StyledMenuIcon.jsx +0 -12
  413. package/src/@menu/styles/StyledMenuLabel.jsx +0 -16
  414. package/src/@menu/styles/StyledMenuPrefix.jsx +0 -10
  415. package/src/@menu/styles/StyledMenuSectionLabel.jsx +0 -21
  416. package/src/@menu/styles/StyledMenuSuffix.jsx +0 -10
  417. package/src/@menu/styles/StyledSubMenuContent.jsx +0 -43
  418. package/src/@menu/styles/horizontal/StyledHorizontalMenu.jsx +0 -13
  419. package/src/@menu/styles/horizontal/StyledHorizontalMenuItem.jsx +0 -26
  420. package/src/@menu/styles/horizontal/StyledHorizontalNav.jsx +0 -11
  421. package/src/@menu/styles/horizontal/StyledHorizontalNavExpandIcon.jsx +0 -33
  422. package/src/@menu/styles/horizontal/StyledHorizontalSubMenuContent.jsx +0 -18
  423. package/src/@menu/styles/horizontal/StyledHorizontalSubMenuContentWrapper.jsx +0 -10
  424. package/src/@menu/styles/horizontal/horizontalUl.module.css +0 -15
  425. package/src/@menu/styles/styles.module.css +0 -5
  426. package/src/@menu/styles/vertical/StyledVerticalMenu.jsx +0 -16
  427. package/src/@menu/styles/vertical/StyledVerticalMenuItem.jsx +0 -28
  428. package/src/@menu/styles/vertical/StyledVerticalMenuSection.jsx +0 -23
  429. package/src/@menu/styles/vertical/StyledVerticalNav.jsx +0 -67
  430. package/src/@menu/styles/vertical/StyledVerticalNavBgColorContainer.jsx +0 -15
  431. package/src/@menu/styles/vertical/StyledVerticalNavContainer.jsx +0 -23
  432. package/src/@menu/styles/vertical/StyledVerticalNavExpandIcon.jsx +0 -25
  433. package/src/@menu/styles/vertical/verticalNavBgImage.module.css +0 -10
  434. package/src/@menu/svg/ChevronRight.jsx +0 -9
  435. package/src/@menu/svg/Close.jsx +0 -12
  436. package/src/@menu/svg/RadioCircle.jsx +0 -12
  437. package/src/@menu/svg/RadioCircleMarked.jsx +0 -13
  438. package/src/@menu/utils/menuClasses.js +0 -44
  439. package/src/@menu/utils/menuUtils.jsx +0 -145
  440. package/src/@menu/vertical-menu/index.jsx +0 -11
  441. package/src/configs/acl.js +0 -115
  442. package/src/configs/auth.js +0 -5
  443. package/src/configs/aws-exports.js +0 -30
  444. package/src/configs/firebase.js +0 -25
  445. package/src/configs/i18n.js +0 -34
  446. package/src/configs/primaryColorConfig.js +0 -35
  447. package/src/configs/themeConfig.js +0 -44
  448. package/src/layouts/UserLayout.js +0 -94
  449. package/src/layouts/UserThemeOptions.js +0 -191
  450. package/src/layouts/components/Direction.js +0 -30
  451. package/src/layouts/components/HtmlTooltip.js +0 -15
  452. package/src/layouts/components/Translations.js +0 -11
  453. package/src/layouts/components/UserDropdown.js +0 -217
  454. package/src/layouts/components/UserIcon.js +0 -40
  455. package/src/layouts/components/acl/Can.js +0 -6
  456. package/src/layouts/components/acl/CanViewNavGroup.js +0 -36
  457. package/src/layouts/components/acl/CanViewNavLink.js +0 -17
  458. package/src/layouts/components/acl/CanViewNavSectionTitle.js +0 -17
  459. package/src/layouts/components/horizontal/AppBarContent.js +0 -39
  460. package/src/layouts/components/horizontal/ServerSideNavItems.js +0 -44
  461. package/src/layouts/components/mui/StepperComps.js +0 -55
  462. package/src/layouts/components/vertical/AppBarContent.js +0 -35
  463. package/src/layouts/components/vertical/ServerSideNavItems.js +0 -44
  464. package/src/libs/ApexCharts.jsx +0 -5
  465. package/src/libs/ReactPlayer.jsx +0 -5
  466. package/src/libs/Recharts.jsx +0 -4
  467. package/src/libs/auth.js +0 -124
  468. package/src/libs/styles/AppFullCalendar.js +0 -505
  469. package/src/libs/styles/AppKeenSlider.js +0 -116
  470. package/src/libs/styles/AppReactApexCharts.jsx +0 -110
  471. package/src/libs/styles/AppReactDatepicker.jsx +0 -470
  472. package/src/libs/styles/AppReactDropzone.js +0 -76
  473. package/src/libs/styles/AppReactToastify.jsx +0 -108
  474. package/src/libs/styles/AppRecharts.js +0 -55
  475. package/src/libs/styles/inputOtp.module.css +0 -39
  476. package/src/libs/styles/tiptapEditor.css +0 -72
  477. package/src/navigation/horizontal/index.js +0 -246
  478. package/src/navigation/vertical/index.js +0 -253
  479. package/src/pages/401.js +0 -70
  480. package/src/pages/404.js +0 -67
  481. package/src/pages/500.js +0 -68
  482. package/src/pages/[slug].js +0 -115
  483. package/src/pages/_document.js +0 -72
  484. package/src/pages/api/navigation/regenerate-registry.js +0 -116
  485. package/src/pages/api/navigation/save.js +0 -218
  486. package/src/pages/authModule/acl/index.js +0 -48
  487. package/src/pages/authModule/forgot-password/index.js +0 -228
  488. package/src/pages/authModule/permissions/rolePermissions/[id]/rolePermissionsUser/index.js +0 -392
  489. package/src/pages/authModule/permissions/rolePermissions/index.js +0 -343
  490. package/src/pages/authModule/permissions/systemPermissions/index.js +0 -354
  491. package/src/pages/authModule/privacy/index.js +0 -721
  492. package/src/pages/authModule/users/index.js +0 -210
  493. package/src/pages/login/index.js +0 -328
  494. package/src/pages/mainHome/index.js +0 -181
  495. package/src/views/builder/inspector/definitions/cell/main.js +0 -4
  496. package/src/views/builder/inspector/definitions/column/main.js +0 -9
  497. package/src/views/builder/inspector/definitions/column-group/main.js +0 -18
  498. package/src/views/builder/inspector/definitions/header-cell/main.js +0 -5
  499. package/src/views/builder/inspector/definitions/table/main.js +0 -9
  500. package/src/views/builder/viewer/renderers/CellRenderer.jsx +0 -71
  501. package/src/views/builder/viewer/renderers/ColumnGroupRenderer.jsx +0 -96
  502. package/src/views/builder/viewer/renderers/ColumnRenderer.jsx +0 -71
  503. package/src/views/builder/viewer/renderers/HeaderCellRenderer.jsx +0 -78
  504. package/src/views/builder/viewer/renderers/TabRenderer.jsx +0 -82
  505. package/src/views/builder/viewer/renderers/TableRenderer.jsx +0 -92
  506. package/src/views/pages/auth/FooterIllustrationsV2.js +0 -40
  507. package/src/views/pages/misc/FooterIllustrations.js +0 -47
  508. package/src/views/pages/misc/muiTable/CustomPagination.js +0 -34
  509. package/src/views/pages/users/UserManageDialog.js +0 -283
  510. package/src/views/pages/users/UserViewPage.js +0 -199
  511. package/src/views/users/AddUserNameDialog.js +0 -162
  512. package/src/views/users/ContactManage.js +0 -449
  513. package/src/views/users/ResetPasswordDialog.js +0 -242
@@ -1,253 +0,0 @@
1
- // ** Icon imports
2
- import { HomeOutline, Account } from 'mdi-material-ui'
3
- import { useRouter } from 'next/router'
4
- import { useContext } from 'react'
5
- import * as Icons from 'mdi-material-ui'
6
- import { SystemContext } from 'context/SystemContext'
7
- import { useNavigationExtensionContext } from 'src/lib/navigation/NavigationExtensionContext'
8
- import mergeNavExtensions from 'src/lib/navigation/mergeNavExtensions'
9
-
10
- /**
11
- * Get path for a navigation item (uses registry for dynamic items)
12
- */
13
- const getItemPath = (item, registry = {}) => {
14
- // Explicit path takes priority
15
- if (item.path) return item.path
16
-
17
- // For dynamic items, check registry for slug or path
18
- if (item.viewId && registry[item.viewId]) {
19
- const view = registry[item.viewId]
20
-
21
- // Use slug for friendly route if available
22
- if (view.slug) return `/${view.slug}`
23
-
24
- // Use custom path if available
25
- if (view.path) return view.path
26
- }
27
-
28
- // Fallback to viewer route
29
- if (item.viewId) return `/viewer/${item.viewId}`
30
-
31
- return null
32
- }
33
-
34
- /**
35
- * Find module node that matches current path (like static startsWith logic)
36
- * This replaces: if (currentPath.startsWith('/userManagement/')) return UserManagementNavItem
37
- *
38
- * Strategy:
39
- * 1. Find node where path matches exactly OR currentPath.startsWith(node.path + '/')
40
- * 2. Uses registry to resolve viewIds to paths (slugs)
41
- * 3. If current node is a leaf, return its parent (to show siblings)
42
- * 4. If current node has children, return current node (to show its children)
43
- */
44
- const findModuleForPath = (items, path, registry = {}) => {
45
- if (!items || !Array.isArray(items)) return null
46
-
47
- // Helper to find node with parent context
48
- const findNodeWithParent = (items, matcher, parent = null) => {
49
- for (const item of items) {
50
- // Check if this node matches
51
- if (matcher(item)) {
52
- return { node: item, parent }
53
- }
54
-
55
- // Recursively check children
56
- if (item.children && Array.isArray(item.children)) {
57
- const found = findNodeWithParent(item.children, matcher, item)
58
- if (found) return found
59
- }
60
- }
61
- return null
62
- }
63
-
64
- // Matcher function: path matches exactly OR currentPath starts with node.path + '/'
65
- // Also checks registry for slug-based paths
66
- const pathMatcher = item => {
67
- const itemPath = getItemPath(item, registry)
68
- if (!itemPath) return false
69
-
70
- // Exact match
71
- if (itemPath === path) return true
72
-
73
- // Starts with match (like static: currentPath.startsWith('/userManagement/'))
74
- if (path.startsWith(itemPath + '/')) return true
75
-
76
- return false
77
- }
78
-
79
- // First, try to find by path (including registry-resolved paths)
80
- let result = findNodeWithParent(items, pathMatcher)
81
-
82
- // If no path match, try by viewId (for /viewer/[id] routes)
83
- if (!result && path.startsWith('/viewer/')) {
84
- const viewIdMatch = path.match(/\/viewer\/(\d+)/)
85
- if (viewIdMatch) {
86
- const viewId = Number(viewIdMatch[1])
87
- result = findNodeWithParent(items, item => item.viewId === viewId)
88
- }
89
- }
90
-
91
- // Also try matching by slug from registry
92
- if (!result) {
93
- // Check if current path matches any slug in registry
94
- const matchingView = Object.values(registry).find(view => {
95
- if (view.slug && path === `/${view.slug}`) return true
96
- if (view.path && (path === view.path || path.startsWith(view.path + '/'))) return true
97
- return false
98
- })
99
-
100
- if (matchingView) {
101
- result = findNodeWithParent(items, item => item.viewId === matchingView.id)
102
- }
103
- }
104
-
105
- if (!result) return null
106
-
107
- const { node, parent } = result
108
-
109
- // Decision: What to show?
110
- // - If current node has children → show its children
111
- // - If current node is a leaf → show parent's children (siblings)
112
- if (node.children && Array.isArray(node.children) && node.children.length > 0) {
113
- return node // Show this node's children
114
- } else if (parent && parent.children && Array.isArray(parent.children)) {
115
- return parent // Show parent's children (siblings)
116
- }
117
-
118
- return node
119
- }
120
-
121
- /**
122
- * Convert icon string to component
123
- */
124
- const getIconComponent = iconName => {
125
- if (!iconName) return HomeOutline
126
- if (Icons[iconName]) {
127
- return Icons[iconName]
128
- }
129
- return HomeOutline // Default fallback
130
- }
131
-
132
- /**
133
- * Convert navigation items to format expected by menu system
134
- * Handles icon conversion and structure normalization
135
- * This matches the static navigation format exactly
136
- */
137
- const normalizeNavItems = (items, registry = {}) => {
138
- if (!items || !Array.isArray(items)) return []
139
-
140
- return items.map(item => {
141
- const navItem = {
142
- title: item.title || '',
143
- icon: item.icon ? getIconComponent(item.icon) : HomeOutline
144
- }
145
-
146
- // Determine path: explicit path takes priority, then registry, then viewer route
147
- if (item.path) {
148
- // Explicit path provided - use it (works for both static and dynamic with explicit paths)
149
- navItem.path = item.path
150
- } else {
151
- // No explicit path - resolve from registry or use viewer route
152
- const itemPath = getItemPath(item, registry)
153
- if (itemPath) {
154
- navItem.path = itemPath
155
- }
156
- }
157
-
158
- // Include viewId if it exists (for dynamic items)
159
- if (item.viewId) {
160
- navItem.viewId = item.viewId
161
- }
162
-
163
- // Include type if it exists
164
- if (item.type) {
165
- navItem.type = item.type
166
- }
167
-
168
- // Handle external URLs
169
- if (item.externalUrl) {
170
- navItem.path = item.externalUrl
171
- navItem.openInNewTab = item.openInNewTab || true
172
- }
173
-
174
- // Add action/subject if they exist (for permissions)
175
- if (item.action) {
176
- navItem.action = item.action
177
- }
178
- if (item.subject) {
179
- navItem.subject = item.subject
180
- }
181
-
182
- // Add children if they exist (preserve structure, don't flatten)
183
- if (item.children && Array.isArray(item.children) && item.children.length > 0) {
184
- navItem.children = normalizeNavItems(item.children, registry)
185
- }
186
-
187
- return navItem
188
- })
189
- }
190
-
191
- const Navigation = () => {
192
- const router = useRouter()
193
- const currentPath = router.pathname
194
- const systemContext = useContext(SystemContext)
195
-
196
- // Extension items injected by the host application
197
- const { extensionItems } = useNavigationExtensionContext()
198
-
199
- // Use registry from system context
200
- const effectiveRegistry = systemContext.nav?.registry || {}
201
-
202
- // Get navigation data from system context
203
- const navigationConfig = systemContext.nav?.config || null
204
-
205
- // Extract items from config (handle mainHome root)
206
- let navigationData = navigationConfig?.items || []
207
-
208
- // Unwrap mainHome root if it exists
209
- // Navigation structure: { items: [{ title: "mainHome", children: [...actual nav items...] }] }
210
- // We need to extract the children from mainHome root
211
- if (navigationData.length > 0 && navigationData[0].title === 'mainHome' && navigationData[0].children) {
212
- navigationData = navigationData[0].children
213
- }
214
-
215
- // Merge in any items registered by the host application via NavigationExtensionProvider
216
- if (extensionItems && extensionItems.length > 0) {
217
- navigationData = mergeNavExtensions(navigationData, extensionItems)
218
- }
219
-
220
- // If no navigation data, return empty array
221
- if (!navigationData || navigationData.length === 0) {
222
- return []
223
- }
224
-
225
- // Special case: mainHome page should not render navigation
226
- if (currentPath === '/mainHome' || currentPath === '/mainHome/') {
227
- return []
228
- }
229
-
230
- // Get actual path (router.pathname is '/viewer/[id]' for dynamic routes)
231
- // Use router.asPath to get the actual URL path
232
- let actualPath = router.asPath?.split('?')[0] || currentPath
233
-
234
- // Remove trailing slash for consistent matching (except for root '/')
235
- if (actualPath !== '/' && actualPath.endsWith('/')) {
236
- actualPath = actualPath.slice(0, -1)
237
- }
238
-
239
- // Find the module node (like static: if (currentPath.startsWith('/userManagement/')) return UserManagementNavItem)
240
- const moduleNode = findModuleForPath(navigationData, actualPath, effectiveRegistry)
241
-
242
- if (!moduleNode || !moduleNode.children || !Array.isArray(moduleNode.children) || moduleNode.children.length === 0) {
243
- // No matching module or no children to show
244
- return []
245
- }
246
-
247
- // Normalize children for menu (like static version - direct children only, no flattening)
248
- const navItems = normalizeNavItems(moduleNode.children, effectiveRegistry)
249
-
250
- return navItems
251
- }
252
-
253
- export default Navigation
package/src/pages/401.js DELETED
@@ -1,70 +0,0 @@
1
- // ** Next Import
2
- import Link from 'next/link'
3
-
4
- // ** MUI Components
5
- import Button from '@mui/material/Button'
6
- import { styled } from '@mui/material/styles'
7
- import Typography from '@mui/material/Typography'
8
- import Box from '@mui/material/Box'
9
-
10
- // ** Layout Import
11
- import BlankLayout from 'src/@core/layouts/BlankLayout'
12
-
13
- // ** Demo Imports
14
- import FooterIllustrations from 'src/views/pages/misc/FooterIllustrations'
15
- import Router from 'next/router'
16
- // ** Styled Components
17
- const BoxWrapper = styled(Box)(({ theme }) => ({
18
- [theme.breakpoints.down('md')]: {
19
- width: '90vw'
20
- }
21
- }))
22
-
23
- const BackToHome = () => {
24
- Router.push('/mainHome')
25
-
26
- }
27
-
28
-
29
-
30
-
31
- const Img = styled('img')(({ theme }) => ({
32
- marginTop: theme.spacing(15),
33
- marginBottom: theme.spacing(15),
34
- [theme.breakpoints.down('lg')]: {
35
- height: 450,
36
- marginTop: theme.spacing(10),
37
- marginBottom: theme.spacing(10)
38
- },
39
- [theme.breakpoints.down('md')]: {
40
- height: 400
41
- }
42
- }))
43
-
44
- const Error401 = () => {
45
- return (
46
- <Box className='content-center'>
47
- <Box sx={{ p: 5, display: 'flex', flexDirection: 'column', alignItems: 'center', textAlign: 'center' }}>
48
- <BoxWrapper>
49
- <Typography variant='h1' sx={{ mb: 2.5 }}>
50
- 401
51
- </Typography>
52
- <Typography variant='h5' sx={{ mb: 2.5, fontSize: '1.5rem !important' }}>
53
- You are not authorized! 🔐
54
- </Typography>
55
- <Typography variant='body2'>You don&prime;t have permission to access this page. Go Home!</Typography>
56
- </BoxWrapper>
57
- <Img alt='error-illustration' src='/images/pages/401.png' />
58
- <Link passHref href='/'>
59
- <Button onClick={BackToHome} component='a' variant='contained' sx={{ px: 5.5 }}>
60
- Back to Home
61
- </Button>
62
- </Link>
63
- </Box>
64
- <FooterIllustrations image='/images/pages/misc-401-object.png' />
65
- </Box>
66
- )
67
- }
68
- Error401.getLayout = page => <BlankLayout>{page}</BlankLayout>
69
-
70
- export default Error401
package/src/pages/404.js DELETED
@@ -1,67 +0,0 @@
1
- // ** Next Import
2
- import Link from 'next/link'
3
-
4
- // ** MUI Components
5
- import Button from '@mui/material/Button'
6
- import { styled } from '@mui/material/styles'
7
- import Typography from '@mui/material/Typography'
8
- import Box from '@mui/material/Box'
9
-
10
- // ** Layout Import
11
- import BlankLayout from 'src/@core/layouts/BlankLayout'
12
-
13
- // ** Demo Imports
14
- import FooterIllustrations from 'src/views/pages/misc/FooterIllustrations'
15
- import Router from 'next/router'
16
- // ** Styled Components
17
- const BoxWrapper = styled(Box)(({ theme }) => ({
18
- [theme.breakpoints.down('md')]: {
19
- width: '90vw'
20
- }
21
- }))
22
-
23
- const BackToHome = () => {
24
- Router.push('/mainHome')
25
-
26
- }
27
-
28
- const Img = styled('img')(({ theme }) => ({
29
- marginTop: theme.spacing(15),
30
- marginBottom: theme.spacing(15),
31
- [theme.breakpoints.down('lg')]: {
32
- height: 450,
33
- marginTop: theme.spacing(10),
34
- marginBottom: theme.spacing(10)
35
- },
36
- [theme.breakpoints.down('md')]: {
37
- height: 400
38
- }
39
- }))
40
-
41
- const Error404 = () => {
42
- return (
43
- <Box className='content-center'>
44
- <Box sx={{ p: 5, display: 'flex', flexDirection: 'column', alignItems: 'center', textAlign: 'center' }}>
45
- <BoxWrapper>
46
- <Typography variant='h1' sx={{ mb: 2.5 }}>
47
- 404
48
- </Typography>
49
- <Typography variant='h5' sx={{ mb: 2.5, letterSpacing: '0.18px', fontSize: '1.5rem !important' }}>
50
- Page Not Found ⚠️
51
- </Typography>
52
- <Typography variant='body2'>We couldn&prime;t find the page you are looking for.</Typography>
53
- </BoxWrapper>
54
- <Img alt='error-illustration' src='/images/pages/404.png' />
55
- <Link passHref href='/mainHome'>
56
- <Button onClick={BackToHome} component='a' variant='contained' sx={{ px: 5.5 }}>
57
- Back to Home
58
- </Button>
59
- </Link>
60
- </Box>
61
- <FooterIllustrations image='/images/pages/misc-404-object.png' />
62
- </Box>
63
- )
64
- }
65
- Error404.getLayout = page => <BlankLayout>{page}</BlankLayout>
66
-
67
- export default Error404
package/src/pages/500.js DELETED
@@ -1,68 +0,0 @@
1
- // ** Next Import
2
- import Link from 'next/link'
3
-
4
- // ** MUI Components
5
- import Button from '@mui/material/Button'
6
- import { styled } from '@mui/material/styles'
7
- import Typography from '@mui/material/Typography'
8
- import Box from '@mui/material/Box'
9
-
10
- // ** Layout Import
11
- import BlankLayout from 'src/@core/layouts/BlankLayout'
12
-
13
- // ** Demo Imports
14
- import FooterIllustrations from 'src/views/pages/misc/FooterIllustrations'
15
- import Router from 'next/router'
16
- // ** Styled Components
17
- const BoxWrapper = styled(Box)(({ theme }) => ({
18
- [theme.breakpoints.down('md')]: {
19
- width: '90vw'
20
- }
21
- }))
22
-
23
- const BacktoHome = () => {
24
- Router.push('/mainHome')
25
- }
26
-
27
- const Img = styled('img')(({ theme }) => ({
28
- marginTop: theme.spacing(15),
29
- marginBottom: theme.spacing(15),
30
- [theme.breakpoints.down('lg')]: {
31
- height: 450,
32
- marginTop: theme.spacing(10),
33
- marginBottom: theme.spacing(10)
34
- },
35
- [theme.breakpoints.down('md')]: {
36
- height: 400
37
- }
38
- }))
39
-
40
- const Error500 = () => {
41
- return (
42
- <Box className='content-center'>
43
- <Box sx={{ p: 5, display: 'flex', flexDirection: 'column', alignItems: 'center', textAlign: 'center' }}>
44
- <BoxWrapper>
45
- <Typography variant='h1' sx={{ mb: 2.5 }}>
46
- 500
47
- </Typography>
48
- <Typography variant='h5' sx={{ mb: 2.5, fontSize: '1.5rem !important' }}>
49
- Internal server error 👨🏻‍💻
50
- </Typography>
51
- <Typography variant='body2'>Oops, something went wrong!</Typography>
52
- </BoxWrapper>
53
- <Img alt='error-illustration' src='/images/pages/500.png' />
54
- <Link passHref href='/'>
55
- <Button
56
- onClick={BacktoHome}
57
- component='a' variant='contained' sx={{ px: 5.5 }}>
58
- Back to Home
59
- </Button>
60
- </Link>
61
- </Box>
62
- <FooterIllustrations image='/images/pages/misc-500-object.png' />
63
- </Box>
64
- )
65
- }
66
- Error500.getLayout = page => <BlankLayout>{page}</BlankLayout>
67
-
68
- export default Error500
@@ -1,115 +0,0 @@
1
- import { useRouter } from 'next/router'
2
- import { useEffect, useState, useMemo, useContext } from 'react'
3
- import { Box, Typography, CircularProgress, Grid } from '@mui/material'
4
- import { SystemContext } from 'context/SystemContext'
5
- import { Endpoints, Services } from 'services/Endpoints'
6
- import ProductionViewer from 'views/builder/viewer/ProductionViewer'
7
-
8
- export default function SlugResolver() {
9
- const router = useRouter()
10
- const { slug } = router.query
11
- const systemContext = useContext(SystemContext)
12
- const viewRegistry = systemContext.nav?.registry || {}
13
-
14
- const [schema, setSchema] = useState({})
15
- const [viewMetaData, setViewMetaData] = useState({})
16
- const [loading, setLoading] = useState(true)
17
- const [error, setError] = useState(null)
18
-
19
- // Find view by slug
20
- const view = useMemo(() => {
21
- if (!slug) return null
22
- return Object.values(viewRegistry).find(
23
- v => v.slug === slug
24
- )
25
- }, [slug, viewRegistry])
26
-
27
- const handleGetView = async (viewId) => {
28
- try {
29
- setLoading(true)
30
- setError(null)
31
-
32
- const response = await Services.GetService(Endpoints.UiBuilder.Get.GetViewDetails, false, {
33
- viewId: viewId
34
- })
35
-
36
- if (response && response.data) {
37
- setSchema(JSON.parse(response.data.value))
38
- setViewMetaData({
39
- id: response.data.id,
40
- title: response.data.title,
41
- viewId: response.data.viewId,
42
- groupId: response.data.groupId,
43
- isNew: false
44
- })
45
- } else {
46
- setError('View not found')
47
- }
48
- } catch (error) {
49
- console.error('Error loading view:', error)
50
- setError('Failed to load view')
51
- } finally {
52
- setLoading(false)
53
- }
54
- }
55
-
56
- useEffect(() => {
57
- if (view && view.id) {
58
- handleGetView(view.id)
59
- } else if (slug && !view) {
60
- setLoading(false)
61
- setError('Page not found')
62
- }
63
- }, [view, slug])
64
-
65
- // No slug yet
66
- if (!slug) {
67
- return null
68
- }
69
-
70
- // Loading state
71
- if (loading) {
72
- return (
73
- <Box sx={{ p: 6, textAlign: 'center', display: 'flex', justifyContent: 'center', alignItems: 'center', minHeight: '400px' }}>
74
- <CircularProgress />
75
- </Box>
76
- )
77
- }
78
-
79
- // View not found in registry
80
- if (!view) {
81
- return (
82
- <Box sx={{ p: 6, textAlign: 'center' }}>
83
- <Typography variant="h4">Page not found</Typography>
84
- <Typography variant="body2" color="text.secondary" sx={{ mt: 2 }}>
85
- Unknown page: /{slug}
86
- </Typography>
87
- </Box>
88
- )
89
- }
90
-
91
- // Error loading view data
92
- if (error) {
93
- return (
94
- <Box sx={{ p: 6, textAlign: 'center' }}>
95
- <Typography variant="h4">Coming soon 🚧</Typography>
96
- <Typography variant="body2" sx={{ mt: 2 }}>
97
- {view.name} has not been created yet.
98
- </Typography>
99
- <Typography variant="body2" color="text.secondary" sx={{ mt: 1 }}>
100
- Friendly URL: /{slug}
101
- </Typography>
102
- </Box>
103
- )
104
- }
105
-
106
- // Success - render the viewer
107
- // This keeps the friendly URL (/{slug}) in the browser
108
- return (
109
- <Grid container>
110
- <Grid item size={12}>
111
- <ProductionViewer schema={schema} />
112
- </Grid>
113
- </Grid>
114
- )
115
- }
@@ -1,72 +0,0 @@
1
- // ** React Import
2
- import { Children } from 'react'
3
-
4
- // ** Next Import
5
- import Document, { Html, Head, Main, NextScript } from 'next/document'
6
-
7
- // ** Emotion Imports
8
- import createEmotionServer from '@emotion/server/create-instance'
9
-
10
- // ** Utils Imports
11
- import { createEmotionCache } from 'src/@core/utils/create-emotion-cache'
12
-
13
- class CustomDocument extends Document {
14
- render() {
15
- return (
16
- <Html lang='en'>
17
- <Head>
18
- <link rel='preconnect' href='https://fonts.googleapis.com' />
19
- <link rel='preconnect' href='https://fonts.gstatic.com' />
20
- <link
21
- rel='stylesheet'
22
- href='https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'
23
- />
24
- <link
25
- rel='stylesheet'
26
- href='https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700&display=swap'
27
- />
28
- <link rel='apple-touch-icon' sizes='180x180' href='/images/apple-touch-icon.png' />
29
- <link rel='shortcut icon' href='/images/favicon.png' />
30
- </Head>
31
- <body>
32
- <Main />
33
- <NextScript />
34
- </body>
35
- </Html>
36
- )
37
- }
38
- }
39
- CustomDocument.getInitialProps = async ctx => {
40
- const originalRenderPage = ctx.renderPage
41
- const cache = createEmotionCache()
42
- const { extractCriticalToChunks } = createEmotionServer(cache)
43
- ctx.renderPage = () =>
44
- originalRenderPage({
45
- enhanceApp: App => props =>
46
- (
47
- <App
48
- {...props} // @ts-ignore
49
- emotionCache={cache}
50
- />
51
- )
52
- })
53
- const initialProps = await Document.getInitialProps(ctx)
54
- const emotionStyles = extractCriticalToChunks(initialProps.html)
55
-
56
- const emotionStyleTags = emotionStyles.styles.map(style => {
57
- return (
58
- <style
59
- key={style.key}
60
- dangerouslySetInnerHTML={{ __html: style.css }}
61
- data-emotion={`${style.key} ${style.ids.join(' ')}`}
62
- />
63
- )
64
- })
65
-
66
- return {
67
- ...initialProps,
68
- styles: [...Children.toArray(initialProps.styles), ...emotionStyleTags]
69
- }
70
- }
71
-
72
- export default CustomDocument