@dashadmin/dash-admin 1.3.25 → 1.3.26

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 (511) hide show
  1. package/dist/AppAsyncWrapper.js +30 -1
  2. package/dist/AppWrapper.js +35 -1
  3. package/dist/DASHAdmin.js +312 -1
  4. package/dist/RoutingWrapper.js +76 -1
  5. package/dist/classes/DASHStorageClass.js +15 -1
  6. package/dist/components/Input/RichTextField.js +26 -1
  7. package/dist/components/Redirect.js +56 -1
  8. package/dist/components/avatar/Avatar.js +72 -1
  9. package/dist/components/avatar/SingleImageUploader.js +46 -1
  10. package/dist/components/currency/Format.js +71 -1
  11. package/dist/components/custom/Redirect.js +20 -1
  12. package/dist/components/error/Error.js +161 -1
  13. package/dist/components/geocoding/GeocodingField.js +133 -1
  14. package/dist/components/i18n/BridgedLocalesMenuButton.js +126 -1
  15. package/dist/components/i18n/LangSwitcher.js +196 -1
  16. package/dist/components/loader/GlobalLoader.js +71 -1
  17. package/dist/components/logs/LogFile.js +99 -1
  18. package/dist/components/logs/LogFileById.js +75 -1
  19. package/dist/components/logs/LogViewer.js +33 -1
  20. package/dist/components/menu/AppMenu.js +11 -1
  21. package/dist/components/menu/CustomMenuItemLink.js +77 -1
  22. package/dist/components/menu/DarkToggleMode.js +47 -1
  23. package/dist/components/menu/LanguageToggleMode.js +99 -1
  24. package/dist/components/misc/CustomImageInput.js +54 -1
  25. package/dist/components/misc/DASHGlobalErrorHandler.js +159 -1
  26. package/dist/components/misc/DarkModeSwitcher.js +40 -1
  27. package/dist/components/misc/LanguageSwitcher.js +193 -1
  28. package/dist/components/misc/MUIHtmlToolTip.js +50 -1
  29. package/dist/components/misc/MuiSimpleJsonTable.js +178 -1
  30. package/dist/components/misc/MultiLevelTable.js +124 -1
  31. package/dist/components/misc/NoResults.js +17 -1
  32. package/dist/components/misc/PDFViewer.js +86 -1
  33. package/dist/components/navigation/Breadcrumbs.js +178 -1
  34. package/dist/components/navigation/BreadcrumbsManager.js +194 -1
  35. package/dist/components/navigation/index.js +8 -1
  36. package/dist/components/panel/Error.js +161 -1
  37. package/dist/components/permission/AvailablePermissionsContext.js +157 -1
  38. package/dist/components/permission/PermissionsSelector.js +719 -1
  39. package/dist/components/permission/PermissionsSelectorList.js +400 -1
  40. package/dist/components/racustombuttons/CustomRAButton.js +94 -1
  41. package/dist/components/racustombuttons/QuickButton.js +109 -1
  42. package/dist/components/racustombuttons/QuickEditButton.js +114 -1
  43. package/dist/components/racustombuttons/QuickIconButton.js +119 -1
  44. package/dist/components/scrollbar/Scrollbar.js +52 -1
  45. package/dist/components/selects/MultiSelect.js +42 -1
  46. package/dist/components/selects/RASearchableSelect.js +207 -1
  47. package/dist/components/selects/RASearchableSelectChips.js +225 -1
  48. package/dist/components/selects/SearchableSelect.js +128 -1
  49. package/dist/components/subscription/BillingCycleSelectInput.js +50 -1
  50. package/dist/components/subscription/PlanAddonsSettings.js +396 -1
  51. package/dist/components/subscription/PlanAuditLog.js +345 -1
  52. package/dist/components/subscription/PlanFeaturesSettings.js +151 -1
  53. package/dist/components/subscription/PlanLimitsSettings.js +168 -1
  54. package/dist/components/subscription/PlanMetadataSettings.js +219 -1
  55. package/dist/components/subscription/PlanPricesSettings.js +222 -1
  56. package/dist/components/subscription/index.js +12 -1
  57. package/dist/components/svgelements/SvgLoading.js +330 -1
  58. package/dist/components/svgelements/SvgLogo.js +70 -1
  59. package/dist/components/svgelements/SvgLogoMin.js +76 -1
  60. package/dist/components/svgelements/SvgShipping.js +1001 -1
  61. package/dist/components/tenant/TenantAttributes.js +107 -1
  62. package/dist/components/tenant/TenantAttributesContext.js +150 -1
  63. package/dist/components/tenant/TenantSelector.js +160 -1
  64. package/dist/components/tenant/TenantSettings.js +107 -1
  65. package/dist/components/tenant/TenantSettingsContext.js +152 -1
  66. package/dist/components/tenant/TenantTheme.js +112 -1
  67. package/dist/components/user/AvatarComponent.js +270 -1
  68. package/dist/components/user/TenantAvatarComponent.js +83 -1
  69. package/dist/components/user/UserPreferences.js +422 -1
  70. package/dist/config/ACTIONS.js +25 -1
  71. package/dist/config/ConstantsService.js +25 -1
  72. package/dist/config/DASHAdminSystemConstants.js +137 -1
  73. package/dist/config/PARSERS.js +9 -1
  74. package/dist/contexts/DashQueryClientContext.js +78 -1
  75. package/dist/contexts/DashResourceContext.js +21 -1
  76. package/dist/contexts/I18nBridgeContext.js +123 -1
  77. package/dist/contexts/I18nBridgeSetter.js +29 -1
  78. package/dist/contexts/I18nReduxSync.js +16 -1
  79. package/dist/contexts/SubscriptionPlanFormatsProvider.js +175 -1
  80. package/dist/contexts/SystemRequestsCache.js +194 -1
  81. package/dist/contexts/auth/AuthContext.js +396 -1
  82. package/dist/contexts/auth/AuthContextLocalStorage.js +118 -1
  83. package/dist/contexts/auth/DASHAuthenticationService.js +679 -1
  84. package/dist/contexts/auth/WindowContext.js +10 -1
  85. package/dist/contexts/auth/index.js +2 -1
  86. package/dist/contexts/com/FCMContext.js +378 -1
  87. package/dist/contexts/com/LaravelEchoContext.js +45 -1
  88. package/dist/contexts/com/LaravelEchoMgr.js +121 -1
  89. package/dist/contexts/com/components/DefaultNotificationComponent.js +31 -1
  90. package/dist/contexts/com/components/NotificationAttributesTable.js +28 -1
  91. package/dist/contexts/com/components/NotificationRenderer.js +36 -1
  92. package/dist/contexts/com/components/NotificationsWidget.js +142 -1
  93. package/dist/contexts/com/components/notificationFormats.js +15 -1
  94. package/dist/contexts/com/useLaravelEcho.js +340 -1
  95. package/dist/contexts/dictionary/DictionaryContext.js +43 -1
  96. package/dist/default-theme/DASHAppProviders.js +86 -1
  97. package/dist/default-theme/DashThemeContext.js +146 -1
  98. package/dist/default-theme/DashThemeHelperProvider.js +54 -1
  99. package/dist/default-theme/DomainAppLayout.js +126 -1
  100. package/dist/default-theme/DomainHeader.js +114 -1
  101. package/dist/default-theme/DomainTheme.js +60 -1
  102. package/dist/default-theme/FullLayoutMarkup.js +55 -1
  103. package/dist/default-theme/StaticLayout.js +36 -1
  104. package/dist/default-theme/index.js +19 -1
  105. package/dist/default-theme/menu/AppMaterialMenu.js +364 -1
  106. package/dist/default-theme/menu/AppMenuComponents/SubmenuPortal.js +33 -1
  107. package/dist/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItem.js +239 -1
  108. package/dist/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItems.js +22 -1
  109. package/dist/default-theme/menu/AppMenuComponents/expanded/CollapsableSidebarMenu.js +209 -1
  110. package/dist/default-theme/menu/AppMenuComponents/expanded/SidebarItem.js +71 -1
  111. package/dist/default-theme/menu/AppMenuComponents/getItem.js +7 -1
  112. package/dist/default-theme/menu/AppMenuComponents/submenuConstants.js +78 -1
  113. package/dist/default-theme/menu/AppSidebarMaterial.js +232 -1
  114. package/dist/default-theme/menu/SidebarActions.js +75 -1
  115. package/dist/default-theme/updateDomCssVariables.js +134 -1
  116. package/dist/helpers/checkRole.js +14 -1
  117. package/dist/helpers/parseAxiosError.js +28 -2
  118. package/dist/hooks/audio/useAudio.js +24 -1
  119. package/dist/hooks/axios.js +52 -1
  120. package/dist/hooks/data/useDashboardStats.js +88 -1
  121. package/dist/hooks/data/usePackageByClientsStats.js +51 -1
  122. package/dist/hooks/data/usePackageByCommunesStats.js +51 -1
  123. package/dist/hooks/data/usePackageStats.js +88 -1
  124. package/dist/hooks/data/usePackageWithdrawDetails.js +69 -1
  125. package/dist/hooks/data/useStats.js +94 -1
  126. package/dist/hooks/isCurrentPath.js +18 -1
  127. package/dist/hooks/notifications/WSMessagesManager.js +128 -1
  128. package/dist/hooks/notifications/WSPusherManager.js +70 -1
  129. package/dist/hooks/useBreadcrumbs.js +208 -1
  130. package/dist/hooks/useClickOutside.js +18 -1
  131. package/dist/hooks/useFormPersistance.js +129 -1
  132. package/dist/hooks/useGlobalErrorMediator.js +37 -1
  133. package/dist/hooks/useGlobalLoaderMgr.js +20 -1
  134. package/dist/hooks/useHash.js +24 -1
  135. package/dist/hooks/useLocalStorage.js +68 -1
  136. package/dist/hooks/usePolyglotTranslation.js +57 -1
  137. package/dist/hooks/usePrevious.js +12 -1
  138. package/dist/hooks/usePrintSelected.js +30 -1
  139. package/dist/hooks/useVirtualHash.js +28 -1
  140. package/dist/hooks/window/useWindowSize.js +23 -1
  141. package/dist/index.js +120 -97
  142. package/dist/interfaces.js +6 -1
  143. package/dist/layout/AppLayout.js +36 -1
  144. package/dist/layout/ApplicationLayout.js +110 -1
  145. package/dist/layout/MotionWrapper.js +182 -1
  146. package/dist/layout/MotionWrapper.original.js +182 -1
  147. package/dist/layout/ResourceMenu.js +87 -1
  148. package/dist/layout/ResoureLayout.js +47 -1
  149. package/dist/layout/TransitionWrapper.js +83 -2
  150. package/dist/pages/ChangePassword.js +198 -1
  151. package/dist/pages/DASHLanding.js +9 -1
  152. package/dist/pages/DASHLightWeightLogin.js +495 -1
  153. package/dist/pages/DASHSimpleLogin.js +231 -1
  154. package/dist/pages/Login.js +113 -1
  155. package/dist/pages/Profile.js +347 -1
  156. package/dist/pages/RecoverPassword.js +175 -1
  157. package/dist/pages/SingleImageUploader.js +40 -1
  158. package/dist/pages/VerifyAccount.js +129 -1
  159. package/dist/providers/authProvider.js +186 -1
  160. package/dist/providers/dataProvider.js +468 -1
  161. package/dist/providers/i18n/en.js +514 -1
  162. package/dist/providers/i18n/es.js +520 -1
  163. package/dist/providers/i18n/languages.js +8 -1
  164. package/dist/providers/i18nProvider.js +23 -1
  165. package/dist/react-admin-dash/RADashComponent.js +210 -1
  166. package/dist/react-admin-dash/Resource.js +62 -1
  167. package/dist/resources/Brand/BrandResource.js +106 -1
  168. package/dist/resources/DASHResourceLoader.js +104 -1
  169. package/dist/resources/Log/LogResource.js +59 -1
  170. package/dist/resources/Tenant/ImpersonateTenantResource.js +113 -1
  171. package/dist/resources/Trash/TrashTemplate.js +195 -1
  172. package/dist/resources.js +259 -1
  173. package/dist/schemas/log.js +45 -1
  174. package/dist/schemas/notification.js +39 -1
  175. package/dist/schemas/permissions.js +44 -1
  176. package/dist/schemas/roles.js +48 -1
  177. package/dist/schemas/rolesDataGrid.js +48 -1
  178. package/dist/schemas/subscription/components/SubscriptionActions.js +172 -1
  179. package/dist/schemas/subscription/components/SubscriptionPaymentHistory.js +101 -1
  180. package/dist/schemas/subscription/components/SubscriptionPlanFeatures.js +115 -1
  181. package/dist/schemas/subscription/components/SubscriptionPlanPreview.js +92 -1
  182. package/dist/schemas/subscription/components/SubscriptionPlanStats.js +181 -1
  183. package/dist/schemas/subscription/components/SubscriptionStatusIndicator.js +70 -1
  184. package/dist/schemas/subscription/subscriptionPlanSchema.js +184 -1
  185. package/dist/schemas/subscription/subscriptionSchema.js +147 -1
  186. package/dist/schemas/subscriptionPlan.js +397 -1
  187. package/dist/schemas/tenant.js +122 -1
  188. package/dist/schemas/tenantUser.js +94 -1
  189. package/dist/schemas/tenant_superadmin.js +118 -1
  190. package/dist/schemas/user.js +26 -1
  191. package/dist/systemResources.js +1039 -1
  192. package/dist/systemResources.old.js +668 -1
  193. package/dist/templates/ResourceTemplate.js +196 -1
  194. package/dist/templates/ResourceTemplateCreate.js +144 -1
  195. package/dist/templates/ResourceTemplateEdit.js +147 -1
  196. package/dist/templates/ResourceTemplateFull.js +518 -1
  197. package/dist/templates/ResourceTemplateList.js +295 -1
  198. package/dist/templates/ResourceTemplateShow.js +45 -1
  199. package/dist/templates/TrashTemplate.js +175 -1
  200. package/dist/tenantResources.js +206 -1
  201. package/dist/test_portal_bubbles.js +37 -1
  202. package/dist/theme/AppHeader.js +60 -1
  203. package/dist/theme/AppLayoutSetting.js +34 -1
  204. package/dist/theme/AppLogo.js +7 -1
  205. package/dist/theme/AppSidebar.js +30 -1
  206. package/dist/theme/AppSidebarContent.js +84 -1
  207. package/dist/theme/AppSidebarLogo.js +42 -1
  208. package/dist/theme/components/PageTitle.js +61 -1
  209. package/dist/utils/cache/CacheInvalidatorContext.js +100 -1
  210. package/dist/utils/cache/CacheInvalidatorListenerComponent.js +10 -1
  211. package/dist/utils/cache/useCacheInvalidatorListener.js +17 -1
  212. package/dist/utils/convertFileToBase64.js +10 -1
  213. package/dist/utils/convertToFile.js +12 -1
  214. package/dist/utils/cookies.js +45 -1
  215. package/dist/utils/dashDefaultQueryClient.js +15 -1
  216. package/dist/utils/dataUrlToBlob.js +23 -1
  217. package/dist/utils/deepReplace.js +17 -1
  218. package/dist/utils/getProfileMenu.js +31 -1
  219. package/dist/utils/getTenantSettings.js +9 -1
  220. package/dist/utils/getType.js +10 -1
  221. package/dist/utils/getUserSettings.js +9 -1
  222. package/dist/utils/hasCode.js +14 -1
  223. package/dist/utils/index.js +19 -1
  224. package/dist/utils/injectTenantStyles.js +19 -1
  225. package/dist/utils/isComponent.js +23 -1
  226. package/dist/utils/navEvents.js +75 -1
  227. package/dist/utils/prototypes.js +5 -1
  228. package/dist/utils/regexp.js +7 -1
  229. package/dist/utils/resolveObjectPath.js +5 -1
  230. package/dist/utils/setNativeValue.js +17 -1
  231. package/dist/utils/slugify.js +7 -1
  232. package/dist/utils/validators/emailValidator.js +8 -1
  233. package/dist/utils/validators/requiredValidator.js +7 -1
  234. package/dist/utils/validators/rutValidator.js +25 -1
  235. package/dist/utils/validators.js +57 -1
  236. package/package.json +153 -69
  237. package/src/AppAsyncWrapper.tsx +42 -0
  238. package/src/AppWrapper.tsx +45 -0
  239. package/src/DASHAdmin.tsx +501 -0
  240. package/src/RoutingWrapper.tsx +139 -0
  241. package/src/classes/DASHStorageClass.tsx +8 -0
  242. package/src/components/Input/RichTextField.tsx +27 -0
  243. package/src/components/Redirect.tsx +46 -0
  244. package/src/components/avatar/Avatar.tsx +67 -0
  245. package/src/components/avatar/SingleImageUploader.tsx +53 -0
  246. package/src/components/currency/Format.tsx +77 -0
  247. package/src/components/custom/Redirect.tsx +23 -0
  248. package/src/components/error/Error.tsx +168 -0
  249. package/src/components/geocoding/GeocodingField.tsx +167 -0
  250. package/src/components/i18n/BridgedLocalesMenuButton.tsx +159 -0
  251. package/src/components/i18n/LangSwitcher.tsx +204 -0
  252. package/src/components/loader/GlobalLoader.tsx +56 -0
  253. package/src/components/logs/LogFile.tsx +88 -0
  254. package/src/components/logs/LogFileById.tsx +68 -0
  255. package/src/components/logs/LogViewer.tsx +43 -0
  256. package/src/components/menu/AppMenu.tsx +22 -0
  257. package/src/components/menu/CustomMenuItemLink.tsx +61 -0
  258. package/src/components/menu/DarkToggleMode.tsx +65 -0
  259. package/src/components/menu/LanguageToggleMode.tsx +120 -0
  260. package/src/components/misc/CustomImageInput.tsx +62 -0
  261. package/src/components/misc/DASHGlobalErrorHandler.tsx +194 -0
  262. package/src/components/misc/DarkModeSwitcher.tsx +112 -0
  263. package/src/components/misc/LanguageSwitcher.tsx +199 -0
  264. package/src/components/misc/MUIHtmlToolTip.tsx +15 -0
  265. package/src/components/misc/MuiSimpleJsonTable.tsx +279 -0
  266. package/src/components/misc/MultiLevelTable.tsx +229 -0
  267. package/src/components/misc/NoResults.tsx +25 -0
  268. package/src/components/misc/PDFViewer.tsx +85 -0
  269. package/src/components/navigation/Breadcrumbs.tsx +220 -0
  270. package/src/components/navigation/BreadcrumbsManager.tsx +310 -0
  271. package/src/components/navigation/index.tsx +5 -0
  272. package/src/components/panel/Error.tsx +168 -0
  273. package/src/components/permission/AvailablePermissionsContext.tsx +173 -0
  274. package/src/components/permission/PermissionsSelector.tsx +819 -0
  275. package/src/components/permission/PermissionsSelectorList.tsx +468 -0
  276. package/src/components/permission/tsx +0 -0
  277. package/src/components/racustombuttons/CustomRAButton.tsx +87 -0
  278. package/src/components/racustombuttons/QuickButton.tsx +117 -0
  279. package/src/components/racustombuttons/QuickEditButton.tsx +115 -0
  280. package/src/components/racustombuttons/QuickIconButton.tsx +122 -0
  281. package/src/components/scrollbar/Scrollbar.tsx +31 -0
  282. package/src/components/selects/MultiSelect.tsx +53 -0
  283. package/src/components/selects/RASearchableSelect.tsx +279 -0
  284. package/src/components/selects/RASearchableSelectChips.tsx +304 -0
  285. package/src/components/selects/SearchableSelect.tsx +135 -0
  286. package/src/components/subscription/BillingCycleSelectInput.tsx +68 -0
  287. package/src/components/subscription/PlanAddonsSettings.tsx +522 -0
  288. package/src/components/subscription/PlanAuditLog.tsx +439 -0
  289. package/src/components/subscription/PlanFeaturesSettings.tsx +223 -0
  290. package/src/components/subscription/PlanLimitsSettings.tsx +230 -0
  291. package/src/components/subscription/PlanMetadataSettings.tsx +284 -0
  292. package/src/components/subscription/PlanPricesSettings.tsx +295 -0
  293. package/src/components/subscription/index.ts +7 -0
  294. package/src/components/svgelements/SvgLoading.tsx +229 -0
  295. package/src/components/svgelements/SvgLogo.tsx +53 -0
  296. package/src/components/svgelements/SvgLogoMin.tsx +64 -0
  297. package/src/components/svgelements/SvgShipping.tsx +673 -0
  298. package/src/components/tenant/AvailablePermissionsContext.tsx +0 -0
  299. package/src/components/tenant/TenantAttributes.tsx +153 -0
  300. package/src/components/tenant/TenantAttributesContext.tsx +163 -0
  301. package/src/components/tenant/TenantSelector.tsx +139 -0
  302. package/src/components/tenant/TenantSettings.tsx +172 -0
  303. package/src/components/tenant/TenantSettingsContext.tsx +165 -0
  304. package/src/components/tenant/TenantTheme.tsx +172 -0
  305. package/src/components/user/AvatarComponent.tsx +301 -0
  306. package/src/components/user/TenantAvatarComponent.tsx +99 -0
  307. package/src/components/user/UserPreferences.tsx +642 -0
  308. package/src/config/ACTIONS.tsx +26 -0
  309. package/src/config/ConstantsService.tsx +44 -0
  310. package/src/config/DASHAdminSystemConstants.tsx +182 -0
  311. package/src/config/PARSERS.tsx +9 -0
  312. package/src/contexts/DashQueryClientContext.tsx +113 -0
  313. package/src/contexts/DashResourceContext.tsx +34 -0
  314. package/src/contexts/I18nBridgeContext.tsx +156 -0
  315. package/src/contexts/I18nBridgeSetter.tsx +39 -0
  316. package/src/contexts/I18nReduxSync.tsx +27 -0
  317. package/src/contexts/SubscriptionPlanFormatsProvider.tsx +217 -0
  318. package/src/contexts/SystemRequestsCache.tsx +215 -0
  319. package/src/contexts/auth/AuthContext.tsx +553 -0
  320. package/src/contexts/auth/AuthContextLocalStorage.tsx +140 -0
  321. package/src/contexts/auth/DASHAuthenticationService.tsx +917 -0
  322. package/src/contexts/auth/WindowContext.tsx +15 -0
  323. package/src/contexts/auth/index.tsx +3 -0
  324. package/src/contexts/com/FCMContext.tsx +415 -0
  325. package/src/contexts/com/LaravelEchoContext.tsx +41 -0
  326. package/src/contexts/com/LaravelEchoMgr.tsx +155 -0
  327. package/src/contexts/com/components/DefaultNotificationComponent.tsx +20 -0
  328. package/src/contexts/com/components/NotificationAttributesTable.tsx +54 -0
  329. package/src/contexts/com/components/NotificationRenderer.tsx +42 -0
  330. package/src/contexts/com/components/NotificationsWidget.tsx +182 -0
  331. package/src/contexts/com/components/notificationFormats.tsx +50 -0
  332. package/src/contexts/com/useLaravelEcho.tsx +432 -0
  333. package/src/contexts/dictionary/DictionaryContext.tsx +94 -0
  334. package/src/default-theme/DASHAppProviders.tsx +117 -0
  335. package/src/default-theme/DashThemeContext.tsx +218 -0
  336. package/src/default-theme/DashThemeHelperProvider.tsx +98 -0
  337. package/src/default-theme/DomainAppLayout.tsx +166 -0
  338. package/src/default-theme/DomainHeader.tsx +162 -0
  339. package/src/default-theme/DomainTheme.tsx +59 -0
  340. package/src/default-theme/FullLayoutMarkup.tsx +250 -0
  341. package/src/default-theme/StaticLayout.tsx +47 -0
  342. package/src/default-theme/index.tsx +11 -0
  343. package/src/default-theme/menu/AppMaterialMenu.tsx +545 -0
  344. package/src/default-theme/menu/AppMenuComponents/SubmenuPortal.tsx +56 -0
  345. package/src/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItem.tsx +254 -0
  346. package/src/default-theme/menu/AppMenuComponents/collapsed/CollapsedSidebarItems.tsx +31 -0
  347. package/src/default-theme/menu/AppMenuComponents/expanded/CollapsableSidebarMenu.tsx +276 -0
  348. package/src/default-theme/menu/AppMenuComponents/expanded/SidebarItem.tsx +91 -0
  349. package/src/default-theme/menu/AppMenuComponents/getItem.tsx +17 -0
  350. package/src/default-theme/menu/AppMenuComponents/interfaces.tsx +41 -0
  351. package/src/default-theme/menu/AppMenuComponents/submenuConstants.ts +85 -0
  352. package/src/default-theme/menu/AppSidebarMaterial.tsx +339 -0
  353. package/src/default-theme/menu/SidebarActions.tsx +84 -0
  354. package/src/default-theme/updateDomCssVariables.tsx +176 -0
  355. package/src/helpers/checkRole.tsx +66 -0
  356. package/src/helpers/parseAxiosError.tsx +41 -0
  357. package/src/hooks/audio/useAudio.tsx +39 -0
  358. package/src/hooks/axios.tsx +62 -0
  359. package/src/hooks/data/useDashboardStats.tsx +65 -0
  360. package/src/hooks/data/usePackageByClientsStats.tsx +44 -0
  361. package/src/hooks/data/usePackageByCommunesStats.tsx +44 -0
  362. package/src/hooks/data/usePackageStats.tsx +69 -0
  363. package/src/hooks/data/usePackageWithdrawDetails.tsx +61 -0
  364. package/src/hooks/data/useStats.tsx +86 -0
  365. package/src/hooks/isCurrentPath.tsx +22 -0
  366. package/src/hooks/notifications/WSMessagesManager.tsx +152 -0
  367. package/src/hooks/notifications/WSPusherManager.tsx +92 -0
  368. package/src/hooks/useBreadcrumbs.tsx +329 -0
  369. package/src/hooks/useClickOutside.tsx +17 -0
  370. package/src/hooks/useFormPersistance.tsx +150 -0
  371. package/src/hooks/useGlobalErrorMediator.tsx +43 -0
  372. package/src/hooks/useGlobalLoaderMgr.tsx +21 -0
  373. package/src/hooks/useHash.tsx +27 -0
  374. package/src/hooks/useLocalStorage.tsx +196 -0
  375. package/src/hooks/usePolyglotTranslation.tsx +62 -0
  376. package/src/hooks/usePrevious.tsx +9 -0
  377. package/src/hooks/usePrintSelected.tsx +37 -0
  378. package/src/hooks/useVirtualHash.tsx +33 -0
  379. package/src/hooks/window/useWindowSize.tsx +36 -0
  380. package/src/index.tsx +110 -0
  381. package/src/interfaces/IAppResourceConfig.tsx +20 -0
  382. package/src/interfaces/Log.tsx +16 -0
  383. package/src/interfaces/Tenant.tsx +25 -0
  384. package/src/interfaces/communication/IActions.tsx +5 -0
  385. package/src/interfaces/communication/INotification.tsx +21 -0
  386. package/src/interfaces/communication/IPayload.tsx +3 -0
  387. package/src/interfaces/communication/IRequestAction.tsx +10 -0
  388. package/src/interfaces/communication/IRequestPayload.tsx +7 -0
  389. package/src/interfaces/communication/IResponseAction.tsx +7 -0
  390. package/src/interfaces/misc/IAny.tsx +3 -0
  391. package/src/interfaces/misc/IFlashMessage.tsx +10 -0
  392. package/src/interfaces/navigation/IAppMenu.ts +14 -0
  393. package/src/interfaces/navigation/ICollapsableSidebarMenu.ts +12 -0
  394. package/src/interfaces/navigation/IMenuItem.ts +16 -0
  395. package/src/interfaces/notifications/IModel.tsx +6 -0
  396. package/src/interfaces/notifications/IModelField.tsx +8 -0
  397. package/src/interfaces/notifications/IUserNotification.tsx +12 -0
  398. package/src/interfaces/notifications/IUserNotificationData.tsx +13 -0
  399. package/src/interfaces/notifications/IUserNotificationPayload.tsx +8 -0
  400. package/src/interfaces/user/IGetAuth.tsx +92 -0
  401. package/src/interfaces/user/ITenantSettings.tsx +3 -0
  402. package/src/interfaces/user/IUser.tsx +60 -0
  403. package/src/interfaces/user/IUserSettings.tsx +43 -0
  404. package/src/interfaces.tsx +6 -0
  405. package/src/layout/AppLayout.tsx +112 -0
  406. package/src/layout/ApplicationLayout.tsx +197 -0
  407. package/src/layout/MotionWrapper.original.tsx +236 -0
  408. package/src/layout/MotionWrapper.tsx +236 -0
  409. package/src/layout/ResourceMenu.tsx +164 -0
  410. package/src/layout/ResoureLayout.tsx +105 -0
  411. package/src/layout/TransitionWrapper.tsx +125 -0
  412. package/src/pages/ChangePassword.tsx +179 -0
  413. package/src/pages/DASHLanding.tsx +22 -0
  414. package/src/pages/DASHLightWeightLogin.tsx +610 -0
  415. package/src/pages/DASHSimpleLogin.tsx +260 -0
  416. package/src/pages/Login.tsx +111 -0
  417. package/src/pages/Profile.tsx +394 -0
  418. package/src/pages/RecoverPassword.tsx +166 -0
  419. package/src/pages/SingleImageUploader.tsx +55 -0
  420. package/src/pages/VerifyAccount.tsx +128 -0
  421. package/src/providers/authProvider.tsx +210 -0
  422. package/src/providers/dataProvider.tsx +672 -0
  423. package/src/providers/i18n/en.ts +533 -0
  424. package/src/providers/i18n/es.ts +539 -0
  425. package/src/providers/i18n/languages.tsx +5 -0
  426. package/src/providers/i18nProvider.tsx +23 -0
  427. package/src/react-admin-dash/RADashComponent.tsx +240 -0
  428. package/src/react-admin-dash/Resource.tsx +77 -0
  429. package/src/resources/Brand/BrandResource.tsx +130 -0
  430. package/src/resources/DASHResourceLoader.ts +180 -0
  431. package/src/resources/Log/LogResource.tsx +73 -0
  432. package/src/resources/Tenant/ImpersonateTenantResource.tsx +113 -0
  433. package/src/resources/Trash/TrashTemplate.tsx +180 -0
  434. package/src/resources.tsx +280 -0
  435. package/src/schemas/log.tsx +45 -0
  436. package/src/schemas/notification.tsx +42 -0
  437. package/src/schemas/permissions.tsx +44 -0
  438. package/src/schemas/roles.tsx +48 -0
  439. package/src/schemas/rolesDataGrid.tsx +48 -0
  440. package/src/schemas/subscription/components/SubscriptionActions.tsx +153 -0
  441. package/src/schemas/subscription/components/SubscriptionPaymentHistory.tsx +120 -0
  442. package/src/schemas/subscription/components/SubscriptionPlanFeatures.tsx +155 -0
  443. package/src/schemas/subscription/components/SubscriptionPlanPreview.tsx +128 -0
  444. package/src/schemas/subscription/components/SubscriptionPlanStats.tsx +268 -0
  445. package/src/schemas/subscription/components/SubscriptionStatusIndicator.tsx +72 -0
  446. package/src/schemas/subscription/subscriptionPlanSchema.tsx +185 -0
  447. package/src/schemas/subscription/subscriptionSchema.tsx +152 -0
  448. package/src/schemas/subscriptionPlan.ts +422 -0
  449. package/src/schemas/tenant.tsx +129 -0
  450. package/src/schemas/tenantUser.tsx +96 -0
  451. package/src/schemas/tenant_superadmin.tsx +119 -0
  452. package/src/schemas/user.tsx +26 -0
  453. package/src/systemResources.old.tsx +928 -0
  454. package/src/systemResources.tsx +1135 -0
  455. package/src/templates/ResourceTemplate.tsx +240 -0
  456. package/src/templates/ResourceTemplateCreate.tsx +167 -0
  457. package/src/templates/ResourceTemplateEdit.tsx +176 -0
  458. package/src/templates/ResourceTemplateFull.tsx +581 -0
  459. package/src/templates/ResourceTemplateList.tsx +340 -0
  460. package/src/templates/ResourceTemplateShow.tsx +88 -0
  461. package/src/templates/TrashTemplate.tsx +179 -0
  462. package/src/tenantResources.tsx +223 -0
  463. package/src/test_portal_bubbles.tsx +40 -0
  464. package/src/theme/AppHeader.tsx +52 -0
  465. package/src/theme/AppLayoutSetting.tsx +33 -0
  466. package/src/theme/AppLogo.tsx +13 -0
  467. package/src/theme/AppSidebar.tsx +12 -0
  468. package/src/theme/AppSidebarContent.tsx +105 -0
  469. package/src/theme/AppSidebarLogo.tsx +48 -0
  470. package/src/theme/components/PageTitle.tsx +37 -0
  471. package/src/utils/cache/CacheInvalidatorContext.tsx +125 -0
  472. package/src/utils/cache/CacheInvalidatorListenerComponent.tsx +10 -0
  473. package/src/utils/cache/useCacheInvalidatorListener.tsx +27 -0
  474. package/src/utils/convertFileToBase64.tsx +9 -0
  475. package/src/utils/convertToFile.tsx +14 -0
  476. package/src/utils/cookies.tsx +33 -0
  477. package/src/utils/dashDefaultQueryClient.tsx +34 -0
  478. package/src/utils/dataUrlToBlob.tsx +30 -0
  479. package/src/utils/deepReplace.tsx +19 -0
  480. package/src/utils/getProfileMenu.tsx +41 -0
  481. package/src/utils/getTenantSettings.tsx +9 -0
  482. package/src/utils/getType.tsx +8 -0
  483. package/src/utils/getUserSettings.tsx +8 -0
  484. package/src/utils/hasCode.tsx +14 -0
  485. package/src/utils/index.ts +19 -0
  486. package/src/utils/injectTenantStyles.ts +28 -0
  487. package/src/utils/isComponent.tsx +45 -0
  488. package/src/utils/navEvents.tsx +91 -0
  489. package/src/utils/prototypes.tsx +5 -0
  490. package/src/utils/regexp.tsx +4 -0
  491. package/src/utils/resolveObjectPath.tsx +4 -0
  492. package/src/utils/setNativeValue.tsx +24 -0
  493. package/src/utils/slugify.tsx +11 -0
  494. package/src/utils/validators/emailValidator.tsx +6 -0
  495. package/src/utils/validators/requiredValidator.tsx +5 -0
  496. package/src/utils/validators/rutValidator.tsx +31 -0
  497. package/src/utils/validators.tsx +96 -0
  498. package/dist/ChangePassword-DmWAQAX_.js +0 -152
  499. package/dist/Login-t41HMhVT.js +0 -101
  500. package/dist/Profile-By-gdPUd.js +0 -294
  501. package/dist/RecoverPassword-DzPdbkg2.js +0 -149
  502. package/dist/VerifyAccount-Bofaxe5w.js +0 -99
  503. package/dist/index-gfebuoyf.js +0 -21614
  504. /package/dist/{components/permission/tsx → declarations.d.js} +0 -0
  505. /package/{dist → src}/DASHAdmin.tsx.old +0 -0
  506. /package/{dist → src}/declarations.d.ts +0 -0
  507. /package/{dist → src}/default-theme/DashThemeContext.tsx.fast +0 -0
  508. /package/{dist → src}/default-theme/DashThemeContext.tsx.old +0 -0
  509. /package/{dist → src}/templates/ResourceTemplate.tsx.memoized_experiment +0 -0
  510. /package/{dist → src}/templates/ResourceTemplate.tsx.original +0 -0
  511. /package/{dist → src}/templates/ResourceTemplateOld.tsx.bkup +0 -0
@@ -1 +1,196 @@
1
- import{Fragment as U,jsx as s,jsxs as X}from"react/jsx-runtime";import{useState as i,useRef as f,useEffect as g}from"react";import{Avatar as H,useMediaQuery as N,useTheme as B}from"@mui/material";import W from"@mui/icons-material/Translate";import A from"react-dom";import{useWindowSize as I}from"@dashadmin/dash-utils";import{useLocales as O,useLocaleState as V}from"../../hooks/usePolyglotTranslation";import{useBridgedChangeLocale as $}from"../../contexts/I18nBridgeContext";const F=s(W,{}),Q=w=>{const{icon:Y=F,languages:L}=w,[q,G]=i(null),p=O({locales:L}),[c,M]=V(),E=$(),b=B(),R=N(b.breakpoints.down("md")),[a,h]=i(!1),[l,r]=i(!1),u=f(null),T=f(null),[v,S]=i({top:0,left:0}),t=f(null),d=I();g(()=>{document.body.classList.contains("webview")?h(!0):h(!1)},[]);const x=e=>{const n=p.find(o=>o.locale===e);return n?n.name:""},y=e=>()=>{M(e),E(e),r(!1)},m=()=>{if(u.current&&d.width){const e=u.current.getBoundingClientRect(),n=200;let o=e.left+window.scrollX;o+n>d.width&&(o=d.width-n-10),o<10&&(o=10),S({top:e.top+window.scrollY+30,left:o})}},z=e=>{e.preventDefault(),t.current&&(clearTimeout(t.current),t.current=null),r(!0),m()},D=e=>{e.preventDefault(),r(n=>!n),m()},C=()=>{a||(t.current=setTimeout(()=>{r(!1)},100))},P=()=>{t.current&&(clearTimeout(t.current),t.current=null)},k=()=>{a||r(!1)};return g(()=>()=>{t.current&&clearTimeout(t.current)},[]),g(()=>{const e=()=>{l&&m()};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[l,R]),X(U,{children:[s("div",{ref:u,...a?{onClick:D}:{onMouseEnter:z,onMouseLeave:C},children:s(H,{sizes:"small",sx:{fontSize:"1rem"},style:{width:"30px",height:"30px",minHeight:"30px"},className:"dash-icon-button-color dash-icon-button-bg",children:x(c).substring(0,2).toUpperCase()})}),l&&A.createPortal(s("div",{ref:T,className:"dash-language-menu-portal",onMouseEnter:a?void 0:P,onMouseLeave:a?void 0:k,children:s("div",{className:`dash-language-menu ${l?"show":""}`,style:{zIndex:1e4,position:"absolute",top:v.top,left:v.left},children:p.map(e=>s("div",{className:`dash-language-menu-item ${e.locale===c?"selected":""}`,onClick:y(e.locale),style:{padding:"8px 16px",cursor:"pointer",backgroundColor:e.locale===c?"rgba(0, 0, 0, 0.08)":"transparent",minWidth:"150px"},children:e.name},e.locale))})}),document.body)]})};var se=Q;export{se as default};
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
21
+ import { useState, useRef, useEffect } from "react";
22
+ import { Avatar, useMediaQuery, useTheme } from "@mui/material";
23
+ import LanguageIcon from "@mui/icons-material/Translate";
24
+ import ReactDOM from "react-dom";
25
+ import { useWindowSize } from "dash-utils";
26
+ import { useLocales, useLocaleState } from "../../hooks/usePolyglotTranslation";
27
+ import { useBridgedChangeLocale } from "../../contexts/I18nBridgeContext";
28
+ const DefaultIcon = /* @__PURE__ */ jsx(LanguageIcon, {});
29
+ const LangSwitcher = (props) => {
30
+ const { icon = DefaultIcon, languages: languagesProp } = props;
31
+ const [anchorEl, setAnchorEl] = useState(null);
32
+ const languages = useLocales({ locales: languagesProp });
33
+ const [locale, setLocale] = useLocaleState();
34
+ const changeBridgedLocale = useBridgedChangeLocale();
35
+ const theme = useTheme();
36
+ const isSmallScreen = useMediaQuery(theme.breakpoints.down("md"));
37
+ const [webView, setWebView] = useState(false);
38
+ const [open, setOpen] = useState(false);
39
+ const avatarRef = useRef(null);
40
+ const menuRef = useRef(null);
41
+ const [menuPosition, setMenuPosition] = useState({ top: 0, left: 0 });
42
+ const timeoutRef = useRef(null);
43
+ const windowSize = useWindowSize();
44
+ useEffect(() => {
45
+ if (document.body.classList.contains("webview")) {
46
+ setWebView(true);
47
+ } else {
48
+ setWebView(false);
49
+ }
50
+ }, []);
51
+ const getNameForLocale = (locale2) => {
52
+ const language = languages.find((language2) => language2.locale === locale2);
53
+ return language ? language.name : "";
54
+ };
55
+ const changeLocale = (newLocale) => () => {
56
+ setLocale(newLocale);
57
+ changeBridgedLocale(newLocale);
58
+ setOpen(false);
59
+ };
60
+ const calculateMenuPosition = () => {
61
+ if (avatarRef.current && windowSize.width) {
62
+ const rect = avatarRef.current.getBoundingClientRect();
63
+ const menuWidth = 200;
64
+ let left = rect.left + window.scrollX;
65
+ if (left + menuWidth > windowSize.width) {
66
+ left = windowSize.width - menuWidth - 10;
67
+ }
68
+ if (left < 10) {
69
+ left = 10;
70
+ }
71
+ setMenuPosition({
72
+ top: rect.top + window.scrollY + 30,
73
+ left
74
+ });
75
+ }
76
+ };
77
+ const handleLanguageMouseEnter = (e) => {
78
+ e.preventDefault();
79
+ if (timeoutRef.current) {
80
+ clearTimeout(timeoutRef.current);
81
+ timeoutRef.current = null;
82
+ }
83
+ setOpen(true);
84
+ calculateMenuPosition();
85
+ };
86
+ const handleLanguageClick = (e) => {
87
+ e.preventDefault();
88
+ setOpen((prevOpen) => !prevOpen);
89
+ calculateMenuPosition();
90
+ };
91
+ const handleMouseLeave = () => {
92
+ if (!webView) {
93
+ timeoutRef.current = setTimeout(() => {
94
+ setOpen(false);
95
+ }, 100);
96
+ }
97
+ };
98
+ const handleMenuMouseEnter = () => {
99
+ if (timeoutRef.current) {
100
+ clearTimeout(timeoutRef.current);
101
+ timeoutRef.current = null;
102
+ }
103
+ };
104
+ const handleMenuMouseLeave = () => {
105
+ if (!webView) {
106
+ setOpen(false);
107
+ }
108
+ };
109
+ useEffect(() => {
110
+ return () => {
111
+ if (timeoutRef.current) {
112
+ clearTimeout(timeoutRef.current);
113
+ }
114
+ };
115
+ }, []);
116
+ useEffect(() => {
117
+ const handleResize = () => {
118
+ if (open) {
119
+ calculateMenuPosition();
120
+ }
121
+ };
122
+ window.addEventListener("resize", handleResize);
123
+ return () => window.removeEventListener("resize", handleResize);
124
+ }, [open, isSmallScreen]);
125
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
126
+ /* @__PURE__ */ jsx(
127
+ "div",
128
+ __spreadProps(__spreadValues({
129
+ ref: avatarRef
130
+ }, !webView ? {
131
+ onMouseEnter: handleLanguageMouseEnter,
132
+ onMouseLeave: handleMouseLeave
133
+ } : {
134
+ onClick: handleLanguageClick
135
+ }), {
136
+ children: /* @__PURE__ */ jsx(
137
+ Avatar,
138
+ {
139
+ sizes: "small",
140
+ sx: { fontSize: "1rem" },
141
+ style: {
142
+ width: "30px",
143
+ height: "30px",
144
+ minHeight: "30px"
145
+ },
146
+ className: "dash-icon-button-color dash-icon-button-bg",
147
+ children: getNameForLocale(locale).substring(0, 2).toUpperCase()
148
+ }
149
+ )
150
+ })
151
+ ),
152
+ open && ReactDOM.createPortal(
153
+ /* @__PURE__ */ jsx(
154
+ "div",
155
+ {
156
+ ref: menuRef,
157
+ className: "dash-language-menu-portal",
158
+ onMouseEnter: !webView ? handleMenuMouseEnter : void 0,
159
+ onMouseLeave: !webView ? handleMenuMouseLeave : void 0,
160
+ children: /* @__PURE__ */ jsx(
161
+ "div",
162
+ {
163
+ className: `dash-language-menu ${open ? "show" : ""}`,
164
+ style: {
165
+ zIndex: 1e4,
166
+ position: "absolute",
167
+ top: menuPosition.top,
168
+ left: menuPosition.left
169
+ },
170
+ children: languages.map((language) => /* @__PURE__ */ jsx(
171
+ "div",
172
+ {
173
+ className: `dash-language-menu-item ${language.locale === locale ? "selected" : ""}`,
174
+ onClick: changeLocale(language.locale),
175
+ style: {
176
+ padding: "8px 16px",
177
+ cursor: "pointer",
178
+ backgroundColor: language.locale === locale ? "rgba(0, 0, 0, 0.08)" : "transparent",
179
+ minWidth: "150px"
180
+ },
181
+ children: language.name
182
+ },
183
+ language.locale
184
+ ))
185
+ }
186
+ )
187
+ }
188
+ ),
189
+ document.body
190
+ )
191
+ ] });
192
+ };
193
+ var LangSwitcher_default = LangSwitcher;
194
+ export {
195
+ LangSwitcher_default as default
196
+ };
@@ -1 +1,71 @@
1
- import{Fragment as c,jsx as o}from"react/jsx-runtime";import{deepmerge as s}from"@mui/utils";import{useEffect as d}from"react";import i from"@achmadk/react-loading-overlay";import n from"../../hooks/useGlobalLoaderMgr";const p=({styles:r,children:a,...g})=>{const[e,f]=n();d(()=>{console.log("GlobalLoader loading state changed:",e)},[e]);const l=s({wrapper:{width:"100%",height:"100%",overflow:e?"hidden":"scroll"},overlay:t=>({...t})},r);return e?o(i,{className:"loadingOverlay",active:e,styles:l,spinner:a}):o(c,{})};var G=p;export{G as default};
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ var __objRest = (source, exclude) => {
18
+ var target = {};
19
+ for (var prop in source)
20
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
21
+ target[prop] = source[prop];
22
+ if (source != null && __getOwnPropSymbols)
23
+ for (var prop of __getOwnPropSymbols(source)) {
24
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
25
+ target[prop] = source[prop];
26
+ }
27
+ return target;
28
+ };
29
+ import { Fragment, jsx } from "react/jsx-runtime";
30
+ import { deepmerge } from "@mui/utils";
31
+ import { useEffect } from "react";
32
+ import LoadingOverlay from "react-loading-overlay-ts";
33
+ import useGlobalLoaderMgr from "../../hooks/useGlobalLoaderMgr";
34
+ const GlobalLoader = (_a) => {
35
+ var _b = _a, {
36
+ styles,
37
+ children
38
+ } = _b, props = __objRest(_b, [
39
+ "styles",
40
+ "children"
41
+ ]);
42
+ const [loading, setLoading] = useGlobalLoaderMgr();
43
+ useEffect(() => {
44
+ console.log("GlobalLoader loading state changed:", loading);
45
+ 1;
46
+ }, [loading]);
47
+ const _styles = deepmerge(
48
+ {
49
+ wrapper: {
50
+ width: "100%",
51
+ height: "100%",
52
+ overflow: loading ? "hidden" : "scroll"
53
+ },
54
+ overlay: (base) => __spreadValues({}, base)
55
+ },
56
+ styles
57
+ );
58
+ return loading ? /* @__PURE__ */ jsx(
59
+ LoadingOverlay,
60
+ {
61
+ className: "loadingOverlay",
62
+ active: loading,
63
+ styles: _styles,
64
+ spinner: children
65
+ }
66
+ ) : /* @__PURE__ */ jsx(Fragment, {});
67
+ };
68
+ var GlobalLoader_default = GlobalLoader;
69
+ export {
70
+ GlobalLoader_default as default
71
+ };
@@ -1 +1,99 @@
1
- import{jsx as n,jsxs as u}from"react/jsx-runtime";import{Button as f,DialogActions as F,DialogContent as h,TextareaAutosize as x}from"@mui/material";import{useEffect as A,useState as r}from"react";import{useRecordContext as m}from"react-admin";import L from"../../hooks/axios";import{saveAs as D}from"file-saver";const c=({log:t})=>{const{axios:e}=L(),[o,g]=r(null),[i,s]=r(null),p=async()=>{let a=t.filepath.split("/")[t.filepath.split("/").length-1];D(o,a)},d=async a=>{if(t?.filepath){const{data:l}=await e.get(`/system/log/${t.id}/download`,{responseType:"blob"});let C=await l.text();g(l),s(C)}else s("Proceso completado correctamente")};return A(()=>{d(t)},[]),u(h,{children:[n(x,{style:{width:"100%"},maxRows:50,defaultValue:i!==""?i:" Cargando... "}),t?.filepath&&u(F,{children:[n(f,{onClick:()=>p(),children:"Descargar"})," "]})]})},I=({method:t,attribute:e})=>{const o=m();return n(c,{log:o})},w=({method:t,attribute:e})=>{const o=m();return n(c,{log:o})},T=({method:t,attribute:e,resourceConfig:o})=>{switch(t){case"edit":case"create":return n(I,{attribute:e,method:t,resourceConfig:o});case"view":return n(w,{attribute:e,method:t,resourceConfig:o})}};var S=T;export{c as LogTxtFileComponent,S as default};
1
+ var __async = (__this, __arguments, generator) => {
2
+ return new Promise((resolve, reject) => {
3
+ var fulfilled = (value) => {
4
+ try {
5
+ step(generator.next(value));
6
+ } catch (e) {
7
+ reject(e);
8
+ }
9
+ };
10
+ var rejected = (value) => {
11
+ try {
12
+ step(generator.throw(value));
13
+ } catch (e) {
14
+ reject(e);
15
+ }
16
+ };
17
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
+ step((generator = generator.apply(__this, __arguments)).next());
19
+ });
20
+ };
21
+ import { jsx, jsxs } from "react/jsx-runtime";
22
+ import {
23
+ Button,
24
+ DialogActions,
25
+ DialogContent,
26
+ TextareaAutosize
27
+ } from "@mui/material";
28
+ import { useEffect, useState } from "react";
29
+ import { useRecordContext } from "react-admin";
30
+ import useAxios from "../../hooks/axios";
31
+ import { saveAs } from "file-saver";
32
+ const LogTxtFileComponent = ({
33
+ log
34
+ }) => {
35
+ const { axios } = useAxios();
36
+ const [logFile, setlogFile] = useState(null);
37
+ const [logContent, setlogContent] = useState(null);
38
+ const downloadLog = () => __async(null, null, function* () {
39
+ let fileName = log.filepath.split("/")[log.filepath.split("/").length - 1];
40
+ saveAs(logFile, fileName);
41
+ });
42
+ const preLoadLog = (logID) => __async(null, null, function* () {
43
+ if (log == null ? void 0 : log.filepath) {
44
+ const { data: file } = yield axios.get(`/system/log/${log.id}/download`, {
45
+ responseType: "blob"
46
+ });
47
+ let fileContent = yield file.text();
48
+ setlogFile(file);
49
+ setlogContent(fileContent);
50
+ } else {
51
+ setlogContent("Proceso completado correctamente");
52
+ }
53
+ });
54
+ useEffect(() => {
55
+ preLoadLog(log);
56
+ }, []);
57
+ return /* @__PURE__ */ jsxs(DialogContent, { children: [
58
+ /* @__PURE__ */ jsx(
59
+ TextareaAutosize,
60
+ {
61
+ style: { width: "100%" },
62
+ maxRows: 50,
63
+ defaultValue: logContent !== "" ? logContent : " Cargando... "
64
+ }
65
+ ),
66
+ (log == null ? void 0 : log.filepath) && /* @__PURE__ */ jsxs(DialogActions, { children: [
67
+ /* @__PURE__ */ jsx(Button, { onClick: () => downloadLog(), children: "Descargar" }),
68
+ " "
69
+ ] })
70
+ ] });
71
+ };
72
+ const LogTxtFileEdit = ({
73
+ method,
74
+ attribute
75
+ }) => {
76
+ const log = useRecordContext();
77
+ return /* @__PURE__ */ jsx(LogTxtFileComponent, { log });
78
+ };
79
+ const LogTxtFileView = ({
80
+ method,
81
+ attribute
82
+ }) => {
83
+ const log = useRecordContext();
84
+ return /* @__PURE__ */ jsx(LogTxtFileComponent, { log });
85
+ };
86
+ const LogTxtFile = ({ method, attribute, resourceConfig }) => {
87
+ switch (method) {
88
+ case "edit":
89
+ case "create":
90
+ return /* @__PURE__ */ jsx(LogTxtFileEdit, { attribute, method, resourceConfig });
91
+ case "view":
92
+ return /* @__PURE__ */ jsx(LogTxtFileView, { attribute, method, resourceConfig });
93
+ }
94
+ };
95
+ var LogFile_default = LogTxtFile;
96
+ export {
97
+ LogTxtFileComponent,
98
+ LogFile_default as default
99
+ };
@@ -1 +1,75 @@
1
- import{jsx as l,jsxs as B}from"react/jsx-runtime";import{Button as m,DialogActions as y,DialogContent as C,TextareaAutosize as L}from"@mui/material";import{useEffect as h,useState as a}from"react";import w from"../../hooks/axios";import{saveAs as F}from"file-saver";const x=({id:e})=>{const{axios:n}=w(),[r,g]=a(null),[s,i]=a(null),[o,c]=a(null),p=async()=>{if(o){let t=o.split("/")[o.split("/").length-1];F(r,t)}},f=async()=>{try{const{data:t}=await n.get(`/system/log/${e}/download`,{responseType:"blob"}),{data:d}=await n.get(`/system/log/${e}`);c(d.filepath);let u=await t.text();g(t),i(u)}catch{i("Error al cargar el archivo")}};return h(()=>{f()},[e]),B(C,{children:[l(L,{style:{width:"100%"},maxRows:50,defaultValue:s!==""?s:" Cargando... "}),o&&l(y,{children:l(m,{onClick:p,children:"Descargar"})})]})};var v=x;export{x as LogFileById,v as default};
1
+ var __async = (__this, __arguments, generator) => {
2
+ return new Promise((resolve, reject) => {
3
+ var fulfilled = (value) => {
4
+ try {
5
+ step(generator.next(value));
6
+ } catch (e) {
7
+ reject(e);
8
+ }
9
+ };
10
+ var rejected = (value) => {
11
+ try {
12
+ step(generator.throw(value));
13
+ } catch (e) {
14
+ reject(e);
15
+ }
16
+ };
17
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
18
+ step((generator = generator.apply(__this, __arguments)).next());
19
+ });
20
+ };
21
+ import { jsx, jsxs } from "react/jsx-runtime";
22
+ import {
23
+ Button,
24
+ DialogActions,
25
+ DialogContent,
26
+ TextareaAutosize
27
+ } from "@mui/material";
28
+ import { useEffect, useState } from "react";
29
+ import useAxios from "../../hooks/axios";
30
+ import { saveAs } from "file-saver";
31
+ const LogFileById = ({ id }) => {
32
+ const { axios } = useAxios();
33
+ const [logFile, setLogFile] = useState(null);
34
+ const [logContent, setLogContent] = useState(null);
35
+ const [filepath, setFilepath] = useState(null);
36
+ const downloadLog = () => __async(null, null, function* () {
37
+ if (filepath) {
38
+ let fileName = filepath.split("/")[filepath.split("/").length - 1];
39
+ saveAs(logFile, fileName);
40
+ }
41
+ });
42
+ const preLoadLog = () => __async(null, null, function* () {
43
+ try {
44
+ const { data: file } = yield axios.get(`/system/log/${id}/download`, {
45
+ responseType: "blob"
46
+ });
47
+ const { data: logData } = yield axios.get(`/system/log/${id}`);
48
+ setFilepath(logData.filepath);
49
+ let fileContent = yield file.text();
50
+ setLogFile(file);
51
+ setLogContent(fileContent);
52
+ } catch (error) {
53
+ setLogContent("Error al cargar el archivo");
54
+ }
55
+ });
56
+ useEffect(() => {
57
+ preLoadLog();
58
+ }, [id]);
59
+ return /* @__PURE__ */ jsxs(DialogContent, { children: [
60
+ /* @__PURE__ */ jsx(
61
+ TextareaAutosize,
62
+ {
63
+ style: { width: "100%" },
64
+ maxRows: 50,
65
+ defaultValue: logContent !== "" ? logContent : " Cargando... "
66
+ }
67
+ ),
68
+ filepath && /* @__PURE__ */ jsx(DialogActions, { children: /* @__PURE__ */ jsx(Button, { onClick: downloadLog, children: "Descargar" }) })
69
+ ] });
70
+ };
71
+ var LogFileById_default = LogFileById;
72
+ export {
73
+ LogFileById,
74
+ LogFileById_default as default
75
+ };
@@ -1 +1,33 @@
1
- import{Fragment as r,jsx as e}from"react/jsx-runtime";import{useRecordContext as i}from"react-admin";const m=({log:t})=>e(r,{children:e("h1",{children:"Log"})}),s=({method:t,attribute:n})=>{const o=i();return e(r,{children:o&&e(m,{log:o})})},a=({method:t,attribute:n})=>{const o=i();return e(r,{children:o&&e(m,{log:o})})},u=({method:t,attribute:n,resourceConfig:o})=>{switch(t){case"edit":case"create":return e(s,{attribute:n,method:t,resourceConfig:o});case"view":return e(a,{attribute:n,method:t,resourceConfig:o})}};var l=u;export{m as LogViewerComponent,l as default};
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ import { useRecordContext } from "react-admin";
3
+ const LogViewerComponent = ({ log }) => {
4
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("h1", { children: "Log" }) });
5
+ };
6
+ const LogViewerEdit = ({
7
+ method,
8
+ attribute
9
+ }) => {
10
+ const log = useRecordContext();
11
+ return /* @__PURE__ */ jsx(Fragment, { children: log && /* @__PURE__ */ jsx(LogViewerComponent, { log }) });
12
+ };
13
+ const LogViewerView = ({
14
+ method,
15
+ attribute
16
+ }) => {
17
+ const log = useRecordContext();
18
+ return /* @__PURE__ */ jsx(Fragment, { children: log && /* @__PURE__ */ jsx(LogViewerComponent, { log }) });
19
+ };
20
+ const LogViewer = ({ method, attribute, resourceConfig }) => {
21
+ switch (method) {
22
+ case "edit":
23
+ case "create":
24
+ return /* @__PURE__ */ jsx(LogViewerEdit, { attribute, method, resourceConfig });
25
+ case "view":
26
+ return /* @__PURE__ */ jsx(LogViewerView, { attribute, method, resourceConfig });
27
+ }
28
+ };
29
+ var LogViewer_default = LogViewer;
30
+ export {
31
+ LogViewerComponent,
32
+ LogViewer_default as default
33
+ };
@@ -1 +1,11 @@
1
- import{Fragment as e,jsx as a}from"react/jsx-runtime";const n=({hasDashboard:o,autoHideScroll:r=!1,children:t})=>a(e,{children:"Deprecated"});export{n as AppMenu};
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ const AppMenu = ({
3
+ hasDashboard,
4
+ autoHideScroll = false,
5
+ children
6
+ }) => {
7
+ return /* @__PURE__ */ jsx(Fragment, { children: "Deprecated" });
8
+ };
9
+ export {
10
+ AppMenu
11
+ };
@@ -1 +1,77 @@
1
- import{jsx as P,jsxs as h}from"react/jsx-runtime";import{useCallback as d}from"react";import I from"clsx";import{Link as L,useMatch as R}from"react-router-dom";import{useTranslate as y,useBasename as C}from"react-admin";import{useSidebarState as M}from"react-admin";const x=e=>{const{className:m,primaryText:t,leftIcon:o,onClick:n,...i}=e,p=y(),l=C(),[N,a]=M(),f=d(k=>{a(!1),n&&n(k)},[a,n]),s=(typeof e.to=="string"?e.to:e.to.pathname)||"",u=R({path:s,end:s===`${l}/`});return h(L,{className:I(m,{[c.active]:!!u}),tabIndex:0,...i,onClick:f,children:[o&&P("span",{className:c.icon,children:o}),typeof t=="string"?p(t,{_:t}):t]})},r="RaMenuItemLink",c={active:`${r}-active`,icon:`${r}-icon`};var q=x;export{c as MenuItemLinkClasses,q as default};
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import { jsx, jsxs } from "react/jsx-runtime";
33
+ import { useCallback } from "react";
34
+ import clsx from "clsx";
35
+ import { Link, useMatch } from "react-router-dom";
36
+ import { useTranslate, useBasename } from "react-admin";
37
+ import { useSidebarState } from "react-admin";
38
+ const MenuItemLink = (props) => {
39
+ const _a = props, { className, primaryText, leftIcon, onClick } = _a, rest = __objRest(_a, ["className", "primaryText", "leftIcon", "onClick"]);
40
+ const translate = useTranslate();
41
+ const basename = useBasename();
42
+ const [open, setOpen] = useSidebarState();
43
+ const handleMenuTap = useCallback(
44
+ (e) => {
45
+ setOpen(false);
46
+ onClick && onClick(e);
47
+ },
48
+ [setOpen, onClick]
49
+ );
50
+ const to = (typeof props.to === "string" ? props.to : props.to.pathname) || "";
51
+ const match = useMatch({ path: to, end: to === `${basename}/` });
52
+ return /* @__PURE__ */ jsxs(
53
+ Link,
54
+ __spreadProps(__spreadValues({
55
+ className: clsx(className, {
56
+ [MenuItemLinkClasses.active]: !!match
57
+ }),
58
+ tabIndex: 0
59
+ }, rest), {
60
+ onClick: handleMenuTap,
61
+ children: [
62
+ leftIcon && /* @__PURE__ */ jsx("span", { className: MenuItemLinkClasses.icon, children: leftIcon }),
63
+ typeof primaryText === "string" ? translate(primaryText, { _: primaryText }) : primaryText
64
+ ]
65
+ })
66
+ );
67
+ };
68
+ const PREFIX = "RaMenuItemLink";
69
+ const MenuItemLinkClasses = {
70
+ active: `${PREFIX}-active`,
71
+ icon: `${PREFIX}-icon`
72
+ };
73
+ var CustomMenuItemLink_default = MenuItemLink;
74
+ export {
75
+ MenuItemLinkClasses,
76
+ CustomMenuItemLink_default as default
77
+ };
@@ -1 +1,47 @@
1
- import{Fragment as v,jsx as t}from"react/jsx-runtime";import{useEffect as h}from"react";import{useDispatch as c}from"react-redux";import{LightMode as n,DarkMode as l}from"@mui/icons-material";import{dashStorage as r}from"@dashadmin/dash-utils";import{DASH_REDUX_ACTIONS as p}from"@dashadmin/dash-admin-state";import{Avatar as g,useColorScheme as f}from"@mui/material";import{DashThemeHelperProvider as k}from"../../default-theme";const u=()=>{const{mode:o,setMode:m}=f(),i=c(),d=o==="light"||o==="dark"?o:r.getItem("theme")||"dark",a=d==="dark",s=()=>{const e=d==="dark"?"light":"dark";m(e),r.setItem("theme",e),document.documentElement.setAttribute("data-theme",e),i(p.toggleThemeType(e))};return h(()=>{const e=r.getItem("theme");e&&(e==="light"||e==="dark")&&o!==e&&m(e)},[]),t(v,{children:t("div",{onClick:s,children:t(k,{children:t(g,{sizes:"small",sx:{fontSize:"1rem"},style:{width:"30px",height:"30px",minHeight:"30px"},className:"dash-icon-button-color dash-icon-button-bg",children:a?t(n,{}):t(l,{})})})})})};var H=u;export{H as default};
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ import { useEffect } from "react";
3
+ import { useDispatch } from "react-redux";
4
+ import { LightMode, DarkMode } from "@mui/icons-material";
5
+ import { dashStorage } from "dash-utils";
6
+ import {
7
+ DASH_REDUX_ACTIONS
8
+ } from "dash-admin-state";
9
+ import { Avatar, useColorScheme } from "@mui/material";
10
+ import { DashThemeHelperProvider } from "../../default-theme";
11
+ const DarkToggleMode = () => {
12
+ const { mode, setMode } = useColorScheme();
13
+ const dispatch = useDispatch();
14
+ const effectiveMode = mode === "light" || mode === "dark" ? mode : dashStorage.getItem("theme") || "dark";
15
+ const darkMode = effectiveMode === "dark";
16
+ const onClick = () => {
17
+ const newMode = effectiveMode === "dark" ? "light" : "dark";
18
+ setMode(newMode);
19
+ dashStorage.setItem("theme", newMode);
20
+ document.documentElement.setAttribute("data-theme", newMode);
21
+ dispatch(DASH_REDUX_ACTIONS.toggleThemeType(newMode));
22
+ };
23
+ useEffect(() => {
24
+ const storedTheme = dashStorage.getItem("theme");
25
+ if (storedTheme && (storedTheme === "light" || storedTheme === "dark") && mode !== storedTheme) {
26
+ setMode(storedTheme);
27
+ }
28
+ }, []);
29
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("div", { onClick, children: /* @__PURE__ */ jsx(DashThemeHelperProvider, { children: /* @__PURE__ */ jsx(
30
+ Avatar,
31
+ {
32
+ sizes: "small",
33
+ sx: { fontSize: "1rem" },
34
+ style: {
35
+ width: "30px",
36
+ height: "30px",
37
+ minHeight: "30px"
38
+ },
39
+ className: "dash-icon-button-color dash-icon-button-bg",
40
+ children: darkMode ? /* @__PURE__ */ jsx(LightMode, {}) : /* @__PURE__ */ jsx(DarkMode, {})
41
+ }
42
+ ) }) }) });
43
+ };
44
+ var DarkToggleMode_default = DarkToggleMode;
45
+ export {
46
+ DarkToggleMode_default as default
47
+ };