@nestledjs/data-browser 0.1.1 → 0.1.4

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 (83) hide show
  1. package/index.d.ts +15 -0
  2. package/index.js +64 -0
  3. package/lib/admin-data.d.ts +2 -0
  4. package/lib/components/filters/DateRangeFilter.d.ts +7 -0
  5. package/lib/components/filters/DateRangeFilter.js +105 -0
  6. package/lib/components/filters/NumberRangeFilter.d.ts +8 -0
  7. package/lib/components/filters/NumberRangeFilter.js +115 -0
  8. package/lib/components/filters/RelationComponents.d.ts +32 -0
  9. package/lib/components/filters/RelationComponents.js +265 -0
  10. package/lib/components/filters/RelationFilterField.d.ts +8 -0
  11. package/lib/components/filters/RelationFilterField.js +116 -0
  12. package/lib/components/filters/index.d.ts +4 -0
  13. package/lib/components/index.d.ts +2 -0
  14. package/lib/components/shared/AdminBreadcrumbs.d.ts +13 -0
  15. package/lib/components/shared/AdminBreadcrumbs.js +103 -0
  16. package/lib/components/shared/AdminErrorStates.d.ts +30 -0
  17. package/lib/components/shared/AdminErrorStates.js +214 -0
  18. package/lib/components/shared/AdminStatusDisplay.d.ts +21 -0
  19. package/lib/components/shared/AdminStatusDisplay.js +205 -0
  20. package/lib/components/shared/index.d.ts +3 -0
  21. package/lib/context/AdminDataContext.d.ts +47 -0
  22. package/lib/context/AdminDataContext.js +28 -0
  23. package/lib/hooks/useAdminList.d.ts +5 -0
  24. package/lib/hooks/useAdminList.js +41 -0
  25. package/lib/hooks/useClickOutside.d.ts +2 -0
  26. package/lib/hooks/useClickOutside.js +13 -0
  27. package/lib/hooks/useDebounce.d.ts +1 -0
  28. package/lib/hooks/useDebounce.js +13 -0
  29. package/lib/hooks/useRelationData.d.ts +7 -0
  30. package/lib/hooks/useRelationData.js +64 -0
  31. package/lib/layouts/AdminDataLayout.d.ts +5 -0
  32. package/lib/layouts/AdminDataLayout.js +315 -0
  33. package/lib/pages/AdminDataCreatePage.d.ts +4 -0
  34. package/lib/pages/AdminDataCreatePage.js +487 -0
  35. package/lib/pages/AdminDataEditPage.d.ts +4 -0
  36. package/lib/pages/AdminDataEditPage.js +903 -0
  37. package/lib/pages/AdminDataIndexPage.d.ts +4 -0
  38. package/lib/pages/AdminDataIndexPage.js +91 -0
  39. package/lib/pages/AdminDataListPage.d.ts +9 -0
  40. package/lib/pages/AdminDataListPage.js +1218 -0
  41. package/lib/types/index.d.ts +60 -0
  42. package/lib/types/index.js +16 -0
  43. package/lib/utils/graphql-utils.d.ts +25 -0
  44. package/lib/utils/graphql-utils.js +265 -0
  45. package/lib/utils/secure-storage.d.ts +50 -0
  46. package/lib/utils/secure-storage.js +145 -0
  47. package/lib/utils/string-utils.d.ts +6 -0
  48. package/lib/utils/string-utils.js +27 -0
  49. package/package.json +16 -3
  50. package/.babelrc +0 -12
  51. package/LICENSE +0 -21
  52. package/eslint.config.mjs +0 -12
  53. package/project.json +0 -35
  54. package/src/index.ts +0 -28
  55. package/src/lib/admin-data.spec.tsx +0 -10
  56. package/src/lib/admin-data.tsx +0 -9
  57. package/src/lib/components/filters/DateRangeFilter.tsx +0 -88
  58. package/src/lib/components/filters/NumberRangeFilter.tsx +0 -111
  59. package/src/lib/components/filters/RelationComponents.tsx +0 -176
  60. package/src/lib/components/filters/RelationFilterField.tsx +0 -106
  61. package/src/lib/components/filters/index.ts +0 -5
  62. package/src/lib/components/index.ts +0 -2
  63. package/src/lib/components/shared/AdminBreadcrumbs.tsx +0 -88
  64. package/src/lib/components/shared/AdminErrorStates.tsx +0 -180
  65. package/src/lib/components/shared/AdminStatusDisplay.tsx +0 -292
  66. package/src/lib/components/shared/index.ts +0 -3
  67. package/src/lib/context/AdminDataContext.tsx +0 -74
  68. package/src/lib/hooks/useAdminList.ts +0 -42
  69. package/src/lib/hooks/useClickOutside.ts +0 -21
  70. package/src/lib/hooks/useDebounce.ts +0 -16
  71. package/src/lib/hooks/useRelationData.ts +0 -114
  72. package/src/lib/layouts/AdminDataLayout.tsx +0 -251
  73. package/src/lib/pages/AdminDataCreatePage.tsx +0 -415
  74. package/src/lib/pages/AdminDataEditPage.tsx +0 -777
  75. package/src/lib/pages/AdminDataIndexPage.tsx +0 -50
  76. package/src/lib/pages/AdminDataListPage.tsx +0 -921
  77. package/src/lib/types/index.ts +0 -51
  78. package/src/lib/utils/graphql-utils.ts +0 -538
  79. package/src/lib/utils/secure-storage.ts +0 -305
  80. package/src/lib/utils/string-utils.ts +0 -53
  81. package/tsconfig.json +0 -17
  82. package/tsconfig.lib.json +0 -20
  83. package/vite.config.ts +0 -35
@@ -0,0 +1,487 @@
1
+ import { jsxDEV as e } from "react/jsx-dev-runtime";
2
+ import { gql as x } from "@apollo/client";
3
+ import { useMutation as C } from "@apollo/client/react";
4
+ import { ExclamationCircleIcon as h, CheckCircleIcon as D } from "@heroicons/react/24/outline";
5
+ import { useAdminDataContext as P } from "../context/AdminDataContext.js";
6
+ import { ErrorBoundary as A } from "@nestledjs/shared-components";
7
+ import { Form as I } from "@nestledjs/forms";
8
+ import { useState as U, useMemo as y, useEffect as _ } from "react";
9
+ import { useParams as w, Link as g, useNavigate as k } from "react-router";
10
+ import { getAdminDocuments as T, buildFormFields as E, cleanFormInput as $ } from "../utils/graphql-utils.js";
11
+ function N(a) {
12
+ return a.replace(/([a-z])([A-Z])/g, "$1 $2").replace(/^./, (d) => d.toUpperCase());
13
+ }
14
+ function B(a) {
15
+ return !a || typeof a != "string" ? "" : a.replace(/[<>"'%;()&+]/g, "").replace(/javascript:/gi, "").replace(/on\w+\s*=/gi, "").trim().substring(0, 100);
16
+ }
17
+ const j = (a) => a.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
18
+ function O() {
19
+ const { dataType: a } = w(), { databaseModels: d, basePath: o = "/admin/data", formTheme: f } = P(), u = (b) => d.find((m) => m.name === b), s = ((b) => {
20
+ const m = B(b);
21
+ if (!m) return null;
22
+ const i = m.split("-").map((l) => l.charAt(0).toUpperCase() + l.slice(1).toLowerCase()).join("");
23
+ return d.find((l) => l.name === i) ? i : null;
24
+ })(a), r = !s, c = s ? u(s) : null, p = s && !0 && !c;
25
+ return r ? /* @__PURE__ */ e("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ e("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ e("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ e("div", { className: "text-center", children: [
26
+ /* @__PURE__ */ e(h, { className: "mx-auto h-12 w-12 text-red-400" }, void 0, !1, {
27
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
28
+ lineNumber: 94,
29
+ columnNumber: 15
30
+ }, this),
31
+ /* @__PURE__ */ e("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Unauthorized" }, void 0, !1, {
32
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
33
+ lineNumber: 95,
34
+ columnNumber: 15
35
+ }, this),
36
+ /* @__PURE__ */ e("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: "Invalid data type or insufficient permissions." }, void 0, !1, {
37
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
38
+ lineNumber: 96,
39
+ columnNumber: 15
40
+ }, this),
41
+ /* @__PURE__ */ e("div", { className: "mt-6", children: /* @__PURE__ */ e(
42
+ g,
43
+ {
44
+ to: o,
45
+ className: "w-full flex justify-center py-2 px-4 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-green-web hover:bg-green-web-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web",
46
+ children: "Return to Data Browser"
47
+ },
48
+ void 0,
49
+ !1,
50
+ {
51
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
52
+ lineNumber: 100,
53
+ columnNumber: 17
54
+ },
55
+ this
56
+ ) }, void 0, !1, {
57
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
58
+ lineNumber: 99,
59
+ columnNumber: 15
60
+ }, this)
61
+ ] }, void 0, !0, {
62
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
63
+ lineNumber: 93,
64
+ columnNumber: 13
65
+ }, this) }, void 0, !1, {
66
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
67
+ lineNumber: 92,
68
+ columnNumber: 11
69
+ }, this) }, void 0, !1, {
70
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
71
+ lineNumber: 91,
72
+ columnNumber: 9
73
+ }, this) }, void 0, !1, {
74
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
75
+ lineNumber: 90,
76
+ columnNumber: 7
77
+ }, this) : p ? /* @__PURE__ */ e("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ e("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ e("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ e("div", { className: "text-center", children: [
78
+ /* @__PURE__ */ e(h, { className: "mx-auto h-12 w-12 text-yellow-400" }, void 0, !1, {
79
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
80
+ lineNumber: 146,
81
+ columnNumber: 15
82
+ }, this),
83
+ /* @__PURE__ */ e("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Model Not Found" }, void 0, !1, {
84
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
85
+ lineNumber: 147,
86
+ columnNumber: 15
87
+ }, this),
88
+ /* @__PURE__ */ e("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: [
89
+ 'The data model for "',
90
+ s,
91
+ '" could not be found.'
92
+ ] }, void 0, !0, {
93
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
94
+ lineNumber: 148,
95
+ columnNumber: 15
96
+ }, this),
97
+ /* @__PURE__ */ e("div", { className: "mt-6", children: /* @__PURE__ */ e(
98
+ g,
99
+ {
100
+ to: o,
101
+ className: "w-full flex justify-center py-2 px-4 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-green-web hover:bg-green-web-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web",
102
+ children: "Return to Data Browser"
103
+ },
104
+ void 0,
105
+ !1,
106
+ {
107
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
108
+ lineNumber: 152,
109
+ columnNumber: 17
110
+ },
111
+ this
112
+ ) }, void 0, !1, {
113
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
114
+ lineNumber: 151,
115
+ columnNumber: 15
116
+ }, this)
117
+ ] }, void 0, !0, {
118
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
119
+ lineNumber: 145,
120
+ columnNumber: 13
121
+ }, this) }, void 0, !1, {
122
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
123
+ lineNumber: 144,
124
+ columnNumber: 11
125
+ }, this) }, void 0, !1, {
126
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
127
+ lineNumber: 143,
128
+ columnNumber: 9
129
+ }, this) }, void 0, !1, {
130
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
131
+ lineNumber: 142,
132
+ columnNumber: 7
133
+ }, this) : /* @__PURE__ */ e(L, { model: c, basePath: o, formTheme: f }, void 0, !1, {
134
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
135
+ lineNumber: 167,
136
+ columnNumber: 10
137
+ }, this);
138
+ }
139
+ function L({ model: a, basePath: d, formTheme: o }) {
140
+ const f = k(), { sdk: u } = P(), [t, s] = U({ status: "idle" }), r = y(() => {
141
+ try {
142
+ return T(u, a);
143
+ } catch (i) {
144
+ return console.error("[AdminDataCreatePage] Error getting documents:", i), null;
145
+ }
146
+ }, [u, a]), c = y(() => {
147
+ var i, n;
148
+ if (!(r != null && r.create)) return null;
149
+ try {
150
+ return (i = r.create) != null && i.definitions && ((n = r.create) != null && n.loc) ? r.create : x(r.create);
151
+ } catch (l) {
152
+ return console.error("[AdminDataCreatePage] Error parsing CREATE mutation:", l), null;
153
+ }
154
+ }, [r]), [p] = C(
155
+ c || x`
156
+ mutation PlaceholderCreate {
157
+ __typename
158
+ }
159
+ `
160
+ );
161
+ if (!r || !c)
162
+ return /* @__PURE__ */ e("div", { className: "min-h-screen bg-gray-50 dark:bg-gray-900 flex flex-col justify-center py-12 sm:px-6 lg:px-8", children: /* @__PURE__ */ e("div", { className: "mt-8 sm:mx-auto sm:w-full sm:max-w-2xl", children: /* @__PURE__ */ e("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ e("div", { className: "text-center", children: [
163
+ /* @__PURE__ */ e(h, { className: "mx-auto h-12 w-12 text-red-400" }, void 0, !1, {
164
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
165
+ lineNumber: 226,
166
+ columnNumber: 15
167
+ }, this),
168
+ /* @__PURE__ */ e("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "GraphQL Schema Error" }, void 0, !1, {
169
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
170
+ lineNumber: 227,
171
+ columnNumber: 15
172
+ }, this),
173
+ /* @__PURE__ */ e("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: "Unable to load GraphQL documents for this model. Please ensure the API server is running and the GraphQL schema is up to date." }, void 0, !1, {
174
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
175
+ lineNumber: 228,
176
+ columnNumber: 15
177
+ }, this),
178
+ /* @__PURE__ */ e("div", { className: "mt-6", children: /* @__PURE__ */ e(
179
+ g,
180
+ {
181
+ to: d,
182
+ className: "w-full flex justify-center py-2 px-4 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-green-web hover:bg-green-web-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web",
183
+ children: "Return to Data Browser"
184
+ },
185
+ void 0,
186
+ !1,
187
+ {
188
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
189
+ lineNumber: 233,
190
+ columnNumber: 17
191
+ },
192
+ this
193
+ ) }, void 0, !1, {
194
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
195
+ lineNumber: 232,
196
+ columnNumber: 15
197
+ }, this)
198
+ ] }, void 0, !0, {
199
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
200
+ lineNumber: 225,
201
+ columnNumber: 13
202
+ }, this) }, void 0, !1, {
203
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
204
+ lineNumber: 224,
205
+ columnNumber: 11
206
+ }, this) }, void 0, !1, {
207
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
208
+ lineNumber: 223,
209
+ columnNumber: 9
210
+ }, this) }, void 0, !1, {
211
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
212
+ lineNumber: 222,
213
+ columnNumber: 7
214
+ }, this);
215
+ const b = E(u, a, "create"), m = async (i) => {
216
+ try {
217
+ s({ status: "loading" });
218
+ const n = $(i, a), l = await p({
219
+ variables: {
220
+ input: n
221
+ }
222
+ });
223
+ if (l.errors) {
224
+ console.error("GraphQL errors:", l.errors), s({
225
+ status: "error",
226
+ message: l.errors.map((v) => v.message).join(", ")
227
+ });
228
+ return;
229
+ }
230
+ s({
231
+ status: "success",
232
+ message: `${N(a.name)} created successfully!`
233
+ }), setTimeout(() => {
234
+ f(`/admin/data/${j(a.pluralName)}`);
235
+ }, 1500);
236
+ } catch (n) {
237
+ console.error("Error creating record:", n), s({
238
+ status: "error",
239
+ message: n instanceof Error ? n.message : "An unexpected error occurred"
240
+ });
241
+ }
242
+ };
243
+ return _(() => {
244
+ if (t.status === "error") {
245
+ const i = setTimeout(() => {
246
+ s({ status: "idle" });
247
+ }, 5e3);
248
+ return () => clearTimeout(i);
249
+ }
250
+ }, [t.status]), /* @__PURE__ */ e("div", { className: "space-y-6", children: [
251
+ /* @__PURE__ */ e("div", { className: "mb-8", children: [
252
+ /* @__PURE__ */ e("nav", { className: "flex mb-6", "aria-label": "Breadcrumb", children: /* @__PURE__ */ e("ol", { className: "flex items-center space-x-4", children: [
253
+ /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(g, { to: "/admin/data", className: "text-gray-400 dark:text-gray-500 hover:text-gray-500 dark:hover:text-gray-400", children: "Data Browser" }, void 0, !1, {
254
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
255
+ lineNumber: 309,
256
+ columnNumber: 17
257
+ }, this) }, void 0, !1, {
258
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
259
+ lineNumber: 308,
260
+ columnNumber: 15
261
+ }, this),
262
+ /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e("div", { className: "flex items-center", children: [
263
+ /* @__PURE__ */ e(
264
+ "svg",
265
+ {
266
+ className: "flex-shrink-0 h-5 w-5 text-gray-300 dark:text-gray-600",
267
+ fill: "currentColor",
268
+ viewBox: "0 0 20 20",
269
+ children: /* @__PURE__ */ e(
270
+ "path",
271
+ {
272
+ fillRule: "evenodd",
273
+ d: "M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 111.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",
274
+ clipRule: "evenodd"
275
+ },
276
+ void 0,
277
+ !1,
278
+ {
279
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
280
+ lineNumber: 320,
281
+ columnNumber: 21
282
+ },
283
+ this
284
+ )
285
+ },
286
+ void 0,
287
+ !1,
288
+ {
289
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
290
+ lineNumber: 315,
291
+ columnNumber: 19
292
+ },
293
+ this
294
+ ),
295
+ /* @__PURE__ */ e(
296
+ g,
297
+ {
298
+ to: `/admin/data/${j(a.pluralName)}`,
299
+ className: "ml-4 text-gray-400 dark:text-gray-500 hover:text-gray-500 dark:hover:text-gray-400",
300
+ children: N(a.pluralName)
301
+ },
302
+ void 0,
303
+ !1,
304
+ {
305
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
306
+ lineNumber: 326,
307
+ columnNumber: 19
308
+ },
309
+ this
310
+ )
311
+ ] }, void 0, !0, {
312
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
313
+ lineNumber: 314,
314
+ columnNumber: 17
315
+ }, this) }, void 0, !1, {
316
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
317
+ lineNumber: 313,
318
+ columnNumber: 15
319
+ }, this),
320
+ /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e("div", { className: "flex items-center", children: [
321
+ /* @__PURE__ */ e(
322
+ "svg",
323
+ {
324
+ className: "flex-shrink-0 h-5 w-5 text-gray-300 dark:text-gray-600",
325
+ fill: "currentColor",
326
+ viewBox: "0 0 20 20",
327
+ children: /* @__PURE__ */ e(
328
+ "path",
329
+ {
330
+ fillRule: "evenodd",
331
+ d: "M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 111.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z",
332
+ clipRule: "evenodd"
333
+ },
334
+ void 0,
335
+ !1,
336
+ {
337
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
338
+ lineNumber: 341,
339
+ columnNumber: 21
340
+ },
341
+ this
342
+ )
343
+ },
344
+ void 0,
345
+ !1,
346
+ {
347
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
348
+ lineNumber: 336,
349
+ columnNumber: 19
350
+ },
351
+ this
352
+ ),
353
+ /* @__PURE__ */ e("span", { className: "ml-4 text-gray-500 dark:text-gray-400", children: "Create New" }, void 0, !1, {
354
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
355
+ lineNumber: 347,
356
+ columnNumber: 19
357
+ }, this)
358
+ ] }, void 0, !0, {
359
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
360
+ lineNumber: 335,
361
+ columnNumber: 17
362
+ }, this) }, void 0, !1, {
363
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
364
+ lineNumber: 334,
365
+ columnNumber: 15
366
+ }, this)
367
+ ] }, void 0, !0, {
368
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
369
+ lineNumber: 307,
370
+ columnNumber: 13
371
+ }, this) }, void 0, !1, {
372
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
373
+ lineNumber: 306,
374
+ columnNumber: 11
375
+ }, this),
376
+ /* @__PURE__ */ e("h1", { className: "mt-4 text-3xl font-bold text-gray-900 dark:text-gray-100", children: [
377
+ "Create ",
378
+ N(a.name)
379
+ ] }, void 0, !0, {
380
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
381
+ lineNumber: 352,
382
+ columnNumber: 11
383
+ }, this)
384
+ ] }, void 0, !0, {
385
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
386
+ lineNumber: 305,
387
+ columnNumber: 7
388
+ }, this),
389
+ t.status !== "idle" && /* @__PURE__ */ e(
390
+ "div",
391
+ {
392
+ className: `mb-6 rounded-md p-4 ${t.status === "success" ? "bg-green-50 border border-green-200" : t.status === "error" ? "bg-red-50 border border-red-200" : "bg-blue-50 border border-blue-200"}`,
393
+ children: /* @__PURE__ */ e("div", { className: "flex", children: [
394
+ /* @__PURE__ */ e("div", { className: "flex-shrink-0", children: t.status === "success" ? /* @__PURE__ */ e(D, { className: "h-5 w-5 text-green-400" }, void 0, !1, {
395
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
396
+ lineNumber: 371,
397
+ columnNumber: 19
398
+ }, this) : t.status === "error" ? /* @__PURE__ */ e(h, { className: "h-5 w-5 text-red-400" }, void 0, !1, {
399
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
400
+ lineNumber: 373,
401
+ columnNumber: 19
402
+ }, this) : /* @__PURE__ */ e("div", { className: "h-5 w-5 border-2 border-blue-400 border-t-transparent rounded-full animate-spin" }, void 0, !1, {
403
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
404
+ lineNumber: 375,
405
+ columnNumber: 19
406
+ }, this) }, void 0, !1, {
407
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
408
+ lineNumber: 369,
409
+ columnNumber: 15
410
+ }, this),
411
+ /* @__PURE__ */ e("div", { className: "ml-3", children: /* @__PURE__ */ e(
412
+ "p",
413
+ {
414
+ className: `text-sm font-medium ${t.status === "success" ? "text-green-800" : t.status === "error" ? "text-red-800" : "text-blue-800"}`,
415
+ children: t.status === "loading" ? `Creating ${N(a.name)}...` : t.message
416
+ },
417
+ void 0,
418
+ !1,
419
+ {
420
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
421
+ lineNumber: 379,
422
+ columnNumber: 17
423
+ },
424
+ this
425
+ ) }, void 0, !1, {
426
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
427
+ lineNumber: 378,
428
+ columnNumber: 15
429
+ }, this)
430
+ ] }, void 0, !0, {
431
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
432
+ lineNumber: 368,
433
+ columnNumber: 13
434
+ }, this)
435
+ },
436
+ void 0,
437
+ !1,
438
+ {
439
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
440
+ lineNumber: 359,
441
+ columnNumber: 11
442
+ },
443
+ this
444
+ ),
445
+ /* @__PURE__ */ e("div", { className: "bg-white dark:bg-gray-800 shadow-sm rounded-lg", children: /* @__PURE__ */ e("div", { className: "px-6 py-8", children: /* @__PURE__ */ e(
446
+ I,
447
+ {
448
+ id: `create-${a.name.toLowerCase()}-form`,
449
+ fields: b,
450
+ submit: m,
451
+ disabled: t.status === "loading",
452
+ theme: o
453
+ },
454
+ void 0,
455
+ !1,
456
+ {
457
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
458
+ lineNumber: 400,
459
+ columnNumber: 13
460
+ },
461
+ this
462
+ ) }, void 0, !1, {
463
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
464
+ lineNumber: 399,
465
+ columnNumber: 11
466
+ }, this) }, void 0, !1, {
467
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
468
+ lineNumber: 398,
469
+ columnNumber: 9
470
+ }, this)
471
+ ] }, void 0, !0, {
472
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
473
+ lineNumber: 303,
474
+ columnNumber: 5
475
+ }, this);
476
+ }
477
+ function V({ error: a }) {
478
+ return /* @__PURE__ */ e(A, { error: a }, void 0, !1, {
479
+ fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataCreatePage.tsx",
480
+ lineNumber: 414,
481
+ columnNumber: 10
482
+ }, this);
483
+ }
484
+ export {
485
+ V as AdminDataCreateErrorBoundary,
486
+ O as AdminDataCreatePage
487
+ };
@@ -0,0 +1,4 @@
1
+ export declare function AdminDataEditPage(): import("react/jsx-runtime").JSX.Element;
2
+ export declare function AdminDataEditErrorBoundary({ error }: Readonly<{
3
+ error: Error;
4
+ }>): import("react/jsx-runtime").JSX.Element;