@omnifyjp/omnify 5.6.2 → 5.7.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.
@@ -403,6 +403,12 @@
403
403
  "default": "legacy",
404
404
  "description": "Directory layout for generated base files. 'modular' uses app/Modules/{Schema}/."
405
405
  },
406
+ "layout": {
407
+ "type": "string",
408
+ "enum": ["legacy", "canonical"],
409
+ "default": "legacy",
410
+ "description": "High-level layout convention (issue #98, v5.7+). 'legacy' (default) keeps editable stubs in the same dir as the base. 'canonical' splits bases under `app/Omnify/<Layer>/` and editable stubs at canonical Laravel paths (`app/Models/`, `app/Http/Requests/`, etc.) — a one-line shortcut for the canonical opt-in. Per-layer userEditablePath/Namespace overrides win. v6.0 plan: flip default to 'canonical'."
411
+ },
406
412
  "model": {
407
413
  "$ref": "#/definitions/CodegenLaravelPath",
408
414
  "description": "Model output configuration (default: app/Models/Omnify)"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omnifyjp/omnify",
3
- "version": "5.6.2",
3
+ "version": "5.7.0",
4
4
  "description": "Schema-driven code generation for Laravel, TypeScript, and SQL",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -36,10 +36,10 @@
36
36
  "zod": "^3.24.0"
37
37
  },
38
38
  "optionalDependencies": {
39
- "@omnifyjp/omnify-darwin-arm64": "5.6.2",
40
- "@omnifyjp/omnify-darwin-x64": "5.6.2",
41
- "@omnifyjp/omnify-linux-x64": "5.6.2",
42
- "@omnifyjp/omnify-linux-arm64": "5.6.2",
43
- "@omnifyjp/omnify-win32-x64": "5.6.2"
39
+ "@omnifyjp/omnify-darwin-arm64": "5.7.0",
40
+ "@omnifyjp/omnify-darwin-x64": "5.7.0",
41
+ "@omnifyjp/omnify-linux-x64": "5.7.0",
42
+ "@omnifyjp/omnify-linux-arm64": "5.7.0",
43
+ "@omnifyjp/omnify-win32-x64": "5.7.0"
44
44
  }
45
45
  }
package/types/config.d.ts CHANGED
@@ -88,6 +88,18 @@ export interface CodegenLaravelConfig {
88
88
  rootPath?: string;
89
89
  /** Directory layout: "legacy" (default) or "modular". */
90
90
  structure?: "legacy" | "modular";
91
+ /**
92
+ * High-level layout convention (issue #98, v5.7+).
93
+ * - "legacy" (default): editable stubs share the dir with the base
94
+ * (matches v5.x behavior — no migration needed).
95
+ * - "canonical": splits bases under `app/Omnify/<Layer>/` and
96
+ * editable stubs at canonical Laravel paths
97
+ * (`app/Models/`, `app/Http/Requests/`, ...). One-line shortcut
98
+ * for the canonical opt-in instead of the verbose 6-layer block.
99
+ * Per-layer `userEditablePath` / `userEditableNamespace`
100
+ * overrides win. v6.0 plan: flip default to "canonical".
101
+ */
102
+ layout?: "legacy" | "canonical";
91
103
  /** Model output configuration. */
92
104
  model?: CodegenLaravelPathConfig;
93
105
  /** Request output configuration. */