@solidxai/core-ui 0.1.12-beta.1 → 0.1.12-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  2. package/dist/components/auth/AuthLayout.js +15 -19
  3. package/dist/components/auth/AuthLayout.js.map +1 -1
  4. package/dist/components/auth/AuthLayout.tsx +26 -20
  5. package/dist/components/common/BackButton.js +1 -1
  6. package/dist/components/common/BackButton.js.map +1 -1
  7. package/dist/components/common/BackButton.tsx +1 -1
  8. package/dist/components/common/CancelButton.js +1 -1
  9. package/dist/components/common/CancelButton.js.map +1 -1
  10. package/dist/components/common/CancelButton.tsx +1 -1
  11. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  12. package/dist/components/common/GeneralSettings.js +6 -33
  13. package/dist/components/common/GeneralSettings.js.map +1 -1
  14. package/dist/components/common/GeneralSettings.tsx +20 -57
  15. package/dist/components/common/SettingsComponent.d.ts.map +1 -1
  16. package/dist/components/common/SettingsComponent.js +1 -9
  17. package/dist/components/common/SettingsComponent.js.map +1 -1
  18. package/dist/components/common/SettingsComponent.tsx +1 -8
  19. package/dist/components/common/SolidBreadcrumb.js +1 -1
  20. package/dist/components/common/SolidBreadcrumb.js.map +1 -1
  21. package/dist/components/common/SolidBreadcrumb.tsx +2 -2
  22. package/dist/components/common/SolidFaviconProvider.d.ts.map +1 -1
  23. package/dist/components/common/SolidFaviconProvider.js +1 -8
  24. package/dist/components/common/SolidFaviconProvider.js.map +1 -1
  25. package/dist/components/common/SolidFaviconProvider.tsx +1 -7
  26. package/dist/components/core/card/CardItem.d.ts.map +1 -1
  27. package/dist/components/core/card/CardItem.js +3 -4
  28. package/dist/components/core/card/CardItem.js.map +1 -1
  29. package/dist/components/core/card/CardItem.tsx +3 -4
  30. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  31. package/dist/components/core/card/SolidCardView.js +6 -1
  32. package/dist/components/core/card/SolidCardView.js.map +1 -1
  33. package/dist/components/core/card/SolidCardView.tsx +6 -1
  34. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  35. package/dist/components/core/card/SolidCardViewConfigure.js +4 -1
  36. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  37. package/dist/components/core/card/SolidCardViewConfigure.tsx +4 -1
  38. package/dist/components/core/common/SolidCreateButton.d.ts.map +1 -1
  39. package/dist/components/core/common/SolidCreateButton.js +2 -13
  40. package/dist/components/core/common/SolidCreateButton.js.map +1 -1
  41. package/dist/components/core/common/SolidCreateButton.tsx +2 -15
  42. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  43. package/dist/components/core/common/SolidGlobalSearchElement.js +34 -15
  44. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  45. package/dist/components/core/common/SolidGlobalSearchElement.tsx +37 -17
  46. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js +15 -13
  47. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js.map +1 -1
  48. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx +4 -4
  49. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js +6 -5
  50. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js.map +1 -1
  51. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx +1 -1
  52. package/dist/components/core/form/SolidFormFooter.d.ts +2 -1
  53. package/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
  54. package/dist/components/core/form/SolidFormFooter.js +48 -14
  55. package/dist/components/core/form/SolidFormFooter.js.map +1 -1
  56. package/dist/components/core/form/SolidFormFooter.tsx +50 -4
  57. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  58. package/dist/components/core/form/SolidFormView.js +52 -50
  59. package/dist/components/core/form/SolidFormView.js.map +1 -1
  60. package/dist/components/core/form/SolidFormView.tsx +16 -9
  61. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  62. package/dist/components/core/kanban/KanbanCard.js +2 -10
  63. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  64. package/dist/components/core/kanban/KanbanCard.tsx +2 -10
  65. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  66. package/dist/components/core/kanban/SolidKanbanView.js +11 -4
  67. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  68. package/dist/components/core/kanban/SolidKanbanView.tsx +13 -5
  69. package/dist/components/core/list/SolidListView.d.ts +2 -0
  70. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  71. package/dist/components/core/list/SolidListView.js +195 -111
  72. package/dist/components/core/list/SolidListView.js.map +1 -1
  73. package/dist/components/core/list/SolidListView.tsx +136 -39
  74. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  75. package/dist/components/core/list/SolidListViewConfigure.js +2 -0
  76. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  77. package/dist/components/core/list/SolidListViewConfigure.tsx +2 -0
  78. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
  79. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +16 -19
  80. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
  81. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +16 -22
  82. package/dist/components/core/locales/SolidChatterLocaleTabView.d.ts.map +1 -1
  83. package/dist/components/core/locales/SolidChatterLocaleTabView.js +9 -8
  84. package/dist/components/core/locales/SolidChatterLocaleTabView.js.map +1 -1
  85. package/dist/components/core/locales/SolidChatterLocaleTabView.tsx +4 -1
  86. package/dist/components/core/locales/SolidLocale.d.ts.map +1 -1
  87. package/dist/components/core/locales/SolidLocale.js +1 -2
  88. package/dist/components/core/locales/SolidLocale.js.map +1 -1
  89. package/dist/components/core/locales/SolidLocale.tsx +1 -2
  90. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  91. package/dist/components/core/model/CreateModel.js +1 -1
  92. package/dist/components/core/model/CreateModel.js.map +1 -1
  93. package/dist/components/core/model/CreateModel.tsx +0 -1
  94. package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
  95. package/dist/components/core/model/ModelMetaData.js +1 -2
  96. package/dist/components/core/model/ModelMetaData.js.map +1 -1
  97. package/dist/components/core/model/ModelMetaData.tsx +1 -3
  98. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  99. package/dist/components/core/tree/SolidTreeView.js +47 -26
  100. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  101. package/dist/components/core/tree/SolidTreeView.tsx +55 -23
  102. package/dist/components/layout/AdminTopHeader.js +2 -3
  103. package/dist/components/layout/AdminTopHeader.js.map +1 -1
  104. package/dist/components/layout/AdminTopHeader.tsx +2 -2
  105. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  106. package/dist/components/layout/AppSidebar.js +5 -2
  107. package/dist/components/layout/AppSidebar.js.map +1 -1
  108. package/dist/components/layout/AppSidebar.tsx +7 -4
  109. package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
  110. package/dist/components/layout/navbar-two-menu.js +6 -4
  111. package/dist/components/layout/navbar-two-menu.js.map +1 -1
  112. package/dist/components/layout/navbar-two-menu.tsx +4 -2
  113. package/dist/constants/error-messages.d.ts +1 -0
  114. package/dist/constants/error-messages.d.ts.map +1 -1
  115. package/dist/constants/error-messages.js +1 -0
  116. package/dist/constants/error-messages.js.map +1 -1
  117. package/dist/constants/error-messages.ts +1 -0
  118. package/dist/helpers/assetUrl.d.ts +3 -0
  119. package/dist/helpers/assetUrl.d.ts.map +1 -0
  120. package/dist/helpers/assetUrl.js +22 -0
  121. package/dist/helpers/assetUrl.js.map +1 -0
  122. package/dist/helpers/assetUrl.ts +26 -0
  123. package/dist/helpers/modelViewPersistence.d.ts +5 -0
  124. package/dist/helpers/modelViewPersistence.d.ts.map +1 -0
  125. package/dist/helpers/modelViewPersistence.js +168 -0
  126. package/dist/helpers/modelViewPersistence.js.map +1 -0
  127. package/dist/helpers/modelViewPersistence.ts +201 -0
  128. package/dist/helpers/routePaths.d.ts +6 -0
  129. package/dist/helpers/routePaths.d.ts.map +1 -1
  130. package/dist/helpers/routePaths.js +13 -0
  131. package/dist/helpers/routePaths.js.map +1 -1
  132. package/dist/helpers/routePaths.ts +25 -0
  133. package/dist/redux/api/solidServiceApi.d.ts +10 -2
  134. package/dist/redux/api/solidServiceApi.d.ts.map +1 -1
  135. package/dist/redux/api/solidServiceApi.js +2 -4
  136. package/dist/redux/api/solidServiceApi.js.map +1 -1
  137. package/dist/redux/api/solidServiceApi.ts +4 -6
  138. package/dist/redux/store/defaultStoreConfig.d.ts +5 -1
  139. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  140. package/dist/resources/solid-custom.css +3 -0
  141. package/dist/routes/pages/admin/core/CardPage.d.ts.map +1 -1
  142. package/dist/routes/pages/admin/core/CardPage.js +11 -0
  143. package/dist/routes/pages/admin/core/CardPage.js.map +1 -1
  144. package/dist/routes/pages/admin/core/CardPage.tsx +13 -0
  145. package/dist/routes/pages/admin/core/KanbanPage.d.ts.map +1 -1
  146. package/dist/routes/pages/admin/core/KanbanPage.js +11 -0
  147. package/dist/routes/pages/admin/core/KanbanPage.js.map +1 -1
  148. package/dist/routes/pages/admin/core/KanbanPage.tsx +13 -0
  149. package/dist/routes/pages/admin/core/ListPage.d.ts.map +1 -1
  150. package/dist/routes/pages/admin/core/ListPage.js +25 -2
  151. package/dist/routes/pages/admin/core/ListPage.js.map +1 -1
  152. package/dist/routes/pages/admin/core/ListPage.tsx +29 -2
  153. package/dist/routes/pages/admin/core/TreePage.d.ts.map +1 -1
  154. package/dist/routes/pages/admin/core/TreePage.js +10 -2
  155. package/dist/routes/pages/admin/core/TreePage.js.map +1 -1
  156. package/dist/routes/pages/admin/core/TreePage.tsx +11 -2
  157. package/package.json +1 -1
@@ -0,0 +1,201 @@
1
+ const MODEL_VIEW_STORAGE_KEY = "solidx.model.last-view";
2
+
3
+ const MODEL_VIEW_ROUTE_REGEX =
4
+ /^\/admin\/core\/([^/]+)\/([^/]+)\/(list|tree|kanban|card)$/;
5
+
6
+ type ParsedModelViewRoute = {
7
+ actionId: string;
8
+ fullPath: string;
9
+ menuItemId: string;
10
+ modelName: string;
11
+ moduleName: string;
12
+ pathname: string;
13
+ viewType: "list" | "tree" | "kanban" | "card";
14
+ };
15
+
16
+ type StoredModelViewEntry = {
17
+ path: string;
18
+ updatedAt: number;
19
+ };
20
+
21
+ type StoredModelViewMap = Record<string, StoredModelViewEntry | string>;
22
+
23
+ const getRouteParsingBase = () => {
24
+ if (typeof window !== "undefined" && window.location?.origin) {
25
+ return window.location.origin;
26
+ }
27
+
28
+ };
29
+
30
+ // Normalize a list/tree/kanban/card URL into a shape we can store and compare.
31
+ // We keep the full query string because menu/action params are part of the return route.
32
+ const parseModelViewRoute = (target: string): ParsedModelViewRoute | null => {
33
+ if (!target) return null;
34
+
35
+ try {
36
+ const url = new URL(target, getRouteParsingBase());
37
+ const match = url.pathname.match(MODEL_VIEW_ROUTE_REGEX);
38
+
39
+ if (!match) return null;
40
+
41
+ const [, moduleName, modelName, viewType] = match;
42
+ const menuItemId = url.searchParams.get("menuItemId") || "";
43
+ const actionId = url.searchParams.get("actionId") || "";
44
+
45
+ return {
46
+ actionId,
47
+ fullPath: `${url.pathname}${url.search}`,
48
+ menuItemId,
49
+ modelName,
50
+ moduleName,
51
+ pathname: url.pathname,
52
+ viewType: viewType as ParsedModelViewRoute["viewType"],
53
+ };
54
+ } catch (error) {
55
+ return null;
56
+ }
57
+ };
58
+
59
+ const getScopedStorageKey = (route: ParsedModelViewRoute) =>
60
+ `model:${route.moduleName}:${route.modelName}:menu:${route.menuItemId}:action:${route.actionId}`;
61
+
62
+ const getMenuStorageKey = (route: ParsedModelViewRoute) =>
63
+ `model:${route.moduleName}:${route.modelName}:menu:${route.menuItemId}`;
64
+
65
+ const getModelStorageKey = (route: ParsedModelViewRoute) =>
66
+ `model:${route.moduleName}:${route.modelName}`;
67
+
68
+ // Older saved values may exist as plain strings from previous implementations.
69
+ // Convert everything into one consistent shape before comparing timestamps.
70
+ const normalizeStoredEntry = (value: StoredModelViewEntry | string | undefined | null): StoredModelViewEntry | null => {
71
+ if (!value) return null;
72
+
73
+ if (typeof value === "string") {
74
+ return {
75
+ path: value,
76
+ updatedAt: 0,
77
+ };
78
+ }
79
+
80
+ if (typeof value.path !== "string" || !value.path) {
81
+ return null;
82
+ }
83
+
84
+ return {
85
+ path: value.path,
86
+ updatedAt: Number(value.updatedAt) || 0,
87
+ };
88
+ };
89
+
90
+ const readStoredModelViews = (): StoredModelViewMap => {
91
+ if (typeof window === "undefined") return {};
92
+
93
+ try {
94
+ const raw = window.localStorage.getItem(MODEL_VIEW_STORAGE_KEY);
95
+ if (!raw) return {};
96
+
97
+ const parsed = JSON.parse(raw);
98
+ return parsed && typeof parsed === "object" ? parsed : {};
99
+ } catch (error) {
100
+ return {};
101
+ }
102
+ };
103
+
104
+ const writeStoredModelViews = (next: StoredModelViewMap) => {
105
+ if (typeof window === "undefined") return;
106
+
107
+ try {
108
+ window.localStorage.setItem(MODEL_VIEW_STORAGE_KEY, JSON.stringify(next));
109
+ } catch (error) {
110
+ // Ignore storage write failures and keep navigation working.
111
+ }
112
+ };
113
+
114
+ // Save the current route at three scopes:
115
+ // 1. exact model + menu + action
116
+ // 2. model + menu
117
+ // 3. model
118
+ // This lets us reopen the most useful last-selected view even when the user
119
+ // returns through a slightly different sidebar/menu link.
120
+ export const persistLastModelViewRoute = (target: string) => {
121
+ if (typeof window === "undefined") return;
122
+
123
+ const route = parseModelViewRoute(target);
124
+ if (!route) return;
125
+
126
+ const next = readStoredModelViews();
127
+ const entry: StoredModelViewEntry = {
128
+ path: route.fullPath,
129
+ updatedAt: Date.now(),
130
+ };
131
+
132
+ next[getScopedStorageKey(route)] = entry;
133
+ if (route.menuItemId) {
134
+ next[getMenuStorageKey(route)] = entry;
135
+ }
136
+ next[getModelStorageKey(route)] = entry;
137
+ writeStoredModelViews(next);
138
+ };
139
+
140
+ // Resolve the best saved route for the current model context.
141
+ // We prefer the newest entry and use scope priority as a tie-breaker.
142
+ export const getPersistedLastModelViewRoute = (target: string): string | null => {
143
+ if (typeof window === "undefined") return null;
144
+
145
+ const route = parseModelViewRoute(target);
146
+ if (!route) return null;
147
+
148
+ const stored = readStoredModelViews();
149
+ const candidateKeys = [
150
+ Boolean(route.menuItemId || route.actionId) ? getScopedStorageKey(route) : null,
151
+ route.menuItemId ? getMenuStorageKey(route) : null,
152
+ getModelStorageKey(route),
153
+ ].filter(Boolean) as string[];
154
+
155
+ let bestMatch: { entry: StoredModelViewEntry; priority: number } | null = null;
156
+
157
+ for (let priority = 0; priority < candidateKeys.length; priority += 1) {
158
+ const key = candidateKeys[priority];
159
+ const entry = normalizeStoredEntry(stored[key]);
160
+ if (!entry) continue;
161
+
162
+ if (!bestMatch || entry.updatedAt > bestMatch.entry.updatedAt || (entry.updatedAt === bestMatch.entry.updatedAt && priority < bestMatch.priority)) {
163
+ bestMatch = { entry, priority };
164
+ }
165
+ }
166
+
167
+ return bestMatch ? bestMatch.entry.path : null;
168
+ };
169
+
170
+ // Sidebar and menu links often point to `/list` by default.
171
+ // If we have a retained non-list view for the same model context, reopen that instead.
172
+ export const resolveRetainedModelViewRoute = (target: string): string => {
173
+ const route = parseModelViewRoute(target);
174
+ if (!route || route.viewType !== "list") return target;
175
+
176
+ const storedRoute = getPersistedLastModelViewRoute(target);
177
+ return storedRoute || target;
178
+ };
179
+
180
+ // Keep short-lived "back to previous view" state in sessionStorage and also
181
+ // refresh the longer-lived localStorage route retention in one call.
182
+ export const storeCurrentModelViewContext = (target?: string) => {
183
+ if (typeof window === "undefined") return;
184
+
185
+ const fallbackTarget = `${window.location.pathname}${window.location.search}`;
186
+ const nextTarget = target || fallbackTarget;
187
+ const route = parseModelViewRoute(nextTarget);
188
+
189
+ try {
190
+ if (route?.viewType) {
191
+ sessionStorage.setItem("fromView", route.viewType);
192
+ }
193
+ sessionStorage.setItem("fromViewUrl", route?.fullPath || nextTarget);
194
+ } catch (error) {
195
+ // Ignore storage failures so navigation can still continue.
196
+ }
197
+
198
+ if (route) {
199
+ persistLastModelViewRoute(route.fullPath);
200
+ }
201
+ };
@@ -1,3 +1,9 @@
1
1
  export declare const normalizeSolidListTreeKanbanActionPath: (currentPath: string, actionUrl: string) => string;
2
+ export declare const buildAdminRecordFormPath: ({ moduleName, modelName, recordId, viewMode, }: {
3
+ moduleName?: string | null | undefined;
4
+ modelName?: string | null | undefined;
5
+ recordId?: string | number | null | undefined;
6
+ viewMode?: "view" | "edit" | undefined;
7
+ }) => string;
2
8
  export declare const normalizeSolidFormActionPath: (currentPath: string, actionUrl: string) => string;
3
9
  //# sourceMappingURL=routePaths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routePaths.d.ts","sourceRoot":"","sources":["../../src/helpers/routePaths.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sCAAsC,gBAAiB,MAAM,aAAa,MAAM,WAW5F,CAAC;AAEF,eAAO,MAAM,4BAA4B,gBAAiB,MAAM,aAAa,MAAM,WAWlF,CAAC"}
1
+ {"version":3,"file":"routePaths.d.ts","sourceRoot":"","sources":["../../src/helpers/routePaths.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sCAAsC,gBAAiB,MAAM,aAAa,MAAM,WAW5F,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;YAuBpC,CAAC;AAEF,eAAO,MAAM,4BAA4B,gBAAiB,MAAM,aAAa,MAAM,WAWlF,CAAC"}
@@ -9,6 +9,19 @@ export var normalizeSolidListTreeKanbanActionPath = function (currentPath, actio
9
9
  var actionTrimmed = actionUrl.replace(/^\/+/, "");
10
10
  return "".concat(normalizedBase.replace(/\/+$/, ""), "/").concat(actionTrimmed);
11
11
  };
12
+ export var buildAdminRecordFormPath = function (_a) {
13
+ var moduleName = _a.moduleName, modelName = _a.modelName, recordId = _a.recordId, viewMode = _a.viewMode;
14
+ if (!moduleName || !modelName || recordId === null || recordId === undefined || recordId === "") {
15
+ return "";
16
+ }
17
+ var normalizedModelName = modelName
18
+ .trim()
19
+ .replace(/([a-z0-9])([A-Z])/g, "$1-$2")
20
+ .replace(/[_\s]+/g, "-")
21
+ .toLowerCase();
22
+ var basePath = "/admin/core/".concat(moduleName.trim(), "/").concat(normalizedModelName, "/form/").concat(recordId);
23
+ return viewMode ? "".concat(basePath, "?viewMode=").concat(viewMode) : basePath;
24
+ };
12
25
  export var normalizeSolidFormActionPath = function (currentPath, actionUrl) {
13
26
  if (!actionUrl)
14
27
  return "";
@@ -1 +1 @@
1
- {"version":3,"file":"routePaths.js","sourceRoot":"","sources":["../../src/helpers/routePaths.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,sCAAsC,GAAG,UAAC,WAAmB,EAAE,SAAiB;IAC3F,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QAC7D,OAAO,SAAS,CAAC;KAClB;IAED,IAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,iCAAiC,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5D,IAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEpD,OAAO,UAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAI,aAAa,CAAE,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,4BAA4B,GAAG,UAAC,WAAmB,EAAE,SAAiB;IACjF,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QAC7D,OAAO,SAAS,CAAC;KAClB;IAED,IAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACnE,IAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5D,IAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEpD,OAAO,UAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAI,aAAa,CAAE,CAAC;AAClE,CAAC,CAAC","sourcesContent":["export const normalizeSolidListTreeKanbanActionPath = (currentPath: string, actionUrl: string) => {\n if (!actionUrl) return \"\";\n if (actionUrl.startsWith(\"http\") || actionUrl.startsWith(\"/\")) {\n return actionUrl;\n }\n\n const basePath = currentPath.replace(/\\/(list|tree|kanban|card)(\\/)?$/, \"\");\n const normalizedBase = basePath.length > 0 ? basePath : \"/\";\n const actionTrimmed = actionUrl.replace(/^\\/+/, \"\");\n\n return `${normalizedBase.replace(/\\/+$/, \"\")}/${actionTrimmed}`;\n};\n\nexport const normalizeSolidFormActionPath = (currentPath: string, actionUrl: string) => {\n if (!actionUrl) return \"\";\n if (actionUrl.startsWith(\"http\") || actionUrl.startsWith(\"/\")) {\n return actionUrl;\n }\n\n const basePath = currentPath.replace(/\\/form(\\/[^/]+)?(\\/)?$/, \"\");\n const normalizedBase = basePath.length > 0 ? basePath : \"/\";\n const actionTrimmed = actionUrl.replace(/^\\/+/, \"\");\n\n return `${normalizedBase.replace(/\\/+$/, \"\")}/${actionTrimmed}`;\n};\n"]}
1
+ {"version":3,"file":"routePaths.js","sourceRoot":"","sources":["../../src/helpers/routePaths.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,sCAAsC,GAAG,UAAC,WAAmB,EAAE,SAAiB;IAC3F,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QAC7D,OAAO,SAAS,CAAC;KAClB;IAED,IAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,iCAAiC,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5D,IAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEpD,OAAO,UAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAI,aAAa,CAAE,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,wBAAwB,GAAG,UAAC,EAUxC;QATC,UAAU,gBAAA,EACV,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,QAAQ,cAAA;IAOR,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,EAAE;QAC/F,OAAO,EAAE,CAAC;KACX;IAED,IAAM,mBAAmB,GAAG,SAAS;SAClC,IAAI,EAAE;SACN,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;SACtC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,WAAW,EAAE,CAAC;IACjB,IAAM,QAAQ,GAAG,sBAAe,UAAU,CAAC,IAAI,EAAE,cAAI,mBAAmB,mBAAS,QAAQ,CAAE,CAAC;IAE5F,OAAO,QAAQ,CAAC,CAAC,CAAC,UAAG,QAAQ,uBAAa,QAAQ,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,4BAA4B,GAAG,UAAC,WAAmB,EAAE,SAAiB;IACjF,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QAC7D,OAAO,SAAS,CAAC;KAClB;IAED,IAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACnE,IAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5D,IAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEpD,OAAO,UAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,cAAI,aAAa,CAAE,CAAC;AAClE,CAAC,CAAC","sourcesContent":["export const normalizeSolidListTreeKanbanActionPath = (currentPath: string, actionUrl: string) => {\n if (!actionUrl) return \"\";\n if (actionUrl.startsWith(\"http\") || actionUrl.startsWith(\"/\")) {\n return actionUrl;\n }\n\n const basePath = currentPath.replace(/\\/(list|tree|kanban|card)(\\/)?$/, \"\");\n const normalizedBase = basePath.length > 0 ? basePath : \"/\";\n const actionTrimmed = actionUrl.replace(/^\\/+/, \"\");\n\n return `${normalizedBase.replace(/\\/+$/, \"\")}/${actionTrimmed}`;\n};\n\nexport const buildAdminRecordFormPath = ({\n moduleName,\n modelName,\n recordId,\n viewMode,\n}: {\n moduleName?: string | null;\n modelName?: string | null;\n recordId?: string | number | null;\n viewMode?: \"view\" | \"edit\";\n}) => {\n if (!moduleName || !modelName || recordId === null || recordId === undefined || recordId === \"\") {\n return \"\";\n }\n\n const normalizedModelName = modelName\n .trim()\n .replace(/([a-z0-9])([A-Z])/g, \"$1-$2\")\n .replace(/[_\\s]+/g, \"-\")\n .toLowerCase();\n const basePath = `/admin/core/${moduleName.trim()}/${normalizedModelName}/form/${recordId}`;\n\n return viewMode ? `${basePath}?viewMode=${viewMode}` : basePath;\n};\n\nexport const normalizeSolidFormActionPath = (currentPath: string, actionUrl: string) => {\n if (!actionUrl) return \"\";\n if (actionUrl.startsWith(\"http\") || actionUrl.startsWith(\"/\")) {\n return actionUrl;\n }\n\n const basePath = currentPath.replace(/\\/form(\\/[^/]+)?(\\/)?$/, \"\");\n const normalizedBase = basePath.length > 0 ? basePath : \"/\";\n const actionTrimmed = actionUrl.replace(/^\\/+/, \"\");\n\n return `${normalizedBase.replace(/\\/+$/, \"\")}/${actionTrimmed}`;\n};\n"]}
@@ -11,6 +11,31 @@ export const normalizeSolidListTreeKanbanActionPath = (currentPath: string, acti
11
11
  return `${normalizedBase.replace(/\/+$/, "")}/${actionTrimmed}`;
12
12
  };
13
13
 
14
+ export const buildAdminRecordFormPath = ({
15
+ moduleName,
16
+ modelName,
17
+ recordId,
18
+ viewMode,
19
+ }: {
20
+ moduleName?: string | null;
21
+ modelName?: string | null;
22
+ recordId?: string | number | null;
23
+ viewMode?: "view" | "edit";
24
+ }) => {
25
+ if (!moduleName || !modelName || recordId === null || recordId === undefined || recordId === "") {
26
+ return "";
27
+ }
28
+
29
+ const normalizedModelName = modelName
30
+ .trim()
31
+ .replace(/([a-z0-9])([A-Z])/g, "$1-$2")
32
+ .replace(/[_\s]+/g, "-")
33
+ .toLowerCase();
34
+ const basePath = `/admin/core/${moduleName.trim()}/${normalizedModelName}/form/${recordId}`;
35
+
36
+ return viewMode ? `${basePath}?viewMode=${viewMode}` : basePath;
37
+ };
38
+
14
39
  export const normalizeSolidFormActionPath = (currentPath: string, actionUrl: string) => {
15
40
  if (!actionUrl) return "";
16
41
  if (actionUrl.startsWith("http") || actionUrl.startsWith("/")) {
@@ -1,12 +1,20 @@
1
1
  export declare const solidServiceApi: import("@reduxjs/toolkit/query/react").Api<import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, {
2
- seeder: import("@reduxjs/toolkit/query/react").MutationDefinition<any, import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, never, any, "solidServiceApi">;
2
+ seeder: import("@reduxjs/toolkit/query/react").MutationDefinition<string | {
3
+ seeder: string;
4
+ modulesToSeed?: string[] | undefined;
5
+ }, import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, never, any, "solidServiceApi">;
3
6
  codeGenerationPostProcess: import("@reduxjs/toolkit/query/react").MutationDefinition<{
4
7
  runModuleMetadataSeeder: boolean;
5
8
  runSolidIngestion: boolean;
9
+ modulesToSeed?: string[] | undefined;
6
10
  }, import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, never, any, "solidServiceApi">;
7
11
  }, "solidServiceApi", never, typeof import("@reduxjs/toolkit/query/react").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName>;
8
- export declare const useSeederMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query/react").MutationDefinition<any, import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, never, any, "solidServiceApi">>, useCodeGenerationPostProcessMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query/react").MutationDefinition<{
12
+ export declare const useSeederMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query/react").MutationDefinition<string | {
13
+ seeder: string;
14
+ modulesToSeed?: string[] | undefined;
15
+ }, import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, never, any, "solidServiceApi">>, useCodeGenerationPostProcessMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query/react").MutationDefinition<{
9
16
  runModuleMetadataSeeder: boolean;
10
17
  runSolidIngestion: boolean;
18
+ modulesToSeed?: string[] | undefined;
11
19
  }, import("@reduxjs/toolkit/query/react").BaseQueryFn<string | import("@reduxjs/toolkit/query/react").FetchArgs, unknown, import("@reduxjs/toolkit/query/react").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query/react").FetchBaseQueryMeta>, never, any, "solidServiceApi">>;
12
20
  //# sourceMappingURL=solidServiceApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"solidServiceApi.d.ts","sourceRoot":"","sources":["../../../src/redux/api/solidServiceApi.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe;;;iCAc0D,OAAO;2BAAuB,OAAO;;+JAQzH,CAAC;AAEH,eAAO,MACH,iBAAiB,wZACjB,oCAAoC;6BAZ8C,OAAO;uBAAuB,OAAO;qRAaxG,CAAC"}
1
+ {"version":3,"file":"solidServiceApi.d.ts","sourceRoot":"","sources":["../../../src/redux/api/solidServiceApi.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe;;gBAIoB,MAAM;;;;iCAQgC,OAAO;2BAAuB,OAAO;;;+JAQzH,CAAC;AAEH,eAAO,MACH,iBAAiB;YAnB2B,MAAM;;uRAoBlD,oCAAoC;6BAZ8C,OAAO;uBAAuB,OAAO;;qRAaxG,CAAC"}
@@ -5,12 +5,10 @@ export var solidServiceApi = createApi({
5
5
  baseQuery: baseQueryWithAuth,
6
6
  endpoints: function (builder) { return ({
7
7
  seeder: builder.mutation({
8
- query: function (name) { return ({
8
+ query: function (payload) { return ({
9
9
  url: '/seed',
10
10
  method: 'POST',
11
- body: {
12
- "seeder": name
13
- }
11
+ body: typeof payload === 'string' ? { seeder: payload } : payload,
14
12
  }); },
15
13
  }),
16
14
  // Add a mutation for calling /code-generation/post-process, which takes an empty body
@@ -1 +1 @@
1
- {"version":3,"file":"solidServiceApi.js","sourceRoot":"","sources":["../../../src/redux/api/solidServiceApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,CAAC,IAAM,eAAe,GAAG,SAAS,CAAC;IACrC,WAAW,EAAE,iBAAiB;IAC9B,SAAS,EAAE,iBAAiB;IAC5B,SAAS,EAAE,UAAC,OAAO,IAAK,OAAA,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC;YACrB,KAAK,EAAE,UAAC,IAAI,IAAK,OAAA,CAAC;gBACd,GAAG,EAAE,OAAO;gBACZ,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACF,QAAQ,EAAE,IAAI;iBACjB;aACJ,CAAC,EANe,CAMf;SACL,CAAC;QACF,sFAAsF;QACtF,yBAAyB,EAAE,OAAO,CAAC,QAAQ,CAA4E;YACnH,KAAK,EAAE,UAAC,OAAO,IAAK,OAAA,CAAC;gBACjB,GAAG,EAAE,+BAA+B;gBACpC,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,OAAO;aAChB,CAAC,EAJkB,CAIlB;SACL,CAAC;KACL,CAAC,EAlBsB,CAkBtB;CACL,CAAC,CAAC;AAEH,MAAM,CACF,IAAA,iBAAiB,GAEjB,eAAe,kBAFE,EACjB,oCAAoC,GACpC,eAAe,qCADqB,CACpB","sourcesContent":["import { createApi } from '@reduxjs/toolkit/query/react';\nimport { baseQueryWithAuth } from './fetchBaseQuery';\n\nexport const solidServiceApi = createApi({\n reducerPath: 'solidServiceApi',\n baseQuery: baseQueryWithAuth,\n endpoints: (builder) => ({\n seeder: builder.mutation({\n query: (name) => ({\n url: '/seed',\n method: 'POST',\n body: {\n \"seeder\": name\n }\n }),\n }),\n // Add a mutation for calling /code-generation/post-process, which takes an empty body\n codeGenerationPostProcess: builder.mutation<any, { \"runModuleMetadataSeeder\": boolean, \"runSolidIngestion\": boolean }>({\n query: (payload) => ({\n url: '/code-generation/post-process',\n method: 'POST',\n body: payload\n }),\n }),\n }),\n});\n\nexport const {\n useSeederMutation,\n useCodeGenerationPostProcessMutation\n} = solidServiceApi;\n"]}
1
+ {"version":3,"file":"solidServiceApi.js","sourceRoot":"","sources":["../../../src/redux/api/solidServiceApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,CAAC,IAAM,eAAe,GAAG,SAAS,CAAC;IACrC,WAAW,EAAE,iBAAiB;IAC9B,SAAS,EAAE,iBAAiB;IAC5B,SAAS,EAAE,UAAC,OAAO,IAAK,OAAA,CAAC;QACrB,MAAM,EAAE,OAAO,CAAC,QAAQ,CAA6D;YACjF,KAAK,EAAE,UAAC,OAAO,IAAK,OAAA,CAAC;gBACjB,GAAG,EAAE,OAAO;gBACZ,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO;aACpE,CAAC,EAJkB,CAIlB;SACL,CAAC;QACF,sFAAsF;QACtF,yBAAyB,EAAE,OAAO,CAAC,QAAQ,CAAwG;YAC/I,KAAK,EAAE,UAAC,OAAO,IAAK,OAAA,CAAC;gBACjB,GAAG,EAAE,+BAA+B;gBACpC,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,OAAO;aAChB,CAAC,EAJkB,CAIlB;SACL,CAAC;KACL,CAAC,EAhBsB,CAgBtB;CACL,CAAC,CAAC;AAEH,MAAM,CACF,IAAA,iBAAiB,GAEjB,eAAe,kBAFE,EACjB,oCAAoC,GACpC,eAAe,qCADqB,CACpB","sourcesContent":["import { createApi } from '@reduxjs/toolkit/query/react';\nimport { baseQueryWithAuth } from './fetchBaseQuery';\n\nexport const solidServiceApi = createApi({\n reducerPath: 'solidServiceApi',\n baseQuery: baseQueryWithAuth,\n endpoints: (builder) => ({\n seeder: builder.mutation<any, { seeder: string, modulesToSeed?: string[] } | string>({\n query: (payload) => ({\n url: '/seed',\n method: 'POST',\n body: typeof payload === 'string' ? { seeder: payload } : payload,\n }),\n }),\n // Add a mutation for calling /code-generation/post-process, which takes an empty body\n codeGenerationPostProcess: builder.mutation<any, { \"runModuleMetadataSeeder\": boolean, \"runSolidIngestion\": boolean, \"modulesToSeed\"?: string[] }>({\n query: (payload) => ({\n url: '/code-generation/post-process',\n method: 'POST',\n body: payload\n }),\n }),\n }),\n});\n\nexport const {\n useSeederMutation,\n useCodeGenerationPostProcessMutation\n} = solidServiceApi;\n"]}
@@ -5,17 +5,15 @@ export const solidServiceApi = createApi({
5
5
  reducerPath: 'solidServiceApi',
6
6
  baseQuery: baseQueryWithAuth,
7
7
  endpoints: (builder) => ({
8
- seeder: builder.mutation({
9
- query: (name) => ({
8
+ seeder: builder.mutation<any, { seeder: string, modulesToSeed?: string[] } | string>({
9
+ query: (payload) => ({
10
10
  url: '/seed',
11
11
  method: 'POST',
12
- body: {
13
- "seeder": name
14
- }
12
+ body: typeof payload === 'string' ? { seeder: payload } : payload,
15
13
  }),
16
14
  }),
17
15
  // Add a mutation for calling /code-generation/post-process, which takes an empty body
18
- codeGenerationPostProcess: builder.mutation<any, { "runModuleMetadataSeeder": boolean, "runSolidIngestion": boolean }>({
16
+ codeGenerationPostProcess: builder.mutation<any, { "runModuleMetadataSeeder": boolean, "runSolidIngestion": boolean, "modulesToSeed"?: string[] }>({
19
17
  query: (payload) => ({
20
18
  url: '/code-generation/post-process',
21
19
  method: 'POST',
@@ -95,10 +95,14 @@ export declare const solidApiSlices: (import("@reduxjs/toolkit/query").Api<impor
95
95
  updateUserKey: import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "modelApi">;
96
96
  navigation: import("@reduxjs/toolkit/query").QueryDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "modelApi">;
97
97
  }, "modelApi", never, typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName> | import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, {
98
- seeder: import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidServiceApi">;
98
+ seeder: import("@reduxjs/toolkit/query").MutationDefinition<string | {
99
+ seeder: string;
100
+ modulesToSeed?: string[] | undefined;
101
+ }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidServiceApi">;
99
102
  codeGenerationPostProcess: import("@reduxjs/toolkit/query").MutationDefinition<{
100
103
  runModuleMetadataSeeder: boolean;
101
104
  runSolidIngestion: boolean;
105
+ modulesToSeed?: string[] | undefined;
102
106
  }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidServiceApi">;
103
107
  }, "solidServiceApi", never, typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName> | import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, {
104
108
  getmodules: import("@reduxjs/toolkit/query").QueryDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, {
@@ -1 +1 @@
1
- {"version":3,"file":"defaultStoreConfig.d.ts","sourceRoot":"","sources":["../../../src/redux/store/defaultStoreConfig.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yJAsB1B,CAAC;AAGF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CASzB,CAAC"}
1
+ {"version":3,"file":"defaultStoreConfig.d.ts","sourceRoot":"","sources":["../../../src/redux/store/defaultStoreConfig.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yJAsB1B,CAAC;AAGF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CASzB,CAAC"}
@@ -4549,6 +4549,9 @@ html.dark .solid-paginator-btn:hover:not(:disabled),
4549
4549
  line-height: 1.1;
4550
4550
  cursor: pointer;
4551
4551
  }
4552
+ .p-button-danger{
4553
+ color: var(--destructive) !important;
4554
+ }
4552
4555
 
4553
4556
  .solid-row-action-button-label {
4554
4557
  flex: 1;
@@ -1 +1 @@
1
- {"version":3,"file":"CardPage.d.ts","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/CardPage.tsx"],"names":[],"mappings":"AAIA,wBAAgB,QAAQ,4CAKvB"}
1
+ {"version":3,"file":"CardPage.d.ts","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/CardPage.tsx"],"names":[],"mappings":"AAQA,wBAAgB,QAAQ,4CAcvB"}
@@ -11,12 +11,23 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { camelCase } from "lodash";
14
+ import { useEffect } from "react";
14
15
  import { useParams } from "react-router-dom";
15
16
  import { SolidCardView } from "../../../../components/core/card/SolidCardView";
17
+ import { storeCurrentModelViewContext } from "../../../../helpers/modelViewPersistence";
18
+ import { usePathname } from "../../../../hooks/usePathname";
19
+ import { useSearchParams } from "../../../../hooks/useSearchParams";
16
20
  export function CardPage() {
17
21
  var params = useParams();
22
+ var pathname = usePathname();
23
+ var searchParams = useSearchParams();
24
+ var search = searchParams.toString();
18
25
  var moduleName = params.moduleName || "";
19
26
  var modelName = params.modelName ? camelCase(params.modelName) : "";
27
+ useEffect(function () {
28
+ var currentUrl = search ? "".concat(pathname, "?").concat(search) : pathname;
29
+ storeCurrentModelViewContext(currentUrl);
30
+ }, [pathname, search]);
20
31
  return _jsx(SolidCardView, __assign({}, params, { embeded: false, moduleName: moduleName, modelName: modelName }));
21
32
  }
22
33
  //# sourceMappingURL=CardPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardPage.js","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/CardPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAE/E,MAAM,UAAU,QAAQ;IACtB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,OAAO,KAAC,aAAa,eAAK,MAAM,IAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC;AACrG,CAAC","sourcesContent":["import { camelCase } from \"lodash\";\nimport { useParams } from \"react-router-dom\";\nimport { SolidCardView } from \"../../../../components/core/card/SolidCardView\";\n\nexport function CardPage() {\n const params = useParams();\n const moduleName = params.moduleName || \"\";\n const modelName = params.modelName ? camelCase(params.modelName) : \"\";\n return <SolidCardView {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;\n}\n"]}
1
+ {"version":3,"file":"CardPage.js","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/CardPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,MAAM,UAAU,QAAQ;IACtB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;IACvC,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtE,SAAS,CAAC;QACR,IAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,UAAG,QAAQ,cAAI,MAAM,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvB,OAAO,KAAC,aAAa,eAAK,MAAM,IAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC;AACrG,CAAC","sourcesContent":["import { camelCase } from \"lodash\";\nimport { useEffect } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport { SolidCardView } from \"../../../../components/core/card/SolidCardView\";\nimport { storeCurrentModelViewContext } from \"../../../../helpers/modelViewPersistence\";\nimport { usePathname } from \"../../../../hooks/usePathname\";\nimport { useSearchParams } from \"../../../../hooks/useSearchParams\";\n\nexport function CardPage() {\n const params = useParams();\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const search = searchParams.toString();\n const moduleName = params.moduleName || \"\";\n const modelName = params.modelName ? camelCase(params.modelName) : \"\";\n\n useEffect(() => {\n const currentUrl = search ? `${pathname}?${search}` : pathname;\n storeCurrentModelViewContext(currentUrl);\n }, [pathname, search]);\n\n return <SolidCardView {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;\n}\n"]}
@@ -1,10 +1,23 @@
1
1
  import { camelCase } from "lodash";
2
+ import { useEffect } from "react";
2
3
  import { useParams } from "react-router-dom";
3
4
  import { SolidCardView } from "../../../../components/core/card/SolidCardView";
5
+ import { storeCurrentModelViewContext } from "../../../../helpers/modelViewPersistence";
6
+ import { usePathname } from "../../../../hooks/usePathname";
7
+ import { useSearchParams } from "../../../../hooks/useSearchParams";
4
8
 
5
9
  export function CardPage() {
6
10
  const params = useParams();
11
+ const pathname = usePathname();
12
+ const searchParams = useSearchParams();
13
+ const search = searchParams.toString();
7
14
  const moduleName = params.moduleName || "";
8
15
  const modelName = params.modelName ? camelCase(params.modelName) : "";
16
+
17
+ useEffect(() => {
18
+ const currentUrl = search ? `${pathname}?${search}` : pathname;
19
+ storeCurrentModelViewContext(currentUrl);
20
+ }, [pathname, search]);
21
+
9
22
  return <SolidCardView {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;
10
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"KanbanPage.d.ts","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/KanbanPage.tsx"],"names":[],"mappings":"AAIA,wBAAgB,UAAU,4CAKzB"}
1
+ {"version":3,"file":"KanbanPage.d.ts","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/KanbanPage.tsx"],"names":[],"mappings":"AAQA,wBAAgB,UAAU,4CAczB"}
@@ -12,11 +12,22 @@ var __assign = (this && this.__assign) || function () {
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { SolidKanbanView } from "../../../../components/core/kanban/SolidKanbanView";
14
14
  import { camelCase } from "lodash";
15
+ import { useEffect } from "react";
15
16
  import { useParams } from "react-router-dom";
17
+ import { storeCurrentModelViewContext } from "../../../../helpers/modelViewPersistence";
18
+ import { usePathname } from "../../../../hooks/usePathname";
19
+ import { useSearchParams } from "../../../../hooks/useSearchParams";
16
20
  export function KanbanPage() {
17
21
  var params = useParams();
22
+ var pathname = usePathname();
23
+ var searchParams = useSearchParams();
24
+ var search = searchParams.toString();
18
25
  var moduleName = params.moduleName || "";
19
26
  var modelName = params.modelName ? camelCase(params.modelName) : "";
27
+ useEffect(function () {
28
+ var currentUrl = search ? "".concat(pathname, "?").concat(search) : pathname;
29
+ storeCurrentModelViewContext(currentUrl);
30
+ }, [pathname, search]);
20
31
  return _jsx(SolidKanbanView, __assign({}, params, { embeded: false, moduleName: moduleName, modelName: modelName }));
21
32
  }
22
33
  //# sourceMappingURL=KanbanPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KanbanPage.js","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/KanbanPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oDAAoD,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,UAAU,UAAU;IACxB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,OAAO,KAAC,eAAe,eAAK,MAAM,IAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC;AACvG,CAAC","sourcesContent":["import { SolidKanbanView } from \"../../../../components/core/kanban/SolidKanbanView\";\nimport { camelCase } from \"lodash\";\nimport { useParams } from \"react-router-dom\";\n\nexport function KanbanPage() {\n const params = useParams();\n const moduleName = params.moduleName || \"\";\n const modelName = params.modelName ? camelCase(params.modelName) : \"\";\n return <SolidKanbanView {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;\n}\n"]}
1
+ {"version":3,"file":"KanbanPage.js","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/KanbanPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oDAAoD,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,MAAM,UAAU,UAAU;IACxB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;IACvC,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtE,SAAS,CAAC;QACR,IAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,UAAG,QAAQ,cAAI,MAAM,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvB,OAAO,KAAC,eAAe,eAAK,MAAM,IAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,CAAC;AACvG,CAAC","sourcesContent":["import { SolidKanbanView } from \"../../../../components/core/kanban/SolidKanbanView\";\nimport { camelCase } from \"lodash\";\nimport { useEffect } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport { storeCurrentModelViewContext } from \"../../../../helpers/modelViewPersistence\";\nimport { usePathname } from \"../../../../hooks/usePathname\";\nimport { useSearchParams } from \"../../../../hooks/useSearchParams\";\n\nexport function KanbanPage() {\n const params = useParams();\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const search = searchParams.toString();\n const moduleName = params.moduleName || \"\";\n const modelName = params.modelName ? camelCase(params.modelName) : \"\";\n\n useEffect(() => {\n const currentUrl = search ? `${pathname}?${search}` : pathname;\n storeCurrentModelViewContext(currentUrl);\n }, [pathname, search]);\n\n return <SolidKanbanView {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;\n}\n"]}
@@ -1,10 +1,23 @@
1
1
  import { SolidKanbanView } from "../../../../components/core/kanban/SolidKanbanView";
2
2
  import { camelCase } from "lodash";
3
+ import { useEffect } from "react";
3
4
  import { useParams } from "react-router-dom";
5
+ import { storeCurrentModelViewContext } from "../../../../helpers/modelViewPersistence";
6
+ import { usePathname } from "../../../../hooks/usePathname";
7
+ import { useSearchParams } from "../../../../hooks/useSearchParams";
4
8
 
5
9
  export function KanbanPage() {
6
10
  const params = useParams();
11
+ const pathname = usePathname();
12
+ const searchParams = useSearchParams();
13
+ const search = searchParams.toString();
7
14
  const moduleName = params.moduleName || "";
8
15
  const modelName = params.modelName ? camelCase(params.modelName) : "";
16
+
17
+ useEffect(() => {
18
+ const currentUrl = search ? `${pathname}?${search}` : pathname;
19
+ storeCurrentModelViewContext(currentUrl);
20
+ }, [pathname, search]);
21
+
9
22
  return <SolidKanbanView {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;
10
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ListPage.d.ts","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/ListPage.tsx"],"names":[],"mappings":"AAOA,wBAAgB,QAAQ,4CAuBvB"}
1
+ {"version":3,"file":"ListPage.d.ts","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/ListPage.tsx"],"names":[],"mappings":"AAUA,wBAAgB,QAAQ,4CA+CvB"}
@@ -12,12 +12,18 @@ var __assign = (this && this.__assign) || function () {
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { SolidListView } from "../../../../components/core/list/SolidListView";
14
14
  import { camelCase } from "lodash";
15
- import { useCallback } from "react";
15
+ import { useCallback, useEffect } from "react";
16
16
  import { useParams, useSearchParams } from "react-router-dom";
17
17
  import { registerListView, unregisterListView } from "../../../../components/core/list/listViewRegistry";
18
+ import { usePathname } from "../../../../hooks/usePathname";
19
+ import { useRouter } from "../../../../hooks/useRouter";
20
+ import { resolveRetainedModelViewRoute, storeCurrentModelViewContext } from "../../../../helpers/modelViewPersistence";
18
21
  export function ListPage() {
19
22
  var params = useParams();
20
- var _a = useSearchParams(), searchParams = _a[0], setSearchParams = _a[1];
23
+ var searchParams = useSearchParams()[0];
24
+ var pathname = usePathname();
25
+ var router = useRouter();
26
+ var search = searchParams.toString();
21
27
  var moduleName = params.moduleName || "";
22
28
  var modelName = params.modelName ? camelCase(params.modelName) : "";
23
29
  var menuItemId = searchParams.get("menuItemId") || "";
@@ -32,6 +38,23 @@ export function ListPage() {
32
38
  }
33
39
  unregisterListView(listId);
34
40
  }, [listId]);
41
+ useEffect(function () {
42
+ var currentUrl = search ? "".concat(pathname, "?").concat(search) : pathname;
43
+ var hasSavedQuery = searchParams.has("savedQuery");
44
+ if (!hasSavedQuery) {
45
+ var retainedUrl = resolveRetainedModelViewRoute(currentUrl);
46
+ if (retainedUrl !== currentUrl) {
47
+ router.replace(retainedUrl);
48
+ return;
49
+ }
50
+ }
51
+ // savedQuery strip karke store karo
52
+ var params = new URLSearchParams(search);
53
+ params.delete("savedQuery");
54
+ var cleanSearch = params.toString();
55
+ var urlToStore = cleanSearch ? "".concat(pathname, "?").concat(cleanSearch) : pathname;
56
+ storeCurrentModelViewContext(urlToStore);
57
+ }, [pathname, search]);
35
58
  return _jsx(SolidListView, __assign({ ref: setListRef }, params, { embeded: false, moduleName: moduleName, modelName: modelName }), listId);
36
59
  }
37
60
  //# sourceMappingURL=ListPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListPage.js","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/ListPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAEzG,MAAM,UAAU,QAAQ;IACtB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IACrB,IAAA,KAAkC,eAAe,EAAE,EAAlD,YAAY,QAAA,EAAE,eAAe,QAAqB,CAAC;IAE1D,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtE,IAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IACxD,IAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IAC5D,IAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACpD,IAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAExD,IAAM,MAAM,GAAG,eAAQ,UAAU,cAAI,SAAS,cAAI,UAAU,cAAI,YAAY,cAAI,QAAQ,cAAI,UAAU,CAAE,CAAC;IAEzG,IAAM,UAAU,GAAG,WAAW,CAAC,UAAC,MAAkC;QAChE,IAAI,MAAM,EAAE;YACV,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACjC,OAAO;SACR;QACD,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,KAAC,aAAa,aAAC,GAAG,EAAE,UAAU,IAAmB,MAAM,IAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,KAAhF,MAAM,CAA8E,CAAC;AACnI,CAAC","sourcesContent":["import { SolidListView } from \"../../../../components/core/list/SolidListView\";\nimport { camelCase } from \"lodash\";\nimport { useCallback } from \"react\";\nimport { useParams, useSearchParams } from \"react-router-dom\";\nimport type { SolidListViewHandle } from \"../../../../components/core/list/SolidListView\";\nimport { registerListView, unregisterListView } from \"../../../../components/core/list/listViewRegistry\";\n\nexport function ListPage() {\n const params = useParams();\n const [searchParams, setSearchParams] = useSearchParams();\n\n const moduleName = params.moduleName || \"\";\n const modelName = params.modelName ? camelCase(params.modelName) : \"\";\n\n const menuItemId = searchParams.get(\"menuItemId\") || \"\";\n const menuItemName = searchParams.get(\"menuItemName\") || \"\";\n const actionId = searchParams.get(\"actionId\") || \"\";\n const actionName = searchParams.get(\"actionName\") || \"\";\n\n const listId = `page:${moduleName}:${modelName}:${menuItemId}:${menuItemName}:${actionId}:${actionName}`;\n\n const setListRef = useCallback((handle: SolidListViewHandle | null) => {\n if (handle) {\n registerListView(listId, handle);\n return;\n }\n unregisterListView(listId);\n }, [listId]);\n\n return <SolidListView ref={setListRef} key={listId} {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;\n}\n"]}
1
+ {"version":3,"file":"ListPage.js","sourceRoot":"","sources":["../../../../../src/routes/pages/admin/core/ListPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AAEvH,MAAM,UAAU,QAAQ;IACtB,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IACpB,IAAA,YAAY,GAAI,eAAe,EAAE,GAArB,CAAsB;IACzC,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;IAEvC,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IAC3C,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtE,IAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IACxD,IAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IAC5D,IAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IACpD,IAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAExD,IAAM,MAAM,GAAG,eAAQ,UAAU,cAAI,SAAS,cAAI,UAAU,cAAI,YAAY,cAAI,QAAQ,cAAI,UAAU,CAAE,CAAC;IAEzG,IAAM,UAAU,GAAG,WAAW,CAAC,UAAC,MAAkC;QAChE,IAAI,MAAM,EAAE;YACV,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACjC,OAAO;SACR;QACD,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,SAAS,CAAC;QACR,IAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,UAAG,QAAQ,cAAI,MAAM,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,IAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,CAAC,aAAa,EAAE;YAClB,IAAM,WAAW,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAC;YAC9D,IAAI,WAAW,KAAK,UAAU,EAAE;gBAC9B,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAC5B,OAAO;aACR;SACF;QAED,oCAAoC;QACpC,IAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC5B,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,UAAG,QAAQ,cAAI,WAAW,CAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEzE,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvB,OAAO,KAAC,aAAa,aAAC,GAAG,EAAE,UAAU,IAAmB,MAAM,IAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,KAAhF,MAAM,CAA8E,CAAC;AACnI,CAAC","sourcesContent":["import { SolidListView } from \"../../../../components/core/list/SolidListView\";\nimport { camelCase } from \"lodash\";\nimport { useCallback, useEffect } from \"react\";\nimport { useParams, useSearchParams } from \"react-router-dom\";\nimport type { SolidListViewHandle } from \"../../../../components/core/list/SolidListView\";\nimport { registerListView, unregisterListView } from \"../../../../components/core/list/listViewRegistry\";\nimport { usePathname } from \"../../../../hooks/usePathname\";\nimport { useRouter } from \"../../../../hooks/useRouter\";\nimport { resolveRetainedModelViewRoute, storeCurrentModelViewContext } from \"../../../../helpers/modelViewPersistence\";\n\nexport function ListPage() {\n const params = useParams();\n const [searchParams] = useSearchParams();\n const pathname = usePathname();\n const router = useRouter();\n const search = searchParams.toString();\n\n const moduleName = params.moduleName || \"\";\n const modelName = params.modelName ? camelCase(params.modelName) : \"\";\n\n const menuItemId = searchParams.get(\"menuItemId\") || \"\";\n const menuItemName = searchParams.get(\"menuItemName\") || \"\";\n const actionId = searchParams.get(\"actionId\") || \"\";\n const actionName = searchParams.get(\"actionName\") || \"\";\n\n const listId = `page:${moduleName}:${modelName}:${menuItemId}:${menuItemName}:${actionId}:${actionName}`;\n\n const setListRef = useCallback((handle: SolidListViewHandle | null) => {\n if (handle) {\n registerListView(listId, handle);\n return;\n }\n unregisterListView(listId);\n }, [listId]);\n\n useEffect(() => {\n const currentUrl = search ? `${pathname}?${search}` : pathname;\n const hasSavedQuery = searchParams.has(\"savedQuery\");\n\n if (!hasSavedQuery) {\n const retainedUrl = resolveRetainedModelViewRoute(currentUrl);\n if (retainedUrl !== currentUrl) {\n router.replace(retainedUrl);\n return;\n }\n }\n\n // savedQuery strip karke store karo\n const params = new URLSearchParams(search);\n params.delete(\"savedQuery\");\n const cleanSearch = params.toString();\n const urlToStore = cleanSearch ? `${pathname}?${cleanSearch}` : pathname;\n\n storeCurrentModelViewContext(urlToStore);\n }, [pathname, search]);\n\n return <SolidListView ref={setListRef} key={listId} {...params} embeded={false} moduleName={moduleName} modelName={modelName} />;\n}\n"]}