@nestledjs/data-browser 0.1.11 → 0.1.12

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.
@@ -1,4 +1,3 @@
1
- import { jsxDEV } from "react/jsx-dev-runtime";
2
1
  import { gql } from "@apollo/client";
3
2
  import { useQuery, useMutation } from "@apollo/client/react";
4
3
  import { loadDevMessages, loadErrorMessages } from "@apollo/client/dev";
@@ -10,6 +9,7 @@ import { Form } from "@nestledjs/forms";
10
9
  import { useState, useMemo, useEffect } from "react";
11
10
  import { useParams, Link, useNavigate } from "react-router";
12
11
  import { getAdminDocuments, buildFormFields, cleanFormInput } from "../utils/graphql-utils.js";
12
+ var _jsxFileName = "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx";
13
13
  function toLowerCamelCase(name) {
14
14
  if (!name) return "";
15
15
  return name.charAt(0).toLowerCase() + name.slice(1);
@@ -45,8 +45,15 @@ const validateId = (id) => {
45
45
  return sanitized;
46
46
  };
47
47
  function AdminDataEditPage() {
48
- const { dataType, id } = useParams();
49
- const { databaseModels, basePath = "/admin/data", formTheme } = useAdminDataContext();
48
+ const {
49
+ dataType,
50
+ id
51
+ } = useParams();
52
+ const {
53
+ databaseModels,
54
+ basePath = "/admin/data",
55
+ formTheme
56
+ } = useAdminDataContext();
50
57
  const findModelByName = (name) => {
51
58
  return databaseModels.find((model2) => model2.name === name);
52
59
  };
@@ -68,130 +75,105 @@ function AdminDataEditPage() {
68
75
  const model = validatedDataType ? findModelByName(validatedDataType) : null;
69
76
  const shouldShowModelNotFound = validatedDataType && validatedId && !model;
70
77
  if (shouldShowUnauthorized) {
71
- return /* @__PURE__ */ jsxDEV("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ jsxDEV("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ jsxDEV("div", { className: "text-center", children: [
72
- /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-red-400" }, void 0, false, {
73
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
74
- lineNumber: 122,
75
- columnNumber: 15
76
- }, this),
77
- /* @__PURE__ */ jsxDEV("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Unauthorized" }, void 0, false, {
78
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
79
- lineNumber: 123,
80
- columnNumber: 15
81
- }, this),
82
- /* @__PURE__ */ jsxDEV("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: "Invalid data type, ID, or insufficient permissions." }, void 0, false, {
83
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
84
- lineNumber: 124,
85
- columnNumber: 15
86
- }, this),
87
- /* @__PURE__ */ jsxDEV("div", { className: "mt-6", children: /* @__PURE__ */ jsxDEV(
88
- Link,
89
- {
90
- to: basePath,
91
- 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",
92
- children: "Return to Data Browser"
93
- },
94
- void 0,
95
- false,
96
- {
97
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
98
- lineNumber: 128,
99
- columnNumber: 17
100
- },
101
- this
102
- ) }, void 0, false, {
103
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
104
- lineNumber: 127,
105
- columnNumber: 15
106
- }, this)
107
- ] }, void 0, true, {
108
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
109
- lineNumber: 121,
110
- columnNumber: 13
111
- }, this) }, void 0, false, {
112
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
113
- lineNumber: 120,
114
- columnNumber: 11
115
- }, this) }, void 0, false, {
116
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
117
- lineNumber: 119,
118
- columnNumber: 9
119
- }, this) }, void 0, false, {
120
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
78
+ return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col justify-center py-12", __self: this, __source: {
79
+ fileName: _jsxFileName,
121
80
  lineNumber: 118,
122
81
  columnNumber: 7
123
- }, this);
82
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mt-8 mx-auto w-full max-w-md", __self: this, __source: {
83
+ fileName: _jsxFileName,
84
+ lineNumber: 119,
85
+ columnNumber: 9
86
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", __self: this, __source: {
87
+ fileName: _jsxFileName,
88
+ lineNumber: 120,
89
+ columnNumber: 11
90
+ } }, /* @__PURE__ */ React.createElement("div", { className: "text-center", __self: this, __source: {
91
+ fileName: _jsxFileName,
92
+ lineNumber: 121,
93
+ columnNumber: 13
94
+ } }, /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-red-400", __self: this, __source: {
95
+ fileName: _jsxFileName,
96
+ lineNumber: 122,
97
+ columnNumber: 15
98
+ } }), /* @__PURE__ */ React.createElement("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
99
+ fileName: _jsxFileName,
100
+ lineNumber: 123,
101
+ columnNumber: 15
102
+ } }, "Unauthorized"), /* @__PURE__ */ React.createElement("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", __self: this, __source: {
103
+ fileName: _jsxFileName,
104
+ lineNumber: 124,
105
+ columnNumber: 15
106
+ } }, "Invalid data type, ID, or insufficient permissions."), /* @__PURE__ */ React.createElement("div", { className: "mt-6", __self: this, __source: {
107
+ fileName: _jsxFileName,
108
+ lineNumber: 127,
109
+ columnNumber: 15
110
+ } }, /* @__PURE__ */ React.createElement(Link, { to: basePath, 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", __self: this, __source: {
111
+ fileName: _jsxFileName,
112
+ lineNumber: 128,
113
+ columnNumber: 17
114
+ } }, "Return to Data Browser"))))));
124
115
  }
125
116
  if (shouldShowModelNotFound) {
126
- return /* @__PURE__ */ jsxDEV("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ jsxDEV("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ jsxDEV("div", { className: "text-center", children: [
127
- /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-yellow-400" }, void 0, false, {
128
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
129
- lineNumber: 148,
130
- columnNumber: 15
131
- }, this),
132
- /* @__PURE__ */ jsxDEV("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Model Not Found" }, void 0, false, {
133
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
134
- lineNumber: 149,
135
- columnNumber: 15
136
- }, this),
137
- /* @__PURE__ */ jsxDEV("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: [
138
- 'The data model for "',
139
- validatedDataType,
140
- '" could not be found.'
141
- ] }, void 0, true, {
142
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
143
- lineNumber: 150,
144
- columnNumber: 15
145
- }, this),
146
- /* @__PURE__ */ jsxDEV("div", { className: "mt-6", children: /* @__PURE__ */ jsxDEV(
147
- Link,
148
- {
149
- to: basePath,
150
- 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",
151
- children: "Return to Data Browser"
152
- },
153
- void 0,
154
- false,
155
- {
156
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
157
- lineNumber: 154,
158
- columnNumber: 17
159
- },
160
- this
161
- ) }, void 0, false, {
162
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
163
- lineNumber: 153,
164
- columnNumber: 15
165
- }, this)
166
- ] }, void 0, true, {
167
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
168
- lineNumber: 147,
169
- columnNumber: 13
170
- }, this) }, void 0, false, {
171
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
172
- lineNumber: 146,
173
- columnNumber: 11
174
- }, this) }, void 0, false, {
175
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
176
- lineNumber: 145,
177
- columnNumber: 9
178
- }, this) }, void 0, false, {
179
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
117
+ return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col justify-center py-12", __self: this, __source: {
118
+ fileName: _jsxFileName,
180
119
  lineNumber: 144,
181
120
  columnNumber: 7
182
- }, this);
121
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mt-8 mx-auto w-full max-w-md", __self: this, __source: {
122
+ fileName: _jsxFileName,
123
+ lineNumber: 145,
124
+ columnNumber: 9
125
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", __self: this, __source: {
126
+ fileName: _jsxFileName,
127
+ lineNumber: 146,
128
+ columnNumber: 11
129
+ } }, /* @__PURE__ */ React.createElement("div", { className: "text-center", __self: this, __source: {
130
+ fileName: _jsxFileName,
131
+ lineNumber: 147,
132
+ columnNumber: 13
133
+ } }, /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-yellow-400", __self: this, __source: {
134
+ fileName: _jsxFileName,
135
+ lineNumber: 148,
136
+ columnNumber: 15
137
+ } }), /* @__PURE__ */ React.createElement("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
138
+ fileName: _jsxFileName,
139
+ lineNumber: 149,
140
+ columnNumber: 15
141
+ } }, "Model Not Found"), /* @__PURE__ */ React.createElement("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", __self: this, __source: {
142
+ fileName: _jsxFileName,
143
+ lineNumber: 150,
144
+ columnNumber: 15
145
+ } }, 'The data model for "', validatedDataType, '" could not be found.'), /* @__PURE__ */ React.createElement("div", { className: "mt-6", __self: this, __source: {
146
+ fileName: _jsxFileName,
147
+ lineNumber: 153,
148
+ columnNumber: 15
149
+ } }, /* @__PURE__ */ React.createElement(Link, { to: basePath, 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", __self: this, __source: {
150
+ fileName: _jsxFileName,
151
+ lineNumber: 154,
152
+ columnNumber: 17
153
+ } }, "Return to Data Browser"))))));
183
154
  }
184
- return /* @__PURE__ */ jsxDEV(AdminDataEditPageContent, { model, id: validatedId, basePath, formTheme }, void 0, false, {
185
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
155
+ return /* @__PURE__ */ React.createElement(AdminDataEditPageContent, { model, id: validatedId, basePath, formTheme, __self: this, __source: {
156
+ fileName: _jsxFileName,
186
157
  lineNumber: 169,
187
158
  columnNumber: 10
188
- }, this);
159
+ } });
189
160
  }
190
- function AdminDataEditPageContent({ model, id, basePath, formTheme }) {
161
+ function AdminDataEditPageContent({
162
+ model,
163
+ id,
164
+ basePath,
165
+ formTheme
166
+ }) {
191
167
  const navigate = useNavigate();
192
- const { sdk } = useAdminDataContext();
193
- const [submissionState, setSubmissionState] = useState({ status: "idle" });
194
- const [deleteState, setDeleteState] = useState({ status: "idle" });
168
+ const {
169
+ sdk
170
+ } = useAdminDataContext();
171
+ const [submissionState, setSubmissionState] = useState({
172
+ status: "idle"
173
+ });
174
+ const [deleteState, setDeleteState] = useState({
175
+ status: "idle"
176
+ });
195
177
  const [showDeleteConfirm, setShowDeleteConfirm] = useState(false);
196
178
  const documents = useMemo(() => {
197
179
  try {
@@ -242,36 +224,38 @@ function AdminDataEditPageContent({ model, id, basePath, formTheme }) {
242
224
  }, [documents]);
243
225
  const idVariableName = getModelIdVariableName(model.name);
244
226
  const responseFieldName = getModelResponseFieldName(model.name);
245
- const { data, loading, error, refetch } = useQuery(
246
- QUERY || gql`
227
+ const {
228
+ data,
229
+ loading,
230
+ error,
231
+ refetch
232
+ } = useQuery(QUERY || gql`
247
233
  query PlaceholderQuery {
248
234
  __typename
249
235
  }
250
- `,
251
- {
252
- variables: { [idVariableName]: id },
253
- errorPolicy: "all",
254
- skip: !QUERY || !id
255
- }
256
- );
257
- const [updateMutation] = useMutation(
258
- UPDATE_MUTATION || gql`
236
+ `, {
237
+ variables: {
238
+ [idVariableName]: id
239
+ },
240
+ errorPolicy: "all",
241
+ skip: !QUERY || !id
242
+ });
243
+ const [updateMutation] = useMutation(UPDATE_MUTATION || gql`
259
244
  mutation PlaceholderUpdate {
260
245
  __typename
261
246
  }
262
- `
263
- );
264
- const [deleteMutation] = useMutation(
265
- DELETE_MUTATION || gql`
247
+ `);
248
+ const [deleteMutation] = useMutation(DELETE_MUTATION || gql`
266
249
  mutation PlaceholderDelete {
267
250
  __typename
268
251
  }
269
- `
270
- );
252
+ `);
271
253
  useEffect(() => {
272
254
  if (submissionState.status === "error") {
273
255
  const timer = setTimeout(() => {
274
- setSubmissionState({ status: "idle" });
256
+ setSubmissionState({
257
+ status: "idle"
258
+ });
275
259
  }, 5e3);
276
260
  return () => clearTimeout(timer);
277
261
  }
@@ -279,237 +263,165 @@ function AdminDataEditPageContent({ model, id, basePath, formTheme }) {
279
263
  useEffect(() => {
280
264
  if (deleteState.status === "error") {
281
265
  const timer = setTimeout(() => {
282
- setDeleteState({ status: "idle" });
266
+ setDeleteState({
267
+ status: "idle"
268
+ });
283
269
  }, 5e3);
284
270
  return () => clearTimeout(timer);
285
271
  }
286
272
  }, [deleteState.status]);
287
273
  if (!documents || !QUERY || !UPDATE_MUTATION || !DELETE_MUTATION) {
288
- return /* @__PURE__ */ jsxDEV("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ jsxDEV("div", { className: "mt-8 mx-auto w-full max-w-2xl", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ jsxDEV("div", { className: "text-center", children: [
289
- /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-red-400" }, void 0, false, {
290
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
291
- lineNumber: 309,
292
- columnNumber: 15
293
- }, this),
294
- /* @__PURE__ */ jsxDEV("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "GraphQL Schema Error" }, void 0, false, {
295
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
296
- lineNumber: 310,
297
- columnNumber: 15
298
- }, this),
299
- /* @__PURE__ */ jsxDEV("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, false, {
300
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
301
- lineNumber: 311,
302
- columnNumber: 15
303
- }, this),
304
- /* @__PURE__ */ jsxDEV("div", { className: "mt-6", children: /* @__PURE__ */ jsxDEV(
305
- Link,
306
- {
307
- to: basePath,
308
- 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",
309
- children: "Return to Data Browser"
310
- },
311
- void 0,
312
- false,
313
- {
314
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
315
- lineNumber: 316,
316
- columnNumber: 17
317
- },
318
- this
319
- ) }, void 0, false, {
320
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
321
- lineNumber: 315,
322
- columnNumber: 15
323
- }, this)
324
- ] }, void 0, true, {
325
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
326
- lineNumber: 308,
327
- columnNumber: 13
328
- }, this) }, void 0, false, {
329
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
330
- lineNumber: 307,
331
- columnNumber: 11
332
- }, this) }, void 0, false, {
333
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
334
- lineNumber: 306,
335
- columnNumber: 9
336
- }, this) }, void 0, false, {
337
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
274
+ return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col justify-center py-12", __self: this, __source: {
275
+ fileName: _jsxFileName,
338
276
  lineNumber: 305,
339
277
  columnNumber: 7
340
- }, this);
278
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mt-8 mx-auto w-full max-w-2xl", __self: this, __source: {
279
+ fileName: _jsxFileName,
280
+ lineNumber: 306,
281
+ columnNumber: 9
282
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", __self: this, __source: {
283
+ fileName: _jsxFileName,
284
+ lineNumber: 307,
285
+ columnNumber: 11
286
+ } }, /* @__PURE__ */ React.createElement("div", { className: "text-center", __self: this, __source: {
287
+ fileName: _jsxFileName,
288
+ lineNumber: 308,
289
+ columnNumber: 13
290
+ } }, /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-red-400", __self: this, __source: {
291
+ fileName: _jsxFileName,
292
+ lineNumber: 309,
293
+ columnNumber: 15
294
+ } }), /* @__PURE__ */ React.createElement("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
295
+ fileName: _jsxFileName,
296
+ lineNumber: 310,
297
+ columnNumber: 15
298
+ } }, "GraphQL Schema Error"), /* @__PURE__ */ React.createElement("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", __self: this, __source: {
299
+ fileName: _jsxFileName,
300
+ lineNumber: 311,
301
+ columnNumber: 15
302
+ } }, "Unable to load GraphQL documents for this model. Please ensure the API server is running and the GraphQL schema is up to date."), /* @__PURE__ */ React.createElement("div", { className: "mt-6", __self: this, __source: {
303
+ fileName: _jsxFileName,
304
+ lineNumber: 315,
305
+ columnNumber: 15
306
+ } }, /* @__PURE__ */ React.createElement(Link, { to: basePath, 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", __self: this, __source: {
307
+ fileName: _jsxFileName,
308
+ lineNumber: 316,
309
+ columnNumber: 17
310
+ } }, "Return to Data Browser"))))));
341
311
  }
342
312
  if (error) {
343
- return /* @__PURE__ */ jsxDEV("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ jsxDEV("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ jsxDEV("div", { className: "text-center", children: [
344
- /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-red-400" }, void 0, false, {
345
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
346
- lineNumber: 337,
347
- columnNumber: 15
348
- }, this),
349
- /* @__PURE__ */ jsxDEV("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Error Loading Data" }, void 0, false, {
350
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
351
- lineNumber: 338,
352
- columnNumber: 15
353
- }, this),
354
- /* @__PURE__ */ jsxDEV("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: error.message }, void 0, false, {
355
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
356
- lineNumber: 339,
357
- columnNumber: 15
358
- }, this),
359
- /* @__PURE__ */ jsxDEV("div", { className: "mt-6 space-y-3", children: [
360
- /* @__PURE__ */ jsxDEV(
361
- "button",
362
- {
363
- onClick: () => refetch(),
364
- 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",
365
- children: "Try Again"
366
- },
367
- void 0,
368
- false,
369
- {
370
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
371
- lineNumber: 341,
372
- columnNumber: 17
373
- },
374
- this
375
- ),
376
- /* @__PURE__ */ jsxDEV(
377
- Link,
378
- {
379
- to: `${basePath}/${toKebabCase(model.pluralName)}`,
380
- className: "w-full flex justify-center py-2 px-4 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web",
381
- children: "Back to List"
382
- },
383
- void 0,
384
- false,
385
- {
386
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
387
- lineNumber: 347,
388
- columnNumber: 17
389
- },
390
- this
391
- )
392
- ] }, void 0, true, {
393
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
394
- lineNumber: 340,
395
- columnNumber: 15
396
- }, this)
397
- ] }, void 0, true, {
398
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
399
- lineNumber: 336,
400
- columnNumber: 13
401
- }, this) }, void 0, false, {
402
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
403
- lineNumber: 335,
404
- columnNumber: 11
405
- }, this) }, void 0, false, {
406
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
407
- lineNumber: 334,
408
- columnNumber: 9
409
- }, this) }, void 0, false, {
410
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
313
+ return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col justify-center py-12", __self: this, __source: {
314
+ fileName: _jsxFileName,
411
315
  lineNumber: 333,
412
316
  columnNumber: 7
413
- }, this);
317
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mt-8 mx-auto w-full max-w-md", __self: this, __source: {
318
+ fileName: _jsxFileName,
319
+ lineNumber: 334,
320
+ columnNumber: 9
321
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", __self: this, __source: {
322
+ fileName: _jsxFileName,
323
+ lineNumber: 335,
324
+ columnNumber: 11
325
+ } }, /* @__PURE__ */ React.createElement("div", { className: "text-center", __self: this, __source: {
326
+ fileName: _jsxFileName,
327
+ lineNumber: 336,
328
+ columnNumber: 13
329
+ } }, /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-red-400", __self: this, __source: {
330
+ fileName: _jsxFileName,
331
+ lineNumber: 337,
332
+ columnNumber: 15
333
+ } }), /* @__PURE__ */ React.createElement("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
334
+ fileName: _jsxFileName,
335
+ lineNumber: 338,
336
+ columnNumber: 15
337
+ } }, "Error Loading Data"), /* @__PURE__ */ React.createElement("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", __self: this, __source: {
338
+ fileName: _jsxFileName,
339
+ lineNumber: 339,
340
+ columnNumber: 15
341
+ } }, error.message), /* @__PURE__ */ React.createElement("div", { className: "mt-6 space-y-3", __self: this, __source: {
342
+ fileName: _jsxFileName,
343
+ lineNumber: 340,
344
+ columnNumber: 15
345
+ } }, /* @__PURE__ */ React.createElement("button", { onClick: () => refetch(), 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", __self: this, __source: {
346
+ fileName: _jsxFileName,
347
+ lineNumber: 341,
348
+ columnNumber: 17
349
+ } }, "Try Again"), /* @__PURE__ */ React.createElement(Link, { to: `${basePath}/${toKebabCase(model.pluralName)}`, className: "w-full flex justify-center py-2 px-4 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web", __self: this, __source: {
350
+ fileName: _jsxFileName,
351
+ lineNumber: 347,
352
+ columnNumber: 17
353
+ } }, "Back to List"))))));
414
354
  }
415
355
  if (loading) {
416
- return /* @__PURE__ */ jsxDEV("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ jsxDEV("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ jsxDEV("div", { className: "text-center", children: [
417
- /* @__PURE__ */ jsxDEV("div", { className: "mx-auto h-12 w-12 border-4 border-green-web border-t-transparent rounded-full animate-spin" }, void 0, false, {
418
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
419
- lineNumber: 368,
420
- columnNumber: 15
421
- }, this),
422
- /* @__PURE__ */ jsxDEV("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Loading..." }, void 0, false, {
423
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
424
- lineNumber: 369,
425
- columnNumber: 15
426
- }, this),
427
- /* @__PURE__ */ jsxDEV("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: [
428
- "Loading ",
429
- toReadableText(model.name),
430
- " data..."
431
- ] }, void 0, true, {
432
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
433
- lineNumber: 370,
434
- columnNumber: 15
435
- }, this)
436
- ] }, void 0, true, {
437
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
438
- lineNumber: 367,
439
- columnNumber: 13
440
- }, this) }, void 0, false, {
441
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
442
- lineNumber: 366,
443
- columnNumber: 11
444
- }, this) }, void 0, false, {
445
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
446
- lineNumber: 365,
447
- columnNumber: 9
448
- }, this) }, void 0, false, {
449
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
356
+ return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col justify-center py-12", __self: this, __source: {
357
+ fileName: _jsxFileName,
450
358
  lineNumber: 364,
451
359
  columnNumber: 7
452
- }, this);
360
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mt-8 mx-auto w-full max-w-md", __self: this, __source: {
361
+ fileName: _jsxFileName,
362
+ lineNumber: 365,
363
+ columnNumber: 9
364
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", __self: this, __source: {
365
+ fileName: _jsxFileName,
366
+ lineNumber: 366,
367
+ columnNumber: 11
368
+ } }, /* @__PURE__ */ React.createElement("div", { className: "text-center", __self: this, __source: {
369
+ fileName: _jsxFileName,
370
+ lineNumber: 367,
371
+ columnNumber: 13
372
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mx-auto h-12 w-12 border-4 border-green-web border-t-transparent rounded-full animate-spin", __self: this, __source: {
373
+ fileName: _jsxFileName,
374
+ lineNumber: 368,
375
+ columnNumber: 15
376
+ } }), /* @__PURE__ */ React.createElement("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
377
+ fileName: _jsxFileName,
378
+ lineNumber: 369,
379
+ columnNumber: 15
380
+ } }, "Loading..."), /* @__PURE__ */ React.createElement("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", __self: this, __source: {
381
+ fileName: _jsxFileName,
382
+ lineNumber: 370,
383
+ columnNumber: 15
384
+ } }, "Loading ", toReadableText(model.name), " data...")))));
453
385
  }
454
386
  const item = data == null ? void 0 : data[responseFieldName];
455
387
  if (!item) {
456
- return /* @__PURE__ */ jsxDEV("div", { className: "flex flex-col justify-center py-12", children: /* @__PURE__ */ jsxDEV("div", { className: "mt-8 mx-auto w-full max-w-md", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", children: /* @__PURE__ */ jsxDEV("div", { className: "text-center", children: [
457
- /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-yellow-400" }, void 0, false, {
458
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
459
- lineNumber: 389,
460
- columnNumber: 15
461
- }, this),
462
- /* @__PURE__ */ jsxDEV("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", children: "Not Found" }, void 0, false, {
463
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
464
- lineNumber: 390,
465
- columnNumber: 15
466
- }, this),
467
- /* @__PURE__ */ jsxDEV("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", children: [
468
- "The ",
469
- toReadableText(model.name),
470
- " you're looking for doesn't exist or has been deleted."
471
- ] }, void 0, true, {
472
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
473
- lineNumber: 391,
474
- columnNumber: 15
475
- }, this),
476
- /* @__PURE__ */ jsxDEV("div", { className: "mt-6", children: /* @__PURE__ */ jsxDEV(
477
- Link,
478
- {
479
- to: `${basePath}/${toKebabCase(model.pluralName)}`,
480
- 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",
481
- children: "Back to List"
482
- },
483
- void 0,
484
- false,
485
- {
486
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
487
- lineNumber: 396,
488
- columnNumber: 17
489
- },
490
- this
491
- ) }, void 0, false, {
492
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
493
- lineNumber: 395,
494
- columnNumber: 15
495
- }, this)
496
- ] }, void 0, true, {
497
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
498
- lineNumber: 388,
499
- columnNumber: 13
500
- }, this) }, void 0, false, {
501
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
502
- lineNumber: 387,
503
- columnNumber: 11
504
- }, this) }, void 0, false, {
505
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
506
- lineNumber: 386,
507
- columnNumber: 9
508
- }, this) }, void 0, false, {
509
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
388
+ return /* @__PURE__ */ React.createElement("div", { className: "flex flex-col justify-center py-12", __self: this, __source: {
389
+ fileName: _jsxFileName,
510
390
  lineNumber: 385,
511
391
  columnNumber: 7
512
- }, this);
392
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mt-8 mx-auto w-full max-w-md", __self: this, __source: {
393
+ fileName: _jsxFileName,
394
+ lineNumber: 386,
395
+ columnNumber: 9
396
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 py-8 px-4 shadow sm:rounded-lg sm:px-10", __self: this, __source: {
397
+ fileName: _jsxFileName,
398
+ lineNumber: 387,
399
+ columnNumber: 11
400
+ } }, /* @__PURE__ */ React.createElement("div", { className: "text-center", __self: this, __source: {
401
+ fileName: _jsxFileName,
402
+ lineNumber: 388,
403
+ columnNumber: 13
404
+ } }, /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "mx-auto h-12 w-12 text-yellow-400", __self: this, __source: {
405
+ fileName: _jsxFileName,
406
+ lineNumber: 389,
407
+ columnNumber: 15
408
+ } }), /* @__PURE__ */ React.createElement("h2", { className: "mt-4 text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
409
+ fileName: _jsxFileName,
410
+ lineNumber: 390,
411
+ columnNumber: 15
412
+ } }, "Not Found"), /* @__PURE__ */ React.createElement("p", { className: "mt-2 text-sm text-gray-600 dark:text-gray-400", __self: this, __source: {
413
+ fileName: _jsxFileName,
414
+ lineNumber: 391,
415
+ columnNumber: 15
416
+ } }, "The ", toReadableText(model.name), " you're looking for doesn't exist or has been deleted."), /* @__PURE__ */ React.createElement("div", { className: "mt-6", __self: this, __source: {
417
+ fileName: _jsxFileName,
418
+ lineNumber: 395,
419
+ columnNumber: 15
420
+ } }, /* @__PURE__ */ React.createElement(Link, { to: `${basePath}/${toKebabCase(model.pluralName)}`, 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", __self: this, __source: {
421
+ fileName: _jsxFileName,
422
+ lineNumber: 396,
423
+ columnNumber: 17
424
+ } }, "Back to List"))))));
513
425
  }
514
426
  const formFields = buildFormFields(sdk, model, "update");
515
427
  const initialValues = {};
@@ -599,7 +511,9 @@ function AdminDataEditPageContent({ model, id, basePath, formTheme }) {
599
511
  }
600
512
  const handleSubmit = async (formData) => {
601
513
  try {
602
- setSubmissionState({ status: "loading" });
514
+ setSubmissionState({
515
+ status: "loading"
516
+ });
603
517
  const cleanedInput = cleanFormInput(formData, model);
604
518
  const result = await updateMutation({
605
519
  variables: {
@@ -630,7 +544,9 @@ function AdminDataEditPageContent({ model, id, basePath, formTheme }) {
630
544
  };
631
545
  const handleDelete = async () => {
632
546
  try {
633
- setDeleteState({ status: "loading" });
547
+ setDeleteState({
548
+ status: "loading"
549
+ });
634
550
  const result = await deleteMutation({
635
551
  variables: {
636
552
  [idVariableName]: id
@@ -659,363 +575,188 @@ function AdminDataEditPageContent({ model, id, basePath, formTheme }) {
659
575
  });
660
576
  }
661
577
  };
662
- return /* @__PURE__ */ jsxDEV("div", { className: "space-y-6", children: [
663
- /* @__PURE__ */ jsxDEV("div", { className: "mb-8", children: [
664
- /* @__PURE__ */ jsxDEV("nav", { className: "flex mb-6", "aria-label": "Breadcrumb", children: /* @__PURE__ */ jsxDEV("ol", { className: "flex items-center space-x-4", children: [
665
- /* @__PURE__ */ jsxDEV("li", { children: /* @__PURE__ */ jsxDEV(Link, { to: basePath, className: "text-gray-400 dark:text-gray-500 hover:text-gray-500 dark:hover:text-gray-400", children: "Data Browser" }, void 0, false, {
666
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
667
- lineNumber: 620,
668
- columnNumber: 17
669
- }, this) }, void 0, false, {
670
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
671
- lineNumber: 619,
672
- columnNumber: 15
673
- }, this),
674
- /* @__PURE__ */ jsxDEV("li", { children: /* @__PURE__ */ jsxDEV("div", { className: "flex items-center", children: [
675
- /* @__PURE__ */ jsxDEV(
676
- "svg",
677
- {
678
- className: "flex-shrink-0 h-5 w-5 text-gray-300 dark:text-gray-600",
679
- fill: "currentColor",
680
- viewBox: "0 0 20 20",
681
- children: /* @__PURE__ */ jsxDEV(
682
- "path",
683
- {
684
- fillRule: "evenodd",
685
- 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",
686
- clipRule: "evenodd"
687
- },
688
- void 0,
689
- false,
690
- {
691
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
692
- lineNumber: 631,
693
- columnNumber: 21
694
- },
695
- this
696
- )
697
- },
698
- void 0,
699
- false,
700
- {
701
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
702
- lineNumber: 626,
703
- columnNumber: 19
704
- },
705
- this
706
- ),
707
- /* @__PURE__ */ jsxDEV(
708
- Link,
709
- {
710
- to: `${basePath}/${toKebabCase(model.pluralName)}`,
711
- className: "ml-4 text-gray-400 dark:text-gray-500 hover:text-gray-500 dark:hover:text-gray-400",
712
- children: toReadableText(model.pluralName)
713
- },
714
- void 0,
715
- false,
716
- {
717
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
718
- lineNumber: 637,
719
- columnNumber: 19
720
- },
721
- this
722
- )
723
- ] }, void 0, true, {
724
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
725
- lineNumber: 625,
726
- columnNumber: 17
727
- }, this) }, void 0, false, {
728
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
729
- lineNumber: 624,
730
- columnNumber: 15
731
- }, this),
732
- /* @__PURE__ */ jsxDEV("li", { children: /* @__PURE__ */ jsxDEV("div", { className: "flex items-center", children: [
733
- /* @__PURE__ */ jsxDEV(
734
- "svg",
735
- {
736
- className: "flex-shrink-0 h-5 w-5 text-gray-300 dark:text-gray-600",
737
- fill: "currentColor",
738
- viewBox: "0 0 20 20",
739
- children: /* @__PURE__ */ jsxDEV(
740
- "path",
741
- {
742
- fillRule: "evenodd",
743
- 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",
744
- clipRule: "evenodd"
745
- },
746
- void 0,
747
- false,
748
- {
749
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
750
- lineNumber: 652,
751
- columnNumber: 21
752
- },
753
- this
754
- )
755
- },
756
- void 0,
757
- false,
758
- {
759
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
760
- lineNumber: 647,
761
- columnNumber: 19
762
- },
763
- this
764
- ),
765
- /* @__PURE__ */ jsxDEV("span", { className: "ml-4 text-gray-500 dark:text-gray-400", children: "Edit" }, void 0, false, {
766
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
767
- lineNumber: 658,
768
- columnNumber: 19
769
- }, this)
770
- ] }, void 0, true, {
771
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
772
- lineNumber: 646,
773
- columnNumber: 17
774
- }, this) }, void 0, false, {
775
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
776
- lineNumber: 645,
777
- columnNumber: 15
778
- }, this)
779
- ] }, void 0, true, {
780
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
781
- lineNumber: 618,
782
- columnNumber: 13
783
- }, this) }, void 0, false, {
784
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
785
- lineNumber: 617,
786
- columnNumber: 11
787
- }, this),
788
- /* @__PURE__ */ jsxDEV("div", { className: "flex items-center justify-between", children: [
789
- /* @__PURE__ */ jsxDEV("h1", { className: "text-3xl font-bold text-gray-900 dark:text-gray-100", children: [
790
- "Edit ",
791
- toReadableText(model.name)
792
- ] }, void 0, true, {
793
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
794
- lineNumber: 664,
795
- columnNumber: 13
796
- }, this),
797
- /* @__PURE__ */ jsxDEV(
798
- "button",
799
- {
800
- onClick: () => setShowDeleteConfirm(true),
801
- disabled: deleteState.status === "loading",
802
- className: "inline-flex items-center px-3 py-2 border border-red-300 shadow-sm text-sm leading-4 font-medium rounded-md text-red-700 bg-white hover:bg-red-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 disabled:opacity-50 disabled:cursor-not-allowed",
803
- children: [
804
- /* @__PURE__ */ jsxDEV(TrashIcon, { className: "h-4 w-4 mr-2" }, void 0, false, {
805
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
806
- lineNumber: 670,
807
- columnNumber: 15
808
- }, this),
809
- "Delete"
810
- ]
811
- },
812
- void 0,
813
- true,
814
- {
815
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
816
- lineNumber: 665,
817
- columnNumber: 13
818
- },
819
- this
820
- )
821
- ] }, void 0, true, {
822
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
823
- lineNumber: 663,
824
- columnNumber: 11
825
- }, this)
826
- ] }, void 0, true, {
827
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
828
- lineNumber: 616,
829
- columnNumber: 7
830
- }, this),
831
- showDeleteConfirm && /* @__PURE__ */ jsxDEV("div", { className: "fixed inset-0 bg-gray-600 dark:bg-gray-900 bg-opacity-50 dark:bg-opacity-75 overflow-y-auto h-full w-full z-50 flex items-center justify-center", children: /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 p-6 rounded-lg shadow-xl max-w-md w-full mx-4", children: [
832
- /* @__PURE__ */ jsxDEV("div", { className: "flex items-center", children: [
833
- /* @__PURE__ */ jsxDEV("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "h-6 w-6 text-red-600" }, void 0, false, {
834
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
835
- lineNumber: 682,
836
- columnNumber: 19
837
- }, this) }, void 0, false, {
838
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
839
- lineNumber: 681,
840
- columnNumber: 17
841
- }, this),
842
- /* @__PURE__ */ jsxDEV("div", { className: "ml-3", children: [
843
- /* @__PURE__ */ jsxDEV("h3", { className: "text-lg font-medium text-gray-900 dark:text-gray-100", children: [
844
- "Delete ",
845
- toReadableText(model.name)
846
- ] }, void 0, true, {
847
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
848
- lineNumber: 685,
849
- columnNumber: 19
850
- }, this),
851
- /* @__PURE__ */ jsxDEV("div", { className: "mt-2", children: /* @__PURE__ */ jsxDEV("p", { className: "text-sm text-gray-500 dark:text-gray-400", children: [
852
- "Are you sure you want to delete this",
853
- " ",
854
- toReadableText(model.name).toLowerCase(),
855
- "? This action cannot be undone."
856
- ] }, void 0, true, {
857
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
858
- lineNumber: 689,
859
- columnNumber: 21
860
- }, this) }, void 0, false, {
861
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
862
- lineNumber: 688,
863
- columnNumber: 19
864
- }, this)
865
- ] }, void 0, true, {
866
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
867
- lineNumber: 684,
868
- columnNumber: 17
869
- }, this)
870
- ] }, void 0, true, {
871
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
872
- lineNumber: 680,
873
- columnNumber: 15
874
- }, this),
875
- /* @__PURE__ */ jsxDEV("div", { className: "mt-5 sm:mt-4 sm:flex sm:flex-row-reverse", children: [
876
- /* @__PURE__ */ jsxDEV(
877
- "button",
878
- {
879
- onClick: handleDelete,
880
- disabled: deleteState.status === "loading",
881
- className: "w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed",
882
- children: deleteState.status === "loading" ? "Deleting..." : "Delete"
883
- },
884
- void 0,
885
- false,
886
- {
887
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
888
- lineNumber: 697,
889
- columnNumber: 17
890
- },
891
- this
892
- ),
893
- /* @__PURE__ */ jsxDEV(
894
- "button",
895
- {
896
- onClick: () => setShowDeleteConfirm(false),
897
- disabled: deleteState.status === "loading",
898
- className: "mt-3 w-full inline-flex justify-center rounded-md border border-gray-300 shadow-sm px-4 py-2 bg-white text-base font-medium text-gray-700 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web sm:mt-0 sm:w-auto sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed",
899
- children: "Cancel"
900
- },
901
- void 0,
902
- false,
903
- {
904
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
905
- lineNumber: 704,
906
- columnNumber: 17
907
- },
908
- this
909
- )
910
- ] }, void 0, true, {
911
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
912
- lineNumber: 696,
913
- columnNumber: 15
914
- }, this)
915
- ] }, void 0, true, {
916
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
917
- lineNumber: 679,
918
- columnNumber: 13
919
- }, this) }, void 0, false, {
920
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
921
- lineNumber: 678,
922
- columnNumber: 11
923
- }, this),
924
- (submissionState.status !== "idle" || deleteState.status !== "idle") && /* @__PURE__ */ jsxDEV(
925
- "div",
926
- {
927
- className: `mb-6 rounded-md p-4 ${submissionState.status === "success" || deleteState.status === "success" ? "bg-green-50 border border-green-200" : submissionState.status === "error" || deleteState.status === "error" ? "bg-red-50 border border-red-200" : "bg-blue-50 border border-blue-200"}`,
928
- children: /* @__PURE__ */ jsxDEV("div", { className: "flex", children: [
929
- /* @__PURE__ */ jsxDEV("div", { className: "flex-shrink-0", children: submissionState.status === "success" || deleteState.status === "success" ? /* @__PURE__ */ jsxDEV(CheckCircleIcon, { className: "h-5 w-5 text-green-400" }, void 0, false, {
930
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
931
- lineNumber: 730,
932
- columnNumber: 19
933
- }, this) : submissionState.status === "error" || deleteState.status === "error" ? /* @__PURE__ */ jsxDEV(ExclamationCircleIcon, { className: "h-5 w-5 text-red-400" }, void 0, false, {
934
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
935
- lineNumber: 732,
936
- columnNumber: 19
937
- }, this) : /* @__PURE__ */ jsxDEV("div", { className: "h-5 w-5 border-2 border-blue-400 border-t-transparent rounded-full animate-spin" }, void 0, false, {
938
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
939
- lineNumber: 734,
940
- columnNumber: 19
941
- }, this) }, void 0, false, {
942
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
943
- lineNumber: 728,
944
- columnNumber: 15
945
- }, this),
946
- /* @__PURE__ */ jsxDEV("div", { className: "ml-3", children: /* @__PURE__ */ jsxDEV(
947
- "p",
948
- {
949
- className: `text-sm font-medium ${submissionState.status === "success" || deleteState.status === "success" ? "text-green-800" : submissionState.status === "error" || deleteState.status === "error" ? "text-red-800" : "text-blue-800"}`,
950
- children: submissionState.status === "loading" ? `Updating ${toReadableText(model.name)}...` : deleteState.status === "loading" ? `Deleting ${toReadableText(model.name)}...` : submissionState.message || deleteState.message
951
- },
952
- void 0,
953
- false,
954
- {
955
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
956
- lineNumber: 738,
957
- columnNumber: 17
958
- },
959
- this
960
- ) }, void 0, false, {
961
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
962
- lineNumber: 737,
963
- columnNumber: 15
964
- }, this)
965
- ] }, void 0, true, {
966
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
967
- lineNumber: 727,
968
- columnNumber: 13
969
- }, this)
970
- },
971
- void 0,
972
- false,
973
- {
974
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
975
- lineNumber: 718,
976
- columnNumber: 11
977
- },
978
- this
979
- ),
980
- /* @__PURE__ */ jsxDEV("div", { className: "bg-white dark:bg-gray-800 shadow-sm rounded-lg", children: /* @__PURE__ */ jsxDEV("div", { className: "px-6 py-8", children: /* @__PURE__ */ jsxDEV(
981
- Form,
982
- {
983
- id: `edit-${model.name.toLowerCase()}-form`,
984
- fields: formFields,
985
- submit: handleSubmit,
986
- disabled: submissionState.status === "loading" || deleteState.status === "loading",
987
- defaultValues: initialValues,
988
- theme: formTheme
989
- },
990
- void 0,
991
- false,
992
- {
993
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
994
- lineNumber: 761,
995
- columnNumber: 13
996
- },
997
- this
998
- ) }, void 0, false, {
999
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
1000
- lineNumber: 760,
1001
- columnNumber: 11
1002
- }, this) }, void 0, false, {
1003
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
1004
- lineNumber: 759,
1005
- columnNumber: 9
1006
- }, this)
1007
- ] }, void 0, true, {
1008
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
578
+ return /* @__PURE__ */ React.createElement("div", { className: "space-y-6", __self: this, __source: {
579
+ fileName: _jsxFileName,
1009
580
  lineNumber: 614,
1010
581
  columnNumber: 5
1011
- }, this);
582
+ } }, /* @__PURE__ */ React.createElement("div", { className: "mb-8", __self: this, __source: {
583
+ fileName: _jsxFileName,
584
+ lineNumber: 616,
585
+ columnNumber: 7
586
+ } }, /* @__PURE__ */ React.createElement("nav", { className: "flex mb-6", "aria-label": "Breadcrumb", __self: this, __source: {
587
+ fileName: _jsxFileName,
588
+ lineNumber: 617,
589
+ columnNumber: 11
590
+ } }, /* @__PURE__ */ React.createElement("ol", { className: "flex items-center space-x-4", __self: this, __source: {
591
+ fileName: _jsxFileName,
592
+ lineNumber: 618,
593
+ columnNumber: 13
594
+ } }, /* @__PURE__ */ React.createElement("li", { __self: this, __source: {
595
+ fileName: _jsxFileName,
596
+ lineNumber: 619,
597
+ columnNumber: 15
598
+ } }, /* @__PURE__ */ React.createElement(Link, { to: basePath, className: "text-gray-400 dark:text-gray-500 hover:text-gray-500 dark:hover:text-gray-400", __self: this, __source: {
599
+ fileName: _jsxFileName,
600
+ lineNumber: 620,
601
+ columnNumber: 17
602
+ } }, "Data Browser")), /* @__PURE__ */ React.createElement("li", { __self: this, __source: {
603
+ fileName: _jsxFileName,
604
+ lineNumber: 624,
605
+ columnNumber: 15
606
+ } }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center", __self: this, __source: {
607
+ fileName: _jsxFileName,
608
+ lineNumber: 625,
609
+ columnNumber: 17
610
+ } }, /* @__PURE__ */ React.createElement("svg", { className: "flex-shrink-0 h-5 w-5 text-gray-300 dark:text-gray-600", fill: "currentColor", viewBox: "0 0 20 20", __self: this, __source: {
611
+ fileName: _jsxFileName,
612
+ lineNumber: 626,
613
+ columnNumber: 19
614
+ } }, /* @__PURE__ */ React.createElement("path", { fillRule: "evenodd", 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", clipRule: "evenodd", __self: this, __source: {
615
+ fileName: _jsxFileName,
616
+ lineNumber: 631,
617
+ columnNumber: 21
618
+ } })), /* @__PURE__ */ React.createElement(Link, { to: `${basePath}/${toKebabCase(model.pluralName)}`, className: "ml-4 text-gray-400 dark:text-gray-500 hover:text-gray-500 dark:hover:text-gray-400", __self: this, __source: {
619
+ fileName: _jsxFileName,
620
+ lineNumber: 637,
621
+ columnNumber: 19
622
+ } }, toReadableText(model.pluralName)))), /* @__PURE__ */ React.createElement("li", { __self: this, __source: {
623
+ fileName: _jsxFileName,
624
+ lineNumber: 645,
625
+ columnNumber: 15
626
+ } }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center", __self: this, __source: {
627
+ fileName: _jsxFileName,
628
+ lineNumber: 646,
629
+ columnNumber: 17
630
+ } }, /* @__PURE__ */ React.createElement("svg", { className: "flex-shrink-0 h-5 w-5 text-gray-300 dark:text-gray-600", fill: "currentColor", viewBox: "0 0 20 20", __self: this, __source: {
631
+ fileName: _jsxFileName,
632
+ lineNumber: 647,
633
+ columnNumber: 19
634
+ } }, /* @__PURE__ */ React.createElement("path", { fillRule: "evenodd", 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", clipRule: "evenodd", __self: this, __source: {
635
+ fileName: _jsxFileName,
636
+ lineNumber: 652,
637
+ columnNumber: 21
638
+ } })), /* @__PURE__ */ React.createElement("span", { className: "ml-4 text-gray-500 dark:text-gray-400", __self: this, __source: {
639
+ fileName: _jsxFileName,
640
+ lineNumber: 658,
641
+ columnNumber: 19
642
+ } }, "Edit"))))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between", __self: this, __source: {
643
+ fileName: _jsxFileName,
644
+ lineNumber: 663,
645
+ columnNumber: 11
646
+ } }, /* @__PURE__ */ React.createElement("h1", { className: "text-3xl font-bold text-gray-900 dark:text-gray-100", __self: this, __source: {
647
+ fileName: _jsxFileName,
648
+ lineNumber: 664,
649
+ columnNumber: 13
650
+ } }, "Edit ", toReadableText(model.name)), /* @__PURE__ */ React.createElement("button", { onClick: () => setShowDeleteConfirm(true), disabled: deleteState.status === "loading", className: "inline-flex items-center px-3 py-2 border border-red-300 shadow-sm text-sm leading-4 font-medium rounded-md text-red-700 bg-white hover:bg-red-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 disabled:opacity-50 disabled:cursor-not-allowed", __self: this, __source: {
651
+ fileName: _jsxFileName,
652
+ lineNumber: 665,
653
+ columnNumber: 13
654
+ } }, /* @__PURE__ */ React.createElement(TrashIcon, { className: "h-4 w-4 mr-2", __self: this, __source: {
655
+ fileName: _jsxFileName,
656
+ lineNumber: 670,
657
+ columnNumber: 15
658
+ } }), "Delete"))), showDeleteConfirm && /* @__PURE__ */ React.createElement("div", { className: "fixed inset-0 bg-gray-600 dark:bg-gray-900 bg-opacity-50 dark:bg-opacity-75 overflow-y-auto h-full w-full z-50 flex items-center justify-center", __self: this, __source: {
659
+ fileName: _jsxFileName,
660
+ lineNumber: 678,
661
+ columnNumber: 11
662
+ } }, /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 p-6 rounded-lg shadow-xl max-w-md w-full mx-4", __self: this, __source: {
663
+ fileName: _jsxFileName,
664
+ lineNumber: 679,
665
+ columnNumber: 13
666
+ } }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center", __self: this, __source: {
667
+ fileName: _jsxFileName,
668
+ lineNumber: 680,
669
+ columnNumber: 15
670
+ } }, /* @__PURE__ */ React.createElement("div", { className: "flex-shrink-0", __self: this, __source: {
671
+ fileName: _jsxFileName,
672
+ lineNumber: 681,
673
+ columnNumber: 17
674
+ } }, /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "h-6 w-6 text-red-600", __self: this, __source: {
675
+ fileName: _jsxFileName,
676
+ lineNumber: 682,
677
+ columnNumber: 19
678
+ } })), /* @__PURE__ */ React.createElement("div", { className: "ml-3", __self: this, __source: {
679
+ fileName: _jsxFileName,
680
+ lineNumber: 684,
681
+ columnNumber: 17
682
+ } }, /* @__PURE__ */ React.createElement("h3", { className: "text-lg font-medium text-gray-900 dark:text-gray-100", __self: this, __source: {
683
+ fileName: _jsxFileName,
684
+ lineNumber: 685,
685
+ columnNumber: 19
686
+ } }, "Delete ", toReadableText(model.name)), /* @__PURE__ */ React.createElement("div", { className: "mt-2", __self: this, __source: {
687
+ fileName: _jsxFileName,
688
+ lineNumber: 688,
689
+ columnNumber: 19
690
+ } }, /* @__PURE__ */ React.createElement("p", { className: "text-sm text-gray-500 dark:text-gray-400", __self: this, __source: {
691
+ fileName: _jsxFileName,
692
+ lineNumber: 689,
693
+ columnNumber: 21
694
+ } }, "Are you sure you want to delete this", " ", toReadableText(model.name).toLowerCase(), "? This action cannot be undone.")))), /* @__PURE__ */ React.createElement("div", { className: "mt-5 sm:mt-4 sm:flex sm:flex-row-reverse", __self: this, __source: {
695
+ fileName: _jsxFileName,
696
+ lineNumber: 696,
697
+ columnNumber: 15
698
+ } }, /* @__PURE__ */ React.createElement("button", { onClick: handleDelete, disabled: deleteState.status === "loading", className: "w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed", __self: this, __source: {
699
+ fileName: _jsxFileName,
700
+ lineNumber: 697,
701
+ columnNumber: 17
702
+ } }, deleteState.status === "loading" ? "Deleting..." : "Delete"), /* @__PURE__ */ React.createElement("button", { onClick: () => setShowDeleteConfirm(false), disabled: deleteState.status === "loading", className: "mt-3 w-full inline-flex justify-center rounded-md border border-gray-300 shadow-sm px-4 py-2 bg-white text-base font-medium text-gray-700 hover:text-gray-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-web sm:mt-0 sm:w-auto sm:text-sm disabled:opacity-50 disabled:cursor-not-allowed", __self: this, __source: {
703
+ fileName: _jsxFileName,
704
+ lineNumber: 704,
705
+ columnNumber: 17
706
+ } }, "Cancel")))), (submissionState.status !== "idle" || deleteState.status !== "idle") && /* @__PURE__ */ React.createElement("div", { className: `mb-6 rounded-md p-4 ${submissionState.status === "success" || deleteState.status === "success" ? "bg-green-50 border border-green-200" : submissionState.status === "error" || deleteState.status === "error" ? "bg-red-50 border border-red-200" : "bg-blue-50 border border-blue-200"}`, __self: this, __source: {
707
+ fileName: _jsxFileName,
708
+ lineNumber: 718,
709
+ columnNumber: 11
710
+ } }, /* @__PURE__ */ React.createElement("div", { className: "flex", __self: this, __source: {
711
+ fileName: _jsxFileName,
712
+ lineNumber: 727,
713
+ columnNumber: 13
714
+ } }, /* @__PURE__ */ React.createElement("div", { className: "flex-shrink-0", __self: this, __source: {
715
+ fileName: _jsxFileName,
716
+ lineNumber: 728,
717
+ columnNumber: 15
718
+ } }, submissionState.status === "success" || deleteState.status === "success" ? /* @__PURE__ */ React.createElement(CheckCircleIcon, { className: "h-5 w-5 text-green-400", __self: this, __source: {
719
+ fileName: _jsxFileName,
720
+ lineNumber: 730,
721
+ columnNumber: 19
722
+ } }) : submissionState.status === "error" || deleteState.status === "error" ? /* @__PURE__ */ React.createElement(ExclamationCircleIcon, { className: "h-5 w-5 text-red-400", __self: this, __source: {
723
+ fileName: _jsxFileName,
724
+ lineNumber: 732,
725
+ columnNumber: 19
726
+ } }) : /* @__PURE__ */ React.createElement("div", { className: "h-5 w-5 border-2 border-blue-400 border-t-transparent rounded-full animate-spin", __self: this, __source: {
727
+ fileName: _jsxFileName,
728
+ lineNumber: 734,
729
+ columnNumber: 19
730
+ } })), /* @__PURE__ */ React.createElement("div", { className: "ml-3", __self: this, __source: {
731
+ fileName: _jsxFileName,
732
+ lineNumber: 737,
733
+ columnNumber: 15
734
+ } }, /* @__PURE__ */ React.createElement("p", { className: `text-sm font-medium ${submissionState.status === "success" || deleteState.status === "success" ? "text-green-800" : submissionState.status === "error" || deleteState.status === "error" ? "text-red-800" : "text-blue-800"}`, __self: this, __source: {
735
+ fileName: _jsxFileName,
736
+ lineNumber: 738,
737
+ columnNumber: 17
738
+ } }, submissionState.status === "loading" ? `Updating ${toReadableText(model.name)}...` : deleteState.status === "loading" ? `Deleting ${toReadableText(model.name)}...` : submissionState.message || deleteState.message)))), /* @__PURE__ */ React.createElement("div", { className: "bg-white dark:bg-gray-800 shadow-sm rounded-lg", __self: this, __source: {
739
+ fileName: _jsxFileName,
740
+ lineNumber: 759,
741
+ columnNumber: 9
742
+ } }, /* @__PURE__ */ React.createElement("div", { className: "px-6 py-8", __self: this, __source: {
743
+ fileName: _jsxFileName,
744
+ lineNumber: 760,
745
+ columnNumber: 11
746
+ } }, /* @__PURE__ */ React.createElement(Form, { id: `edit-${model.name.toLowerCase()}-form`, fields: formFields, submit: handleSubmit, disabled: submissionState.status === "loading" || deleteState.status === "loading", defaultValues: initialValues, theme: formTheme, __self: this, __source: {
747
+ fileName: _jsxFileName,
748
+ lineNumber: 761,
749
+ columnNumber: 13
750
+ } }))));
1012
751
  }
1013
- function AdminDataEditErrorBoundary({ error }) {
1014
- return /* @__PURE__ */ jsxDEV(ErrorBoundary, { error }, void 0, false, {
1015
- fileName: "/Users/justinhandley/IdeaProjects/nestled_template/libs/admin-data/src/lib/pages/AdminDataEditPage.tsx",
752
+ function AdminDataEditErrorBoundary({
753
+ error
754
+ }) {
755
+ return /* @__PURE__ */ React.createElement(ErrorBoundary, { error, __self: this, __source: {
756
+ fileName: _jsxFileName,
1016
757
  lineNumber: 776,
1017
758
  columnNumber: 10
1018
- }, this);
759
+ } });
1019
760
  }
1020
761
  export {
1021
762
  AdminDataEditErrorBoundary,