@wildo-ai/zod-decorators 1.0.0 → 1.1.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 (98) hide show
  1. package/LICENSE +34 -0
  2. package/dist/esm/.builder.pid +9 -0
  3. package/dist/esm/__mocks__/mime.d.ts.map +1 -1
  4. package/dist/esm/__mocks__/mime.js +1 -1
  5. package/dist/esm/__mocks__/mime.js.map +1 -1
  6. package/dist/esm/commons.d.ts.map +1 -1
  7. package/dist/esm/commons.js +1 -1
  8. package/dist/esm/commons.js.map +1 -1
  9. package/dist/esm/companion-exports.d.ts +8 -0
  10. package/dist/esm/companion-exports.d.ts.map +1 -0
  11. package/dist/esm/companion-exports.js +8 -0
  12. package/dist/esm/companion-exports.js.map +1 -0
  13. package/dist/esm/currencies.shared.schemas.d.ts.map +1 -1
  14. package/dist/esm/currencies.shared.schemas.js +1 -1
  15. package/dist/esm/currencies.shared.schemas.js.map +1 -1
  16. package/dist/esm/files/agent-file-formats.d.ts.map +1 -1
  17. package/dist/esm/files/agent-file-formats.js +1 -1
  18. package/dist/esm/files/agent-file-formats.js.map +1 -1
  19. package/dist/esm/files/extension-nature-map.d.ts +1 -1
  20. package/dist/esm/files/extension-nature-map.d.ts.map +1 -1
  21. package/dist/esm/files/extension-nature-map.js +1 -1
  22. package/dist/esm/files/extension-nature-map.js.map +1 -1
  23. package/dist/esm/files/file-extensions.enum.d.ts.map +1 -1
  24. package/dist/esm/files/file-extensions.enum.js +1 -1
  25. package/dist/esm/files/file-extensions.enum.js.map +1 -1
  26. package/dist/esm/files/mime-registry.d.ts +1 -1
  27. package/dist/esm/files/mime-registry.d.ts.map +1 -1
  28. package/dist/esm/files/mime-registry.js +1 -1
  29. package/dist/esm/files/mime-registry.js.map +1 -1
  30. package/dist/esm/files/unified-registry.d.ts +1 -1
  31. package/dist/esm/files/unified-registry.d.ts.map +1 -1
  32. package/dist/esm/files/unified-registry.js +1 -1
  33. package/dist/esm/files/unified-registry.js.map +1 -1
  34. package/dist/esm/index.d.ts +20 -19
  35. package/dist/esm/index.d.ts.map +1 -1
  36. package/dist/esm/index.js +10 -1
  37. package/dist/esm/index.js.map +1 -1
  38. package/dist/esm/install-bigint-json-encoding.d.ts +80 -0
  39. package/dist/esm/install-bigint-json-encoding.d.ts.map +1 -0
  40. package/dist/esm/install-bigint-json-encoding.js +85 -0
  41. package/dist/esm/install-bigint-json-encoding.js.map +1 -0
  42. package/dist/esm/testing/decorated-test-schemas.d.ts +8 -8
  43. package/dist/esm/testing/decorated-test-schemas.d.ts.map +1 -1
  44. package/dist/esm/testing/decorated-test-schemas.js +1 -1
  45. package/dist/esm/testing/decorated-test-schemas.js.map +1 -1
  46. package/dist/esm/testing.d.ts +1 -1
  47. package/dist/esm/testing.d.ts.map +1 -1
  48. package/dist/esm/testing.js +1 -1
  49. package/dist/esm/testing.js.map +1 -1
  50. package/dist/esm/zod-bigdecimal.d.ts +5 -1
  51. package/dist/esm/zod-bigdecimal.d.ts.map +1 -1
  52. package/dist/esm/zod-bigdecimal.js +4 -1
  53. package/dist/esm/zod-bigdecimal.js.map +1 -1
  54. package/dist/esm/zod-code.d.ts +4 -1
  55. package/dist/esm/zod-code.d.ts.map +1 -1
  56. package/dist/esm/zod-code.js +4 -1
  57. package/dist/esm/zod-code.js.map +1 -1
  58. package/dist/esm/zod-color.d.ts.map +1 -1
  59. package/dist/esm/zod-color.js +1 -1
  60. package/dist/esm/zod-color.js.map +1 -1
  61. package/dist/esm/zod-decorators.types.d.ts +1410 -56
  62. package/dist/esm/zod-decorators.types.d.ts.map +1 -1
  63. package/dist/esm/zod-decorators.types.js +662 -16
  64. package/dist/esm/zod-decorators.types.js.map +1 -1
  65. package/dist/esm/zod-duration.d.ts +8 -4
  66. package/dist/esm/zod-duration.d.ts.map +1 -1
  67. package/dist/esm/zod-duration.js +2 -1
  68. package/dist/esm/zod-duration.js.map +1 -1
  69. package/dist/esm/zod-file.d.ts +75 -14
  70. package/dist/esm/zod-file.d.ts.map +1 -1
  71. package/dist/esm/zod-file.js +151 -8
  72. package/dist/esm/zod-file.js.map +1 -1
  73. package/dist/esm/zod-money.d.ts +18 -3
  74. package/dist/esm/zod-money.d.ts.map +1 -1
  75. package/dist/esm/zod-money.js +4 -1
  76. package/dist/esm/zod-money.js.map +1 -1
  77. package/dist/esm/zod-phone.d.ts +37 -1
  78. package/dist/esm/zod-phone.d.ts.map +1 -1
  79. package/dist/esm/zod-phone.js +66 -5
  80. package/dist/esm/zod-phone.js.map +1 -1
  81. package/dist/esm/zod-range.d.ts +4 -1
  82. package/dist/esm/zod-range.d.ts.map +1 -1
  83. package/dist/esm/zod-range.js +4 -1
  84. package/dist/esm/zod-range.js.map +1 -1
  85. package/dist/esm/zod-utils.shared.d.ts +411 -6
  86. package/dist/esm/zod-utils.shared.d.ts.map +1 -1
  87. package/dist/esm/zod-utils.shared.js +624 -9
  88. package/dist/esm/zod-utils.shared.js.map +1 -1
  89. package/dist/esm/zod-versioned.d.ts +1 -1
  90. package/dist/esm/zod-versioned.d.ts.map +1 -1
  91. package/dist/esm/zod-versioned.js +1 -1
  92. package/dist/esm/zod-versioned.js.map +1 -1
  93. package/dist/esm/zod.module-override.d.ts +458 -68
  94. package/dist/esm/zod.module-override.d.ts.map +1 -1
  95. package/dist/esm/zod.module-override.js +1214 -195
  96. package/dist/esm/zod.module-override.js.map +1 -1
  97. package/dist/tsconfig.build.tsbuildinfo +1 -1
  98. package/package.json +30 -21
@@ -1,4 +1,4 @@
1
- import { DecoratorInput, ZodDecorator, ZodDecorator_ParamsType } from "./zod-decorators.types.js";
1
+ import { DecoratorInput, ZodDecorator, ZodDecorator_ParamsType } from "./zod-decorators.types";
2
2
  import { z } from "zod";
3
3
  /**
4
4
  * z_foreignKeyVersioned() - Creates a foreign key reference to versioned data.
@@ -1 +1 @@
1
- {"version":3,"file":"zod-versioned.d.ts","sourceRoot":"","sources":["../../src/zod-versioned.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,cAAc,EAKd,YAAY,EACZ,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,gCAAgC;IAC/C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,kCAAkC,CAyBpC;AAED;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,SAAS,GAAG;IAC7D,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,kCAAkC,CAAC;IACnE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,kCAAkC,CAAC;IACvH,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,kCAAkC,CAAC;IACnI,aAAa,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,kCAAkC,CAAC;CACjF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,CAAC,EAAE,gCAAgC,GACzC,kCAAkC,CAEpC;AAMD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,CAChE,CAAC,GAAG;IACF,cAAc,EAAE,CAAC,CAAC,SAAS,CAAC;IAC5B,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C,CACF,CAAC;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EAC/C,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,OAAO,GAAE,sBAA2B,GACnC,eAAe,CAAC,CAAC,CAAC,CA6CpB;AASD;;;;;;;GAOG;AACH;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG;IACnC,iBAAiB,CAAC,EAAE,IAAI,CAAC;IACzB,oBAAoB,CAAC,EAAE,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrE,WAAW,EAAE,CAAC,GAAG;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,CAAC,EAAE,CAAA;CAAE,GAC/D;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;CACtC,CA6BA;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,cAAc,EAAE,CAAC,EAAE,EACnB,aAAa,EAAE,MAAM,GACpB,CAAC,GAAG,SAAS,CAGf;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,cAAc,EAAE,CAAC,EAAE,GAClB,CAAC,GAAG,SAAS,CAGf"}
1
+ {"version":3,"file":"zod-versioned.d.ts","sourceRoot":"","sources":["../../../src/zod-versioned.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,cAAc,EAKd,YAAY,EACZ,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,gCAAgC;IAC/C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,kCAAkC,CAyBpC;AAED;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,SAAS,GAAG;IAC7D,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,kCAAkC,CAAC;IACnE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,kCAAkC,CAAC;IACvH,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,kCAAkC,CAAC;IACnI,aAAa,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,kCAAkC,CAAC;CACjF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,CAAC,EAAE,gCAAgC,GACzC,kCAAkC,CAEpC;AAMD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,CAChE,CAAC,GAAG;IACF,cAAc,EAAE,CAAC,CAAC,SAAS,CAAC;IAC5B,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C,CACF,CAAC;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EAC/C,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,OAAO,GAAE,sBAA2B,GACnC,eAAe,CAAC,CAAC,CAAC,CA6CpB;AASD;;;;;;;GAOG;AACH;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG;IACnC,iBAAiB,CAAC,EAAE,IAAI,CAAC;IACzB,oBAAoB,CAAC,EAAE,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrE,WAAW,EAAE,CAAC,GAAG;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,CAAC,EAAE,CAAA;CAAE,GAC/D;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;CACtC,CA6BA;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,cAAc,EAAE,CAAC,EAAE,EACnB,aAAa,EAAE,MAAM,GACpB,CAAC,GAAG,SAAS,CAGf;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,cAAc,EAAE,CAAC,EAAE,GAClB,CAAC,GAAG,SAAS,CAGf"}
@@ -169,4 +169,4 @@ export function getLatestHistoricalVersion(versionHistory) {
169
169
  return undefined;
170
170
  return versionHistory[versionHistory.length - 1];
171
171
  }
172
- //# sourceMappingURL=zod-versioned.js.map
172
+ //# sourceMappingURL=zod-versioned.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zod-versioned.js","sourceRoot":"","sources":["../../src/zod-versioned.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zod-versioned.js","sourceRoot":"","sources":["../../../src/zod-versioned.ts"],"names":[],"mappings":"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","sourcesContent":["\n// ============================================================================\n// VERSIONED SCHEMA HELPERS\n// ============================================================================\n\nimport { \n DecoratorInput, \n SCHEMA_METADATA, \n CustomFieldMetadata, \n VersionedSchemaMetadata, \n VersionedForeignKeySchemaMetadata,\n ZodDecorator, \n ZodDecorator_ParamsType \n} from \"./zod-decorators.types\";\nimport { z } from \"zod\";\nimport { addChainableMethods, addDecorators } from \"./zod.module-override\";\n\n// ============================================================================\n// VERSIONED FOREIGN KEY\n// ============================================================================\n\n/**\n * z_foreignKeyVersioned() - Creates a foreign key reference to versioned data.\n * \n * This creates a string schema representing a reference to a versioned resource.\n * The reference is automatically managed by the resource system and will track\n * which version of the referenced resource is being pointed to.\n * \n * @example\n * ```typescript\n * import { z_foreignKeyVersioned } from '@wildo-ai/zod-decorators';\n * \n * const schema = z.object({\n * documentRef: z_foreignKeyVersioned(),\n * contractRef: z_foreignKeyVersioned({ targetResource: 'Contract' }),\n * });\n * ```\n */\n\nexport interface VersionedForeignKeySchemaOptions {\n /** \n * Optional: The name of the target resource this foreign key references.\n * If not provided, the resource system will infer it from context.\n */\n targetResource?: string;\n}\n\n/**\n * Creates a versioned foreign key schema with metadata for detection.\n * \n * @param options - Configuration options for versioned foreign key\n * @returns A Zod string schema with metadata for versioned foreign key detection\n */\nexport function createVersionedForeignKeySchema(\n options: VersionedForeignKeySchemaOptions = {}\n): DecoratedVersionedForeignKeySchema {\n const { targetResource } = options;\n \n // Create the versioned foreign key schema as a string (object ID reference)\n const versionedFkSchema = z.string();\n \n // Store versioned foreign key metadata in SCHEMA_METADATA\n const versionedFkMetadata: VersionedForeignKeySchemaMetadata = {\n isVersionedForeignKey: true,\n ...(targetResource !== undefined && { targetResource }),\n };\n \n // Initialize or extend SCHEMA_METADATA with versioned foreign key config\n const existingMetadata: CustomFieldMetadata = (versionedFkSchema as any)[SCHEMA_METADATA] || {};\n (versionedFkSchema as any)[SCHEMA_METADATA] = {\n ...existingMetadata,\n versionedForeignKeyConfig: versionedFkMetadata,\n // Also add the IS_FOREIGN_KEY decorator\n [ZodDecorator.IS_FOREIGN_KEY]: true,\n };\n \n // Add chainable decorator methods\n addChainableMethods(versionedFkSchema);\n \n return versionedFkSchema as unknown as DecoratedVersionedForeignKeySchema;\n}\n\n/**\n * Return type for versioned foreign key schemas - includes decorator methods.\n */\nexport type DecoratedVersionedForeignKeySchema = z.ZodString & {\n [ZodDecorator.IS_DB_INDEXED](): DecoratedVersionedForeignKeySchema;\n [ZodDecorator.IS_HIDDEN](params?: ZodDecorator_ParamsType[ZodDecorator.IS_HIDDEN]): DecoratedVersionedForeignKeySchema;\n [ZodDecorator.IS_NOT_EDITABLE](params?: ZodDecorator_ParamsType[ZodDecorator.IS_NOT_EDITABLE]): DecoratedVersionedForeignKeySchema;\n addDecorators(decorators: DecoratorInput[]): DecoratedVersionedForeignKeySchema;\n};\n\n/**\n * Creates a versioned foreign key schema for referencing versioned resources.\n * \n * The versioned foreign key will automatically track which version of the\n * referenced resource is being pointed to. The reference management is\n * handled by the resource system.\n * \n * @example\n * ```typescript\n * import { z_foreignKeyVersioned } from '@wildo-ai/zod-decorators';\n * \n * // Simple usage\n * z_foreignKeyVersioned()\n * \n * // With target resource specified\n * z_foreignKeyVersioned({ targetResource: 'Document' })\n * \n * // With decorators\n * z_foreignKeyVersioned().foreignKeyUI({ display: { tooltip: true } }) // tooltip text comes from i18n label system\n * ```\n */\nexport function z_foreignKeyVersioned(\n options?: VersionedForeignKeySchemaOptions\n): DecoratedVersionedForeignKeySchema {\n return createVersionedForeignKeySchema(options);\n}\n\n// ============================================================================\n// VERSIONED OBJECT DECORATOR\n// ============================================================================\n\n/**\n * Options for the versioned decorator.\n */\nexport interface VersionedSchemaOptions {\n /** Initial version number for new records (default: 1) */\n initialVersion?: number;\n}\n\n/**\n * Inferred type for a versioned schema - adds currentVersion and versionHistory.\n */\nexport type VersionedSchema<T extends z.ZodRawShape> = z.ZodObject<\n T & {\n currentVersion: z.ZodNumber;\n versionHistory: z.ZodArray<z.ZodObject<T>>;\n }\n>;\n\n\n/**\n * versioned() - Adds versioning behavior to a z.object schema.\n * \n * This decorator extends an object schema with:\n * - `currentVersion`: A hidden, non-editable integer field tracking the version number\n * - `versionHistory`: A hidden, non-editable array containing all previous versions\n * \n * The versioning system automatically:\n * - Increments `currentVersion` on each update\n * - Stores the previous state in `versionHistory` before updates\n * \n * @example\n * ```typescript\n * import { versioned } from '@wildo-ai/zod-decorators';\n * \n * const DocumentSchema = versioned(\n * z.object({\n * title: z.string(),\n * content: z.string(),\n * status: z.enum(['draft', 'published', 'archived']),\n * })\n * );\n * \n * // Inferred type:\n * // {\n * // title: string;\n * // content: string;\n * // status: 'draft' | 'published' | 'archived';\n * // currentVersion: number; // hidden, not editable\n * // versionHistory: Array<{ title: string; content: string; status: ... }>; // hidden, not editable\n * // }\n * ```\n */\nexport function versioned<T extends z.ZodRawShape>(\n schema: z.ZodObject<T>,\n options: VersionedSchemaOptions = {}\n): VersionedSchema<T> {\n const { initialVersion = 1 } = options;\n \n // Create the currentVersion field with IS_HIDDEN and IS_NOT_EDITABLE decorators\n const currentVersionSchema = addDecorators(\n z.number().int().min(1).default(initialVersion),\n [\n { ref: ZodDecorator.IS_HIDDEN, params: undefined },\n { ref: ZodDecorator.IS_NOT_EDITABLE, params: undefined },\n ]\n );\n \n // Create the versionHistory field - an array of the original schema\n // with IS_HIDDEN and IS_NOT_EDITABLE decorators\n const versionHistorySchema = addDecorators(\n z.array(schema).default([]),\n [\n { ref: ZodDecorator.IS_HIDDEN, params: undefined },\n { ref: ZodDecorator.IS_NOT_EDITABLE, params: undefined },\n ]\n );\n \n // Extend the original schema with versioning fields\n const versionedSchema = schema.extend({\n currentVersion: currentVersionSchema,\n versionHistory: versionHistorySchema,\n });\n \n // Store versioned metadata in SCHEMA_METADATA\n const versionedMetadata: VersionedSchemaMetadata = {\n isVersioned: true,\n initialVersion,\n };\n \n // Initialize or extend SCHEMA_METADATA with versioned config\n const existingMetadata: CustomFieldMetadata = (versionedSchema as any)[SCHEMA_METADATA] || {};\n (versionedSchema as any)[SCHEMA_METADATA] = {\n ...existingMetadata,\n versionedConfig: versionedMetadata,\n };\n \n // Add chainable decorator methods\n addChainableMethods(versionedSchema);\n \n return versionedSchema as unknown as VersionedSchema<T>;\n}\n\n// ============================================================================\n// VERSIONED UTILITY FUNCTIONS\n// ============================================================================\n// Note: Detection helpers (isVersionedForeignKeySchema, isVersionedObjectSchema, \n// getVersionedForeignKeyMetadata, getVersionedObjectMetadata) are in zod-utils.shared.ts\n// These handle schema unwrapping for optional/nullable wrappers.\n\n/**\n * Create a new version from existing data.\n * This is a utility for creating version snapshots.\n * \n * @param currentData - The current data object\n * @param currentVersion - The current version number\n * @returns Object with updated version and history\n */\n/**\n * Version snapshot with timestamp metadata.\n */\nexport type VersionSnapshot<T> = T & { \n _versionCreatedAt?: Date; \n _versionSupersededAt?: Date; \n};\n\nexport function createVersionSnapshot<T extends Record<string, unknown>>(\n currentData: T & { currentVersion: number; versionHistory: T[] },\n): { \n newVersion: number; \n updatedHistory: VersionSnapshot<T>[];\n} {\n const { currentVersion, versionHistory, ...dataWithoutVersioning } = currentData;\n \n // Create a snapshot of the current state\n // Use unknown intermediate cast for type safety\n const snapshot = {\n ...dataWithoutVersioning,\n _versionCreatedAt: new Date(),\n } as unknown as VersionSnapshot<T>;\n \n // Mark the last entry in history as superseded if exists\n const updatedHistory = [...versionHistory] as unknown as VersionSnapshot<T>[];\n if (updatedHistory.length > 0) {\n const lastEntry = updatedHistory[updatedHistory.length - 1];\n if (lastEntry && !lastEntry._versionSupersededAt) {\n updatedHistory[updatedHistory.length - 1] = {\n ...lastEntry,\n _versionSupersededAt: new Date(),\n };\n }\n }\n \n // Add current state as new history entry\n updatedHistory.push(snapshot);\n \n return {\n newVersion: currentVersion + 1,\n updatedHistory,\n };\n}\n\n/**\n * Get a specific version from history.\n * \n * @param versionHistory - The version history array\n * @param versionNumber - The version number to retrieve (1-based)\n * @returns The version data or undefined if not found\n */\nexport function getVersionFromHistory<T>(\n versionHistory: T[],\n versionNumber: number\n): T | undefined {\n // Version numbers are 1-based, array is 0-based\n return versionHistory[versionNumber - 1];\n}\n\n/**\n * Get the latest version from history (not including current).\n * \n * @param versionHistory - The version history array\n * @returns The most recent historical version or undefined\n */\nexport function getLatestHistoricalVersion<T>(\n versionHistory: T[]\n): T | undefined {\n if (versionHistory.length === 0) return undefined;\n return versionHistory[versionHistory.length - 1];\n}\n\n"]}