@osdk/api 2.2.0-rc.25 → 2.2.0-rc.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/build/browser/OsdkObjectFrom.test.js.map +1 -1
- package/build/browser/ontology/ActionDefinition.js.map +1 -1
- package/build/browser/ontology/ObjectTypeDefinition.js.map +1 -1
- package/build/cjs/{ObjectSet-BLinzmtM.d.cts → ObjectSet-D20Nsopd.d.cts} +4 -4
- package/build/cjs/index.d.cts +3 -3
- package/build/cjs/public/unstable.d.cts +2 -2
- package/build/esm/OsdkObjectFrom.test.js.map +1 -1
- package/build/esm/ontology/ActionDefinition.js.map +1 -1
- package/build/esm/ontology/ObjectTypeDefinition.js.map +1 -1
- package/build/types/ontology/ActionDefinition.d.ts +1 -1
- package/build/types/ontology/ObjectTypeDefinition.d.ts +4 -4
- package/build/types/ontology/ObjectTypeDefinition.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OsdkObjectFrom.test.js","names":["describe","expectTypeOf","it","createMockObjectSet","toEqualTypeOf","branded","fauxObjectSet","fetchPage"],"sources":["OsdkObjectFrom.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 { describe, expectTypeOf, it } from \"vitest\";\nimport type { NullabilityAdherence } from \"./object/FetchPageArgs.js\";\nimport { createMockObjectSet } from \"./objectSet/ObjectSet.test.js\";\nimport type { ExtractOptions, Osdk } from \"./OsdkObjectFrom.js\";\n\ndescribe(\"ExtractOptions\", () => {\n describe(\"NullabilityAdherence Generic\", () => {\n it(\"does not add $notStrict for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for never\", () => {\n expectTypeOf<ExtractOptions<any, never>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for false\", () => {\n expectTypeOf<ExtractOptions<any, false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for throw\", () => {\n expectTypeOf<ExtractOptions<any, \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | false>>()\n .toEqualTypeOf<never>();\n });\n it(\"does not add $notStrict for false | throw\", () => {\n expectTypeOf<ExtractOptions<any, false | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\" | false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for NullabilityAdherence\", () => {\n expectTypeOf<ExtractOptions<any, NullabilityAdherence>>()\n .toEqualTypeOf<never>();\n });\n });\n\n describe(\"Rid Generic\", () => {\n it(\"does not add $rid for false\", () => {\n expectTypeOf<ExtractOptions<false, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does add $rid for true\", () => {\n expectTypeOf<ExtractOptions<true, any>>().toEqualTypeOf<\"$rid\">();\n });\n\n it(\"does not add $rid for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for never\", () => {\n expectTypeOf<ExtractOptions<never, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for boolean\", () => {\n expectTypeOf<ExtractOptions<boolean, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for true | false\", () => {\n expectTypeOf<ExtractOptions<true | false, any>>().toEqualTypeOf<never>();\n });\n });\n\n type quickAndDirty = {\n apiName: \"Foo\";\n type: \"object\";\n __DefinitionMetadata: {\n props: {\n name: string;\n foo: number | undefined;\n };\n strictProps: {\n name: string;\n foo: number;\n };\n apiName: \"Foo\";\n displayName: \"\";\n interfaceMap: {};\n inverseInterfaceMap: {};\n links: {};\n pluralDisplayName: \"\";\n primaryKeyApiName: \"\";\n primaryKeyType: \"string\";\n properties: {\n name: {\n type: \"string\";\n };\n foo: {\n type: \"integer\";\n };\n };\n rid: \"\";\n status: \"ACTIVE\";\n titleProperty: \"name\";\n type: \"object\";\n };\n };\n\n describe(\"Osdk.Instance\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk.Instance<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"Cannot use $notStrict\", () => {\n // @ts-expect-error\n type toCheck = Osdk.Instance<quickAndDirty, \"$notStrict\">;\n\n expectTypeOf<toCheck>().branded\n // @ts-expect-error\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, \"$notStrict\">>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, \"name\">>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Osdk<>\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"returns $rid if only thing specified\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: $rid and name\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"name\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the strict type\n expectTypeOf<Pick<toCheck, \"name\">>().toEqualTypeOf<{\n name: quickAndDirty[\"__DefinitionMetadata\"][\"strictProps\"][\"name\"];\n }>();\n });\n\n it(\"handles legacy properly: $rid and $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\" | \"foo\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: just $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"Does not use $notStrict if requested with old type\", () => {\n type toCheck = Osdk<quickAndDirty, \"$notStrict\">;\n expectTypeOf<toCheck>().branded\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, never>>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, \"name\">>()\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Inferred return types from fetchPage work\", () => {\n const fauxObjectSet = createMockObjectSet<quickAndDirty>();\n\n it(\"is not $notStrict\", async () => {\n const page = await fauxObjectSet.fetchPage();\n\n expectTypeOf<typeof page[\"data\"]>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty>[]\n >();\n });\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,QAAQ,EAAEC,YAAY,EAAEC,EAAE,QAAQ,QAAQ;AAEnD,SAASC,mBAAmB,QAAQ,+BAA+B;AAGnEH,QAAQ,CAAC,gBAAgB,EAAE,MAAM;EAC/BA,QAAQ,CAAC,8BAA8B,EAAE,MAAM;IAC7CE,EAAE,CAAC,iCAAiC,EAAE,MAAM;MAC1CD,YAAY,CAA2B,CAAC,CACrCG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,mCAAmC,EAAE,MAAM;MAC5CD,YAAY,CAA6B,CAAC,CACvCG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,mCAAmC,EAAE,MAAM;MAC5CD,YAAY,CAA6B,CAAC,CACvCG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,mCAAmC,EAAE,MAAM;MAC5CD,YAAY,CAA+B,CAAC,CACzCG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,kCAAkC,EAAE,MAAM;MAC3CD,YAAY,CAA8B,CAAC,CACxCG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,0CAA0C,EAAE,MAAM;MACnDD,YAAY,CAAwC,CAAC,CAClDG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,0CAA0C,EAAE,MAAM;MACnDD,YAAY,CAAsC,CAAC,CAChDG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IACFF,EAAE,CAAC,2CAA2C,EAAE,MAAM;MACpDD,YAAY,CAAuC,CAAC,CACjDG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,kDAAkD,EAAE,MAAM;MAC3DD,YAAY,CAAgD,CAAC,CAC1DG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;IAEFF,EAAE,CAAC,kDAAkD,EAAE,MAAM;MAC3DD,YAAY,CAA4C,CAAC,CACtDG,aAAa,CAAQ,CAAC;IAC3B,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFJ,QAAQ,CAAC,aAAa,EAAE,MAAM;IAC5BE,EAAE,CAAC,6BAA6B,EAAE,MAAM;MACtCD,YAAY,CAA6B,CAAC,CAACG,aAAa,CAAQ,CAAC;IACnE,CAAC,CAAC;IAEFF,EAAE,CAAC,wBAAwB,EAAE,MAAM;MACjCD,YAAY,CAA4B,CAAC,CAACG,aAAa,CAAS,CAAC;IACnE,CAAC,CAAC;IAEFF,EAAE,CAAC,2BAA2B,EAAE,MAAM;MACpCD,YAAY,CAA2B,CAAC,CAACG,aAAa,CAAQ,CAAC;IACjE,CAAC,CAAC;IAEFF,EAAE,CAAC,6BAA6B,EAAE,MAAM;MACtCD,YAAY,CAA6B,CAAC,CAACG,aAAa,CAAQ,CAAC;IACnE,CAAC,CAAC;IAEFF,EAAE,CAAC,+BAA+B,EAAE,MAAM;MACxCD,YAAY,CAA+B,CAAC,CAACG,aAAa,CAAQ,CAAC;IACrE,CAAC,CAAC;IAEFF,EAAE,CAAC,oCAAoC,EAAE,MAAM;MAC7CD,YAAY,CAAoC,CAAC,CAACG,aAAa,CAAQ,CAAC;IAC1E,CAAC,CAAC;EACJ,CAAC,CAAC;EAqCFJ,QAAQ,CAAC,eAAe,EAAE,MAAM;IAC9BE,EAAE,CAAC,8CAA8C,EAAE,MAAM;MAEvDD,YAAY,CAAU,CAAC,CAACG,aAAa,CAEnC,CAAC;;MAEH;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,4CAA4C,EAAE,MAAM;MAErDD,YAAY,CAAU,CAAC,CAACG,aAAa,CAEnC,CAAC;MACH;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,0CAA0C,EAAE,MAAM;MAEnDD,YAAY,CAAU,CAAC,CAACI,OAAO,CAACD,aAAa,CAE3C,CAAC;MACH;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,uBAAuB,EAAE,MAAM;MAChC;;MAGAD,YAAY,CAAU,CAAC,CAACI;MACtB;MAAA,CACCD,aAAa,CAA6C,CAAC;MAC9D;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,8CAA8C,EAAE,MAAM;MACvDD,YAAY,CAA6C,CAAC,CAACI,OAAO,CAC/DD,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;IAEFF,EAAE,CAAC,4CAA4C,EAAE,MAAM;MACrDD,YAAY,CAA2C,CAAC,CAACI,OAAO,CAC7DD,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;IAEFF,EAAE,CAAC,gDAAgD,EAAE,MAAM;MACzDD,YAAY,CAA8C,CAAC,CAACI,OAAO,CAChED,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFJ,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACvBE,EAAE,CAAC,8CAA8C,EAAE,MAAM;MAEvDD,YAAY,CAAU,CAAC,CAACG,aAAa,CAEnC,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAQ,CAAC;;MAE7D;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,sCAAsC,EAAE,MAAM;MAE/CD,YAAY,CAAU,CAAC,CAACG,aAAa,CAEnC,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAS,CAAC;;MAE9D;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,wCAAwC,EAAE,MAAM;MAEjDD,YAAY,CAAU,CAAC,CAACG,aAAa,CAEnC,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAS,CAAC;;MAE9D;MACAH,YAAY,CAAwB,CAAC,CAACG,aAAa,CAEhD,CAAC;IACN,CAAC,CAAC;IAEFF,EAAE,CAAC,wCAAwC,EAAE,MAAM;MAEjDD,YAAY,CAAU,CAAC,CAACI,OAAO,CAACD,aAAa,CAE3C,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAS,CAAC;;MAE9D;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,oCAAoC,EAAE,MAAM;MAE7CD,YAAY,CAAU,CAAC,CAACI,OAAO,CAACD,aAAa,CAE3C,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAQ,CAAC;;MAE7D;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;IACL,CAAC,CAAC;IAEFF,EAAE,CAAC,4CAA4C,EAAE,MAAM;MAErDD,YAAY,CAAU,CAAC,CAACG,aAAa,CAEnC,CAAC;MACH;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAQ,CAAC;IAC/D,CAAC,CAAC;IAEFF,EAAE,CAAC,0CAA0C,EAAE,MAAM;MAEnDD,YAAY,CAAU,CAAC,CAACI,OAAO,CAACD,aAAa,CAE3C,CAAC;MACH;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAQ,CAAC;IAC/D,CAAC,CAAC;IAEFF,EAAE,CAAC,oDAAoD,EAAE,MAAM;MAE7DD,YAAY,CAAU,CAAC,CAACI,OAAO,CAC5BD,aAAa,CAAsC,CAAC;MACvD;MACAH,YAAY,CAAgC,CAAC,CAACG,aAAa,CAEzD,CAAC;;MAEH;MACAH,YAAY,CAAyB,CAAC,CAACG,aAAa,CAAQ,CAAC;IAC/D,CAAC,CAAC;IAEFF,EAAE,CAAC,8CAA8C,EAAE,MAAM;MACvDD,YAAY,CAAoC,CAAC,CAACI,OAAO,CACtDD,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;IAEFF,EAAE,CAAC,4CAA4C,EAAE,MAAM;MACrDD,YAAY,CAAkC,CAAC,CAACI,OAAO,CACpDD,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;IAEFF,EAAE,CAAC,gDAAgD,EAAE,MAAM;MACzDD,YAAY,CAAqC,CAAC,CAC/CG,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;EACJ,CAAC,CAAC;EAEFJ,QAAQ,CAAC,2CAA2C,EAAE,MAAM;IAC1D,MAAMM,aAAa,GAAGH,mBAAmB,CAAgB,CAAC;IAE1DD,EAAE,CAAC,mBAAmB,EAAE,YAAY;MACrB,MAAMI,aAAa,CAACC,SAAS,CAAC,CAAC;MAE5CN,YAAY,CAAsB,CAAC,CAACI,OAAO,CACxCD,aAAa,CAEZ,CAAC;IACP,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"OsdkObjectFrom.test.js","names":["describe","expectTypeOf","it","createMockObjectSet","toEqualTypeOf","branded","fauxObjectSet","fetchPage"],"sources":["OsdkObjectFrom.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 { describe, expectTypeOf, it } from \"vitest\";\nimport type { NullabilityAdherence } from \"./object/FetchPageArgs.js\";\nimport { createMockObjectSet } from \"./objectSet/ObjectSet.test.js\";\nimport type { ExtractOptions, Osdk } from \"./OsdkObjectFrom.js\";\n\ndescribe(\"ExtractOptions\", () => {\n describe(\"NullabilityAdherence Generic\", () => {\n it(\"does not add $notStrict for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for never\", () => {\n expectTypeOf<ExtractOptions<any, never>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for false\", () => {\n expectTypeOf<ExtractOptions<any, false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for throw\", () => {\n expectTypeOf<ExtractOptions<any, \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | false>>()\n .toEqualTypeOf<never>();\n });\n it(\"does not add $notStrict for false | throw\", () => {\n expectTypeOf<ExtractOptions<any, false | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\" | false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for NullabilityAdherence\", () => {\n expectTypeOf<ExtractOptions<any, NullabilityAdherence>>()\n .toEqualTypeOf<never>();\n });\n });\n\n describe(\"Rid Generic\", () => {\n it(\"does not add $rid for false\", () => {\n expectTypeOf<ExtractOptions<false, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does add $rid for true\", () => {\n expectTypeOf<ExtractOptions<true, any>>().toEqualTypeOf<\"$rid\">();\n });\n\n it(\"does not add $rid for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for never\", () => {\n expectTypeOf<ExtractOptions<never, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for boolean\", () => {\n expectTypeOf<ExtractOptions<boolean, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for true | false\", () => {\n expectTypeOf<ExtractOptions<true | false, any>>().toEqualTypeOf<never>();\n });\n });\n\n type quickAndDirty = {\n apiName: \"Foo\";\n type: \"object\";\n __DefinitionMetadata: {\n props: {\n name: string;\n foo: number | undefined;\n };\n strictProps: {\n name: string;\n foo: number;\n };\n apiName: \"Foo\";\n displayName: \"\";\n interfaceMap: {};\n inverseInterfaceMap: {};\n links: {};\n pluralDisplayName: \"\";\n primaryKeyApiName: \"\";\n primaryKeyType: \"string\";\n properties: {\n name: {\n type: \"string\";\n };\n foo: {\n type: \"integer\";\n };\n };\n rid: \"\";\n status: \"ACTIVE\";\n titleProperty: \"name\";\n type: \"object\";\n icon: undefined;\n visibility: undefined;\n description: undefined;\n };\n };\n\n describe(\"Osdk.Instance\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk.Instance<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"Cannot use $notStrict\", () => {\n // @ts-expect-error\n type toCheck = Osdk.Instance<quickAndDirty, \"$notStrict\">;\n\n expectTypeOf<toCheck>().branded\n // @ts-expect-error\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, \"$notStrict\">>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, \"name\">>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Osdk<>\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"returns $rid if only thing specified\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: $rid and name\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"name\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the strict type\n expectTypeOf<Pick<toCheck, \"name\">>().toEqualTypeOf<{\n name: quickAndDirty[\"__DefinitionMetadata\"][\"strictProps\"][\"name\"];\n }>();\n });\n\n it(\"handles legacy properly: $rid and $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\" | \"foo\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: just $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"Does not use $notStrict if requested with old type\", () => {\n type toCheck = Osdk<quickAndDirty, \"$notStrict\">;\n expectTypeOf<toCheck>().branded\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, never>>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, \"name\">>()\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Inferred return types from fetchPage work\", () => {\n const fauxObjectSet = createMockObjectSet<quickAndDirty>();\n\n it(\"is not $notStrict\", async () => {\n const page = await fauxObjectSet.fetchPage();\n\n expectTypeOf<typeof page[\"data\"]>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty>[]\n >();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionDefinition.js","names":["ActionMetadata"],"sources":["ActionDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type { InterfaceDefinition } from \"./InterfaceDefinition.js\";\nimport type {\n ObjectTypeDefinition,\n ReleaseStatus,\n} from \"./ObjectTypeDefinition.js\";\n\nexport interface ActionMetadata {\n type: \"action\";\n apiName: string;\n description?: string;\n displayName?: string;\n parameters: Record<any, ActionMetadata.Parameter<any>>;\n modifiedEntities?: Partial<\n Record<any, {\n created: boolean;\n modified: boolean;\n }>\n >;\n status: ReleaseStatus;\n rid: string;\n}\n\nexport namespace ActionMetadata {\n export interface Parameter<\n T_Target extends ObjectTypeDefinition = never,\n > {\n type:\n | DataType.BaseActionParameterTypes\n | DataType.Object<any>\n | DataType.ObjectSet<any>\n | DataType.Interface<any>\n | DataType.Struct<any>;\n description?: string;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export namespace DataType {\n export type BaseActionParameterTypes =\n | \"boolean\"\n | \"string\"\n | \"integer\"\n | \"long\"\n | \"double\"\n | \"datetime\"\n | \"timestamp\"\n | \"attachment\"\n | \"marking\"\n | \"mediaReference\"\n | \"objectType\"\n | \"geoshape\"\n | \"geohash\";\n\n export interface Object<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"object\";\n object: T_Target[\"apiName\"];\n }\n\n export interface Interface<T_Target extends InterfaceDefinition = never> {\n __OsdkTargetType?: T_Target;\n type: \"interface\";\n interface: T_Target[\"apiName\"];\n }\n\n export interface ObjectSet<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"objectSet\";\n objectSet: T_Target[\"apiName\"];\n }\n\n export interface Struct<\n T extends Record<string, DataType.BaseActionParameterTypes>,\n > {\n type: \"struct\";\n struct: T;\n }\n }\n}\n\nexport interface ActionCompileTimeMetadata<T> {\n signatures: T;\n}\n\nexport interface ActionDefinition<\n T_signatures = never,\n> {\n type: \"action\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ActionCompileTimeMetadata<T_signatures>\n & ActionMetadata;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WAuCiBA,cAAc","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ActionDefinition.js","names":["ActionMetadata"],"sources":["ActionDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type { InterfaceDefinition } from \"./InterfaceDefinition.js\";\nimport type {\n ObjectTypeDefinition,\n ReleaseStatus,\n} from \"./ObjectTypeDefinition.js\";\n\nexport interface ActionMetadata {\n type: \"action\";\n apiName: string;\n description?: string;\n displayName?: string;\n parameters: Record<any, ActionMetadata.Parameter<any>>;\n modifiedEntities?: Partial<\n Record<any, {\n created: boolean;\n modified: boolean;\n }>\n >;\n status: ReleaseStatus | undefined;\n rid: string;\n}\n\nexport namespace ActionMetadata {\n export interface Parameter<\n T_Target extends ObjectTypeDefinition = never,\n > {\n type:\n | DataType.BaseActionParameterTypes\n | DataType.Object<any>\n | DataType.ObjectSet<any>\n | DataType.Interface<any>\n | DataType.Struct<any>;\n description?: string;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export namespace DataType {\n export type BaseActionParameterTypes =\n | \"boolean\"\n | \"string\"\n | \"integer\"\n | \"long\"\n | \"double\"\n | \"datetime\"\n | \"timestamp\"\n | \"attachment\"\n | \"marking\"\n | \"mediaReference\"\n | \"objectType\"\n | \"geoshape\"\n | \"geohash\";\n\n export interface Object<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"object\";\n object: T_Target[\"apiName\"];\n }\n\n export interface Interface<T_Target extends InterfaceDefinition = never> {\n __OsdkTargetType?: T_Target;\n type: \"interface\";\n interface: T_Target[\"apiName\"];\n }\n\n export interface ObjectSet<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"objectSet\";\n objectSet: T_Target[\"apiName\"];\n }\n\n export interface Struct<\n T extends Record<string, DataType.BaseActionParameterTypes>,\n > {\n type: \"struct\";\n struct: T;\n }\n }\n}\n\nexport interface ActionCompileTimeMetadata<T> {\n signatures: T;\n}\n\nexport interface ActionDefinition<\n T_signatures = never,\n> {\n type: \"action\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ActionCompileTimeMetadata<T_signatures>\n & ActionMetadata;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WAuCiBA,cAAc","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description
|
|
1
|
+
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description: string | undefined;\n properties: Record<any, ObjectMetadata.Property>;\n links: Record<\n string,\n ObjectMetadata.Link<any, any>\n >;\n rid: string;\n /**\n * Represents the \"super interfaces\" of this object.\n *\n * Optional because they may not exist on legacy.\n */\n implements?: ReadonlyArray<string>;\n};\n\nexport interface ObjectInterfaceCompileDefinition {\n type: \"object\" | \"interface\";\n objectSet?: any;\n props?: any;\n strictProps?: any;\n linksType?: any;\n}\n\nexport interface VersionBound<V extends VersionString<any, any, any>> {\n __expectedClientVersion?: V;\n}\n\nexport interface ObjectMetadata extends ObjectInterfaceBaseMetadata {\n type: \"object\";\n primaryKeyApiName: keyof this[\"properties\"];\n titleProperty: keyof this[\"properties\"];\n primaryKeyType: PrimaryKeyTypes;\n icon: Icon | undefined;\n visibility: ObjectTypeVisibility | undefined;\n pluralDisplayName: string;\n status: ReleaseStatus | undefined;\n interfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* InterfaceType property api name */ string,\n /* ObjectType property api name */ string\n >\n >;\n inverseInterfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* ObjectType property api name */ string,\n /* InterfaceType property api name */ string\n >\n >;\n}\n\nexport namespace ObjectMetadata {\n export interface Property {\n readonly?: boolean;\n displayName?: string;\n description?: string;\n type: WirePropertyTypes;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export interface Link<\n Q extends ObjectTypeDefinition,\n M extends boolean,\n > {\n __OsdkLinkTargetType?: Q;\n targetType: Q[\"apiName\"];\n multiplicity: M;\n }\n}\n\nexport interface ObjectTypeDefinition {\n type: \"object\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ObjectMetadata\n & ObjectInterfaceCompileDefinition;\n}\n\nexport type ObjectTypeLinkKeysFrom2<\n Q extends ObjectTypeDefinition,\n> =\n & keyof CompileTimeMetadata<Q>[\"links\"]\n & string;\n\nexport interface PropertyDef<\n T extends WirePropertyTypes,\n N extends \"nullable\" | \"non-nullable\" = \"nullable\",\n M extends \"array\" | \"single\" = \"single\",\n> extends ObjectMetadata.Property {\n type: T;\n multiplicity: M extends \"array\" ? true : false;\n nullable: N extends \"nullable\" ? true : false;\n}\n\nexport type ReleaseStatus =\n | \"ACTIVE\"\n | \"EXPERIMENTAL\"\n | \"DEPRECATED\"\n | \"ENDORSED\";\n\ntype ObjectTypeVisibility = \"NORMAL\" | \"PROMINENT\" | \"HIDDEN\";\n\ntype BlueprintIcon = {\n type: \"blueprint\";\n color: string;\n name: string;\n};\n\ntype Icon = BlueprintIcon;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WA2FiBA,cAAc","ignoreList":[]}
|
|
@@ -269,7 +269,7 @@ type ObjectInterfaceBaseMetadata = {
|
|
|
269
269
|
type: "object" | "interface";
|
|
270
270
|
apiName: string;
|
|
271
271
|
displayName: string;
|
|
272
|
-
description
|
|
272
|
+
description: string | undefined;
|
|
273
273
|
properties: Record<any, ObjectMetadata.Property>;
|
|
274
274
|
links: Record<string, ObjectMetadata.Link<any, any>>;
|
|
275
275
|
rid: string;
|
|
@@ -295,10 +295,10 @@ interface ObjectMetadata extends ObjectInterfaceBaseMetadata {
|
|
|
295
295
|
primaryKeyApiName: keyof this["properties"];
|
|
296
296
|
titleProperty: keyof this["properties"];
|
|
297
297
|
primaryKeyType: PrimaryKeyTypes;
|
|
298
|
-
icon
|
|
299
|
-
visibility
|
|
298
|
+
icon: Icon | undefined;
|
|
299
|
+
visibility: ObjectTypeVisibility | undefined;
|
|
300
300
|
pluralDisplayName: string;
|
|
301
|
-
status: ReleaseStatus;
|
|
301
|
+
status: ReleaseStatus | undefined;
|
|
302
302
|
interfaceMap: Record<string, Record<string, string>>;
|
|
303
303
|
inverseInterfaceMap: Record<string, Record<string, string>>;
|
|
304
304
|
}
|
package/build/cjs/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as AttachmentUpload, M as MediaReference, a as Attachment, O as ObjectTypeDefinition, b as ObjectIdentifiers, c as OsdkObjectPrimaryKeyType, d as ObjectSet, I as InterfaceDefinition, C as CompileTimeMetadata, e as OsdkMetadata, R as ReleaseStatus, P as PropertyValueWireToClient, f as PrimaryKeyTypes, g as OsdkBase } from './ObjectSet-
|
|
2
|
-
export { h as AggregateOpts, i as AggregateOptsThatErrorsAndDisallowsOrderingWithMultipleGroupBy, l as AggregationClause, j as AggregationResultsWithGroups, k as AggregationResultsWithoutGroups, m as AggregationsResults, u as AllGroupByValues, x as AsyncIterArgs, y as Augment, z as Augments, U as BaseObjectSet, a3 as BaseWirePropertyTypes, a6 as ConvertProps, s as DerivedProperty, D as DistanceUnitMapping, t as DurationMapping, F as FetchPageArgs, H as FetchPageResult, G as GeoFilterOptions, n as GeoFilter_Intersects, o as GeoFilter_Within, aa as GeotimeSeriesProperty, v as GroupByClause, w as GroupByRange, Y as InterfaceMetadata, af as LinkNames, ae as LinkedType, K as Media, L as MediaMetadata, N as NullabilityAdherence, a0 as ObjectMetadata, Z as ObjectOrInterfaceDefinition, X as ObjectSetSubscription, $ as ObjectSpecifier, a7 as Osdk, r as OsdkObjectLinksObject, q as OsdkObjectPropertyType, a8 as PageResult, p as PossibleWhereClauseFilters, a5 as PrimaryKeyType, a1 as PropertyDef, _ as PropertyKeys, T as Result, B as SelectArg, E as SelectArgToKeys, S as SingleLinkAccessor, J as SingleOsdkResult, ab as TimeSeriesPoint, ac as TimeSeriesProperty, ad as TimeSeriesQuery, a9 as TimeseriesDurationMapping, V as ValidAggregationKeys, a2 as VersionBound, W as WhereClause, a4 as WirePropertyTypes, Q as isOk } from './ObjectSet-
|
|
1
|
+
import { A as AttachmentUpload, M as MediaReference, a as Attachment, O as ObjectTypeDefinition, b as ObjectIdentifiers, c as OsdkObjectPrimaryKeyType, d as ObjectSet, I as InterfaceDefinition, C as CompileTimeMetadata, e as OsdkMetadata, R as ReleaseStatus, P as PropertyValueWireToClient, f as PrimaryKeyTypes, g as OsdkBase } from './ObjectSet-D20Nsopd.cjs';
|
|
2
|
+
export { h as AggregateOpts, i as AggregateOptsThatErrorsAndDisallowsOrderingWithMultipleGroupBy, l as AggregationClause, j as AggregationResultsWithGroups, k as AggregationResultsWithoutGroups, m as AggregationsResults, u as AllGroupByValues, x as AsyncIterArgs, y as Augment, z as Augments, U as BaseObjectSet, a3 as BaseWirePropertyTypes, a6 as ConvertProps, s as DerivedProperty, D as DistanceUnitMapping, t as DurationMapping, F as FetchPageArgs, H as FetchPageResult, G as GeoFilterOptions, n as GeoFilter_Intersects, o as GeoFilter_Within, aa as GeotimeSeriesProperty, v as GroupByClause, w as GroupByRange, Y as InterfaceMetadata, af as LinkNames, ae as LinkedType, K as Media, L as MediaMetadata, N as NullabilityAdherence, a0 as ObjectMetadata, Z as ObjectOrInterfaceDefinition, X as ObjectSetSubscription, $ as ObjectSpecifier, a7 as Osdk, r as OsdkObjectLinksObject, q as OsdkObjectPropertyType, a8 as PageResult, p as PossibleWhereClauseFilters, a5 as PrimaryKeyType, a1 as PropertyDef, _ as PropertyKeys, T as Result, B as SelectArg, E as SelectArgToKeys, S as SingleLinkAccessor, J as SingleOsdkResult, ab as TimeSeriesPoint, ac as TimeSeriesProperty, ad as TimeSeriesQuery, a9 as TimeseriesDurationMapping, V as ValidAggregationKeys, a2 as VersionBound, W as WhereClause, a4 as WirePropertyTypes, Q as isOk } from './ObjectSet-D20Nsopd.cjs';
|
|
3
3
|
import 'type-fest';
|
|
4
4
|
import 'geojson';
|
|
5
5
|
|
|
@@ -227,7 +227,7 @@ interface ActionMetadata {
|
|
|
227
227
|
created: boolean;
|
|
228
228
|
modified: boolean;
|
|
229
229
|
}>>;
|
|
230
|
-
status: ReleaseStatus;
|
|
230
|
+
status: ReleaseStatus | undefined;
|
|
231
231
|
rid: string;
|
|
232
232
|
}
|
|
233
233
|
declare namespace ActionMetadata {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Z as ObjectOrInterfaceDefinition, _ as PropertyKeys, M as MediaReference, O as ObjectTypeDefinition, N as NullabilityAdherence, B as SelectArg, a7 as Osdk, ag as ExtractOptions, F as FetchPageArgs, H as FetchPageResult, g as OsdkBase } from '../ObjectSet-
|
|
2
|
-
export { ah as MinimalObjectSet } from '../ObjectSet-
|
|
1
|
+
import { Z as ObjectOrInterfaceDefinition, _ as PropertyKeys, M as MediaReference, O as ObjectTypeDefinition, N as NullabilityAdherence, B as SelectArg, a7 as Osdk, ag as ExtractOptions, F as FetchPageArgs, H as FetchPageResult, g as OsdkBase } from '../ObjectSet-D20Nsopd.cjs';
|
|
2
|
+
export { ah as MinimalObjectSet } from '../ObjectSet-D20Nsopd.cjs';
|
|
3
3
|
import 'type-fest';
|
|
4
4
|
import 'geojson';
|
|
5
5
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OsdkObjectFrom.test.js","names":["describe","expectTypeOf","it","createMockObjectSet","toEqualTypeOf","branded","fauxObjectSet","fetchPage"],"sources":["OsdkObjectFrom.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 { describe, expectTypeOf, it } from \"vitest\";\nimport type { NullabilityAdherence } from \"./object/FetchPageArgs.js\";\nimport { createMockObjectSet } from \"./objectSet/ObjectSet.test.js\";\nimport type { ExtractOptions, Osdk } from \"./OsdkObjectFrom.js\";\n\ndescribe(\"ExtractOptions\", () => {\n describe(\"NullabilityAdherence Generic\", () => {\n it(\"does not add $notStrict for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for never\", () => {\n expectTypeOf<ExtractOptions<any, never>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for false\", () => {\n expectTypeOf<ExtractOptions<any, false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for throw\", () => {\n expectTypeOf<ExtractOptions<any, \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | false>>()\n .toEqualTypeOf<never>();\n });\n it(\"does not add $notStrict for false | throw\", () => {\n expectTypeOf<ExtractOptions<any, false | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\" | false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for NullabilityAdherence\", () => {\n expectTypeOf<ExtractOptions<any, NullabilityAdherence>>()\n .toEqualTypeOf<never>();\n });\n });\n\n describe(\"Rid Generic\", () => {\n it(\"does not add $rid for false\", () => {\n expectTypeOf<ExtractOptions<false, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does add $rid for true\", () => {\n expectTypeOf<ExtractOptions<true, any>>().toEqualTypeOf<\"$rid\">();\n });\n\n it(\"does not add $rid for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for never\", () => {\n expectTypeOf<ExtractOptions<never, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for boolean\", () => {\n expectTypeOf<ExtractOptions<boolean, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for true | false\", () => {\n expectTypeOf<ExtractOptions<true | false, any>>().toEqualTypeOf<never>();\n });\n });\n\n type quickAndDirty = {\n apiName: \"Foo\";\n type: \"object\";\n __DefinitionMetadata: {\n props: {\n name: string;\n foo: number | undefined;\n };\n strictProps: {\n name: string;\n foo: number;\n };\n apiName: \"Foo\";\n displayName: \"\";\n interfaceMap: {};\n inverseInterfaceMap: {};\n links: {};\n pluralDisplayName: \"\";\n primaryKeyApiName: \"\";\n primaryKeyType: \"string\";\n properties: {\n name: {\n type: \"string\";\n };\n foo: {\n type: \"integer\";\n };\n };\n rid: \"\";\n status: \"ACTIVE\";\n titleProperty: \"name\";\n type: \"object\";\n };\n };\n\n describe(\"Osdk.Instance\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk.Instance<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"Cannot use $notStrict\", () => {\n // @ts-expect-error\n type toCheck = Osdk.Instance<quickAndDirty, \"$notStrict\">;\n\n expectTypeOf<toCheck>().branded\n // @ts-expect-error\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, \"$notStrict\">>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, \"name\">>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Osdk<>\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"returns $rid if only thing specified\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: $rid and name\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"name\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the strict type\n expectTypeOf<Pick<toCheck, \"name\">>().toEqualTypeOf<{\n name: quickAndDirty[\"__DefinitionMetadata\"][\"strictProps\"][\"name\"];\n }>();\n });\n\n it(\"handles legacy properly: $rid and $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\" | \"foo\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: just $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"Does not use $notStrict if requested with old type\", () => {\n type toCheck = Osdk<quickAndDirty, \"$notStrict\">;\n expectTypeOf<toCheck>().branded\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, never>>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, \"name\">>()\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Inferred return types from fetchPage work\", () => {\n const fauxObjectSet = createMockObjectSet<quickAndDirty>();\n\n it(\"is not $notStrict\", async () => {\n const page = await fauxObjectSet.fetchPage();\n\n expectTypeOf<typeof page[\"data\"]>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty>[]\n >();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"OsdkObjectFrom.test.js","names":["describe","expectTypeOf","it","createMockObjectSet","toEqualTypeOf","branded","fauxObjectSet","fetchPage"],"sources":["OsdkObjectFrom.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 { describe, expectTypeOf, it } from \"vitest\";\nimport type { NullabilityAdherence } from \"./object/FetchPageArgs.js\";\nimport { createMockObjectSet } from \"./objectSet/ObjectSet.test.js\";\nimport type { ExtractOptions, Osdk } from \"./OsdkObjectFrom.js\";\n\ndescribe(\"ExtractOptions\", () => {\n describe(\"NullabilityAdherence Generic\", () => {\n it(\"does not add $notStrict for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for never\", () => {\n expectTypeOf<ExtractOptions<any, never>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for false\", () => {\n expectTypeOf<ExtractOptions<any, false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for throw\", () => {\n expectTypeOf<ExtractOptions<any, \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | false>>()\n .toEqualTypeOf<never>();\n });\n it(\"does not add $notStrict for false | throw\", () => {\n expectTypeOf<ExtractOptions<any, false | \"throw\">>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for drop | throw | false\", () => {\n expectTypeOf<ExtractOptions<any, \"drop\" | \"throw\" | false>>()\n .toEqualTypeOf<never>();\n });\n\n it(\"does not add $notStrict for NullabilityAdherence\", () => {\n expectTypeOf<ExtractOptions<any, NullabilityAdherence>>()\n .toEqualTypeOf<never>();\n });\n });\n\n describe(\"Rid Generic\", () => {\n it(\"does not add $rid for false\", () => {\n expectTypeOf<ExtractOptions<false, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does add $rid for true\", () => {\n expectTypeOf<ExtractOptions<true, any>>().toEqualTypeOf<\"$rid\">();\n });\n\n it(\"does not add $rid for any\", () => {\n expectTypeOf<ExtractOptions<any, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for never\", () => {\n expectTypeOf<ExtractOptions<never, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for boolean\", () => {\n expectTypeOf<ExtractOptions<boolean, any>>().toEqualTypeOf<never>();\n });\n\n it(\"does not add $rid for true | false\", () => {\n expectTypeOf<ExtractOptions<true | false, any>>().toEqualTypeOf<never>();\n });\n });\n\n type quickAndDirty = {\n apiName: \"Foo\";\n type: \"object\";\n __DefinitionMetadata: {\n props: {\n name: string;\n foo: number | undefined;\n };\n strictProps: {\n name: string;\n foo: number;\n };\n apiName: \"Foo\";\n displayName: \"\";\n interfaceMap: {};\n inverseInterfaceMap: {};\n links: {};\n pluralDisplayName: \"\";\n primaryKeyApiName: \"\";\n primaryKeyType: \"string\";\n properties: {\n name: {\n type: \"string\";\n };\n foo: {\n type: \"integer\";\n };\n };\n rid: \"\";\n status: \"ACTIVE\";\n titleProperty: \"name\";\n type: \"object\";\n icon: undefined;\n visibility: undefined;\n description: undefined;\n };\n };\n\n describe(\"Osdk.Instance\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk.Instance<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk.Instance<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"Cannot use $notStrict\", () => {\n // @ts-expect-error\n type toCheck = Osdk.Instance<quickAndDirty, \"$notStrict\">;\n\n expectTypeOf<toCheck>().branded\n // @ts-expect-error\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, \"$notStrict\">>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk.Instance<quickAndDirty, never, \"name\">>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Osdk<>\", () => {\n it(\"defaults to second argument never if omitted\", () => {\n type toCheck = Osdk<quickAndDirty>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"returns $rid if only thing specified\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: $rid and name\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"name\">;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the strict type\n expectTypeOf<Pick<toCheck, \"name\">>().toEqualTypeOf<{\n name: quickAndDirty[\"__DefinitionMetadata\"][\"strictProps\"][\"name\"];\n }>();\n });\n\n it(\"handles legacy properly: $rid and $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$rid\" | \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, \"$rid\", \"name\" | \"foo\">\n >();\n\n // expect rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<\"$rid\">();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"handles legacy properly: just $all\", () => {\n type toCheck = Osdk<quickAndDirty, \"$all\">;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n });\n\n it(\"defaults to second argument never if never\", () => {\n type toCheck = Osdk<quickAndDirty, never>;\n expectTypeOf<toCheck>().toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to second argument never if any\", () => {\n type toCheck = Osdk<quickAndDirty, any>;\n expectTypeOf<toCheck>().branded.toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never>\n >();\n // ensure its the normal props\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"Does not use $notStrict if requested with old type\", () => {\n type toCheck = Osdk<quickAndDirty, \"$notStrict\">;\n expectTypeOf<toCheck>().branded\n .toEqualTypeOf<Osdk.Instance<quickAndDirty, never>>();\n // ensure its not the strict type\n expectTypeOf<Pick<toCheck, \"name\" | \"foo\">>().toEqualTypeOf<\n quickAndDirty[\"__DefinitionMetadata\"][\"props\"]\n >();\n\n // expect no rid\n expectTypeOf<keyof toCheck & \"$rid\">().toEqualTypeOf<never>();\n });\n\n it(\"defaults to last argument all props if never\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, never>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument all props if any\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, any>>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\" | \"foo\">\n >();\n });\n\n it(\"defaults to last argument exactly if specified\", () => {\n expectTypeOf<Osdk<quickAndDirty, never, \"name\">>()\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty, never, \"name\">\n >();\n });\n });\n\n describe(\"Inferred return types from fetchPage work\", () => {\n const fauxObjectSet = createMockObjectSet<quickAndDirty>();\n\n it(\"is not $notStrict\", async () => {\n const page = await fauxObjectSet.fetchPage();\n\n expectTypeOf<typeof page[\"data\"]>().branded\n .toEqualTypeOf<\n Osdk.Instance<quickAndDirty>[]\n >();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionDefinition.js","names":["ActionMetadata"],"sources":["ActionDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type { InterfaceDefinition } from \"./InterfaceDefinition.js\";\nimport type {\n ObjectTypeDefinition,\n ReleaseStatus,\n} from \"./ObjectTypeDefinition.js\";\n\nexport interface ActionMetadata {\n type: \"action\";\n apiName: string;\n description?: string;\n displayName?: string;\n parameters: Record<any, ActionMetadata.Parameter<any>>;\n modifiedEntities?: Partial<\n Record<any, {\n created: boolean;\n modified: boolean;\n }>\n >;\n status: ReleaseStatus;\n rid: string;\n}\n\nexport namespace ActionMetadata {\n export interface Parameter<\n T_Target extends ObjectTypeDefinition = never,\n > {\n type:\n | DataType.BaseActionParameterTypes\n | DataType.Object<any>\n | DataType.ObjectSet<any>\n | DataType.Interface<any>\n | DataType.Struct<any>;\n description?: string;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export namespace DataType {\n export type BaseActionParameterTypes =\n | \"boolean\"\n | \"string\"\n | \"integer\"\n | \"long\"\n | \"double\"\n | \"datetime\"\n | \"timestamp\"\n | \"attachment\"\n | \"marking\"\n | \"mediaReference\"\n | \"objectType\"\n | \"geoshape\"\n | \"geohash\";\n\n export interface Object<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"object\";\n object: T_Target[\"apiName\"];\n }\n\n export interface Interface<T_Target extends InterfaceDefinition = never> {\n __OsdkTargetType?: T_Target;\n type: \"interface\";\n interface: T_Target[\"apiName\"];\n }\n\n export interface ObjectSet<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"objectSet\";\n objectSet: T_Target[\"apiName\"];\n }\n\n export interface Struct<\n T extends Record<string, DataType.BaseActionParameterTypes>,\n > {\n type: \"struct\";\n struct: T;\n }\n }\n}\n\nexport interface ActionCompileTimeMetadata<T> {\n signatures: T;\n}\n\nexport interface ActionDefinition<\n T_signatures = never,\n> {\n type: \"action\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ActionCompileTimeMetadata<T_signatures>\n & ActionMetadata;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WAuCiBA,cAAc","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ActionDefinition.js","names":["ActionMetadata"],"sources":["ActionDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type { InterfaceDefinition } from \"./InterfaceDefinition.js\";\nimport type {\n ObjectTypeDefinition,\n ReleaseStatus,\n} from \"./ObjectTypeDefinition.js\";\n\nexport interface ActionMetadata {\n type: \"action\";\n apiName: string;\n description?: string;\n displayName?: string;\n parameters: Record<any, ActionMetadata.Parameter<any>>;\n modifiedEntities?: Partial<\n Record<any, {\n created: boolean;\n modified: boolean;\n }>\n >;\n status: ReleaseStatus | undefined;\n rid: string;\n}\n\nexport namespace ActionMetadata {\n export interface Parameter<\n T_Target extends ObjectTypeDefinition = never,\n > {\n type:\n | DataType.BaseActionParameterTypes\n | DataType.Object<any>\n | DataType.ObjectSet<any>\n | DataType.Interface<any>\n | DataType.Struct<any>;\n description?: string;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export namespace DataType {\n export type BaseActionParameterTypes =\n | \"boolean\"\n | \"string\"\n | \"integer\"\n | \"long\"\n | \"double\"\n | \"datetime\"\n | \"timestamp\"\n | \"attachment\"\n | \"marking\"\n | \"mediaReference\"\n | \"objectType\"\n | \"geoshape\"\n | \"geohash\";\n\n export interface Object<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"object\";\n object: T_Target[\"apiName\"];\n }\n\n export interface Interface<T_Target extends InterfaceDefinition = never> {\n __OsdkTargetType?: T_Target;\n type: \"interface\";\n interface: T_Target[\"apiName\"];\n }\n\n export interface ObjectSet<\n T_Target extends ObjectTypeDefinition = never,\n > {\n __OsdkTargetType?: T_Target;\n type: \"objectSet\";\n objectSet: T_Target[\"apiName\"];\n }\n\n export interface Struct<\n T extends Record<string, DataType.BaseActionParameterTypes>,\n > {\n type: \"struct\";\n struct: T;\n }\n }\n}\n\nexport interface ActionCompileTimeMetadata<T> {\n signatures: T;\n}\n\nexport interface ActionDefinition<\n T_signatures = never,\n> {\n type: \"action\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ActionCompileTimeMetadata<T_signatures>\n & ActionMetadata;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WAuCiBA,cAAc","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description
|
|
1
|
+
{"version":3,"file":"ObjectTypeDefinition.js","names":["ObjectMetadata"],"sources":["ObjectTypeDefinition.ts"],"sourcesContent":["/*\n * Copyright 2023 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 { OsdkMetadata } from \"../OsdkMetadata.js\";\nimport type {\n ObjectOrInterfaceDefinition,\n PropertyKeys,\n} from \"./ObjectOrInterface.js\";\nimport type { PrimaryKeyTypes } from \"./PrimaryKeyTypes.js\";\nimport type { VersionString } from \"./VersionString.js\";\nimport type { WirePropertyTypes } from \"./WirePropertyTypes.js\";\n\nexport type CompileTimeMetadata<T extends { __DefinitionMetadata?: {} }> =\n NonNullable<\n T[\"__DefinitionMetadata\"]\n >;\n\nexport type ObjectTypePropertyDefinitionFrom2<\n Q extends ObjectOrInterfaceDefinition,\n P extends PropertyKeys<Q>,\n> = CompileTimeMetadata<Q>[\"properties\"][P];\n\nexport type ObjectInterfaceBaseMetadata = {\n type: \"object\" | \"interface\";\n apiName: string;\n displayName: string;\n description: string | undefined;\n properties: Record<any, ObjectMetadata.Property>;\n links: Record<\n string,\n ObjectMetadata.Link<any, any>\n >;\n rid: string;\n /**\n * Represents the \"super interfaces\" of this object.\n *\n * Optional because they may not exist on legacy.\n */\n implements?: ReadonlyArray<string>;\n};\n\nexport interface ObjectInterfaceCompileDefinition {\n type: \"object\" | \"interface\";\n objectSet?: any;\n props?: any;\n strictProps?: any;\n linksType?: any;\n}\n\nexport interface VersionBound<V extends VersionString<any, any, any>> {\n __expectedClientVersion?: V;\n}\n\nexport interface ObjectMetadata extends ObjectInterfaceBaseMetadata {\n type: \"object\";\n primaryKeyApiName: keyof this[\"properties\"];\n titleProperty: keyof this[\"properties\"];\n primaryKeyType: PrimaryKeyTypes;\n icon: Icon | undefined;\n visibility: ObjectTypeVisibility | undefined;\n pluralDisplayName: string;\n status: ReleaseStatus | undefined;\n interfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* InterfaceType property api name */ string,\n /* ObjectType property api name */ string\n >\n >;\n inverseInterfaceMap: Record<\n /* InterfaceType api name */ string,\n Record<\n /* ObjectType property api name */ string,\n /* InterfaceType property api name */ string\n >\n >;\n}\n\nexport namespace ObjectMetadata {\n export interface Property {\n readonly?: boolean;\n displayName?: string;\n description?: string;\n type: WirePropertyTypes;\n multiplicity?: boolean;\n nullable?: boolean;\n }\n\n export interface Link<\n Q extends ObjectTypeDefinition,\n M extends boolean,\n > {\n __OsdkLinkTargetType?: Q;\n targetType: Q[\"apiName\"];\n multiplicity: M;\n }\n}\n\nexport interface ObjectTypeDefinition {\n type: \"object\";\n apiName: string;\n osdkMetadata?: OsdkMetadata;\n __DefinitionMetadata?:\n & ObjectMetadata\n & ObjectInterfaceCompileDefinition;\n}\n\nexport type ObjectTypeLinkKeysFrom2<\n Q extends ObjectTypeDefinition,\n> =\n & keyof CompileTimeMetadata<Q>[\"links\"]\n & string;\n\nexport interface PropertyDef<\n T extends WirePropertyTypes,\n N extends \"nullable\" | \"non-nullable\" = \"nullable\",\n M extends \"array\" | \"single\" = \"single\",\n> extends ObjectMetadata.Property {\n type: T;\n multiplicity: M extends \"array\" ? true : false;\n nullable: N extends \"nullable\" ? true : false;\n}\n\nexport type ReleaseStatus =\n | \"ACTIVE\"\n | \"EXPERIMENTAL\"\n | \"DEPRECATED\"\n | \"ENDORSED\";\n\ntype ObjectTypeVisibility = \"NORMAL\" | \"PROMINENT\" | \"HIDDEN\";\n\ntype BlueprintIcon = {\n type: \"blueprint\";\n color: string;\n name: string;\n};\n\ntype Icon = BlueprintIcon;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,WA2FiBA,cAAc","ignoreList":[]}
|
|
@@ -14,7 +14,7 @@ export type ObjectInterfaceBaseMetadata = {
|
|
|
14
14
|
type: "object" | "interface"
|
|
15
15
|
apiName: string
|
|
16
16
|
displayName: string
|
|
17
|
-
description
|
|
17
|
+
description: string | undefined
|
|
18
18
|
properties: Record<any, ObjectMetadata.Property>
|
|
19
19
|
links: Record<string, ObjectMetadata.Link<any, any>>
|
|
20
20
|
rid: string
|
|
@@ -40,10 +40,10 @@ export interface ObjectMetadata extends ObjectInterfaceBaseMetadata {
|
|
|
40
40
|
primaryKeyApiName: keyof this["properties"];
|
|
41
41
|
titleProperty: keyof this["properties"];
|
|
42
42
|
primaryKeyType: PrimaryKeyTypes;
|
|
43
|
-
icon
|
|
44
|
-
visibility
|
|
43
|
+
icon: Icon | undefined;
|
|
44
|
+
visibility: ObjectTypeVisibility | undefined;
|
|
45
45
|
pluralDisplayName: string;
|
|
46
|
-
status: ReleaseStatus;
|
|
46
|
+
status: ReleaseStatus | undefined;
|
|
47
47
|
interfaceMap: Record<string, Record<string, string>>;
|
|
48
48
|
inverseInterfaceMap: Record<string, Record<string, string>>;
|
|
49
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,oBAAoB,oBAAqB;AACvD,cACE,6BACA,oBACK,wBAAyB;AAChC,cAAc,uBAAuB,sBAAuB;AAC5D,cAAc,qBAAqB,oBAAqB;AACxD,cAAc,yBAAyB,wBAAyB;AAEhE,YAAY,oBAAoB,UAAU;CAAE,uBAAuB,CAAE;AAAE,KACrE,YACE,EAAE;AAGN,YAAY;CACV,UAAU;CACV,UAAU,aAAa;IACrB,oBAAoB,GAAG,cAAc;AAEzC,YAAY,8BAA8B;CACxC,MAAM,WAAW;CACjB;CACA;CACA;CACA,YAAY,YAAY,eAAe;CACvC,OAAO,eAEL,eAAe;CAEjB;;;;;;CAMA,aAAa;AACd;AAED,iBAAiB,iCAAiC;CAChD,MAAM,WAAW;CACjB;CACA;CACA;CACA;AACD;AAED,iBAAiB,aAAa,UAAU,8BAA8B;CACpE,0BAA0B;AAC3B;AAED,iBAAiB,uBAAuB,4BAA4B;CAClE,MAAM;CACN,8BAA8B;CAC9B,0BAA0B;CAC1B,gBAAgB;CAChB,
|
|
1
|
+
{"mappings":"AAgBA,cAAc,oBAAoB,oBAAqB;AACvD,cACE,6BACA,oBACK,wBAAyB;AAChC,cAAc,uBAAuB,sBAAuB;AAC5D,cAAc,qBAAqB,oBAAqB;AACxD,cAAc,yBAAyB,wBAAyB;AAEhE,YAAY,oBAAoB,UAAU;CAAE,uBAAuB,CAAE;AAAE,KACrE,YACE,EAAE;AAGN,YAAY;CACV,UAAU;CACV,UAAU,aAAa;IACrB,oBAAoB,GAAG,cAAc;AAEzC,YAAY,8BAA8B;CACxC,MAAM,WAAW;CACjB;CACA;CACA;CACA,YAAY,YAAY,eAAe;CACvC,OAAO,eAEL,eAAe;CAEjB;;;;;;CAMA,aAAa;AACd;AAED,iBAAiB,iCAAiC;CAChD,MAAM,WAAW;CACjB;CACA;CACA;CACA;AACD;AAED,iBAAiB,aAAa,UAAU,8BAA8B;CACpE,0BAA0B;AAC3B;AAED,iBAAiB,uBAAuB,4BAA4B;CAClE,MAAM;CACN,8BAA8B;CAC9B,0BAA0B;CAC1B,gBAAgB;CAChB,MAAM;CACN,YAAY;CACZ;CACA,QAAQ;CACR,cAAc,eAEZ;CAKF,qBAAqB,eAEnB;AAKH;AAED,yBAAiB;WACE,SAAS;EACxB;EACA;EACA;EACA,MAAM;EACN;EACA;CACD;WAEgB;EACf,UAAU;EACV;GACA;EACA,uBAAuB;EACvB,YAAY,EAAE;EACd,cAAc;CACf;;AAGH,iBAAiB,qBAAqB;CACpC,MAAM;CACN;CACA,eAAe;CACf,uBACI,iBACA;AACL;AAED,YAAY,wBACV,UAAU,8BAEF,oBAAoB,GAAG;AAGjC,iBAAiB;CACf,UAAU;CACV,UAAU,aAAa,iBAAiB;CACxC,UAAU,UAAU,WAAW;UACvB,eAAe,SAAS;CAChC,MAAM;CACN,cAAc,UAAU,UAAU,OAAO;CACzC,UAAU,UAAU,aAAa,OAAO;AACzC;AAED,YAAY,gBACR,WACA,iBACA,eACA;KAEC,uBAAuB,WAAW,cAAc;KAEhD,gBAAgB;CACnB,MAAM;CACN;CACA;AACD;KAEI,OAAO","names":[],"sources":["../../../src/ontology/ObjectTypeDefinition.ts"],"version":3,"file":"ObjectTypeDefinition.d.ts"}
|