swallowkit 0.3.0-beta.2 → 0.4.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.ja.md +1 -1
  2. package/README.md +1 -1
  3. package/dist/cli/commands/build.d.ts.map +1 -1
  4. package/dist/cli/commands/build.js +0 -3
  5. package/dist/cli/commands/build.js.map +1 -1
  6. package/dist/cli/commands/create-model.d.ts.map +1 -1
  7. package/dist/cli/commands/create-model.js +29 -9
  8. package/dist/cli/commands/create-model.js.map +1 -1
  9. package/dist/cli/commands/deploy.d.ts.map +1 -1
  10. package/dist/cli/commands/deploy.js +0 -3
  11. package/dist/cli/commands/deploy.js.map +1 -1
  12. package/dist/cli/commands/dev.js +27 -3
  13. package/dist/cli/commands/dev.js.map +1 -1
  14. package/dist/cli/commands/init.js +155 -47
  15. package/dist/cli/commands/init.js.map +1 -1
  16. package/dist/cli/commands/provision.d.ts.map +1 -1
  17. package/dist/cli/commands/provision.js +32 -8
  18. package/dist/cli/commands/provision.js.map +1 -1
  19. package/dist/cli/commands/scaffold.d.ts.map +1 -1
  20. package/dist/cli/commands/scaffold.js +97 -140
  21. package/dist/cli/commands/scaffold.js.map +1 -1
  22. package/dist/cli/commands/setup.d.ts.map +1 -1
  23. package/dist/cli/commands/setup.js +87 -57
  24. package/dist/cli/commands/setup.js.map +1 -1
  25. package/dist/cli/index.js +1 -1
  26. package/dist/cli/index.js.map +1 -1
  27. package/dist/core/scaffold/functions-generator.d.ts +4 -2
  28. package/dist/core/scaffold/functions-generator.d.ts.map +1 -1
  29. package/dist/core/scaffold/functions-generator.js +147 -285
  30. package/dist/core/scaffold/functions-generator.js.map +1 -1
  31. package/dist/core/scaffold/model-parser.d.ts +24 -0
  32. package/dist/core/scaffold/model-parser.d.ts.map +1 -1
  33. package/dist/core/scaffold/model-parser.js +255 -21
  34. package/dist/core/scaffold/model-parser.js.map +1 -1
  35. package/dist/core/scaffold/nextjs-generator.d.ts +7 -2
  36. package/dist/core/scaffold/nextjs-generator.d.ts.map +1 -1
  37. package/dist/core/scaffold/nextjs-generator.js +148 -334
  38. package/dist/core/scaffold/nextjs-generator.js.map +1 -1
  39. package/dist/core/scaffold/ui-generator.d.ts +11 -11
  40. package/dist/core/scaffold/ui-generator.d.ts.map +1 -1
  41. package/dist/core/scaffold/ui-generator.js +247 -42
  42. package/dist/core/scaffold/ui-generator.js.map +1 -1
  43. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /**
3
- * Next.js UI コンポ�Eネント生戁E
4
- * CRUD 画面�E�一覧、詳細、新規作�E、編雁E��を生�E
3
+ * Next.js UI コンポーネント生成
4
+ * CRUD 画面(一覧、詳細、新規作成、編集)を生成する
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.generateListPage = generateListPage;
@@ -11,9 +11,9 @@ exports.generateNewPage = generateNewPage;
11
11
  exports.generateEditPage = generateEditPage;
12
12
  const model_parser_1 = require("./model-parser");
13
13
  /**
14
- * 一覧画面を生戁E
14
+ * 一覧画面を生成
15
15
  */
16
- function generateListPage(model) {
16
+ function generateListPage(model, sharedPackageName) {
17
17
  const modelName = model.name;
18
18
  const modelCamel = (0, model_parser_1.toCamelCase)(modelName);
19
19
  const modelKebab = (0, model_parser_1.toKebabCase)(modelName);
@@ -24,6 +24,9 @@ function generateListPage(model) {
24
24
  // 外部キーフィールドを検出
25
25
  const foreignKeyFields = displayFields.filter(f => f.isForeignKey);
26
26
  const hasForeignKeys = foreignKeyFields.length > 0;
27
+ // ネストスキーマフィールドを検出
28
+ const nestedFields = displayFields.filter(f => f.isNestedSchema);
29
+ const hasNestedSchemas = nestedFields.length > 0;
27
30
  // 外部キー用のstate定義を生成
28
31
  const foreignKeyStates = foreignKeyFields.map(f => {
29
32
  const refModel = f.referencedModel;
@@ -46,11 +49,21 @@ function generateListPage(model) {
46
49
  })
47
50
  .catch(err => console.error('Failed to fetch ${refModel}s:', err));`;
48
51
  }).join('\n');
52
+ const schemaName = model.schemaName;
53
+ // schemaNameとmodelNameが同じ場合はimportエイリアスで名前衝突を回避
54
+ const needsAlias = schemaName === modelName;
55
+ const localSchemaName = needsAlias ? `${(0, model_parser_1.toCamelCase)(modelName)}Schema` : schemaName;
56
+ const schemaImportLine = needsAlias
57
+ ? `import { ${schemaName} as ${localSchemaName} } from '${sharedPackageName}';`
58
+ : `import { ${schemaName} } from '${sharedPackageName}';`;
49
59
  return `'use client';
50
60
 
51
61
  import { useEffect, useState } from 'react';
52
62
  import Link from 'next/link';
53
- import { ${modelName} } from '@/lib/models/${modelKebab}';
63
+ import { z } from 'zod/v4';
64
+ ${schemaImportLine}
65
+
66
+ type ${modelName} = z.infer<typeof ${localSchemaName}>;
54
67
 
55
68
  export default function ${modelName}ListPage() {
56
69
  const [${modelCamel}s, set${modelName}s] = useState<${modelName}[]>([]);
@@ -110,6 +123,14 @@ ${hasForeignKeys ? foreignKeyFetches : ''}
110
123
 
111
124
  return (
112
125
  <div className="container mx-auto px-4 py-8">
126
+ <div className="mb-4">
127
+ <Link
128
+ href="/"
129
+ className="text-blue-600 dark:text-blue-400 hover:text-blue-900 dark:hover:text-blue-300 text-sm"
130
+ >
131
+ ← Home
132
+ </Link>
133
+ </div>
113
134
  <div className="flex justify-between items-center mb-6">
114
135
  <h1 className="text-3xl font-bold text-gray-900 dark:text-gray-100">${modelName}</h1>
115
136
  <Link
@@ -129,9 +150,14 @@ ${hasForeignKeys ? foreignKeyFetches : ''}
129
150
  <table className="min-w-full divide-y divide-gray-200 dark:divide-gray-700">
130
151
  <thead className="bg-gray-50 dark:bg-gray-900">
131
152
  <tr>
132
- ${displayFields.map(f => ` <th className="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider">
133
- ${f.isForeignKey && f.referencedModel ? f.referencedModel : f.name}
134
- </th>`).join('\n')}
153
+ ${displayFields.map(f => {
154
+ const headerLabel = f.isNestedSchema && f.nestedModelName
155
+ ? f.nestedModelName
156
+ : (f.isForeignKey && f.referencedModel ? f.referencedModel : f.name);
157
+ return ` <th className="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider">
158
+ ${headerLabel}
159
+ </th>`;
160
+ }).join('\n')}
135
161
  <th className="px-6 py-3 text-right text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider">
136
162
  Actions
137
163
  </th>
@@ -141,7 +167,20 @@ ${displayFields.map(f => ` <th className="px-6 py-3 text-left tex
141
167
  {${modelCamel}s.map((item) => (
142
168
  <tr key={item.id} className="hover:bg-gray-50 dark:hover:bg-gray-700">
143
169
  ${displayFields.map(f => {
144
- if (f.isForeignKey && f.referencedModel) {
170
+ if (f.isNestedSchema && f.nestedModelName) {
171
+ const displayField = f.nestedDisplayField || 'name';
172
+ if (f.isArray) {
173
+ return ` <td className="px-6 py-4 whitespace-nowrap text-sm text-gray-900 dark:text-gray-100">
174
+ {Array.isArray(item.${f.name}) ? item.${f.name}.map((ref: any) => ref?.${displayField} || '-').join(', ') : '-'}
175
+ </td>`;
176
+ }
177
+ else {
178
+ return ` <td className="px-6 py-4 whitespace-nowrap text-sm text-gray-900 dark:text-gray-100">
179
+ {item.${f.name}?.${displayField} || '-'}
180
+ </td>`;
181
+ }
182
+ }
183
+ else if (f.isForeignKey && f.referencedModel) {
145
184
  const refModel = f.referencedModel;
146
185
  const refModelCamel = (0, model_parser_1.toCamelCase)(refModel);
147
186
  return ` <td className="px-6 py-4 whitespace-nowrap text-sm text-gray-900 dark:text-gray-100">
@@ -186,9 +225,9 @@ ${displayFields.map(f => {
186
225
  `;
187
226
  }
188
227
  /**
189
- * 詳細画面を生戁E
228
+ * 詳細画面を生成
190
229
  */
191
- function generateDetailPage(model) {
230
+ function generateDetailPage(model, sharedPackageName) {
192
231
  const modelName = model.name;
193
232
  const modelCamel = (0, model_parser_1.toCamelCase)(modelName);
194
233
  const modelKebab = (0, model_parser_1.toKebabCase)(modelName);
@@ -216,12 +255,22 @@ function generateDetailPage(model) {
216
255
  })
217
256
  .catch(err => console.error('Failed to fetch ${refModel}s:', err));`;
218
257
  }).join('\n');
258
+ const schemaName = model.schemaName;
259
+ // Zod公式パターン対応: schemaNameとmodelNameが同じ場合はimportエイリアスで名前衝突を回避
260
+ const needsAlias = schemaName === modelName;
261
+ const localSchemaName = needsAlias ? `${(0, model_parser_1.toCamelCase)(modelName)}Schema` : schemaName;
262
+ const schemaImportLine = needsAlias
263
+ ? `import { ${schemaName} as ${localSchemaName} } from '${sharedPackageName}';`
264
+ : `import { ${schemaName} } from '${sharedPackageName}';`;
219
265
  return `'use client';
220
266
 
221
267
  import { useEffect, useState } from 'react';
222
268
  import { useParams, useRouter } from 'next/navigation';
223
269
  import Link from 'next/link';
224
- import { ${modelName} } from '@/lib/models/${modelKebab}';
270
+ import { z } from 'zod/v4';
271
+ ${schemaImportLine}
272
+
273
+ type ${modelName} = z.infer<typeof ${localSchemaName}>;
225
274
 
226
275
  export default function ${modelName}DetailPage() {
227
276
  const params = useParams();
@@ -292,13 +341,13 @@ ${hasForeignKeys ? foreignKeyFetches : ''}
292
341
  <div className="space-x-2">
293
342
  <Link
294
343
  href={\`/${modelKebab}/\${${modelCamel}.id}/edit\`}
295
- className="bg-green-600 hover:bg-green-700 dark:bg-green-500 dark:hover:bg-green-600 text-white px-4 py-2 rounded"
344
+ className="inline-flex items-center bg-green-600 hover:bg-green-700 dark:bg-green-500 dark:hover:bg-green-600 text-white px-4 py-2 rounded"
296
345
  >
297
346
  Edit
298
347
  </Link>
299
348
  <button
300
349
  onClick={handleDelete}
301
- className="bg-red-600 hover:bg-red-700 dark:bg-red-500 dark:hover:bg-red-600 text-white px-4 py-2 rounded"
350
+ className="inline-flex items-center bg-red-600 hover:bg-red-700 dark:bg-red-500 dark:hover:bg-red-600 text-white px-4 py-2 rounded"
302
351
  >
303
352
  Delete
304
353
  </button>
@@ -308,7 +357,23 @@ ${hasForeignKeys ? foreignKeyFetches : ''}
308
357
  <div className="bg-white dark:bg-gray-800 shadow-md rounded-lg p-6">
309
358
  <dl className="space-y-4">
310
359
  ${model.fields.map(f => {
311
- if (f.isForeignKey && f.referencedModel) {
360
+ if (f.isNestedSchema && f.nestedModelName) {
361
+ const displayField = f.nestedDisplayField || 'name';
362
+ const label = f.nestedModelName;
363
+ if (f.isArray) {
364
+ return ` <div>
365
+ <dt className="text-sm font-medium text-gray-500 dark:text-gray-400">${label}</dt>
366
+ <dd className="mt-1 text-sm text-gray-900 dark:text-gray-100">{Array.isArray(${modelCamel}.${f.name}) ? ${modelCamel}.${f.name}.map((ref: any) => ref?.${displayField} || '-').join(', ') : '-'}</dd>
367
+ </div>`;
368
+ }
369
+ else {
370
+ return ` <div>
371
+ <dt className="text-sm font-medium text-gray-500 dark:text-gray-400">${label}</dt>
372
+ <dd className="mt-1 text-sm text-gray-900 dark:text-gray-100">{${modelCamel}.${f.name}?.${displayField} || '-'}</dd>
373
+ </div>`;
374
+ }
375
+ }
376
+ else if (f.isForeignKey && f.referencedModel) {
312
377
  const refModel = f.referencedModel;
313
378
  const refModelCamel = (0, model_parser_1.toCamelCase)(refModel);
314
379
  return ` <div>
@@ -341,28 +406,59 @@ ${model.fields.map(f => {
341
406
  `;
342
407
  }
343
408
  /**
344
- * フォームコンポ�Eネントを生�E
409
+ * フォームコンポーネントを生成
345
410
  */
346
- function generateFormComponent(model) {
411
+ function generateFormComponent(model, sharedPackageName) {
347
412
  const modelName = model.name;
348
413
  const modelCamel = (0, model_parser_1.toCamelCase)(modelName);
349
414
  const schemaName = model.schemaName;
350
- // id, createdAt, updatedAt 以外�Eフィールド(タイムスタンプ�E自動管琁E��E
415
+ // Zod公式パターン対応: schemaNameとmodelNameが同じ場合はimportエイリアスで名前衝突を回避
416
+ const needsAlias = schemaName === modelName;
417
+ const localSchemaName = needsAlias ? `${(0, model_parser_1.toCamelCase)(modelName)}Schema` : schemaName;
418
+ const schemaImportLine = needsAlias
419
+ ? `import { ${schemaName} as ${localSchemaName} } from '${sharedPackageName}';`
420
+ : `import { ${schemaName} } from '${sharedPackageName}';`;
421
+ // id, createdAt, updatedAt 以外のフィールド
351
422
  const formFields = model.fields.filter(f => f.name !== 'id' &&
352
423
  f.name !== 'createdAt' &&
353
424
  f.name !== 'updatedAt');
354
425
  // 外部キーフィールドを抽出
355
426
  const foreignKeyFields = formFields.filter(f => f.isForeignKey);
356
427
  const hasForignKeys = foreignKeyFields.length > 0;
428
+ // ネストスキーマフィールドを抽出
429
+ const nestedSchemaFields = formFields.filter(f => f.isNestedSchema);
430
+ const hasNestedSchemas = nestedSchemaFields.length > 0;
431
+ // useEffect が必要かどうか
432
+ const needsUseEffect = hasForignKeys || hasNestedSchemas;
433
+ // ネストスキーマ用のstate定義を生成
434
+ const nestedSchemaStates = nestedSchemaFields.map(f => {
435
+ const refModelCamel = (0, model_parser_1.toCamelCase)(f.nestedModelName);
436
+ const refModelPascal = f.nestedModelName;
437
+ return ` const [${refModelCamel}Options, set${refModelPascal}Options] = useState<Array<{ id: string; name: string }>>([]);`;
438
+ }).join('\n');
439
+ // ネストスキーマデータのフェッチロジック
440
+ const nestedSchemaFetches = nestedSchemaFields.map(f => {
441
+ const refModelCamel = (0, model_parser_1.toCamelCase)(f.nestedModelName);
442
+ const refModelPascal = f.nestedModelName;
443
+ const displayField = f.nestedDisplayField || 'name';
444
+ return ` // ${refModelPascal} の一覧を取得
445
+ fetch('/api/${refModelCamel}')
446
+ .then(res => res.json())
447
+ .then(data => set${refModelPascal}Options(data.map((item: any) => ({ id: item.id, name: item.${displayField} || item.name || item.title || item.id }))))
448
+ .catch(err => console.error('Failed to load ${refModelPascal} options:', err));`;
449
+ }).join('\n');
357
450
  return `'use client';
358
451
 
359
- import { useState, FormEvent${hasForignKeys ? ', useEffect' : ''} } from 'react';
452
+ import { useState, FormEvent${needsUseEffect ? ', useEffect' : ''} } from 'react';
360
453
  import { useRouter } from 'next/navigation';
361
- import { ${schemaName}, ${modelName} } from '@/lib/models/${(0, model_parser_1.toKebabCase)(modelName)}';
454
+ import { z } from 'zod/v4';
455
+ ${schemaImportLine}
362
456
 
363
457
  // Input schema: SwallowKit-managed fields (id, createdAt, updatedAt) are optional
364
458
  // These fields are ignored by the backend and auto-managed
365
- const ${modelName}InputSchema = ${schemaName}.partial({ id: true, createdAt: true, updatedAt: true });
459
+ const ${modelName}InputSchema = ${localSchemaName}.partial({ id: true, createdAt: true, updatedAt: true });
460
+
461
+ type ${modelName} = z.infer<typeof ${localSchemaName}>;
366
462
 
367
463
  interface ${modelName}FormProps {
368
464
  initialData?: ${modelName};
@@ -374,9 +470,19 @@ export default function ${modelName}Form({ initialData, isEdit = false }: ${mode
374
470
  const [loading, setLoading] = useState(false);
375
471
  const [errors, setErrors] = useState<Record<string, string>>({});
376
472
  ${hasForignKeys ? foreignKeyFields.map(f => ` const [${(0, model_parser_1.toCamelCase)(f.referencedModel)}Options, set${f.referencedModel}Options] = useState<Array<{ id: string; name: string }>>([]);`).join('\n') : ''}
473
+ ${hasNestedSchemas ? nestedSchemaStates : ''}
377
474
 
378
475
  const [formData, setFormData] = useState({
379
476
  ${formFields.map(f => {
477
+ // ネストスキーマの場合は参照ID(単一: string, 配列: string[])を管理
478
+ if (f.isNestedSchema) {
479
+ if (f.isArray) {
480
+ return ` ${f.name}Ids: initialData?.${f.name} ? (Array.isArray(initialData.${f.name}) ? initialData.${f.name}.map((item: any) => item.id) : []) : [] as string[],`;
481
+ }
482
+ else {
483
+ return ` ${f.name}Id: initialData?.${f.name}?.id ?? '',`;
484
+ }
485
+ }
380
486
  let defaultValue = "''";
381
487
  if (f.isArray) {
382
488
  // Array の場合は空文字列(カンマ区切りで入力するため)
@@ -402,14 +508,15 @@ ${formFields.map(f => {
402
508
  return ` ${f.name}: initialData?.${f.name} ?? ${defaultValue},`;
403
509
  }).join('\n')}
404
510
  });
405
- ${hasForignKeys ? `
406
- // 外部キーの選択肢を取得
511
+ ${needsUseEffect ? `
512
+ // 参照データの選択肢を取得
407
513
  useEffect(() => {
408
- ${foreignKeyFields.map(f => ` // ${f.referencedModel} の一覧を取得
514
+ ${hasForignKeys ? foreignKeyFields.map(f => ` // ${f.referencedModel} の一覧を取得
409
515
  fetch('/api/${(0, model_parser_1.toKebabCase)(f.referencedModel)}')
410
516
  .then(res => res.json())
411
517
  .then(data => set${f.referencedModel}Options(data.map((item: any) => ({ id: item.id, name: item.name || item.title || item.id }))))
412
- .catch(err => console.error('Failed to load ${f.referencedModel} options:', err));`).join('\n')}
518
+ .catch(err => console.error('Failed to load ${f.referencedModel} options:', err));`).join('\n') : ''}
519
+ ${hasNestedSchemas ? nestedSchemaFetches : ''}
413
520
  }, []);
414
521
  ` : ''}
415
522
  const handleSubmit = async (e: FormEvent) => {
@@ -419,10 +526,15 @@ ${foreignKeyFields.map(f => ` // ${f.referencedModel} の一覧を取得
419
526
 
420
527
  try {
421
528
  // Array フィールドをカンマ区切りから配列に変換
422
- const submitData = { ...formData };
423
- ${formFields.filter(f => f.isArray).map(f => ` if (typeof submitData.${f.name} === 'string') {
529
+ const submitData: any = { ...formData };
530
+ ${formFields.filter(f => f.isArray && !f.isNestedSchema).map(f => ` if (typeof submitData.${f.name} === 'string') {
424
531
  submitData.${f.name} = submitData.${f.name}.split(',').map((s: string) => s.trim()).filter((s: string) => s.length > 0);
425
532
  }`).join('\n')}
533
+ ${formFields.filter(f => f.enumValues && f.enumValues.length > 0).length > 0 ? `
534
+ // Enum フィールドの空文字列を undefined に変換(.default() を有効にする)
535
+ ${formFields.filter(f => f.enumValues && f.enumValues.length > 0).map(f => ` if (submitData.${f.name} === '') {
536
+ submitData.${f.name} = undefined;
537
+ }`).join('\n')}` : ''}
426
538
  ${formFields.filter(f => f.type === 'number').length > 0 ? `
427
539
  // Number フィールドを変換(空文字列 → undefined、文字列 → 数値)
428
540
  ${formFields.filter(f => f.type === 'number').map(f => ` if (submitData.${f.name} === '' || submitData.${f.name} === null) {
@@ -430,6 +542,33 @@ ${formFields.filter(f => f.type === 'number').map(f => ` if (submitData.${f
430
542
  } else if (typeof submitData.${f.name} === 'string') {
431
543
  submitData.${f.name} = Number(submitData.${f.name});
432
544
  }`).join('\n')}` : ''}
545
+ ${hasNestedSchemas ? `
546
+ // ネストスキーマ参照をIDからオブジェクトに変換
547
+ ${nestedSchemaFields.map(f => {
548
+ const refModelCamel = (0, model_parser_1.toCamelCase)(f.nestedModelName);
549
+ const refModelPascal = f.nestedModelName;
550
+ if (f.isArray) {
551
+ return ` // ${refModelPascal} 配列参照の変換
552
+ if (submitData.${f.name}Ids) {
553
+ submitData.${f.name} = submitData.${f.name}Ids
554
+ .map((refId: string) => ${refModelCamel}Options.find(opt => opt.id === refId))
555
+ .filter(Boolean);
556
+ delete submitData.${f.name}Ids;
557
+ }`;
558
+ }
559
+ else {
560
+ return ` // ${refModelPascal} 単一参照の変換
561
+ if (submitData.${f.name}Id) {
562
+ const selected = ${refModelCamel}Options.find(opt => opt.id === submitData.${f.name}Id);
563
+ submitData.${f.name} = selected || undefined;
564
+ delete submitData.${f.name}Id;
565
+ } else {
566
+ submitData.${f.name} = undefined;
567
+ delete submitData.${f.name}Id;
568
+ }`;
569
+ }
570
+ }).join('\n')}
571
+ ` : ''}
433
572
 
434
573
  // Validate input (excluding SwallowKit-managed fields)
435
574
  ${modelName}InputSchema.parse(submitData);
@@ -450,10 +589,10 @@ ${formFields.filter(f => f.type === 'number').map(f => ` if (submitData.${f
450
589
 
451
590
  router.push('/${(0, model_parser_1.toKebabCase)(modelName)}');
452
591
  } catch (err: any) {
453
- if (err.errors) {
592
+ if (err.issues) {
454
593
  // Zod validation errors
455
594
  const fieldErrors: Record<string, string> = {};
456
- err.errors.forEach((error: any) => {
595
+ err.issues.forEach((error: any) => {
457
596
  const field = error.path[0];
458
597
  fieldErrors[field] = error.message;
459
598
  });
@@ -468,6 +607,62 @@ ${formFields.filter(f => f.type === 'number').map(f => ` if (submitData.${f
468
607
  return (
469
608
  <form onSubmit={handleSubmit} className="space-y-6">
470
609
  ${formFields.map(f => {
610
+ // ネストスキーマの場合はセレクトボックス(単一)またはマルチセレクト(配列)
611
+ if (f.isNestedSchema && f.nestedModelName) {
612
+ const optionsVar = `${(0, model_parser_1.toCamelCase)(f.nestedModelName)}Options`;
613
+ const label = f.nestedModelName;
614
+ if (f.isArray) {
615
+ // 配列参照: マルチセレクト
616
+ return ` <div>
617
+ <label htmlFor="${f.name}" className="block text-sm font-medium text-gray-700 dark:text-gray-300">
618
+ ${label}${!f.isOptional ? ' *' : ''} <span className="text-xs text-gray-500">(複数選択可)</span>
619
+ </label>
620
+ <select
621
+ id="${f.name}"
622
+ name="${f.name}"
623
+ multiple
624
+ value={formData.${f.name}Ids}
625
+ onChange={(e) => {
626
+ const selected = Array.from(e.target.selectedOptions, option => option.value);
627
+ setFormData({ ...formData, ${f.name}Ids: selected });
628
+ }}
629
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400 min-h-[120px]"
630
+ ${!f.isOptional ? 'required' : ''}
631
+ >
632
+ {${optionsVar}.map((option) => (
633
+ <option key={option.id} value={option.id}>{option.name}</option>
634
+ ))}
635
+ </select>
636
+ {errors.${f.name} && (
637
+ <p className="mt-1 text-sm text-red-600 dark:text-red-400">{errors.${f.name}}</p>
638
+ )}
639
+ </div>`;
640
+ }
641
+ else {
642
+ // 単一オブジェクト参照: セレクトボックス
643
+ return ` <div>
644
+ <label htmlFor="${f.name}" className="block text-sm font-medium text-gray-700 dark:text-gray-300">
645
+ ${label}${!f.isOptional ? ' *' : ''}
646
+ </label>
647
+ <select
648
+ id="${f.name}"
649
+ name="${f.name}"
650
+ value={formData.${f.name}Id}
651
+ onChange={(e) => setFormData({ ...formData, ${f.name}Id: e.target.value })}
652
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
653
+ ${!f.isOptional ? 'required' : ''}
654
+ >
655
+ <option value="">選択してください</option>
656
+ {${optionsVar}.map((option) => (
657
+ <option key={option.id} value={option.id}>{option.name}</option>
658
+ ))}
659
+ </select>
660
+ {errors.${f.name} && (
661
+ <p className="mt-1 text-sm text-red-600 dark:text-red-400">{errors.${f.name}}</p>
662
+ )}
663
+ </div>`;
664
+ }
665
+ }
471
666
  // 外部キーの場合は参照先モデルのドロップダウン
472
667
  if (f.isForeignKey && f.referencedModel) {
473
668
  const optionsVar = `${(0, model_parser_1.toCamelCase)(f.referencedModel)}Options`;
@@ -480,7 +675,7 @@ ${formFields.map(f => {
480
675
  name="${f.name}"
481
676
  value={formData.${f.name}}
482
677
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.value })}
483
- className="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
678
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
484
679
  ${!f.isOptional ? 'required' : ''}
485
680
  >
486
681
  <option value="">選択してください</option>
@@ -504,7 +699,7 @@ ${formFields.map(f => {
504
699
  name="${f.name}"
505
700
  value={formData.${f.name}}
506
701
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.value })}
507
- className="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
702
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
508
703
  ${!f.isOptional ? 'required' : ''}
509
704
  >
510
705
  <option value="">選択してください</option>
@@ -524,7 +719,7 @@ ${f.enumValues.map(v => ` <option value="${v}">${v}</option>`).join('\n
524
719
  name="${f.name}"
525
720
  checked={formData.${f.name}}
526
721
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.checked })}
527
- className="h-4 w-4 text-blue-600 dark:text-blue-400 focus:ring-blue-500 dark:focus:ring-blue-400 border-gray-300 dark:border-gray-600 rounded"
722
+ className="h-4 w-4 text-blue-600 dark:text-blue-400 focus:ring-blue-500 dark:focus:ring-blue-400 border border-gray-300 dark:border-gray-600 rounded"
528
723
  />
529
724
  <label htmlFor="${f.name}" className="ml-2 block text-sm text-gray-700 dark:text-gray-300">
530
725
  ${f.name}
@@ -547,7 +742,7 @@ ${f.enumValues.map(v => ` <option value="${v}">${v}</option>`).join('\n
547
742
  value={formData.${f.name}}
548
743
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.value })}
549
744
  placeholder="例: item1, item2, item3"
550
- className="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
745
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
551
746
  ${!f.isOptional ? 'required' : ''}
552
747
  />
553
748
  {errors.${f.name} && (
@@ -567,7 +762,7 @@ ${f.enumValues.map(v => ` <option value="${v}">${v}</option>`).join('\n
567
762
  name="${f.name}"
568
763
  value={formData.${f.name}}
569
764
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.value })}
570
- className="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
765
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
571
766
  ${!f.isOptional ? 'required' : ''}
572
767
  />
573
768
  {errors.${f.name} && (
@@ -587,7 +782,7 @@ ${f.enumValues.map(v => ` <option value="${v}">${v}</option>`).join('\n
587
782
  name="${f.name}"
588
783
  value={formData.${f.name}}
589
784
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.value })}
590
- className="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
785
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
591
786
  ${!f.isOptional ? 'required' : ''}
592
787
  />
593
788
  {errors.${f.name} && (
@@ -606,7 +801,7 @@ ${f.enumValues.map(v => ` <option value="${v}">${v}</option>`).join('\n
606
801
  name="${f.name}"
607
802
  value={formData.${f.name}}
608
803
  onChange={(e) => setFormData({ ...formData, ${f.name}: e.target.value })}
609
- className="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-900 dark:text-gray-100 shadow-sm focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
804
+ className="mt-1 block w-full rounded-md border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-gray-100 shadow-sm px-3 py-2 focus:border-blue-500 focus:ring-blue-500 dark:focus:border-blue-400 dark:focus:ring-blue-400"
610
805
  ${!f.isOptional ? 'required' : ''}
611
806
  />
612
807
  {errors.${f.name} && (
@@ -637,7 +832,7 @@ ${f.enumValues.map(v => ` <option value="${v}">${v}</option>`).join('\n
637
832
  `;
638
833
  }
639
834
  /**
640
- * 新規作�E画面を生戁E
835
+ * 新規作成画面を生成
641
836
  */
642
837
  function generateNewPage(model) {
643
838
  const modelName = model.name;
@@ -649,7 +844,7 @@ export default function New${modelName}Page() {
649
844
  <div className="container mx-auto px-4 py-8">
650
845
  <div className="max-w-2xl mx-auto">
651
846
  <h1 className="text-3xl font-bold mb-6">Create New ${modelName}</h1>
652
- <div className="bg-white shadow-md rounded-lg p-6">
847
+ <div className="bg-white dark:bg-gray-800 shadow-md rounded-lg p-6">
653
848
  <${modelName}Form />
654
849
  </div>
655
850
  </div>
@@ -659,18 +854,28 @@ export default function New${modelName}Page() {
659
854
  `;
660
855
  }
661
856
  /**
662
- * 編雁E��面を生戁E
857
+ * 編集画面を生成
663
858
  */
664
- function generateEditPage(model) {
859
+ function generateEditPage(model, sharedPackageName) {
665
860
  const modelName = model.name;
666
861
  const modelCamel = (0, model_parser_1.toCamelCase)(modelName);
667
862
  const modelKebab = (0, model_parser_1.toKebabCase)(modelName);
863
+ const schemaName = model.schemaName;
864
+ // Zod公式パターン対応: schemaNameとmodelNameが同じ場合はimportエイリアスで名前衝突を回避
865
+ const needsAlias = schemaName === modelName;
866
+ const localSchemaName = needsAlias ? `${(0, model_parser_1.toCamelCase)(modelName)}Schema` : schemaName;
867
+ const schemaImportLine = needsAlias
868
+ ? `import { ${schemaName} as ${localSchemaName} } from '${sharedPackageName}';`
869
+ : `import { ${schemaName} } from '${sharedPackageName}';`;
668
870
  return `'use client';
669
871
 
670
872
  import { useEffect, useState } from 'react';
671
873
  import { useParams } from 'next/navigation';
672
874
  import ${modelName}Form from '../../_components/${modelName}Form';
673
- import { ${modelName} } from '@/lib/models/${modelKebab}';
875
+ import { z } from 'zod/v4';
876
+ ${schemaImportLine}
877
+
878
+ type ${modelName} = z.infer<typeof ${localSchemaName}>;
674
879
 
675
880
  export default function Edit${modelName}Page() {
676
881
  const params = useParams();
@@ -710,7 +915,7 @@ export default function Edit${modelName}Page() {
710
915
  <div className="container mx-auto px-4 py-8">
711
916
  <div className="max-w-2xl mx-auto">
712
917
  <h1 className="text-3xl font-bold mb-6">Edit ${modelName}</h1>
713
- <div className="bg-white shadow-md rounded-lg p-6">
918
+ <div className="bg-white dark:bg-gray-800 shadow-md rounded-lg p-6">
714
919
  <${modelName}Form initialData={${modelCamel}} isEdit={true} />
715
920
  </div>
716
921
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"ui-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/ui-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui-generator.js","sourceRoot":"","sources":["../../../src/core/scaffold/ui-generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "swallowkit",
3
- "version": "0.3.0-beta.2",
3
+ "version": "0.4.0-beta.2",
4
4
  "description": "Type-safe schema-driven development toolkit for Next.js applications on Azure",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",