@osdk/maker 0.14.0-beta.2 → 0.14.0-beta.4

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 (120) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/build/browser/api/defineAction.js +121 -413
  3. package/build/browser/api/defineAction.js.map +1 -1
  4. package/build/browser/api/defineCreateInterfaceObjectAction.js +69 -0
  5. package/build/browser/api/defineCreateInterfaceObjectAction.js.map +1 -0
  6. package/build/browser/api/defineCreateObjectAction.js +76 -0
  7. package/build/browser/api/defineCreateObjectAction.js.map +1 -0
  8. package/build/browser/api/defineCreateOrModifyObjectAction.js +92 -0
  9. package/build/browser/api/defineCreateOrModifyObjectAction.js.map +1 -0
  10. package/build/browser/api/defineDeleteObjectAction.js +56 -0
  11. package/build/browser/api/defineDeleteObjectAction.js.map +1 -0
  12. package/build/browser/api/defineModifyInterfaceObjectAction.js +68 -0
  13. package/build/browser/api/defineModifyInterfaceObjectAction.js.map +1 -0
  14. package/build/browser/api/defineModifyObjectAction.js +91 -0
  15. package/build/browser/api/defineModifyObjectAction.js.map +1 -0
  16. package/build/browser/api/test/actions.test.js +12014 -0
  17. package/build/browser/api/test/actions.test.js.map +1 -0
  18. package/build/browser/api/test/interfaces.test.js +924 -0
  19. package/build/browser/api/test/interfaces.test.js.map +1 -0
  20. package/build/browser/api/test/links.test.js +1974 -0
  21. package/build/browser/api/test/links.test.js.map +1 -0
  22. package/build/browser/api/{markingconstraint.test.js → test/markingconstraint.test.js} +28 -2
  23. package/build/browser/api/test/markingconstraint.test.js.map +1 -0
  24. package/build/browser/api/test/misc.test.js +1058 -0
  25. package/build/browser/api/test/misc.test.js.map +1 -0
  26. package/build/browser/api/{objectStatus.test.js → test/objectStatus.test.js} +2 -2
  27. package/build/browser/api/test/objectStatus.test.js.map +1 -0
  28. package/build/browser/api/test/objects.test.js +1494 -0
  29. package/build/browser/api/test/objects.test.js.map +1 -0
  30. package/build/browser/api/test/spt.test.js +387 -0
  31. package/build/browser/api/test/spt.test.js.map +1 -0
  32. package/build/browser/api/test/valueTypes.test.js +156 -0
  33. package/build/browser/api/test/valueTypes.test.js.map +1 -0
  34. package/build/browser/cli/main.js +1 -1
  35. package/build/browser/index.js +7 -1
  36. package/build/browser/index.js.map +1 -1
  37. package/build/cjs/index.cjs +561 -503
  38. package/build/cjs/index.cjs.map +1 -1
  39. package/build/cjs/index.d.cts +27 -13
  40. package/build/esm/api/defineAction.js +121 -413
  41. package/build/esm/api/defineAction.js.map +1 -1
  42. package/build/esm/api/defineCreateInterfaceObjectAction.js +69 -0
  43. package/build/esm/api/defineCreateInterfaceObjectAction.js.map +1 -0
  44. package/build/esm/api/defineCreateObjectAction.js +76 -0
  45. package/build/esm/api/defineCreateObjectAction.js.map +1 -0
  46. package/build/esm/api/defineCreateOrModifyObjectAction.js +92 -0
  47. package/build/esm/api/defineCreateOrModifyObjectAction.js.map +1 -0
  48. package/build/esm/api/defineDeleteObjectAction.js +56 -0
  49. package/build/esm/api/defineDeleteObjectAction.js.map +1 -0
  50. package/build/esm/api/defineModifyInterfaceObjectAction.js +68 -0
  51. package/build/esm/api/defineModifyInterfaceObjectAction.js.map +1 -0
  52. package/build/esm/api/defineModifyObjectAction.js +91 -0
  53. package/build/esm/api/defineModifyObjectAction.js.map +1 -0
  54. package/build/esm/api/test/actions.test.js +12014 -0
  55. package/build/esm/api/test/actions.test.js.map +1 -0
  56. package/build/esm/api/test/interfaces.test.js +924 -0
  57. package/build/esm/api/test/interfaces.test.js.map +1 -0
  58. package/build/esm/api/test/links.test.js +1974 -0
  59. package/build/esm/api/test/links.test.js.map +1 -0
  60. package/build/esm/api/{markingconstraint.test.js → test/markingconstraint.test.js} +28 -2
  61. package/build/esm/api/test/markingconstraint.test.js.map +1 -0
  62. package/build/esm/api/test/misc.test.js +1058 -0
  63. package/build/esm/api/test/misc.test.js.map +1 -0
  64. package/build/esm/api/{objectStatus.test.js → test/objectStatus.test.js} +2 -2
  65. package/build/esm/api/test/objectStatus.test.js.map +1 -0
  66. package/build/esm/api/test/objects.test.js +1494 -0
  67. package/build/esm/api/test/objects.test.js.map +1 -0
  68. package/build/esm/api/test/spt.test.js +387 -0
  69. package/build/esm/api/test/spt.test.js.map +1 -0
  70. package/build/esm/api/test/valueTypes.test.js +156 -0
  71. package/build/esm/api/test/valueTypes.test.js.map +1 -0
  72. package/build/esm/cli/main.js +1 -1
  73. package/build/esm/index.js +7 -1
  74. package/build/esm/index.js.map +1 -1
  75. package/build/types/api/defineAction.d.ts +22 -6
  76. package/build/types/api/defineAction.d.ts.map +1 -1
  77. package/build/types/api/defineCreateInterfaceObjectAction.d.ts +3 -0
  78. package/build/types/api/defineCreateInterfaceObjectAction.d.ts.map +1 -0
  79. package/build/types/api/defineCreateObjectAction.d.ts +3 -0
  80. package/build/types/api/defineCreateObjectAction.d.ts.map +1 -0
  81. package/build/types/api/defineCreateOrModifyObjectAction.d.ts +3 -0
  82. package/build/types/api/defineCreateOrModifyObjectAction.d.ts.map +1 -0
  83. package/build/types/api/defineDeleteObjectAction.d.ts +3 -0
  84. package/build/types/api/defineDeleteObjectAction.d.ts.map +1 -0
  85. package/build/types/api/defineModifyInterfaceObjectAction.d.ts +3 -0
  86. package/build/types/api/defineModifyInterfaceObjectAction.d.ts.map +1 -0
  87. package/build/types/api/defineModifyObjectAction.d.ts +3 -0
  88. package/build/types/api/defineModifyObjectAction.d.ts.map +1 -0
  89. package/build/types/api/test/actions.test.d.ts.map +1 -0
  90. package/build/types/api/test/interfaces.test.d.ts.map +1 -0
  91. package/build/types/api/test/links.test.d.ts.map +1 -0
  92. package/build/types/api/test/markingconstraint.test.d.ts +1 -0
  93. package/build/types/api/test/markingconstraint.test.d.ts.map +1 -0
  94. package/build/types/api/test/misc.test.d.ts +1 -0
  95. package/build/types/api/test/misc.test.d.ts.map +1 -0
  96. package/build/types/api/test/objectStatus.test.d.ts +1 -0
  97. package/build/types/api/test/objectStatus.test.d.ts.map +1 -0
  98. package/build/types/api/test/objects.test.d.ts +1 -0
  99. package/build/types/api/test/objects.test.d.ts.map +1 -0
  100. package/build/types/api/test/spt.test.d.ts +1 -0
  101. package/build/types/api/test/spt.test.d.ts.map +1 -0
  102. package/build/types/api/test/valueTypes.test.d.ts +1 -0
  103. package/build/types/api/test/valueTypes.test.d.ts.map +1 -0
  104. package/build/types/index.d.ts +7 -1
  105. package/build/types/index.d.ts.map +1 -1
  106. package/package.json +3 -3
  107. package/build/browser/api/markingconstraint.test.js.map +0 -1
  108. package/build/browser/api/objectStatus.test.js.map +0 -1
  109. package/build/browser/api/overall.test.js +0 -14002
  110. package/build/browser/api/overall.test.js.map +0 -1
  111. package/build/esm/api/markingconstraint.test.js.map +0 -1
  112. package/build/esm/api/objectStatus.test.js.map +0 -1
  113. package/build/esm/api/overall.test.js +0 -14002
  114. package/build/esm/api/overall.test.js.map +0 -1
  115. package/build/types/api/markingconstraint.test.d.ts.map +0 -1
  116. package/build/types/api/objectStatus.test.d.ts.map +0 -1
  117. package/build/types/api/overall.test.d.ts.map +0 -1
  118. /package/build/types/api/{markingconstraint.test.d.ts → test/actions.test.d.ts} +0 -0
  119. /package/build/types/api/{objectStatus.test.d.ts → test/interfaces.test.d.ts} +0 -0
  120. /package/build/types/api/{overall.test.d.ts → test/links.test.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.test.js","names":["fs","path","fileURLToPath","beforeEach","describe","expect","it","addDependency","OntologyEntityTypeEnum","defineInterface","defineObject","defineOntology","dumpOntologyFullMetadata","defineSharedPropertyType","importOntologyEntity","importSharedPropertyType","id","apiName","packageName","typeHint","properties","toMatchInlineSnapshot","spt","nonNameSpacedApiName","type","__type","SHARED_PROPERTY_TYPE","generatedDir","resolve","join","__dirname","mySpt","myInterface","titlePropertyApiName","displayName","pluralDisplayName","primaryKeyPropertyApiName","implementsInterfaces","implements","propertyMapping","interfaceProperty","mapsTo","readFileSync","rmSync","recursive","force","parentInterface","property1","property2","extends","iProperty1","childInterface","iProperty2","import","meta","url","packageJson","JSON","parse","version","toBeDefined","toContain"],"sources":["misc.test.ts"],"sourcesContent":["/*\n * Copyright 2024 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 * as fs from \"fs\";\nimport path from \"path\";\nimport { fileURLToPath } from \"url\";\nimport { beforeEach, describe, expect, it } from \"vitest\";\nimport { addDependency } from \"../addDependency.js\";\nimport { OntologyEntityTypeEnum } from \"../common/OntologyEntityTypeEnum.js\";\nimport { defineInterface } from \"../defineInterface.js\";\nimport { defineObject } from \"../defineObject.js\";\nimport { defineOntology, dumpOntologyFullMetadata } from \"../defineOntology.js\";\nimport { defineSharedPropertyType } from \"../defineSpt.js\";\nimport { importOntologyEntity } from \"../importOntologyEntity.js\";\nimport { importSharedPropertyType } from \"../importSharedPropertyType.js\";\nimport { type SharedPropertyType } from \"../properties/SharedPropertyType.js\";\n\ndescribe(\"Miscellaneous Tests\", () => {\n beforeEach(async () => {\n await defineOntology(\"com.palantir.\", () => {}, \"/tmp/\");\n });\n\n describe(\"Imports\", () => {\n it(\"Legacy importing works\", () => {\n const id = importSharedPropertyType({\n apiName: \"id\",\n packageName: \"com.palantir.core.ontology.types\",\n typeHint: \"string\",\n });\n const myInterface = defineInterface({\n apiName: \"myInterface\",\n properties: {\n id,\n },\n });\n expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`\n {\n \"importedOntology\": {\n \"actionTypes\": {},\n \"blockPermissionInformation\": {\n \"actionTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n },\n \"interfaceTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n \"sharedPropertyTypes\": {\n \"com.palantir.core.ontology.types.id\": {\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.palantir.core.ontology.types.id\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"com.palantir.core.ontology.types.id\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [],\n \"valueType\": undefined,\n },\n },\n },\n },\n \"importedValueTypes\": {\n \"valueTypes\": [],\n },\n \"ontology\": {\n \"actionTypes\": {},\n \"blockPermissionInformation\": {\n \"actionTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n },\n \"interfaceTypes\": {\n \"com.palantir.myInterface\": {\n \"interfaceType\": {\n \"apiName\": \"com.palantir.myInterface\",\n \"displayMetadata\": {\n \"description\": \"myInterface\",\n \"displayName\": \"myInterface\",\n \"icon\": {\n \"blueprint\": {\n \"color\": \"#4C90F0\",\n \"locator\": \"layout-hierarchy\",\n },\n \"type\": \"blueprint\",\n },\n },\n \"extendsInterfaces\": [],\n \"links\": [],\n \"properties\": [],\n \"propertiesV2\": {\n \"com.palantir.core.ontology.types.id\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.palantir.core.ontology.types.id\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"com.palantir.core.ontology.types.id\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [],\n \"valueType\": undefined,\n },\n },\n },\n \"propertiesV3\": {},\n \"searchable\": true,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n },\n },\n },\n \"linkTypes\": {},\n \"objectTypes\": {},\n \"sharedPropertyTypes\": {},\n },\n \"randomnessKey\": undefined,\n \"valueTypes\": {\n \"valueTypes\": [],\n },\n }\n `);\n });\n it(\"Simple importing works\", () => {\n // does the same as \"import { spt } from '@other/package'\"\n const spt: SharedPropertyType = {\n apiName: \"com.other.package.spt\",\n nonNameSpacedApiName: \"spt\",\n type: \"string\",\n __type: OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE,\n };\n importOntologyEntity(spt);\n\n const myInterface = defineInterface({\n apiName: \"myInterface\",\n properties: {\n spt,\n },\n });\n expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`\n {\n \"importedOntology\": {\n \"actionTypes\": {},\n \"blockPermissionInformation\": {\n \"actionTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n },\n \"interfaceTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n \"sharedPropertyTypes\": {\n \"com.other.package.spt\": {\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.other.package.spt\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"com.other.package.spt\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [],\n \"valueType\": undefined,\n },\n },\n },\n },\n \"importedValueTypes\": {\n \"valueTypes\": [],\n },\n \"ontology\": {\n \"actionTypes\": {},\n \"blockPermissionInformation\": {\n \"actionTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n },\n \"interfaceTypes\": {\n \"com.palantir.myInterface\": {\n \"interfaceType\": {\n \"apiName\": \"com.palantir.myInterface\",\n \"displayMetadata\": {\n \"description\": \"myInterface\",\n \"displayName\": \"myInterface\",\n \"icon\": {\n \"blueprint\": {\n \"color\": \"#4C90F0\",\n \"locator\": \"layout-hierarchy\",\n },\n \"type\": \"blueprint\",\n },\n },\n \"extendsInterfaces\": [],\n \"links\": [],\n \"properties\": [],\n \"propertiesV2\": {\n \"com.other.package.spt\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.other.package.spt\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"com.other.package.spt\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [],\n \"valueType\": undefined,\n },\n },\n },\n \"propertiesV3\": {},\n \"searchable\": true,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n },\n },\n },\n \"linkTypes\": {},\n \"objectTypes\": {},\n \"sharedPropertyTypes\": {},\n },\n \"randomnessKey\": undefined,\n \"valueTypes\": {\n \"valueTypes\": [],\n },\n }\n `);\n });\n it(\"Export files are generated correctly\", async () => {\n const generatedDir = path.resolve(path.join(\n __dirname,\n \"..\",\n \"generatedNoCheck\",\n \"export_files_are_generated_correctly\",\n ));\n await defineOntology(\"com.my.package.\", () => {\n const mySpt = defineSharedPropertyType({\n apiName: \"mySpt\",\n type: \"string\",\n });\n const myInterface = defineInterface({\n apiName: \"myInterface\",\n properties: {\n mySpt,\n },\n });\n const myObject = defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"My Object\",\n pluralDisplayName: \"myObjects\",\n apiName: \"myObject\",\n primaryKeyPropertyApiName: \"bar\",\n properties: { \"bar\": { type: \"string\" } },\n implementsInterfaces: [{\n implements: myInterface,\n propertyMapping: [{\n interfaceProperty: \"com.my.package.mySpt\",\n mapsTo: \"bar\",\n }],\n }],\n });\n }, generatedDir);\n\n expect(\n fs.readFileSync(\n path.join(generatedDir, \"codegen/interface-types/myInterface.ts\"),\n \"utf8\",\n ),\n ).toMatchInlineSnapshot(`\n \"\n import { wrapWithProxy, OntologyEntityTypeEnum } from '@osdk/maker';\n import type { InterfaceType } from '@osdk/maker';\n\n /** @type {import('@osdk/maker').InterfaceType} */\n const myInterface_base: InterfaceType = {\n \"apiName\": \"com.my.package.myInterface\",\n \"displayMetadata\": {\n \"displayName\": \"myInterface\",\n \"description\": \"myInterface\"\n },\n \"extendsInterfaces\": [],\n \"links\": [],\n \"status\": {\n \"type\": \"active\",\n \"active\": {}\n },\n \"propertiesV2\": {\n \"com.my.package.mySpt\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"apiName\": \"com.my.package.mySpt\",\n \"type\": \"string\",\n \"nonNameSpacedApiName\": \"mySpt\",\n \"displayName\": \"mySpt\",\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\"\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\"\n }\n ],\n \"__type\": OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE\n }\n }\n },\n \"searchable\": true,\n \"__type\": OntologyEntityTypeEnum.INTERFACE_TYPE\n } as unknown as InterfaceType;\n \n export const myInterface: InterfaceType = wrapWithProxy(myInterface_base);\n \"\n `);\n\n expect(\n fs.readFileSync(\n path.join(generatedDir, \"codegen/object-types/myObject.ts\"),\n \"utf8\",\n ),\n ).toMatchInlineSnapshot(`\n \"\n import { wrapWithProxy, OntologyEntityTypeEnum } from '@osdk/maker';\n import type { ObjectType } from '@osdk/maker';\n\n /** @type {import('@osdk/maker').ObjectType} */\n const myObject_base: ObjectType = {\n \"titlePropertyApiName\": \"bar\",\n \"displayName\": \"My Object\",\n \"pluralDisplayName\": \"myObjects\",\n \"apiName\": \"com.my.package.myObject\",\n \"primaryKeyPropertyApiName\": \"bar\",\n \"properties\": [\n {\n \"type\": \"string\",\n \"apiName\": \"bar\",\n \"displayName\": \"Bar\"\n }\n ],\n \"implementsInterfaces\": [\n {\n \"implements\": {\n \"apiName\": \"com.my.package.myInterface\",\n \"displayMetadata\": {\n \"displayName\": \"myInterface\",\n \"description\": \"myInterface\"\n },\n \"extendsInterfaces\": [],\n \"links\": [],\n \"status\": {\n \"type\": \"active\",\n \"active\": {}\n },\n \"propertiesV2\": {\n \"com.my.package.mySpt\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"apiName\": \"com.my.package.mySpt\",\n \"type\": \"string\",\n \"nonNameSpacedApiName\": \"mySpt\",\n \"displayName\": \"mySpt\",\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\"\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\"\n }\n ],\n \"__type\": OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE\n }\n }\n },\n \"searchable\": true,\n \"__type\": OntologyEntityTypeEnum.INTERFACE_TYPE\n },\n \"propertyMapping\": [\n {\n \"interfaceProperty\": \"com.my.package.mySpt\",\n \"mapsTo\": \"bar\"\n }\n ]\n }\n ],\n \"__type\": OntologyEntityTypeEnum.OBJECT_TYPE\n } as unknown as ObjectType;\n \n export const myObject: ObjectType = wrapWithProxy(myObject_base);\n \"\n `);\n\n expect(\n fs.readFileSync(\n path.join(generatedDir, \"codegen/shared-property-types/mySpt.ts\"),\n \"utf8\",\n ),\n ).toMatchInlineSnapshot(`\n \"\n import { wrapWithProxy, OntologyEntityTypeEnum } from '@osdk/maker';\n import type { SharedPropertyType } from '@osdk/maker';\n\n /** @type {import('@osdk/maker').SharedPropertyType} */\n const mySpt_base: SharedPropertyType = {\n \"apiName\": \"com.my.package.mySpt\",\n \"type\": \"string\",\n \"nonNameSpacedApiName\": \"mySpt\",\n \"displayName\": \"mySpt\",\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\"\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\"\n }\n ],\n \"__type\": OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE\n } as unknown as SharedPropertyType;\n \n export const mySpt: SharedPropertyType = wrapWithProxy(mySpt_base);\n \"\n `);\n fs.rmSync(path.resolve(path.join(generatedDir, \"..\")), {\n recursive: true,\n force: true,\n });\n });\n it(\"Extended interfaces are propagated to the static objects\", async () => {\n const generatedDir = path.resolve(path.join(\n __dirname,\n \"..\",\n \"generatedNoCheck\",\n \"extended_interfaces_are_propagated_to_the_static_objects\",\n ));\n await defineOntology(\"com.palantir.\", () => {\n const parentInterface = defineInterface({\n apiName: \"parentInterface\",\n properties: {\n property1: \"string\",\n },\n });\n const childInterface = defineInterface({\n apiName: \"childInterface\",\n properties: {\n property2: \"string\",\n },\n extends: [parentInterface],\n });\n }, generatedDir);\n\n expect(\n fs.readFileSync(\n path.join(generatedDir, \"codegen/interface-types/childInterface.ts\"),\n \"utf8\",\n ),\n ).toMatchInlineSnapshot(`\n \"\n import { wrapWithProxy, OntologyEntityTypeEnum } from '@osdk/maker';\n import type { InterfaceType } from '@osdk/maker';\n\n /** @type {import('@osdk/maker').InterfaceType} */\n const childInterface_base: InterfaceType = {\n \"apiName\": \"com.palantir.childInterface\",\n \"displayMetadata\": {\n \"displayName\": \"childInterface\",\n \"description\": \"childInterface\"\n },\n \"extendsInterfaces\": [\n {\n \"apiName\": \"com.palantir.parentInterface\",\n \"displayMetadata\": {\n \"displayName\": \"parentInterface\",\n \"description\": \"parentInterface\"\n },\n \"extendsInterfaces\": [],\n \"links\": [],\n \"status\": {\n \"type\": \"active\",\n \"active\": {}\n },\n \"propertiesV2\": {\n \"com.palantir.property1\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"apiName\": \"com.palantir.property1\",\n \"displayName\": \"property1\",\n \"type\": \"string\",\n \"array\": false,\n \"nonNameSpacedApiName\": \"property1\",\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\"\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\"\n }\n ],\n \"__type\": OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE\n }\n }\n },\n \"searchable\": true,\n \"__type\": OntologyEntityTypeEnum.INTERFACE_TYPE\n }\n ],\n \"links\": [],\n \"status\": {\n \"type\": \"active\",\n \"active\": {}\n },\n \"propertiesV2\": {\n \"com.palantir.property2\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"apiName\": \"com.palantir.property2\",\n \"displayName\": \"property2\",\n \"type\": \"string\",\n \"array\": false,\n \"nonNameSpacedApiName\": \"property2\",\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\"\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\"\n }\n ],\n \"__type\": OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE\n }\n }\n },\n \"searchable\": true,\n \"__type\": OntologyEntityTypeEnum.INTERFACE_TYPE\n } as unknown as InterfaceType;\n \n export const childInterface: InterfaceType = wrapWithProxy(childInterface_base);\n \"\n `);\n fs.rmSync(path.join(generatedDir, \"..\"), {\n recursive: true,\n force: true,\n });\n });\n it(\"Extended interface properties are checked in object type property mapping\", () => {\n const parentInterface = defineInterface({\n apiName: \"parentInterface\",\n properties: {\n iProperty1: \"string\",\n },\n });\n const childInterface = defineInterface({\n apiName: \"childInterface\",\n properties: {\n iProperty2: \"string\",\n },\n extends: [parentInterface],\n });\n const objectDef = defineObject({\n apiName: \"objectDef\",\n primaryKeyPropertyApiName: \"property1\",\n titlePropertyApiName: \"property1\",\n displayName: \"objectDef\",\n pluralDisplayName: \"objectDefs\",\n properties: {\n \"property1\": { type: \"string\", displayName: \"property1\" },\n \"property2\": { type: \"string\", displayName: \"property2\" },\n },\n implementsInterfaces: [\n {\n implements: childInterface,\n propertyMapping: [\n {\n interfaceProperty: \"com.palantir.iProperty1\",\n mapsTo: \"property1\",\n },\n {\n interfaceProperty: \"com.palantir.iProperty2\",\n mapsTo: \"property2\",\n },\n ],\n },\n ],\n });\n\n expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`\n {\n \"importedOntology\": {\n \"actionTypes\": {},\n \"blockPermissionInformation\": {\n \"actionTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n },\n \"interfaceTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n \"sharedPropertyTypes\": {},\n },\n \"importedValueTypes\": {\n \"valueTypes\": [],\n },\n \"ontology\": {\n \"actionTypes\": {},\n \"blockPermissionInformation\": {\n \"actionTypes\": {},\n \"linkTypes\": {},\n \"objectTypes\": {},\n },\n \"interfaceTypes\": {\n \"com.palantir.childInterface\": {\n \"interfaceType\": {\n \"apiName\": \"com.palantir.childInterface\",\n \"displayMetadata\": {\n \"description\": \"childInterface\",\n \"displayName\": \"childInterface\",\n \"icon\": {\n \"blueprint\": {\n \"color\": \"#4C90F0\",\n \"locator\": \"layout-hierarchy\",\n },\n \"type\": \"blueprint\",\n },\n },\n \"extendsInterfaces\": [\n \"com.palantir.parentInterface\",\n ],\n \"links\": [],\n \"properties\": [],\n \"propertiesV2\": {\n \"com.palantir.iProperty2\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.palantir.iProperty2\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"iProperty2\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\",\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\",\n },\n ],\n \"valueType\": undefined,\n },\n },\n },\n \"propertiesV3\": {},\n \"searchable\": true,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n },\n },\n \"com.palantir.parentInterface\": {\n \"interfaceType\": {\n \"apiName\": \"com.palantir.parentInterface\",\n \"displayMetadata\": {\n \"description\": \"parentInterface\",\n \"displayName\": \"parentInterface\",\n \"icon\": {\n \"blueprint\": {\n \"color\": \"#4C90F0\",\n \"locator\": \"layout-hierarchy\",\n },\n \"type\": \"blueprint\",\n },\n },\n \"extendsInterfaces\": [],\n \"links\": [],\n \"properties\": [],\n \"propertiesV2\": {\n \"com.palantir.iProperty1\": {\n \"required\": true,\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.palantir.iProperty1\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"iProperty1\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\",\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\",\n },\n ],\n \"valueType\": undefined,\n },\n },\n },\n \"propertiesV3\": {},\n \"searchable\": true,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n },\n },\n },\n \"linkTypes\": {},\n \"objectTypes\": {\n \"com.palantir.objectDef\": {\n \"datasources\": [\n {\n \"datasource\": {\n \"datasetV2\": {\n \"datasetRid\": \"com.palantir.objectDef\",\n \"propertyMapping\": {\n \"property1\": {\n \"column\": \"property1\",\n \"type\": \"column\",\n },\n \"property2\": {\n \"column\": \"property2\",\n \"type\": \"column\",\n },\n },\n },\n \"type\": \"datasetV2\",\n },\n \"datasourceName\": \"com.palantir.objectDef\",\n \"editsConfiguration\": {\n \"onlyAllowPrivilegedEdits\": false,\n },\n \"redacted\": false,\n },\n ],\n \"entityMetadata\": {\n \"arePatchesEnabled\": false,\n },\n \"objectType\": {\n \"allImplementsInterfaces\": {},\n \"apiName\": \"com.palantir.objectDef\",\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"objectDef\",\n \"groupDisplayName\": undefined,\n \"icon\": {\n \"blueprint\": {\n \"color\": \"#2D72D2\",\n \"locator\": \"cube\",\n },\n \"type\": \"blueprint\",\n },\n \"pluralDisplayName\": \"objectDefs\",\n \"visibility\": \"NORMAL\",\n },\n \"implementsInterfaces2\": [\n {\n \"interfaceTypeApiName\": \"com.palantir.childInterface\",\n \"linksV2\": {},\n \"properties\": {\n \"com.palantir.iProperty1\": {\n \"propertyTypeRid\": \"property1\",\n },\n \"com.palantir.iProperty2\": {\n \"propertyTypeRid\": \"property2\",\n },\n },\n \"propertiesV2\": {},\n },\n ],\n \"primaryKeys\": [\n \"property1\",\n ],\n \"propertyTypes\": {\n \"property1\": {\n \"apiName\": \"property1\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"property1\",\n \"visibility\": \"NORMAL\",\n },\n \"indexedForSearch\": true,\n \"inlineAction\": undefined,\n \"ruleSetBinding\": undefined,\n \"sharedPropertyTypeApiName\": undefined,\n \"sharedPropertyTypeRid\": undefined,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\",\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\",\n },\n ],\n \"valueType\": undefined,\n },\n \"property2\": {\n \"apiName\": \"property2\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"property2\",\n \"visibility\": \"NORMAL\",\n },\n \"indexedForSearch\": true,\n \"inlineAction\": undefined,\n \"ruleSetBinding\": undefined,\n \"sharedPropertyTypeApiName\": undefined,\n \"sharedPropertyTypeRid\": undefined,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\",\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\",\n },\n ],\n \"valueType\": undefined,\n },\n },\n \"redacted\": false,\n \"status\": {\n \"active\": {},\n \"type\": \"active\",\n },\n \"titlePropertyTypeRid\": \"property1\",\n },\n },\n },\n \"sharedPropertyTypes\": {\n \"com.palantir.iProperty1\": {\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.palantir.iProperty1\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"iProperty1\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\",\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\",\n },\n ],\n \"valueType\": undefined,\n },\n },\n \"com.palantir.iProperty2\": {\n \"sharedPropertyType\": {\n \"aliases\": [],\n \"apiName\": \"com.palantir.iProperty2\",\n \"baseFormatter\": undefined,\n \"dataConstraints\": undefined,\n \"displayMetadata\": {\n \"description\": undefined,\n \"displayName\": \"iProperty2\",\n \"visibility\": \"NORMAL\",\n },\n \"gothamMapping\": undefined,\n \"indexedForSearch\": true,\n \"type\": {\n \"string\": {\n \"analyzerOverride\": undefined,\n \"enableAsciiFolding\": undefined,\n \"isLongText\": false,\n \"supportsEfficientLeadingWildcard\": false,\n \"supportsExactMatching\": true,\n },\n \"type\": \"string\",\n },\n \"typeClasses\": [\n {\n \"kind\": \"render_hint\",\n \"name\": \"SELECTABLE\",\n },\n {\n \"kind\": \"render_hint\",\n \"name\": \"SORTABLE\",\n },\n ],\n \"valueType\": undefined,\n },\n },\n },\n },\n \"randomnessKey\": undefined,\n \"valueTypes\": {\n \"valueTypes\": [],\n },\n }\n `);\n });\n });\n\n describe(\"Dependencies\", () => {\n it(\"Correctly adds dependencies\", async () => {\n const generatedDir = path.resolve(path.join(\n __dirname,\n \"..\",\n \"generatedNoCheck\",\n \"correctly_adds_dependencies\",\n ));\n await defineOntology(\n \"com.palantir.\",\n () => {\n addDependency(\"com.palantir\", fileURLToPath(import.meta.url));\n defineInterface({\n apiName: \"myInterface\",\n properties: {\n property1: \"string\",\n },\n });\n },\n generatedDir,\n path.join(generatedDir, \"dependencies.json\"),\n );\n\n const packageJson = JSON.parse(\n fs.readFileSync(\n path.join(__dirname, \"..\", \"..\", \"..\", \"package.json\"),\n \"utf8\",\n ),\n );\n expect(packageJson.version).toBeDefined();\n\n expect(\n fs.readFileSync(path.join(generatedDir, \"dependencies.json\"), \"utf8\"),\n ).toMatchInlineSnapshot(`\n \"{\n \"com.palantir\": \"${packageJson.version}\"\n }\"\n `);\n\n expect(\n fs.readFileSync(path.join(generatedDir, \"index.ts\"), \"utf8\"),\n )\n .toContain(\n `addDependency(\"com.palantir\", new URL(import.meta.url).pathname);`,\n );\n\n fs.rmSync(path.join(generatedDir, \"..\"), {\n recursive: true,\n force: true,\n });\n });\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,EAAE,MAAM,IAAI;AACxB,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AACnC,SAASC,UAAU,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AACzD,SAASC,aAAa,QAAQ,qBAAqB;AACnD,SAASC,sBAAsB,QAAQ,qCAAqC;AAC5E,SAASC,eAAe,QAAQ,uBAAuB;AACvD,SAASC,YAAY,QAAQ,oBAAoB;AACjD,SAASC,cAAc,EAAEC,wBAAwB,QAAQ,sBAAsB;AAC/E,SAASC,wBAAwB,QAAQ,iBAAiB;AAC1D,SAASC,oBAAoB,QAAQ,4BAA4B;AACjE,SAASC,wBAAwB,QAAQ,gCAAgC;AAGzEX,QAAQ,CAAC,qBAAqB,EAAE,MAAM;EACpCD,UAAU,CAAC,YAAY;IACrB,MAAMQ,cAAc,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC;EAC1D,CAAC,CAAC;EAEFP,QAAQ,CAAC,SAAS,EAAE,MAAM;IACxBE,EAAE,CAAC,wBAAwB,EAAE,MAAM;MACjC,MAAMU,EAAE,GAAGD,wBAAwB,CAAC;QAClCE,OAAO,EAAE,IAAI;QACbC,WAAW,EAAE,kCAAkC;QAC/CC,QAAQ,EAAE;MACZ,CAAC,CAAC;MACkBV,eAAe,CAAC;QAClCQ,OAAO,EAAE,aAAa;QACtBG,UAAU,EAAE;UACVJ;QACF;MACF,CAAC,CAAC;MACFX,MAAM,CAACO,wBAAwB,CAAC,CAAC,CAAC,CAACS,qBAAqB,CAAC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;IACJ,CAAC,CAAC;IACFf,EAAE,CAAC,wBAAwB,EAAE,MAAM;MACjC;MACA,MAAMgB,GAAuB,GAAG;QAC9BL,OAAO,EAAE,uBAAuB;QAChCM,oBAAoB,EAAE,KAAK;QAC3BC,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAEjB,sBAAsB,CAACkB;MACjC,CAAC;MACDZ,oBAAoB,CAACQ,GAAG,CAAC;MAELb,eAAe,CAAC;QAClCQ,OAAO,EAAE,aAAa;QACtBG,UAAU,EAAE;UACVE;QACF;MACF,CAAC,CAAC;MACFjB,MAAM,CAACO,wBAAwB,CAAC,CAAC,CAAC,CAACS,qBAAqB,CAAC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;IACJ,CAAC,CAAC;IACFf,EAAE,CAAC,sCAAsC,EAAE,YAAY;MACrD,MAAMqB,YAAY,GAAG1B,IAAI,CAAC2B,OAAO,CAAC3B,IAAI,CAAC4B,IAAI,CACzCC,SAAS,EACT,IAAI,EACJ,kBAAkB,EAClB,sCACF,CAAC,CAAC;MACF,MAAMnB,cAAc,CAAC,iBAAiB,EAAE,MAAM;QAC5C,MAAMoB,KAAK,GAAGlB,wBAAwB,CAAC;UACrCI,OAAO,EAAE,OAAO;UAChBO,IAAI,EAAE;QACR,CAAC,CAAC;QACF,MAAMQ,WAAW,GAAGvB,eAAe,CAAC;UAClCQ,OAAO,EAAE,aAAa;UACtBG,UAAU,EAAE;YACVW;UACF;QACF,CAAC,CAAC;QACerB,YAAY,CAAC;UAC5BuB,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,WAAW;UACxBC,iBAAiB,EAAE,WAAW;UAC9BlB,OAAO,EAAE,UAAU;UACnBmB,yBAAyB,EAAE,KAAK;UAChChB,UAAU,EAAE;YAAE,KAAK,EAAE;cAAEI,IAAI,EAAE;YAAS;UAAE,CAAC;UACzCa,oBAAoB,EAAE,CAAC;YACrBC,UAAU,EAAEN,WAAW;YACvBO,eAAe,EAAE,CAAC;cAChBC,iBAAiB,EAAE,sBAAsB;cACzCC,MAAM,EAAE;YACV,CAAC;UACH,CAAC;QACH,CAAC,CAAC;MACJ,CAAC,EAAEd,YAAY,CAAC;MAEhBtB,MAAM,CACJL,EAAE,CAAC0C,YAAY,CACbzC,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,wCAAwC,CAAC,EACjE,MACF,CACF,CAAC,CAACN,qBAAqB,CAAC;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;MAEFhB,MAAM,CACJL,EAAE,CAAC0C,YAAY,CACbzC,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,kCAAkC,CAAC,EAC3D,MACF,CACF,CAAC,CAACN,qBAAqB,CAAC;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;MAEFhB,MAAM,CACJL,EAAE,CAAC0C,YAAY,CACbzC,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,wCAAwC,CAAC,EACjE,MACF,CACF,CAAC,CAACN,qBAAqB,CAAC;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;MACFrB,EAAE,CAAC2C,MAAM,CAAC1C,IAAI,CAAC2B,OAAO,CAAC3B,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,IAAI,CAAC,CAAC,EAAE;QACrDiB,SAAS,EAAE,IAAI;QACfC,KAAK,EAAE;MACT,CAAC,CAAC;IACJ,CAAC,CAAC;IACFvC,EAAE,CAAC,0DAA0D,EAAE,YAAY;MACzE,MAAMqB,YAAY,GAAG1B,IAAI,CAAC2B,OAAO,CAAC3B,IAAI,CAAC4B,IAAI,CACzCC,SAAS,EACT,IAAI,EACJ,kBAAkB,EAClB,0DACF,CAAC,CAAC;MACF,MAAMnB,cAAc,CAAC,eAAe,EAAE,MAAM;QAC1C,MAAMmC,eAAe,GAAGrC,eAAe,CAAC;UACtCQ,OAAO,EAAE,iBAAiB;UAC1BG,UAAU,EAAE;YACV2B,SAAS,EAAE;UACb;QACF,CAAC,CAAC;QACqBtC,eAAe,CAAC;UACrCQ,OAAO,EAAE,gBAAgB;UACzBG,UAAU,EAAE;YACV4B,SAAS,EAAE;UACb,CAAC;UACDC,OAAO,EAAE,CAACH,eAAe;QAC3B,CAAC,CAAC;MACJ,CAAC,EAAEnB,YAAY,CAAC;MAEhBtB,MAAM,CACJL,EAAE,CAAC0C,YAAY,CACbzC,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,2CAA2C,CAAC,EACpE,MACF,CACF,CAAC,CAACN,qBAAqB,CAAC;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;MACFrB,EAAE,CAAC2C,MAAM,CAAC1C,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,IAAI,CAAC,EAAE;QACvCiB,SAAS,EAAE,IAAI;QACfC,KAAK,EAAE;MACT,CAAC,CAAC;IACJ,CAAC,CAAC;IACFvC,EAAE,CAAC,2EAA2E,EAAE,MAAM;MACpF,MAAMwC,eAAe,GAAGrC,eAAe,CAAC;QACtCQ,OAAO,EAAE,iBAAiB;QAC1BG,UAAU,EAAE;UACV8B,UAAU,EAAE;QACd;MACF,CAAC,CAAC;MACF,MAAMC,cAAc,GAAG1C,eAAe,CAAC;QACrCQ,OAAO,EAAE,gBAAgB;QACzBG,UAAU,EAAE;UACVgC,UAAU,EAAE;QACd,CAAC;QACDH,OAAO,EAAE,CAACH,eAAe;MAC3B,CAAC,CAAC;MACgBpC,YAAY,CAAC;QAC7BO,OAAO,EAAE,WAAW;QACpBmB,yBAAyB,EAAE,WAAW;QACtCH,oBAAoB,EAAE,WAAW;QACjCC,WAAW,EAAE,WAAW;QACxBC,iBAAiB,EAAE,YAAY;QAC/Bf,UAAU,EAAE;UACV,WAAW,EAAE;YAAEI,IAAI,EAAE,QAAQ;YAAEU,WAAW,EAAE;UAAY,CAAC;UACzD,WAAW,EAAE;YAAEV,IAAI,EAAE,QAAQ;YAAEU,WAAW,EAAE;UAAY;QAC1D,CAAC;QACDG,oBAAoB,EAAE,CACpB;UACEC,UAAU,EAAEa,cAAc;UAC1BZ,eAAe,EAAE,CACf;YACEC,iBAAiB,EAAE,yBAAyB;YAC5CC,MAAM,EAAE;UACV,CAAC,EACD;YACED,iBAAiB,EAAE,yBAAyB;YAC5CC,MAAM,EAAE;UACV,CAAC;QAEL,CAAC;MAEL,CAAC,CAAC;MAEFpC,MAAM,CAACO,wBAAwB,CAAC,CAAC,CAAC,CAACS,qBAAqB,CAAC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFjB,QAAQ,CAAC,cAAc,EAAE,MAAM;IAC7BE,EAAE,CAAC,6BAA6B,EAAE,YAAY;MAC5C,MAAMqB,YAAY,GAAG1B,IAAI,CAAC2B,OAAO,CAAC3B,IAAI,CAAC4B,IAAI,CACzCC,SAAS,EACT,IAAI,EACJ,kBAAkB,EAClB,6BACF,CAAC,CAAC;MACF,MAAMnB,cAAc,CAClB,eAAe,EACf,MAAM;QACJJ,aAAa,CAAC,cAAc,EAAEL,aAAa,CAACmD,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;QAC7D9C,eAAe,CAAC;UACdQ,OAAO,EAAE,aAAa;UACtBG,UAAU,EAAE;YACV2B,SAAS,EAAE;UACb;QACF,CAAC,CAAC;MACJ,CAAC,EACDpB,YAAY,EACZ1B,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,mBAAmB,CAC7C,CAAC;MAED,MAAM6B,WAAW,GAAGC,IAAI,CAACC,KAAK,CAC5B1D,EAAE,CAAC0C,YAAY,CACbzC,IAAI,CAAC4B,IAAI,CAACC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,EACtD,MACF,CACF,CAAC;MACDzB,MAAM,CAACmD,WAAW,CAACG,OAAO,CAAC,CAACC,WAAW,CAAC,CAAC;MAEzCvD,MAAM,CACJL,EAAE,CAAC0C,YAAY,CAACzC,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,mBAAmB,CAAC,EAAE,MAAM,CACtE,CAAC,CAACN,qBAAqB,CAAC;AAC9B;AACA,6BAA6BmC,WAAW,CAACG,OAAO;AAChD;AACA,OAAO,CAAC;MAEFtD,MAAM,CACJL,EAAE,CAAC0C,YAAY,CAACzC,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,CAC7D,CAAC,CACEkC,SAAS,CACR,mEACF,CAAC;MAEH7D,EAAE,CAAC2C,MAAM,CAAC1C,IAAI,CAAC4B,IAAI,CAACF,YAAY,EAAE,IAAI,CAAC,EAAE;QACvCiB,SAAS,EAAE,IAAI;QACfC,KAAK,EAAE;MACT,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -15,8 +15,8 @@
15
15
  */
16
16
 
17
17
  import { beforeEach, describe, expect, it } from "vitest";
18
- import { defineObject } from "./defineObject.js";
19
- import { defineOntology, dumpOntologyFullMetadata } from "./defineOntology.js";
18
+ import { defineObject } from "../defineObject.js";
19
+ import { defineOntology, dumpOntologyFullMetadata } from "../defineOntology.js";
20
20
  describe("Object Status", () => {
21
21
  beforeEach(async () => {
22
22
  await defineOntology("com.palantir.", () => {}, "/tmp/");
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectStatus.test.js","names":["beforeEach","describe","expect","it","defineObject","defineOntology","dumpOntologyFullMetadata","titlePropertyApiName","displayName","pluralDisplayName","apiName","primaryKeyPropertyApiName","status","properties","type","toThrowError","not","toThrow","metadata","ontology","objectTypes","objectType","toEqual","active","experimental","message","deadline","deprecated","replacedBy","undefined"],"sources":["objectStatus.test.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 { beforeEach, describe, expect, it } from \"vitest\";\nimport { defineObject } from \"../defineObject.js\";\nimport { defineOntology, dumpOntologyFullMetadata } from \"../defineOntology.js\";\nimport type { ObjectTypeStatus } from \"../object/ObjectTypeStatus.js\";\n\ndescribe(\"Object Status\", () => {\n beforeEach(async () => {\n await defineOntology(\"com.palantir.\", () => {}, \"/tmp/\");\n });\n\n describe(\"Object Status Validation\", () => {\n it(\"throws an error when object status is experimental and a property is active\", async () => {\n await defineOntology(\"com.palantir.\", () => {\n expect(() =>\n defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"ValidationTestObject\",\n pluralDisplayName: \"ValidationTestObjects\",\n apiName: \"validation-test\",\n primaryKeyPropertyApiName: \"bar\",\n status: \"experimental\" as ObjectTypeStatus,\n properties: {\n \"bar\": { type: \"string\", status: \"active\" as ObjectTypeStatus },\n },\n })\n ).toThrowError(\n /When object \"validation-test\" has experimental status, no properties can have \"active\" status/,\n );\n }, \"/tmp/\");\n });\n\n it(\"does not throw when object status is experimental and no properties have active status\", async () => {\n await defineOntology(\"com.palantir.\", () => {\n expect(() =>\n defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"ValidationTestObject2\",\n pluralDisplayName: \"ValidationTestObjects2\",\n apiName: \"validation-test-2\",\n primaryKeyPropertyApiName: \"bar\",\n status: \"experimental\" as ObjectTypeStatus,\n properties: {\n \"bar\": {\n type: \"string\",\n status: \"experimental\" as ObjectTypeStatus,\n },\n },\n })\n ).not.toThrow();\n }, \"/tmp/\");\n });\n });\n\n describe(\"Object Status Conversion\", () => {\n it(\"converts default status (undefined) to active\", async () => {\n await defineOntology(\"com.palantir.\", () => {\n const obj = defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"DefaultStatusObject\",\n pluralDisplayName: \"DefaultStatusObjects\",\n apiName: \"default-status\",\n primaryKeyPropertyApiName: \"bar\",\n properties: { \"bar\": { type: \"string\" } },\n });\n\n const metadata = dumpOntologyFullMetadata();\n expect(\n metadata.ontology.objectTypes[\"com.palantir.default-status\"]\n .objectType.status,\n ).toEqual({\n type: \"active\",\n active: {},\n });\n }, \"/tmp/\");\n });\n\n it(\"converts active status to proper format\", async () => {\n await defineOntology(\"com.palantir.\", () => {\n const obj = defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"ActiveStatusObject\",\n pluralDisplayName: \"ActiveStatusObjects\",\n apiName: \"active-status\",\n primaryKeyPropertyApiName: \"bar\",\n properties: { \"bar\": { type: \"string\" } },\n status: \"active\" as ObjectTypeStatus,\n });\n\n const metadata = dumpOntologyFullMetadata();\n expect(\n metadata.ontology.objectTypes[\"com.palantir.active-status\"]\n .objectType.status,\n ).toEqual({\n type: \"active\",\n active: {},\n });\n }, \"/tmp/\");\n });\n\n it(\"converts experimental status to proper format\", async () => {\n await defineOntology(\"com.palantir.\", () => {\n const obj = defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"ExperimentalStatusObject\",\n pluralDisplayName: \"ExperimentalStatusObjects\",\n apiName: \"experimental-status\",\n primaryKeyPropertyApiName: \"bar\",\n properties: { \"bar\": { type: \"string\" } },\n status: \"experimental\" as ObjectTypeStatus,\n });\n\n const metadata = dumpOntologyFullMetadata();\n expect(\n metadata.ontology.objectTypes[\"com.palantir.experimental-status\"]\n .objectType.status,\n ).toEqual({\n type: \"experimental\",\n experimental: {},\n });\n }, \"/tmp/\");\n });\n\n it(\"converts deprecated status to proper format\", async () => {\n await defineOntology(\"com.palantir.\", () => {\n const obj = defineObject({\n titlePropertyApiName: \"bar\",\n displayName: \"DeprecatedStatusObject\",\n pluralDisplayName: \"DeprecatedStatusObjects\",\n apiName: \"deprecated-status\",\n primaryKeyPropertyApiName: \"bar\",\n properties: { \"bar\": { type: \"string\" } },\n status: {\n type: \"deprecated\",\n message: \"This object is deprecated\",\n deadline: \"2023-01-01\",\n } as ObjectTypeStatus,\n });\n\n const metadata = dumpOntologyFullMetadata();\n expect(\n metadata.ontology.objectTypes[\"com.palantir.deprecated-status\"]\n .objectType.status,\n ).toEqual({\n type: \"deprecated\",\n deprecated: {\n message: \"This object is deprecated\",\n deadline: \"2023-01-01\",\n replacedBy: undefined,\n },\n });\n }, \"/tmp/\");\n });\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ,QAAQ;AACzD,SAASC,YAAY,QAAQ,oBAAoB;AACjD,SAASC,cAAc,EAAEC,wBAAwB,QAAQ,sBAAsB;AAG/EL,QAAQ,CAAC,eAAe,EAAE,MAAM;EAC9BD,UAAU,CAAC,YAAY;IACrB,MAAMK,cAAc,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC;EAC1D,CAAC,CAAC;EAEFJ,QAAQ,CAAC,0BAA0B,EAAE,MAAM;IACzCE,EAAE,CAAC,6EAA6E,EAAE,YAAY;MAC5F,MAAME,cAAc,CAAC,eAAe,EAAE,MAAM;QAC1CH,MAAM,CAAC,MACLE,YAAY,CAAC;UACXG,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,sBAAsB;UACnCC,iBAAiB,EAAE,uBAAuB;UAC1CC,OAAO,EAAE,iBAAiB;UAC1BC,yBAAyB,EAAE,KAAK;UAChCC,MAAM,EAAE,cAAkC;UAC1CC,UAAU,EAAE;YACV,KAAK,EAAE;cAAEC,IAAI,EAAE,QAAQ;cAAEF,MAAM,EAAE;YAA6B;UAChE;QACF,CAAC,CACH,CAAC,CAACG,YAAY,CACZ,+FACF,CAAC;MACH,CAAC,EAAE,OAAO,CAAC;IACb,CAAC,CAAC;IAEFZ,EAAE,CAAC,wFAAwF,EAAE,YAAY;MACvG,MAAME,cAAc,CAAC,eAAe,EAAE,MAAM;QAC1CH,MAAM,CAAC,MACLE,YAAY,CAAC;UACXG,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,uBAAuB;UACpCC,iBAAiB,EAAE,wBAAwB;UAC3CC,OAAO,EAAE,mBAAmB;UAC5BC,yBAAyB,EAAE,KAAK;UAChCC,MAAM,EAAE,cAAkC;UAC1CC,UAAU,EAAE;YACV,KAAK,EAAE;cACLC,IAAI,EAAE,QAAQ;cACdF,MAAM,EAAE;YACV;UACF;QACF,CAAC,CACH,CAAC,CAACI,GAAG,CAACC,OAAO,CAAC,CAAC;MACjB,CAAC,EAAE,OAAO,CAAC;IACb,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFhB,QAAQ,CAAC,0BAA0B,EAAE,MAAM;IACzCE,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,MAAME,cAAc,CAAC,eAAe,EAAE,MAAM;QAC9BD,YAAY,CAAC;UACvBG,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,qBAAqB;UAClCC,iBAAiB,EAAE,sBAAsB;UACzCC,OAAO,EAAE,gBAAgB;UACzBC,yBAAyB,EAAE,KAAK;UAChCE,UAAU,EAAE;YAAE,KAAK,EAAE;cAAEC,IAAI,EAAE;YAAS;UAAE;QAC1C,CAAC,CAAC;QAEF,MAAMI,QAAQ,GAAGZ,wBAAwB,CAAC,CAAC;QAC3CJ,MAAM,CACJgB,QAAQ,CAACC,QAAQ,CAACC,WAAW,CAAC,6BAA6B,CAAC,CACzDC,UAAU,CAACT,MAChB,CAAC,CAACU,OAAO,CAAC;UACRR,IAAI,EAAE,QAAQ;UACdS,MAAM,EAAE,CAAC;QACX,CAAC,CAAC;MACJ,CAAC,EAAE,OAAO,CAAC;IACb,CAAC,CAAC;IAEFpB,EAAE,CAAC,yCAAyC,EAAE,YAAY;MACxD,MAAME,cAAc,CAAC,eAAe,EAAE,MAAM;QAC9BD,YAAY,CAAC;UACvBG,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,oBAAoB;UACjCC,iBAAiB,EAAE,qBAAqB;UACxCC,OAAO,EAAE,eAAe;UACxBC,yBAAyB,EAAE,KAAK;UAChCE,UAAU,EAAE;YAAE,KAAK,EAAE;cAAEC,IAAI,EAAE;YAAS;UAAE,CAAC;UACzCF,MAAM,EAAE;QACV,CAAC,CAAC;QAEF,MAAMM,QAAQ,GAAGZ,wBAAwB,CAAC,CAAC;QAC3CJ,MAAM,CACJgB,QAAQ,CAACC,QAAQ,CAACC,WAAW,CAAC,4BAA4B,CAAC,CACxDC,UAAU,CAACT,MAChB,CAAC,CAACU,OAAO,CAAC;UACRR,IAAI,EAAE,QAAQ;UACdS,MAAM,EAAE,CAAC;QACX,CAAC,CAAC;MACJ,CAAC,EAAE,OAAO,CAAC;IACb,CAAC,CAAC;IAEFpB,EAAE,CAAC,+CAA+C,EAAE,YAAY;MAC9D,MAAME,cAAc,CAAC,eAAe,EAAE,MAAM;QAC9BD,YAAY,CAAC;UACvBG,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,0BAA0B;UACvCC,iBAAiB,EAAE,2BAA2B;UAC9CC,OAAO,EAAE,qBAAqB;UAC9BC,yBAAyB,EAAE,KAAK;UAChCE,UAAU,EAAE;YAAE,KAAK,EAAE;cAAEC,IAAI,EAAE;YAAS;UAAE,CAAC;UACzCF,MAAM,EAAE;QACV,CAAC,CAAC;QAEF,MAAMM,QAAQ,GAAGZ,wBAAwB,CAAC,CAAC;QAC3CJ,MAAM,CACJgB,QAAQ,CAACC,QAAQ,CAACC,WAAW,CAAC,kCAAkC,CAAC,CAC9DC,UAAU,CAACT,MAChB,CAAC,CAACU,OAAO,CAAC;UACRR,IAAI,EAAE,cAAc;UACpBU,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC;MACJ,CAAC,EAAE,OAAO,CAAC;IACb,CAAC,CAAC;IAEFrB,EAAE,CAAC,6CAA6C,EAAE,YAAY;MAC5D,MAAME,cAAc,CAAC,eAAe,EAAE,MAAM;QAC9BD,YAAY,CAAC;UACvBG,oBAAoB,EAAE,KAAK;UAC3BC,WAAW,EAAE,wBAAwB;UACrCC,iBAAiB,EAAE,yBAAyB;UAC5CC,OAAO,EAAE,mBAAmB;UAC5BC,yBAAyB,EAAE,KAAK;UAChCE,UAAU,EAAE;YAAE,KAAK,EAAE;cAAEC,IAAI,EAAE;YAAS;UAAE,CAAC;UACzCF,MAAM,EAAE;YACNE,IAAI,EAAE,YAAY;YAClBW,OAAO,EAAE,2BAA2B;YACpCC,QAAQ,EAAE;UACZ;QACF,CAAC,CAAC;QAEF,MAAMR,QAAQ,GAAGZ,wBAAwB,CAAC,CAAC;QAC3CJ,MAAM,CACJgB,QAAQ,CAACC,QAAQ,CAACC,WAAW,CAAC,gCAAgC,CAAC,CAC5DC,UAAU,CAACT,MAChB,CAAC,CAACU,OAAO,CAAC;UACRR,IAAI,EAAE,YAAY;UAClBa,UAAU,EAAE;YACVF,OAAO,EAAE,2BAA2B;YACpCC,QAAQ,EAAE,YAAY;YACtBE,UAAU,EAAEC;UACd;QACF,CAAC,CAAC;MACJ,CAAC,EAAE,OAAO,CAAC;IACb,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}