@palantir/pack.document-schema.type-gen 0.16.0 → 0.18.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 (71) hide show
  1. package/build/esm/commands/ir/__tests__/resolveIrInput.test.js +11 -0
  2. package/build/esm/commands/ir/__tests__/resolveIrInput.test.js.map +1 -1
  3. package/build/esm/commands/ir/irDeployHandler.js.map +1 -1
  4. package/build/esm/commands/ir/irGenAssetHandler.js +19 -14
  5. package/build/esm/commands/ir/irGenAssetHandler.js.map +1 -1
  6. package/build/esm/commands/ir/resolveIrInput.js +2 -1
  7. package/build/esm/commands/ir/resolveIrInput.js.map +1 -1
  8. package/build/esm/commands/schema/__tests__/readPackConfig.test.js +25 -2
  9. package/build/esm/commands/schema/__tests__/readPackConfig.test.js.map +1 -1
  10. package/build/esm/commands/schema/schemaIrHandler.js +14 -2
  11. package/build/esm/commands/schema/schemaIrHandler.js.map +1 -1
  12. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/custom-discriminant.js +1 -1
  13. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/custom-discriminant.js.map +1 -1
  14. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/external-refs.js +1 -1
  15. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/external-refs.js.map +1 -1
  16. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/simple-record.js +1 -1
  17. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/simple-record.js.map +1 -1
  18. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/union-types.js +1 -1
  19. package/build/esm/utils/ir/__tests__/__snapshots__/generateModelsFromIr/union-types.js.map +1 -1
  20. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/array-and-map-types.js +1 -1
  21. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/array-and-map-types.js.map +1 -1
  22. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/boolean-fields.js +1 -1
  23. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/boolean-fields.js.map +1 -1
  24. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/custom-discriminant.js +1 -1
  25. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/custom-discriminant.js.map +1 -1
  26. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/datetime-fields.js +1 -1
  27. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/datetime-fields.js.map +1 -1
  28. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/simple-records.js +1 -1
  29. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/simple-records.js.map +1 -1
  30. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/union-before-records.js +1 -1
  31. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/union-before-records.js.map +1 -1
  32. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/union-types.js +1 -1
  33. package/build/esm/utils/ir/__tests__/__snapshots__/generateZodSchemasFromIr/union-types.js.map +1 -1
  34. package/build/esm/utils/schema/__tests__/__snapshots__/generateDocumentTypeFromSchema/with-name-and-description.js +1 -1
  35. package/build/esm/utils/schema/__tests__/__snapshots__/generateDocumentTypeFromSchema/with-name-and-description.js.map +1 -1
  36. package/build/esm/utils/schema/__tests__/__snapshots__/generateVersionsFromSchema/single-version.js.map +1 -1
  37. package/build/esm/utils/schema/__tests__/__snapshots__/generateVersionsFromSchema/three-version-chain.js.map +1 -1
  38. package/build/esm/utils/schema/__tests__/__snapshots__/generateVersionsFromSchema/two-version.js.map +1 -1
  39. package/build/esm/utils/schema/__tests__/generateIndexFromSchema.test.js +38 -0
  40. package/build/esm/utils/schema/__tests__/generateIndexFromSchema.test.js.map +1 -0
  41. package/build/esm/utils/schema/generateIndexFromSchema.js +12 -2
  42. package/build/esm/utils/schema/generateIndexFromSchema.js.map +1 -1
  43. package/build/esm/utils/schema/resolveSchemaChain.js.map +1 -1
  44. package/build/esm/utils/steps/__tests__/__snapshots__/types/arrayFields.js.map +1 -1
  45. package/build/esm/utils/steps/__tests__/__snapshots__/types/customDiscriminant.js +1 -1
  46. package/build/esm/utils/steps/__tests__/__snapshots__/types/customDiscriminant.js.map +1 -1
  47. package/build/esm/utils/steps/__tests__/__snapshots__/types/generateTypeScriptInterfaces.js +1 -1
  48. package/build/esm/utils/steps/__tests__/__snapshots__/types/generateTypeScriptInterfaces.js.map +1 -1
  49. package/build/esm/utils/steps/__tests__/__snapshots__/types/refTypes.js.map +1 -1
  50. package/build/esm/utils/steps/__tests__/__snapshots__/types/simpleRecord.js.map +1 -1
  51. package/build/esm/utils/steps/__tests__/__snapshots__/types/simpleSteps.js +1 -1
  52. package/build/esm/utils/steps/__tests__/__snapshots__/types/simpleSteps.js.map +1 -1
  53. package/build/types/commands/ir/irDeployHandler.d.ts +1 -1
  54. package/build/types/commands/ir/irDeployHandler.d.ts.map +1 -1
  55. package/build/types/commands/ir/irGenAssetHandler.d.ts +1 -1
  56. package/build/types/commands/ir/irGenAssetHandler.d.ts.map +1 -1
  57. package/build/types/commands/ir/resolveIrInput.d.ts +1 -0
  58. package/build/types/commands/ir/resolveIrInput.d.ts.map +1 -1
  59. package/build/types/commands/schema/schemaIrHandler.d.ts +4 -0
  60. package/build/types/commands/schema/schemaIrHandler.d.ts.map +1 -1
  61. package/build/types/utils/schema/__tests__/generateIndexFromSchema.test.d.ts +2 -0
  62. package/build/types/utils/schema/__tests__/generateIndexFromSchema.test.d.ts.map +1 -0
  63. package/build/types/utils/schema/generateIndexFromSchema.d.ts +3 -0
  64. package/build/types/utils/schema/generateIndexFromSchema.d.ts.map +1 -1
  65. package/build/types/utils/schema/resolveSchemaChain.d.ts +1 -0
  66. package/build/types/utils/schema/resolveSchemaChain.d.ts.map +1 -1
  67. package/package.json +3 -3
  68. package/build/esm/commands/types.js +0 -2
  69. package/build/esm/commands/types.js.map +0 -1
  70. package/build/types/commands/types.d.ts +0 -12
  71. package/build/types/commands/types.d.ts.map +0 -1
@@ -52,6 +52,17 @@ describe("resolveIrInput", () => {
52
52
  minSupportedVersion: 1
53
53
  });
54
54
  });
55
+ it("carries owningApplicationId through from a chain payload", () => {
56
+ const resolved = resolveIrInput({
57
+ latestVersion: 1,
58
+ owningApplicationId: "app-123",
59
+ chain: [{
60
+ version: 1,
61
+ ir: ir(1)
62
+ }]
63
+ }, "chain.json");
64
+ expect(resolved.owningApplicationId).toBe("app-123");
65
+ });
55
66
  it("defaults chain minSupportedVersion to latestVersion", () => {
56
67
  const resolved = resolveIrInput({
57
68
  latestVersion: 3,
@@ -1 +1 @@
1
- {"version":3,"file":"resolveIrInput.test.js","names":["describe","expect","it","resolveIrInput","ir","version","name","description","primaryModelKeys","models","resolved","toEqual","latestVersion","minSupportedVersion","chain","toBe","toThrow"],"sources":["resolveIrInput.test.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { describe, expect, it } from \"vitest\";\nimport type { IRealTimeDocumentSchema } from \"../../../lib/pack-docschema-api/pack-docschema-ir/index.js\";\nimport { resolveIrInput } from \"../resolveIrInput.js\";\n\nfunction ir(version: number): IRealTimeDocumentSchema {\n return {\n name: `Test v${version}`,\n description: \"Test schema\",\n version,\n primaryModelKeys: [],\n models: {},\n };\n}\n\ndescribe(\"resolveIrInput\", () => {\n it(\"passes through legacy single-version IR\", () => {\n const resolved = resolveIrInput(ir(2), \"legacy.json\");\n\n expect(resolved).toEqual({\n ir: ir(2),\n latestVersion: 2,\n minSupportedVersion: 2,\n });\n });\n\n it(\"selects the latest entry from a versioned IR chain\", () => {\n const resolved = resolveIrInput({\n latestVersion: 3,\n minSupportedVersion: 1,\n chain: [\n { version: 1, ir: ir(1) },\n { version: 3, ir: ir(3) },\n ],\n }, \"chain.json\");\n\n expect(resolved).toEqual({\n ir: ir(3),\n latestVersion: 3,\n minSupportedVersion: 1,\n });\n });\n\n it(\"defaults chain minSupportedVersion to latestVersion\", () => {\n const resolved = resolveIrInput({\n latestVersion: 3,\n chain: [\n { version: 1, ir: ir(1) },\n { version: 3, ir: ir(3) },\n ],\n }, \"chain.json\");\n\n expect(resolved.minSupportedVersion).toBe(3);\n });\n\n it(\"rejects an empty chain\", () => {\n expect(() =>\n resolveIrInput({\n latestVersion: 1,\n chain: [],\n }, \"empty.json\")\n ).toThrow(\"chain\");\n });\n\n it(\"rejects a chain with an invalid minSupportedVersion\", () => {\n expect(() =>\n resolveIrInput({\n latestVersion: 3,\n minSupportedVersion: 2,\n chain: [\n { version: 1, ir: ir(1) },\n { version: 3, ir: ir(3) },\n ],\n }, \"missing.json\")\n ).toThrow(\"minSupportedVersion 2\");\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AAE7C,SAASC,cAAc,QAAQ,sBAAsB;AAErD,SAASC,EAAEA,CAACC,OAAe,EAA2B;EACpD,OAAO;IACLC,IAAI,EAAE,SAASD,OAAO,EAAE;IACxBE,WAAW,EAAE,aAAa;IAC1BF,OAAO;IACPG,gBAAgB,EAAE,EAAE;IACpBC,MAAM,EAAE,CAAC;EACX,CAAC;AACH;AAEAT,QAAQ,CAAC,gBAAgB,EAAE,MAAM;EAC/BE,EAAE,CAAC,yCAAyC,EAAE,MAAM;IAClD,MAAMQ,QAAQ,GAAGP,cAAc,CAACC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;IAErDH,MAAM,CAACS,QAAQ,CAAC,CAACC,OAAO,CAAC;MACvBP,EAAE,EAAEA,EAAE,CAAC,CAAC,CAAC;MACTQ,aAAa,EAAE,CAAC;MAChBC,mBAAmB,EAAE;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFX,EAAE,CAAC,oDAAoD,EAAE,MAAM;IAC7D,MAAMQ,QAAQ,GAAGP,cAAc,CAAC;MAC9BS,aAAa,EAAE,CAAC;MAChBC,mBAAmB,EAAE,CAAC;MACtBC,KAAK,EAAE,CACL;QAAET,OAAO,EAAE,CAAC;QAAED,EAAE,EAAEA,EAAE,CAAC,CAAC;MAAE,CAAC,EACzB;QAAEC,OAAO,EAAE,CAAC;QAAED,EAAE,EAAEA,EAAE,CAAC,CAAC;MAAE,CAAC;IAE7B,CAAC,EAAE,YAAY,CAAC;IAEhBH,MAAM,CAACS,QAAQ,CAAC,CAACC,OAAO,CAAC;MACvBP,EAAE,EAAEA,EAAE,CAAC,CAAC,CAAC;MACTQ,aAAa,EAAE,CAAC;MAChBC,mBAAmB,EAAE;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFX,EAAE,CAAC,qDAAqD,EAAE,MAAM;IAC9D,MAAMQ,QAAQ,GAAGP,cAAc,CAAC;MAC9BS,aAAa,EAAE,CAAC;MAChBE,KAAK,EAAE,CACL;QAAET,OAAO,EAAE,CAAC;QAAED,EAAE,EAAEA,EAAE,CAAC,CAAC;MAAE,CAAC,EACzB;QAAEC,OAAO,EAAE,CAAC;QAAED,EAAE,EAAEA,EAAE,CAAC,CAAC;MAAE,CAAC;IAE7B,CAAC,EAAE,YAAY,CAAC;IAEhBH,MAAM,CAACS,QAAQ,CAACG,mBAAmB,CAAC,CAACE,IAAI,CAAC,CAAC,CAAC;EAC9C,CAAC,CAAC;EAEFb,EAAE,CAAC,wBAAwB,EAAE,MAAM;IACjCD,MAAM,CAAC,MACLE,cAAc,CAAC;MACbS,aAAa,EAAE,CAAC;MAChBE,KAAK,EAAE;IACT,CAAC,EAAE,YAAY,CACjB,CAAC,CAACE,OAAO,CAAC,OAAO,CAAC;EACpB,CAAC,CAAC;EAEFd,EAAE,CAAC,qDAAqD,EAAE,MAAM;IAC9DD,MAAM,CAAC,MACLE,cAAc,CAAC;MACbS,aAAa,EAAE,CAAC;MAChBC,mBAAmB,EAAE,CAAC;MACtBC,KAAK,EAAE,CACL;QAAET,OAAO,EAAE,CAAC;QAAED,EAAE,EAAEA,EAAE,CAAC,CAAC;MAAE,CAAC,EACzB;QAAEC,OAAO,EAAE,CAAC;QAAED,EAAE,EAAEA,EAAE,CAAC,CAAC;MAAE,CAAC;IAE7B,CAAC,EAAE,cAAc,CACnB,CAAC,CAACY,OAAO,CAAC,uBAAuB,CAAC;EACpC,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"resolveIrInput.test.js","names":["describe","expect","it","resolveIrInput","ir","version","name","description","primaryModelKeys","models","resolved","toEqual","latestVersion","minSupportedVersion","chain","owningApplicationId","toBe","toThrow"],"sources":["resolveIrInput.test.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { describe, expect, it } from \"vitest\";\nimport type { IRealTimeDocumentSchema } from \"../../../lib/pack-docschema-api/pack-docschema-ir/index.js\";\nimport { resolveIrInput } from \"../resolveIrInput.js\";\n\nfunction ir(version: number): IRealTimeDocumentSchema {\n return {\n name: `Test v${version}`,\n description: \"Test schema\",\n version,\n primaryModelKeys: [],\n models: {},\n };\n}\n\ndescribe(\"resolveIrInput\", () => {\n it(\"passes through legacy single-version IR\", () => {\n const resolved = resolveIrInput(ir(2), \"legacy.json\");\n\n expect(resolved).toEqual({\n ir: ir(2),\n latestVersion: 2,\n minSupportedVersion: 2,\n });\n });\n\n it(\"selects the latest entry from a versioned IR chain\", () => {\n const resolved = resolveIrInput({\n latestVersion: 3,\n minSupportedVersion: 1,\n chain: [\n { version: 1, ir: ir(1) },\n { version: 3, ir: ir(3) },\n ],\n }, \"chain.json\");\n\n expect(resolved).toEqual({\n ir: ir(3),\n latestVersion: 3,\n minSupportedVersion: 1,\n });\n });\n\n it(\"carries owningApplicationId through from a chain payload\", () => {\n const resolved = resolveIrInput({\n latestVersion: 1,\n owningApplicationId: \"app-123\",\n chain: [{ version: 1, ir: ir(1) }],\n }, \"chain.json\");\n\n expect(resolved.owningApplicationId).toBe(\"app-123\");\n });\n\n it(\"defaults chain minSupportedVersion to latestVersion\", () => {\n const resolved = resolveIrInput({\n latestVersion: 3,\n chain: [\n { version: 1, ir: ir(1) },\n { version: 3, ir: ir(3) },\n ],\n }, \"chain.json\");\n\n expect(resolved.minSupportedVersion).toBe(3);\n });\n\n it(\"rejects an empty chain\", () => {\n expect(() =>\n resolveIrInput({\n latestVersion: 1,\n chain: [],\n }, \"empty.json\")\n ).toThrow(\"chain\");\n });\n\n it(\"rejects a chain with an invalid minSupportedVersion\", () => {\n expect(() =>\n resolveIrInput({\n latestVersion: 3,\n minSupportedVersion: 2,\n chain: [\n { version: 1, ir: ir(1) },\n { version: 3, ir: ir(3) },\n ],\n }, \"missing.json\")\n ).toThrow(\"minSupportedVersion 2\");\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"irDeployHandler.js","names":["createPlatformClient","PalantirApiError","DocumentTypes","CommanderError","consola","readFileSync","resolve","convertIrToWireSchema","buildPrefixRewriteFetch","DEFAULT_API_PREFIX","resolveIrInput","irDeployHandler","options","irPath","ir","info","latestVersion","JSON","parse","schema","fileSystemType","firstParty","deployFirstParty","name","deployThirdParty","error","parentFolder","osdkClient","baseUrl","Promise","auth","request","parentFolderRid","result","create","preview","success","version","ontologyRid","fetchFn","firstPartyPrefix","undefined","requestBody","createFirstParty","message","errorName","errorCode","details","filter","Boolean","join"],"sources":["irDeployHandler.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createPlatformClient, PalantirApiError } from \"@osdk/client\";\nimport type {\n CreateDocumentTypeRequest,\n CreateFirstPartyDocumentTypeRequest,\n} from \"@osdk/foundry.pack\";\nimport { DocumentTypes } from \"@osdk/foundry.pack\";\nimport { CommanderError } from \"commander\";\nimport { consola } from \"consola\";\nimport { readFileSync } from \"fs\";\nimport { resolve } from \"path\";\nimport { convertIrToWireSchema } from \"../../utils/ir/convertIrToWireSchema.js\";\nimport type { FileSystemType } from \"../types.js\";\nimport { buildPrefixRewriteFetch, DEFAULT_API_PREFIX } from \"../utils/firstPartyPrefix.js\";\nimport { resolveIrInput } from \"./resolveIrInput.js\";\n\ninterface DeployOptions {\n readonly ir: string;\n readonly baseUrl: string;\n readonly auth: string;\n readonly fileSystemType?: FileSystemType;\n readonly firstParty?: boolean;\n /** Required for third-party deploys. */\n readonly parentFolder?: string;\n /** Required for first-party deploys. */\n readonly ontologyRid?: string;\n /** Overrides the API prefix for first-party deploys (e.g. /api/gotham). */\n readonly firstPartyPrefix?: string;\n}\n\nexport async function irDeployHandler(options: DeployOptions): Promise<void> {\n try {\n const irPath = resolve(options.ir);\n consola.info(`Reading schema from: ${irPath}`);\n\n const { ir, latestVersion } = resolveIrInput(\n JSON.parse(readFileSync(irPath, \"utf8\")) as unknown,\n irPath,\n );\n const schema = convertIrToWireSchema(ir);\n const fileSystemType = options.fileSystemType ?? \"ARTIFACTS\";\n\n if (options.firstParty) {\n await deployFirstParty(options, ir.name, schema, latestVersion, fileSystemType);\n } else {\n await deployThirdParty(options, ir.name, schema, fileSystemType);\n }\n } catch (error) {\n if (error instanceof CommanderError) {\n throw error;\n }\n consola.error(\"❌ Error during Deploy:\", error);\n throw new CommanderError(1, \"ERRIRMDEPLOY\", \"Error deploying IR document schema\");\n }\n}\n\ntype DocumentTypeSchema = CreateDocumentTypeRequest[\"schema\"];\n\nasync function deployThirdParty(\n options: DeployOptions,\n name: string,\n schema: DocumentTypeSchema,\n fileSystemType: FileSystemType,\n): Promise<void> {\n if (options.parentFolder == null) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n \"--parent-folder is required when deploying a third-party document type\",\n );\n }\n\n const osdkClient = createPlatformClient(options.baseUrl, () => Promise.resolve(options.auth));\n\n const request: CreateDocumentTypeRequest = {\n name,\n parentFolderRid: options.parentFolder,\n schema,\n fileSystemType,\n };\n\n consola.info(\"Creating document type with schema\", request);\n const result = await DocumentTypes.create(osdkClient, request, { preview: true });\n consola.success(\"Successfully created document type\", result);\n}\n\nasync function deployFirstParty(\n options: DeployOptions,\n name: string,\n schema: DocumentTypeSchema,\n version: number,\n fileSystemType: FileSystemType,\n): Promise<void> {\n if (options.ontologyRid == null) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n \"--ontology-rid is required when deploying a first-party document type\",\n );\n }\n\n const fetchFn = options.firstPartyPrefix != null\n ? buildPrefixRewriteFetch(options.firstPartyPrefix)\n : undefined;\n if (fetchFn != null) {\n consola.info(`Rewriting OSDK '${DEFAULT_API_PREFIX}' -> '${options.firstPartyPrefix}'`);\n }\n\n const osdkClient = createPlatformClient(\n options.baseUrl,\n () => Promise.resolve(options.auth),\n undefined,\n fetchFn,\n );\n\n const request: CreateFirstPartyDocumentTypeRequest = {\n requestBody: {\n name,\n ontologyRid: options.ontologyRid,\n schema,\n version,\n fileSystemType,\n },\n };\n\n consola.info(\"Creating first-party document type\", request);\n try {\n const result = await DocumentTypes.createFirstParty(osdkClient, request, { preview: true });\n consola.success(\"Successfully created first-party document type\", result);\n } catch (error) {\n if (error instanceof PalantirApiError) {\n const { message, errorName, errorCode } = error;\n const details = [errorName, errorCode].filter(Boolean).join(\" \");\n consola.error(\n `❌ Error during first-party deploy: ${message}${details ? ` [${details}]` : \"\"}`,\n );\n }\n throw error;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"irDeployHandler.js","names":["createPlatformClient","PalantirApiError","DocumentTypes","CommanderError","consola","readFileSync","resolve","convertIrToWireSchema","buildPrefixRewriteFetch","DEFAULT_API_PREFIX","resolveIrInput","irDeployHandler","options","irPath","ir","info","latestVersion","JSON","parse","schema","fileSystemType","firstParty","deployFirstParty","name","deployThirdParty","error","parentFolder","osdkClient","baseUrl","Promise","auth","request","parentFolderRid","result","create","preview","success","version","ontologyRid","fetchFn","firstPartyPrefix","undefined","requestBody","createFirstParty","message","errorName","errorCode","details","filter","Boolean","join"],"sources":["irDeployHandler.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createPlatformClient, PalantirApiError } from \"@osdk/client\";\nimport type {\n CreateDocumentTypeRequest,\n CreateFirstPartyDocumentTypeRequest,\n FileSystemType,\n} from \"@osdk/foundry.pack\";\nimport { DocumentTypes } from \"@osdk/foundry.pack\";\nimport { CommanderError } from \"commander\";\nimport { consola } from \"consola\";\nimport { readFileSync } from \"fs\";\nimport { resolve } from \"path\";\nimport { convertIrToWireSchema } from \"../../utils/ir/convertIrToWireSchema.js\";\nimport { buildPrefixRewriteFetch, DEFAULT_API_PREFIX } from \"../utils/firstPartyPrefix.js\";\nimport { resolveIrInput } from \"./resolveIrInput.js\";\n\ninterface DeployOptions {\n readonly ir: string;\n readonly baseUrl: string;\n readonly auth: string;\n readonly fileSystemType?: FileSystemType;\n readonly firstParty?: boolean;\n /** Required for third-party deploys. */\n readonly parentFolder?: string;\n /** Required for first-party deploys. */\n readonly ontologyRid?: string;\n /** Overrides the API prefix for first-party deploys (e.g. /api/gotham). */\n readonly firstPartyPrefix?: string;\n}\n\nexport async function irDeployHandler(options: DeployOptions): Promise<void> {\n try {\n const irPath = resolve(options.ir);\n consola.info(`Reading schema from: ${irPath}`);\n\n const { ir, latestVersion } = resolveIrInput(\n JSON.parse(readFileSync(irPath, \"utf8\")) as unknown,\n irPath,\n );\n const schema = convertIrToWireSchema(ir);\n const fileSystemType = options.fileSystemType ?? \"ARTIFACTS\";\n\n if (options.firstParty) {\n await deployFirstParty(options, ir.name, schema, latestVersion, fileSystemType);\n } else {\n await deployThirdParty(options, ir.name, schema, fileSystemType);\n }\n } catch (error) {\n if (error instanceof CommanderError) {\n throw error;\n }\n consola.error(\"❌ Error during Deploy:\", error);\n throw new CommanderError(1, \"ERRIRMDEPLOY\", \"Error deploying IR document schema\");\n }\n}\n\ntype DocumentTypeSchema = CreateDocumentTypeRequest[\"schema\"];\n\nasync function deployThirdParty(\n options: DeployOptions,\n name: string,\n schema: DocumentTypeSchema,\n fileSystemType: FileSystemType,\n): Promise<void> {\n if (options.parentFolder == null) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n \"--parent-folder is required when deploying a third-party document type\",\n );\n }\n\n const osdkClient = createPlatformClient(options.baseUrl, () => Promise.resolve(options.auth));\n\n const request: CreateDocumentTypeRequest = {\n name,\n parentFolderRid: options.parentFolder,\n schema,\n fileSystemType,\n };\n\n consola.info(\"Creating document type with schema\", request);\n const result = await DocumentTypes.create(osdkClient, request, { preview: true });\n consola.success(\"Successfully created document type\", result);\n}\n\nasync function deployFirstParty(\n options: DeployOptions,\n name: string,\n schema: DocumentTypeSchema,\n version: number,\n fileSystemType: FileSystemType,\n): Promise<void> {\n if (options.ontologyRid == null) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n \"--ontology-rid is required when deploying a first-party document type\",\n );\n }\n\n const fetchFn = options.firstPartyPrefix != null\n ? buildPrefixRewriteFetch(options.firstPartyPrefix)\n : undefined;\n if (fetchFn != null) {\n consola.info(`Rewriting OSDK '${DEFAULT_API_PREFIX}' -> '${options.firstPartyPrefix}'`);\n }\n\n const osdkClient = createPlatformClient(\n options.baseUrl,\n () => Promise.resolve(options.auth),\n undefined,\n fetchFn,\n );\n\n const request: CreateFirstPartyDocumentTypeRequest = {\n requestBody: {\n name,\n ontologyRid: options.ontologyRid,\n schema,\n version,\n fileSystemType,\n },\n };\n\n consola.info(\"Creating first-party document type\", request);\n try {\n const result = await DocumentTypes.createFirstParty(osdkClient, request, { preview: true });\n consola.success(\"Successfully created first-party document type\", result);\n } catch (error) {\n if (error instanceof PalantirApiError) {\n const { message, errorName, errorCode } = error;\n const details = [errorName, errorCode].filter(Boolean).join(\" \");\n consola.error(\n `❌ Error during first-party deploy: ${message}${details ? ` [${details}]` : \"\"}`,\n );\n }\n throw error;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -59,7 +59,8 @@ export function irGenAssetHandler(options) {
59
59
  const {
60
60
  ir: irSchema,
61
61
  latestVersion,
62
- minSupportedVersion
62
+ minSupportedVersion,
63
+ owningApplicationId
63
64
  } = resolved;
64
65
  const {
65
66
  name: documentTypeName
@@ -69,25 +70,26 @@ export function irGenAssetHandler(options) {
69
70
  if (fileSystemType !== "ARTIFACTS" && fileSystemType !== "COMPASS") {
70
71
  throw new CommanderError(1, "EINVAL", `Invalid fileSystemType "${fileSystemType}". Must be "ARTIFACTS" or "COMPASS".`);
71
72
  }
73
+ const asset = {
74
+ comment: GENERATED_JSON_COMMENT,
75
+ documentTypeName,
76
+ documentStorageType: {
77
+ type: "yjs",
78
+ schema: wireSchema
79
+ },
80
+ fileSystemType,
81
+ schemaVersion: latestVersion,
82
+ ...(owningApplicationId != null ? {
83
+ owningApplicationId
84
+ } : {})
85
+ };
72
86
  const outputDir = dirname(outputPath);
73
87
  if (!existsSync(outputDir)) {
74
88
  mkdirSync(outputDir, {
75
89
  recursive: true
76
90
  });
77
91
  }
78
- const output = {
79
- comment: GENERATED_JSON_COMMENT,
80
- ...{
81
- documentTypeName,
82
- documentStorageType: {
83
- type: "yjs",
84
- schema: wireSchema
85
- },
86
- fileSystemType,
87
- schemaVersion: latestVersion
88
- }
89
- };
90
- writeFileSync(outputPath, JSON.stringify(output, null, 2), "utf8");
92
+ writeFileSync(outputPath, JSON.stringify(asset, null, 2), "utf8");
91
93
  const compatibilityRangePath = resolve(options.compatibilityRangeOutput ?? deriveCompatibilityRangePath(outputPath));
92
94
  const compatibilityRangeDir = dirname(compatibilityRangePath);
93
95
  if (!existsSync(compatibilityRangeDir)) {
@@ -110,6 +112,9 @@ export function irGenAssetHandler(options) {
110
112
  consola.info(` Schema version: ${latestVersion}`);
111
113
  consola.info(` Compatibility range: [${minSupportedVersion}, ${latestVersion}]`);
112
114
  consola.info(` File system type: ${fileSystemType}`);
115
+ if (owningApplicationId != null) {
116
+ consola.info(` Owning application id: ${owningApplicationId}`);
117
+ }
113
118
  } catch (error) {
114
119
  if (error instanceof CommanderError) {
115
120
  throw error;
@@ -1 +1 @@
1
- {"version":3,"file":"irGenAssetHandler.js","names":["CommanderError","consola","existsSync","mkdirSync","readFileSync","writeFileSync","basename","dirname","extname","join","resolve","GENERATED_JSON_COMMENT","convertIrToWireSchema","resolveIrInput","deriveCompatibilityRangePath","assetOutputPath","stem","irGenAssetHandler","options","irPath","ir","outputPath","output","info","parsed","JSON","parse","resolved","irSchema","latestVersion","minSupportedVersion","name","documentTypeName","wireSchema","fileSystemType","outputDir","recursive","comment","documentStorageType","type","schema","schemaVersion","stringify","compatibilityRangePath","compatibilityRangeOutput","compatibilityRangeDir","min","max","success","error"],"sources":["irGenAssetHandler.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { CommanderError } from \"commander\";\nimport { consola } from \"consola\";\nimport { existsSync, mkdirSync, readFileSync, writeFileSync } from \"fs\";\nimport { basename, dirname, extname, join, resolve } from \"path\";\nimport { GENERATED_JSON_COMMENT } from \"../../utils/generatedFileHeader.js\";\nimport { convertIrToWireSchema } from \"../../utils/ir/convertIrToWireSchema.js\";\nimport type { DocumentTypeAsset, FileSystemType } from \"../types.js\";\nimport { resolveIrInput } from \"./resolveIrInput.js\";\n\ninterface IrGenAssetOptions {\n readonly ir: string;\n readonly output: string;\n readonly fileSystemType?: FileSystemType;\n readonly compatibilityRangeOutput?: string;\n}\n\ninterface SchemaCompatibilityRangeFile {\n readonly min: number;\n readonly max: number;\n}\n\nfunction deriveCompatibilityRangePath(assetOutputPath: string): string {\n const stem = basename(assetOutputPath, extname(assetOutputPath));\n return join(dirname(assetOutputPath), `${stem}-schema-compatibility-range.json`);\n}\n\n/**\n * Generates a document type asset JSON file (and a sibling schema\n * compatibility range JSON file) from an IR schema.\n *\n * The input IR may be either:\n * - a chain payload `{ latestVersion, minSupportedVersion?, chain }` produced\n * by `schema ir`. The latest entry's `ir` is used as the wire schema; the\n * asset's `schemaVersion` is `latestVersion`; the compatibility range is\n * `{ min: minSupportedVersion ?? latestVersion, max: latestVersion }`.\n * - a bare single-version `IRealTimeDocumentSchema` (legacy). The compat\n * range defaults to `{ min: version, max: version }` since no chain\n * information is available.\n *\n * This command is intended for internal platform applications where the\n * document type asset must exist on disk so the platform can discover it and\n * register the document type automatically at deploy time. Most users should\n * use `ir deploy` to register document types via the Foundry API instead.\n *\n * If you are unsure whether you need this command, you almost certainly do not.\n */\nexport function irGenAssetHandler(options: IrGenAssetOptions): void {\n try {\n const irPath = resolve(options.ir);\n const outputPath = resolve(options.output);\n\n if (!existsSync(irPath)) {\n throw new CommanderError(1, \"ENOENT\", `IR file does not exist: ${irPath}`);\n }\n\n consola.info(`Reading IR schema from: ${irPath}`);\n const parsed = JSON.parse(readFileSync(irPath, \"utf8\")) as unknown;\n\n const resolved = resolveIrInput(parsed, irPath);\n\n const { ir: irSchema, latestVersion, minSupportedVersion } = resolved;\n const { name: documentTypeName } = irSchema;\n const wireSchema = convertIrToWireSchema(irSchema);\n\n const fileSystemType = options.fileSystemType ?? \"ARTIFACTS\";\n if (fileSystemType !== \"ARTIFACTS\" && fileSystemType !== \"COMPASS\") {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n `Invalid fileSystemType \"${fileSystemType}\". Must be \"ARTIFACTS\" or \"COMPASS\".`,\n );\n }\n\n const asset: DocumentTypeAsset = {\n documentTypeName,\n documentStorageType: {\n type: \"yjs\",\n schema: wireSchema,\n },\n fileSystemType,\n schemaVersion: latestVersion,\n };\n\n const outputDir = dirname(outputPath);\n if (!existsSync(outputDir)) {\n mkdirSync(outputDir, { recursive: true });\n }\n const output = { comment: GENERATED_JSON_COMMENT, ...asset };\n writeFileSync(outputPath, JSON.stringify(output, null, 2), \"utf8\");\n\n const compatibilityRange: SchemaCompatibilityRangeFile = {\n min: minSupportedVersion,\n max: latestVersion,\n };\n const compatibilityRangePath = resolve(\n options.compatibilityRangeOutput ?? deriveCompatibilityRangePath(outputPath),\n );\n const compatibilityRangeDir = dirname(compatibilityRangePath);\n if (!existsSync(compatibilityRangeDir)) {\n mkdirSync(compatibilityRangeDir, { recursive: true });\n }\n const compatibilityRangeOutput = {\n comment: GENERATED_JSON_COMMENT,\n ...compatibilityRange,\n };\n writeFileSync(\n compatibilityRangePath,\n JSON.stringify(compatibilityRangeOutput, null, 2),\n \"utf8\",\n );\n\n consola.success(\"Successfully generated document type asset\");\n consola.info(` Output: ${outputPath}`);\n consola.info(` Compatibility range output: ${compatibilityRangePath}`);\n consola.info(` Document type: ${documentTypeName}`);\n consola.info(` Schema version: ${latestVersion}`);\n consola.info(` Compatibility range: [${minSupportedVersion}, ${latestVersion}]`);\n consola.info(` File system type: ${fileSystemType}`);\n } catch (error) {\n if (error instanceof CommanderError) {\n throw error;\n }\n consola.error(\"Error generating document type asset:\", error);\n throw new CommanderError(1, \"IR_ASSET_ERROR\", \"Failed to generate document type asset\");\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"irGenAssetHandler.js","names":["CommanderError","consola","existsSync","mkdirSync","readFileSync","writeFileSync","basename","dirname","extname","join","resolve","GENERATED_JSON_COMMENT","convertIrToWireSchema","resolveIrInput","deriveCompatibilityRangePath","assetOutputPath","stem","irGenAssetHandler","options","irPath","ir","outputPath","output","info","parsed","JSON","parse","resolved","irSchema","latestVersion","minSupportedVersion","owningApplicationId","name","documentTypeName","wireSchema","fileSystemType","asset","comment","documentStorageType","type","schema","schemaVersion","outputDir","recursive","stringify","compatibilityRangePath","compatibilityRangeOutput","compatibilityRangeDir","min","max","success","error"],"sources":["irGenAssetHandler.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { DocumentTypeAsset, FileSystemType } from \"@osdk/foundry.pack\";\nimport { CommanderError } from \"commander\";\nimport { consola } from \"consola\";\nimport { existsSync, mkdirSync, readFileSync, writeFileSync } from \"fs\";\nimport { basename, dirname, extname, join, resolve } from \"path\";\nimport { GENERATED_JSON_COMMENT } from \"../../utils/generatedFileHeader.js\";\nimport { convertIrToWireSchema } from \"../../utils/ir/convertIrToWireSchema.js\";\nimport { resolveIrInput } from \"./resolveIrInput.js\";\n\ninterface IrGenAssetOptions {\n readonly ir: string;\n readonly output: string;\n readonly fileSystemType?: FileSystemType;\n readonly compatibilityRangeOutput?: string;\n}\n\ninterface SchemaCompatibilityRangeFile {\n readonly min: number;\n readonly max: number;\n}\n\nfunction deriveCompatibilityRangePath(assetOutputPath: string): string {\n const stem = basename(assetOutputPath, extname(assetOutputPath));\n return join(dirname(assetOutputPath), `${stem}-schema-compatibility-range.json`);\n}\n\n/**\n * Generates a document type asset JSON file (and a sibling schema\n * compatibility range JSON file) from an IR schema.\n *\n * The input IR may be either:\n * - a chain payload `{ latestVersion, minSupportedVersion?, chain }` produced\n * by `schema ir`. The latest entry's `ir` is used as the wire schema; the\n * asset's `schemaVersion` is `latestVersion`; the compatibility range is\n * `{ min: minSupportedVersion ?? latestVersion, max: latestVersion }`.\n * - a bare single-version `IRealTimeDocumentSchema` (legacy). The compat\n * range defaults to `{ min: version, max: version }` since no chain\n * information is available.\n *\n * This command is intended for internal platform applications where the\n * document type asset must exist on disk so the platform can discover it and\n * register the document type automatically at deploy time. Most users should\n * use `ir deploy` to register document types via the Foundry API instead.\n *\n * If you are unsure whether you need this command, you almost certainly do not.\n */\nexport function irGenAssetHandler(options: IrGenAssetOptions): void {\n try {\n const irPath = resolve(options.ir);\n const outputPath = resolve(options.output);\n\n if (!existsSync(irPath)) {\n throw new CommanderError(1, \"ENOENT\", `IR file does not exist: ${irPath}`);\n }\n\n consola.info(`Reading IR schema from: ${irPath}`);\n const parsed = JSON.parse(readFileSync(irPath, \"utf8\")) as unknown;\n\n const resolved = resolveIrInput(parsed, irPath);\n\n const { ir: irSchema, latestVersion, minSupportedVersion, owningApplicationId } = resolved;\n const { name: documentTypeName } = irSchema;\n const wireSchema = convertIrToWireSchema(irSchema);\n\n const fileSystemType = options.fileSystemType ?? \"ARTIFACTS\";\n if (fileSystemType !== \"ARTIFACTS\" && fileSystemType !== \"COMPASS\") {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n `Invalid fileSystemType \"${fileSystemType}\". Must be \"ARTIFACTS\" or \"COMPASS\".`,\n );\n }\n\n const asset: DocumentTypeAsset = {\n comment: GENERATED_JSON_COMMENT,\n documentTypeName,\n documentStorageType: {\n type: \"yjs\",\n schema: wireSchema,\n },\n fileSystemType,\n schemaVersion: latestVersion,\n ...(owningApplicationId != null ? { owningApplicationId } : {}),\n };\n\n const outputDir = dirname(outputPath);\n if (!existsSync(outputDir)) {\n mkdirSync(outputDir, { recursive: true });\n }\n writeFileSync(outputPath, JSON.stringify(asset, null, 2), \"utf8\");\n\n const compatibilityRange: SchemaCompatibilityRangeFile = {\n min: minSupportedVersion,\n max: latestVersion,\n };\n const compatibilityRangePath = resolve(\n options.compatibilityRangeOutput ?? deriveCompatibilityRangePath(outputPath),\n );\n const compatibilityRangeDir = dirname(compatibilityRangePath);\n if (!existsSync(compatibilityRangeDir)) {\n mkdirSync(compatibilityRangeDir, { recursive: true });\n }\n const compatibilityRangeOutput = {\n comment: GENERATED_JSON_COMMENT,\n ...compatibilityRange,\n };\n writeFileSync(\n compatibilityRangePath,\n JSON.stringify(compatibilityRangeOutput, null, 2),\n \"utf8\",\n );\n\n consola.success(\"Successfully generated document type asset\");\n consola.info(` Output: ${outputPath}`);\n consola.info(` Compatibility range output: ${compatibilityRangePath}`);\n consola.info(` Document type: ${documentTypeName}`);\n consola.info(` Schema version: ${latestVersion}`);\n consola.info(` Compatibility range: [${minSupportedVersion}, ${latestVersion}]`);\n consola.info(` File system type: ${fileSystemType}`);\n if (owningApplicationId != null) {\n consola.info(` Owning application id: ${owningApplicationId}`);\n }\n } catch (error) {\n if (error instanceof CommanderError) {\n throw error;\n }\n consola.error(\"Error generating document type asset:\", error);\n throw new CommanderError(1, \"IR_ASSET_ERROR\", \"Failed to generate document type asset\");\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -34,7 +34,8 @@ function resolveFromChain(payload, irPath) {
34
34
  return {
35
35
  ir: latestEntry.ir,
36
36
  latestVersion,
37
- minSupportedVersion: minVersion
37
+ minSupportedVersion: minVersion,
38
+ owningApplicationId: payload.owningApplicationId
38
39
  };
39
40
  }
40
41
  function resolveFromSingleIr(ir) {
@@ -1 +1 @@
1
- {"version":3,"file":"resolveIrInput.js","names":["CommanderError","resolveMinVersion","isChainPayload","parsed","Array","isArray","chain","latestVersion","resolveFromChain","payload","irPath","length","minVersion","minSupportedVersion","latestEntry","find","c","version","ir","resolveFromSingleIr","resolveIrInput"],"sources":["resolveIrInput.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { CommanderError } from \"commander\";\nimport type { IRealTimeDocumentSchema } from \"../../lib/pack-docschema-api/pack-docschema-ir/index.js\";\nimport { type IrChainPayload, resolveMinVersion } from \"../../utils/schema/resolveSchemaChain.js\";\n\nexport interface ResolvedIrInput {\n readonly ir: IRealTimeDocumentSchema;\n readonly latestVersion: number;\n readonly minSupportedVersion: number;\n}\n\nfunction isChainPayload(parsed: unknown): parsed is IrChainPayload {\n return (\n typeof parsed === \"object\"\n && parsed != null\n && \"chain\" in parsed\n && Array.isArray((parsed as IrChainPayload).chain)\n && typeof (parsed as IrChainPayload).latestVersion === \"number\"\n );\n}\n\nfunction resolveFromChain(payload: IrChainPayload, irPath: string): ResolvedIrInput {\n if (payload.chain.length === 0) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n `Invalid IR chain payload at ${irPath}: 'chain' is empty`,\n );\n }\n const { latestVersion, minVersion } = resolveMinVersion(\n payload.chain,\n payload.minSupportedVersion,\n );\n const latestEntry = payload.chain.find(c => c.version === latestVersion);\n if (latestEntry == null) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n `IR chain payload at ${irPath} has no entry matching latestVersion ${latestVersion}`,\n );\n }\n return { ir: latestEntry.ir, latestVersion, minSupportedVersion: minVersion };\n}\n\nfunction resolveFromSingleIr(ir: IRealTimeDocumentSchema): ResolvedIrInput {\n return { ir, latestVersion: ir.version, minSupportedVersion: ir.version };\n}\n\nexport function resolveIrInput(parsed: unknown, irPath: string): ResolvedIrInput {\n return isChainPayload(parsed)\n ? resolveFromChain(parsed, irPath)\n : resolveFromSingleIr(parsed as IRealTimeDocumentSchema);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,WAAW;AAE1C,SAA8BC,iBAAiB,QAAQ,0CAA0C;AAQjG,SAASC,cAAcA,CAACC,MAAe,EAA4B;EACjE,OACE,OAAOA,MAAM,KAAK,QAAQ,IACvBA,MAAM,IAAI,IAAI,IACd,OAAO,IAAIA,MAAM,IACjBC,KAAK,CAACC,OAAO,CAAEF,MAAM,CAAoBG,KAAK,CAAC,IAC/C,OAAQH,MAAM,CAAoBI,aAAa,KAAK,QAAQ;AAEnE;AAEA,SAASC,gBAAgBA,CAACC,OAAuB,EAAEC,MAAc,EAAmB;EAClF,IAAID,OAAO,CAACH,KAAK,CAACK,MAAM,KAAK,CAAC,EAAE;IAC9B,MAAM,IAAIX,cAAc,CACtB,CAAC,EACD,QAAQ,EACR,+BAA+BU,MAAM,oBACvC,CAAC;EACH;EACA,MAAM;IAAEH,aAAa;IAAEK;EAAW,CAAC,GAAGX,iBAAiB,CACrDQ,OAAO,CAACH,KAAK,EACbG,OAAO,CAACI,mBACV,CAAC;EACD,MAAMC,WAAW,GAAGL,OAAO,CAACH,KAAK,CAACS,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,KAAKV,aAAa,CAAC;EACxE,IAAIO,WAAW,IAAI,IAAI,EAAE;IACvB,MAAM,IAAId,cAAc,CACtB,CAAC,EACD,QAAQ,EACR,uBAAuBU,MAAM,wCAAwCH,aAAa,EACpF,CAAC;EACH;EACA,OAAO;IAAEW,EAAE,EAAEJ,WAAW,CAACI,EAAE;IAAEX,aAAa;IAAEM,mBAAmB,EAAED;EAAW,CAAC;AAC/E;AAEA,SAASO,mBAAmBA,CAACD,EAA2B,EAAmB;EACzE,OAAO;IAAEA,EAAE;IAAEX,aAAa,EAAEW,EAAE,CAACD,OAAO;IAAEJ,mBAAmB,EAAEK,EAAE,CAACD;EAAQ,CAAC;AAC3E;AAEA,OAAO,SAASG,cAAcA,CAACjB,MAAe,EAAEO,MAAc,EAAmB;EAC/E,OAAOR,cAAc,CAACC,MAAM,CAAC,GACzBK,gBAAgB,CAACL,MAAM,EAAEO,MAAM,CAAC,GAChCS,mBAAmB,CAAChB,MAAiC,CAAC;AAC5D","ignoreList":[]}
1
+ {"version":3,"file":"resolveIrInput.js","names":["CommanderError","resolveMinVersion","isChainPayload","parsed","Array","isArray","chain","latestVersion","resolveFromChain","payload","irPath","length","minVersion","minSupportedVersion","latestEntry","find","c","version","ir","owningApplicationId","resolveFromSingleIr","resolveIrInput"],"sources":["resolveIrInput.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { CommanderError } from \"commander\";\nimport type { IRealTimeDocumentSchema } from \"../../lib/pack-docschema-api/pack-docschema-ir/index.js\";\nimport { type IrChainPayload, resolveMinVersion } from \"../../utils/schema/resolveSchemaChain.js\";\n\nexport interface ResolvedIrInput {\n readonly ir: IRealTimeDocumentSchema;\n readonly latestVersion: number;\n readonly minSupportedVersion: number;\n readonly owningApplicationId?: string;\n}\n\nfunction isChainPayload(parsed: unknown): parsed is IrChainPayload {\n return (\n typeof parsed === \"object\"\n && parsed != null\n && \"chain\" in parsed\n && Array.isArray((parsed as IrChainPayload).chain)\n && typeof (parsed as IrChainPayload).latestVersion === \"number\"\n );\n}\n\nfunction resolveFromChain(payload: IrChainPayload, irPath: string): ResolvedIrInput {\n if (payload.chain.length === 0) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n `Invalid IR chain payload at ${irPath}: 'chain' is empty`,\n );\n }\n const { latestVersion, minVersion } = resolveMinVersion(\n payload.chain,\n payload.minSupportedVersion,\n );\n const latestEntry = payload.chain.find(c => c.version === latestVersion);\n if (latestEntry == null) {\n throw new CommanderError(\n 1,\n \"EINVAL\",\n `IR chain payload at ${irPath} has no entry matching latestVersion ${latestVersion}`,\n );\n }\n return {\n ir: latestEntry.ir,\n latestVersion,\n minSupportedVersion: minVersion,\n owningApplicationId: payload.owningApplicationId,\n };\n}\n\nfunction resolveFromSingleIr(ir: IRealTimeDocumentSchema): ResolvedIrInput {\n return { ir, latestVersion: ir.version, minSupportedVersion: ir.version };\n}\n\nexport function resolveIrInput(parsed: unknown, irPath: string): ResolvedIrInput {\n return isChainPayload(parsed)\n ? resolveFromChain(parsed, irPath)\n : resolveFromSingleIr(parsed as IRealTimeDocumentSchema);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,WAAW;AAE1C,SAA8BC,iBAAiB,QAAQ,0CAA0C;AASjG,SAASC,cAAcA,CAACC,MAAe,EAA4B;EACjE,OACE,OAAOA,MAAM,KAAK,QAAQ,IACvBA,MAAM,IAAI,IAAI,IACd,OAAO,IAAIA,MAAM,IACjBC,KAAK,CAACC,OAAO,CAAEF,MAAM,CAAoBG,KAAK,CAAC,IAC/C,OAAQH,MAAM,CAAoBI,aAAa,KAAK,QAAQ;AAEnE;AAEA,SAASC,gBAAgBA,CAACC,OAAuB,EAAEC,MAAc,EAAmB;EAClF,IAAID,OAAO,CAACH,KAAK,CAACK,MAAM,KAAK,CAAC,EAAE;IAC9B,MAAM,IAAIX,cAAc,CACtB,CAAC,EACD,QAAQ,EACR,+BAA+BU,MAAM,oBACvC,CAAC;EACH;EACA,MAAM;IAAEH,aAAa;IAAEK;EAAW,CAAC,GAAGX,iBAAiB,CACrDQ,OAAO,CAACH,KAAK,EACbG,OAAO,CAACI,mBACV,CAAC;EACD,MAAMC,WAAW,GAAGL,OAAO,CAACH,KAAK,CAACS,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,KAAKV,aAAa,CAAC;EACxE,IAAIO,WAAW,IAAI,IAAI,EAAE;IACvB,MAAM,IAAId,cAAc,CACtB,CAAC,EACD,QAAQ,EACR,uBAAuBU,MAAM,wCAAwCH,aAAa,EACpF,CAAC;EACH;EACA,OAAO;IACLW,EAAE,EAAEJ,WAAW,CAACI,EAAE;IAClBX,aAAa;IACbM,mBAAmB,EAAED,UAAU;IAC/BO,mBAAmB,EAAEV,OAAO,CAACU;EAC/B,CAAC;AACH;AAEA,SAASC,mBAAmBA,CAACF,EAA2B,EAAmB;EACzE,OAAO;IAAEA,EAAE;IAAEX,aAAa,EAAEW,EAAE,CAACD,OAAO;IAAEJ,mBAAmB,EAAEK,EAAE,CAACD;EAAQ,CAAC;AAC3E;AAEA,OAAO,SAASI,cAAcA,CAAClB,MAAe,EAAEO,MAAc,EAAmB;EAC/E,OAAOR,cAAc,CAACC,MAAM,CAAC,GACzBK,gBAAgB,CAACL,MAAM,EAAEO,MAAM,CAAC,GAChCU,mBAAmB,CAACjB,MAAiC,CAAC;AAC5D","ignoreList":[]}
@@ -41,7 +41,8 @@ describe("readPackConfig", () => {
41
41
  await expect(readPackConfig(configPath)).resolves.toEqual({
42
42
  documentTypeName: "Canvas Document Type",
43
43
  documentTypeDescription: "Document type description for demo canvas",
44
- minSupportedVersion: 1
44
+ minSupportedVersion: 1,
45
+ owningApplicationId: undefined
45
46
  });
46
47
  });
47
48
  it("reads a valid config with minSupportedVersion omitted", async () => {
@@ -52,8 +53,30 @@ describe("readPackConfig", () => {
52
53
  await expect(readPackConfig(configPath)).resolves.toEqual({
53
54
  documentTypeName: "Canvas Document Type",
54
55
  documentTypeDescription: "Document type description for demo canvas",
55
- minSupportedVersion: undefined
56
+ minSupportedVersion: undefined,
57
+ owningApplicationId: undefined
58
+ });
59
+ });
60
+ it("reads owningApplicationId when present", async () => {
61
+ const configPath = await writeConfig({
62
+ documentTypeName: "Canvas Document Type",
63
+ documentTypeDescription: "Document type description for demo canvas",
64
+ owningApplicationId: "app-123"
65
+ });
66
+ await expect(readPackConfig(configPath)).resolves.toEqual({
67
+ documentTypeName: "Canvas Document Type",
68
+ documentTypeDescription: "Document type description for demo canvas",
69
+ minSupportedVersion: undefined,
70
+ owningApplicationId: "app-123"
71
+ });
72
+ });
73
+ it("throws when owningApplicationId is an empty string", async () => {
74
+ const configPath = await writeConfig({
75
+ documentTypeName: "Canvas Document Type",
76
+ documentTypeDescription: "Document type description for demo canvas",
77
+ owningApplicationId: " "
56
78
  });
79
+ await expect(readPackConfig(configPath)).rejects.toThrow("'owningApplicationId' in");
57
80
  });
58
81
  it("throws when the config file does not exist", async () => {
59
82
  const configPath = path.join(tmpDir, "missing.json");
@@ -1 +1 @@
1
- {"version":3,"file":"readPackConfig.test.js","names":["fs","os","path","afterEach","beforeEach","describe","expect","it","readPackConfig","tmpDir","mkdtemp","join","tmpdir","remove","writeConfig","config","configPath","writeJson","documentTypeName","documentTypeDescription","minSupportedVersion","resolves","toEqual","undefined","rejects","toThrow"],"sources":["readPackConfig.test.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport fs from \"fs-extra\";\nimport os from \"os\";\nimport path from \"path\";\nimport { afterEach, beforeEach, describe, expect, it } from \"vitest\";\nimport { readPackConfig } from \"../schemaIrHandler.js\";\n\ndescribe(\"readPackConfig\", () => {\n let tmpDir: string;\n\n beforeEach(async () => {\n tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), \"pack-config-\"));\n });\n\n afterEach(async () => {\n await fs.remove(tmpDir);\n });\n\n async function writeConfig(config: unknown): Promise<string> {\n const configPath = path.join(tmpDir, \"pack-config.json\");\n await fs.writeJson(configPath, config);\n return configPath;\n }\n\n it(\"reads a valid config\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 1,\n });\n await expect(readPackConfig(configPath)).resolves.toEqual({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 1,\n });\n });\n\n it(\"reads a valid config with minSupportedVersion omitted\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).resolves.toEqual({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: undefined,\n });\n });\n\n it(\"throws when the config file does not exist\", async () => {\n const configPath = path.join(tmpDir, \"missing.json\");\n await expect(readPackConfig(configPath)).rejects.toThrow(\n `--config file not found: ${configPath}`,\n );\n });\n\n it(\"throws when documentTypeName is missing\", async () => {\n const configPath = await writeConfig({\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeName' is required\",\n );\n });\n\n it(\"throws when documentTypeName is an empty string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \" \",\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeName' in\",\n );\n });\n\n it(\"throws when documentTypeName is not a string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: 42,\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeName' in\",\n );\n });\n\n it(\"throws when documentTypeDescription is missing\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeDescription' is required\",\n );\n });\n\n it(\"throws when documentTypeDescription is an empty string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeDescription' in\",\n );\n });\n\n it(\"throws when minSupportedVersion is not a positive integer\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 0,\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'minSupportedVersion' in\",\n );\n });\n\n it(\"throws when minSupportedVersion is not an integer\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 1.5,\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'minSupportedVersion' in\",\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"readPackConfig.test.js","names":["fs","os","path","afterEach","beforeEach","describe","expect","it","readPackConfig","tmpDir","mkdtemp","join","tmpdir","remove","writeConfig","config","configPath","writeJson","documentTypeName","documentTypeDescription","minSupportedVersion","resolves","toEqual","owningApplicationId","undefined","rejects","toThrow"],"sources":["readPackConfig.test.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport fs from \"fs-extra\";\nimport os from \"os\";\nimport path from \"path\";\nimport { afterEach, beforeEach, describe, expect, it } from \"vitest\";\nimport { readPackConfig } from \"../schemaIrHandler.js\";\n\ndescribe(\"readPackConfig\", () => {\n let tmpDir: string;\n\n beforeEach(async () => {\n tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), \"pack-config-\"));\n });\n\n afterEach(async () => {\n await fs.remove(tmpDir);\n });\n\n async function writeConfig(config: unknown): Promise<string> {\n const configPath = path.join(tmpDir, \"pack-config.json\");\n await fs.writeJson(configPath, config);\n return configPath;\n }\n\n it(\"reads a valid config\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 1,\n });\n await expect(readPackConfig(configPath)).resolves.toEqual({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 1,\n owningApplicationId: undefined,\n });\n });\n\n it(\"reads a valid config with minSupportedVersion omitted\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).resolves.toEqual({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: undefined,\n owningApplicationId: undefined,\n });\n });\n\n it(\"reads owningApplicationId when present\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n owningApplicationId: \"app-123\",\n });\n await expect(readPackConfig(configPath)).resolves.toEqual({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: undefined,\n owningApplicationId: \"app-123\",\n });\n });\n\n it(\"throws when owningApplicationId is an empty string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n owningApplicationId: \" \",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'owningApplicationId' in\",\n );\n });\n\n it(\"throws when the config file does not exist\", async () => {\n const configPath = path.join(tmpDir, \"missing.json\");\n await expect(readPackConfig(configPath)).rejects.toThrow(\n `--config file not found: ${configPath}`,\n );\n });\n\n it(\"throws when documentTypeName is missing\", async () => {\n const configPath = await writeConfig({\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeName' is required\",\n );\n });\n\n it(\"throws when documentTypeName is an empty string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \" \",\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeName' in\",\n );\n });\n\n it(\"throws when documentTypeName is not a string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: 42,\n documentTypeDescription: \"Document type description for demo canvas\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeName' in\",\n );\n });\n\n it(\"throws when documentTypeDescription is missing\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeDescription' is required\",\n );\n });\n\n it(\"throws when documentTypeDescription is an empty string\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"\",\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'documentTypeDescription' in\",\n );\n });\n\n it(\"throws when minSupportedVersion is not a positive integer\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 0,\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'minSupportedVersion' in\",\n );\n });\n\n it(\"throws when minSupportedVersion is not an integer\", async () => {\n const configPath = await writeConfig({\n documentTypeName: \"Canvas Document Type\",\n documentTypeDescription: \"Document type description for demo canvas\",\n minSupportedVersion: 1.5,\n });\n await expect(readPackConfig(configPath)).rejects.toThrow(\n \"'minSupportedVersion' in\",\n );\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,EAAE,MAAM,UAAU;AACzB,OAAOC,EAAE,MAAM,IAAI;AACnB,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,SAAS,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AACpE,SAASC,cAAc,QAAQ,uBAAuB;AAEtDH,QAAQ,CAAC,gBAAgB,EAAE,MAAM;EAC/B,IAAII,MAAc;EAElBL,UAAU,CAAC,YAAY;IACrBK,MAAM,GAAG,MAAMT,EAAE,CAACU,OAAO,CAACR,IAAI,CAACS,IAAI,CAACV,EAAE,CAACW,MAAM,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;EACnE,CAAC,CAAC;EAEFT,SAAS,CAAC,YAAY;IACpB,MAAMH,EAAE,CAACa,MAAM,CAACJ,MAAM,CAAC;EACzB,CAAC,CAAC;EAEF,eAAeK,WAAWA,CAACC,MAAe,EAAmB;IAC3D,MAAMC,UAAU,GAAGd,IAAI,CAACS,IAAI,CAACF,MAAM,EAAE,kBAAkB,CAAC;IACxD,MAAMT,EAAE,CAACiB,SAAS,CAACD,UAAU,EAAED,MAAM,CAAC;IACtC,OAAOC,UAAU;EACnB;EAEAT,EAAE,CAAC,sBAAsB,EAAE,YAAY;IACrC,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEC,mBAAmB,EAAE;IACvB,CAAC,CAAC;IACF,MAAMd,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACK,QAAQ,CAACC,OAAO,CAAC;MACxDJ,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEC,mBAAmB,EAAE,CAAC;MACtBG,mBAAmB,EAAEC;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjB,EAAE,CAAC,uDAAuD,EAAE,YAAY;IACtE,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IACF,MAAMb,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACK,QAAQ,CAACC,OAAO,CAAC;MACxDJ,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEC,mBAAmB,EAAEI,SAAS;MAC9BD,mBAAmB,EAAEC;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjB,EAAE,CAAC,wCAAwC,EAAE,YAAY;IACvD,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEI,mBAAmB,EAAE;IACvB,CAAC,CAAC;IACF,MAAMjB,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACK,QAAQ,CAACC,OAAO,CAAC;MACxDJ,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEC,mBAAmB,EAAEI,SAAS;MAC9BD,mBAAmB,EAAE;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFhB,EAAE,CAAC,oDAAoD,EAAE,YAAY;IACnE,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEI,mBAAmB,EAAE;IACvB,CAAC,CAAC;IACF,MAAMjB,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,0BACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,4CAA4C,EAAE,YAAY;IAC3D,MAAMS,UAAU,GAAGd,IAAI,CAACS,IAAI,CAACF,MAAM,EAAE,cAAc,CAAC;IACpD,MAAMH,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,4BAA4BV,UAAU,EACxC,CAAC;EACH,CAAC,CAAC;EAEFT,EAAE,CAAC,yCAAyC,EAAE,YAAY;IACxD,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCK,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IACF,MAAMb,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,gCACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,iDAAiD,EAAE,YAAY;IAChE,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,KAAK;MACvBC,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IACF,MAAMb,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,uBACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,8CAA8C,EAAE,YAAY;IAC7D,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,EAAE;MACpBC,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IACF,MAAMb,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,uBACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,gDAAgD,EAAE,YAAY;IAC/D,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE;IACpB,CAAC,CAAC;IACF,MAAMZ,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,uCACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,wDAAwD,EAAE,YAAY;IACvE,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IACF,MAAMb,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,8BACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,2DAA2D,EAAE,YAAY;IAC1E,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEC,mBAAmB,EAAE;IACvB,CAAC,CAAC;IACF,MAAMd,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,0BACF,CAAC;EACH,CAAC,CAAC;EAEFnB,EAAE,CAAC,mDAAmD,EAAE,YAAY;IAClE,MAAMS,UAAU,GAAG,MAAMF,WAAW,CAAC;MACnCI,gBAAgB,EAAE,sBAAsB;MACxCC,uBAAuB,EAAE,2CAA2C;MACpEC,mBAAmB,EAAE;IACvB,CAAC,CAAC;IACF,MAAMd,MAAM,CAACE,cAAc,CAACQ,UAAU,CAAC,CAAC,CAACS,OAAO,CAACC,OAAO,CACtD,0BACF,CAAC;EACH,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -48,10 +48,15 @@ export async function readPackConfig(configPath) {
48
48
  }
49
49
  minSupportedVersion = rawMin;
50
50
  }
51
+ let owningApplicationId;
52
+ if (config.owningApplicationId != null) {
53
+ owningApplicationId = assertNonEmptyString(config.owningApplicationId, "owningApplicationId", resolvedConfigPath);
54
+ }
51
55
  return {
52
56
  documentTypeName,
53
57
  documentTypeDescription,
54
- minSupportedVersion
58
+ minSupportedVersion,
59
+ owningApplicationId
55
60
  };
56
61
  }
57
62
  function parseMaxVersion(maxVersion) {
@@ -85,6 +90,9 @@ function parseMaxVersion(maxVersion) {
85
90
  * (`ir gen-types`, `ir asset`) read the same value. Omitting the field is
86
91
  * an explicit opt-out: the IR will not include `minSupportedVersion` and
87
92
  * downstream tools default to supporting only the latest schema version.
93
+ * - `owningApplicationId`: the application that owns this document type; when
94
+ * set, it is embedded in the payload and surfaced as `owningApplicationId`
95
+ * by `ir asset`.
88
96
  *
89
97
  * Note: this is distinct from the legacy single-version IR JSON consumed by
90
98
  * `ir zod`, which is a bare `IRealTimeDocumentSchema` (no chain, no migrations).
@@ -101,7 +109,8 @@ export async function schemaIrHandler(options) {
101
109
  const {
102
110
  documentTypeName,
103
111
  documentTypeDescription,
104
- minSupportedVersion
112
+ minSupportedVersion,
113
+ owningApplicationId
105
114
  } = await readPackConfig(config);
106
115
  if (minSupportedVersion == null) {
107
116
  consola.warn(`--config ${path.resolve(config)} does not set 'minSupportedVersion'. The generated IR will not include it, so downstream tools (ir gen-types, ir asset) will default to supporting only the latest schema version. Add 'minSupportedVersion' to your pack-config to enable back-compat.`);
@@ -124,6 +133,9 @@ export async function schemaIrHandler(options) {
124
133
  ...(minSupportedVersion != null ? {
125
134
  minSupportedVersion
126
135
  } : {}),
136
+ ...(owningApplicationId != null ? {
137
+ owningApplicationId
138
+ } : {}),
127
139
  chain
128
140
  };
129
141
  await fs.writeFile(outputPath, JSON.stringify(payload, null, 2) + "\n", "utf8");
@@ -1 +1 @@
1
- {"version":3,"file":"schemaIrHandler.js","names":["consola","fs","path","GENERATED_JSON_COMMENT","loadSchemaModule","resolveSchemaChain","assertNonEmptyString","value","field","configPath","trim","Error","JSON","stringify","readRequiredNonEmptyString","readPackConfig","resolvedConfigPath","resolve","pathExists","config","readJson","documentTypeName","documentTypeDescription","minSupportedVersion","rawMin","Number","isInteger","parseMaxVersion","maxVersion","undefined","test","schemaIrHandler","options","input","output","warn","info","schema","chain","latestVersion","name","description","outputPath","ensureDir","dirname","payload","comment","writeFile","success","length"],"sources":["schemaIrHandler.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { consola } from \"consola\";\nimport fs from \"fs-extra\";\nimport path from \"path\";\nimport { GENERATED_JSON_COMMENT } from \"../../utils/generatedFileHeader.js\";\nimport { loadSchemaModule } from \"../../utils/schema/loadSchemaModule.js\";\nimport { resolveSchemaChain } from \"../../utils/schema/resolveSchemaChain.js\";\n\ninterface SchemaIrOptions {\n input: string;\n output: string;\n config: string;\n maxVersion?: string;\n}\n\ninterface PackConfigLike {\n documentTypeName?: unknown;\n documentTypeDescription?: unknown;\n minSupportedVersion?: unknown;\n}\n\ninterface PackConfigValues {\n readonly documentTypeName: string;\n readonly documentTypeDescription: string;\n readonly minSupportedVersion?: number;\n}\n\nfunction assertNonEmptyString(value: unknown, field: string, configPath: string): string {\n if (typeof value !== \"string\" || value.trim() === \"\") {\n throw new Error(\n `'${field}' in ${configPath} must be a non-empty string, got: ${JSON.stringify(value)}`,\n );\n }\n return value;\n}\n\nfunction readRequiredNonEmptyString(\n value: unknown,\n field: string,\n configPath: string,\n): string {\n if (value == null) {\n throw new Error(\n `'${field}' is required in ${configPath} and must be a non-empty string`,\n );\n }\n return assertNonEmptyString(value, field, configPath);\n}\n\nexport async function readPackConfig(configPath: string): Promise<PackConfigValues> {\n const resolvedConfigPath = path.resolve(configPath);\n if (!(await fs.pathExists(resolvedConfigPath))) {\n throw new Error(`--config file not found: ${resolvedConfigPath}`);\n }\n const config = (await fs.readJson(resolvedConfigPath)) as PackConfigLike;\n\n const documentTypeName = readRequiredNonEmptyString(\n config.documentTypeName,\n \"documentTypeName\",\n resolvedConfigPath,\n );\n\n const documentTypeDescription = readRequiredNonEmptyString(\n config.documentTypeDescription,\n \"documentTypeDescription\",\n resolvedConfigPath,\n );\n\n let minSupportedVersion: number | undefined;\n const rawMin = config.minSupportedVersion;\n if (rawMin != null) {\n if (typeof rawMin !== \"number\" || !Number.isInteger(rawMin) || rawMin <= 0) {\n throw new Error(\n `'minSupportedVersion' in ${resolvedConfigPath} must be a positive integer, got: ${\n JSON.stringify(rawMin)\n }`,\n );\n }\n minSupportedVersion = rawMin;\n }\n\n return { documentTypeName, documentTypeDescription, minSupportedVersion };\n}\n\nfunction parseMaxVersion(maxVersion: string | undefined): number | undefined {\n if (maxVersion == null) {\n return undefined;\n }\n\n if (!/^[1-9]\\d*$/.test(maxVersion)) {\n throw new Error(\n `--max-version must be a positive integer, got: ${JSON.stringify(maxVersion)}`,\n );\n }\n\n return Number(maxVersion);\n}\n\n/**\n * Resolve a TypeScript schema module to a versioned IR chain JSON file.\n *\n * The output is a `{ latestVersion, minSupportedVersion?, chain }` payload\n * where each entry is `{ version, ir, migrations? }` and `ir` is a\n * single-version `IRealTimeDocumentSchema`. This is the input format for\n * `ir gen-types` and `ir asset`.\n *\n * `--config <pack-config.json>` is required: the pack-config is the single\n * source of truth for document-type identity. Required fields:\n * - `documentTypeName`: the document type name embedded into each chain\n * entry's IR (and surfaced as `documentTypeName` by `ir asset`).\n * - `documentTypeDescription`: document type description embedded into each\n * chain entry's IR.\n * Optional fields:\n * - `minSupportedVersion`: declares the oldest version this SDK supports;\n * when set, it must match one of the chain entries' `version` values and is\n * embedded as `minSupportedVersion` in the payload so downstream consumers\n * (`ir gen-types`, `ir asset`) read the same value. Omitting the field is\n * an explicit opt-out: the IR will not include `minSupportedVersion` and\n * downstream tools default to supporting only the latest schema version.\n *\n * Note: this is distinct from the legacy single-version IR JSON consumed by\n * `ir zod`, which is a bare `IRealTimeDocumentSchema` (no chain, no migrations).\n * Tools that previously read that format should pick the entry matching\n * `latestVersion` from `chain` and use its `ir` field.\n */\nexport async function schemaIrHandler(options: SchemaIrOptions): Promise<void> {\n const { input, output, config } = options;\n const maxVersion = parseMaxVersion(options.maxVersion);\n const { documentTypeName, documentTypeDescription, minSupportedVersion } = await readPackConfig(\n config,\n );\n\n if (minSupportedVersion == null) {\n consola.warn(\n `--config ${\n path.resolve(config)\n } does not set 'minSupportedVersion'. The generated IR will not include it, so downstream tools (ir gen-types, ir asset) will default to supporting only the latest schema version. Add 'minSupportedVersion' to your pack-config to enable back-compat.`,\n );\n }\n\n consola.info(`Loading schema from: ${input}`);\n const schema = await loadSchemaModule(input);\n\n consola.info(\"Resolving versioned IR chain...\");\n const { chain, latestVersion } = resolveSchemaChain(\n schema,\n minSupportedVersion,\n {\n name: documentTypeName,\n description: documentTypeDescription,\n },\n maxVersion,\n );\n\n const outputPath = path.resolve(output);\n await fs.ensureDir(path.dirname(outputPath));\n\n const payload = {\n comment: GENERATED_JSON_COMMENT,\n latestVersion,\n ...(minSupportedVersion != null ? { minSupportedVersion } : {}),\n chain,\n };\n await fs.writeFile(outputPath, JSON.stringify(payload, null, 2) + \"\\n\", \"utf8\");\n\n consola.success(\n `Wrote IR chain (${chain.length} version(s), min=${\n minSupportedVersion ?? latestVersion\n }, max=${latestVersion}) to: ${outputPath}`,\n );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"schemaIrHandler.js","names":["consola","fs","path","GENERATED_JSON_COMMENT","loadSchemaModule","resolveSchemaChain","assertNonEmptyString","value","field","configPath","trim","Error","JSON","stringify","readRequiredNonEmptyString","readPackConfig","resolvedConfigPath","resolve","pathExists","config","readJson","documentTypeName","documentTypeDescription","minSupportedVersion","rawMin","Number","isInteger","owningApplicationId","parseMaxVersion","maxVersion","undefined","test","schemaIrHandler","options","input","output","warn","info","schema","chain","latestVersion","name","description","outputPath","ensureDir","dirname","payload","comment","writeFile","success","length"],"sources":["schemaIrHandler.ts"],"sourcesContent":["/*\n * Copyright 2026 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { consola } from \"consola\";\nimport fs from \"fs-extra\";\nimport path from \"path\";\nimport { GENERATED_JSON_COMMENT } from \"../../utils/generatedFileHeader.js\";\nimport { loadSchemaModule } from \"../../utils/schema/loadSchemaModule.js\";\nimport { resolveSchemaChain } from \"../../utils/schema/resolveSchemaChain.js\";\n\ninterface SchemaIrOptions {\n input: string;\n output: string;\n config: string;\n maxVersion?: string;\n}\n\ninterface PackConfigLike {\n documentTypeName?: unknown;\n documentTypeDescription?: unknown;\n minSupportedVersion?: unknown;\n owningApplicationId?: unknown;\n}\n\ninterface PackConfigValues {\n readonly documentTypeName: string;\n readonly documentTypeDescription: string;\n readonly minSupportedVersion?: number;\n readonly owningApplicationId?: string;\n}\n\nfunction assertNonEmptyString(value: unknown, field: string, configPath: string): string {\n if (typeof value !== \"string\" || value.trim() === \"\") {\n throw new Error(\n `'${field}' in ${configPath} must be a non-empty string, got: ${JSON.stringify(value)}`,\n );\n }\n return value;\n}\n\nfunction readRequiredNonEmptyString(\n value: unknown,\n field: string,\n configPath: string,\n): string {\n if (value == null) {\n throw new Error(\n `'${field}' is required in ${configPath} and must be a non-empty string`,\n );\n }\n return assertNonEmptyString(value, field, configPath);\n}\n\nexport async function readPackConfig(configPath: string): Promise<PackConfigValues> {\n const resolvedConfigPath = path.resolve(configPath);\n if (!(await fs.pathExists(resolvedConfigPath))) {\n throw new Error(`--config file not found: ${resolvedConfigPath}`);\n }\n const config = (await fs.readJson(resolvedConfigPath)) as PackConfigLike;\n\n const documentTypeName = readRequiredNonEmptyString(\n config.documentTypeName,\n \"documentTypeName\",\n resolvedConfigPath,\n );\n\n const documentTypeDescription = readRequiredNonEmptyString(\n config.documentTypeDescription,\n \"documentTypeDescription\",\n resolvedConfigPath,\n );\n\n let minSupportedVersion: number | undefined;\n const rawMin = config.minSupportedVersion;\n if (rawMin != null) {\n if (typeof rawMin !== \"number\" || !Number.isInteger(rawMin) || rawMin <= 0) {\n throw new Error(\n `'minSupportedVersion' in ${resolvedConfigPath} must be a positive integer, got: ${\n JSON.stringify(rawMin)\n }`,\n );\n }\n minSupportedVersion = rawMin;\n }\n\n let owningApplicationId: string | undefined;\n if (config.owningApplicationId != null) {\n owningApplicationId = assertNonEmptyString(\n config.owningApplicationId,\n \"owningApplicationId\",\n resolvedConfigPath,\n );\n }\n\n return { documentTypeName, documentTypeDescription, minSupportedVersion, owningApplicationId };\n}\n\nfunction parseMaxVersion(maxVersion: string | undefined): number | undefined {\n if (maxVersion == null) {\n return undefined;\n }\n\n if (!/^[1-9]\\d*$/.test(maxVersion)) {\n throw new Error(\n `--max-version must be a positive integer, got: ${JSON.stringify(maxVersion)}`,\n );\n }\n\n return Number(maxVersion);\n}\n\n/**\n * Resolve a TypeScript schema module to a versioned IR chain JSON file.\n *\n * The output is a `{ latestVersion, minSupportedVersion?, chain }` payload\n * where each entry is `{ version, ir, migrations? }` and `ir` is a\n * single-version `IRealTimeDocumentSchema`. This is the input format for\n * `ir gen-types` and `ir asset`.\n *\n * `--config <pack-config.json>` is required: the pack-config is the single\n * source of truth for document-type identity. Required fields:\n * - `documentTypeName`: the document type name embedded into each chain\n * entry's IR (and surfaced as `documentTypeName` by `ir asset`).\n * - `documentTypeDescription`: document type description embedded into each\n * chain entry's IR.\n * Optional fields:\n * - `minSupportedVersion`: declares the oldest version this SDK supports;\n * when set, it must match one of the chain entries' `version` values and is\n * embedded as `minSupportedVersion` in the payload so downstream consumers\n * (`ir gen-types`, `ir asset`) read the same value. Omitting the field is\n * an explicit opt-out: the IR will not include `minSupportedVersion` and\n * downstream tools default to supporting only the latest schema version.\n * - `owningApplicationId`: the application that owns this document type; when\n * set, it is embedded in the payload and surfaced as `owningApplicationId`\n * by `ir asset`.\n *\n * Note: this is distinct from the legacy single-version IR JSON consumed by\n * `ir zod`, which is a bare `IRealTimeDocumentSchema` (no chain, no migrations).\n * Tools that previously read that format should pick the entry matching\n * `latestVersion` from `chain` and use its `ir` field.\n */\nexport async function schemaIrHandler(options: SchemaIrOptions): Promise<void> {\n const { input, output, config } = options;\n const maxVersion = parseMaxVersion(options.maxVersion);\n const { documentTypeName, documentTypeDescription, minSupportedVersion, owningApplicationId } =\n await readPackConfig(config);\n\n if (minSupportedVersion == null) {\n consola.warn(\n `--config ${\n path.resolve(config)\n } does not set 'minSupportedVersion'. The generated IR will not include it, so downstream tools (ir gen-types, ir asset) will default to supporting only the latest schema version. Add 'minSupportedVersion' to your pack-config to enable back-compat.`,\n );\n }\n\n consola.info(`Loading schema from: ${input}`);\n const schema = await loadSchemaModule(input);\n\n consola.info(\"Resolving versioned IR chain...\");\n const { chain, latestVersion } = resolveSchemaChain(\n schema,\n minSupportedVersion,\n {\n name: documentTypeName,\n description: documentTypeDescription,\n },\n maxVersion,\n );\n\n const outputPath = path.resolve(output);\n await fs.ensureDir(path.dirname(outputPath));\n\n const payload = {\n comment: GENERATED_JSON_COMMENT,\n latestVersion,\n ...(minSupportedVersion != null ? { minSupportedVersion } : {}),\n ...(owningApplicationId != null ? { owningApplicationId } : {}),\n chain,\n };\n await fs.writeFile(outputPath, JSON.stringify(payload, null, 2) + \"\\n\", \"utf8\");\n\n consola.success(\n `Wrote IR chain (${chain.length} version(s), min=${\n minSupportedVersion ?? latestVersion\n }, max=${latestVersion}) to: ${outputPath}`,\n );\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { Metadata } from '@palantir/pack.document-schema.model-types';
4
4
  import { AnimalCatSchema, AnimalDogSchema, AnimalSchema, CatSchema, DogSchema } from './schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"custom-discriminant.js","names":["Metadata","AnimalCatSchema","AnimalDogSchema","AnimalSchema","CatSchema","DogSchema","CatModel","__type","zodSchema","name","DogModel","AnimalModel","discriminant","AnimalCatModel","AnimalDogModel","DocumentModel","Cat","Dog","Animal","AnimalCat","AnimalDog","version"],"sources":["custom-discriminant.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type { Animal, AnimalCat, AnimalDog, Cat, Dog } from './types.js';\nimport {\n AnimalCatSchema,\n AnimalDogSchema,\n AnimalSchema,\n CatSchema,\n DogSchema,\n} from './schema.js';\n\nexport interface CatModel extends RecordModel<Cat, typeof CatSchema> {}\nexport const CatModel: CatModel = {\n __type: {} as Cat,\n zodSchema: CatSchema,\n [Metadata]: {\n name: 'Cat',\n },\n};\n\nexport interface DogModel extends RecordModel<Dog, typeof DogSchema> {}\nexport const DogModel: DogModel = {\n __type: {} as Dog,\n zodSchema: DogSchema,\n [Metadata]: {\n name: 'Dog',\n },\n};\n\nexport interface AnimalModel extends UnionModel<Animal, typeof AnimalSchema> {}\nexport const AnimalModel: AnimalModel = {\n __type: {} as Animal,\n zodSchema: AnimalSchema,\n [Metadata]: {\n discriminant: 'kind',\n name: 'Animal',\n },\n};\n\nexport interface AnimalCatModel extends UnionModel<\n AnimalCat,\n typeof AnimalCatSchema\n> {}\nexport const AnimalCatModel: AnimalCatModel = {\n __type: {} as AnimalCat,\n zodSchema: AnimalCatSchema,\n [Metadata]: {\n discriminant: 'kind',\n name: 'AnimalCat',\n },\n};\n\nexport interface AnimalDogModel extends UnionModel<\n AnimalDog,\n typeof AnimalDogSchema\n> {}\nexport const AnimalDogModel: AnimalDogModel = {\n __type: {} as AnimalDog,\n zodSchema: AnimalDogSchema,\n [Metadata]: {\n discriminant: 'kind',\n name: 'AnimalDog',\n },\n};\n\nexport const DocumentModel = {\n Cat: CatModel,\n Dog: DogModel,\n Animal: AnimalModel,\n AnimalCat: AnimalCatModel,\n AnimalDog: AnimalDogModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAErE,SACEC,eAAe,EACfC,eAAe,EACfC,YAAY,EACZC,SAAS,EACTC,SAAS,QACJ,aAAa;AAGpB,OAAO,MAAMC,QAAkB,GAAG;EAChCC,MAAM,EAAE,CAAC,CAAQ;EACjBC,SAAS,EAAEJ,SAAS;EACpB,CAACJ,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAGD,OAAO,MAAMC,QAAkB,GAAG;EAChCH,MAAM,EAAE,CAAC,CAAQ;EACjBC,SAAS,EAAEH,SAAS;EACpB,CAACL,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAGD,OAAO,MAAME,WAAwB,GAAG;EACtCJ,MAAM,EAAE,CAAC,CAAW;EACpBC,SAAS,EAAEL,YAAY;EACvB,CAACH,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMI,cAA8B,GAAG;EAC5CN,MAAM,EAAE,CAAC,CAAc;EACvBC,SAAS,EAAEP,eAAe;EAC1B,CAACD,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMK,cAA8B,GAAG;EAC5CP,MAAM,EAAE,CAAC,CAAc;EACvBC,SAAS,EAAEN,eAAe;EAC1B,CAACF,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMM,aAAa,GAAG;EAC3BC,GAAG,EAAEV,QAAQ;EACbW,GAAG,EAAEP,QAAQ;EACbQ,MAAM,EAAEP,WAAW;EACnBQ,SAAS,EAAEN,cAAc;EACzBO,SAAS,EAAEN,cAAc;EACzB,CAACd,QAAQ,GAAG;IACVqB,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
1
+ {"version":3,"file":"custom-discriminant.js","names":["Metadata","AnimalCatSchema","AnimalDogSchema","AnimalSchema","CatSchema","DogSchema","CatModel","__type","zodSchema","name","DogModel","AnimalModel","discriminant","AnimalCatModel","AnimalDogModel","DocumentModel","Cat","Dog","Animal","AnimalCat","AnimalDog","version"],"sources":["custom-discriminant.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type { Animal, AnimalCat, AnimalDog, Cat, Dog } from './types.js';\nimport {\n AnimalCatSchema,\n AnimalDogSchema,\n AnimalSchema,\n CatSchema,\n DogSchema,\n} from './schema.js';\n\nexport interface CatModel extends RecordModel<Cat, typeof CatSchema> {}\nexport const CatModel: CatModel = {\n __type: {} as Cat,\n zodSchema: CatSchema,\n [Metadata]: {\n name: 'Cat',\n },\n};\n\nexport interface DogModel extends RecordModel<Dog, typeof DogSchema> {}\nexport const DogModel: DogModel = {\n __type: {} as Dog,\n zodSchema: DogSchema,\n [Metadata]: {\n name: 'Dog',\n },\n};\n\nexport interface AnimalModel extends UnionModel<Animal, typeof AnimalSchema> {}\nexport const AnimalModel: AnimalModel = {\n __type: {} as Animal,\n zodSchema: AnimalSchema,\n [Metadata]: {\n discriminant: 'kind',\n name: 'Animal',\n },\n};\n\nexport interface AnimalCatModel extends UnionModel<\n AnimalCat,\n typeof AnimalCatSchema\n> {}\nexport const AnimalCatModel: AnimalCatModel = {\n __type: {} as AnimalCat,\n zodSchema: AnimalCatSchema,\n [Metadata]: {\n discriminant: 'kind',\n name: 'AnimalCat',\n },\n};\n\nexport interface AnimalDogModel extends UnionModel<\n AnimalDog,\n typeof AnimalDogSchema\n> {}\nexport const AnimalDogModel: AnimalDogModel = {\n __type: {} as AnimalDog,\n zodSchema: AnimalDogSchema,\n [Metadata]: {\n discriminant: 'kind',\n name: 'AnimalDog',\n },\n};\n\nexport const DocumentModel = {\n Cat: CatModel,\n Dog: DogModel,\n Animal: AnimalModel,\n AnimalCat: AnimalCatModel,\n AnimalDog: AnimalDogModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAErE,SACEC,eAAe,EACfC,eAAe,EACfC,YAAY,EACZC,SAAS,EACTC,SAAS,QACJ,aAAa;AAGpB,OAAO,MAAMC,QAAkB,GAAG;EAChCC,MAAM,EAAE,CAAC,CAAQ;EACjBC,SAAS,EAAEJ,SAAS;EACpB,CAACJ,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAGD,OAAO,MAAMC,QAAkB,GAAG;EAChCH,MAAM,EAAE,CAAC,CAAQ;EACjBC,SAAS,EAAEH,SAAS;EACpB,CAACL,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAGD,OAAO,MAAME,WAAwB,GAAG;EACtCJ,MAAM,EAAE,CAAC,CAAW;EACpBC,SAAS,EAAEL,YAAY;EACvB,CAACH,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMI,cAA8B,GAAG;EAC5CN,MAAM,EAAE,CAAC,CAAc;EACvBC,SAAS,EAAEP,eAAe;EAC1B,CAACD,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMK,cAA8B,GAAG;EAC5CP,MAAM,EAAE,CAAC,CAAc;EACvBC,SAAS,EAAEN,eAAe;EAC1B,CAACF,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMM,aAAa,GAAG;EAC3BC,GAAG,EAAEV,QAAQ;EACbW,GAAG,EAAEP,QAAQ;EACbQ,MAAM,EAAEP,WAAW;EACnBQ,SAAS,EAAEN,cAAc;EACzBO,SAAS,EAAEN,cAAc;EACzB,CAACd,QAAQ,GAAG;IACVqB,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { Metadata } from '@palantir/pack.document-schema.model-types';
4
4
  import { EventSchema } from './schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"external-refs.js","names":["Metadata","EventSchema","EventModel","__type","zodSchema","externalRefFieldTypes","documentRef","userRef","name","DocumentModel","Event","version"],"sources":["external-refs.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type { Event } from './types.js';\nimport { EventSchema } from './schema.js';\n\nexport interface EventModel extends RecordModel<Event, typeof EventSchema> {}\nexport const EventModel: EventModel = {\n __type: {} as Event,\n zodSchema: EventSchema,\n [Metadata]: {\n externalRefFieldTypes: {\n documentRef: 'docRef',\n userRef: 'userRef',\n },\n name: 'Event',\n },\n};\n\nexport const DocumentModel = {\n Event: EventModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAErE,SAASC,WAAW,QAAQ,aAAa;AAGzC,OAAO,MAAMC,UAAsB,GAAG;EACpCC,MAAM,EAAE,CAAC,CAAU;EACnBC,SAAS,EAAEH,WAAW;EACtB,CAACD,QAAQ,GAAG;IACVK,qBAAqB,EAAE;MACrBC,WAAW,EAAE,QAAQ;MACrBC,OAAO,EAAE;IACX,CAAC;IACDC,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG;EAC3BC,KAAK,EAAER,UAAU;EACjB,CAACF,QAAQ,GAAG;IACVW,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
1
+ {"version":3,"file":"external-refs.js","names":["Metadata","EventSchema","EventModel","__type","zodSchema","externalRefFieldTypes","documentRef","userRef","name","DocumentModel","Event","version"],"sources":["external-refs.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type { Event } from './types.js';\nimport { EventSchema } from './schema.js';\n\nexport interface EventModel extends RecordModel<Event, typeof EventSchema> {}\nexport const EventModel: EventModel = {\n __type: {} as Event,\n zodSchema: EventSchema,\n [Metadata]: {\n externalRefFieldTypes: {\n documentRef: 'docRef',\n userRef: 'userRef',\n },\n name: 'Event',\n },\n};\n\nexport const DocumentModel = {\n Event: EventModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAErE,SAASC,WAAW,QAAQ,aAAa;AAGzC,OAAO,MAAMC,UAAsB,GAAG;EACpCC,MAAM,EAAE,CAAC,CAAU;EACnBC,SAAS,EAAEH,WAAW;EACtB,CAACD,QAAQ,GAAG;IACVK,qBAAqB,EAAE;MACrBC,WAAW,EAAE,QAAQ;MACrBC,OAAO,EAAE;IACX,CAAC;IACDC,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG;EAC3BC,KAAK,EAAER,UAAU;EACjB,CAACF,QAAQ,GAAG;IACVW,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { Metadata } from '@palantir/pack.document-schema.model-types';
4
4
  import { PersonSchema } from './schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"simple-record.js","names":["Metadata","PersonSchema","PersonModel","__type","zodSchema","name","DocumentModel","Person","version"],"sources":["simple-record.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type { Person } from './types.js';\nimport { PersonSchema } from './schema.js';\n\nexport interface PersonModel extends RecordModel<Person, typeof PersonSchema> {}\nexport const PersonModel: PersonModel = {\n __type: {} as Person,\n zodSchema: PersonSchema,\n [Metadata]: {\n name: 'Person',\n },\n};\n\nexport const DocumentModel = {\n Person: PersonModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAErE,SAASC,YAAY,QAAQ,aAAa;AAG1C,OAAO,MAAMC,WAAwB,GAAG;EACtCC,MAAM,EAAE,CAAC,CAAW;EACpBC,SAAS,EAAEH,YAAY;EACvB,CAACD,QAAQ,GAAG;IACVK,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG;EAC3BC,MAAM,EAAEL,WAAW;EACnB,CAACF,QAAQ,GAAG;IACVQ,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
1
+ {"version":3,"file":"simple-record.js","names":["Metadata","PersonSchema","PersonModel","__type","zodSchema","name","DocumentModel","Person","version"],"sources":["simple-record.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type { Person } from './types.js';\nimport { PersonSchema } from './schema.js';\n\nexport interface PersonModel extends RecordModel<Person, typeof PersonSchema> {}\nexport const PersonModel: PersonModel = {\n __type: {} as Person,\n zodSchema: PersonSchema,\n [Metadata]: {\n name: 'Person',\n },\n};\n\nexport const DocumentModel = {\n Person: PersonModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAErE,SAASC,YAAY,QAAQ,aAAa;AAG1C,OAAO,MAAMC,WAAwB,GAAG;EACtCC,MAAM,EAAE,CAAC,CAAW;EACpBC,SAAS,EAAEH,YAAY;EACvB,CAACD,QAAQ,GAAG;IACVK,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMC,aAAa,GAAG;EAC3BC,MAAM,EAAEL,WAAW;EACnB,CAACF,QAAQ,GAAG;IACVQ,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { Metadata } from '@palantir/pack.document-schema.model-types';
4
4
  import { NodeObjectSchema, NodeSchema, NodeTextBoxSchema, ObjectNodeSchema, TextBoxSchema } from './schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"union-types.js","names":["Metadata","NodeObjectSchema","NodeSchema","NodeTextBoxSchema","ObjectNodeSchema","TextBoxSchema","ObjectNodeModel","__type","zodSchema","name","TextBoxModel","NodeModel","discriminant","NodeObjectModel","NodeTextBoxModel","DocumentModel","ObjectNode","TextBox","Node","NodeObject","NodeTextBox","version"],"sources":["union-types.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type {\n Node,\n NodeObject,\n NodeTextBox,\n ObjectNode,\n TextBox,\n} from './types.js';\nimport {\n NodeObjectSchema,\n NodeSchema,\n NodeTextBoxSchema,\n ObjectNodeSchema,\n TextBoxSchema,\n} from './schema.js';\n\nexport interface ObjectNodeModel extends RecordModel<\n ObjectNode,\n typeof ObjectNodeSchema\n> {}\nexport const ObjectNodeModel: ObjectNodeModel = {\n __type: {} as ObjectNode,\n zodSchema: ObjectNodeSchema,\n [Metadata]: {\n name: 'ObjectNode',\n },\n};\n\nexport interface TextBoxModel extends RecordModel<\n TextBox,\n typeof TextBoxSchema\n> {}\nexport const TextBoxModel: TextBoxModel = {\n __type: {} as TextBox,\n zodSchema: TextBoxSchema,\n [Metadata]: {\n name: 'TextBox',\n },\n};\n\nexport interface NodeModel extends UnionModel<Node, typeof NodeSchema> {}\nexport const NodeModel: NodeModel = {\n __type: {} as Node,\n zodSchema: NodeSchema,\n [Metadata]: {\n discriminant: 'type',\n name: 'Node',\n },\n};\n\nexport interface NodeObjectModel extends UnionModel<\n NodeObject,\n typeof NodeObjectSchema\n> {}\nexport const NodeObjectModel: NodeObjectModel = {\n __type: {} as NodeObject,\n zodSchema: NodeObjectSchema,\n [Metadata]: {\n discriminant: 'type',\n name: 'NodeObject',\n },\n};\n\nexport interface NodeTextBoxModel extends UnionModel<\n NodeTextBox,\n typeof NodeTextBoxSchema\n> {}\nexport const NodeTextBoxModel: NodeTextBoxModel = {\n __type: {} as NodeTextBox,\n zodSchema: NodeTextBoxSchema,\n [Metadata]: {\n discriminant: 'type',\n name: 'NodeTextBox',\n },\n};\n\nexport const DocumentModel = {\n ObjectNode: ObjectNodeModel,\n TextBox: TextBoxModel,\n Node: NodeModel,\n NodeObject: NodeObjectModel,\n NodeTextBox: NodeTextBoxModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAQrE,SACEC,gBAAgB,EAChBC,UAAU,EACVC,iBAAiB,EACjBC,gBAAgB,EAChBC,aAAa,QACR,aAAa;AAMpB,OAAO,MAAMC,eAAgC,GAAG;EAC9CC,MAAM,EAAE,CAAC,CAAe;EACxBC,SAAS,EAAEJ,gBAAgB;EAC3B,CAACJ,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMC,YAA0B,GAAG;EACxCH,MAAM,EAAE,CAAC,CAAY;EACrBC,SAAS,EAAEH,aAAa;EACxB,CAACL,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAGD,OAAO,MAAME,SAAoB,GAAG;EAClCJ,MAAM,EAAE,CAAC,CAAS;EAClBC,SAAS,EAAEN,UAAU;EACrB,CAACF,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMI,eAAgC,GAAG;EAC9CN,MAAM,EAAE,CAAC,CAAe;EACxBC,SAAS,EAAEP,gBAAgB;EAC3B,CAACD,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMK,gBAAkC,GAAG;EAChDP,MAAM,EAAE,CAAC,CAAgB;EACzBC,SAAS,EAAEL,iBAAiB;EAC5B,CAACH,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMM,aAAa,GAAG;EAC3BC,UAAU,EAAEV,eAAe;EAC3BW,OAAO,EAAEP,YAAY;EACrBQ,IAAI,EAAEP,SAAS;EACfQ,UAAU,EAAEN,eAAe;EAC3BO,WAAW,EAAEN,gBAAgB;EAC7B,CAACd,QAAQ,GAAG;IACVqB,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
1
+ {"version":3,"file":"union-types.js","names":["Metadata","NodeObjectSchema","NodeSchema","NodeTextBoxSchema","ObjectNodeSchema","TextBoxSchema","ObjectNodeModel","__type","zodSchema","name","TextBoxModel","NodeModel","discriminant","NodeObjectModel","NodeTextBoxModel","DocumentModel","ObjectNode","TextBox","Node","NodeObject","NodeTextBox","version"],"sources":["union-types.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport type {\n DocumentSchema,\n RecordModel,\n UnionModel,\n} from '@palantir/pack.document-schema.model-types';\nimport { Metadata } from '@palantir/pack.document-schema.model-types';\nimport type {\n Node,\n NodeObject,\n NodeTextBox,\n ObjectNode,\n TextBox,\n} from './types.js';\nimport {\n NodeObjectSchema,\n NodeSchema,\n NodeTextBoxSchema,\n ObjectNodeSchema,\n TextBoxSchema,\n} from './schema.js';\n\nexport interface ObjectNodeModel extends RecordModel<\n ObjectNode,\n typeof ObjectNodeSchema\n> {}\nexport const ObjectNodeModel: ObjectNodeModel = {\n __type: {} as ObjectNode,\n zodSchema: ObjectNodeSchema,\n [Metadata]: {\n name: 'ObjectNode',\n },\n};\n\nexport interface TextBoxModel extends RecordModel<\n TextBox,\n typeof TextBoxSchema\n> {}\nexport const TextBoxModel: TextBoxModel = {\n __type: {} as TextBox,\n zodSchema: TextBoxSchema,\n [Metadata]: {\n name: 'TextBox',\n },\n};\n\nexport interface NodeModel extends UnionModel<Node, typeof NodeSchema> {}\nexport const NodeModel: NodeModel = {\n __type: {} as Node,\n zodSchema: NodeSchema,\n [Metadata]: {\n discriminant: 'type',\n name: 'Node',\n },\n};\n\nexport interface NodeObjectModel extends UnionModel<\n NodeObject,\n typeof NodeObjectSchema\n> {}\nexport const NodeObjectModel: NodeObjectModel = {\n __type: {} as NodeObject,\n zodSchema: NodeObjectSchema,\n [Metadata]: {\n discriminant: 'type',\n name: 'NodeObject',\n },\n};\n\nexport interface NodeTextBoxModel extends UnionModel<\n NodeTextBox,\n typeof NodeTextBoxSchema\n> {}\nexport const NodeTextBoxModel: NodeTextBoxModel = {\n __type: {} as NodeTextBox,\n zodSchema: NodeTextBoxSchema,\n [Metadata]: {\n discriminant: 'type',\n name: 'NodeTextBox',\n },\n};\n\nexport const DocumentModel = {\n ObjectNode: ObjectNodeModel,\n TextBox: TextBoxModel,\n Node: NodeModel,\n NodeObject: NodeObjectModel,\n NodeTextBox: NodeTextBoxModel,\n [Metadata]: {\n version: 1,\n },\n} as const satisfies DocumentSchema;\n\nexport type DocumentModel = typeof DocumentModel;\n"],"mappings":"AAAA;;AAOA,SAASA,QAAQ,QAAQ,4CAA4C;AAQrE,SACEC,gBAAgB,EAChBC,UAAU,EACVC,iBAAiB,EACjBC,gBAAgB,EAChBC,aAAa,QACR,aAAa;AAMpB,OAAO,MAAMC,eAAgC,GAAG;EAC9CC,MAAM,EAAE,CAAC,CAAe;EACxBC,SAAS,EAAEJ,gBAAgB;EAC3B,CAACJ,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMC,YAA0B,GAAG;EACxCH,MAAM,EAAE,CAAC,CAAY;EACrBC,SAAS,EAAEH,aAAa;EACxB,CAACL,QAAQ,GAAG;IACVS,IAAI,EAAE;EACR;AACF,CAAC;AAGD,OAAO,MAAME,SAAoB,GAAG;EAClCJ,MAAM,EAAE,CAAC,CAAS;EAClBC,SAAS,EAAEN,UAAU;EACrB,CAACF,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMI,eAAgC,GAAG;EAC9CN,MAAM,EAAE,CAAC,CAAe;EACxBC,SAAS,EAAEP,gBAAgB;EAC3B,CAACD,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAMD,OAAO,MAAMK,gBAAkC,GAAG;EAChDP,MAAM,EAAE,CAAC,CAAgB;EACzBC,SAAS,EAAEL,iBAAiB;EAC5B,CAACH,QAAQ,GAAG;IACVY,YAAY,EAAE,MAAM;IACpBH,IAAI,EAAE;EACR;AACF,CAAC;AAED,OAAO,MAAMM,aAAa,GAAG;EAC3BC,UAAU,EAAEV,eAAe;EAC3BW,OAAO,EAAEP,YAAY;EACrBQ,IAAI,EAAEP,SAAS;EACfQ,UAAU,EAAEN,eAAe;EAC3BO,WAAW,EAAEN,gBAAgB;EAC7B,CAACd,QAAQ,GAAG;IACVqB,OAAO,EAAE;EACX;AACF,CAAmC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { z } from 'zod';
4
4
  export const ContainerSchema = z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"array-and-map-types.js","names":["z","ContainerSchema","object","tags","array","string","metadata","record","unknown"],"sources":["array-and-map-types.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport { z } from 'zod';\n\nexport const ContainerSchema = z.object({\n tags: z.array(z.string()),\n metadata: z.record(z.string(), z.unknown()),\n});\n"],"mappings":"AAAA;;AAEA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,eAAe,GAAGD,CAAC,CAACE,MAAM,CAAC;EACtCC,IAAI,EAAEH,CAAC,CAACI,KAAK,CAACJ,CAAC,CAACK,MAAM,CAAC,CAAC,CAAC;EACzBC,QAAQ,EAAEN,CAAC,CAACO,MAAM,CAACP,CAAC,CAACK,MAAM,CAAC,CAAC,EAAEL,CAAC,CAACQ,OAAO,CAAC,CAAC;AAC5C,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"array-and-map-types.js","names":["z","ContainerSchema","object","tags","array","string","metadata","record","unknown"],"sources":["array-and-map-types.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport { z } from 'zod';\n\nexport const ContainerSchema = z.object({\n tags: z.array(z.string()),\n metadata: z.record(z.string(), z.unknown()),\n});\n"],"mappings":"AAAA;;AAEA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,eAAe,GAAGD,CAAC,CAACE,MAAM,CAAC;EACtCC,IAAI,EAAEH,CAAC,CAACI,KAAK,CAACJ,CAAC,CAACK,MAAM,CAAC,CAAC,CAAC;EACzBC,QAAQ,EAAEN,CAAC,CAACO,MAAM,CAACP,CAAC,CAACK,MAAM,CAAC,CAAC,EAAEL,CAAC,CAACQ,OAAO,CAAC,CAAC;AAC5C,CAAC,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { z } from 'zod';
4
4
  export const FeatureSchema = z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"boolean-fields.js","names":["z","FeatureSchema","object","enabled","boolean","isPublic","optional","flags","array"],"sources":["boolean-fields.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport { z } from 'zod';\n\nexport const FeatureSchema = z.object({\n enabled: z.boolean(),\n isPublic: z.boolean().optional(),\n flags: z.array(z.boolean()),\n});\n"],"mappings":"AAAA;;AAEA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,aAAa,GAAGD,CAAC,CAACE,MAAM,CAAC;EACpCC,OAAO,EAAEH,CAAC,CAACI,OAAO,CAAC,CAAC;EACpBC,QAAQ,EAAEL,CAAC,CAACI,OAAO,CAAC,CAAC,CAACE,QAAQ,CAAC,CAAC;EAChCC,KAAK,EAAEP,CAAC,CAACQ,KAAK,CAACR,CAAC,CAACI,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"boolean-fields.js","names":["z","FeatureSchema","object","enabled","boolean","isPublic","optional","flags","array"],"sources":["boolean-fields.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport { z } from 'zod';\n\nexport const FeatureSchema = z.object({\n enabled: z.boolean(),\n isPublic: z.boolean().optional(),\n flags: z.array(z.boolean()),\n});\n"],"mappings":"AAAA;;AAEA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,aAAa,GAAGD,CAAC,CAACE,MAAM,CAAC;EACpCC,OAAO,EAAEH,CAAC,CAACI,OAAO,CAAC,CAAC;EACpBC,QAAQ,EAAEL,CAAC,CAACI,OAAO,CAAC,CAAC,CAACE,QAAQ,CAAC,CAAC;EAChCC,KAAK,EAAEP,CAAC,CAACQ,KAAK,CAACR,CAAC,CAACI,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { z } from 'zod';
4
4
  export const CatSchema = z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"custom-discriminant.js","names":["z","CatSchema","object","meow","string","DogSchema","bark","AnimalCatSchema","extend","kind","literal","AnimalDogSchema","AnimalSchema","discriminatedUnion"],"sources":["custom-discriminant.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */\n\nimport { z } from 'zod';\n\nexport const CatSchema = z.object({\n meow: z.string(),\n});\n\nexport const DogSchema = z.object({\n bark: z.string(),\n});\n\nexport const AnimalCatSchema = CatSchema.extend({\n kind: z.literal('cat'),\n});\n\nexport const AnimalDogSchema = DogSchema.extend({\n kind: z.literal('dog'),\n});\n\nexport const AnimalSchema = z.discriminatedUnion('kind', [\n AnimalCatSchema,\n AnimalDogSchema,\n]);\n"],"mappings":"AAAA;;AAEA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,SAAS,GAAGD,CAAC,CAACE,MAAM,CAAC;EAChCC,IAAI,EAAEH,CAAC,CAACI,MAAM,CAAC;AACjB,CAAC,CAAC;AAEF,OAAO,MAAMC,SAAS,GAAGL,CAAC,CAACE,MAAM,CAAC;EAChCI,IAAI,EAAEN,CAAC,CAACI,MAAM,CAAC;AACjB,CAAC,CAAC;AAEF,OAAO,MAAMG,eAAe,GAAGN,SAAS,CAACO,MAAM,CAAC;EAC9CC,IAAI,EAAET,CAAC,CAACU,OAAO,CAAC,KAAK;AACvB,CAAC,CAAC;AAEF,OAAO,MAAMC,eAAe,GAAGN,SAAS,CAACG,MAAM,CAAC;EAC9CC,IAAI,EAAET,CAAC,CAACU,OAAO,CAAC,KAAK;AACvB,CAAC,CAAC;AAEF,OAAO,MAAME,YAAY,GAAGZ,CAAC,CAACa,kBAAkB,CAAC,MAAM,EAAE,CACvDN,eAAe,EACfI,eAAe,CAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"custom-discriminant.js","names":["z","CatSchema","object","meow","string","DogSchema","bark","AnimalCatSchema","extend","kind","literal","AnimalDogSchema","AnimalSchema","discriminatedUnion"],"sources":["custom-discriminant.ts"],"sourcesContent":["/* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */\n\nimport { z } from 'zod';\n\nexport const CatSchema = z.object({\n meow: z.string(),\n});\n\nexport const DogSchema = z.object({\n bark: z.string(),\n});\n\nexport const AnimalCatSchema = CatSchema.extend({\n kind: z.literal('cat'),\n});\n\nexport const AnimalDogSchema = DogSchema.extend({\n kind: z.literal('dog'),\n});\n\nexport const AnimalSchema = z.discriminatedUnion('kind', [\n AnimalCatSchema,\n AnimalDogSchema,\n]);\n"],"mappings":"AAAA;;AAEA,SAASA,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,SAAS,GAAGD,CAAC,CAACE,MAAM,CAAC;EAChCC,IAAI,EAAEH,CAAC,CAACI,MAAM,CAAC;AACjB,CAAC,CAAC;AAEF,OAAO,MAAMC,SAAS,GAAGL,CAAC,CAACE,MAAM,CAAC;EAChCI,IAAI,EAAEN,CAAC,CAACI,MAAM,CAAC;AACjB,CAAC,CAAC;AAEF,OAAO,MAAMG,eAAe,GAAGN,SAAS,CAACO,MAAM,CAAC;EAC9CC,IAAI,EAAET,CAAC,CAACU,OAAO,CAAC,KAAK;AACvB,CAAC,CAAC;AAEF,OAAO,MAAMC,eAAe,GAAGN,SAAS,CAACG,MAAM,CAAC;EAC9CC,IAAI,EAAET,CAAC,CAACU,OAAO,CAAC,KAAK;AACvB,CAAC,CAAC;AAEF,OAAO,MAAME,YAAY,GAAGZ,CAAC,CAACa,kBAAkB,CAAC,MAAM,EAAE,CACvDN,eAAe,EACfI,eAAe,CAChB,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- /* Generated by @palantir/pack.document-schema.type-gen@0.16.0 */
1
+ /* Generated by @palantir/pack.document-schema.type-gen@0.18.0 */
2
2
 
3
3
  import { z } from 'zod';
4
4
  export const EventSchema = z.object({