@dashadmin/dash-app-common 1.3.25 → 1.3.28

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 (166) hide show
  1. package/README.md +35 -0
  2. package/dist/DashApp.js +176 -1
  3. package/dist/DashAppLoader.js +348 -3
  4. package/dist/DashDefaultResources.js +10 -1
  5. package/dist/components/DashDefaultPrivateApp.js +150 -1
  6. package/dist/components/DashDefaultPrivateResources.js +10 -1
  7. package/dist/components/DashDefaultPublicApp.js +20 -1
  8. package/dist/components/DashResourceLoader.js +245 -1
  9. package/dist/defaults/extensions/bootstrap/DashDefaultErrorBoundary.js +78 -1
  10. package/dist/defaults/extensions/bootstrap/dashDefaultInitializeApp.js +59 -1
  11. package/dist/defaults/extensions/bootstrap/index.js +24 -1
  12. package/dist/defaults/extensions/components/DashDefaultLoader.js +43 -2
  13. package/dist/defaults/extensions/components/dashDefaultAutoAdminComponents.js +67 -1
  14. package/dist/defaults/extensions/components/dashDefaultNotification.js +28 -1
  15. package/dist/defaults/extensions/components/dashDefaultStaticComponents.js +15 -1
  16. package/dist/defaults/extensions/components/index.js +13 -1
  17. package/dist/defaults/extensions/electron/dashDefaultIpcListeners.js +38 -1
  18. package/dist/defaults/extensions/electron/index.js +5 -1
  19. package/dist/defaults/extensions/hooks/index.js +12 -1
  20. package/dist/defaults/extensions/hooks/useDashDefaultLazyAutoAdminComponents.js +17 -1
  21. package/dist/defaults/extensions/hooks/useDashDefaultLazyI18nProvider.js +51 -1
  22. package/dist/defaults/extensions/hooks/useDashDefaultLazyResources.js +19 -1
  23. package/dist/defaults/extensions/hooks/useDashDefaultMountTracker.js +22 -1
  24. package/dist/defaults/extensions/hooks/useDashDefaultRoutePath.js +17 -1
  25. package/dist/defaults/extensions/i18n/dashDefaultI18nProvider.js +44 -1
  26. package/dist/defaults/extensions/i18n/dashDefaultTranslations.js +87 -1
  27. package/dist/defaults/extensions/i18n/index.js +24 -1
  28. package/dist/defaults/extensions/index.js +190 -1
  29. package/dist/defaults/extensions/layout/dashDefaultDomainAppLayout.js +58 -1
  30. package/dist/defaults/extensions/layout/index.js +12 -1
  31. package/dist/defaults/extensions/managers/DashDefaultWSMessagesManager.js +84 -1
  32. package/dist/defaults/extensions/managers/index.js +5 -1
  33. package/dist/defaults/extensions/providers/dashDefaultAuthProvider.js +220 -1
  34. package/dist/defaults/extensions/providers/dashDefaultDataProvider.js +395 -1
  35. package/dist/defaults/extensions/providers/index.js +24 -1
  36. package/dist/defaults/extensions/router/DashDefaultLanding.js +46 -1
  37. package/dist/defaults/extensions/router/dashDefaultPrivateRoutes.js +38 -1
  38. package/dist/defaults/extensions/router/dashDefaultPublicRoutes.js +65 -1
  39. package/dist/defaults/extensions/router/dashDefaultRouter.js +39 -1
  40. package/dist/defaults/extensions/router/dashDefaultSharedRoutes.js +40 -1
  41. package/dist/defaults/extensions/router/index.js +12 -1
  42. package/dist/defaults/extensions/state/dashDefaultAppCommon.js +57 -1
  43. package/dist/defaults/extensions/state/dashDefaultAppSettings.js +38 -1
  44. package/dist/defaults/extensions/state/dashDefaultInitialAppState.js +31 -1
  45. package/dist/defaults/extensions/state/dashDefaultLayoutSettings.js +48 -1
  46. package/dist/defaults/extensions/state/dashDefaultQueryClient.js +58 -1
  47. package/dist/defaults/extensions/state/dashDefaultResourcesIcons.js +24 -1
  48. package/dist/defaults/extensions/state/index.js +29 -1
  49. package/dist/defaults/extensions/styles/index.js +2 -1
  50. package/dist/defaults/extensions/theme/dashDefaultThemeOptions.js +74 -1
  51. package/dist/defaults/extensions/theme/index.js +6 -1
  52. package/dist/defaults/extensions/utils/IPCMessageBrokerContext.js +12 -1
  53. package/dist/defaults/extensions/utils/dashDefaultAuthProviderUtils.js +29 -1
  54. package/dist/defaults/extensions/utils/dashDefaultDataProviderUtils.js +37 -1
  55. package/dist/defaults/extensions/utils/dashDefaultNotificationsProcessor.js +149 -1
  56. package/dist/defaults/extensions/utils/index.js +44 -1
  57. package/dist/defaults/filters/demo/dashDefaultDemoFilters.js +36 -1
  58. package/dist/defaults/filters/demo/index.js +4 -1
  59. package/dist/defaults/filters/index.js +5 -1
  60. package/dist/defaults/index.js +14 -1
  61. package/dist/defaults/pages/Account/DashDefaultRegister.js +282 -1
  62. package/dist/defaults/pages/Account/DashDefaultSignUp.js +420 -1
  63. package/dist/defaults/pages/Account/DashDefaultSignUpSuccess.js +101 -1
  64. package/dist/defaults/pages/Account/index.js +8 -1
  65. package/dist/defaults/pages/DashDefaultLogin.js +218 -1
  66. package/dist/defaults/pages/Misc/DashDefaultNotFound.js +74 -1
  67. package/dist/defaults/pages/Misc/DashDefaultServerError.js +79 -1
  68. package/dist/defaults/pages/Misc/DashDefaultUnauthorized.js +90 -1
  69. package/dist/defaults/pages/Misc/index.js +8 -1
  70. package/dist/defaults/pages/Static/DashDefaultPrivacyPage.js +48 -1
  71. package/dist/defaults/pages/Static/DashDefaultStaticPage.js +55 -1
  72. package/dist/defaults/pages/Static/DashDefaultTermsPage.js +52 -1
  73. package/dist/defaults/pages/Static/index.js +8 -1
  74. package/dist/defaults/pages/index.js +25 -1
  75. package/dist/defaults/schemas/dashDefaultSchema.js +14 -1
  76. package/dist/defaults/schemas/demo/dashDefaultTodoSchema.js +24 -1
  77. package/dist/defaults/schemas/demo/index.js +4 -1
  78. package/dist/defaults/schemas/index.js +7 -1
  79. package/dist/filters/demo/todoFilters.js +36 -1
  80. package/dist/index.js +56 -5975
  81. package/dist/resources/demo/todoResource.js +58 -1
  82. package/dist/schemas/defaultSchema.js +14 -1
  83. package/dist/schemas/demo/todoSchema.js +24 -1
  84. package/package.json +132 -77
  85. package/src/DashApp.tsx +294 -0
  86. package/src/DashAppLoader.tsx +717 -0
  87. package/src/DashDefaultResources.tsx +10 -0
  88. package/src/components/DashDefaultPrivateApp.tsx +358 -0
  89. package/src/components/DashDefaultPrivateResources.tsx +10 -0
  90. package/src/components/DashDefaultPublicApp.tsx +40 -0
  91. package/src/components/DashResourceLoader.tsx +564 -0
  92. package/src/defaults/extensions/bootstrap/DashDefaultErrorBoundary.tsx +113 -0
  93. package/src/defaults/extensions/bootstrap/dashDefaultInitializeApp.ts +81 -0
  94. package/src/defaults/extensions/bootstrap/index.ts +32 -0
  95. package/src/defaults/extensions/components/DashDefaultLoader.tsx +59 -0
  96. package/src/defaults/extensions/components/dashDefaultAutoAdminComponents.tsx +49 -0
  97. package/src/defaults/extensions/components/dashDefaultNotification.tsx +37 -0
  98. package/src/defaults/extensions/components/dashDefaultStaticComponents.tsx +34 -0
  99. package/src/defaults/extensions/components/index.ts +17 -0
  100. package/src/defaults/extensions/electron/dashDefaultIpcListeners.ts +62 -0
  101. package/src/defaults/extensions/electron/index.ts +7 -0
  102. package/src/defaults/extensions/hooks/index.ts +11 -0
  103. package/src/defaults/extensions/hooks/useDashDefaultLazyAutoAdminComponents.ts +25 -0
  104. package/src/defaults/extensions/hooks/useDashDefaultLazyI18nProvider.ts +38 -0
  105. package/src/defaults/extensions/hooks/useDashDefaultLazyResources.ts +29 -0
  106. package/src/defaults/extensions/hooks/useDashDefaultMountTracker.ts +28 -0
  107. package/src/defaults/extensions/hooks/useDashDefaultRoutePath.ts +27 -0
  108. package/src/defaults/extensions/i18n/dashDefaultI18nProvider.ts +66 -0
  109. package/src/defaults/extensions/i18n/dashDefaultTranslations.ts +82 -0
  110. package/src/defaults/extensions/i18n/index.ts +22 -0
  111. package/src/defaults/extensions/index.ts +177 -0
  112. package/src/defaults/extensions/layout/dashDefaultDomainAppLayout.tsx +126 -0
  113. package/src/defaults/extensions/layout/index.ts +12 -0
  114. package/src/defaults/extensions/managers/DashDefaultWSMessagesManager.tsx +99 -0
  115. package/src/defaults/extensions/managers/index.ts +7 -0
  116. package/src/defaults/extensions/providers/dashDefaultAuthProvider.ts +256 -0
  117. package/src/defaults/extensions/providers/dashDefaultDataProvider.ts +513 -0
  118. package/src/defaults/extensions/providers/index.ts +25 -0
  119. package/src/defaults/extensions/router/DashDefaultLanding.tsx +51 -0
  120. package/src/defaults/extensions/router/dashDefaultPrivateRoutes.tsx +50 -0
  121. package/src/defaults/extensions/router/dashDefaultPublicRoutes.tsx +86 -0
  122. package/src/defaults/extensions/router/dashDefaultRouter.tsx +54 -0
  123. package/src/defaults/extensions/router/dashDefaultSharedRoutes.tsx +56 -0
  124. package/src/defaults/extensions/router/index.ts +13 -0
  125. package/src/defaults/extensions/state/dashDefaultAppCommon.ts +54 -0
  126. package/src/defaults/extensions/state/dashDefaultAppSettings.ts +29 -0
  127. package/src/defaults/extensions/state/dashDefaultInitialAppState.ts +75 -0
  128. package/src/defaults/extensions/state/dashDefaultLayoutSettings.ts +59 -0
  129. package/src/defaults/extensions/state/dashDefaultQueryClient.ts +59 -0
  130. package/src/defaults/extensions/state/dashDefaultResourcesIcons.tsx +23 -0
  131. package/src/defaults/extensions/state/index.ts +29 -0
  132. package/src/defaults/extensions/styles/index.ts +17 -0
  133. package/src/defaults/extensions/theme/dashDefaultThemeOptions.ts +89 -0
  134. package/src/defaults/extensions/theme/index.ts +7 -0
  135. package/src/defaults/extensions/utils/IPCMessageBrokerContext.tsx +22 -0
  136. package/src/defaults/extensions/utils/dashDefaultAuthProviderUtils.ts +36 -0
  137. package/src/defaults/extensions/utils/dashDefaultDataProviderUtils.ts +46 -0
  138. package/src/defaults/extensions/utils/dashDefaultNotificationsProcessor.tsx +208 -0
  139. package/src/defaults/extensions/utils/index.ts +42 -0
  140. package/src/defaults/filters/demo/dashDefaultDemoFilters.tsx +50 -0
  141. package/src/defaults/filters/demo/index.ts +6 -0
  142. package/src/defaults/filters/index.ts +11 -0
  143. package/src/defaults/index.ts +27 -0
  144. package/src/defaults/pages/Account/DashDefaultRegister.tsx +281 -0
  145. package/src/defaults/pages/Account/DashDefaultSignUp.tsx +492 -0
  146. package/src/defaults/pages/Account/DashDefaultSignUpSuccess.tsx +113 -0
  147. package/src/defaults/pages/Account/index.ts +8 -0
  148. package/src/defaults/pages/DashDefaultLogin.tsx +224 -0
  149. package/src/defaults/pages/Misc/DashDefaultNotFound.tsx +96 -0
  150. package/src/defaults/pages/Misc/DashDefaultServerError.tsx +102 -0
  151. package/src/defaults/pages/Misc/DashDefaultUnauthorized.tsx +116 -0
  152. package/src/defaults/pages/Misc/index.ts +8 -0
  153. package/src/defaults/pages/Static/DashDefaultPrivacyPage.tsx +85 -0
  154. package/src/defaults/pages/Static/DashDefaultStaticPage.tsx +75 -0
  155. package/src/defaults/pages/Static/DashDefaultTermsPage.tsx +69 -0
  156. package/src/defaults/pages/Static/index.ts +8 -0
  157. package/src/defaults/pages/index.ts +28 -0
  158. package/src/defaults/schemas/dashDefaultSchema.tsx +25 -0
  159. package/src/defaults/schemas/demo/dashDefaultTodoSchema.tsx +39 -0
  160. package/src/defaults/schemas/demo/index.ts +6 -0
  161. package/src/defaults/schemas/index.ts +14 -0
  162. package/src/filters/demo/todoFilters.tsx +39 -0
  163. package/src/index.ts +131 -0
  164. package/src/resources/demo/todoResource.tsx +68 -0
  165. package/src/schemas/defaultSchema.tsx +14 -0
  166. package/src/schemas/demo/todoSchema.tsx +27 -0
@@ -1 +1,395 @@
1
- import{createDashDataProvider as v}from"@dashadmin/dash-auto-admin";import h from"query-string";import{processAxiosError as p,useAxios as y}from"@dashadmin/dash-axios-hook";import{cacheInvalidatorHash as w}from"@dashadmin/dash-admin/src/utils/cache/CacheInvalidatorContext";import{getResourceConfig as P,processFormData as D,processPostData as m}from"@dashadmin/dash-utils";import{dashStorage as f}from"@dashadmin/dash-utils";const _={useAxios:y,storage:f,getCacheHash:w,getResourceConfig:P,processPostData:m,processFormData:D,processAxiosError:p},x={getList:async(a,t)=>{const n=f.getItem("tenant_id");let e=m(a,{...t.filter,tenant_id:n},"getList");const o=y(),r=t.filter&&t.filter.pagination?t.filter.pagination:t.pagination?t.pagination:!1;r?e={...e,pagination:!0,...r}:e={...e,pagination:!1},e={...e,...t.meta},t.sort&&t.sort.field&&t.sort.order&&!t.meta?.removeSortFilters&&(e={...e,...t.sort,order:t.sort.order.toLowerCase()});const s=w(a);s&&(e={...e,hash:s});const i=h.stringify(e,{arrayFormat:"bracket"});let c=`${a}?${i}`;const g=c.includes("forSelect")?"forSelect":c.includes("getMany")?"getMany":"getList";window.dispatchEvent(new MessageEvent("auto-admin-loading-state",{data:!0,origin:g,lastEventId:c}));try{const l=await o.get(c);let u;return typeof l.data?.data?.total<"u"?u=l.data.data:l?.data?.data&&Array.isArray(l.data.data)?u={data:l.data.data,total:l.data.total||l.data.data.length}:l?.data&&Array.isArray(l.data)?u={data:l.data,total:l.data.length}:u={data:[],total:0},window.dispatchEvent(new MessageEvent("auto-admin-loading-state",{data:!1,origin:g,lastEventId:c})),u}catch(l){return window.dispatchEvent(new MessageEvent("DASHGlobalError",{data:{error:l,config:{dialog:!0}}})),{data:[],total:0}}finally{window.dispatchEvent(new MessageEvent("auto-admin-loading-state",{data:!1,origin:g,lastEventId:c}))}},getOne:async(a,t)=>{const n=y();try{return{data:(await n.get(`${a}/${t.id}`,t.meta?{params:t.meta}:{})).data}}catch{}},getMany:async(a,t)=>{const n=y(),e=Array.isArray(t.ids)&&t.ids.length>0&&Array.isArray(t.ids[0])?t.ids[0]:t.ids;let o={ids:Array.isArray(e)&&e.length>0&&e[0]?.id?e.map(i=>i.id):e};o={...o,pagination:!1};const r=w(a);r&&(o={...o,hash:r});const d=h.stringify(o,{arrayFormat:"bracket"}),s=`${a}/getMany?${d}`;try{const i=await n.get(s),c=i.data;return{data:c.data,total:c.data&&c.data.total?c.data.total:parseInt(i.headers["content-range"])||0}}catch{}},getManyReference:async(a,t)=>{const n=f.getItem("tenant_id"),e=t.filter&&t.filter.pagination?t.filter.pagination:!1,o=y();let r={...t.filter,[t.target]:t.id,tenant_id:n};e?r={...r,pagination:!0,...e}:r={...r,pagination:!1};const d=`${a}/getManyReference?${h.stringify(r,{arrayFormat:"bracket"})}`;try{const s=await o.get(d),i=s.data;return{data:i,total:i.data&&i.data.total?i.data.total:parseInt(s.headers["content-range"])||0}}catch{}},update:async(a,t)=>{const n=y(),o=P(a)?.isFormData===!0||t.data?.isFormData===!0||t.meta?.isFormData===!0,r=t&&t.data&&t.data.tenant_id?t.data.tenant_id:f.getItem("tenant_id"),d=/\/\d+(?:\/[^\/]*)?$/.test(a)?a:t.id?`${a}/${t.id}`:a,s=m(d,{...t.data,tenant_id:r},"update");let i=t.meta?.method?t.meta.method:"PUT";i=s?.axiosMethod?s.axiosMethod:i,delete s.axiosMethod;const c=n.post;i==="PUT"&&(s._method="PUT");try{if(o){const l=D(a,s);return await c(d,l,{headers:{"Content-Type":"multipart/form-data"}})}return await c(d,s)}catch(g){throw p(g,a,"update")}},create:async(a,t)=>{const n=y(),o=P(a)?.isFormData===!0||t.data?.isFormData===!0||t.meta?.isFormData===!0,r=/\/[\w-]+$/.test(a)?a:t.meta?.id?`${a}/${t.meta.id}`:a;let d=t.data?.tenant_id;a!=="system/user"&&!d&&(d=f.getItem("tenant_id"));const i=(t.meta?.method?t.meta.method:"POST")==="POST"?n.post:n.put,c=m(r,{...t.data,...d?{tenant_id:d}:{}},"create");try{if(o){const g=D(a,c);return await i(r,g,{headers:{"Content-Type":"multipart/form-data"}})}return await i(r,c)}catch(g){throw p(g,a,"create")}},updateMany:async(a,t)=>{const n=f.getItem("tenant_id"),e=y(),o={filter:JSON.stringify({ids:t.ids}),tenant_id:n},d=(t.meta?.method?t.meta.method:"POST")==="POST"?e.post:e.put;try{return await d(`${a}/updateMany?${h.stringify(o,{arrayFormat:"bracket"})}`,t.data)}catch{window.dispatchEvent(new MessageEvent("dash-global-loader",{data:!1}))}},delete:async(a,t)=>{const n=f.getItem("tenant_id"),e=y(),{data:o}=await e.delete(`${a}/${t.id}`,{data:{tenant_id:n}});return{data:o}},deleteMany:async(a,t)=>{const n=f.getItem("tenant_id"),e=y(),o={ids:t.ids?t.ids:[],tenant_id:n};return await e.post(`${a}/deleteMany?${h.stringify(o,{arrayFormat:"bracket"})}`)}},E={import:async(a,t)=>{const n=y(),e=m(a,t.data,"import");f.getItem("tenant_id")&&e&&!e.tenant_id&&(e.tenant_id=f.getItem("tenant_id"));const o=D(a,e),d=(t.meta?.method?t.meta.method:"POST")==="POST"?n.post:n.put;try{return await d(`${a}`,o,{headers:{"Content-Type":"multipart/form-data"}})}catch{window.dispatchEvent(new MessageEvent("dash-global-loader",{data:!1}))}},checkError:a=>{const t=a.status;if(t>=400&&t<499){let n=a.message;t===401&&(n="You are not authenticated"),t===403&&(n="You do not have permission to access this resource"),t===404&&(n="The requested resource was not found"),t===422&&(n="Validation error");const e=new Error(n);return e.status=t,e.body=a.body,Promise.reject(e)}return t>=500?(console.error("Server error",a),Promise.reject(new Error("A server error occurred. Please try again later."))):Promise.resolve()}},A=v(_,x),S={...A,...E};var U=S;export{S as dashDefaultDataProvider,_ as dashDefaultDataProviderConfig,E as dashDefaultDataProviderExtensions,x as dashDefaultDataProviderOverrides,U 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 __async = (__this, __arguments, generator) => {
21
+ return new Promise((resolve, reject) => {
22
+ var fulfilled = (value) => {
23
+ try {
24
+ step(generator.next(value));
25
+ } catch (e) {
26
+ reject(e);
27
+ }
28
+ };
29
+ var rejected = (value) => {
30
+ try {
31
+ step(generator.throw(value));
32
+ } catch (e) {
33
+ reject(e);
34
+ }
35
+ };
36
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
37
+ step((generator = generator.apply(__this, __arguments)).next());
38
+ });
39
+ };
40
+ import {
41
+ createDashDataProvider
42
+ } from "dash-auto-admin";
43
+ import queryString from "query-string";
44
+ import { processAxiosError, useAxios } from "dash-axios-hook";
45
+ import { cacheInvalidatorHash } from "dash-admin/src/utils/cache/CacheInvalidatorContext";
46
+ import { getResourceConfig, processFormData, processPostData } from "dash-utils";
47
+ import { dashStorage } from "dash-utils";
48
+ const dashDefaultDataProviderConfig = {
49
+ useAxios,
50
+ storage: dashStorage,
51
+ getCacheHash: cacheInvalidatorHash,
52
+ getResourceConfig,
53
+ processPostData,
54
+ processFormData,
55
+ processAxiosError
56
+ };
57
+ const dashDefaultDataProviderOverrides = {
58
+ /**
59
+ * Dash default getList implementation with Dash-specific logic
60
+ */
61
+ getList: (resource, params) => __async(null, null, function* () {
62
+ var _a, _b, _c, _d;
63
+ const tenant_id = dashStorage.getItem("tenant_id");
64
+ let payload = processPostData(
65
+ resource,
66
+ __spreadValues(__spreadValues({}, params.filter), { tenant_id }),
67
+ "getList"
68
+ );
69
+ const axios = useAxios();
70
+ const pagination = params.filter && !!params.filter.pagination ? params.filter.pagination : params.pagination ? params.pagination : false;
71
+ if (pagination) {
72
+ payload = __spreadValues(__spreadProps(__spreadValues({}, payload), { pagination: true }), pagination);
73
+ } else {
74
+ payload = __spreadProps(__spreadValues({}, payload), { pagination: false });
75
+ }
76
+ payload = __spreadValues(__spreadValues({}, payload), params.meta);
77
+ const hasSort = params.sort && params.sort.field && params.sort.order;
78
+ if (hasSort && !((_a = params.meta) == null ? void 0 : _a.removeSortFilters)) {
79
+ payload = __spreadValues(__spreadValues({}, payload), __spreadProps(__spreadValues({}, params.sort), { order: params.sort.order.toLowerCase() }));
80
+ }
81
+ const hash = cacheInvalidatorHash(resource);
82
+ if (hash) {
83
+ payload = __spreadProps(__spreadValues({}, payload), {
84
+ hash
85
+ });
86
+ }
87
+ const processedQuery = queryString.stringify(payload, { arrayFormat: "bracket" });
88
+ let url = `${resource}?${processedQuery}`;
89
+ const origin = url.includes("forSelect") ? "forSelect" : url.includes("getMany") ? "getMany" : "getList";
90
+ window.dispatchEvent(
91
+ new MessageEvent("auto-admin-loading-state", {
92
+ data: true,
93
+ origin,
94
+ lastEventId: url
95
+ })
96
+ );
97
+ try {
98
+ const response = yield axios.get(url);
99
+ let results;
100
+ if (typeof ((_c = (_b = response.data) == null ? void 0 : _b.data) == null ? void 0 : _c.total) !== "undefined") {
101
+ results = response.data.data;
102
+ } else if (((_d = response == null ? void 0 : response.data) == null ? void 0 : _d.data) && Array.isArray(response.data.data)) {
103
+ results = { data: response.data.data, total: response.data.total || response.data.data.length };
104
+ } else if ((response == null ? void 0 : response.data) && Array.isArray(response.data)) {
105
+ results = { data: response.data, total: response.data.length };
106
+ } else {
107
+ results = { data: [], total: 0 };
108
+ }
109
+ window.dispatchEvent(
110
+ new MessageEvent("auto-admin-loading-state", {
111
+ data: false,
112
+ origin,
113
+ lastEventId: url
114
+ })
115
+ );
116
+ return results;
117
+ } catch (e) {
118
+ window.dispatchEvent(new MessageEvent("DASHGlobalError", { data: { error: e, config: { dialog: true } } }));
119
+ return { data: [], total: 0 };
120
+ } finally {
121
+ window.dispatchEvent(
122
+ new MessageEvent("auto-admin-loading-state", {
123
+ data: false,
124
+ origin,
125
+ lastEventId: url
126
+ })
127
+ );
128
+ }
129
+ }),
130
+ /**
131
+ * Default getOne implementation
132
+ */
133
+ getOne: (resource, params) => __async(null, null, function* () {
134
+ const axios = useAxios();
135
+ try {
136
+ const response = yield axios.get(
137
+ `${resource}/${params.id}`,
138
+ params.meta ? { params: params.meta } : {}
139
+ );
140
+ return {
141
+ data: response.data
142
+ };
143
+ } catch (e) {
144
+ }
145
+ }),
146
+ /**
147
+ * Default getMany implementation
148
+ */
149
+ getMany: (resource, params) => __async(null, null, function* () {
150
+ var _a;
151
+ const axios = useAxios();
152
+ const paramsIds = Array.isArray(params.ids) && params.ids.length > 0 && Array.isArray(params.ids[0]) ? params.ids[0] : params.ids;
153
+ let query = {
154
+ ids: Array.isArray(paramsIds) && paramsIds.length > 0 && ((_a = paramsIds[0]) == null ? void 0 : _a.id) ? paramsIds.map((object) => object.id) : paramsIds
155
+ };
156
+ query = __spreadProps(__spreadValues({}, query), { pagination: false });
157
+ const hash = cacheInvalidatorHash(resource);
158
+ if (hash) {
159
+ query = __spreadProps(__spreadValues({}, query), {
160
+ hash
161
+ });
162
+ }
163
+ const _query = queryString.stringify(query, {
164
+ arrayFormat: "bracket"
165
+ });
166
+ const url = `${resource}/getMany?${_query}`;
167
+ try {
168
+ const response = yield axios.get(url);
169
+ const results = response.data;
170
+ return {
171
+ data: results.data,
172
+ total: results.data && results.data.total ? results.data.total : parseInt(response.headers["content-range"]) || 0
173
+ };
174
+ } catch (e) {
175
+ }
176
+ }),
177
+ /**
178
+ * Default getManyReference implementation
179
+ */
180
+ getManyReference: (resource, params) => __async(null, null, function* () {
181
+ const tenant_id = dashStorage.getItem("tenant_id");
182
+ const pagination = params.filter && params.filter.pagination ? params.filter.pagination : false;
183
+ const axios = useAxios();
184
+ let query = __spreadProps(__spreadValues({}, params.filter), {
185
+ [params.target]: params.id,
186
+ tenant_id
187
+ });
188
+ if (pagination) {
189
+ query = __spreadValues(__spreadProps(__spreadValues({}, query), { pagination: true }), pagination);
190
+ } else {
191
+ query = __spreadProps(__spreadValues({}, query), { pagination: false });
192
+ }
193
+ const url = `${resource}/getManyReference?${queryString.stringify(query, {
194
+ arrayFormat: "bracket"
195
+ })}`;
196
+ try {
197
+ const response = yield axios.get(url);
198
+ const results = response.data;
199
+ return {
200
+ data: results,
201
+ total: results.data && results.data.total ? results.data.total : parseInt(response.headers["content-range"]) || 0
202
+ };
203
+ } catch (e) {
204
+ }
205
+ }),
206
+ /**
207
+ * Default update implementation
208
+ */
209
+ update: (resource, params) => __async(null, null, function* () {
210
+ var _a, _b, _c;
211
+ const axios = useAxios();
212
+ const resourceConfig = getResourceConfig(resource);
213
+ const isFormData = (resourceConfig == null ? void 0 : resourceConfig.isFormData) === true || ((_a = params.data) == null ? void 0 : _a.isFormData) === true || ((_b = params.meta) == null ? void 0 : _b.isFormData) === true;
214
+ const tenant_id = params && params.data && params.data.tenant_id ? params.data.tenant_id : dashStorage.getItem("tenant_id");
215
+ const resourcePath = /\/\d+(?:\/[^\/]*)?$/.test(resource) ? resource : params.id ? `${resource}/${params.id}` : resource;
216
+ const postData = processPostData(
217
+ resourcePath,
218
+ __spreadValues(__spreadValues({}, params.data), { tenant_id }),
219
+ "update"
220
+ );
221
+ let method = ((_c = params.meta) == null ? void 0 : _c.method) ? params.meta.method : "PUT";
222
+ method = (postData == null ? void 0 : postData.axiosMethod) ? postData.axiosMethod : method;
223
+ delete postData.axiosMethod;
224
+ const action = axios.post;
225
+ if (method === "PUT") {
226
+ postData._method = "PUT";
227
+ }
228
+ try {
229
+ if (isFormData) {
230
+ const form = processFormData(resource, postData);
231
+ const response2 = yield action(resourcePath, form, {
232
+ headers: { "Content-Type": "multipart/form-data" }
233
+ });
234
+ return response2;
235
+ }
236
+ const response = yield action(resourcePath, postData);
237
+ return response;
238
+ } catch (e) {
239
+ const error = e;
240
+ throw processAxiosError(error, resource, "update");
241
+ }
242
+ }),
243
+ /**
244
+ * Default create implementation
245
+ */
246
+ create: (resource, params) => __async(null, null, function* () {
247
+ var _a, _b, _c, _d, _e;
248
+ const axios = useAxios();
249
+ const resourceConfig = getResourceConfig(resource);
250
+ const isFormData = (resourceConfig == null ? void 0 : resourceConfig.isFormData) === true || ((_a = params.data) == null ? void 0 : _a.isFormData) === true || ((_b = params.meta) == null ? void 0 : _b.isFormData) === true;
251
+ const resourcePath = /\/[\w-]+$/.test(resource) ? resource : ((_c = params.meta) == null ? void 0 : _c.id) ? `${resource}/${params.meta.id}` : resource;
252
+ let tenant_id = (_d = params.data) == null ? void 0 : _d.tenant_id;
253
+ if (resource !== "system/user" && !tenant_id) {
254
+ tenant_id = dashStorage.getItem("tenant_id");
255
+ }
256
+ const method = ((_e = params.meta) == null ? void 0 : _e.method) ? params.meta.method : "POST";
257
+ const action = method === "POST" ? axios.post : axios.put;
258
+ const postData = processPostData(
259
+ resourcePath,
260
+ __spreadValues(__spreadValues({}, params.data), tenant_id ? { tenant_id } : {}),
261
+ "create"
262
+ );
263
+ try {
264
+ if (isFormData) {
265
+ const form = processFormData(resource, postData);
266
+ return yield action(resourcePath, form, {
267
+ headers: { "Content-Type": "multipart/form-data" }
268
+ });
269
+ }
270
+ return yield action(resourcePath, postData);
271
+ } catch (e) {
272
+ const error = e;
273
+ throw processAxiosError(error, resource, "create");
274
+ }
275
+ }),
276
+ /**
277
+ * Default updateMany implementation
278
+ */
279
+ updateMany: (resource, params) => __async(null, null, function* () {
280
+ var _a;
281
+ const tenant_id = dashStorage.getItem("tenant_id");
282
+ const axios = useAxios();
283
+ const query = {
284
+ filter: JSON.stringify({ ids: params.ids }),
285
+ tenant_id
286
+ };
287
+ const method = ((_a = params.meta) == null ? void 0 : _a.method) ? params.meta.method : "POST";
288
+ const action = method === "POST" ? axios.post : axios.put;
289
+ try {
290
+ const response = yield action(
291
+ `${resource}/updateMany?${queryString.stringify(query, {
292
+ arrayFormat: "bracket"
293
+ })}`,
294
+ params.data
295
+ );
296
+ return response;
297
+ } catch (e) {
298
+ window.dispatchEvent(
299
+ new MessageEvent("dash-global-loader", { data: false })
300
+ );
301
+ }
302
+ }),
303
+ /**
304
+ * Default delete implementation
305
+ */
306
+ delete: (resource, params) => __async(null, null, function* () {
307
+ const tenant_id = dashStorage.getItem("tenant_id");
308
+ const axios = useAxios();
309
+ const { data } = yield axios.delete(`${resource}/${params.id}`, {
310
+ data: { tenant_id }
311
+ });
312
+ return {
313
+ data
314
+ };
315
+ }),
316
+ /**
317
+ * Default deleteMany implementation
318
+ */
319
+ deleteMany: (resource, params) => __async(null, null, function* () {
320
+ const tenant_id = dashStorage.getItem("tenant_id");
321
+ const axios = useAxios();
322
+ const query = {
323
+ ids: params.ids ? params.ids : [],
324
+ tenant_id
325
+ };
326
+ const data = yield axios.post(
327
+ `${resource}/deleteMany?${queryString.stringify(query, {
328
+ arrayFormat: "bracket"
329
+ })}`
330
+ );
331
+ return data;
332
+ })
333
+ };
334
+ const dashDefaultDataProviderExtensions = {
335
+ /**
336
+ * Dash default import method for bulk data import
337
+ */
338
+ import: (resource, params) => __async(null, null, function* () {
339
+ var _a;
340
+ const axios = useAxios();
341
+ const processedData = processPostData(resource, params.data, "import");
342
+ if (dashStorage.getItem("tenant_id")) {
343
+ if (processedData && !processedData.tenant_id)
344
+ processedData.tenant_id = dashStorage.getItem("tenant_id");
345
+ }
346
+ const form = processFormData(resource, processedData);
347
+ const method = ((_a = params.meta) == null ? void 0 : _a.method) ? params.meta.method : "POST";
348
+ const action = method === "POST" ? axios.post : axios.put;
349
+ try {
350
+ const results = yield action(`${resource}`, form, {
351
+ headers: { "Content-Type": "multipart/form-data" }
352
+ });
353
+ return results;
354
+ } catch (e) {
355
+ window.dispatchEvent(
356
+ new MessageEvent("dash-global-loader", { data: false })
357
+ );
358
+ }
359
+ }),
360
+ /**
361
+ * @deprecated Use the auth provider's checkError instead
362
+ */
363
+ checkError: (error) => {
364
+ const status = error.status;
365
+ if (status >= 400 && status < 499) {
366
+ let message = error.message;
367
+ if (status === 401) message = "You are not authenticated";
368
+ if (status === 403) message = "You do not have permission to access this resource";
369
+ if (status === 404) message = "The requested resource was not found";
370
+ if (status === 422) message = "Validation error";
371
+ const formattedError = new Error(message);
372
+ formattedError.status = status;
373
+ formattedError.body = error.body;
374
+ return Promise.reject(formattedError);
375
+ }
376
+ if (status >= 500) {
377
+ console.error("Server error", error);
378
+ return Promise.reject(new Error("A server error occurred. Please try again later."));
379
+ }
380
+ return Promise.resolve();
381
+ }
382
+ };
383
+ const baseDataProvider = createDashDataProvider(
384
+ dashDefaultDataProviderConfig,
385
+ dashDefaultDataProviderOverrides
386
+ );
387
+ const dashDefaultDataProvider = __spreadValues(__spreadValues({}, baseDataProvider), dashDefaultDataProviderExtensions);
388
+ var dashDefaultDataProvider_default = dashDefaultDataProvider;
389
+ export {
390
+ dashDefaultDataProvider,
391
+ dashDefaultDataProviderConfig,
392
+ dashDefaultDataProviderExtensions,
393
+ dashDefaultDataProviderOverrides,
394
+ dashDefaultDataProvider_default as default
395
+ };
@@ -1 +1,24 @@
1
- import{dashDefaultAuthProvider as e,dashDefaultAuthProviderConfig as t,dashDefaultAuthProviderOverrides as d}from"./dashDefaultAuthProvider";import{dashDefaultDataProvider as f,dashDefaultDataProviderConfig as s,dashDefaultDataProviderOverrides as i,dashDefaultDataProviderExtensions as h}from"./dashDefaultDataProvider";import{default as D}from"./dashDefaultAuthProvider";import{default as l}from"./dashDefaultDataProvider";export{D as dashAuthProvider,l as dashDataProvider,e as dashDefaultAuthProvider,t as dashDefaultAuthProviderConfig,d as dashDefaultAuthProviderOverrides,f as dashDefaultDataProvider,s as dashDefaultDataProviderConfig,h as dashDefaultDataProviderExtensions,i as dashDefaultDataProviderOverrides};
1
+ import {
2
+ dashDefaultAuthProvider,
3
+ dashDefaultAuthProviderConfig,
4
+ dashDefaultAuthProviderOverrides
5
+ } from "./dashDefaultAuthProvider";
6
+ import {
7
+ dashDefaultDataProvider,
8
+ dashDefaultDataProviderConfig,
9
+ dashDefaultDataProviderOverrides,
10
+ dashDefaultDataProviderExtensions
11
+ } from "./dashDefaultDataProvider";
12
+ import { default as default2 } from "./dashDefaultAuthProvider";
13
+ import { default as default3 } from "./dashDefaultDataProvider";
14
+ export {
15
+ default2 as dashAuthProvider,
16
+ default3 as dashDataProvider,
17
+ dashDefaultAuthProvider,
18
+ dashDefaultAuthProviderConfig,
19
+ dashDefaultAuthProviderOverrides,
20
+ dashDefaultDataProvider,
21
+ dashDefaultDataProviderConfig,
22
+ dashDefaultDataProviderExtensions,
23
+ dashDefaultDataProviderOverrides
24
+ };
@@ -1 +1,46 @@
1
- import{jsx as t,jsxs as i}from"react/jsx-runtime";import{useNavigate as e}from"react-router-dom";const n=()=>{const o=e();return i("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",height:"100vh",color:"var(--text-color, @text-color--dark)",fontFamily:"system-ui, -apple-system, sans-serif",textAlign:"center"},children:[t("h1",{style:{marginBottom:"16px",fontSize:"2rem"},children:"Welcome to Dash"}),t("p",{style:{marginBottom:"24px",opacity:.7},children:"Please login to continue"}),t("button",{type:"button",onClick:()=>o("/login"),style:{padding:"12px 24px",backgroundColor:"#1976d2",color:"white",borderRadius:"8px",textDecoration:"none",fontWeight:500,border:"none",cursor:"pointer"},children:"Go to Login"})]})};var s=n;export{s as default};
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useNavigate } from "react-router-dom";
3
+ const DashDefaultLanding = () => {
4
+ const navigate = useNavigate();
5
+ return /* @__PURE__ */ jsxs(
6
+ "div",
7
+ {
8
+ style: {
9
+ display: "flex",
10
+ flexDirection: "column",
11
+ justifyContent: "center",
12
+ alignItems: "center",
13
+ height: "100vh",
14
+ color: "var(--text-color, @text-color--dark)",
15
+ fontFamily: "system-ui, -apple-system, sans-serif",
16
+ textAlign: "center"
17
+ },
18
+ children: [
19
+ /* @__PURE__ */ jsx("h1", { style: { marginBottom: "16px", fontSize: "2rem" }, children: "Welcome to Dash" }),
20
+ /* @__PURE__ */ jsx("p", { style: { marginBottom: "24px", opacity: 0.7 }, children: "Please login to continue" }),
21
+ /* @__PURE__ */ jsx(
22
+ "button",
23
+ {
24
+ type: "button",
25
+ onClick: () => navigate("/login"),
26
+ style: {
27
+ padding: "12px 24px",
28
+ backgroundColor: "#1976d2",
29
+ color: "white",
30
+ borderRadius: "8px",
31
+ textDecoration: "none",
32
+ fontWeight: 500,
33
+ border: "none",
34
+ cursor: "pointer"
35
+ },
36
+ children: "Go to Login"
37
+ }
38
+ )
39
+ ]
40
+ }
41
+ );
42
+ };
43
+ var DashDefaultLanding_default = DashDefaultLanding;
44
+ export {
45
+ DashDefaultLanding_default as default
46
+ };
@@ -1 +1,38 @@
1
- import{Fragment as n,jsx as e}from"react/jsx-runtime";import{Suspense as o}from"react";import{Route as t}from"react-router-dom";import{DashDefaultLoader as a}from"../components/DashDefaultLoader";const r=()=>e("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh",background:"linear-gradient(to bottom, var(--bodybg-primary), var(--bodybg-secondary))",color:"var(--text-color, @text-color--dark)"},children:e("h1",{children:"Welcome back!"})}),l=()=>[e(t,{"data-layout":"no-layout",path:"/",element:e(o,{fallback:e(a,{}),children:e(r,{})})},"landing"),e(t,{path:"/login",element:e(n,{})},"login-redirect")];var u=l;export{l as dashDefaultPrivateRoutes,u as default};
1
+ import { Fragment, jsx } from "react/jsx-runtime";
2
+ import { Suspense } from "react";
3
+ import { Route } from "react-router-dom";
4
+ import { DashDefaultLoader } from "../components/DashDefaultLoader";
5
+ const DashDefaultAuthenticatedLanding = () => /* @__PURE__ */ jsx("div", { style: {
6
+ display: "flex",
7
+ justifyContent: "center",
8
+ alignItems: "center",
9
+ height: "100vh",
10
+ background: "linear-gradient(to bottom, var(--bodybg-primary), var(--bodybg-secondary))",
11
+ color: "var(--text-color, @text-color--dark)"
12
+ }, children: /* @__PURE__ */ jsx("h1", { children: "Welcome back!" }) });
13
+ const dashDefaultPrivateRoutes = () => [
14
+ // Landing page (authenticated view)
15
+ /* @__PURE__ */ jsx(
16
+ Route,
17
+ {
18
+ "data-layout": "no-layout",
19
+ path: "/",
20
+ element: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(DashDefaultLoader, {}), children: /* @__PURE__ */ jsx(DashDefaultAuthenticatedLanding, {}) })
21
+ },
22
+ "landing"
23
+ ),
24
+ // Login redirect (when already authenticated)
25
+ /* @__PURE__ */ jsx(
26
+ Route,
27
+ {
28
+ path: "/login",
29
+ element: /* @__PURE__ */ jsx(Fragment, {})
30
+ },
31
+ "login-redirect"
32
+ )
33
+ ];
34
+ var dashDefaultPrivateRoutes_default = dashDefaultPrivateRoutes;
35
+ export {
36
+ dashDefaultPrivateRoutes,
37
+ dashDefaultPrivateRoutes_default as default
38
+ };
@@ -1 +1,65 @@
1
- import{jsx as e}from"react/jsx-runtime";import o,{Suspense as t}from"react";import{Route as a,Navigate as n}from"react-router-dom";import s from"@dashadmin/dash-components/src/components/theme/AppLoadingFallback";const p=o.lazy(()=>import("../../pages/DashDefaultLogin")),r=o.lazy(()=>import("@dashadmin/dash-admin/src/pages/RecoverPassword")),c=o.lazy(()=>import("@dashadmin/dash-admin/src/pages/ChangePassword")),i=o.lazy(()=>import("@dashadmin/dash-admin/src/pages/VerifyAccount")),l=()=>e(s,{message:"Loading..."}),m=()=>e(n,{to:"/login",replace:!0}),u=()=>[e(a,{"data-layout":"no-layout",path:"/",element:e(m,{})},"landing"),e(a,{"data-layout":"no-layout",path:"/login",element:e(t,{fallback:e(l,{}),children:e(p,{})})},"login"),e(a,{path:"/reset-password",element:e(t,{fallback:e(l,{}),children:e(r,{})})},"reset-password"),e(a,{path:"/change-password",element:e(t,{fallback:e(l,{}),children:e(c,{})})},"change-password"),e(a,{path:"/verify-email",element:e(t,{fallback:e(l,{}),children:e(i,{})})},"verify-account")];var f=u;export{u as dashDefaultPublicRoutes,f as default};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import React, { Suspense } from "react";
3
+ import { Route, Navigate } from "react-router-dom";
4
+ import AppLoadingFallback from "dash-components/src/components/theme/AppLoadingFallback";
5
+ const DashDefaultLogin = React.lazy(() => import("../../pages/DashDefaultLogin"));
6
+ const RecoverPassword = React.lazy(() => import("dash-admin/src/pages/RecoverPassword"));
7
+ const ChangePassword = React.lazy(() => import("dash-admin/src/pages/ChangePassword"));
8
+ const VerifyAccount = React.lazy(() => import("dash-admin/src/pages/VerifyAccount"));
9
+ const LoadingFallback = () => /* @__PURE__ */ jsx(AppLoadingFallback, { message: "Loading..." });
10
+ const SimpleLanding = () => /* @__PURE__ */ jsx(Navigate, { to: "/login", replace: true });
11
+ const dashDefaultPublicRoutes = () => {
12
+ return [
13
+ // Default landing page - redirect to login
14
+ /* @__PURE__ */ jsx(
15
+ Route,
16
+ {
17
+ "data-layout": "no-layout",
18
+ path: "/",
19
+ element: /* @__PURE__ */ jsx(SimpleLanding, {})
20
+ },
21
+ "landing"
22
+ ),
23
+ // Login page - uses standalone component
24
+ /* @__PURE__ */ jsx(
25
+ Route,
26
+ {
27
+ "data-layout": "no-layout",
28
+ path: "/login",
29
+ element: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingFallback, {}), children: /* @__PURE__ */ jsx(DashDefaultLogin, {}) })
30
+ },
31
+ "login"
32
+ ),
33
+ // Password recovery
34
+ /* @__PURE__ */ jsx(
35
+ Route,
36
+ {
37
+ path: "/reset-password",
38
+ element: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingFallback, {}), children: /* @__PURE__ */ jsx(RecoverPassword, {}) })
39
+ },
40
+ "reset-password"
41
+ ),
42
+ /* @__PURE__ */ jsx(
43
+ Route,
44
+ {
45
+ path: "/change-password",
46
+ element: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingFallback, {}), children: /* @__PURE__ */ jsx(ChangePassword, {}) })
47
+ },
48
+ "change-password"
49
+ ),
50
+ // Account verification
51
+ /* @__PURE__ */ jsx(
52
+ Route,
53
+ {
54
+ path: "/verify-email",
55
+ element: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(LoadingFallback, {}), children: /* @__PURE__ */ jsx(VerifyAccount, {}) })
56
+ },
57
+ "verify-account"
58
+ )
59
+ ];
60
+ };
61
+ var dashDefaultPublicRoutes_default = dashDefaultPublicRoutes;
62
+ export {
63
+ dashDefaultPublicRoutes,
64
+ dashDefaultPublicRoutes_default as default
65
+ };
@@ -1 +1,39 @@
1
- import{jsx as R}from"react/jsx-runtime";import{DashRouterComponent as a}from"@dashadmin/dash-utils";import{DASHAdminSystemConstants as p,getEnv as r}from"@dashadmin/dash-constants";const o=()=>({PLATFORM_TYPE:r("PLATFORM_TYPE")||"desktop",PLATFORM:r("PLATFORM")||"unknown",BASE_PATH:p.system.URL_PREFIX||"/",IS_ELECTRON:JSON.parse(r("IS_ELECTRON")||"false")}),s=({children:t})=>{const e=o();return R(a,{platformType:e.PLATFORM_TYPE,platform:e.PLATFORM,basename:e.BASE_PATH,children:t})},A=(t,e)=>({children:n})=>R(a,{platformType:t||o().PLATFORM_TYPE,platform:e||o().PLATFORM,children:n});var E=s;export{s as DashDefaultRouterWrapper,A as createDashDefaultRouterWrapper,E as default,o as getDashDefaultRouterEnvVars};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { DashRouterComponent } from "dash-utils";
3
+ import { DASHAdminSystemConstants, getEnv } from "dash-constants";
4
+ const getDashDefaultRouterEnvVars = () => ({
5
+ PLATFORM_TYPE: getEnv("PLATFORM_TYPE") || "desktop",
6
+ PLATFORM: getEnv("PLATFORM") || "unknown",
7
+ BASE_PATH: DASHAdminSystemConstants.system.URL_PREFIX || "/",
8
+ IS_ELECTRON: JSON.parse(getEnv("IS_ELECTRON") || "false")
9
+ });
10
+ const DashDefaultRouterWrapper = ({ children }) => {
11
+ const envVars = getDashDefaultRouterEnvVars();
12
+ return /* @__PURE__ */ jsx(
13
+ DashRouterComponent,
14
+ {
15
+ platformType: envVars.PLATFORM_TYPE,
16
+ platform: envVars.PLATFORM,
17
+ basename: envVars.BASE_PATH,
18
+ children
19
+ }
20
+ );
21
+ };
22
+ const createDashDefaultRouterWrapper = (platformType, platform) => {
23
+ const RouterWrapper = ({ children }) => /* @__PURE__ */ jsx(
24
+ DashRouterComponent,
25
+ {
26
+ platformType: platformType || getDashDefaultRouterEnvVars().PLATFORM_TYPE,
27
+ platform: platform || getDashDefaultRouterEnvVars().PLATFORM,
28
+ children
29
+ }
30
+ );
31
+ return RouterWrapper;
32
+ };
33
+ var dashDefaultRouter_default = DashDefaultRouterWrapper;
34
+ export {
35
+ DashDefaultRouterWrapper,
36
+ createDashDefaultRouterWrapper,
37
+ dashDefaultRouter_default as default,
38
+ getDashDefaultRouterEnvVars
39
+ };
@@ -1 +1,40 @@
1
- import{jsx as t}from"react/jsx-runtime";import{Suspense as e}from"react";import{Route as o}from"react-router-dom";import{Box as a}from"@mui/material";const r=()=>t(a,{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",sx:{color:"var(--text-color, inherit)"},children:"Loading..."}),n=()=>t("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh",background:"linear-gradient(to bottom, var(--bodybg-primary), var(--bodybg-secondary))",color:"var(--text-color, @text-color--dark)"},children:t("h1",{children:"Welcome to Dash"})}),l=()=>[t(o,{"data-layout":"no-layout",path:"/",element:t(e,{fallback:t(r,{}),children:t(n,{})})},"landing")];var h=l;export{l as dashDefaultSharedRoutes,h as default};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Suspense } from "react";
3
+ import { Route } from "react-router-dom";
4
+ import { Box } from "@mui/material";
5
+ const DashDefaultRouteLoader = () => /* @__PURE__ */ jsx(
6
+ Box,
7
+ {
8
+ display: "flex",
9
+ justifyContent: "center",
10
+ alignItems: "center",
11
+ minHeight: "200px",
12
+ sx: { color: "var(--text-color, inherit)" },
13
+ children: "Loading..."
14
+ }
15
+ );
16
+ const DashDefaultLanding = () => /* @__PURE__ */ jsx("div", { style: {
17
+ display: "flex",
18
+ justifyContent: "center",
19
+ alignItems: "center",
20
+ height: "100vh",
21
+ background: "linear-gradient(to bottom, var(--bodybg-primary), var(--bodybg-secondary))",
22
+ color: "var(--text-color, @text-color--dark)"
23
+ }, children: /* @__PURE__ */ jsx("h1", { children: "Welcome to Dash" }) });
24
+ const dashDefaultSharedRoutes = () => [
25
+ // Landing page
26
+ /* @__PURE__ */ jsx(
27
+ Route,
28
+ {
29
+ "data-layout": "no-layout",
30
+ path: "/",
31
+ element: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(DashDefaultRouteLoader, {}), children: /* @__PURE__ */ jsx(DashDefaultLanding, {}) })
32
+ },
33
+ "landing"
34
+ )
35
+ ];
36
+ var dashDefaultSharedRoutes_default = dashDefaultSharedRoutes;
37
+ export {
38
+ dashDefaultSharedRoutes,
39
+ dashDefaultSharedRoutes_default as default
40
+ };