@famgia/omnify-typescript 0.0.102 → 0.0.104

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@famgia/omnify-typescript",
3
- "version": "0.0.102",
3
+ "version": "0.0.104",
4
4
  "description": "TypeScript type definitions generator for Omnify schemas",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -48,7 +48,7 @@
48
48
  "directory": "packages/typescript-generator"
49
49
  },
50
50
  "dependencies": {
51
- "@famgia/omnify-types": "0.0.112"
51
+ "@famgia/omnify-types": "0.0.114"
52
52
  },
53
53
  "peerDependencies": {
54
54
  "zod": "^3.0.0"
@@ -308,6 +308,36 @@ php artisan migrate
308
308
  | `hasOne` | 1:1 | `{this_model}_id` on related table |
309
309
  | `belongsToMany` | N:N | Pivot table |
310
310
 
311
+ ### Schema Kinds
312
+
313
+ | Kind | Description |
314
+ |------|-------------|
315
+ | `object` | Database table (default) |
316
+ | `enum` | Enumeration type |
317
+ | `partial` | Extends existing schema |
318
+
319
+ ### Partial Schema (Extend Existing)
320
+
321
+ ```yaml
322
+ # Extend User schema with billing properties
323
+ kind: partial
324
+ target: User # Schema to extend
325
+
326
+ properties:
327
+ stripe_id:
328
+ type: String
329
+ nullable: true
330
+ subscription_status:
331
+ type: String
332
+ nullable: true
333
+ ```
334
+
335
+ **Rules:**
336
+ - `kind: partial` required
337
+ - `target: SchemaName` required
338
+ - Properties merged into target (target takes priority)
339
+ - No `options` allowed (table-level settings belong to target)
340
+
311
341
  ---
312
342
 
313
343
  ## ⚠️ Common Mistakes