@btst/stack 3.1.1 → 4.0.0

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 (58) hide show
  1. package/README.md +2 -2
  2. package/dist/packages/stack/src/plugins/ai-chat/client/hooks/chat-hooks.cjs +5 -5
  3. package/dist/packages/stack/src/plugins/ai-chat/client/hooks/chat-hooks.mjs +5 -5
  4. package/dist/packages/stack/src/plugins/cms/api/plugin.cjs +12 -0
  5. package/dist/packages/stack/src/plugins/cms/api/plugin.mjs +12 -0
  6. package/dist/packages/stack/src/plugins/kanban/api/getters.cjs +7 -5
  7. package/dist/packages/stack/src/plugins/kanban/api/getters.mjs +7 -5
  8. package/dist/packages/stack/src/plugins/media/client/hooks/use-media.cjs +10 -8
  9. package/dist/packages/stack/src/plugins/media/client/hooks/use-media.mjs +10 -8
  10. package/dist/plugins/blog/api/index.d.cts +2 -2
  11. package/dist/plugins/blog/api/index.d.mts +2 -2
  12. package/dist/plugins/blog/api/index.d.ts +2 -2
  13. package/dist/plugins/blog/client/hooks/index.d.cts +2 -2
  14. package/dist/plugins/blog/client/hooks/index.d.mts +2 -2
  15. package/dist/plugins/blog/client/hooks/index.d.ts +2 -2
  16. package/dist/plugins/blog/client/index.d.cts +2 -2
  17. package/dist/plugins/blog/client/index.d.mts +2 -2
  18. package/dist/plugins/blog/client/index.d.ts +2 -2
  19. package/dist/plugins/blog/query-keys.d.cts +2 -2
  20. package/dist/plugins/blog/query-keys.d.mts +2 -2
  21. package/dist/plugins/blog/query-keys.d.ts +2 -2
  22. package/dist/plugins/cms/api/index.d.cts +1 -1
  23. package/dist/plugins/cms/api/index.d.mts +1 -1
  24. package/dist/plugins/cms/api/index.d.ts +1 -1
  25. package/dist/plugins/cms/query-keys.d.cts +1 -1
  26. package/dist/plugins/cms/query-keys.d.mts +1 -1
  27. package/dist/plugins/cms/query-keys.d.ts +1 -1
  28. package/dist/plugins/ui-builder/client/hooks/index.d.cts +1 -1
  29. package/dist/plugins/ui-builder/client/hooks/index.d.mts +1 -1
  30. package/dist/plugins/ui-builder/client/hooks/index.d.ts +1 -1
  31. package/dist/plugins/ui-builder/client/index.d.cts +1 -1
  32. package/dist/plugins/ui-builder/client/index.d.mts +1 -1
  33. package/dist/plugins/ui-builder/client/index.d.ts +1 -1
  34. package/dist/plugins/ui-builder/query-keys.d.cts +1 -1
  35. package/dist/plugins/ui-builder/query-keys.d.mts +1 -1
  36. package/dist/plugins/ui-builder/query-keys.d.ts +1 -1
  37. package/dist/shared/{stack.BTStHVTy.d.cts → stack.BGzgFx3R.d.cts} +5 -5
  38. package/dist/shared/{stack.Ce6V7eDj.d.cts → stack.BOZRaVpu.d.cts} +37 -37
  39. package/dist/shared/{stack.94kN3pEK.d.mts → stack.CjCSDfWy.d.mts} +5 -5
  40. package/dist/shared/{stack.D5b9l24t.d.ts → stack.DlBoNqYu.d.ts} +37 -37
  41. package/dist/shared/{stack.DfrRYOIl.d.ts → stack.Dpg_JjIo.d.ts} +5 -5
  42. package/dist/shared/{stack.CTneIW0u.d.mts → stack.Dvy7FmaA.d.mts} +37 -37
  43. package/package.json +11 -7
  44. package/src/__tests__/package-metadata.test.ts +4 -4
  45. package/src/plugins/ai-chat/__tests__/hooks.test.tsx +70 -54
  46. package/src/plugins/ai-chat/client/hooks/chat-hooks.tsx +6 -9
  47. package/src/plugins/cms/__tests__/sync-content-types.test.ts +131 -0
  48. package/src/plugins/cms/api/plugin.ts +30 -0
  49. package/src/plugins/kanban/__tests__/getters.test.ts +14 -1
  50. package/src/plugins/kanban/api/getters.ts +9 -7
  51. package/src/plugins/kanban/types.ts +4 -6
  52. package/src/plugins/media/client/hooks/use-media.tsx +7 -8
  53. package/dist/shared/{stack.lsbdKRj7.d.mts → stack.B8PG21zX.d.mts} +16 -16
  54. package/dist/shared/{stack.CKc_Bais.d.cts → stack.Csi-4Mgz.d.cts} +7 -7
  55. package/dist/shared/{stack.CKc_Bais.d.mts → stack.Csi-4Mgz.d.mts} +7 -7
  56. package/dist/shared/{stack.CKc_Bais.d.ts → stack.Csi-4Mgz.d.ts} +7 -7
  57. package/dist/shared/{stack.BMlTZnZp.d.ts → stack.CyalJ0j6.d.ts} +16 -16
  58. package/dist/shared/{stack.BV0uNV4f.d.cts → stack.D6Pg-ufX.d.cts} +16 -16
package/README.md CHANGED
@@ -52,13 +52,13 @@ Render the generated `<Toaster />` in your root layout and start from a clean co
52
52
  Run the released generator from the application root:
53
53
 
54
54
  ```bash
55
- pnpm dlx @btst/codegen@0.2.1 init \
55
+ pnpm dlx @btst/codegen@4.0.0 init \
56
56
  --framework nextjs \
57
57
  --adapter memory \
58
58
  --plugins blog
59
59
  ```
60
60
 
61
- The generator shows detected-file and conflict prompts before it writes. It installs `@btst/stack@3.0.2`, `next-themes@0.4.6`, registers Blog on the backend and client, mounts the API and page routes, adds the plugin CSS, and wires the shared provider.
61
+ The generator shows detected-file and conflict prompts before it writes. It installs `@btst/stack@4.0.0`, `next-themes@0.4.6`, registers Blog on the backend and client, mounts the API and page routes, adds the plugin CSS, and wires the shared provider.
62
62
 
63
63
  Set the trusted local origins in `.env.local`:
64
64
 
@@ -82,18 +82,18 @@ function useCurrentHistoryRefresh() {
82
82
  };
83
83
  }
84
84
  function withCurrentHistoryRefresh(mutation, refresh, queryKey, afterSuccess) {
85
- const mutateAsync = async (variables, options) => {
85
+ const mutateAsync = async (...args) => {
86
86
  const startedAs = refresh.currentPartition();
87
- const result = await mutation.mutateAsync(variables, options);
87
+ const result = await mutation.mutateAsync(...args);
88
88
  try {
89
89
  await refresh.refreshAfterSuccess(startedAs, queryKey);
90
90
  } finally {
91
- afterSuccess?.(variables, startedAs);
91
+ afterSuccess?.(args[0], startedAs);
92
92
  }
93
93
  return result;
94
94
  };
95
- const mutate = (variables, options) => {
96
- void mutateAsync(variables, options).catch(() => {
95
+ const mutate = (...args) => {
96
+ void mutateAsync(...args).catch(() => {
97
97
  });
98
98
  };
99
99
  return { ...mutation, mutate, mutateAsync };
@@ -80,18 +80,18 @@ function useCurrentHistoryRefresh() {
80
80
  };
81
81
  }
82
82
  function withCurrentHistoryRefresh(mutation, refresh, queryKey, afterSuccess) {
83
- const mutateAsync = async (variables, options) => {
83
+ const mutateAsync = async (...args) => {
84
84
  const startedAs = refresh.currentPartition();
85
- const result = await mutation.mutateAsync(variables, options);
85
+ const result = await mutation.mutateAsync(...args);
86
86
  try {
87
87
  await refresh.refreshAfterSuccess(startedAs, queryKey);
88
88
  } finally {
89
- afterSuccess?.(variables, startedAs);
89
+ afterSuccess?.(args[0], startedAs);
90
90
  }
91
91
  return result;
92
92
  };
93
- const mutate = (variables, options) => {
94
- void mutateAsync(variables, options).catch(() => {
93
+ const mutate = (...args) => {
94
+ void mutateAsync(...args).catch(() => {
95
95
  });
96
96
  };
97
97
  return { ...mutation, mutate, mutateAsync };
@@ -9,6 +9,16 @@ const getters = require('./getters.cjs');
9
9
  const operations = require('./operations.cjs');
10
10
  const queryKeyDefs = require('./query-key-defs.cjs');
11
11
 
12
+ function schemasEqual(stored, configured) {
13
+ const normalize = (key, value) => key !== "properties" && value && typeof value === "object" && !Array.isArray(value) ? Object.fromEntries(
14
+ Object.entries(value).sort(([a], [b]) => a.localeCompare(b))
15
+ ) : value;
16
+ try {
17
+ return JSON.stringify(JSON.parse(stored), normalize) === JSON.stringify(JSON.parse(configured), normalize);
18
+ } catch {
19
+ return false;
20
+ }
21
+ }
12
22
  async function syncContentTypes(adapter, config) {
13
23
  for (const definition of config.contentTypes) {
14
24
  const jsonSchema = JSON.stringify(schemaConverter.zodToFormSchema(definition.schema));
@@ -19,6 +29,8 @@ async function syncContentTypes(adapter, config) {
19
29
  ]
20
30
  });
21
31
  if (existing) {
32
+ if (existing.name === definition.name && (existing.description ?? null) === (definition.description ?? null) && schemasEqual(existing.jsonSchema, jsonSchema) && existing.fieldConfig == null && existing.autoFormVersion === 2)
33
+ continue;
22
34
  await adapter.update({
23
35
  model: "contentType",
24
36
  where: [{ field: "id", value: existing.id, operator: "eq" }],
@@ -7,6 +7,16 @@ import { getContentItemById, getAllContentItems, getAllContentTypes } from './ge
7
7
  import { createCMSOperations, CMSContentTypeParamsSchema, CMSContentItemParamsSchema, CMSCreateContentItemBodySchema, CMSUpdateContentItemBodySchema } from './operations.mjs';
8
8
  import { CMS_QUERY_KEYS } from './query-key-defs.mjs';
9
9
 
10
+ function schemasEqual(stored, configured) {
11
+ const normalize = (key, value) => key !== "properties" && value && typeof value === "object" && !Array.isArray(value) ? Object.fromEntries(
12
+ Object.entries(value).sort(([a], [b]) => a.localeCompare(b))
13
+ ) : value;
14
+ try {
15
+ return JSON.stringify(JSON.parse(stored), normalize) === JSON.stringify(JSON.parse(configured), normalize);
16
+ } catch {
17
+ return false;
18
+ }
19
+ }
10
20
  async function syncContentTypes(adapter, config) {
11
21
  for (const definition of config.contentTypes) {
12
22
  const jsonSchema = JSON.stringify(zodToFormSchema(definition.schema));
@@ -17,6 +27,8 @@ async function syncContentTypes(adapter, config) {
17
27
  ]
18
28
  });
19
29
  if (existing) {
30
+ if (existing.name === definition.name && (existing.description ?? null) === (definition.description ?? null) && schemasEqual(existing.jsonSchema, jsonSchema) && existing.fieldConfig == null && existing.autoFormVersion === 2)
31
+ continue;
20
32
  await adapter.update({
21
33
  model: "contentType",
22
34
  where: [{ field: "id", value: existing.id, operator: "eq" }],
@@ -35,7 +35,7 @@ async function getBoardRows(adapter, params) {
35
35
  return { items, total, limit: query.limit, offset: query.offset };
36
36
  }
37
37
  async function hydrateColumnsWithTasks(adapter, board) {
38
- const columnIds = (board.column || []).map((c) => c.id);
38
+ const columnIds = (board.kanbanColumn || []).map((c) => c.id);
39
39
  const tasksByColumn = /* @__PURE__ */ new Map();
40
40
  if (columnIds.length > 0) {
41
41
  const taskResults = await Promise.all(
@@ -57,8 +57,8 @@ async function hydrateColumnsWithTasks(adapter, board) {
57
57
  }
58
58
  }
59
59
  }
60
- const columns = (board.column || []).sort((a, b) => a.order - b.order).map((col) => ({ ...col, tasks: tasksByColumn.get(col.id) || [] }));
61
- const { column: _, ...boardWithoutJoin } = board;
60
+ const columns = (board.kanbanColumn || []).sort((a, b) => a.order - b.order).map((col) => ({ ...col, tasks: tasksByColumn.get(col.id) || [] }));
61
+ const { kanbanColumn: _, ...boardWithoutJoin } = board;
62
62
  return { ...boardWithoutJoin, columns };
63
63
  }
64
64
  async function getAllBoards(adapter, params) {
@@ -72,9 +72,11 @@ async function getBoardSummaries(adapter, params) {
72
72
  const result = await getBoardRows(adapter, params);
73
73
  return {
74
74
  ...result,
75
- items: result.items.map(({ column = [], ...board }) => ({
75
+ items: result.items.map(({ kanbanColumn = [], ...board }) => ({
76
76
  ...board,
77
- columns: [...column].sort((left, right) => left.order - right.order)
77
+ columns: [...kanbanColumn].sort(
78
+ (left, right) => left.order - right.order
79
+ )
78
80
  }))
79
81
  };
80
82
  }
@@ -33,7 +33,7 @@ async function getBoardRows(adapter, params) {
33
33
  return { items, total, limit: query.limit, offset: query.offset };
34
34
  }
35
35
  async function hydrateColumnsWithTasks(adapter, board) {
36
- const columnIds = (board.column || []).map((c) => c.id);
36
+ const columnIds = (board.kanbanColumn || []).map((c) => c.id);
37
37
  const tasksByColumn = /* @__PURE__ */ new Map();
38
38
  if (columnIds.length > 0) {
39
39
  const taskResults = await Promise.all(
@@ -55,8 +55,8 @@ async function hydrateColumnsWithTasks(adapter, board) {
55
55
  }
56
56
  }
57
57
  }
58
- const columns = (board.column || []).sort((a, b) => a.order - b.order).map((col) => ({ ...col, tasks: tasksByColumn.get(col.id) || [] }));
59
- const { column: _, ...boardWithoutJoin } = board;
58
+ const columns = (board.kanbanColumn || []).sort((a, b) => a.order - b.order).map((col) => ({ ...col, tasks: tasksByColumn.get(col.id) || [] }));
59
+ const { kanbanColumn: _, ...boardWithoutJoin } = board;
60
60
  return { ...boardWithoutJoin, columns };
61
61
  }
62
62
  async function getAllBoards(adapter, params) {
@@ -70,9 +70,11 @@ async function getBoardSummaries(adapter, params) {
70
70
  const result = await getBoardRows(adapter, params);
71
71
  return {
72
72
  ...result,
73
- items: result.items.map(({ column = [], ...board }) => ({
73
+ items: result.items.map(({ kanbanColumn = [], ...board }) => ({
74
74
  ...board,
75
- columns: [...column].sort((left, right) => left.order - right.order)
75
+ columns: [...kanbanColumn].sort(
76
+ (left, right) => left.order - right.order
77
+ )
76
78
  }))
77
79
  };
78
80
  }
@@ -93,21 +93,23 @@ function useCurrentMediaListRefresh(resource) {
93
93
  };
94
94
  }
95
95
  function withCurrentListRefresh(mutation, listRefresh, mapResult = (data2) => data2, data = mutation.data) {
96
- const mutateAsync = async (variables, options) => {
96
+ const mutateAsync = async (...args) => {
97
+ const options = args[1];
97
98
  const startedAs = listRefresh.currentScope();
98
- const result = await mutation.mutateAsync(variables, {
99
+ args[1] = {
99
100
  ...options,
100
- onSuccess: options?.onSuccess ? (data2, ...args) => options.onSuccess?.(mapResult(data2), ...args) : void 0,
101
- onSettled: options?.onSettled ? (data2, ...args) => options.onSettled?.(
101
+ onSuccess: options?.onSuccess ? (data2, ...args2) => options.onSuccess?.(mapResult(data2), ...args2) : void 0,
102
+ onSettled: options?.onSettled ? (data2, ...args2) => options.onSettled?.(
102
103
  data2 === void 0 ? void 0 : mapResult(data2),
103
- ...args
104
+ ...args2
104
105
  ) : void 0
105
- });
106
+ };
107
+ const result = await mutation.mutateAsync(...args);
106
108
  await listRefresh.refreshAfterSuccess(startedAs);
107
109
  return mapResult(result);
108
110
  };
109
- const mutate = (variables, options) => {
110
- void mutateAsync(variables, options).catch(() => {
111
+ const mutate = (...args) => {
112
+ void mutateAsync(...args).catch(() => {
111
113
  });
112
114
  };
113
115
  return {
@@ -91,21 +91,23 @@ function useCurrentMediaListRefresh(resource) {
91
91
  };
92
92
  }
93
93
  function withCurrentListRefresh(mutation, listRefresh, mapResult = (data2) => data2, data = mutation.data) {
94
- const mutateAsync = async (variables, options) => {
94
+ const mutateAsync = async (...args) => {
95
+ const options = args[1];
95
96
  const startedAs = listRefresh.currentScope();
96
- const result = await mutation.mutateAsync(variables, {
97
+ args[1] = {
97
98
  ...options,
98
- onSuccess: options?.onSuccess ? (data2, ...args) => options.onSuccess?.(mapResult(data2), ...args) : void 0,
99
- onSettled: options?.onSettled ? (data2, ...args) => options.onSettled?.(
99
+ onSuccess: options?.onSuccess ? (data2, ...args2) => options.onSuccess?.(mapResult(data2), ...args2) : void 0,
100
+ onSettled: options?.onSettled ? (data2, ...args2) => options.onSettled?.(
100
101
  data2 === void 0 ? void 0 : mapResult(data2),
101
- ...args
102
+ ...args2
102
103
  ) : void 0
103
- });
104
+ };
105
+ const result = await mutation.mutateAsync(...args);
104
106
  await listRefresh.refreshAfterSuccess(startedAs);
105
107
  return mapResult(result);
106
108
  };
107
- const mutate = (variables, options) => {
108
- void mutateAsync(variables, options).catch(() => {
109
+ const mutate = (...args) => {
110
+ void mutateAsync(...args).catch(() => {
109
111
  });
110
112
  };
111
113
  return {
@@ -1,10 +1,10 @@
1
- export { B as BLOG_QUERY_KEYS, i as BlogApiRouter, k as BlogBackendHooks, f as BlogBackendOptions, l as BlogCreateErrorContext, m as BlogCreateOperationContext, n as BlogCreateResultContext, o as BlogDeleteErrorContext, p as BlogDeleteOperationContext, q as BlogDeleteResultContext, r as BlogListErrorContext, s as BlogListOperationContext, t as BlogListResultContext, u as BlogNextPreviousErrorContext, v as BlogNextPreviousOperationContext, w as BlogNextPreviousResultContext, e as BlogRouteKey, x as BlogUpdateErrorContext, y as BlogUpdateOperationContext, z as BlogUpdateResultContext, C as CreatePostOperationInputSchema, N as NextPreviousPostsQuerySchema, P as PostListParams, j as PostListQuerySchema, c as PostListResult, S as SerializedNextPreviousPostsResult, A as SerializedPostListResult, U as UpdatePostOperationInputSchema, h as blogBackendPlugin, d as createBlogQueryKeys, g as getAllPosts, b as getAllTags, a as getPostBySlug } from '../../../shared/stack.Ce6V7eDj.cjs';
1
+ export { B as BLOG_QUERY_KEYS, i as BlogApiRouter, k as BlogBackendHooks, f as BlogBackendOptions, l as BlogCreateErrorContext, m as BlogCreateOperationContext, n as BlogCreateResultContext, o as BlogDeleteErrorContext, p as BlogDeleteOperationContext, q as BlogDeleteResultContext, r as BlogListErrorContext, s as BlogListOperationContext, t as BlogListResultContext, u as BlogNextPreviousErrorContext, v as BlogNextPreviousOperationContext, w as BlogNextPreviousResultContext, e as BlogRouteKey, x as BlogUpdateErrorContext, y as BlogUpdateOperationContext, z as BlogUpdateResultContext, C as CreatePostOperationInputSchema, N as NextPreviousPostsQuerySchema, P as PostListParams, j as PostListQuerySchema, c as PostListResult, S as SerializedNextPreviousPostsResult, A as SerializedPostListResult, U as UpdatePostOperationInputSchema, h as blogBackendPlugin, d as createBlogQueryKeys, g as getAllPosts, b as getAllTags, a as getPostBySlug } from '../../../shared/stack.BOZRaVpu.cjs';
2
2
  import { DBAdapter } from '@btst/db';
3
3
  import { P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../../shared/stack.Dsatjh0B.cjs';
4
4
  export { blogPermissions } from '../permissions.cjs';
5
5
  import '@btst/stack/plugins/client';
6
6
  import 'zod';
7
- import '../../../shared/stack.CKc_Bais.cjs';
7
+ import '../../../shared/stack.Csi-4Mgz.cjs';
8
8
  import '@btst/stack/plugins/api';
9
9
  import '../../../authorization/index.cjs';
10
10
  import 'zod/v4/core';
@@ -1,10 +1,10 @@
1
- export { B as BLOG_QUERY_KEYS, i as BlogApiRouter, k as BlogBackendHooks, f as BlogBackendOptions, l as BlogCreateErrorContext, m as BlogCreateOperationContext, n as BlogCreateResultContext, o as BlogDeleteErrorContext, p as BlogDeleteOperationContext, q as BlogDeleteResultContext, r as BlogListErrorContext, s as BlogListOperationContext, t as BlogListResultContext, u as BlogNextPreviousErrorContext, v as BlogNextPreviousOperationContext, w as BlogNextPreviousResultContext, e as BlogRouteKey, x as BlogUpdateErrorContext, y as BlogUpdateOperationContext, z as BlogUpdateResultContext, C as CreatePostOperationInputSchema, N as NextPreviousPostsQuerySchema, P as PostListParams, j as PostListQuerySchema, c as PostListResult, S as SerializedNextPreviousPostsResult, A as SerializedPostListResult, U as UpdatePostOperationInputSchema, h as blogBackendPlugin, d as createBlogQueryKeys, g as getAllPosts, b as getAllTags, a as getPostBySlug } from '../../../shared/stack.CTneIW0u.mjs';
1
+ export { B as BLOG_QUERY_KEYS, i as BlogApiRouter, k as BlogBackendHooks, f as BlogBackendOptions, l as BlogCreateErrorContext, m as BlogCreateOperationContext, n as BlogCreateResultContext, o as BlogDeleteErrorContext, p as BlogDeleteOperationContext, q as BlogDeleteResultContext, r as BlogListErrorContext, s as BlogListOperationContext, t as BlogListResultContext, u as BlogNextPreviousErrorContext, v as BlogNextPreviousOperationContext, w as BlogNextPreviousResultContext, e as BlogRouteKey, x as BlogUpdateErrorContext, y as BlogUpdateOperationContext, z as BlogUpdateResultContext, C as CreatePostOperationInputSchema, N as NextPreviousPostsQuerySchema, P as PostListParams, j as PostListQuerySchema, c as PostListResult, S as SerializedNextPreviousPostsResult, A as SerializedPostListResult, U as UpdatePostOperationInputSchema, h as blogBackendPlugin, d as createBlogQueryKeys, g as getAllPosts, b as getAllTags, a as getPostBySlug } from '../../../shared/stack.Dvy7FmaA.mjs';
2
2
  import { DBAdapter } from '@btst/db';
3
3
  import { P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../../shared/stack.Dsatjh0B.mjs';
4
4
  export { blogPermissions } from '../permissions.mjs';
5
5
  import '@btst/stack/plugins/client';
6
6
  import 'zod';
7
- import '../../../shared/stack.CKc_Bais.mjs';
7
+ import '../../../shared/stack.Csi-4Mgz.mjs';
8
8
  import '@btst/stack/plugins/api';
9
9
  import '../../../authorization/index.mjs';
10
10
  import 'zod/v4/core';
@@ -1,10 +1,10 @@
1
- export { B as BLOG_QUERY_KEYS, i as BlogApiRouter, k as BlogBackendHooks, f as BlogBackendOptions, l as BlogCreateErrorContext, m as BlogCreateOperationContext, n as BlogCreateResultContext, o as BlogDeleteErrorContext, p as BlogDeleteOperationContext, q as BlogDeleteResultContext, r as BlogListErrorContext, s as BlogListOperationContext, t as BlogListResultContext, u as BlogNextPreviousErrorContext, v as BlogNextPreviousOperationContext, w as BlogNextPreviousResultContext, e as BlogRouteKey, x as BlogUpdateErrorContext, y as BlogUpdateOperationContext, z as BlogUpdateResultContext, C as CreatePostOperationInputSchema, N as NextPreviousPostsQuerySchema, P as PostListParams, j as PostListQuerySchema, c as PostListResult, S as SerializedNextPreviousPostsResult, A as SerializedPostListResult, U as UpdatePostOperationInputSchema, h as blogBackendPlugin, d as createBlogQueryKeys, g as getAllPosts, b as getAllTags, a as getPostBySlug } from '../../../shared/stack.D5b9l24t.js';
1
+ export { B as BLOG_QUERY_KEYS, i as BlogApiRouter, k as BlogBackendHooks, f as BlogBackendOptions, l as BlogCreateErrorContext, m as BlogCreateOperationContext, n as BlogCreateResultContext, o as BlogDeleteErrorContext, p as BlogDeleteOperationContext, q as BlogDeleteResultContext, r as BlogListErrorContext, s as BlogListOperationContext, t as BlogListResultContext, u as BlogNextPreviousErrorContext, v as BlogNextPreviousOperationContext, w as BlogNextPreviousResultContext, e as BlogRouteKey, x as BlogUpdateErrorContext, y as BlogUpdateOperationContext, z as BlogUpdateResultContext, C as CreatePostOperationInputSchema, N as NextPreviousPostsQuerySchema, P as PostListParams, j as PostListQuerySchema, c as PostListResult, S as SerializedNextPreviousPostsResult, A as SerializedPostListResult, U as UpdatePostOperationInputSchema, h as blogBackendPlugin, d as createBlogQueryKeys, g as getAllPosts, b as getAllTags, a as getPostBySlug } from '../../../shared/stack.DlBoNqYu.js';
2
2
  import { DBAdapter } from '@btst/db';
3
3
  import { P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../../shared/stack.Dsatjh0B.js';
4
4
  export { blogPermissions } from '../permissions.js';
5
5
  import '@btst/stack/plugins/client';
6
6
  import 'zod';
7
- import '../../../shared/stack.CKc_Bais.js';
7
+ import '../../../shared/stack.Csi-4Mgz.js';
8
8
  import '@btst/stack/plugins/api';
9
9
  import '../../../authorization/index.js';
10
10
  import 'zod/v4/core';
@@ -1,9 +1,9 @@
1
- export { P as PostCreateInput, e as PostUpdateInput, p as UseNextPreviousPostsOptions, q as UseNextPreviousPostsResult, d as UsePostResult, b as UsePostSearchOptions, c as UsePostSearchResult, U as UsePostsOptions, a as UsePostsResult, s as UseRecentPostsOptions, t as UseRecentPostsResult, l as useCreatePost, n as useDeletePost, r as useNextPreviousPosts, g as usePost, k as usePostForm, o as usePostSearch, u as usePosts, v as useRecentPosts, h as useSuspensePost, f as useSuspensePosts, j as useSuspenseTags, i as useTags, m as useUpdatePost } from '../../../../shared/stack.BTStHVTy.cjs';
1
+ export { P as PostCreateInput, e as PostUpdateInput, p as UseNextPreviousPostsOptions, q as UseNextPreviousPostsResult, d as UsePostResult, b as UsePostSearchOptions, c as UsePostSearchResult, U as UsePostsOptions, a as UsePostsResult, s as UseRecentPostsOptions, t as UseRecentPostsResult, l as useCreatePost, n as useDeletePost, r as useNextPreviousPosts, g as usePost, k as usePostForm, o as usePostSearch, u as usePosts, v as useRecentPosts, h as useSuspensePost, f as useSuspensePosts, j as useSuspenseTags, i as useTags, m as useUpdatePost } from '../../../../shared/stack.BGzgFx3R.cjs';
2
2
  export { useDebounce } from '@btst/stack/plugins/client/hooks';
3
3
  import '@tanstack/react-query';
4
4
  import 'zod';
5
5
  import '../../../../shared/stack.Dsatjh0B.cjs';
6
- import '../../../../shared/stack.CKc_Bais.cjs';
6
+ import '../../../../shared/stack.Csi-4Mgz.cjs';
7
7
 
8
8
  declare function useThrottle<T>(value: T, wait?: number): T;
9
9
 
@@ -1,9 +1,9 @@
1
- export { P as PostCreateInput, e as PostUpdateInput, p as UseNextPreviousPostsOptions, q as UseNextPreviousPostsResult, d as UsePostResult, b as UsePostSearchOptions, c as UsePostSearchResult, U as UsePostsOptions, a as UsePostsResult, s as UseRecentPostsOptions, t as UseRecentPostsResult, l as useCreatePost, n as useDeletePost, r as useNextPreviousPosts, g as usePost, k as usePostForm, o as usePostSearch, u as usePosts, v as useRecentPosts, h as useSuspensePost, f as useSuspensePosts, j as useSuspenseTags, i as useTags, m as useUpdatePost } from '../../../../shared/stack.94kN3pEK.mjs';
1
+ export { P as PostCreateInput, e as PostUpdateInput, p as UseNextPreviousPostsOptions, q as UseNextPreviousPostsResult, d as UsePostResult, b as UsePostSearchOptions, c as UsePostSearchResult, U as UsePostsOptions, a as UsePostsResult, s as UseRecentPostsOptions, t as UseRecentPostsResult, l as useCreatePost, n as useDeletePost, r as useNextPreviousPosts, g as usePost, k as usePostForm, o as usePostSearch, u as usePosts, v as useRecentPosts, h as useSuspensePost, f as useSuspensePosts, j as useSuspenseTags, i as useTags, m as useUpdatePost } from '../../../../shared/stack.CjCSDfWy.mjs';
2
2
  export { useDebounce } from '@btst/stack/plugins/client/hooks';
3
3
  import '@tanstack/react-query';
4
4
  import 'zod';
5
5
  import '../../../../shared/stack.Dsatjh0B.mjs';
6
- import '../../../../shared/stack.CKc_Bais.mjs';
6
+ import '../../../../shared/stack.Csi-4Mgz.mjs';
7
7
 
8
8
  declare function useThrottle<T>(value: T, wait?: number): T;
9
9
 
@@ -1,9 +1,9 @@
1
- export { P as PostCreateInput, e as PostUpdateInput, p as UseNextPreviousPostsOptions, q as UseNextPreviousPostsResult, d as UsePostResult, b as UsePostSearchOptions, c as UsePostSearchResult, U as UsePostsOptions, a as UsePostsResult, s as UseRecentPostsOptions, t as UseRecentPostsResult, l as useCreatePost, n as useDeletePost, r as useNextPreviousPosts, g as usePost, k as usePostForm, o as usePostSearch, u as usePosts, v as useRecentPosts, h as useSuspensePost, f as useSuspensePosts, j as useSuspenseTags, i as useTags, m as useUpdatePost } from '../../../../shared/stack.DfrRYOIl.js';
1
+ export { P as PostCreateInput, e as PostUpdateInput, p as UseNextPreviousPostsOptions, q as UseNextPreviousPostsResult, d as UsePostResult, b as UsePostSearchOptions, c as UsePostSearchResult, U as UsePostsOptions, a as UsePostsResult, s as UseRecentPostsOptions, t as UseRecentPostsResult, l as useCreatePost, n as useDeletePost, r as useNextPreviousPosts, g as usePost, k as usePostForm, o as usePostSearch, u as usePosts, v as useRecentPosts, h as useSuspensePost, f as useSuspensePosts, j as useSuspenseTags, i as useTags, m as useUpdatePost } from '../../../../shared/stack.Dpg_JjIo.js';
2
2
  export { useDebounce } from '@btst/stack/plugins/client/hooks';
3
3
  import '@tanstack/react-query';
4
4
  import 'zod';
5
5
  import '../../../../shared/stack.Dsatjh0B.js';
6
- import '../../../../shared/stack.CKc_Bais.js';
6
+ import '../../../../shared/stack.Csi-4Mgz.js';
7
7
 
8
8
  declare function useThrottle<T>(value: T, wait?: number): T;
9
9
 
@@ -4,11 +4,11 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { ComponentType, ReactNode } from 'react';
5
5
  import { S as SerializedPost, P as Post } from '../../../shared/stack.Dsatjh0B.cjs';
6
6
  import { N as NewPostPageComponent } from '../../../shared/stack.Bz-YPsuX.cjs';
7
- export { U as UsePostsOptions, a as UsePostsResult } from '../../../shared/stack.BTStHVTy.cjs';
7
+ export { U as UsePostsOptions, a as UsePostsResult } from '../../../shared/stack.BGzgFx3R.cjs';
8
8
  import '@tanstack/react-query';
9
9
  import 'zod';
10
10
  import '@btst/stack/plugins/client/hooks';
11
- import '../../../shared/stack.CKc_Bais.cjs';
11
+ import '../../../shared/stack.Csi-4Mgz.cjs';
12
12
 
13
13
  declare const BLOG_LOCALIZATION: {
14
14
  BLOG_FORMS_TITLE_LABEL: string;
@@ -4,11 +4,11 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { ComponentType, ReactNode } from 'react';
5
5
  import { S as SerializedPost, P as Post } from '../../../shared/stack.Dsatjh0B.mjs';
6
6
  import { N as NewPostPageComponent } from '../../../shared/stack.Bz-YPsuX.mjs';
7
- export { U as UsePostsOptions, a as UsePostsResult } from '../../../shared/stack.94kN3pEK.mjs';
7
+ export { U as UsePostsOptions, a as UsePostsResult } from '../../../shared/stack.CjCSDfWy.mjs';
8
8
  import '@tanstack/react-query';
9
9
  import 'zod';
10
10
  import '@btst/stack/plugins/client/hooks';
11
- import '../../../shared/stack.CKc_Bais.mjs';
11
+ import '../../../shared/stack.Csi-4Mgz.mjs';
12
12
 
13
13
  declare const BLOG_LOCALIZATION: {
14
14
  BLOG_FORMS_TITLE_LABEL: string;
@@ -4,11 +4,11 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
4
4
  import { ComponentType, ReactNode } from 'react';
5
5
  import { S as SerializedPost, P as Post } from '../../../shared/stack.Dsatjh0B.js';
6
6
  import { N as NewPostPageComponent } from '../../../shared/stack.Bz-YPsuX.js';
7
- export { U as UsePostsOptions, a as UsePostsResult } from '../../../shared/stack.DfrRYOIl.js';
7
+ export { U as UsePostsOptions, a as UsePostsResult } from '../../../shared/stack.Dpg_JjIo.js';
8
8
  import '@tanstack/react-query';
9
9
  import 'zod';
10
10
  import '@btst/stack/plugins/client/hooks';
11
- import '../../../shared/stack.CKc_Bais.js';
11
+ import '../../../shared/stack.Csi-4Mgz.js';
12
12
 
13
13
  declare const BLOG_LOCALIZATION: {
14
14
  BLOG_FORMS_TITLE_LABEL: string;
@@ -1,7 +1,7 @@
1
1
  import '@btst/stack/plugins/client';
2
- export { D as blogResources, d as createBlogQueryKeys } from '../../shared/stack.Ce6V7eDj.cjs';
2
+ export { D as blogResources, d as createBlogQueryKeys } from '../../shared/stack.BOZRaVpu.cjs';
3
3
  import 'zod';
4
- import '../../shared/stack.CKc_Bais.cjs';
4
+ import '../../shared/stack.Csi-4Mgz.cjs';
5
5
  import '../../shared/stack.Dsatjh0B.cjs';
6
6
  import '@btst/stack/plugins/api';
7
7
  import '../../authorization/index.cjs';
@@ -1,7 +1,7 @@
1
1
  import '@btst/stack/plugins/client';
2
- export { D as blogResources, d as createBlogQueryKeys } from '../../shared/stack.CTneIW0u.mjs';
2
+ export { D as blogResources, d as createBlogQueryKeys } from '../../shared/stack.Dvy7FmaA.mjs';
3
3
  import 'zod';
4
- import '../../shared/stack.CKc_Bais.mjs';
4
+ import '../../shared/stack.Csi-4Mgz.mjs';
5
5
  import '../../shared/stack.Dsatjh0B.mjs';
6
6
  import '@btst/stack/plugins/api';
7
7
  import '../../authorization/index.mjs';
@@ -1,7 +1,7 @@
1
1
  import '@btst/stack/plugins/client';
2
- export { D as blogResources, d as createBlogQueryKeys } from '../../shared/stack.D5b9l24t.js';
2
+ export { D as blogResources, d as createBlogQueryKeys } from '../../shared/stack.DlBoNqYu.js';
3
3
  import 'zod';
4
- import '../../shared/stack.CKc_Bais.js';
4
+ import '../../shared/stack.Csi-4Mgz.js';
5
5
  import '../../shared/stack.Dsatjh0B.js';
6
6
  import '@btst/stack/plugins/api';
7
7
  import '../../authorization/index.js';
@@ -1,4 +1,4 @@
1
- export { C as CMSApiRouter, b as CMSRouteKey, d as CMS_QUERY_KEYS, c as cmsBackendPlugin } from '../../../shared/stack.BV0uNV4f.cjs';
1
+ export { C as CMSApiRouter, b as CMSRouteKey, d as CMS_QUERY_KEYS, c as cmsBackendPlugin } from '../../../shared/stack.D6Pg-ufX.cjs';
2
2
  import { DBAdapter } from '@btst/db';
3
3
  import { S as SerializedContentType, a as SerializedContentItemWithType, b as ContentType, c as ContentItem, d as SerializedContentItem, e as ContentItemWithType } from '../../../shared/stack.B3_aDcYL.cjs';
4
4
  export { C as CMSBackendConfig, f as CMSBackendHooks, g as CMSCreateOperationContext, h as CMSCreateResultContext, i as CMSDeleteOperationContext, j as CMSDeleteResultContext, k as CMSOperationErrorContext, l as CMSOperationLifecycleContext, m as CMSUpdateOperationContext, n as CMSUpdateResultContext, o as ContentTypeConfig } from '../../../shared/stack.B3_aDcYL.cjs';
@@ -1,4 +1,4 @@
1
- export { C as CMSApiRouter, b as CMSRouteKey, d as CMS_QUERY_KEYS, c as cmsBackendPlugin } from '../../../shared/stack.lsbdKRj7.mjs';
1
+ export { C as CMSApiRouter, b as CMSRouteKey, d as CMS_QUERY_KEYS, c as cmsBackendPlugin } from '../../../shared/stack.B8PG21zX.mjs';
2
2
  import { DBAdapter } from '@btst/db';
3
3
  import { S as SerializedContentType, a as SerializedContentItemWithType, b as ContentType, c as ContentItem, d as SerializedContentItem, e as ContentItemWithType } from '../../../shared/stack.B3_aDcYL.mjs';
4
4
  export { C as CMSBackendConfig, f as CMSBackendHooks, g as CMSCreateOperationContext, h as CMSCreateResultContext, i as CMSDeleteOperationContext, j as CMSDeleteResultContext, k as CMSOperationErrorContext, l as CMSOperationLifecycleContext, m as CMSUpdateOperationContext, n as CMSUpdateResultContext, o as ContentTypeConfig } from '../../../shared/stack.B3_aDcYL.mjs';
@@ -1,4 +1,4 @@
1
- export { C as CMSApiRouter, b as CMSRouteKey, d as CMS_QUERY_KEYS, c as cmsBackendPlugin } from '../../../shared/stack.BMlTZnZp.js';
1
+ export { C as CMSApiRouter, b as CMSRouteKey, d as CMS_QUERY_KEYS, c as cmsBackendPlugin } from '../../../shared/stack.CyalJ0j6.js';
2
2
  import { DBAdapter } from '@btst/db';
3
3
  import { S as SerializedContentType, a as SerializedContentItemWithType, b as ContentType, c as ContentItem, d as SerializedContentItem, e as ContentItemWithType } from '../../../shared/stack.B3_aDcYL.js';
4
4
  export { C as CMSBackendConfig, f as CMSBackendHooks, g as CMSCreateOperationContext, h as CMSCreateResultContext, i as CMSDeleteOperationContext, j as CMSDeleteResultContext, k as CMSOperationErrorContext, l as CMSOperationLifecycleContext, m as CMSUpdateOperationContext, n as CMSUpdateResultContext, o as ContentTypeConfig } from '../../../shared/stack.B3_aDcYL.js';
@@ -1,6 +1,6 @@
1
1
  import * as _btst_stack_plugins_client from '@btst/stack/plugins/client';
2
2
  import { createApiClient } from '@btst/stack/plugins/client';
3
- import { C as CMSApiRouter, a as ContentListDiscriminator } from '../../shared/stack.BV0uNV4f.cjs';
3
+ import { C as CMSApiRouter, a as ContentListDiscriminator } from '../../shared/stack.D6Pg-ufX.cjs';
4
4
  import { S as SerializedContentType, I as InverseRelation, a as SerializedContentItemWithType, P as PaginatedContentItems } from '../../shared/stack.B3_aDcYL.cjs';
5
5
  import '@btst/stack/plugins/api';
6
6
  import '../../authorization/index.cjs';
@@ -1,6 +1,6 @@
1
1
  import * as _btst_stack_plugins_client from '@btst/stack/plugins/client';
2
2
  import { createApiClient } from '@btst/stack/plugins/client';
3
- import { C as CMSApiRouter, a as ContentListDiscriminator } from '../../shared/stack.lsbdKRj7.mjs';
3
+ import { C as CMSApiRouter, a as ContentListDiscriminator } from '../../shared/stack.B8PG21zX.mjs';
4
4
  import { S as SerializedContentType, I as InverseRelation, a as SerializedContentItemWithType, P as PaginatedContentItems } from '../../shared/stack.B3_aDcYL.mjs';
5
5
  import '@btst/stack/plugins/api';
6
6
  import '../../authorization/index.mjs';
@@ -1,6 +1,6 @@
1
1
  import * as _btst_stack_plugins_client from '@btst/stack/plugins/client';
2
2
  import { createApiClient } from '@btst/stack/plugins/client';
3
- import { C as CMSApiRouter, a as ContentListDiscriminator } from '../../shared/stack.BMlTZnZp.js';
3
+ import { C as CMSApiRouter, a as ContentListDiscriminator } from '../../shared/stack.CyalJ0j6.js';
4
4
  import { S as SerializedContentType, I as InverseRelation, a as SerializedContentItemWithType, P as PaginatedContentItems } from '../../shared/stack.B3_aDcYL.js';
5
5
  import '@btst/stack/plugins/api';
6
6
  import '../../authorization/index.js';
@@ -9,7 +9,7 @@ import '../../../../shared/stack.fdi94T4S.cjs';
9
9
  import 'react-hook-form';
10
10
  import 'react/jsx-runtime';
11
11
  import '@btst/stack/plugins/client';
12
- import '../../../../shared/stack.BV0uNV4f.cjs';
12
+ import '../../../../shared/stack.D6Pg-ufX.cjs';
13
13
  import '@btst/stack/plugins/api';
14
14
  import '../../../../authorization/index.cjs';
15
15
  import 'better-call';
@@ -9,7 +9,7 @@ import '../../../../shared/stack.fdi94T4S.mjs';
9
9
  import 'react-hook-form';
10
10
  import 'react/jsx-runtime';
11
11
  import '@btst/stack/plugins/client';
12
- import '../../../../shared/stack.lsbdKRj7.mjs';
12
+ import '../../../../shared/stack.B8PG21zX.mjs';
13
13
  import '@btst/stack/plugins/api';
14
14
  import '../../../../authorization/index.mjs';
15
15
  import 'better-call';
@@ -9,7 +9,7 @@ import '../../../../shared/stack.fdi94T4S.js';
9
9
  import 'react-hook-form';
10
10
  import 'react/jsx-runtime';
11
11
  import '@btst/stack/plugins/client';
12
- import '../../../../shared/stack.BMlTZnZp.js';
12
+ import '../../../../shared/stack.CyalJ0j6.js';
13
13
  import '@btst/stack/plugins/api';
14
14
  import '../../../../authorization/index.js';
15
15
  import 'better-call';
@@ -15,7 +15,7 @@ import '../../../shared/stack.B3_aDcYL.cjs';
15
15
  import 'react-hook-form';
16
16
  import '@tanstack/react-query';
17
17
  import '@btst/stack/plugins/client/hooks';
18
- import '../../../shared/stack.BV0uNV4f.cjs';
18
+ import '../../../shared/stack.D6Pg-ufX.cjs';
19
19
  import '@btst/stack/plugins/api';
20
20
  import '../../../authorization/index.cjs';
21
21
  import 'better-call';
@@ -15,7 +15,7 @@ import '../../../shared/stack.B3_aDcYL.mjs';
15
15
  import 'react-hook-form';
16
16
  import '@tanstack/react-query';
17
17
  import '@btst/stack/plugins/client/hooks';
18
- import '../../../shared/stack.lsbdKRj7.mjs';
18
+ import '../../../shared/stack.B8PG21zX.mjs';
19
19
  import '@btst/stack/plugins/api';
20
20
  import '../../../authorization/index.mjs';
21
21
  import 'better-call';
@@ -15,7 +15,7 @@ import '../../../shared/stack.B3_aDcYL.js';
15
15
  import 'react-hook-form';
16
16
  import '@tanstack/react-query';
17
17
  import '@btst/stack/plugins/client/hooks';
18
- import '../../../shared/stack.BMlTZnZp.js';
18
+ import '../../../shared/stack.CyalJ0j6.js';
19
19
  import '@btst/stack/plugins/api';
20
20
  import '../../../authorization/index.js';
21
21
  import 'better-call';
@@ -1,6 +1,6 @@
1
1
  import * as _btst_stack_plugins_client from '@btst/stack/plugins/client';
2
2
  import { createApiClient } from '@btst/stack/plugins/client';
3
- import { a as ContentListDiscriminator, C as CMSApiRouter } from '../../shared/stack.BV0uNV4f.cjs';
3
+ import { a as ContentListDiscriminator, C as CMSApiRouter } from '../../shared/stack.D6Pg-ufX.cjs';
4
4
  import { C as ComponentLayer, V as Variable } from '../../shared/stack.DmpPDPxA.cjs';
5
5
  import { P as PaginatedContentItems, a as SerializedContentItemWithType } from '../../shared/stack.B3_aDcYL.cjs';
6
6
  import { UIBuilderPageSchemaType, PaginatedUIBuilderPages, SerializedUIBuilderPage } from './index.cjs';
@@ -1,6 +1,6 @@
1
1
  import * as _btst_stack_plugins_client from '@btst/stack/plugins/client';
2
2
  import { createApiClient } from '@btst/stack/plugins/client';
3
- import { a as ContentListDiscriminator, C as CMSApiRouter } from '../../shared/stack.lsbdKRj7.mjs';
3
+ import { a as ContentListDiscriminator, C as CMSApiRouter } from '../../shared/stack.B8PG21zX.mjs';
4
4
  import { C as ComponentLayer, V as Variable } from '../../shared/stack.B1srlBud.mjs';
5
5
  import { P as PaginatedContentItems, a as SerializedContentItemWithType } from '../../shared/stack.B3_aDcYL.mjs';
6
6
  import { UIBuilderPageSchemaType, PaginatedUIBuilderPages, SerializedUIBuilderPage } from './index.mjs';
@@ -1,6 +1,6 @@
1
1
  import * as _btst_stack_plugins_client from '@btst/stack/plugins/client';
2
2
  import { createApiClient } from '@btst/stack/plugins/client';
3
- import { a as ContentListDiscriminator, C as CMSApiRouter } from '../../shared/stack.BMlTZnZp.js';
3
+ import { a as ContentListDiscriminator, C as CMSApiRouter } from '../../shared/stack.CyalJ0j6.js';
4
4
  import { C as ComponentLayer, V as Variable } from '../../shared/stack.BK9Z2dcL.js';
5
5
  import { P as PaginatedContentItems, a as SerializedContentItemWithType } from '../../shared/stack.B3_aDcYL.js';
6
6
  import { UIBuilderPageSchemaType, PaginatedUIBuilderPages, SerializedUIBuilderPage } from './index.js';
@@ -2,7 +2,7 @@ import * as _tanstack_react_query from '@tanstack/react-query';
2
2
  import { z } from 'zod';
3
3
  import { ResourceFormConfig, ResourceFormResult } from '@btst/stack/plugins/client/hooks';
4
4
  import { S as SerializedPost, a as SerializedTag } from './stack.Dsatjh0B.cjs';
5
- import { c as createPostSchema, u as updatePostSchema } from './stack.CKc_Bais.cjs';
5
+ import { c as createPostSchema, u as updatePostSchema } from './stack.Csi-4Mgz.cjs';
6
6
 
7
7
  /**
8
8
  * Options for the usePosts hook
@@ -136,10 +136,6 @@ declare function useSuspenseTags(): {
136
136
  declare function usePostForm<TValues>(config: ResourceFormConfig<TValues, SerializedPost | null, SerializedPost | null>): ResourceFormResult<TValues, SerializedPost | null, SerializedPost | null>;
137
137
  /** Create a new post */
138
138
  declare function useCreatePost(): _tanstack_react_query.UseMutationResult<SerializedPost | null, Error, {
139
- title: string;
140
- content: string;
141
- excerpt: string;
142
- published: boolean;
143
139
  tags: ({
144
140
  name: string;
145
141
  } | {
@@ -147,6 +143,10 @@ declare function useCreatePost(): _tanstack_react_query.UseMutationResult<Serial
147
143
  name: string;
148
144
  slug: string;
149
145
  })[];
146
+ title: string;
147
+ content: string;
148
+ excerpt: string;
149
+ published: boolean;
150
150
  slug?: string | undefined;
151
151
  publishedAt?: Date | undefined;
152
152
  createdAt?: Date | undefined;