@dashadmin/dash-admin 1.3.73 → 1.3.74-srcfree.2

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 (553) hide show
  1. package/dist/AppAsyncWrapper.d.ts +3 -0
  2. package/dist/AppWrapper.d.ts +3 -0
  3. package/dist/DASHAdmin.d.ts +38 -0
  4. package/dist/RoutingWrapper.d.ts +10 -0
  5. package/dist/classes/DASHStorageClass.d.ts +5 -0
  6. package/dist/components/Input/RichTextField.d.ts +4 -0
  7. package/dist/components/Redirect.d.ts +9 -0
  8. package/dist/components/avatar/Avatar.d.ts +7 -0
  9. package/dist/components/avatar/SingleImageUploader.d.ts +9 -0
  10. package/dist/components/currency/Format.d.ts +4 -0
  11. package/dist/components/custom/Redirect.d.ts +7 -0
  12. package/dist/components/error/Error.d.ts +31 -0
  13. package/dist/components/geocoding/GeocodingField.d.ts +4 -0
  14. package/dist/components/i18n/BridgedLocalesMenuButton.d.ts +7 -0
  15. package/dist/components/i18n/LangSwitcher.d.ts +10 -0
  16. package/dist/components/loader/GlobalLoader.d.ts +6 -0
  17. package/dist/components/logs/LogFile.d.ts +6 -0
  18. package/dist/components/logs/LogFileById.d.ts +6 -0
  19. package/dist/components/logs/LogViewer.d.ts +8 -0
  20. package/dist/components/menu/AppMenu.d.ts +7 -0
  21. package/dist/components/menu/CustomMenuItemLink.d.ts +12 -0
  22. package/dist/components/menu/DarkToggleMode.d.ts +3 -0
  23. package/dist/components/menu/LanguageToggleMode.d.ts +3 -0
  24. package/dist/components/misc/CustomImageInput.d.ts +4 -0
  25. package/dist/components/misc/DASHGlobalErrorHandler.d.ts +10 -0
  26. package/dist/components/misc/DarkModeSwitcher.d.ts +3 -0
  27. package/dist/components/misc/HorizontalScroller.d.ts +14 -0
  28. package/dist/components/misc/LanguageSwitcher.d.ts +10 -0
  29. package/dist/components/misc/MuiSimpleJsonTable.d.ts +16 -0
  30. package/dist/components/misc/MultiLevelTable.d.ts +18 -0
  31. package/dist/components/misc/NoResults.d.ts +6 -0
  32. package/dist/components/misc/PDFViewer.d.ts +4 -0
  33. package/dist/components/navigation/Breadcrumbs.d.ts +14 -0
  34. package/dist/components/navigation/BreadcrumbsManager.d.ts +14 -0
  35. package/{src/components/navigation/index.tsx → dist/components/navigation/index.d.ts} +0 -1
  36. package/dist/components/panel/Error.d.ts +31 -0
  37. package/dist/components/permission/AvailablePermissionsContext.d.ts +11 -0
  38. package/dist/components/permission/PermissionsSelector.d.ts +4 -0
  39. package/dist/components/permission/PermissionsSelectorList.d.ts +4 -0
  40. package/dist/components/racustombuttons/CustomRAButton.d.ts +23 -0
  41. package/dist/components/racustombuttons/QuickButton.d.ts +15 -0
  42. package/dist/components/racustombuttons/QuickEditButton.d.ts +28 -0
  43. package/dist/components/racustombuttons/QuickIconButton.d.ts +27 -0
  44. package/dist/components/scrollbar/Scrollbar.d.ts +7 -0
  45. package/dist/components/selects/MultiSelect.d.ts +4 -0
  46. package/dist/components/selects/RASearchableSelect.d.ts +25 -0
  47. package/dist/components/selects/RASearchableSelectChips.d.ts +29 -0
  48. package/dist/components/selects/SearchableSelect.d.ts +3 -0
  49. package/dist/components/serviceAccount/ApiKeyRevealDialog.d.ts +7 -0
  50. package/dist/components/serviceAccount/ServiceAccountStatusSwitch.d.ts +4 -0
  51. package/dist/components/subscription/BillingCycleSelectInput.d.ts +3 -0
  52. package/dist/components/subscription/PlanAddonsSettings.d.ts +4 -0
  53. package/dist/components/subscription/PlanAuditLog.d.ts +4 -0
  54. package/dist/components/subscription/PlanFeaturesSettings.d.ts +4 -0
  55. package/dist/components/subscription/PlanLimitsSettings.d.ts +4 -0
  56. package/dist/components/subscription/PlanMetadataSettings.d.ts +4 -0
  57. package/dist/components/subscription/PlanPricesSettings.d.ts +4 -0
  58. package/{src/components/subscription/index.ts → dist/components/subscription/index.d.ts} +0 -2
  59. package/dist/components/svgelements/SvgLoading.d.ts +3 -0
  60. package/dist/components/svgelements/SvgLogo.d.ts +3 -0
  61. package/dist/components/svgelements/SvgLogoMin.d.ts +3 -0
  62. package/dist/components/svgelements/SvgShipping.d.ts +3 -0
  63. package/dist/components/tenancy/GlobalTenantWrapper.d.ts +6 -0
  64. package/dist/components/tenancy/TenantSwitcher.d.ts +16 -0
  65. package/dist/components/tenant/SettingsSections.d.ts +11 -0
  66. package/dist/components/tenant/TenancyPlan.d.ts +4 -0
  67. package/dist/components/tenant/TenancyPlan.js +307 -0
  68. package/dist/components/tenant/TenancySettings.d.ts +4 -0
  69. package/dist/components/tenant/TenantAttributes.d.ts +4 -0
  70. package/dist/components/tenant/TenantAttributesContext.d.ts +10 -0
  71. package/dist/components/tenant/TenantSelector.d.ts +11 -0
  72. package/dist/components/tenant/TenantSettings.d.ts +4 -0
  73. package/dist/components/tenant/TenantSettingsContext.d.ts +11 -0
  74. package/dist/components/tenant/TenantTheme.d.ts +4 -0
  75. package/dist/components/user/AvatarComponent.d.ts +6 -0
  76. package/dist/components/user/TenantAvatarComponent.d.ts +15 -0
  77. package/dist/components/user/UserPreferences.d.ts +3 -0
  78. package/dist/config/ACTIONS.d.ts +3 -0
  79. package/dist/config/ConstantsService.d.ts +14 -0
  80. package/dist/config/DASHAdminSystemConstants.d.ts +120 -0
  81. package/dist/config/PARSERS.d.ts +5 -0
  82. package/dist/contexts/DashQueryClientContext.d.ts +19 -0
  83. package/dist/contexts/DashResourceContext.d.ts +11 -0
  84. package/dist/contexts/I18nBridgeContext.d.ts +18 -0
  85. package/dist/contexts/I18nBridgeSetter.d.ts +3 -0
  86. package/dist/contexts/I18nReduxSync.d.ts +6 -0
  87. package/dist/contexts/SubscriptionPlanFormatsProvider.d.ts +13 -0
  88. package/dist/contexts/SystemRequestsCache.d.ts +16 -0
  89. package/dist/contexts/auth/AuthContext.d.ts +40 -0
  90. package/dist/contexts/auth/AuthContextLocalStorage.d.ts +27 -0
  91. package/dist/contexts/auth/DASHAuthenticationService.d.ts +46 -0
  92. package/dist/contexts/auth/WindowContext.d.ts +8 -0
  93. package/{src/contexts/auth/index.tsx → dist/contexts/auth/index.d.ts} +0 -1
  94. package/dist/contexts/com/FCMContext.d.ts +62 -0
  95. package/dist/contexts/com/LaravelEchoContext.d.ts +18 -0
  96. package/dist/contexts/com/LaravelEchoMgr.d.ts +8 -0
  97. package/dist/contexts/com/components/DefaultNotificationComponent.d.ts +6 -0
  98. package/dist/contexts/com/components/EchoNotificationsCenter.d.ts +3 -0
  99. package/dist/contexts/com/components/NotificationAttributesTable.d.ts +8 -0
  100. package/dist/contexts/com/components/NotificationRenderer.d.ts +8 -0
  101. package/dist/contexts/com/components/NotificationsWidget.d.ts +17 -0
  102. package/dist/contexts/com/components/notificationFormats.d.ts +38 -0
  103. package/dist/contexts/com/useLaravelEcho.d.ts +37 -0
  104. package/dist/contexts/dictionary/DictionaryContext.d.ts +21 -0
  105. package/dist/default-theme/DASHAppProviders.d.ts +21 -0
  106. package/dist/default-theme/DashThemeContext.d.ts +17 -0
  107. package/dist/default-theme/DashThemeHelperProvider.d.ts +10 -0
  108. package/dist/default-theme/DomainAppLayout.d.ts +13 -0
  109. package/dist/default-theme/DomainHeader.d.ts +6 -0
  110. package/dist/default-theme/DomainTheme.d.ts +8 -0
  111. package/dist/default-theme/FullLayoutMarkup.d.ts +9 -0
  112. package/dist/default-theme/StaticLayout.d.ts +5 -0
  113. package/{src/default-theme/index.tsx → dist/default-theme/index.d.ts} +0 -3
  114. package/dist/default-theme/menu/AppDashboardGrid.d.ts +24 -0
  115. package/dist/default-theme/menu/AppMaterialMenu.d.ts +11 -0
  116. package/dist/default-theme/menu/AppMenuComponents/SubmenuPortal.d.ts +15 -0
  117. package/dist/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItem.d.ts +22 -0
  118. package/dist/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItems.d.ts +11 -0
  119. package/dist/default-theme/menu/AppMenuComponents/expanded/CollapsableSidebarMenu.d.ts +4 -0
  120. package/dist/default-theme/menu/AppMenuComponents/expanded/SidebarItem.d.ts +3 -0
  121. package/dist/default-theme/menu/AppMenuComponents/getItem.d.ts +3 -0
  122. package/dist/default-theme/menu/AppMenuComponents/interfaces.d.ts +36 -0
  123. package/dist/default-theme/menu/AppMenuComponents/submenuConstants.d.ts +7 -0
  124. package/dist/default-theme/menu/AppSidebarMaterial.d.ts +8 -0
  125. package/dist/default-theme/menu/SidebarActions.d.ts +8 -0
  126. package/dist/default-theme/updateDomCssVariables.d.ts +6 -0
  127. package/dist/helpers/checkRole.d.ts +2 -0
  128. package/dist/helpers/parseAxiosError.d.ts +1 -0
  129. package/dist/hooks/audio/useAudio.d.ts +2 -0
  130. package/dist/hooks/axios.d.ts +5 -0
  131. package/dist/hooks/data/useDashboardStats.d.ts +13 -0
  132. package/dist/hooks/data/usePackageByClientsStats.d.ts +13 -0
  133. package/dist/hooks/data/usePackageByCommunesStats.d.ts +13 -0
  134. package/dist/hooks/data/usePackageStats.d.ts +13 -0
  135. package/dist/hooks/data/usePackageWithdrawDetails.d.ts +25 -0
  136. package/dist/hooks/data/useStats.d.ts +9 -0
  137. package/dist/hooks/isCurrentPath.d.ts +3 -0
  138. package/dist/hooks/notifications/WSMessagesManager.d.ts +4 -0
  139. package/dist/hooks/notifications/WSPusherManager.d.ts +3 -0
  140. package/dist/hooks/useBreadcrumbs.d.ts +21 -0
  141. package/dist/hooks/useClickOutside.d.ts +2 -0
  142. package/dist/hooks/useFormPersistance.d.ts +13 -0
  143. package/dist/hooks/useGlobalErrorMediator.d.ts +5 -0
  144. package/dist/hooks/useGlobalLoaderMgr.d.ts +3 -0
  145. package/dist/hooks/useHash.d.ts +2 -0
  146. package/dist/hooks/useLocalStorage.d.ts +2 -0
  147. package/dist/hooks/usePolyglotTranslation.d.ts +11 -0
  148. package/dist/hooks/usePrevious.d.ts +2 -0
  149. package/dist/hooks/usePrintSelected.d.ts +12 -0
  150. package/dist/hooks/useVirtualHash.d.ts +5 -0
  151. package/dist/hooks/window/useWindowSize.d.ts +6 -0
  152. package/{src/index.tsx → dist/index.d.ts} +22 -91
  153. package/dist/interfaces/IAppResourceConfig.d.ts +10 -0
  154. package/dist/interfaces/Log.d.ts +15 -0
  155. package/dist/interfaces/Tenant.d.ts +25 -0
  156. package/{src/interfaces/communication/IActions.tsx → dist/interfaces/communication/IActions.d.ts} +1 -2
  157. package/{src/interfaces/communication/INotification.tsx → dist/interfaces/communication/INotification.d.ts} +5 -7
  158. package/{src/interfaces/communication/IPayload.tsx → dist/interfaces/communication/IPayload.d.ts} +1 -1
  159. package/dist/interfaces/communication/IRequestAction.d.ts +10 -0
  160. package/dist/interfaces/communication/IRequestPayload.d.ts +7 -0
  161. package/dist/interfaces/communication/IResponseAction.d.ts +7 -0
  162. package/{src/interfaces/misc/IAny.tsx → dist/interfaces/misc/IAny.d.ts} +1 -1
  163. package/dist/interfaces/misc/IFlashMessage.d.ts +10 -0
  164. package/dist/interfaces/navigation/IAppMenu.d.ts +11 -0
  165. package/dist/interfaces/navigation/ICollapsableSidebarMenu.d.ts +10 -0
  166. package/dist/interfaces/navigation/IMenuItem.d.ts +14 -0
  167. package/{src/interfaces/notifications/IModel.tsx → dist/interfaces/notifications/IModel.d.ts} +1 -2
  168. package/dist/interfaces/notifications/IModelField.d.ts +10 -0
  169. package/dist/interfaces/notifications/IUserNotification.d.ts +11 -0
  170. package/{src/interfaces/notifications/IUserNotificationData.tsx → dist/interfaces/notifications/IUserNotificationData.d.ts} +6 -7
  171. package/dist/interfaces/notifications/IUserNotificationPayload.d.ts +10 -0
  172. package/dist/interfaces/user/IGetAuth.d.ts +75 -0
  173. package/dist/interfaces/user/ITenantSettings.d.ts +3 -0
  174. package/dist/interfaces/user/IUser.d.ts +60 -0
  175. package/dist/interfaces/user/IUserSettings.d.ts +36 -0
  176. package/{src/interfaces.tsx → dist/interfaces.d.ts} +5 -6
  177. package/dist/layout/AppLayout.d.ts +5 -0
  178. package/dist/layout/ApplicationLayout.d.ts +22 -0
  179. package/dist/layout/MotionWrapper.d.ts +22 -0
  180. package/dist/layout/MotionWrapper.original.d.ts +22 -0
  181. package/dist/layout/ResourceMenu.d.ts +7 -0
  182. package/dist/layout/ResoureLayout.d.ts +8 -0
  183. package/dist/layout/TransitionWrapper.d.ts +8 -0
  184. package/dist/pages/ChangePassword.d.ts +6 -0
  185. package/dist/pages/DASHLanding.d.ts +5 -0
  186. package/dist/pages/DASHLightWeightLogin.d.ts +6 -0
  187. package/dist/pages/DASHSimpleLogin.d.ts +6 -0
  188. package/dist/pages/Login.d.ts +3 -0
  189. package/dist/pages/Profile.d.ts +3 -0
  190. package/dist/pages/RecoverPassword.d.ts +3 -0
  191. package/dist/pages/SingleImageUploader.d.ts +8 -0
  192. package/dist/pages/VerifyAccount.d.ts +5 -0
  193. package/dist/providers/authProvider.d.ts +15 -0
  194. package/dist/providers/dataProvider.d.ts +31 -0
  195. package/dist/providers/i18n/en.d.ts +569 -0
  196. package/dist/providers/i18n/es.d.ts +2 -0
  197. package/dist/providers/i18n/languages.d.ts +571 -0
  198. package/dist/providers/i18n/mergeTranslations.d.ts +3 -0
  199. package/dist/providers/i18nProvider.d.ts +2 -0
  200. package/dist/react-admin-dash/RADashComponent.d.ts +7 -0
  201. package/dist/react-admin-dash/Resource.d.ts +16 -0
  202. package/dist/resources/Brand/BrandResource.d.ts +3 -0
  203. package/dist/resources/DASHResourceLoader.d.ts +17 -0
  204. package/dist/resources/Log/LogResource.d.ts +3 -0
  205. package/dist/resources/Tenant/ImpersonateTenantResource.d.ts +5 -0
  206. package/dist/resources/Trash/TrashTemplate.d.ts +3 -0
  207. package/dist/resources/User/components/AvatarUploadField.d.ts +6 -0
  208. package/dist/resources/User/components/PasswordFields.d.ts +8 -0
  209. package/dist/resources/User/getProfileMenu.d.ts +4 -0
  210. package/dist/resources/User/profileResource.d.ts +3 -0
  211. package/dist/resources/User/userLayout.d.ts +2 -0
  212. package/dist/resources/User/userResource.d.ts +3 -0
  213. package/dist/resources/User/userSchema.d.ts +3 -0
  214. package/dist/resources/User/usersFilters.d.ts +3 -0
  215. package/dist/resources.d.ts +11 -0
  216. package/dist/schemas/log.d.ts +3 -0
  217. package/dist/schemas/notification.d.ts +3 -0
  218. package/dist/schemas/permissions.d.ts +3 -0
  219. package/dist/schemas/roles.d.ts +3 -0
  220. package/dist/schemas/rolesDataGrid.d.ts +3 -0
  221. package/dist/schemas/subscription/components/SubscriptionActions.d.ts +4 -0
  222. package/dist/schemas/subscription/components/SubscriptionPaymentHistory.d.ts +4 -0
  223. package/dist/schemas/subscription/components/SubscriptionPlanFeatures.d.ts +4 -0
  224. package/dist/schemas/subscription/components/SubscriptionPlanPreview.d.ts +4 -0
  225. package/dist/schemas/subscription/components/SubscriptionPlanStats.d.ts +4 -0
  226. package/dist/schemas/subscription/components/SubscriptionStatusIndicator.d.ts +4 -0
  227. package/dist/schemas/subscription/subscriptionPlanSchema.d.ts +3 -0
  228. package/dist/schemas/subscription/subscriptionSchema.d.ts +3 -0
  229. package/dist/schemas/subscriptionPlan.d.ts +3 -0
  230. package/dist/schemas/tenant.d.ts +3 -0
  231. package/dist/schemas/tenantUser.d.ts +3 -0
  232. package/dist/schemas/tenant_superadmin.d.ts +3 -0
  233. package/dist/schemas/user.d.ts +3 -0
  234. package/dist/systemResources.d.ts +3 -0
  235. package/dist/systemResources.js +18 -2
  236. package/dist/systemResources.old.d.ts +3 -0
  237. package/dist/templates/ResourceTemplate.d.ts +10 -0
  238. package/dist/templates/ResourceTemplateCreate.d.ts +3 -0
  239. package/dist/templates/ResourceTemplateEdit.d.ts +3 -0
  240. package/dist/templates/ResourceTemplateFull.d.ts +7 -0
  241. package/dist/templates/ResourceTemplateList.d.ts +8 -0
  242. package/dist/templates/ResourceTemplateShow.d.ts +3 -0
  243. package/dist/templates/TrashTemplate.d.ts +3 -0
  244. package/dist/tenantResources.d.ts +3 -0
  245. package/dist/test_portal_bubbles.d.ts +2 -0
  246. package/dist/theme/AppHeader.d.ts +6 -0
  247. package/dist/theme/AppLayoutSetting.d.ts +28 -0
  248. package/dist/theme/AppLogo.d.ts +8 -0
  249. package/dist/theme/AppSidebar.d.ts +7 -0
  250. package/dist/theme/AppSidebarContent.d.ts +12 -0
  251. package/dist/theme/AppSidebarLogo.d.ts +9 -0
  252. package/dist/theme/components/PageTitle.d.ts +10 -0
  253. package/dist/utils/cache/CacheInvalidatorContext.d.ts +25 -0
  254. package/dist/utils/cache/CacheInvalidatorListenerComponent.d.ts +3 -0
  255. package/dist/utils/cache/useCacheInvalidatorListener.d.ts +4 -0
  256. package/dist/utils/convertFileToBase64.d.ts +2 -0
  257. package/dist/utils/convertToFile.d.ts +2 -0
  258. package/dist/utils/cookies.d.ts +5 -0
  259. package/dist/utils/dashDefaultQueryClient.d.ts +3 -0
  260. package/dist/utils/dataUrlToBlob.d.ts +2 -0
  261. package/dist/utils/deepReplace.d.ts +2 -0
  262. package/dist/utils/getProfileMenu.d.ts +3 -0
  263. package/dist/utils/getTenantSettings.d.ts +3 -0
  264. package/dist/utils/getType.d.ts +2 -0
  265. package/dist/utils/getUserSettings.d.ts +3 -0
  266. package/dist/utils/hasCode.d.ts +2 -0
  267. package/dist/utils/index.d.ts +19 -0
  268. package/dist/utils/injectTenantStyles.d.ts +2 -0
  269. package/dist/utils/isComponent.d.ts +2 -0
  270. package/dist/utils/navEvents.d.ts +28 -0
  271. package/dist/utils/regexp.d.ts +1 -0
  272. package/dist/utils/resolveObjectPath.d.ts +2 -0
  273. package/dist/utils/setNativeValue.d.ts +2 -0
  274. package/dist/utils/slugify.d.ts +1 -0
  275. package/dist/utils/validators/emailValidator.d.ts +2 -0
  276. package/dist/utils/validators/requiredValidator.d.ts +2 -0
  277. package/dist/utils/validators/rutValidator.d.ts +2 -0
  278. package/dist/utils/validators.d.ts +3 -0
  279. package/package.json +25 -22
  280. package/src/AppAsyncWrapper.tsx +0 -42
  281. package/src/AppWrapper.tsx +0 -45
  282. package/src/DASHAdmin.tsx +0 -502
  283. package/src/DASHAdmin.tsx.old +0 -456
  284. package/src/RoutingWrapper.tsx +0 -143
  285. package/src/classes/DASHStorageClass.tsx +0 -8
  286. package/src/components/Input/RichTextField.tsx +0 -27
  287. package/src/components/Redirect.tsx +0 -46
  288. package/src/components/avatar/Avatar.tsx +0 -71
  289. package/src/components/avatar/SingleImageUploader.tsx +0 -107
  290. package/src/components/currency/Format.tsx +0 -79
  291. package/src/components/custom/Redirect.tsx +0 -23
  292. package/src/components/error/Error.tsx +0 -168
  293. package/src/components/geocoding/GeocodingField.tsx +0 -167
  294. package/src/components/i18n/BridgedLocalesMenuButton.tsx +0 -160
  295. package/src/components/i18n/LangSwitcher.tsx +0 -204
  296. package/src/components/loader/GlobalLoader.tsx +0 -49
  297. package/src/components/logs/LogFile.tsx +0 -88
  298. package/src/components/logs/LogFileById.tsx +0 -68
  299. package/src/components/logs/LogViewer.tsx +0 -43
  300. package/src/components/menu/AppMenu.tsx +0 -22
  301. package/src/components/menu/CustomMenuItemLink.tsx +0 -61
  302. package/src/components/menu/DarkToggleMode.tsx +0 -65
  303. package/src/components/menu/LanguageToggleMode.tsx +0 -120
  304. package/src/components/misc/CustomImageInput.tsx +0 -62
  305. package/src/components/misc/DASHGlobalErrorHandler.tsx +0 -194
  306. package/src/components/misc/DarkModeSwitcher.tsx +0 -112
  307. package/src/components/misc/HorizontalScroller.tsx +0 -225
  308. package/src/components/misc/LanguageSwitcher.tsx +0 -199
  309. package/src/components/misc/MUIHtmlToolTip.tsx +0 -15
  310. package/src/components/misc/MuiSimpleJsonTable.tsx +0 -279
  311. package/src/components/misc/MultiLevelTable.tsx +0 -229
  312. package/src/components/misc/NoResults.tsx +0 -28
  313. package/src/components/misc/PDFViewer.tsx +0 -85
  314. package/src/components/navigation/Breadcrumbs.tsx +0 -220
  315. package/src/components/navigation/BreadcrumbsManager.tsx +0 -310
  316. package/src/components/panel/Error.tsx +0 -168
  317. package/src/components/permission/AvailablePermissionsContext.tsx +0 -173
  318. package/src/components/permission/PermissionsSelector.tsx +0 -834
  319. package/src/components/permission/PermissionsSelectorList.tsx +0 -473
  320. package/src/components/racustombuttons/CustomRAButton.tsx +0 -87
  321. package/src/components/racustombuttons/QuickButton.tsx +0 -117
  322. package/src/components/racustombuttons/QuickEditButton.tsx +0 -115
  323. package/src/components/racustombuttons/QuickIconButton.tsx +0 -122
  324. package/src/components/scrollbar/Scrollbar.tsx +0 -31
  325. package/src/components/selects/MultiSelect.tsx +0 -53
  326. package/src/components/selects/RASearchableSelect.tsx +0 -282
  327. package/src/components/selects/RASearchableSelectChips.tsx +0 -308
  328. package/src/components/selects/SearchableSelect.tsx +0 -139
  329. package/src/components/serviceAccount/ApiKeyRevealDialog.tsx +0 -129
  330. package/src/components/serviceAccount/ServiceAccountStatusSwitch.tsx +0 -99
  331. package/src/components/subscription/BillingCycleSelectInput.tsx +0 -68
  332. package/src/components/subscription/PlanAddonsSettings.tsx +0 -563
  333. package/src/components/subscription/PlanAuditLog.tsx +0 -453
  334. package/src/components/subscription/PlanFeaturesSettings.tsx +0 -243
  335. package/src/components/subscription/PlanLimitsSettings.tsx +0 -230
  336. package/src/components/subscription/PlanMetadataSettings.tsx +0 -306
  337. package/src/components/subscription/PlanPricesSettings.tsx +0 -307
  338. package/src/components/svgelements/SvgLoading.tsx +0 -229
  339. package/src/components/svgelements/SvgLogo.tsx +0 -53
  340. package/src/components/svgelements/SvgLogoMin.tsx +0 -64
  341. package/src/components/svgelements/SvgShipping.tsx +0 -673
  342. package/src/components/tenancy/GlobalTenantWrapper.tsx +0 -84
  343. package/src/components/tenancy/TenantSwitcher.tsx +0 -514
  344. package/src/components/tenant/SettingsSections.tsx +0 -151
  345. package/src/components/tenant/TenancySettings.tsx +0 -122
  346. package/src/components/tenant/TenantAttributes.tsx +0 -153
  347. package/src/components/tenant/TenantAttributesContext.tsx +0 -163
  348. package/src/components/tenant/TenantSelector.tsx +0 -142
  349. package/src/components/tenant/TenantSettings.tsx +0 -184
  350. package/src/components/tenant/TenantSettingsContext.tsx +0 -165
  351. package/src/components/tenant/TenantTheme.tsx +0 -172
  352. package/src/components/user/AvatarComponent.tsx +0 -317
  353. package/src/components/user/TenantAvatarComponent.tsx +0 -99
  354. package/src/components/user/UserPreferences.tsx +0 -677
  355. package/src/config/ACTIONS.tsx +0 -26
  356. package/src/config/ConstantsService.tsx +0 -44
  357. package/src/config/DASHAdminSystemConstants.tsx +0 -183
  358. package/src/config/PARSERS.tsx +0 -9
  359. package/src/contexts/DashQueryClientContext.tsx +0 -113
  360. package/src/contexts/DashResourceContext.tsx +0 -34
  361. package/src/contexts/I18nBridgeContext.tsx +0 -156
  362. package/src/contexts/I18nBridgeSetter.tsx +0 -39
  363. package/src/contexts/I18nReduxSync.tsx +0 -27
  364. package/src/contexts/SubscriptionPlanFormatsProvider.tsx +0 -217
  365. package/src/contexts/SystemRequestsCache.tsx +0 -215
  366. package/src/contexts/auth/AuthContext.tsx +0 -567
  367. package/src/contexts/auth/AuthContextLocalStorage.tsx +0 -140
  368. package/src/contexts/auth/DASHAuthenticationService.tsx +0 -915
  369. package/src/contexts/auth/WindowContext.tsx +0 -15
  370. package/src/contexts/com/FCMContext.tsx +0 -415
  371. package/src/contexts/com/LaravelEchoContext.tsx +0 -41
  372. package/src/contexts/com/LaravelEchoMgr.tsx +0 -155
  373. package/src/contexts/com/components/DefaultNotificationComponent.tsx +0 -20
  374. package/src/contexts/com/components/EchoNotificationsCenter.tsx +0 -65
  375. package/src/contexts/com/components/NotificationAttributesTable.tsx +0 -54
  376. package/src/contexts/com/components/NotificationRenderer.tsx +0 -42
  377. package/src/contexts/com/components/NotificationsWidget.tsx +0 -182
  378. package/src/contexts/com/components/notificationFormats.tsx +0 -50
  379. package/src/contexts/com/useLaravelEcho.tsx +0 -432
  380. package/src/contexts/dictionary/DictionaryContext.tsx +0 -94
  381. package/src/declarations.d.ts +0 -17
  382. package/src/default-theme/DASHAppProviders.tsx +0 -117
  383. package/src/default-theme/DashThemeContext.tsx +0 -209
  384. package/src/default-theme/DashThemeContext.tsx.fast +0 -143
  385. package/src/default-theme/DashThemeContext.tsx.old +0 -306
  386. package/src/default-theme/DashThemeHelperProvider.tsx +0 -98
  387. package/src/default-theme/DomainAppLayout.tsx +0 -166
  388. package/src/default-theme/DomainHeader.tsx +0 -162
  389. package/src/default-theme/DomainTheme.tsx +0 -59
  390. package/src/default-theme/FullLayoutMarkup.tsx +0 -231
  391. package/src/default-theme/StaticLayout.tsx +0 -47
  392. package/src/default-theme/menu/AppDashboardGrid.tsx +0 -279
  393. package/src/default-theme/menu/AppMaterialMenu.tsx +0 -546
  394. package/src/default-theme/menu/AppMenuComponents/SubmenuPortal.tsx +0 -61
  395. package/src/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItem.tsx +0 -264
  396. package/src/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItems.tsx +0 -31
  397. package/src/default-theme/menu/AppMenuComponents/expanded/CollapsableSidebarMenu.tsx +0 -293
  398. package/src/default-theme/menu/AppMenuComponents/expanded/SidebarItem.tsx +0 -92
  399. package/src/default-theme/menu/AppMenuComponents/getItem.tsx +0 -17
  400. package/src/default-theme/menu/AppMenuComponents/interfaces.tsx +0 -41
  401. package/src/default-theme/menu/AppMenuComponents/submenuConstants.ts +0 -90
  402. package/src/default-theme/menu/AppSidebarMaterial.tsx +0 -339
  403. package/src/default-theme/menu/SidebarActions.tsx +0 -84
  404. package/src/default-theme/updateDomCssVariables.tsx +0 -176
  405. package/src/helpers/checkRole.tsx +0 -66
  406. package/src/helpers/parseAxiosError.tsx +0 -41
  407. package/src/hooks/audio/useAudio.tsx +0 -39
  408. package/src/hooks/axios.tsx +0 -165
  409. package/src/hooks/data/useDashboardStats.tsx +0 -65
  410. package/src/hooks/data/usePackageByClientsStats.tsx +0 -44
  411. package/src/hooks/data/usePackageByCommunesStats.tsx +0 -44
  412. package/src/hooks/data/usePackageStats.tsx +0 -69
  413. package/src/hooks/data/usePackageWithdrawDetails.tsx +0 -61
  414. package/src/hooks/data/useStats.tsx +0 -86
  415. package/src/hooks/isCurrentPath.tsx +0 -22
  416. package/src/hooks/notifications/WSMessagesManager.tsx +0 -152
  417. package/src/hooks/notifications/WSPusherManager.tsx +0 -92
  418. package/src/hooks/useBreadcrumbs.tsx +0 -329
  419. package/src/hooks/useClickOutside.tsx +0 -57
  420. package/src/hooks/useFormPersistance.tsx +0 -150
  421. package/src/hooks/useGlobalErrorMediator.tsx +0 -43
  422. package/src/hooks/useGlobalLoaderMgr.tsx +0 -21
  423. package/src/hooks/useHash.tsx +0 -27
  424. package/src/hooks/useLocalStorage.tsx +0 -196
  425. package/src/hooks/usePolyglotTranslation.tsx +0 -62
  426. package/src/hooks/usePrevious.tsx +0 -9
  427. package/src/hooks/usePrintSelected.tsx +0 -37
  428. package/src/hooks/useVirtualHash.tsx +0 -33
  429. package/src/hooks/window/useWindowSize.tsx +0 -36
  430. package/src/interfaces/IAppResourceConfig.tsx +0 -20
  431. package/src/interfaces/Log.tsx +0 -16
  432. package/src/interfaces/Tenant.tsx +0 -25
  433. package/src/interfaces/communication/IRequestAction.tsx +0 -10
  434. package/src/interfaces/communication/IRequestPayload.tsx +0 -7
  435. package/src/interfaces/communication/IResponseAction.tsx +0 -7
  436. package/src/interfaces/misc/IFlashMessage.tsx +0 -10
  437. package/src/interfaces/navigation/IAppMenu.ts +0 -14
  438. package/src/interfaces/navigation/ICollapsableSidebarMenu.ts +0 -12
  439. package/src/interfaces/navigation/IMenuItem.ts +0 -16
  440. package/src/interfaces/notifications/IModelField.tsx +0 -8
  441. package/src/interfaces/notifications/IUserNotification.tsx +0 -12
  442. package/src/interfaces/notifications/IUserNotificationPayload.tsx +0 -8
  443. package/src/interfaces/user/IGetAuth.tsx +0 -92
  444. package/src/interfaces/user/ITenantSettings.tsx +0 -3
  445. package/src/interfaces/user/IUser.tsx +0 -60
  446. package/src/interfaces/user/IUserSettings.tsx +0 -43
  447. package/src/layout/AppLayout.tsx +0 -112
  448. package/src/layout/ApplicationLayout.tsx +0 -197
  449. package/src/layout/MotionWrapper.original.tsx +0 -236
  450. package/src/layout/MotionWrapper.tsx +0 -236
  451. package/src/layout/ResourceMenu.tsx +0 -164
  452. package/src/layout/ResoureLayout.tsx +0 -105
  453. package/src/layout/TransitionWrapper.tsx +0 -125
  454. package/src/pages/ChangePassword.tsx +0 -179
  455. package/src/pages/DASHLanding.tsx +0 -22
  456. package/src/pages/DASHLightWeightLogin.tsx +0 -611
  457. package/src/pages/DASHSimpleLogin.tsx +0 -260
  458. package/src/pages/Login.tsx +0 -111
  459. package/src/pages/Profile.tsx +0 -357
  460. package/src/pages/RecoverPassword.tsx +0 -175
  461. package/src/pages/SingleImageUploader.tsx +0 -55
  462. package/src/pages/VerifyAccount.tsx +0 -128
  463. package/src/providers/authProvider.tsx +0 -217
  464. package/src/providers/dataProvider.tsx +0 -672
  465. package/src/providers/i18n/en.ts +0 -646
  466. package/src/providers/i18n/es.ts +0 -652
  467. package/src/providers/i18n/languages.tsx +0 -8
  468. package/src/providers/i18n/mergeTranslations.ts +0 -53
  469. package/src/providers/i18nProvider.tsx +0 -23
  470. package/src/react-admin-dash/RADashComponent.tsx +0 -240
  471. package/src/react-admin-dash/Resource.tsx +0 -77
  472. package/src/resources/Brand/BrandResource.tsx +0 -130
  473. package/src/resources/DASHResourceLoader.ts +0 -180
  474. package/src/resources/Log/LogResource.tsx +0 -73
  475. package/src/resources/Tenant/ImpersonateTenantResource.tsx +0 -113
  476. package/src/resources/Trash/TrashTemplate.tsx +0 -180
  477. package/src/resources/User/components/AvatarUploadField.tsx +0 -57
  478. package/src/resources/User/components/PasswordFields.tsx +0 -73
  479. package/src/resources/User/getProfileMenu.ts +0 -57
  480. package/src/resources/User/profileResource.tsx +0 -51
  481. package/src/resources/User/userLayout.tsx +0 -62
  482. package/src/resources/User/userResource.tsx +0 -111
  483. package/src/resources/User/userSchema.tsx +0 -213
  484. package/src/resources/User/usersFilters.tsx +0 -21
  485. package/src/resources.tsx +0 -280
  486. package/src/schemas/log.tsx +0 -45
  487. package/src/schemas/notification.tsx +0 -42
  488. package/src/schemas/permissions.tsx +0 -44
  489. package/src/schemas/roles.tsx +0 -48
  490. package/src/schemas/rolesDataGrid.tsx +0 -48
  491. package/src/schemas/subscription/components/SubscriptionActions.tsx +0 -153
  492. package/src/schemas/subscription/components/SubscriptionPaymentHistory.tsx +0 -127
  493. package/src/schemas/subscription/components/SubscriptionPlanFeatures.tsx +0 -162
  494. package/src/schemas/subscription/components/SubscriptionPlanPreview.tsx +0 -141
  495. package/src/schemas/subscription/components/SubscriptionPlanStats.tsx +0 -318
  496. package/src/schemas/subscription/components/SubscriptionStatusIndicator.tsx +0 -72
  497. package/src/schemas/subscription/subscriptionPlanSchema.tsx +0 -185
  498. package/src/schemas/subscription/subscriptionSchema.tsx +0 -152
  499. package/src/schemas/subscriptionPlan.ts +0 -422
  500. package/src/schemas/tenant.tsx +0 -129
  501. package/src/schemas/tenantUser.tsx +0 -96
  502. package/src/schemas/tenant_superadmin.tsx +0 -119
  503. package/src/schemas/user.tsx +0 -26
  504. package/src/systemResources.old.tsx +0 -928
  505. package/src/systemResources.tsx +0 -1369
  506. package/src/templates/ResourceTemplate.tsx +0 -240
  507. package/src/templates/ResourceTemplate.tsx.memoized_experiment +0 -350
  508. package/src/templates/ResourceTemplate.tsx.original +0 -396
  509. package/src/templates/ResourceTemplateCreate.tsx +0 -182
  510. package/src/templates/ResourceTemplateEdit.tsx +0 -176
  511. package/src/templates/ResourceTemplateFull.tsx +0 -581
  512. package/src/templates/ResourceTemplateList.tsx +0 -340
  513. package/src/templates/ResourceTemplateOld.tsx.bkup +0 -567
  514. package/src/templates/ResourceTemplateShow.tsx +0 -88
  515. package/src/templates/TrashTemplate.tsx +0 -179
  516. package/src/tenantResources.tsx +0 -223
  517. package/src/test_portal_bubbles.tsx +0 -40
  518. package/src/theme/AppHeader.tsx +0 -52
  519. package/src/theme/AppLayoutSetting.tsx +0 -33
  520. package/src/theme/AppLogo.tsx +0 -13
  521. package/src/theme/AppSidebar.tsx +0 -12
  522. package/src/theme/AppSidebarContent.tsx +0 -105
  523. package/src/theme/AppSidebarLogo.tsx +0 -48
  524. package/src/theme/components/PageTitle.tsx +0 -37
  525. package/src/utils/cache/CacheInvalidatorContext.tsx +0 -125
  526. package/src/utils/cache/CacheInvalidatorListenerComponent.tsx +0 -10
  527. package/src/utils/cache/useCacheInvalidatorListener.tsx +0 -27
  528. package/src/utils/convertFileToBase64.tsx +0 -9
  529. package/src/utils/convertToFile.tsx +0 -14
  530. package/src/utils/cookies.tsx +0 -33
  531. package/src/utils/dashDefaultQueryClient.tsx +0 -34
  532. package/src/utils/dataUrlToBlob.tsx +0 -30
  533. package/src/utils/deepReplace.tsx +0 -19
  534. package/src/utils/getProfileMenu.tsx +0 -41
  535. package/src/utils/getTenantSettings.tsx +0 -9
  536. package/src/utils/getType.tsx +0 -8
  537. package/src/utils/getUserSettings.tsx +0 -8
  538. package/src/utils/hasCode.tsx +0 -14
  539. package/src/utils/index.ts +0 -19
  540. package/src/utils/injectTenantStyles.ts +0 -28
  541. package/src/utils/isComponent.tsx +0 -45
  542. package/src/utils/navEvents.tsx +0 -91
  543. package/src/utils/prototypes.tsx +0 -5
  544. package/src/utils/regexp.tsx +0 -4
  545. package/src/utils/resolveObjectPath.tsx +0 -4
  546. package/src/utils/setNativeValue.tsx +0 -24
  547. package/src/utils/slugify.tsx +0 -11
  548. package/src/utils/validators/emailValidator.tsx +0 -6
  549. package/src/utils/validators/requiredValidator.tsx +0 -5
  550. package/src/utils/validators/rutValidator.tsx +0 -31
  551. package/src/utils/validators.tsx +0 -96
  552. /package/{src/components/permission/tsx → dist/components/tenant/AvailablePermissionsContext.d.ts} +0 -0
  553. /package/{src/components/tenant/AvailablePermissionsContext.tsx → dist/utils/prototypes.d.ts} +0 -0
@@ -1,41 +0,0 @@
1
- import { IDashAutoAdminResourceConfig } from "dash-auto-admin";
2
- import { JSX } from "react";
3
- import { SidebarPosition } from "../AppSidebarMaterial";
4
-
5
- export interface IAppMenu {
6
- //hasDashboard: boolean;
7
- children?: React.ReactNode;
8
- autoHideScroll?: boolean;
9
- menu?: IDashAutoAdminResourceConfig[];
10
- debug?: boolean;
11
- showDrawer?: boolean;
12
- navSize: "small" | "large";
13
- navExpanded: boolean;
14
- sidebarPosition?: SidebarPosition;
15
- [key: string]: any;
16
- }
17
-
18
- export interface IMenuItem {
19
- group: string;
20
- model: string;
21
- label: string;
22
- txtLabel: string;
23
- key: React.Key;
24
- to?: string;
25
- icon?: JSX.Element;
26
- children?: IMenuItem[];
27
- type?: 'group';
28
- selected?: boolean;
29
- /** When true, this menu item is a simple navigation link (not a react-admin resource) */
30
- menuOnly?: boolean;
31
- }
32
-
33
- export interface ICollapsableSidebarMenu {
34
- item: IMenuItem;
35
- showIcon?: boolean;
36
- className?: string;
37
- navExpanded: boolean;
38
- navSize: "small" | "large";
39
- level: number;
40
- sidebarPosition?: SidebarPosition;
41
- }
@@ -1,90 +0,0 @@
1
- import { CSSProperties, RefObject } from 'react';
2
- import { SidebarPosition } from '../AppSidebarMaterial';
3
-
4
- // Toggle this to force click behavior instead of hover (for debugging/testing)
5
- export const FORCE_CLICK_OPEN = false; // Set to true for click behavior
6
-
7
- // Threshold for when submenu should render at fixed top/bottom instead of relative to item
8
- export const SUBMENU_SCROLL_THRESHOLD = 10;
9
-
10
- /**
11
- * Base styles for submenu portal container
12
- */
13
- export const getSubmenuBaseStyle = (
14
- sidebarPosition: SidebarPosition,
15
- renderAtTop: boolean = false
16
- ): CSSProperties => ({
17
- zIndex: 10000,
18
- position: 'fixed',
19
- maxHeight: sidebarPosition === "top" || sidebarPosition === "bottom" ? '60vh' : (renderAtTop ? '100vh' : '80vh'),
20
- overflowY: 'auto',
21
- width: sidebarPosition === "top" || sidebarPosition === "bottom" ? 'auto' : '260px',
22
- minWidth: '200px',
23
- // The wrapper is the SINGLE owner of the panel visuals (surface, border,
24
- // shadow, radius, padding). The inner ul.dropdown must stay transparent —
25
- // if both layers draw a border/background, their edges show as a seam line.
26
- background: 'var(--primary-contrast, #252526)',
27
- border: '1px solid rgba(255,255,255,0.08)',
28
- boxShadow: '0 10px 15px -3px rgba(0,0,0,0.25), 0 4px 6px -4px rgba(0,0,0,0.4)',
29
- borderRadius: 12,
30
- padding: 6,
31
- });
32
-
33
- /**
34
- * Calculate submenu position based on sidebar position and item rect
35
- */
36
- export const calculateSubmenuPosition = (
37
- rect: DOMRect,
38
- sidebarPosition: SidebarPosition,
39
- renderAtTop: boolean = false
40
- ): CSSProperties => {
41
- switch (sidebarPosition) {
42
- case "right":
43
- // Submenu opens to the LEFT of the sidebar item
44
- return {
45
- top: rect.top,
46
- right: window.innerWidth - rect.left - 4,
47
- left: 'auto'
48
- };
49
- case "top":
50
- return {
51
- top: renderAtTop ? 120 : rect.bottom - 4,
52
- left: rect.left,
53
- right: 'auto'
54
- };
55
- case "bottom":
56
- return {
57
- bottom: renderAtTop ? 120 : (window.innerHeight - rect.top) - 4,
58
- left: rect.left,
59
- right: 'auto'
60
- };
61
- case "left":
62
- default:
63
- // Submenu opens to the RIGHT of the sidebar item
64
- return {
65
- top: rect.top,
66
- left: rect.right - 4,
67
- right: 'auto'
68
- };
69
- }
70
- };
71
-
72
- /**
73
- * Get complete submenu style by combining base style and position
74
- */
75
- export const getSubmenuStyle = (
76
- itemRef: RefObject<HTMLElement | null>,
77
- sidebarPosition: SidebarPosition,
78
- renderAtTop: boolean = false
79
- ): CSSProperties => {
80
- const rect = itemRef.current?.getBoundingClientRect();
81
- const baseStyle = getSubmenuBaseStyle(sidebarPosition, renderAtTop);
82
-
83
- if (!rect) {
84
- // Fallback if rect not available
85
- return { ...baseStyle, top: 0, left: 0 };
86
- }
87
-
88
- const positionStyle = calculateSubmenuPosition(rect, sidebarPosition, renderAtTop);
89
- return { ...baseStyle, ...positionStyle };
90
- };
@@ -1,339 +0,0 @@
1
- import * as React from 'react';
2
- import { styled, Theme, CSSObject } from '@mui/material/styles';
3
- import Box from '@mui/material/Box';
4
- import MuiDrawer from '@mui/material/Drawer';
5
- import { useMediaQuery, useTheme } from '@mui/material';
6
- import { IDASHAppState, DASH_REDUX_ACTIONS } from 'dash-admin-state';
7
- import { useDispatch, useSelector } from 'react-redux';
8
- import { IDashAutoAdminResourceConfig } from 'dash-auto-admin';
9
- import { useState } from 'react';
10
-
11
- import { useWindowSize, dashStorage } from 'dash-utils';
12
- import AppMaterialMenu from './AppMaterialMenu';
13
- import { useLocation } from 'react-router';
14
- import { isEqual } from 'lodash';
15
- import { NavEventManager } from '../../utils/navEvents';
16
-
17
- // Only keep layout settings selector - remove nav state selectors
18
- const selectLayoutSettings = (state: IDASHAppState<any, any, IDashAutoAdminResourceConfig>) => ({
19
- navStyle: state.settings.navStyle,
20
- layoutType: state.settings.layoutType,
21
- themeType: state.settings.themeType,
22
- layoutSettings: state.settings.layoutSettings,
23
- });
24
-
25
- const selectPanelSettings = (state: IDASHAppState<any, any, IDashAutoAdminResourceConfig>) =>
26
- state.common.panelSettings;
27
-
28
- // Sidebar position type
29
- export type SidebarPosition = "left" | "top" | "bottom" | "right";
30
-
31
- // Component props interface
32
- export interface AppSidebarMaterialProps {
33
- className?: string;
34
- sidebarPosition?: SidebarPosition;
35
-
36
- }
37
-
38
- const AppSidebarMaterial: React.FC<AppSidebarMaterialProps> = (props) => {
39
- const { sidebarPosition: propSidebarPosition} = props;
40
- const location = useLocation();
41
- const dispatch = useDispatch();
42
- const theme = useTheme();
43
- const isSmallScreen = useMediaQuery(theme.breakpoints.down('sm'));
44
- const isMediumOrSmaller = useMediaQuery(theme.breakpoints.down('md')); // For sidebar position switching
45
-
46
- // Only subscribe to layout settings - nav state is handled by AppSidebarMaterial
47
- const layoutState = useSelector(selectLayoutSettings, isEqual);
48
- const panelSettings = useSelector(selectPanelSettings);
49
-
50
- // Get primary and secondary sidebar positions from Redux panelSettings
51
- const primarySidebarPosition: SidebarPosition = propSidebarPosition || panelSettings?.sidebarPosition || 'left';
52
- const secondarySidebarPosition: SidebarPosition = panelSettings?.secondarySidebarPosition || 'left';
53
-
54
- // Use secondary position on medium or smaller screens (for burger menu behavior)
55
- const sidebarPosition: SidebarPosition = isMediumOrSmaller ? secondarySidebarPosition : primarySidebarPosition;
56
-
57
- // Check if position is horizontal (top/bottom) - these don't expand/collapse
58
- const isHorizontalPosition = sidebarPosition === "top" || sidebarPosition === "bottom";
59
-
60
- const {
61
- navStyle,
62
- layoutType,
63
- themeType,
64
- layoutSettings
65
- } = layoutState;
66
-
67
- // Local state for nav - initialize from localStorage for persistence
68
- const [localNavExpanded, setLocalNavExpanded] = useState(() => {
69
- const stored = dashStorage.getItem('dashNavExpanded');
70
- return stored !== null ? stored === 'true' : false;
71
- });
72
- const [localNavSize, setLocalNavSize] = useState<"small" | "large">(() => {
73
- const stored = dashStorage.getItem('dashNavSize');
74
- return (stored === 'small' || stored === 'large') ? stored : 'large';
75
- });
76
-
77
- // Create refs to track current values for Redux sync
78
- const localNavExpandedRef = React.useRef(localNavExpanded);
79
- const localNavSizeRef = React.useRef(localNavSize);
80
-
81
- // Update refs when values change
82
- React.useEffect(() => {
83
- localNavExpandedRef.current = localNavExpanded;
84
- localNavSizeRef.current = localNavSize;
85
- }, [localNavExpanded, localNavSize]);
86
-
87
- // Persist nav state to localStorage when it changes
88
- React.useEffect(() => {
89
- dashStorage.setItem('dashNavExpanded', String(localNavExpanded));
90
- }, [localNavExpanded]);
91
-
92
- React.useEffect(() => {
93
- dashStorage.setItem('dashNavSize', localNavSize);
94
- }, [localNavSize]);
95
-
96
- // Listen for nav events from other components
97
- React.useEffect(() => {
98
- const unsubscribeToggle = NavEventManager.onToggleExpanded(() => {
99
- setLocalNavExpanded(prev => !prev);
100
- });
101
-
102
- const unsubscribeSet = NavEventManager.onSetExpanded((expanded) => {
103
- setLocalNavExpanded(expanded);
104
- });
105
-
106
- // Listen for close drawer events (triggered when navigating on mobile)
107
- const unsubscribeClose = NavEventManager.onCloseDrawer(() => {
108
- if (localNavSize === 'small') {
109
- setLocalNavExpanded(false);
110
- }
111
- });
112
-
113
- return () => {
114
- unsubscribeToggle();
115
- unsubscribeSet();
116
- unsubscribeClose();
117
- };
118
- }, [localNavSize]);
119
-
120
- // Memoize logo extraction to prevent unnecessary re-renders
121
- const logos = React.useMemo(() => ({
122
- horizontalLogo: panelSettings?.horizontalLogo || <>🖥</>,
123
- squaredLogo: panelSettings?.squaredLogo || <>🖥</>,
124
- }), [panelSettings?.horizontalLogo, panelSettings?.squaredLogo]);
125
-
126
- // Body class management - keep it simple
127
- React.useEffect(() => {
128
- if (!layoutSettings || !layoutType || !themeType) return;
129
-
130
- const body = document.body;
131
-
132
- // Remove old classes
133
- body.classList.remove(
134
- layoutSettings.LAYOUT_TYPE_FULL,
135
- layoutSettings.LAYOUT_TYPE_BOXED,
136
- layoutSettings.LAYOUT_TYPE_FRAMED,
137
- layoutSettings.THEME_TYPE_DARK,
138
- layoutSettings.THEME_TYPE_LIGHT
139
- );
140
-
141
- // Add new classes
142
- body.classList.add(layoutType, themeType);
143
- }, [layoutType, themeType, layoutSettings]);
144
-
145
- // Nav style management
146
- React.useEffect(() => {
147
- if (!layoutSettings || !navStyle) return;
148
-
149
- const body = document.body;
150
- const horizontalStyles = [
151
- layoutSettings.NAV_STYLE_DEFAULT_HORIZONTAL,
152
- layoutSettings.NAV_STYLE_DARK_HORIZONTAL,
153
- layoutSettings.NAV_STYLE_INSIDE_HEADER_HORIZONTAL,
154
- layoutSettings.NAV_STYLE_ABOVE_HEADER,
155
- layoutSettings.NAV_STYLE_BELOW_HEADER
156
- ];
157
-
158
- const isHorizontal = horizontalStyles.includes(navStyle);
159
- body.classList.toggle('full-scroll', isHorizontal);
160
- body.classList.toggle('horizontal-layout', isHorizontal);
161
- }, [navStyle, layoutSettings]);
162
-
163
- // Location-based classes - ONLY dispatch to Redux on location changes
164
- const previousLocationClassRef = React.useRef<string>('');
165
-
166
- React.useEffect(() => {
167
- const body = document.body;
168
- let formattedPath = '';
169
-
170
- if (location.pathname && location.pathname !== '/') {
171
- formattedPath = location.pathname.replace(/^\/|\/$/g, '').replace(/\//g, '-');
172
- }
173
-
174
- const currentLocationClass = formattedPath ? `location-${formattedPath}` : '';
175
-
176
- // Remove previous class
177
- if (previousLocationClassRef.current) {
178
- body.classList.remove(previousLocationClassRef.current);
179
- }
180
-
181
- // Add new class
182
- if (currentLocationClass) {
183
- body.classList.add(currentLocationClass);
184
- previousLocationClassRef.current = currentLocationClass;
185
- } else {
186
- previousLocationClassRef.current = '';
187
- }
188
-
189
- // 🎯 ONLY sync local nav state to Redux on location changes (not on every nav toggle)
190
- return () => {
191
- if (previousLocationClassRef.current) {
192
- body.classList.remove(previousLocationClassRef.current);
193
- }
194
-
195
- // Use ref values to avoid stale closures and prevent infinite loops
196
- dispatch(DASH_REDUX_ACTIONS.setNavExpanded(localNavExpandedRef.current));
197
- dispatch(DASH_REDUX_ACTIONS.setNavSize(localNavSizeRef.current));
198
- };
199
- }, [location.pathname, dispatch]); // ✅ Removed localNavExpanded and localNavSize from deps
200
-
201
- const windowSize = useWindowSize();
202
-
203
- // Update parent layout className whenever local nav state or position changes
204
- React.useEffect(() => {
205
- const layoutElement = document.getElementById('dash-app-layout');
206
- if (layoutElement) {
207
- // Remove existing nav-related classes
208
- layoutElement.classList.remove('expanded', 'collapsed', 'small', 'large');
209
- layoutElement.classList.remove('sidebar-position-left', 'sidebar-position-right', 'sidebar-position-top', 'sidebar-position-bottom');
210
-
211
- // Add current state classes
212
- layoutElement.classList.add(localNavExpanded ? 'expanded' : 'collapsed');
213
- layoutElement.classList.add(localNavSize);
214
- layoutElement.classList.add(`sidebar-position-${sidebarPosition}`);
215
- }
216
- }, [localNavExpanded, localNavSize, sidebarPosition]);
217
-
218
- const toggleDrawer = (e) => {
219
- e.preventDefault();
220
- e.stopPropagation();
221
- setLocalNavExpanded(!localNavExpanded);
222
- // 🎯 NO Redux dispatch here - only local state update
223
- // Redux will be synced only on location changes
224
- };
225
-
226
- // isSmallScreen and theme are already declared at the top of the component
227
- const isLargeScreen = useMediaQuery(theme.breakpoints.up('lg'));
228
-
229
- // Track previous breakpoint states to detect changes
230
- const [prevIsSmall, setPrevIsSmall] = useState<boolean | null>(null);
231
- const [prevIsLarge, setPrevIsLarge] = useState<boolean | null>(null);
232
- const [prevIsMediumOrSmaller, setPrevIsMediumOrSmaller] = useState<boolean | null>(null);
233
-
234
- React.useEffect(() => {
235
- // Initial load - set initial values
236
- if (prevIsSmall === null || prevIsLarge === null || prevIsMediumOrSmaller === null) {
237
- // On small/medium screens, ALWAYS force small+collapsed regardless of stored prefs.
238
- // This ensures the sidebar never appears as a permanent drawer on mobile.
239
- if (isMediumOrSmaller) {
240
- setLocalNavSize("small");
241
- setLocalNavExpanded(false);
242
- } else {
243
- // Large screen: respect stored preferences or apply defaults
244
- const hasStoredNavSize = dashStorage.getItem('dashNavSize') !== null;
245
- const hasStoredNavExpanded = dashStorage.getItem('dashNavExpanded') !== null;
246
-
247
- if (!hasStoredNavSize) {
248
- setLocalNavSize("large");
249
- }
250
- if (!hasStoredNavExpanded) {
251
- setLocalNavExpanded(isLargeScreen);
252
- }
253
- }
254
-
255
- setPrevIsSmall(isSmallScreen);
256
- setPrevIsLarge(isLargeScreen);
257
- setPrevIsMediumOrSmaller(isMediumOrSmaller);
258
- return;
259
- }
260
-
261
- // Check if we crossed the medium breakpoint (sidebar position switch)
262
- if (prevIsMediumOrSmaller !== isMediumOrSmaller) {
263
- setLocalNavSize(isMediumOrSmaller ? "small" : "large");
264
-
265
- if (isMediumOrSmaller) {
266
- // Crossed into medium or smaller screen - collapse nav
267
- setLocalNavExpanded(false);
268
- } else {
269
- // Crossed into larger screen - expand nav
270
- setLocalNavExpanded(true);
271
- }
272
-
273
- setPrevIsMediumOrSmaller(isMediumOrSmaller);
274
- }
275
-
276
- // Check if we crossed the small breakpoint
277
- if (prevIsSmall !== isSmallScreen) {
278
- if (isSmallScreen) {
279
- // Crossed into small screen - collapse nav
280
- setLocalNavExpanded(false);
281
- }
282
-
283
- setPrevIsSmall(isSmallScreen);
284
- }
285
-
286
- // Check if we crossed the large breakpoint
287
- if (prevIsLarge !== isLargeScreen) {
288
- if (isLargeScreen && !isMediumOrSmaller) {
289
- // Only expand when crossing into large AND not in secondary mode
290
- setLocalNavExpanded(true);
291
- }
292
-
293
- setPrevIsLarge(isLargeScreen);
294
- }
295
- // 🎯 NO Redux dispatch here - only local state updates
296
- // Redux will be synced only on location changes
297
- }, [isSmallScreen, isLargeScreen, isMediumOrSmaller, prevIsSmall, prevIsLarge, prevIsMediumOrSmaller]);
298
-
299
- // For horizontal positions (top/bottom), always use expanded/large. For vertical (left/right), use local state.
300
- const effectiveNavExpanded = isHorizontalPosition ? true : localNavExpanded;
301
- const effectiveNavSize = isHorizontalPosition ? "large" : localNavSize;
302
-
303
- const drawerOpen = effectiveNavSize === "large" || (effectiveNavSize === "small" && effectiveNavExpanded);
304
- const drawerClassName = `sidebar-drawer`;
305
-
306
- return (
307
- <Box sx={{ display: 'flex' }}>
308
-
309
- <MuiDrawer
310
- variant={localNavSize === "small" ? 'temporary' : 'permanent'}
311
- anchor={sidebarPosition}
312
- open={drawerOpen}
313
- className={drawerClassName}
314
- data-sidebar-position={sidebarPosition}
315
- onClose={() => {
316
- if (localNavSize === "small") {
317
- setLocalNavExpanded(false);
318
- // 🎯 NO Redux dispatch here - only local state update
319
- }
320
- }}
321
- ModalProps={{
322
- keepMounted: true, // Better open performance on mobile
323
- }}
324
- >
325
- <AppMaterialMenu
326
- navSize={effectiveNavSize}
327
- navExpanded={effectiveNavExpanded}
328
- logos={logos}
329
- onToggleDrawer={isHorizontalPosition ? undefined : toggleDrawer}
330
- sidebarPosition={sidebarPosition}
331
- />
332
- </MuiDrawer>
333
- </Box>
334
- );
335
- };
336
-
337
- //AppSidebarMaterial.whyDidYouRender = true;
338
-
339
- export default AppSidebarMaterial;
@@ -1,84 +0,0 @@
1
- import * as React from 'react';
2
- import { Box } from '@mui/material';
3
- import { useSelector } from 'react-redux';
4
- import { IDASHAppState } from 'dash-admin-state';
5
- import { IDashAutoAdminResourceConfig } from 'dash-auto-admin';
6
- import AvatarComponent from '../../components/user/AvatarComponent';
7
- import BridgedLocalesMenuButton from '../../components/i18n/BridgedLocalesMenuButton';
8
- import DarkToggleMode from '../../components/menu/DarkToggleMode';
9
- import { useAuthContext } from '../../contexts/auth/AuthContext';
10
- import { SidebarPosition } from './AppSidebarMaterial';
11
- import LangSwitcher from '../../components/i18n/LangSwitcher';
12
-
13
- export interface SidebarActionsProps {
14
- sidebarPosition?: SidebarPosition;
15
- navExpanded?: boolean;
16
- }
17
-
18
- /**
19
- * Reusable component for sidebar actions: Avatar, Locale Selector, Dark Mode Toggle, and HeaderToolBar
20
- * Renders horizontally for top/bottom sidebar positions, vertically for left/right
21
- *
22
- * When headerToolBarReplace is true in Redux state, ONLY renders the HeaderToolBar component,
23
- * replacing the default actions (Avatar, Locale, DarkMode toggle).
24
- */
25
- const SidebarActions: React.FC<SidebarActionsProps> = ({
26
- sidebarPosition = "left",
27
- navExpanded = true
28
- }) => {
29
- const authContext = useAuthContext();
30
- const isHorizontal = sidebarPosition === "top" || sidebarPosition === "bottom";
31
-
32
- // Get HeaderToolBar and headerToolBarReplace from Redux
33
- const HeaderToolBar = useSelector(
34
- (state: IDASHAppState<any, any, IDashAutoAdminResourceConfig>) =>
35
- state.common.headerToolBar,
36
- );
37
- const headerToolBarReplace = useSelector(
38
- (state: IDASHAppState<any, any, IDashAutoAdminResourceConfig>) =>
39
- state.common.headerToolBarReplace,
40
- );
41
-
42
- return (
43
- <Box
44
- className="sidebar-actions"
45
- sx={{
46
- display: 'flex',
47
- alignItems: 'center',
48
- gap: 1,
49
- //flexDirection: isHorizontal ? 'row' : (navExpanded ? 'column-reverse' : 'column'),
50
-
51
- ...(isHorizontal ? {
52
- marginLeft: 'auto',
53
- flexShrink: 0,
54
- paddingRight: 2,
55
- flexDirection: navExpanded ? 'row-reverse' : 'row'
56
- }:
57
- {
58
-
59
- flexShrink: 0,
60
- flexDirection: navExpanded ? 'column' : 'column'
61
- }
62
- ),
63
- }}
64
- >
65
- {authContext?.authenticated && authContext.user?.id !== 'guest' && (
66
- <AvatarComponent sidebarPosition={sidebarPosition} />
67
- )}
68
-
69
- {HeaderToolBar && headerToolBarReplace ? (
70
- // Replace mode: Only render the custom HeaderToolBar
71
- (<HeaderToolBar />)
72
- ) : (
73
- // Default mode: Render all actions
74
- (<>
75
- {HeaderToolBar && <HeaderToolBar />}
76
- {authContext?.authenticated ? <BridgedLocalesMenuButton /> : <LangSwitcher />}
77
- <DarkToggleMode />
78
- </>)
79
- )}
80
- </Box>
81
- );
82
- };
83
-
84
- export default SidebarActions;