@postxl/generators 1.9.3 → 1.10.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 (32) hide show
  1. package/dist/backend-import/generators/detect-delta/detect-delta-all-models.generator.js +43 -4
  2. package/dist/backend-import/generators/detect-delta/detect-delta-all-models.generator.js.map +1 -1
  3. package/dist/backend-import/generators/detect-delta/detect-delta-functions.generator.js +48 -11
  4. package/dist/backend-import/generators/detect-delta/detect-delta-functions.generator.js.map +1 -1
  5. package/dist/backend-import/generators/detect-delta/model-function.generator.js +28 -4
  6. package/dist/backend-import/generators/detect-delta/model-function.generator.js.map +1 -1
  7. package/dist/backend-import/import.generator.d.ts +4 -0
  8. package/dist/backend-import/import.generator.js +4 -0
  9. package/dist/backend-import/import.generator.js.map +1 -1
  10. package/dist/backend-repositories/generators/model-repository.generator.js +110 -3
  11. package/dist/backend-repositories/generators/model-repository.generator.js.map +1 -1
  12. package/dist/backend-router-trpc/generators/model-routes.generator.js +6 -1
  13. package/dist/backend-router-trpc/generators/model-routes.generator.js.map +1 -1
  14. package/dist/backend-view/model-view-service.generator.js +86 -19
  15. package/dist/backend-view/model-view-service.generator.js.map +1 -1
  16. package/dist/frontend-admin/admin.generator.d.ts +5 -0
  17. package/dist/frontend-admin/admin.generator.js +1 -0
  18. package/dist/frontend-admin/admin.generator.js.map +1 -1
  19. package/dist/frontend-admin/generators/model-admin-page.generator.js +22 -1
  20. package/dist/frontend-admin/generators/model-admin-page.generator.js.map +1 -1
  21. package/dist/frontend-admin/utils.d.ts +4 -0
  22. package/dist/frontend-admin/utils.js +48 -0
  23. package/dist/frontend-admin/utils.js.map +1 -1
  24. package/dist/frontend-tables/generators/model-table.generator.js +35 -1
  25. package/dist/frontend-tables/generators/model-table.generator.js.map +1 -1
  26. package/dist/frontend-trpc-client/generators/model-hook.generator.js +12 -0
  27. package/dist/frontend-trpc-client/generators/model-hook.generator.js.map +1 -1
  28. package/dist/seed-data/generator/excel-template.generator.js +126 -10
  29. package/dist/seed-data/generator/excel-template.generator.js.map +1 -1
  30. package/dist/seed-data/generator/model-seed-data.generator.js +148 -48
  31. package/dist/seed-data/generator/model-seed-data.generator.js.map +1 -1
  32. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"model-admin-page.generator.js","sourceRoot":"","sources":["../../../src/frontend-admin/generators/model-admin-page.generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-admin-page.generator.js","sourceRoot":"","sources":["../../../src/frontend-admin/generators/model-admin-page.generator.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,14 @@
1
1
  import * as Generator from '@postxl/generator';
2
+ import { FieldName } from '@postxl/schema';
2
3
  import { ContextResult, Page, PagePaths } from './admin.generator';
3
4
  export type ModelInfo = {
4
5
  name: string;
5
6
  route: string;
6
7
  userFriendlyName: string;
7
8
  };
9
+ export type KeyFieldRouteInfo = {
10
+ keyFieldName: FieldName;
11
+ };
8
12
  export type ModelsBySchema = {
9
13
  schemas: string[];
10
14
  modelsBySchema: Map<string, ModelInfo[]>;
@@ -77,6 +77,19 @@ function generatePage({ page, paths, vfs, content, }) {
77
77
  vfs.write((0, node_path_1.join)(paths.routes, `${page.route}.lazy.tsx`), generateOutlet(page));
78
78
  return;
79
79
  }
80
+ // Model admin pages with keyField routing use outlet pattern with index and $key routes
81
+ if (page.hasKeyFieldRouting) {
82
+ // Generate outlet route at /admin/{model}
83
+ vfs.write((0, node_path_1.join)(paths.routes, `${page.route}.lazy.tsx`), generateOutlet(page));
84
+ // Generate index route at /admin/{model}/ (no key selected)
85
+ vfs.write((0, node_path_1.join)(paths.routes, `${page.route}/index.lazy.tsx`), generateKeyFieldIndexRoute(page));
86
+ // Generate $key route at /admin/{model}/$key
87
+ vfs.write((0, node_path_1.join)(paths.routes, `${page.route}/$key.lazy.tsx`), generateKeyFieldParamRoute(page));
88
+ for (const alias of page.aliases ?? []) {
89
+ vfs.write((0, node_path_1.join)(paths.routes, `${alias}.tsx`), generateAliasRoute({ alias, page }));
90
+ }
91
+ return;
92
+ }
80
93
  vfs.write((0, node_path_1.join)(paths.routes, `${page.route}.lazy.tsx`), generateRoute(page));
81
94
  for (const alias of page.aliases ?? []) {
82
95
  vfs.write((0, node_path_1.join)(paths.routes, `${alias}.tsx`), generateAliasRoute({ alias, page }));
@@ -119,4 +132,39 @@ export const Route = createFileRoute('${joinRoutes('_auth-routes', alias)}')({
119
132
  },
120
133
  })`;
121
134
  }
135
+ /**
136
+ * Generate the index route for keyField routing (no key selected)
137
+ * This renders the page component with no selectedKey
138
+ */
139
+ function generateKeyFieldIndexRoute({ pageComponent, route }) {
140
+ if (!route.startsWith('/')) {
141
+ throw new Error(`Route for page ${pageComponent.name} must start with '/': ${route}!`);
142
+ }
143
+ return `import ${pageComponent.name} from '${pageComponent.location}'
144
+ import { createLazyFileRoute } from '@tanstack/react-router'
145
+
146
+ export const Route = createLazyFileRoute('${joinRoutes('_auth-routes', route)}/')({
147
+ component: () => <${pageComponent.name} />,
148
+ })`;
149
+ }
150
+ /**
151
+ * Generate the $key param route for keyField routing (with key selected)
152
+ * This renders the page component with selectedKey from URL params
153
+ */
154
+ function generateKeyFieldParamRoute({ pageComponent, route }) {
155
+ if (!route.startsWith('/')) {
156
+ throw new Error(`Route for page ${pageComponent.name} must start with '/': ${route}!`);
157
+ }
158
+ return `import ${pageComponent.name} from '${pageComponent.location}'
159
+ import { createLazyFileRoute } from '@tanstack/react-router'
160
+
161
+ function ${pageComponent.name}WithKey() {
162
+ const { key } = Route.useParams()
163
+ return <${pageComponent.name} selectedKey={key} />
164
+ }
165
+
166
+ export const Route = createLazyFileRoute('${joinRoutes('_auth-routes', route)}/$key')({
167
+ component: ${pageComponent.name}WithKey,
168
+ })`;
169
+ }
122
170
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/frontend-admin/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,gEA6BC;AAED,oCAyBC;AA/ED,yCAAgC;AAEhC,6DAA8C;AAe9C;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAC,OAAsB;IAC/D,yBAAyB;IACzB,MAAM,cAAc,GAAG,IAAI,GAAG,EAAuB,CAAA;IAErD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc,CAAA;QACnC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAChC,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC;YAC/B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK;YAC7B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;SACzC,CAAC,CAAA;IACJ,CAAC;IAED,8BAA8B;IAC9B,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IAE1F,oEAAoE;IACpE,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAE,CAAA;QAC1C,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAC7E,CAAC;IAED,OAAO;QACL,OAAO,EAAE,aAAa;QACtB,cAAc;KACf,CAAA;AACH,CAAC;AAED,SAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,KAAK,EACL,GAAG,EACH,OAAO,GAMR;IACC,MAAM,iBAAiB,GAAG,IAAA,gBAAI,EAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;IAChG,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAA;IAErC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,GAAG,CAAC,KAAK,CAAC,IAAA,gBAAI,EAAC,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,iBAAiB,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;QAClF,GAAG,CAAC,KAAK,CAAC,IAAA,gBAAI,EAAC,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,WAAW,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7E,OAAM;IACR,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,IAAA,gBAAI,EAAC,KAAK,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,WAAW,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;IAE5E,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACvC,GAAG,CAAC,KAAK,CAAC,IAAA,gBAAI,EAAC,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,MAAM,CAAC,EAAE,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACpF,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAG,KAAe;IACpC,OAAO,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC1D,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,aAAa,EAAE,KAAK,EAAQ;IACpD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,kBAAkB,aAAa,CAAC,IAAI,yBAAyB,KAAK,GAAG,CAAC,CAAA;IACxF,CAAC;IAED,OAAO;;;;sBAIa,aAAa,CAAC,IAAI;;4CAEI,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;;GAE1E,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,aAAa,EAAE,KAAK,EAAQ;IACnD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,kBAAkB,aAAa,CAAC,IAAI,yBAAyB,KAAK,GAAG,CAAC,CAAA;IACxF,CAAC;IAED,OAAO,UAAU,aAAa,CAAC,IAAI,UAAU,aAAa,CAAC,QAAQ;;;4CAGzB,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;eAC9D,aAAa,CAAC,IAAI;GAC9B,CAAA;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAiC;IACxE,OAAO;;wCAE+B,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC;;4BAE7C,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;;GAE/C,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/frontend-admin/utils.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ function generateModelTableComponent({ model, context, }) {
31
31
  import { ColumnDef } from '@tanstack/react-table'
32
32
 
33
33
  import { TrashIcon } from 'lucide-react'
34
- import { useMemo, useEffect, useRef } from 'react'
34
+ import { useMemo, useEffect, useRef, useCallback } from 'react'
35
35
 
36
36
  import { TableFilter } from '@components/admin/table-filter'
37
37
  import { ColumnHeaderStateIcon } from '@components/admin/column-header-state-icon'
@@ -59,6 +59,9 @@ export function ${model.table.component.name}({
59
59
  handleRemoveRows,
60
60
  onCellChange,
61
61
  onRowSelectionChange,
62
+ selectedKey,
63
+ onRowClick,
64
+ keyField,
62
65
  hasNextPage,
63
66
  fetchNextPage,
64
67
  total,
@@ -79,6 +82,10 @@ export function ${model.table.component.name}({
79
82
  handleRemoveRows?: (countries: ${model.types.id.name}[]) => void
80
83
  onCellChange?: (args: { rowIndex: number; columnId: string }) => void
81
84
  onRowSelectionChange?: (rowIds: string[]) => void
85
+ // KeyField-based row selection (for URL routing)
86
+ selectedKey?: string
87
+ onRowClick?: (key: string | null) => void
88
+ keyField?: string
82
89
  // Infinite scroll props
83
90
  hasNextPage?: boolean
84
91
  fetchNextPage?: () => Promise<unknown>
@@ -94,6 +101,30 @@ export function ${model.table.component.name}({
94
101
  )`)
95
102
  .join('\n')}
96
103
 
104
+ // Find the selected row index based on selectedKey and keyField
105
+ const selectedRowIndex = useMemo(() => {
106
+ if (!selectedKey || !keyField) return -1
107
+ return data.findIndex((row) => {
108
+ const value = (row as Record<string, unknown>)[keyField]
109
+ return value != null && String(value) === selectedKey
110
+ })
111
+ }, [data, selectedKey, keyField])
112
+
113
+ // Handle row click - extract keyField value and call onRowClick
114
+ const handleRowClick = useCallback((rowIndex: number) => {
115
+ if (!onRowClick || !keyField) return
116
+ const row = data[rowIndex]
117
+ if (row) {
118
+ const value = (row as Record<string, unknown>)[keyField]
119
+ if (value == null) {
120
+ return
121
+ }
122
+ const keyValue = String(value)
123
+ // Always navigate to the row, even if already selected (no toggle behavior)
124
+ onRowClick(keyValue)
125
+ }
126
+ }, [data, keyField, onRowClick])
127
+
97
128
  const columns = useMemo<ColumnDef<${model.types.viewModel.name}>[]>(
98
129
  () => [
99
130
  {
@@ -184,6 +215,9 @@ export function ${model.table.component.name}({
184
215
  onLoadMore: hasNextPage ? fetchNextPage : undefined,
185
216
  // Total row count for proper scrollbar sizing (reflects full dataset)
186
217
  totalRowCount: total,
218
+ // KeyField-based row selection (for URL routing)
219
+ highlightedRowIndex: selectedRowIndex,
220
+ onRowClick: handleRowClick,
187
221
  // Server-side sorting: only enable when onSortChange is provided
188
222
  // Otherwise, keep default client-side sorting behavior
189
223
  ...(onSortChange && {
@@ -1 +1 @@
1
- {"version":3,"file":"model-table.generator.js","sourceRoot":"","sources":["../../../src/frontend-tables/generators/model-table.generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-table.generator.js","sourceRoot":"","sources":["../../../src/frontend-tables/generators/model-table.generator.ts"],"names":[],"mappings":"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"}
@@ -151,6 +151,18 @@ export const ${itemHook.name} = (id: ${model.types.id.name} | null): ${model.ty
151
151
  return useMemo((): ${model.types.viewModel.name} | null => (isPending || !data) ? null : data, [data, isPending])
152
152
  }
153
153
 
154
+ /**
155
+ * Hook for fetching a single ${model.userFriendlyName} by its key field value.
156
+ * Returns null if not found or while loading.
157
+ */
158
+ export const ${itemHook.name}ByKey = (key: string | null): ${model.types.viewModel.name} | null => {
159
+ const trpc = ${context.trpcClient.name}()
160
+
161
+ const { data, isPending } = useQuery(trpc.${trpcRoute.name}.getByKey.queryOptions(key!, { enabled: key !== null })) // NOSONAR
162
+
163
+ return useMemo((): ${model.types.viewModel.name} | null => (isPending || !data) ? null : data, [data, isPending])
164
+ }
165
+
154
166
  /**
155
167
  * Hook for fetching and managing ${model.userFriendlyNamePlural}.
156
168
  *
@@ -1 +1 @@
1
- {"version":3,"file":"model-hook.generator.js","sourceRoot":"","sources":["../../../src/frontend-trpc-client/generators/model-hook.generator.ts"],"names":[],"mappings":";;AASA,8CAsPC;AA/PD,iDAA8F;AAS9F,SAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAyD;IACzG,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAEhD,MAAM,OAAO,GAAG,2BAAe;QAC7B,EAAE;SACD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;SAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;SAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;SACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;SAChC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;SACrC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;SACvB,UAAU,CAAC;QACV,CAAC,IAAA,yBAAa,EAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAA,0BAAc,EAAC,UAAU,CAAC,EAAE,IAAA,0BAAc,EAAC,kBAAkB,CAAC,CAAC;QAC1G,CAAC,IAAA,yBAAa,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC;KACrD,CAAC,CAAA;IAEJ,IAAI,aAAa,GAAa,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IAEnE,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO;aACJ,OAAO,CAAC,EAAE,IAAI,EAAE,IAAA,sBAAU,EAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;aACvF,OAAO,CAAC,EAAE,IAAI,EAAE,IAAA,sBAAU,EAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;aACvF,OAAO,CAAC,EAAE,IAAI,EAAE,IAAA,sBAAU,EAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;aAC5F,OAAO,CAAC,EAAE,IAAI,EAAE,IAAA,sBAAU,EAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;aACtF,UAAU,CAAC;YACV,CAAC,IAAA,yBAAa,EAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAA,0BAAc,EAAC,aAAa,CAAC,CAAC;YACzE,CAAC,IAAA,yBAAa,EAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,IAAA,0BAAc,EAAC,aAAa,CAAC,CAAC;SACtE,CAAC,CAAA;QAEJ,aAAa,GAAG;YACd,KAAK,EAAE;UACH,SAAS,CAAC,MAAO,CAAC,IAAI,sCAAsC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;UACtF,SAAS,CAAC,UAAW,CAAC,IAAI,wCAAwC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;UAC5F,SAAS,CAAC,WAAY,CAAC,IAAI,2CAA2C,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;UAChG,SAAS,CAAC,MAAO,CAAC,IAAI,sCAAsC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;UACtF,SAAS,CAAC,UAAW,CAAC,IAAI,wCAAwC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;UAC5F,SAAS,CAAC,MAAO,CAAC,IAAI,UAAU,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,gBAAgB,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI;UACtF,SAAS,CAAC,UAAW,CAAC,IAAI,WAAW,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,kBAAkB,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI;UAC7F,SAAS,CAAC,KAAM,CAAC,IAAI,qCAAqC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;UACpF,SAAS,CAAC,SAAU,CAAC,IAAI,uCAAuC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK;YAEnG,KAAK,EAAE;;;;;;;;oCAQuB,SAAS,CAAC,IAAI;;;;;;6DAMW,SAAS,CAAC,IAAI;6DACd,SAAS,CAAC,IAAI;;;;;;kDAMzB,SAAS,CAAC,IAAI;sDACV,SAAS,CAAC,IAAI;uDACb,SAAS,CAAC,IAAI;kDACnB,SAAS,CAAC,IAAI;sDACV,SAAS,CAAC,IAAI;kDAClB,SAAS,CAAC,IAAI;sDACV,SAAS,CAAC,IAAI;iDACnB,SAAS,CAAC,IAAI;qDACV,SAAS,CAAC,IAAI;SAC1D;YAEH,OAAO,EAAE;UACL,SAAS,CAAC,MAAO,CAAC,IAAI;UACtB,SAAS,CAAC,UAAW,CAAC,IAAI;UAC1B,SAAS,CAAC,WAAY,CAAC,IAAI;UAC3B,SAAS,CAAC,MAAO,CAAC,IAAI;UACtB,SAAS,CAAC,UAAW,CAAC,IAAI;UAC1B,SAAS,CAAC,MAAO,CAAC,IAAI;UACtB,SAAS,CAAC,UAAW,CAAC,IAAI;UAC1B,SAAS,CAAC,KAAM,CAAC,IAAI;UACrB,SAAS,CAAC,SAAU,CAAC,IAAI,kCAAkC;SAChE,CAAA;IACH,CAAC;IAED,OAAO;;EAEP,OAAO,CAAC,QAAQ,EAAE;;;qBAGC,SAAS,CAAC,IAAI;;cAErB,SAAS,CAAC,IAAI,CAAC,IAAI;;;;;;;;;;;;;;;yBAeR,SAAS,CAAC,IAAI;;cAEzB,SAAS,CAAC,IAAI,CAAC,IAAI;;IAE7B,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;IAElD,SAAS,CAAC,GAAG,CAAC,IAAI,SAAS,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;IAE7E,SAAS,CAAC,YAAY,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;IAE1D,SAAS,CAAC,WAAW,CAAC,IAAI,SAAS,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;IAErF,SAAS,CAAC,QAAQ,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;IAwBvB,aAAa,CAAC,KAAK;;;;eAIR,QAAQ,CAAC,IAAI,WAAW,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,cAAc,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;iBACjF,OAAO,CAAC,UAAU,CAAC,IAAI;;8CAEM,SAAS,CAAC,IAAI;;uBAErC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;;;oCAIb,KAAK,CAAC,sBAAsB;;;;;;;;eAQjD,SAAS,CAAC,IAAI;cACf,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI;qBACrB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;aACzC,SAAS,CAAC,IAAI,CAAC,IAAI;KAC3B,SAAS,CAAC,IAAI,CAAC,IAAI;;iBAEP,OAAO,CAAC,UAAU,CAAC,IAAI;;;;;;;;mCAQL,SAAS,CAAC,IAAI;;;;cAInC,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI;;;;;;;;;cASlD,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI;;;;;;;;IAQrE,aAAa,CAAC,KAAK;;UAEb,SAAS,CAAC,GAAG,CAAC,IAAI,sBAAsB,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;UAE1F,SAAS,CAAC,IAAI,CAAC,IAAI,kBAAkB,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,oBAAoB,SAAS,CAAC,GAAG,CAAC,IAAI,gBAAgB,SAAS,CAAC,GAAG,CAAC,IAAI;;;;;;UAMvI,SAAS,CAAC,YAAY,CAAC,IAAI,kBAAkB,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;eAElE,SAAS,CAAC,IAAI,CAAC,IAAI;;;;;;uEAMqC,SAAS,CAAC,IAAI,CAAC,IAAI;;UAEhF,SAAS,CAAC,WAAW,CAAC,IAAI,sBAAsB,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;eAE7F,SAAS,CAAC,GAAG,CAAC,IAAI;;qBAEZ,SAAS,CAAC,YAAY,CAAC,IAAI,kBAAkB,KAAK,CAAC,OAAO,CAAC,IAAI;oBAChE,SAAS,CAAC,YAAY,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAAC,IAAI;;;;gDAItB,SAAS,CAAC,IAAI,CAAC,IAAI;QAC3D,SAAS,CAAC,YAAY,CAAC,IAAI;;;MAG7B,SAAS,CAAC,IAAI,CAAC,IAAI;MACnB,SAAS,CAAC,GAAG,CAAC,IAAI;MAClB,SAAS,CAAC,YAAY,CAAC,IAAI;MAC3B,SAAS,CAAC,WAAW,CAAC,IAAI;MAC1B,SAAS,CAAC,QAAQ,CAAC,IAAI;;;;;;MAMvB,aAAa,CAAC,OAAO;;EAEzB,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"model-hook.generator.js","sourceRoot":"","sources":["../../../src/frontend-trpc-client/generators/model-hook.generator.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,7 @@ const utils_1 = require("@postxl/utils");
43
43
  async function generateSeedExcelTemplate({ context }) {
44
44
  const wb = initializeWorkbook();
45
45
  for (const model of [...context.models.values()].sort((a, b) => a.name.localeCompare(b.name))) {
46
- addModel({ model, wb });
46
+ addModel({ model, wb, context });
47
47
  }
48
48
  const buffer = Buffer.from(await wb.xlsx.writeBuffer());
49
49
  return buffer;
@@ -56,7 +56,7 @@ function initializeWorkbook() {
56
56
  wb.modified = new Date();
57
57
  return wb;
58
58
  }
59
- function addModel({ model, wb }) {
59
+ function addModel({ model, wb, context }) {
60
60
  // Sheets
61
61
  const ws = wb.addWorksheet(model.seedData.excel.sheetName);
62
62
  ws.views = [{ state: 'frozen', xSplit: 1, ySplit: 6, activeCell: 'B7' }];
@@ -66,16 +66,13 @@ function addModel({ model, wb }) {
66
66
  headerCell.font = { bold: true, size: 14 };
67
67
  // Description
68
68
  ws.getCell(3, 1).value = model.description;
69
- const { tableColumns, columnConfigs, blankRow } = getModelColumns({ model });
69
+ const { tableColumns, columnConfigs, blankRow, relationFields } = getModelColumns({ model });
70
70
  const rows = getModelRows({ model });
71
71
  adjustColumnWidths({ columnConfigs, rows });
72
72
  // Labels
73
73
  for (const [index, columnConfig] of columnConfigs.entries()) {
74
74
  const columnIndex = index + 1;
75
75
  ws.getCell(1, columnIndex).border = { bottom: { style: 'thick' } };
76
- const cell = ws.getCell(5, columnIndex);
77
- cell.value = columnConfig.label;
78
- cell.font = { bold: true };
79
76
  const column = ws.getColumn(columnIndex);
80
77
  if (columnConfig.isHidden) {
81
78
  column.hidden = true;
@@ -85,7 +82,7 @@ function addModel({ model, wb }) {
85
82
  // Table
86
83
  const table = ws.addTable({
87
84
  name: model.seedData.excel.tableName,
88
- ref: 'A6',
85
+ ref: 'A5',
89
86
  headerRow: true,
90
87
  totalsRow: false,
91
88
  style: {
@@ -96,21 +93,121 @@ function addModel({ model, wb }) {
96
93
  rows: rows.length > 0 ? rows : [blankRow],
97
94
  });
98
95
  table.commit();
96
+ // Add data validation for relation fields
97
+ addRelationFieldValidations({ ws, model, relationFields, context, rowCount: rows.length });
98
+ }
99
+ /**
100
+ * Adds data validation to relation field columns so that they can only contain values
101
+ * that exist in the referenced model's key column.
102
+ */
103
+ function addRelationFieldValidations({ ws, relationFields, context, rowCount, }) {
104
+ for (const relationField of relationFields) {
105
+ const referencedModel = context.models.get(relationField.referencedModelName);
106
+ if (!referencedModel) {
107
+ continue;
108
+ }
109
+ // Find the column index of the key field in the referenced model
110
+ const keyFieldColumnIndex = findKeyFieldColumnIndex(referencedModel);
111
+ if (keyFieldColumnIndex === null) {
112
+ continue;
113
+ }
114
+ const referencedSheetName = referencedModel.seedData.excel.sheetName;
115
+ const referencedKeyColumnLetter = toExcelColumnLetter(keyFieldColumnIndex);
116
+ // Calculate the data range in the referenced sheet
117
+ // Tables start at row 5 (header), data starts at row 6
118
+ const referencedDataStartRow = 6;
119
+ const referencedDataEndRow = Math.max(referencedDataStartRow + referencedModel.seedData.data.length - 1, referencedDataStartRow + 100);
120
+ // Create a formula using direct cell references
121
+ // Format: ='SheetName'!A6:A100
122
+ const formula = `='${referencedSheetName}'!${referencedKeyColumnLetter}${referencedDataStartRow}:${referencedKeyColumnLetter}${referencedDataEndRow}`;
123
+ // Apply data validation to the relation field column (starting from row 6, which is the first data row after the table header)
124
+ const columnLetter = toExcelColumnLetter(relationField.columnIndex);
125
+ const startRow = 6; // First data row (row 5 is header, row 6 is first data row)
126
+ const endRow = Math.max(startRow + rowCount, startRow + 100); // At least 100 rows for future entries
127
+ // Create the data validation object
128
+ ws.getCell(`${columnLetter}${startRow}`).dataValidation = {
129
+ type: 'list',
130
+ allowBlank: true,
131
+ formulae: [formula],
132
+ showErrorMessage: true,
133
+ errorStyle: 'warning',
134
+ errorTitle: 'Invalid Reference',
135
+ error: `Please select a valid ${referencedModel.userFriendlyName} from the dropdown list.`,
136
+ };
137
+ // Copy data validation to all cells in the range
138
+ for (let row = startRow + 1; row <= endRow; row++) {
139
+ ws.getCell(`${columnLetter}${row}`).dataValidation = ws.getCell(`${columnLetter}${startRow}`).dataValidation;
140
+ }
141
+ }
142
+ }
143
+ /**
144
+ * Finds the column index (1-based) of the key field in a model.
145
+ * Returns null if the key field cannot be found.
146
+ */
147
+ function findKeyFieldColumnIndex(model) {
148
+ const keyFieldIsIdField = model.keyField.name === model.idField.name;
149
+ let columnIndex = 0;
150
+ for (const field of model.fields.values()) {
151
+ // Skip the id field when keyField is a different field
152
+ if (field.kind === 'id' && !keyFieldIsIdField) {
153
+ continue;
154
+ }
155
+ columnIndex++;
156
+ if (field.kind === 'discriminatedUnion') {
157
+ // For discriminated unions, count all columns
158
+ columnIndex += field.commonFields.size;
159
+ for (const member of field.members.values()) {
160
+ columnIndex += member.fields.size;
161
+ }
162
+ }
163
+ if (field.name === model.keyField.name) {
164
+ return columnIndex;
165
+ }
166
+ }
167
+ return null;
168
+ }
169
+ /**
170
+ * Converts a column index (1-based) to an Excel column letter (A, B, C, ..., Z, AA, AB, ...).
171
+ */
172
+ function toExcelColumnLetter(columnIndex) {
173
+ let letter = '';
174
+ let num = columnIndex;
175
+ while (num > 0) {
176
+ const remainder = (num - 1) % 26;
177
+ letter = String.fromCharCode(65 + remainder) + letter;
178
+ num = Math.floor((num - 1) / 26);
179
+ }
180
+ return letter;
99
181
  }
100
182
  function getModelColumns({ model }) {
101
183
  const tableColumns = [];
102
184
  const columnConfigs = [];
185
+ const relationFields = [];
186
+ // Determine if we should skip the id column.
187
+ // If keyField is different from id field, the id will be auto-generated during import.
188
+ const keyFieldIsIdField = model.keyField.name === model.idField.name;
103
189
  for (const field of model.fields.values()) {
190
+ // Skip the id field when keyField is a different field
191
+ if (field.kind === 'id' && !keyFieldIsIdField) {
192
+ continue;
193
+ }
104
194
  if (field.kind === 'discriminatedUnion') {
105
- addDiscriminatedUnionColumns({ field, tableColumns, columnConfigs });
195
+ addDiscriminatedUnionColumns({ field, tableColumns, columnConfigs, relationFields });
106
196
  }
107
197
  else {
108
198
  tableColumns.push({ name: (0, utils_1.toExcelColumnName)(field.excelName, field.name) });
109
199
  columnConfigs.push(getColumnConfig(field));
200
+ // Track relation fields for data validation
201
+ if (field.kind === 'relation') {
202
+ relationFields.push({
203
+ columnIndex: columnConfigs.length, // 1-indexed column
204
+ referencedModelName: field.referencedModelName,
205
+ });
206
+ }
110
207
  }
111
208
  }
112
209
  const blankRow = columnConfigs.map(() => null);
113
- return { tableColumns, columnConfigs, blankRow };
210
+ return { tableColumns, columnConfigs, blankRow, relationFields };
114
211
  }
115
212
  function getColumnConfig(field) {
116
213
  const isHidden = field.kind === 'scalar' && (field.isCreatedAt || field.isUpdatedAt);
@@ -141,17 +238,29 @@ function getColumnConfig(field) {
141
238
  throw new utils_1.ExhaustiveSwitchCheck(field);
142
239
  }
143
240
  }
144
- function addDiscriminatedUnionColumns({ field, tableColumns, columnConfigs, }) {
241
+ function addDiscriminatedUnionColumns({ field, tableColumns, columnConfigs, relationFields, }) {
145
242
  tableColumns.push({ name: field.databaseName });
146
243
  columnConfigs.push(getColumnConfig(field));
147
244
  for (const f of field.commonFields.values()) {
148
245
  tableColumns.push({ name: f.databaseName });
149
246
  columnConfigs.push(getColumnConfig(f));
247
+ if (f.kind === 'relation') {
248
+ relationFields.push({
249
+ columnIndex: columnConfigs.length,
250
+ referencedModelName: f.referencedModelName,
251
+ });
252
+ }
150
253
  }
151
254
  for (const member of field.members.values()) {
152
255
  for (const f of member.fields.values()) {
153
256
  tableColumns.push({ name: f.databaseName });
154
257
  columnConfigs.push(getColumnConfig(f));
258
+ if (f.kind === 'relation') {
259
+ relationFields.push({
260
+ columnIndex: columnConfigs.length,
261
+ referencedModelName: f.referencedModelName,
262
+ });
263
+ }
155
264
  }
156
265
  }
157
266
  }
@@ -163,7 +272,14 @@ function getModelRows({ model }) {
163
272
  }
164
273
  function getModelRow({ model, row }) {
165
274
  const result = [];
275
+ // Determine if we should skip the id column.
276
+ // If keyField is different from id field, the id will be auto-generated during import.
277
+ const keyFieldIsIdField = model.keyField.name === model.idField.name;
166
278
  for (const field of model.fields.values()) {
279
+ // Skip the id field when keyField is a different field
280
+ if (field.kind === 'id' && !keyFieldIsIdField) {
281
+ continue;
282
+ }
167
283
  if (field.kind === 'discriminatedUnion') {
168
284
  addDiscriminatedUnionRowValue({ field, value: row[field.name], result });
169
285
  }
@@ -1 +1 @@
1
- {"version":3,"file":"excel-template.generator.js","sourceRoot":"","sources":["../../../src/seed-data/generator/excel-template.generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"excel-template.generator.js","sourceRoot":"","sources":["../../../src/seed-data/generator/excel-template.generator.ts"],"names":[],"mappings":"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"}