@osdk/client 2.0.2-beta.2 → 2.0.2-rc.3

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 (30) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +1 -3
  3. package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  4. package/build/browser/object/convertWireToOsdkObjects.test.js +25 -1
  5. package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
  6. package/build/browser/object/object.test.js +1 -1
  7. package/build/browser/object/object.test.js.map +1 -1
  8. package/build/browser/objectSet/ObjectSet.test.js +0 -1
  9. package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
  10. package/build/browser/queries/applyQuery.js +3 -3
  11. package/build/browser/queries/applyQuery.js.map +1 -1
  12. package/build/browser/queries/queries.test.js +7 -1
  13. package/build/browser/queries/queries.test.js.map +1 -1
  14. package/build/browser/util/UserAgent.js +1 -1
  15. package/build/browser/util/UserAgent.js.map +1 -1
  16. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +1 -3
  17. package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
  18. package/build/esm/object/convertWireToOsdkObjects.test.js +25 -1
  19. package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
  20. package/build/esm/object/object.test.js +1 -1
  21. package/build/esm/object/object.test.js.map +1 -1
  22. package/build/esm/objectSet/ObjectSet.test.js +0 -1
  23. package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
  24. package/build/esm/queries/applyQuery.js +3 -3
  25. package/build/esm/queries/applyQuery.js.map +1 -1
  26. package/build/esm/queries/queries.test.js +7 -1
  27. package/build/esm/queries/queries.test.js.map +1 -1
  28. package/build/esm/util/UserAgent.js +1 -1
  29. package/build/esm/util/UserAgent.js.map +1 -1
  30. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"queries.test.js","names":["$ontologyRid","$Queries","acceptsThreeDimensionalAggregationFunction","acceptsTwoDimensionalAggregationFunction","addOne","Employee","incrementPersonAge","queryAcceptsObject","queryAcceptsObjectSets","returnsDate","returnsTimestamp","threeDimensionalAggregationFunction","twoDimensionalAggregationFunction","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","client","listen","close","result","executeFunction","n","toBe","employee","fetchOne","object","toEqual","$apiName","$objectType","$primaryKey","result2","employeeObjectSet","objectSet","toMatchTypeOf","resultWithTimestamp","resultWithDate","person","firstName","lastName","age","key","value","aggFunction","groups","startValue","endValue","fail","e","message","toMatch","queries","Object","keys","toStrictEqual"],"sources":["queries.test.js"],"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 */\nimport { $ontologyRid, $Queries, acceptsThreeDimensionalAggregationFunction, acceptsTwoDimensionalAggregationFunction, addOne, Employee, incrementPersonAge, queryAcceptsObject, queryAcceptsObjectSets, returnsDate, returnsTimestamp, threeDimensionalAggregationFunction, twoDimensionalAggregationFunction, } from \"@osdk/client.test.ontology\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\ndescribe(\"queries\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"simple query works\", async () => {\n const result = await client(addOne).executeFunction({ n: 2 });\n expect(result).toBe(3);\n });\n it(\"accepts objects\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n const result = await client(queryAcceptsObject).executeFunction({\n object: employee,\n });\n expect(result).toEqual({\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50031,\n });\n // Should also accept primary keys\n const result2 = await client(queryAcceptsObject).executeFunction({\n object: 50030,\n });\n expect(result2).toEqual({\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50031,\n });\n });\n it(\"accepts objectSets\", async () => {\n const employeeObjectSet = client(Employee);\n const result = await client(queryAcceptsObjectSets).executeFunction({\n objectSet: employeeObjectSet,\n });\n expectTypeOf().toMatchTypeOf();\n });\n it(\"no params work\", async () => {\n const resultWithTimestamp = await client(returnsTimestamp)\n .executeFunction();\n expect(resultWithTimestamp).toBe(\"2019-01-01T00:00:00.000Z\");\n const resultWithDate = await client(returnsDate).executeFunction();\n expect(resultWithDate).toBe(\"2019-01-01\");\n });\n it(\"returns and accepts structs property\", async () => {\n const result = await client(incrementPersonAge).executeFunction({\n person: { firstName: \"John\", lastName: \"Doe\", age: 42 },\n });\n expect(result).toEqual({\n firstName: \"John\",\n lastName: \"Doe\",\n age: 43,\n });\n });\n it(\"two dimensional aggregation response works\", async () => {\n const result = await client(twoDimensionalAggregationFunction)\n .executeFunction();\n expect(result).toEqual([{ key: \"Q-AFN\", value: 1 }, {\n key: \"Q-AFO\",\n value: 2,\n }]);\n });\n it(\"two dimensional aggregation request/response works\", async () => {\n const result = await client(acceptsTwoDimensionalAggregationFunction)\n .executeFunction({\n aggFunction: [\n {\n key: \"testKey1\",\n value: 1,\n },\n {\n key: \"testKey2\",\n value: 2,\n },\n ],\n });\n expect(result).toEqual([{ key: \"responseKey1\", value: 3 }, {\n key: \"responseKey2\",\n value: 4,\n }]);\n });\n it(\"three dimensional aggregation response works\", async () => {\n const result = await client(threeDimensionalAggregationFunction)\n .executeFunction();\n expect(result).toEqual([{\n key: \"Q-AFN\",\n groups: [{\n key: {\n startValue: \"2010-10-01T00:00:00Z\",\n endValue: \"2010-10-02T00:00:00Z\",\n },\n value: 65.0,\n }],\n }, { key: \"Q-AFO\", groups: [] }]);\n });\n it(\"throws when response is null and response is non-nullable\", async () => {\n try {\n const result = await client(addOne).executeFunction({ n: 3 });\n expect.fail(\"Should not reach here\");\n }\n catch (e) {\n expect(e.message).toMatch(`Got null response when nullable was not allowed`);\n }\n });\n it(\"three dimensional aggregation request/response works\", async () => {\n const result = await client(acceptsThreeDimensionalAggregationFunction)\n .executeFunction({\n aggFunction: [\n {\n key: \"testKey1\",\n groups: [\n {\n key: {\n startValue: \"2010-10-01T00:00:00Z\",\n endValue: \"2010-10-02T00:00:00Z\",\n },\n value: 65.0,\n },\n ],\n },\n {\n key: \"testKey2\",\n groups: [],\n },\n ],\n });\n expect(result).toEqual([\n {\n key: \"Q-AFN\",\n groups: [\n {\n key: {\n startValue: \"2010-10-01T00:00:00Z\",\n endValue: \"2010-10-02T00:00:00Z\",\n },\n value: 65.0,\n },\n ],\n },\n {\n key: \"Q-AFO\",\n groups: [],\n },\n ]);\n });\n it(\"queries are enumerable\", async () => {\n const queries = Object.keys($Queries);\n expect(queries).toStrictEqual([\n \"acceptsThreeDimensionalAggregationFunction\",\n \"acceptsTwoDimensionalAggregationFunction\",\n \"addOne\",\n \"incrementPersonAge\",\n \"queryAcceptsObject\",\n \"queryAcceptsObjectSets\",\n \"returnsDate\",\n \"returnsObject\",\n \"returnsTimestamp\",\n \"threeDimensionalAggregationFunction\",\n \"twoDimensionalAggregationFunction\",\n ]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"queries.test.js","names":["$ontologyRid","$Queries","acceptsThreeDimensionalAggregationFunction","acceptsTwoDimensionalAggregationFunction","addOne","Employee","incrementPersonAge","queryAcceptsObject","queryAcceptsObjectSets","returnsDate","returnsTimestamp","threeDimensionalAggregationFunction","twoDimensionalAggregationFunction","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","client","listen","close","result","executeFunction","n","toBe","employee","fetchOne","object","toEqual","$apiName","$objectType","$primaryKey","result2","employeeObjectSet","objectSet","toMatchTypeOf","resultWithTimestamp","resultWithDate","person","firstName","lastName","age","key","value","aggFunction","groups","startValue","endValue","fail","e","message","toMatch","queries","Object","keys","toStrictEqual","queryTypeReturnsArray","people"],"sources":["queries.test.js"],"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 */\nimport { $ontologyRid, $Queries, acceptsThreeDimensionalAggregationFunction, acceptsTwoDimensionalAggregationFunction, addOne, Employee, incrementPersonAge, queryAcceptsObject, queryAcceptsObjectSets, returnsDate, returnsTimestamp, threeDimensionalAggregationFunction, twoDimensionalAggregationFunction, } from \"@osdk/client.test.ontology\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\ndescribe(\"queries\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"simple query works\", async () => {\n const result = await client(addOne).executeFunction({ n: 2 });\n expect(result).toBe(3);\n });\n it(\"accepts objects\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n const result = await client(queryAcceptsObject).executeFunction({\n object: employee,\n });\n expect(result).toEqual({\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50031,\n });\n // Should also accept primary keys\n const result2 = await client(queryAcceptsObject).executeFunction({\n object: 50030,\n });\n expect(result2).toEqual({\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50031,\n });\n });\n it(\"accepts objectSets\", async () => {\n const employeeObjectSet = client(Employee);\n const result = await client(queryAcceptsObjectSets).executeFunction({\n objectSet: employeeObjectSet,\n });\n expectTypeOf().toMatchTypeOf();\n });\n it(\"no params work\", async () => {\n const resultWithTimestamp = await client(returnsTimestamp)\n .executeFunction();\n expect(resultWithTimestamp).toBe(\"2019-01-01T00:00:00.000Z\");\n const resultWithDate = await client(returnsDate).executeFunction();\n expect(resultWithDate).toBe(\"2019-01-01\");\n });\n it(\"returns and accepts structs property\", async () => {\n const result = await client(incrementPersonAge).executeFunction({\n person: { firstName: \"John\", lastName: \"Doe\", age: 42 },\n });\n expect(result).toEqual({\n firstName: \"John\",\n lastName: \"Doe\",\n age: 43,\n });\n });\n it(\"two dimensional aggregation response works\", async () => {\n const result = await client(twoDimensionalAggregationFunction)\n .executeFunction();\n expect(result).toEqual([{ key: \"Q-AFN\", value: 1 }, {\n key: \"Q-AFO\",\n value: 2,\n }]);\n });\n it(\"two dimensional aggregation request/response works\", async () => {\n const result = await client(acceptsTwoDimensionalAggregationFunction)\n .executeFunction({\n aggFunction: [\n {\n key: \"testKey1\",\n value: 1,\n },\n {\n key: \"testKey2\",\n value: 2,\n },\n ],\n });\n expect(result).toEqual([{ key: \"responseKey1\", value: 3 }, {\n key: \"responseKey2\",\n value: 4,\n }]);\n });\n it(\"three dimensional aggregation response works\", async () => {\n const result = await client(threeDimensionalAggregationFunction)\n .executeFunction();\n expect(result).toEqual([{\n key: \"Q-AFN\",\n groups: [{\n key: {\n startValue: \"2010-10-01T00:00:00Z\",\n endValue: \"2010-10-02T00:00:00Z\",\n },\n value: 65.0,\n }],\n }, { key: \"Q-AFO\", groups: [] }]);\n });\n it(\"throws when response is null and response is non-nullable\", async () => {\n try {\n const result = await client(addOne).executeFunction({ n: 3 });\n expect.fail(\"Should not reach here\");\n }\n catch (e) {\n expect(e.message).toMatch(`Got null response when nullable was not allowed`);\n }\n });\n it(\"three dimensional aggregation request/response works\", async () => {\n const result = await client(acceptsThreeDimensionalAggregationFunction)\n .executeFunction({\n aggFunction: [\n {\n key: \"testKey1\",\n groups: [\n {\n key: {\n startValue: \"2010-10-01T00:00:00Z\",\n endValue: \"2010-10-02T00:00:00Z\",\n },\n value: 65.0,\n },\n ],\n },\n {\n key: \"testKey2\",\n groups: [],\n },\n ],\n });\n expect(result).toEqual([\n {\n key: \"Q-AFN\",\n groups: [\n {\n key: {\n startValue: \"2010-10-01T00:00:00Z\",\n endValue: \"2010-10-02T00:00:00Z\",\n },\n value: 65.0,\n },\n ],\n },\n {\n key: \"Q-AFO\",\n groups: [],\n },\n ]);\n });\n it(\"queries are enumerable\", async () => {\n const queries = Object.keys($Queries);\n expect(queries).toStrictEqual([\n \"acceptsThreeDimensionalAggregationFunction\",\n \"acceptsTwoDimensionalAggregationFunction\",\n \"addOne\",\n \"incrementPersonAge\",\n \"queryAcceptsObject\",\n \"queryAcceptsObjectSets\",\n \"queryTypeReturnsArray\",\n \"returnsDate\",\n \"returnsObject\",\n \"returnsTimestamp\",\n \"threeDimensionalAggregationFunction\",\n \"twoDimensionalAggregationFunction\",\n ]);\n });\n it(\"queries work with arrays\", async () => {\n const result = await client($Queries.queryTypeReturnsArray).executeFunction({ people: [\"Brad\", \"George\", \"Ryan\"] });\n expect(result).toEqual([\"Pitt\", \"Clooney\", \"Reynolds\"]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -13,5 +13,5 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export const USER_AGENT = `osdk-client/${"2.0.2-beta.2"}`;
16
+ export const USER_AGENT = `osdk-client/${"2.0.2-rc.3"}`;
17
17
  //# sourceMappingURL=UserAgent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserAgent.js","names":["USER_AGENT"],"sources":["UserAgent.js"],"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 */\nexport const USER_AGENT = `osdk-client/${process.env.PACKAGE_VERSION}`;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,UAAU,GAAG,+BAA4C","ignoreList":[]}
1
+ {"version":3,"file":"UserAgent.js","names":["USER_AGENT"],"sources":["UserAgent.js"],"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 */\nexport const USER_AGENT = `osdk-client/${process.env.PACKAGE_VERSION}`;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,UAAU,GAAG,6BAA4C","ignoreList":[]}
@@ -104,9 +104,7 @@ export function createOsdkObject(client, objectDef, rawObj) {
104
104
  enumerable: true
105
105
  };
106
106
  }
107
- return {
108
- enumerable: false
109
- };
107
+ return undefined;
110
108
  }
111
109
  });
112
110
  return osdkObject;
@@ -1 +1 @@
1
- {"version":3,"file":"createOsdkObject.js","names":["createAttachmentFromRid","TimeSeriesPropertyImpl","createClientCache","get$as","get$link","ClientRef","ObjectDefRef","RawObject","UnderlyingOsdkObject","objectPrototypeCache","client","objectDef","Object","create","value","get","newValues","assign","createOsdkObject","rawObj","objectHolderPrototype","writable","holder","osdkObject","Proxy","ownKeys","target","Reflect","p","receiver","rawValue","propDef","properties","type","Array","isArray","map","a","rid","apiName","primaryKeyApiName","set","newValue","getOwnPropertyDescriptor","configurable","enumerable"],"sources":["createOsdkObject.js"],"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 */\nimport { createAttachmentFromRid } from \"../../createAttachmentFromRid.js\";\nimport { TimeSeriesPropertyImpl } from \"../../createTimeseriesProperty.js\";\nimport { createClientCache } from \"../Cache.js\";\nimport { get$as } from \"./getDollarAs.js\";\nimport { get$link } from \"./getDollarLink.js\";\nimport { ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject, } from \"./InternalSymbols.js\";\nconst objectPrototypeCache = createClientCache(function (client, objectDef) {\n return Object.create(null, {\n [ObjectDefRef]: { value: objectDef },\n [ClientRef]: { value: client },\n \"$as\": { value: get$as(objectDef) },\n \"$link\": {\n get: function () {\n return get$link(this);\n },\n },\n \"$updateInternalValues\": {\n value: function (newValues) {\n this[RawObject] = Object.assign({}, this[RawObject], newValues);\n },\n },\n });\n});\n/** @internal */\nexport function createOsdkObject(client, objectDef, rawObj) {\n // We use multiple layers of prototypes to maximize reuse and also to keep\n // [RawObject] out of `ownKeys`. This keeps the code in the proxy below simpler.\n const objectHolderPrototype = Object.create(objectPrototypeCache.get(client, objectDef), {\n [RawObject]: {\n value: rawObj,\n writable: true, // so we can allow updates\n },\n });\n // we separate the holder out so we can update\n // the underlying data without having to return a new object\n // we also need the holder so we can customize the console.log output\n const holder = Object.create(objectHolderPrototype);\n const osdkObject = new Proxy(holder, {\n ownKeys(target) {\n return Reflect.ownKeys(target[RawObject]);\n },\n get(target, p, receiver) {\n switch (p) {\n case UnderlyingOsdkObject:\n // effectively point back to the proxy\n return receiver;\n }\n if (p in target)\n return target[p];\n if (p in rawObj) {\n const rawValue = target[RawObject][p];\n const propDef = objectDef.properties[p];\n if (propDef) {\n if (propDef.type === \"attachment\") {\n if (Array.isArray(rawValue)) {\n return rawValue.map(a => createAttachmentFromRid(client, a.rid));\n }\n return createAttachmentFromRid(client, rawValue.rid);\n }\n if (propDef.type === \"numericTimeseries\"\n || propDef.type === \"stringTimeseries\") {\n return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);\n }\n }\n return rawValue;\n }\n // we do not do any fall through to avoid unexpected behavior\n },\n set(target, p, newValue) {\n // allow the prototype to update this value\n if (p === RawObject) {\n // symbol only exists internally so no one else can hit this\n target[p] = newValue;\n return true;\n }\n return false;\n },\n getOwnPropertyDescriptor(target, p) {\n if (p === RawObject) {\n return Reflect.getOwnPropertyDescriptor(target, p);\n }\n if (target[RawObject][p] != null) {\n return { configurable: true, enumerable: true };\n }\n return { enumerable: false };\n },\n });\n return osdkObject;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"createOsdkObject.js","names":["createAttachmentFromRid","TimeSeriesPropertyImpl","createClientCache","get$as","get$link","ClientRef","ObjectDefRef","RawObject","UnderlyingOsdkObject","objectPrototypeCache","client","objectDef","Object","create","value","get","newValues","assign","createOsdkObject","rawObj","objectHolderPrototype","writable","holder","osdkObject","Proxy","ownKeys","target","Reflect","p","receiver","rawValue","propDef","properties","type","Array","isArray","map","a","rid","apiName","primaryKeyApiName","set","newValue","getOwnPropertyDescriptor","configurable","enumerable","undefined"],"sources":["createOsdkObject.js"],"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 */\nimport { createAttachmentFromRid } from \"../../createAttachmentFromRid.js\";\nimport { TimeSeriesPropertyImpl } from \"../../createTimeseriesProperty.js\";\nimport { createClientCache } from \"../Cache.js\";\nimport { get$as } from \"./getDollarAs.js\";\nimport { get$link } from \"./getDollarLink.js\";\nimport { ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject, } from \"./InternalSymbols.js\";\nconst objectPrototypeCache = createClientCache(function (client, objectDef) {\n return Object.create(null, {\n [ObjectDefRef]: { value: objectDef },\n [ClientRef]: { value: client },\n \"$as\": { value: get$as(objectDef) },\n \"$link\": {\n get: function () {\n return get$link(this);\n },\n },\n \"$updateInternalValues\": {\n value: function (newValues) {\n this[RawObject] = Object.assign({}, this[RawObject], newValues);\n },\n },\n });\n});\n/** @internal */\nexport function createOsdkObject(client, objectDef, rawObj) {\n // We use multiple layers of prototypes to maximize reuse and also to keep\n // [RawObject] out of `ownKeys`. This keeps the code in the proxy below simpler.\n const objectHolderPrototype = Object.create(objectPrototypeCache.get(client, objectDef), {\n [RawObject]: {\n value: rawObj,\n writable: true, // so we can allow updates\n },\n });\n // we separate the holder out so we can update\n // the underlying data without having to return a new object\n // we also need the holder so we can customize the console.log output\n const holder = Object.create(objectHolderPrototype);\n const osdkObject = new Proxy(holder, {\n ownKeys(target) {\n return Reflect.ownKeys(target[RawObject]);\n },\n get(target, p, receiver) {\n switch (p) {\n case UnderlyingOsdkObject:\n // effectively point back to the proxy\n return receiver;\n }\n if (p in target)\n return target[p];\n if (p in rawObj) {\n const rawValue = target[RawObject][p];\n const propDef = objectDef.properties[p];\n if (propDef) {\n if (propDef.type === \"attachment\") {\n if (Array.isArray(rawValue)) {\n return rawValue.map(a => createAttachmentFromRid(client, a.rid));\n }\n return createAttachmentFromRid(client, rawValue.rid);\n }\n if (propDef.type === \"numericTimeseries\"\n || propDef.type === \"stringTimeseries\") {\n return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);\n }\n }\n return rawValue;\n }\n // we do not do any fall through to avoid unexpected behavior\n },\n set(target, p, newValue) {\n // allow the prototype to update this value\n if (p === RawObject) {\n // symbol only exists internally so no one else can hit this\n target[p] = newValue;\n return true;\n }\n return false;\n },\n getOwnPropertyDescriptor(target, p) {\n if (p === RawObject) {\n return Reflect.getOwnPropertyDescriptor(target, p);\n }\n if (target[RawObject][p] != null) {\n return { configurable: true, enumerable: true };\n }\n return undefined;\n },\n });\n return osdkObject;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,uBAAuB,QAAQ,kCAAkC;AAC1E,SAASC,sBAAsB,QAAQ,mCAAmC;AAC1E,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,SAAS,EAAEC,YAAY,EAAEC,SAAS,EAAEC,oBAAoB,QAAS,sBAAsB;AAChG,MAAMC,oBAAoB,GAAGP,iBAAiB,CAAC,UAAUQ,MAAM,EAAEC,SAAS,EAAE;EACxE,OAAOC,MAAM,CAACC,MAAM,CAAC,IAAI,EAAE;IACvB,CAACP,YAAY,GAAG;MAAEQ,KAAK,EAAEH;IAAU,CAAC;IACpC,CAACN,SAAS,GAAG;MAAES,KAAK,EAAEJ;IAAO,CAAC;IAC9B,KAAK,EAAE;MAAEI,KAAK,EAAEX,MAAM,CAACQ,SAAS;IAAE,CAAC;IACnC,OAAO,EAAE;MACLI,GAAG,EAAE,SAAAA,CAAA,EAAY;QACb,OAAOX,QAAQ,CAAC,IAAI,CAAC;MACzB;IACJ,CAAC;IACD,uBAAuB,EAAE;MACrBU,KAAK,EAAE,SAAAA,CAAUE,SAAS,EAAE;QACxB,IAAI,CAACT,SAAS,CAAC,GAAGK,MAAM,CAACK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAACV,SAAS,CAAC,EAAES,SAAS,CAAC;MACnE;IACJ;EACJ,CAAC,CAAC;AACN,CAAC,CAAC;AACF;AACA,OAAO,SAASE,gBAAgBA,CAACR,MAAM,EAAEC,SAAS,EAAEQ,MAAM,EAAE;EACxD;EACA;EACA,MAAMC,qBAAqB,GAAGR,MAAM,CAACC,MAAM,CAACJ,oBAAoB,CAACM,GAAG,CAACL,MAAM,EAAEC,SAAS,CAAC,EAAE;IACrF,CAACJ,SAAS,GAAG;MACTO,KAAK,EAAEK,MAAM;MACbE,QAAQ,EAAE,IAAI,CAAE;IACpB;EACJ,CAAC,CAAC;EACF;EACA;EACA;EACA,MAAMC,MAAM,GAAGV,MAAM,CAACC,MAAM,CAACO,qBAAqB,CAAC;EACnD,MAAMG,UAAU,GAAG,IAAIC,KAAK,CAACF,MAAM,EAAE;IACjCG,OAAOA,CAACC,MAAM,EAAE;MACZ,OAAOC,OAAO,CAACF,OAAO,CAACC,MAAM,CAACnB,SAAS,CAAC,CAAC;IAC7C,CAAC;IACDQ,GAAGA,CAACW,MAAM,EAAEE,CAAC,EAAEC,QAAQ,EAAE;MACrB,QAAQD,CAAC;QACL,KAAKpB,oBAAoB;UACrB;UACA,OAAOqB,QAAQ;MACvB;MACA,IAAID,CAAC,IAAIF,MAAM,EACX,OAAOA,MAAM,CAACE,CAAC,CAAC;MACpB,IAAIA,CAAC,IAAIT,MAAM,EAAE;QACb,MAAMW,QAAQ,GAAGJ,MAAM,CAACnB,SAAS,CAAC,CAACqB,CAAC,CAAC;QACrC,MAAMG,OAAO,GAAGpB,SAAS,CAACqB,UAAU,CAACJ,CAAC,CAAC;QACvC,IAAIG,OAAO,EAAE;UACT,IAAIA,OAAO,CAACE,IAAI,KAAK,YAAY,EAAE;YAC/B,IAAIC,KAAK,CAACC,OAAO,CAACL,QAAQ,CAAC,EAAE;cACzB,OAAOA,QAAQ,CAACM,GAAG,CAACC,CAAC,IAAIrC,uBAAuB,CAACU,MAAM,EAAE2B,CAAC,CAACC,GAAG,CAAC,CAAC;YACpE;YACA,OAAOtC,uBAAuB,CAACU,MAAM,EAAEoB,QAAQ,CAACQ,GAAG,CAAC;UACxD;UACA,IAAIP,OAAO,CAACE,IAAI,KAAK,mBAAmB,IACjCF,OAAO,CAACE,IAAI,KAAK,kBAAkB,EAAE;YACxC,OAAO,IAAIhC,sBAAsB,CAACS,MAAM,EAAEC,SAAS,CAAC4B,OAAO,EAAEb,MAAM,CAACnB,SAAS,CAAC,CAACI,SAAS,CAAC6B,iBAAiB,CAAC,EAAEZ,CAAC,CAAC;UACnH;QACJ;QACA,OAAOE,QAAQ;MACnB;MACA;IACJ,CAAC;IACDW,GAAGA,CAACf,MAAM,EAAEE,CAAC,EAAEc,QAAQ,EAAE;MACrB;MACA,IAAId,CAAC,KAAKrB,SAAS,EAAE;QACjB;QACAmB,MAAM,CAACE,CAAC,CAAC,GAAGc,QAAQ;QACpB,OAAO,IAAI;MACf;MACA,OAAO,KAAK;IAChB,CAAC;IACDC,wBAAwBA,CAACjB,MAAM,EAAEE,CAAC,EAAE;MAChC,IAAIA,CAAC,KAAKrB,SAAS,EAAE;QACjB,OAAOoB,OAAO,CAACgB,wBAAwB,CAACjB,MAAM,EAAEE,CAAC,CAAC;MACtD;MACA,IAAIF,MAAM,CAACnB,SAAS,CAAC,CAACqB,CAAC,CAAC,IAAI,IAAI,EAAE;QAC9B,OAAO;UAAEgB,YAAY,EAAE,IAAI;UAAEC,UAAU,EAAE;QAAK,CAAC;MACnD;MACA,OAAOC,SAAS;IACpB;EACJ,CAAC,CAAC;EACF,OAAOvB,UAAU;AACrB","ignoreList":[]}
@@ -34,10 +34,34 @@ describe("convertWireToOsdkObjects", () => {
34
34
  const {
35
35
  data: [employee]
36
36
  } = await client(Employee).fetchPage();
37
- expect(Object.keys(employee).sort()).toEqual(["employeeId", "fullName", "office", "class", "startDate", "employeeStatus", "$apiName", "$objectType", "$primaryKey", "$title"].sort());
37
+ expect(Object.keys(employee).sort()).toEqual(["employeeId", "fullName", "office", "class", "startDate", "employeeStatus", "$apiName", "$objectType", "$primaryKey"].sort());
38
38
  expect(Object.keys(employee.$as)).toEqual([]);
39
39
  expect(Object.keys(employee.$link)).toEqual(["peeps", "lead", "officeLink"]);
40
40
  });
41
+ it("stringifies properties on objects and interfaces correctly", async () => {
42
+ const {
43
+ data: [employee]
44
+ } = await client(Employee).fetchPage();
45
+ const {
46
+ data: [employee2]
47
+ } = await client(Employee).where({
48
+ $and: [{
49
+ employeeId: {
50
+ $gt: 50030
51
+ }
52
+ }, {
53
+ employeeId: {
54
+ $lt: 50032
55
+ }
56
+ }]
57
+ }).fetchPage();
58
+ // Should not have $title
59
+ expect(JSON.stringify(employee)).toMatchInlineSnapshot(`"{"employeeId":50030,"fullName":"John Doe","office":"NYC","class":"Red","startDate":"2019-01-01","employeeStatus":{},"$apiName":"Employee","$objectType":"Employee","$primaryKey":50030}"`);
60
+ expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`"{"$apiName":"FooInterface","$objectType":"Employee","$primaryKey":50030,"fooSpt":"John Doe"}"`);
61
+ // Should have $title
62
+ expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`"{"employeeId":50031,"fullName":"Jane Doe","office":"SEA","class":"Blue","startDate":"2012-02-12","employeeStatus":{},"$apiName":"Employee","$objectType":"Employee","$primaryKey":50031,"$title":"Jane Doe"}"`);
63
+ expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`"{"$apiName":"FooInterface","$objectType":"Employee","$primaryKey":50031,"$title":"Jane Doe","fooSpt":"Jane Doe"}"`);
64
+ });
41
65
  it("reuses the object prototype across objects", async () => {
42
66
  const employees = await client(Employee).fetchPage();
43
67
  expect(employees.data.length).toBeGreaterThanOrEqual(2);
@@ -1 +1 @@
1
- {"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","symbolClientContext","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","createMinimalClient","convertWireToOsdkObjects","client","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","where","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","obj","__title","fullName","employeeId","objAsFoo","toMatchObject","fooSpt","$apiName","$primaryKey","$objectType","$title","console","log","$updateInternalValues","toMatchInlineSnapshot","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result"],"sources":["convertWireToOsdkObjects.test.js"],"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 */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { symbolClientContext } from \"@osdk/shared.client\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"works even with unknown apiNames\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"updates interface when underlying changes\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n employeeId: \"5\",\n };\n const [obj] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], undefined));\n expect(obj.fullName).toEqual(\"Steve\");\n expect(Object.keys(obj).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"employeeId\",\n \"fullName\",\n ].sort());\n const objAsFoo = obj.$as(FooInterface);\n expect(objAsFoo).toMatchObject({\n fooSpt: obj.fullName,\n $apiName: FooInterface.apiName,\n $primaryKey: obj.$primaryKey,\n $objectType: obj.$objectType,\n $title: obj.$title,\n });\n console.log(obj);\n console.log(objAsFoo);\n obj.$updateInternalValues({\n fullName: \"Bob\",\n });\n expect(obj.fullName).toEqual(\"Bob\");\n expect(objAsFoo.fooSpt).toEqual(obj.fullName);\n expect(Object.keys(objAsFoo).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"fooSpt\",\n ].sort());\n expect(obj).toBe(objAsFoo.$as(Employee));\n expect(objAsFoo).toBe(obj.$as(FooInterface));\n });\n it(\"reconstitutes interfaces properly without rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\");\n expect(result.length).toBe(1);\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","symbolClientContext","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","createMinimalClient","convertWireToOsdkObjects","client","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employee2","where","$and","employeeId","$gt","$lt","JSON","stringify","toMatchInlineSnapshot","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","obj","__title","fullName","objAsFoo","toMatchObject","fooSpt","$apiName","$primaryKey","$objectType","$title","console","log","$updateInternalValues","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result"],"sources":["convertWireToOsdkObjects.test.js"],"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 */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { symbolClientContext } from \"@osdk/shared.client\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"stringifies properties on objects and interfaces correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n const { data: [employee2] } = await client(Employee).where({\n $and: [{ employeeId: { $gt: 50030 } }, { employeeId: { $lt: 50032 } }],\n }).fetchPage();\n // Should not have $title\n expect(JSON.stringify(employee)).toMatchInlineSnapshot(`\"{\"employeeId\":50030,\"fullName\":\"John Doe\",\"office\":\"NYC\",\"class\":\"Red\",\"startDate\":\"2019-01-01\",\"employeeStatus\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50030}\"`);\n expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50030,\"fooSpt\":\"John Doe\"}\"`);\n // Should have $title\n expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`\"{\"employeeId\":50031,\"fullName\":\"Jane Doe\",\"office\":\"SEA\",\"class\":\"Blue\",\"startDate\":\"2012-02-12\",\"employeeStatus\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\"}\"`);\n expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\",\"fooSpt\":\"Jane Doe\"}\"`);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"works even with unknown apiNames\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"updates interface when underlying changes\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n employeeId: \"5\",\n };\n const [obj] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], undefined));\n expect(obj.fullName).toEqual(\"Steve\");\n expect(Object.keys(obj).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"employeeId\",\n \"fullName\",\n ].sort());\n const objAsFoo = obj.$as(FooInterface);\n expect(objAsFoo).toMatchObject({\n fooSpt: obj.fullName,\n $apiName: FooInterface.apiName,\n $primaryKey: obj.$primaryKey,\n $objectType: obj.$objectType,\n $title: obj.$title,\n });\n console.log(obj);\n console.log(objAsFoo);\n obj.$updateInternalValues({\n fullName: \"Bob\",\n });\n expect(obj.fullName).toEqual(\"Bob\");\n expect(objAsFoo.fooSpt).toEqual(obj.fullName);\n expect(Object.keys(objAsFoo).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"fooSpt\",\n ].sort());\n expect(obj).toBe(objAsFoo.$as(Employee));\n expect(objAsFoo).toBe(obj.$as(FooInterface));\n });\n it(\"reconstitutes interfaces properly without rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\");\n expect(result.length).toBe(1);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -46,11 +46,11 @@ describe("OsdkObject", () => {
46
46
  }).fetchPage();
47
47
  // we should get the employee we requested
48
48
  const employee = result.data[0];
49
+ expect(JSON.stringify(employee)).toBeDefined();
49
50
  expect(employee).toMatchObject({
50
51
  "$apiName": "Employee",
51
52
  "$objectType": "Employee",
52
53
  "$primaryKey": 50030,
53
- "$title": "John Doe",
54
54
  "class": "Red",
55
55
  "employeeId": 50030,
56
56
  "employeeStatus": expect.anything(),
@@ -1 +1 @@
1
- {"version":3,"file":"object.test.js","names":["$Objects","$ontologyRid","Employee","apiServer","stubData","withoutRid","afterAll","beforeAll","describe","expect","it","createClient","asV2Object","o","includeRid","$apiName","__apiName","$objectType","$primaryKey","__primaryKey","$title","__title","client","listen","close","result","where","employeeId","employee1","fetchPage","employee","data","toMatchObject","anything","startDate","Object","keys","$link","lead","toBeDefined","fetchOne","$select","toBe","employee2","employeeStatus","toBeUndefined","employees","$and","peepsResult","peeps","toHaveLength","nextPageToken","office","peep","$includeRid","leadRid","$rid","objects","sort","toStrictEqual","shouldError","shouldError2","shouldCompile_client_fetchOne_old_select","shouldCompile_unstableClient_fetchOne_old_select","shouldCompile_client_fetchOne_new_select","shouldCompile_unstableClient_fetchOne_new_select","shouldCompile_client_fetchOne_old_noArgs","shouldCompile_unstableClient_fetchOne_noArgs"],"sources":["object.test.js"],"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 */\nimport { $Objects, $ontologyRid, Employee } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData, withoutRid } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, it } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nfunction asV2Object(o, includeRid) {\n o = includeRid ? { ...o } : withoutRid(o);\n o.$apiName = o.__apiName;\n o.$objectType = o.__apiName;\n o.$primaryKey = o.__primaryKey;\n o.$title = o.__title;\n delete o.__apiName;\n delete o.__primaryKey;\n delete o.__title;\n return o;\n}\ndescribe(\"OsdkObject\", () => {\n describe(\"link\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"loads an employee\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n // we should get the employee we requested\n const employee = result.data[0];\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50030,\n \"$title\": \"John Doe\",\n \"class\": \"Red\",\n \"employeeId\": 50030,\n \"employeeStatus\": expect.anything(),\n \"fullName\": \"John Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2019-01-01\",\n });\n employee.startDate;\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\n it(\"traverses the link from an employee to their lead\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n const employee = result.data[0];\n const lead = await employee.$link.lead.fetchOne({\n $select: [\"employeeId\"],\n });\n expect(lead.employeeId).toBe(stubData.employee2.employeeId);\n // ensure that the select was performed\n expect(lead.employeeId).toBeDefined();\n expect(lead.employeeStatus).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peeps\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peepsResult = await lead.$link.peeps.fetchPage({\n $select: [\"fullName\", \"employeeId\"],\n });\n expect(peepsResult.data).toHaveLength(2);\n expect(peepsResult.nextPageToken).toBeUndefined();\n // ensure that the select was performed\n expect(peepsResult.data[0].employeeId).toBeDefined();\n expect(peepsResult.data[0].office).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peep by primaryKey with fetchOne\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peep = await lead.$link.peeps.fetchOne(stubData.employee1.employeeId, {\n $select: [\"employeeId\"],\n });\n expect(peep).toBeDefined();\n // ensure that select worked\n expect(peep.employeeId).toBeDefined();\n expect(peep.employeeStatus).toBeUndefined();\n });\n it(\"gives $rid access when requested\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage({\n $includeRid: true,\n });\n const leadRid = result.data[0].$rid;\n expect(leadRid).toBeDefined();\n expect(leadRid).toBe(\"ri.phonograph2-objects.main.object.88a6fccb-f333-46d6-a07e-7725c5f18b61\");\n });\n it(\"objects are enumerable in an sdk\", async () => {\n const objects = Object.keys($Objects);\n expect(objects.sort()).toStrictEqual([\n \"Employee\",\n \"ObjectWithTimestampPrimaryKey\",\n \"Office\",\n \"Person\",\n \"Task\",\n \"Todo\",\n \"equipment\",\n \"objectTypeWithAllPropertyTypes\",\n ].sort());\n });\n });\n});\nexport async function shouldError(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldError2(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\nexport async function shouldCompile_unstableClient_fetchOne_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"object.test.js","names":["$Objects","$ontologyRid","Employee","apiServer","stubData","withoutRid","afterAll","beforeAll","describe","expect","it","createClient","asV2Object","o","includeRid","$apiName","__apiName","$objectType","$primaryKey","__primaryKey","$title","__title","client","listen","close","result","where","employeeId","employee1","fetchPage","employee","data","JSON","stringify","toBeDefined","toMatchObject","anything","startDate","Object","keys","$link","lead","fetchOne","$select","toBe","employee2","employeeStatus","toBeUndefined","employees","$and","peepsResult","peeps","toHaveLength","nextPageToken","office","peep","$includeRid","leadRid","$rid","objects","sort","toStrictEqual","shouldError","shouldError2","shouldCompile_client_fetchOne_old_select","shouldCompile_unstableClient_fetchOne_old_select","shouldCompile_client_fetchOne_new_select","shouldCompile_unstableClient_fetchOne_new_select","shouldCompile_client_fetchOne_old_noArgs","shouldCompile_unstableClient_fetchOne_noArgs"],"sources":["object.test.js"],"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 */\nimport { $Objects, $ontologyRid, Employee } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData, withoutRid } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, it } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nfunction asV2Object(o, includeRid) {\n o = includeRid ? { ...o } : withoutRid(o);\n o.$apiName = o.__apiName;\n o.$objectType = o.__apiName;\n o.$primaryKey = o.__primaryKey;\n o.$title = o.__title;\n delete o.__apiName;\n delete o.__primaryKey;\n delete o.__title;\n return o;\n}\ndescribe(\"OsdkObject\", () => {\n describe(\"link\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"loads an employee\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n // we should get the employee we requested\n const employee = result.data[0];\n expect(JSON.stringify(employee)).toBeDefined();\n expect(employee).toMatchObject({\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 50030,\n \"class\": \"Red\",\n \"employeeId\": 50030,\n \"employeeStatus\": expect.anything(),\n \"fullName\": \"John Doe\",\n \"office\": \"NYC\",\n \"startDate\": \"2019-01-01\",\n });\n employee.startDate;\n // it should have the prototype that we assign at hydration time\n expect(Object.keys(employee.$link.lead)).toBeDefined();\n });\n it(\"traverses the link from an employee to their lead\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage();\n const employee = result.data[0];\n const lead = await employee.$link.lead.fetchOne({\n $select: [\"employeeId\"],\n });\n expect(lead.employeeId).toBe(stubData.employee2.employeeId);\n // ensure that the select was performed\n expect(lead.employeeId).toBeDefined();\n expect(lead.employeeStatus).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peeps\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peepsResult = await lead.$link.peeps.fetchPage({\n $select: [\"fullName\", \"employeeId\"],\n });\n expect(peepsResult.data).toHaveLength(2);\n expect(peepsResult.nextPageToken).toBeUndefined();\n // ensure that the select was performed\n expect(peepsResult.data[0].employeeId).toBeDefined();\n expect(peepsResult.data[0].office).toBeUndefined();\n });\n it(\"traverses the link from an lead to their peep by primaryKey with fetchOne\", async () => {\n // slightly weird request here to hit the existing mocks for employee2\n const employees = await client(Employee).where({\n $and: [\n { \"employeeId\": { \"$gt\": 50030 } },\n { \"employeeId\": { \"$lt\": 50032 } },\n ],\n }).fetchPage();\n const lead = employees.data[0];\n expect(lead).toBeDefined();\n const peep = await lead.$link.peeps.fetchOne(stubData.employee1.employeeId, {\n $select: [\"employeeId\"],\n });\n expect(peep).toBeDefined();\n // ensure that select worked\n expect(peep.employeeId).toBeDefined();\n expect(peep.employeeStatus).toBeUndefined();\n });\n it(\"gives $rid access when requested\", async () => {\n const result = await client(Employee).where({\n employeeId: stubData.employee1.employeeId,\n }).fetchPage({\n $includeRid: true,\n });\n const leadRid = result.data[0].$rid;\n expect(leadRid).toBeDefined();\n expect(leadRid).toBe(\"ri.phonograph2-objects.main.object.88a6fccb-f333-46d6-a07e-7725c5f18b61\");\n });\n it(\"objects are enumerable in an sdk\", async () => {\n const objects = Object.keys($Objects);\n expect(objects.sort()).toStrictEqual([\n \"Employee\",\n \"ObjectWithTimestampPrimaryKey\",\n \"Office\",\n \"Person\",\n \"Task\",\n \"Todo\",\n \"equipment\",\n \"objectTypeWithAllPropertyTypes\",\n ].sort());\n });\n });\n});\nexport async function shouldError(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldError2(client) {\n // @ts-expect-error\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_old_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_unstableClient_fetchOne_new_select(client) {\n return client(Employee).fetchOne(1, {\n $select: [\"employeeId\"],\n });\n}\nexport async function shouldCompile_client_fetchOne_old_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\nexport async function shouldCompile_unstableClient_fetchOne_noArgs(client) {\n return client(Employee).fetchOne(1);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -92,7 +92,6 @@ describe("ObjectSet", () => {
92
92
  $apiName: "Employee",
93
93
  $objectType: "Employee",
94
94
  $primaryKey: 50030,
95
- $title: "John Doe",
96
95
  class: "Red",
97
96
  employeeId: 50030,
98
97
  employeeStatus: expect.anything(),
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectSet.test.js","names":["isOk","$ontologyRid","Employee","FooInterface","Office","apiServer","stubData","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","client","listen","close","employeeObjectSet","officeObjectSet","union","subtract","intersect","objectSet","unionedObjectSet","iter","data","employees","fetchPage","emp","employeeId","toEqual","objectSet2","where","subtractedObjectSet","intersectedObjectSet","$orderBy","toMatchObject","$apiName","$objectType","$primaryKey","$title","class","employeeStatus","anything","fullName","office","startDate","employee","fetchOne","employee1","toMatchTypeOf","toBe","employeeResult","fetchOneWithErrors","value","$select","branded","toEqualTypeOf","rejects","toThrow","employee2","pivotTo","result","fetchPageWithErrors","each","k","opts","$__EXPERIMENTAL_strictNonNull","$includeRid","toHaveLength","includeRid","toThrowErrorMatchingInlineSnapshot","not","toBeUndefined","empNotStrict","cheesedFooNotStrict","$as","fooSpt"],"sources":["ObjectSet.test.js"],"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 */\nimport { isOk } from \"@osdk/api\";\nimport { $ontologyRid, Employee, FooInterface, Office, } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\ndescribe(\"ObjectSet\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"does not allow intersect/union/subtract with different object types\", () => {\n const employeeObjectSet = client(Employee);\n const officeObjectSet = client(Office);\n // @ts-expect-error\n employeeObjectSet.union(officeObjectSet);\n // @ts-expect-error\n employeeObjectSet.subtract(officeObjectSet);\n // @ts-expect-error\n employeeObjectSet.intersect(officeObjectSet);\n });\n it(\"can be cast bidirectionally\", () => {\n function takesOldStyleObjectSet(os) {\n return os;\n }\n function takesNewStyleObjectSet(os) {\n return os;\n }\n function maybe() {\n const newStyleObjectSet = client(Employee);\n const oldStyleObjectSet = newStyleObjectSet;\n takesOldStyleObjectSet(newStyleObjectSet);\n takesNewStyleObjectSet(newStyleObjectSet);\n takesOldStyleObjectSet(oldStyleObjectSet);\n takesNewStyleObjectSet(oldStyleObjectSet);\n }\n if (false) {\n // here for a simple type check\n maybe();\n }\n });\n it(\"objects set union\", async () => {\n const objectSet = client(Employee);\n const unionedObjectSet = objectSet.union(objectSet);\n let iter = 0;\n const { data: employees } = await unionedObjectSet.fetchPage();\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50030 + iter);\n iter += 1;\n }\n expect(iter).toEqual(2);\n });\n it(\"objects set subtract\", async () => {\n const objectSet = client(Employee);\n const objectSet2 = client(Employee).where({\n employeeId: 50030,\n });\n const subtractedObjectSet = objectSet.subtract(objectSet2);\n let iter = 0;\n const { data: employees } = await subtractedObjectSet.fetchPage();\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50031 + iter);\n iter += 1;\n }\n expect(iter).toEqual(2);\n });\n it(\"objects set intersect\", async () => {\n const objectSet = client(Employee);\n const intersectedObjectSet = objectSet.intersect(objectSet);\n let iter = 0;\n const { data: employees } = await intersectedObjectSet.fetchPage();\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50032);\n iter += 1;\n }\n expect(iter).toEqual(1);\n });\n it(\"orders objects in ascending order without a filter, and returns all results\", async () => {\n const { data: employees } = await client(Employee)\n .fetchPage({\n $orderBy: { \"employeeId\": \"asc\" },\n });\n expect(employees).toMatchObject([\n {\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50030,\n $title: \"John Doe\",\n class: \"Red\",\n employeeId: 50030,\n employeeStatus: expect.anything(),\n fullName: \"John Doe\",\n office: \"NYC\",\n startDate: \"2019-01-01\",\n },\n {\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50031,\n $title: \"Jane Doe\",\n class: \"Blue\",\n employeeId: 50031,\n employeeStatus: expect.anything(),\n fullName: \"Jane Doe\",\n office: \"SEA\",\n startDate: \"2012-02-12\",\n },\n {\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50032,\n $title: \"Jack Smith\",\n class: \"Red\",\n employeeId: 50032,\n employeeStatus: expect.anything(),\n fullName: \"Jack Smith\",\n office: \"LON\",\n startDate: \"2015-05-15\",\n },\n ]);\n });\n it(\"allows fetching by PK from a base object set - fetchOne\", async () => {\n const employee = await client(Employee).fetchOne(stubData.employee1.employeeId);\n expectTypeOf().toMatchTypeOf;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n });\n it(\"allows fetching by PK from a base object set - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee)\n .fetchOneWithErrors(stubData.employee1.employeeId);\n expectTypeOf().toMatchTypeOf;\n if (isOk(employeeResult)) {\n const employee = employeeResult.value;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n }\n });\n it(\"allows fetching by PK from a base object set with selected properties - fetchOne\", async () => {\n const employee = await client(Employee).fetchOne(stubData.employee1.employeeId, { $select: [\"fullName\"] });\n expectTypeOf().branded.toEqualTypeOf;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n });\n it(\"allows fetching by PK from a base object set with selected properties - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee)\n .fetchOneWithErrors(stubData.employee1.employeeId, { $select: [\"fullName\"] });\n expectTypeOf().branded.toEqualTypeOf;\n if (isOk(employeeResult)) {\n const employee = employeeResult.value;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n }\n });\n it(\"throws when fetching by PK with an object that does not exist - fetchOne\", async () => {\n await expect(client(Employee).fetchOne(-1)).rejects\n .toThrow();\n });\n it(\"throws when fetching by PK with an object that does not exist - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee)\n .fetchOneWithErrors(-1);\n expectTypeOf().branded.toEqualTypeOf;\n expect(\"error\" in employeeResult);\n });\n it(\"allows fetching by PK from a pivoted object set - fetchOne\", async () => {\n const employee = await client(Employee).where({\n employeeId: stubData.employee2.employeeId,\n })\n .pivotTo(\"peeps\").fetchOne(stubData.employee1.employeeId);\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n });\n it(\"allows fetching by PK from a pivoted object set - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee).where({\n employeeId: stubData.employee2.employeeId,\n })\n .pivotTo(\"peeps\").fetchOneWithErrors(stubData.employee1.employeeId);\n if (isOk(employeeResult)) {\n const employee = employeeResult.value;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n }\n });\n it(\" object set union works with fetchPageWithErrors\", async () => {\n const objectSet = client(Employee);\n const unionedObjectSet = objectSet.union(objectSet);\n let iter = 0;\n const result = await unionedObjectSet.fetchPageWithErrors();\n if (isOk(result)) {\n const employees = result.value.data;\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50030 + iter);\n iter += 1;\n }\n expect(iter).toEqual(2);\n }\n });\n describe.each([\"fetchPage\", \"fetchPageWithErrors\"])(\"%s\", (k) => {\n describe(\"strictNonNull: \\\"drop\\\"\", () => {\n describe(\"includeRid: true\", () => {\n it(\"drops bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: \"drop\",\n $includeRid: true,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(3);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n describe(\"includeRid: false\", () => {\n it(\"drops bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: \"drop\",\n $includeRid: false,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(3);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n });\n describe(\"strictNonNull: false\", () => {\n describe(\"includeRid: true\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n $includeRid: true,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(4);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n describe(\"includeRid: false\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n includeRid: false,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(4);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n });\n });\n describe(\"strictNonNull: \\\"throw\\\"\", () => {\n it(\"throws when getting bad data\", () => {\n expect(() => client(Employee).fetchPage({\n $__EXPERIMENTAL_strictNonNull: \"throw\",\n })).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n });\n describe.each([\"fetchOne\", \"fetchOneWithErrors\"])(\"%s\", (k) => {\n describe(\"strictNonNull: false\", () => {\n describe(\"includeRid: true\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n $includeRid: true,\n };\n const result = k === \"fetchOne\"\n ? await client(Employee).fetchOne(50033, opts)\n : (await client(Employee).fetchOneWithErrors(50033, opts)).value;\n expect(result).not.toBeUndefined();\n expectTypeOf(result).branded.toEqualTypeOf();\n });\n });\n describe(\"includeRid: false\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n includeRid: false,\n };\n const result = k === \"fetchOne\"\n ? await client(Employee).fetchOne(50033, opts)\n : (await client(Employee).fetchOneWithErrors(50033, opts)).value;\n expect(result).not.toBeUndefined();\n expectTypeOf(result).branded.toEqualTypeOf();\n });\n });\n });\n });\n describe(\"strictNonNull: \\\"throw\\\"\", () => {\n it(\"throws when getting bad data\", () => {\n expect(() => client(Employee).fetchPage({\n $__EXPERIMENTAL_strictNonNull: \"throw\",\n })).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n });\n describe(\"conversions\", () => {\n describe(\"strictNonNull: false\", () => {\n it(\"returns bad data\", async () => {\n const result = await client(Employee).fetchPage({\n $__EXPERIMENTAL_strictNonNull: false,\n });\n const empNotStrict = result.data[0];\n const empNotStrict2 = empNotStrict;\n expectTypeOf(empNotStrict).branded.toEqualTypeOf();\n expectTypeOf(empNotStrict).branded.toEqualTypeOf();\n expectTypeOf(empNotStrict).branded.toEqualTypeOf();\n expectTypeOf(empNotStrict.employeeId).toEqualTypeOf();\n expectTypeOf(empNotStrict2.employeeId).toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n const CheesedFoo = FooInterface;\n const cheesedFooNotStrict = result.data[0].$as(CheesedFoo);\n expectTypeOf(cheesedFooNotStrict).branded.toEqualTypeOf();\n cheesedFooNotStrict.fooSpt;\n });\n });\n });\n});\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,IAAI,QAAQ,WAAW;AAChC,SAASC,YAAY,EAAEC,QAAQ,EAAEC,YAAY,EAAEC,MAAM,QAAS,4BAA4B;AAC1F,SAASC,SAAS,EAAEC,QAAQ,QAAQ,mBAAmB;AACvD,SAASC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,MAAM,EAAEC,YAAY,EAAEC,EAAE,QAAS,QAAQ;AACjF,SAASC,YAAY,QAAQ,oBAAoB;AACjDJ,QAAQ,CAAC,WAAW,EAAE,MAAM;EACxB,IAAIK,MAAM;EACVN,SAAS,CAAC,YAAY;IAClBH,SAAS,CAACU,MAAM,CAAC,CAAC;IAClBD,MAAM,GAAGD,YAAY,CAAC,4BAA4B,EAAEZ,YAAY,EAAE,YAAY,eAAe,CAAC;EAClG,CAAC,CAAC;EACFM,QAAQ,CAAC,MAAM;IACXF,SAAS,CAACW,KAAK,CAAC,CAAC;EACrB,CAAC,CAAC;EACFJ,EAAE,CAAC,qEAAqE,EAAE,MAAM;IAC5E,MAAMK,iBAAiB,GAAGH,MAAM,CAACZ,QAAQ,CAAC;IAC1C,MAAMgB,eAAe,GAAGJ,MAAM,CAACV,MAAM,CAAC;IACtC;IACAa,iBAAiB,CAACE,KAAK,CAACD,eAAe,CAAC;IACxC;IACAD,iBAAiB,CAACG,QAAQ,CAACF,eAAe,CAAC;IAC3C;IACAD,iBAAiB,CAACI,SAAS,CAACH,eAAe,CAAC;EAChD,CAAC,CAAC;EACFN,EAAE,CAAC,6BAA6B,EAAE,MAAM,CAmBxC,CAAC,CAAC;EACFA,EAAE,CAAC,mBAAmB,EAAE,YAAY;IAChC,MAAMU,SAAS,GAAGR,MAAM,CAACZ,QAAQ,CAAC;IAClC,MAAMqB,gBAAgB,GAAGD,SAAS,CAACH,KAAK,CAACG,SAAS,CAAC;IACnD,IAAIE,IAAI,GAAG,CAAC;IACZ,MAAM;MAAEC,IAAI,EAAEC;IAAU,CAAC,GAAG,MAAMH,gBAAgB,CAACI,SAAS,CAAC,CAAC;IAC9D,KAAK,MAAMC,GAAG,IAAIF,SAAS,EAAE;MACzBhB,MAAM,CAACkB,GAAG,CAACC,UAAU,CAAC,CAACC,OAAO,CAAC,KAAK,GAAGN,IAAI,CAAC;MAC5CA,IAAI,IAAI,CAAC;IACb;IACAd,MAAM,CAACc,IAAI,CAAC,CAACM,OAAO,CAAC,CAAC,CAAC;EAC3B,CAAC,CAAC;EACFlB,EAAE,CAAC,sBAAsB,EAAE,YAAY;IACnC,MAAMU,SAAS,GAAGR,MAAM,CAACZ,QAAQ,CAAC;IAClC,MAAM6B,UAAU,GAAGjB,MAAM,CAACZ,QAAQ,CAAC,CAAC8B,KAAK,CAAC;MACtCH,UAAU,EAAE;IAChB,CAAC,CAAC;IACF,MAAMI,mBAAmB,GAAGX,SAAS,CAACF,QAAQ,CAACW,UAAU,CAAC;IAC1D,IAAIP,IAAI,GAAG,CAAC;IACZ,MAAM;MAAEC,IAAI,EAAEC;IAAU,CAAC,GAAG,MAAMO,mBAAmB,CAACN,SAAS,CAAC,CAAC;IACjE,KAAK,MAAMC,GAAG,IAAIF,SAAS,EAAE;MACzBhB,MAAM,CAACkB,GAAG,CAACC,UAAU,CAAC,CAACC,OAAO,CAAC,KAAK,GAAGN,IAAI,CAAC;MAC5CA,IAAI,IAAI,CAAC;IACb;IACAd,MAAM,CAACc,IAAI,CAAC,CAACM,OAAO,CAAC,CAAC,CAAC;EAC3B,CAAC,CAAC;EACFlB,EAAE,CAAC,uBAAuB,EAAE,YAAY;IACpC,MAAMU,SAAS,GAAGR,MAAM,CAACZ,QAAQ,CAAC;IAClC,MAAMgC,oBAAoB,GAAGZ,SAAS,CAACD,SAAS,CAACC,SAAS,CAAC;IAC3D,IAAIE,IAAI,GAAG,CAAC;IACZ,MAAM;MAAEC,IAAI,EAAEC;IAAU,CAAC,GAAG,MAAMQ,oBAAoB,CAACP,SAAS,CAAC,CAAC;IAClE,KAAK,MAAMC,GAAG,IAAIF,SAAS,EAAE;MACzBhB,MAAM,CAACkB,GAAG,CAACC,UAAU,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC;MACrCN,IAAI,IAAI,CAAC;IACb;IACAd,MAAM,CAACc,IAAI,CAAC,CAACM,OAAO,CAAC,CAAC,CAAC;EAC3B,CAAC,CAAC;EACFlB,EAAE,CAAC,6EAA6E,EAAE,YAAY;IAC1F,MAAM;MAAEa,IAAI,EAAEC;IAAU,CAAC,GAAG,MAAMZ,MAAM,CAACZ,QAAQ,CAAC,CAC7CyB,SAAS,CAAC;MACXQ,QAAQ,EAAE;QAAE,YAAY,EAAE;MAAM;IACpC,CAAC,CAAC;IACFzB,MAAM,CAACgB,SAAS,CAAC,CAACU,aAAa,CAAC,CAC5B;MACIC,QAAQ,EAAE,UAAU;MACpBC,WAAW,EAAE,UAAU;MACvBC,WAAW,EAAE,KAAK;MAClBC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,KAAK;MACZZ,UAAU,EAAE,KAAK;MACjBa,cAAc,EAAEhC,MAAM,CAACiC,QAAQ,CAAC,CAAC;MACjCC,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,KAAK;MACbC,SAAS,EAAE;IACf,CAAC,EACD;MACIT,QAAQ,EAAE,UAAU;MACpBC,WAAW,EAAE,UAAU;MACvBC,WAAW,EAAE,KAAK;MAClBC,MAAM,EAAE,UAAU;MAClBC,KAAK,EAAE,MAAM;MACbZ,UAAU,EAAE,KAAK;MACjBa,cAAc,EAAEhC,MAAM,CAACiC,QAAQ,CAAC,CAAC;MACjCC,QAAQ,EAAE,UAAU;MACpBC,MAAM,EAAE,KAAK;MACbC,SAAS,EAAE;IACf,CAAC,EACD;MACIT,QAAQ,EAAE,UAAU;MACpBC,WAAW,EAAE,UAAU;MACvBC,WAAW,EAAE,KAAK;MAClBC,MAAM,EAAE,YAAY;MACpBC,KAAK,EAAE,KAAK;MACZZ,UAAU,EAAE,KAAK;MACjBa,cAAc,EAAEhC,MAAM,CAACiC,QAAQ,CAAC,CAAC;MACjCC,QAAQ,EAAE,YAAY;MACtBC,MAAM,EAAE,KAAK;MACbC,SAAS,EAAE;IACf,CAAC,CACJ,CAAC;EACN,CAAC,CAAC;EACFlC,EAAE,CAAC,yDAAyD,EAAE,YAAY;IACtE,MAAMmC,QAAQ,GAAG,MAAMjC,MAAM,CAACZ,QAAQ,CAAC,CAAC8C,QAAQ,CAAC1C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IAC/ElB,YAAY,CAAC,CAAC,CAACuC,aAAa;IAC5BxC,MAAM,CAACqC,QAAQ,CAACR,WAAW,CAAC,CAACY,IAAI,CAAC7C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;EACpE,CAAC,CAAC;EACFjB,EAAE,CAAC,mEAAmE,EAAE,YAAY;IAChF,MAAMwC,cAAc,GAAG,MAAMtC,MAAM,CAACZ,QAAQ,CAAC,CACxCmD,kBAAkB,CAAC/C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IACtDlB,YAAY,CAAC,CAAC,CAACuC,aAAa;IAC5B,IAAIlD,IAAI,CAACoD,cAAc,CAAC,EAAE;MACtB,MAAML,QAAQ,GAAGK,cAAc,CAACE,KAAK;MACrC5C,MAAM,CAACqC,QAAQ,CAACR,WAAW,CAAC,CAACY,IAAI,CAAC7C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IACpE;EACJ,CAAC,CAAC;EACFjB,EAAE,CAAC,kFAAkF,EAAE,YAAY;IAC/F,MAAMmC,QAAQ,GAAG,MAAMjC,MAAM,CAACZ,QAAQ,CAAC,CAAC8C,QAAQ,CAAC1C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,EAAE;MAAE0B,OAAO,EAAE,CAAC,UAAU;IAAE,CAAC,CAAC;IAC1G5C,YAAY,CAAC,CAAC,CAAC6C,OAAO,CAACC,aAAa;IACpC/C,MAAM,CAACqC,QAAQ,CAACR,WAAW,CAAC,CAACY,IAAI,CAAC7C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;EACpE,CAAC,CAAC;EACFjB,EAAE,CAAC,4FAA4F,EAAE,YAAY;IACzG,MAAMwC,cAAc,GAAG,MAAMtC,MAAM,CAACZ,QAAQ,CAAC,CACxCmD,kBAAkB,CAAC/C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,EAAE;MAAE0B,OAAO,EAAE,CAAC,UAAU;IAAE,CAAC,CAAC;IACjF5C,YAAY,CAAC,CAAC,CAAC6C,OAAO,CAACC,aAAa;IACpC,IAAIzD,IAAI,CAACoD,cAAc,CAAC,EAAE;MACtB,MAAML,QAAQ,GAAGK,cAAc,CAACE,KAAK;MACrC5C,MAAM,CAACqC,QAAQ,CAACR,WAAW,CAAC,CAACY,IAAI,CAAC7C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IACpE;EACJ,CAAC,CAAC;EACFjB,EAAE,CAAC,0EAA0E,EAAE,YAAY;IACvF,MAAMF,MAAM,CAACI,MAAM,CAACZ,QAAQ,CAAC,CAAC8C,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAACU,OAAO,CAC9CC,OAAO,CAAC,CAAC;EAClB,CAAC,CAAC;EACF/C,EAAE,CAAC,oFAAoF,EAAE,YAAY;IACjG,MAAMwC,cAAc,GAAG,MAAMtC,MAAM,CAACZ,QAAQ,CAAC,CACxCmD,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC3B1C,YAAY,CAAC,CAAC,CAAC6C,OAAO,CAACC,aAAa;IACpC/C,MAAM,CAAC,OAAO,IAAI0C,cAAc,CAAC;EACrC,CAAC,CAAC;EACFxC,EAAE,CAAC,4DAA4D,EAAE,YAAY;IACzE,MAAMmC,QAAQ,GAAG,MAAMjC,MAAM,CAACZ,QAAQ,CAAC,CAAC8B,KAAK,CAAC;MAC1CH,UAAU,EAAEvB,QAAQ,CAACsD,SAAS,CAAC/B;IACnC,CAAC,CAAC,CACGgC,OAAO,CAAC,OAAO,CAAC,CAACb,QAAQ,CAAC1C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IAC7DnB,MAAM,CAACqC,QAAQ,CAACR,WAAW,CAAC,CAACY,IAAI,CAAC7C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;EACpE,CAAC,CAAC;EACFjB,EAAE,CAAC,sEAAsE,EAAE,YAAY;IACnF,MAAMwC,cAAc,GAAG,MAAMtC,MAAM,CAACZ,QAAQ,CAAC,CAAC8B,KAAK,CAAC;MAChDH,UAAU,EAAEvB,QAAQ,CAACsD,SAAS,CAAC/B;IACnC,CAAC,CAAC,CACGgC,OAAO,CAAC,OAAO,CAAC,CAACR,kBAAkB,CAAC/C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IACvE,IAAI7B,IAAI,CAACoD,cAAc,CAAC,EAAE;MACtB,MAAML,QAAQ,GAAGK,cAAc,CAACE,KAAK;MACrC5C,MAAM,CAACqC,QAAQ,CAACR,WAAW,CAAC,CAACY,IAAI,CAAC7C,QAAQ,CAAC2C,SAAS,CAACpB,UAAU,CAAC;IACpE;EACJ,CAAC,CAAC;EACFjB,EAAE,CAAC,kDAAkD,EAAE,YAAY;IAC/D,MAAMU,SAAS,GAAGR,MAAM,CAACZ,QAAQ,CAAC;IAClC,MAAMqB,gBAAgB,GAAGD,SAAS,CAACH,KAAK,CAACG,SAAS,CAAC;IACnD,IAAIE,IAAI,GAAG,CAAC;IACZ,MAAMsC,MAAM,GAAG,MAAMvC,gBAAgB,CAACwC,mBAAmB,CAAC,CAAC;IAC3D,IAAI/D,IAAI,CAAC8D,MAAM,CAAC,EAAE;MACd,MAAMpC,SAAS,GAAGoC,MAAM,CAACR,KAAK,CAAC7B,IAAI;MACnC,KAAK,MAAMG,GAAG,IAAIF,SAAS,EAAE;QACzBhB,MAAM,CAACkB,GAAG,CAACC,UAAU,CAAC,CAACC,OAAO,CAAC,KAAK,GAAGN,IAAI,CAAC;QAC5CA,IAAI,IAAI,CAAC;MACb;MACAd,MAAM,CAACc,IAAI,CAAC,CAACM,OAAO,CAAC,CAAC,CAAC;IAC3B;EACJ,CAAC,CAAC;EACFrB,QAAQ,CAACuD,IAAI,CAAC,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,IAAI,EAAGC,CAAC,IAAK;IAC7DxD,QAAQ,CAAC,yBAAyB,EAAE,MAAM;MACtCA,QAAQ,CAAC,kBAAkB,EAAE,MAAM;QAC/BG,EAAE,CAAC,gBAAgB,EAAE,YAAY;UAC7B,MAAMsD,IAAI,GAAG;YACTC,6BAA6B,EAAE,MAAM;YACrCC,WAAW,EAAE;UACjB,CAAC;UACD,MAAMN,MAAM,GAAGG,CAAC,KAAK,WAAW,GAC1B,MAAMnD,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAACuC,IAAI,CAAC,GACtC,CAAC,MAAMpD,MAAM,CAACZ,QAAQ,CAAC,CAAC6D,mBAAmB,CAACG,IAAI,CAAC,EAAEZ,KAAK;UAC9D5C,MAAM,CAACoD,MAAM,CAACrC,IAAI,CAAC,CAAC4C,YAAY,CAAC,CAAC,CAAC;UACnC1D,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;UACpD9C,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;QACxD,CAAC,CAAC;MACN,CAAC,CAAC;MACFhD,QAAQ,CAAC,mBAAmB,EAAE,MAAM;QAChCG,EAAE,CAAC,gBAAgB,EAAE,YAAY;UAC7B,MAAMsD,IAAI,GAAG;YACTC,6BAA6B,EAAE,MAAM;YACrCC,WAAW,EAAE;UACjB,CAAC;UACD,MAAMN,MAAM,GAAGG,CAAC,KAAK,WAAW,GAC1B,MAAMnD,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAACuC,IAAI,CAAC,GACtC,CAAC,MAAMpD,MAAM,CAACZ,QAAQ,CAAC,CAAC6D,mBAAmB,CAACG,IAAI,CAAC,EAAEZ,KAAK;UAC9D5C,MAAM,CAACoD,MAAM,CAACrC,IAAI,CAAC,CAAC4C,YAAY,CAAC,CAAC,CAAC;UACnC1D,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;UACpD9C,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;UACpD9C,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;QACxD,CAAC,CAAC;MACN,CAAC,CAAC;IACN,CAAC,CAAC;IACFhD,QAAQ,CAAC,sBAAsB,EAAE,MAAM;MACnCA,QAAQ,CAAC,kBAAkB,EAAE,MAAM;QAC/BG,EAAE,CAAC,kBAAkB,EAAE,YAAY;UAC/B,MAAMsD,IAAI,GAAG;YACTC,6BAA6B,EAAE,KAAK;YACpCC,WAAW,EAAE;UACjB,CAAC;UACD,MAAMN,MAAM,GAAGG,CAAC,KAAK,WAAW,GAC1B,MAAMnD,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAACuC,IAAI,CAAC,GACtC,CAAC,MAAMpD,MAAM,CAACZ,QAAQ,CAAC,CAAC6D,mBAAmB,CAACG,IAAI,CAAC,EAAEZ,KAAK;UAC9D5C,MAAM,CAACoD,MAAM,CAACrC,IAAI,CAAC,CAAC4C,YAAY,CAAC,CAAC,CAAC;UACnC1D,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;QACxD,CAAC,CAAC;MACN,CAAC,CAAC;MACFhD,QAAQ,CAAC,mBAAmB,EAAE,MAAM;QAChCG,EAAE,CAAC,kBAAkB,EAAE,YAAY;UAC/B,MAAMsD,IAAI,GAAG;YACTC,6BAA6B,EAAE,KAAK;YACpCG,UAAU,EAAE;UAChB,CAAC;UACD,MAAMR,MAAM,GAAGG,CAAC,KAAK,WAAW,GAC1B,MAAMnD,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAACuC,IAAI,CAAC,GACtC,CAAC,MAAMpD,MAAM,CAACZ,QAAQ,CAAC,CAAC6D,mBAAmB,CAACG,IAAI,CAAC,EAAEZ,KAAK;UAC9D5C,MAAM,CAACoD,MAAM,CAACrC,IAAI,CAAC,CAAC4C,YAAY,CAAC,CAAC,CAAC;UACnC1D,YAAY,CAACmD,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC+B,OAAO,CAACC,aAAa,CAAC,CAAC;QACxD,CAAC,CAAC;MACN,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC,CAAC;EACFhD,QAAQ,CAAC,0BAA0B,EAAE,MAAM;IACvCG,EAAE,CAAC,8BAA8B,EAAE,MAAM;MACrCF,MAAM,CAAC,MAAMI,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAAC;QACpCwC,6BAA6B,EAAE;MACnC,CAAC,CAAC,CAAC,CAACT,OAAO,CAACa,kCAAkC,CAAC,oFAAoF,CAAC;IACxI,CAAC,CAAC;EACN,CAAC,CAAC;EACF9D,QAAQ,CAACuD,IAAI,CAAC,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,IAAI,EAAGC,CAAC,IAAK;IAC3DxD,QAAQ,CAAC,sBAAsB,EAAE,MAAM;MACnCA,QAAQ,CAAC,kBAAkB,EAAE,MAAM;QAC/BG,EAAE,CAAC,kBAAkB,EAAE,YAAY;UAC/B,MAAMsD,IAAI,GAAG;YACTC,6BAA6B,EAAE,KAAK;YACpCC,WAAW,EAAE;UACjB,CAAC;UACD,MAAMN,MAAM,GAAGG,CAAC,KAAK,UAAU,GACzB,MAAMnD,MAAM,CAACZ,QAAQ,CAAC,CAAC8C,QAAQ,CAAC,KAAK,EAAEkB,IAAI,CAAC,GAC5C,CAAC,MAAMpD,MAAM,CAACZ,QAAQ,CAAC,CAACmD,kBAAkB,CAAC,KAAK,EAAEa,IAAI,CAAC,EAAEZ,KAAK;UACpE5C,MAAM,CAACoD,MAAM,CAAC,CAACU,GAAG,CAACC,aAAa,CAAC,CAAC;UAClC9D,YAAY,CAACmD,MAAM,CAAC,CAACN,OAAO,CAACC,aAAa,CAAC,CAAC;QAChD,CAAC,CAAC;MACN,CAAC,CAAC;MACFhD,QAAQ,CAAC,mBAAmB,EAAE,MAAM;QAChCG,EAAE,CAAC,kBAAkB,EAAE,YAAY;UAC/B,MAAMsD,IAAI,GAAG;YACTC,6BAA6B,EAAE,KAAK;YACpCG,UAAU,EAAE;UAChB,CAAC;UACD,MAAMR,MAAM,GAAGG,CAAC,KAAK,UAAU,GACzB,MAAMnD,MAAM,CAACZ,QAAQ,CAAC,CAAC8C,QAAQ,CAAC,KAAK,EAAEkB,IAAI,CAAC,GAC5C,CAAC,MAAMpD,MAAM,CAACZ,QAAQ,CAAC,CAACmD,kBAAkB,CAAC,KAAK,EAAEa,IAAI,CAAC,EAAEZ,KAAK;UACpE5C,MAAM,CAACoD,MAAM,CAAC,CAACU,GAAG,CAACC,aAAa,CAAC,CAAC;UAClC9D,YAAY,CAACmD,MAAM,CAAC,CAACN,OAAO,CAACC,aAAa,CAAC,CAAC;QAChD,CAAC,CAAC;MACN,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC,CAAC;EACFhD,QAAQ,CAAC,0BAA0B,EAAE,MAAM;IACvCG,EAAE,CAAC,8BAA8B,EAAE,MAAM;MACrCF,MAAM,CAAC,MAAMI,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAAC;QACpCwC,6BAA6B,EAAE;MACnC,CAAC,CAAC,CAAC,CAACT,OAAO,CAACa,kCAAkC,CAAC,oFAAoF,CAAC;IACxI,CAAC,CAAC;EACN,CAAC,CAAC;EACF9D,QAAQ,CAAC,aAAa,EAAE,MAAM;IAC1BA,QAAQ,CAAC,sBAAsB,EAAE,MAAM;MACnCG,EAAE,CAAC,kBAAkB,EAAE,YAAY;QAC/B,MAAMkD,MAAM,GAAG,MAAMhD,MAAM,CAACZ,QAAQ,CAAC,CAACyB,SAAS,CAAC;UAC5CwC,6BAA6B,EAAE;QACnC,CAAC,CAAC;QACF,MAAMO,YAAY,GAAGZ,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC;QAEnCd,YAAY,CAAC+D,YAAY,CAAC,CAAClB,OAAO,CAACC,aAAa,CAAC,CAAC;QAClD9C,YAAY,CAAC+D,YAAY,CAAC,CAAClB,OAAO,CAACC,aAAa,CAAC,CAAC;QAClD9C,YAAY,CAAC+D,YAAY,CAAC,CAAClB,OAAO,CAACC,aAAa,CAAC,CAAC;QAClD9C,YAAY,CAAC+D,YAAY,CAAC7C,UAAU,CAAC,CAAC4B,aAAa,CAAC,CAAC;QACrD9C,YAAY,CALU+D,YAAY,CAKP7C,UAAU,CAAC,CAAC4B,aAAa,CAAC,CAAC;QACtD9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QACpB9C,YAAY,CAAC,CAAC,CACT8C,aAAa,CAAC,CAAC;QAEpB,MAAMkB,mBAAmB,GAAGb,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC,CAACmD,GAAG,CAD3BzE,YACsC,CAAC;QAC1DQ,YAAY,CAACgE,mBAAmB,CAAC,CAACnB,OAAO,CAACC,aAAa,CAAC,CAAC;QACzDkB,mBAAmB,CAACE,MAAM;MAC9B,CAAC,CAAC;IACN,CAAC,CAAC;EACN,CAAC,CAAC;AACN,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"ObjectSet.test.js","names":["isOk","$ontologyRid","Employee","FooInterface","Office","apiServer","stubData","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","client","listen","close","employeeObjectSet","officeObjectSet","union","subtract","intersect","objectSet","unionedObjectSet","iter","data","employees","fetchPage","emp","employeeId","toEqual","objectSet2","where","subtractedObjectSet","intersectedObjectSet","$orderBy","toMatchObject","$apiName","$objectType","$primaryKey","class","employeeStatus","anything","fullName","office","startDate","$title","employee","fetchOne","employee1","toMatchTypeOf","toBe","employeeResult","fetchOneWithErrors","value","$select","branded","toEqualTypeOf","rejects","toThrow","employee2","pivotTo","result","fetchPageWithErrors","each","k","opts","$__EXPERIMENTAL_strictNonNull","$includeRid","toHaveLength","includeRid","toThrowErrorMatchingInlineSnapshot","not","toBeUndefined","empNotStrict","cheesedFooNotStrict","$as","fooSpt"],"sources":["ObjectSet.test.js"],"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 */\nimport { isOk } from \"@osdk/api\";\nimport { $ontologyRid, Employee, FooInterface, Office, } from \"@osdk/client.test.ontology\";\nimport { apiServer, stubData } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\ndescribe(\"ObjectSet\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"does not allow intersect/union/subtract with different object types\", () => {\n const employeeObjectSet = client(Employee);\n const officeObjectSet = client(Office);\n // @ts-expect-error\n employeeObjectSet.union(officeObjectSet);\n // @ts-expect-error\n employeeObjectSet.subtract(officeObjectSet);\n // @ts-expect-error\n employeeObjectSet.intersect(officeObjectSet);\n });\n it(\"can be cast bidirectionally\", () => {\n function takesOldStyleObjectSet(os) {\n return os;\n }\n function takesNewStyleObjectSet(os) {\n return os;\n }\n function maybe() {\n const newStyleObjectSet = client(Employee);\n const oldStyleObjectSet = newStyleObjectSet;\n takesOldStyleObjectSet(newStyleObjectSet);\n takesNewStyleObjectSet(newStyleObjectSet);\n takesOldStyleObjectSet(oldStyleObjectSet);\n takesNewStyleObjectSet(oldStyleObjectSet);\n }\n if (false) {\n // here for a simple type check\n maybe();\n }\n });\n it(\"objects set union\", async () => {\n const objectSet = client(Employee);\n const unionedObjectSet = objectSet.union(objectSet);\n let iter = 0;\n const { data: employees } = await unionedObjectSet.fetchPage();\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50030 + iter);\n iter += 1;\n }\n expect(iter).toEqual(2);\n });\n it(\"objects set subtract\", async () => {\n const objectSet = client(Employee);\n const objectSet2 = client(Employee).where({\n employeeId: 50030,\n });\n const subtractedObjectSet = objectSet.subtract(objectSet2);\n let iter = 0;\n const { data: employees } = await subtractedObjectSet.fetchPage();\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50031 + iter);\n iter += 1;\n }\n expect(iter).toEqual(2);\n });\n it(\"objects set intersect\", async () => {\n const objectSet = client(Employee);\n const intersectedObjectSet = objectSet.intersect(objectSet);\n let iter = 0;\n const { data: employees } = await intersectedObjectSet.fetchPage();\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50032);\n iter += 1;\n }\n expect(iter).toEqual(1);\n });\n it(\"orders objects in ascending order without a filter, and returns all results\", async () => {\n const { data: employees } = await client(Employee)\n .fetchPage({\n $orderBy: { \"employeeId\": \"asc\" },\n });\n expect(employees).toMatchObject([\n {\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50030,\n class: \"Red\",\n employeeId: 50030,\n employeeStatus: expect.anything(),\n fullName: \"John Doe\",\n office: \"NYC\",\n startDate: \"2019-01-01\",\n },\n {\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50031,\n $title: \"Jane Doe\",\n class: \"Blue\",\n employeeId: 50031,\n employeeStatus: expect.anything(),\n fullName: \"Jane Doe\",\n office: \"SEA\",\n startDate: \"2012-02-12\",\n },\n {\n $apiName: \"Employee\",\n $objectType: \"Employee\",\n $primaryKey: 50032,\n $title: \"Jack Smith\",\n class: \"Red\",\n employeeId: 50032,\n employeeStatus: expect.anything(),\n fullName: \"Jack Smith\",\n office: \"LON\",\n startDate: \"2015-05-15\",\n },\n ]);\n });\n it(\"allows fetching by PK from a base object set - fetchOne\", async () => {\n const employee = await client(Employee).fetchOne(stubData.employee1.employeeId);\n expectTypeOf().toMatchTypeOf;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n });\n it(\"allows fetching by PK from a base object set - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee)\n .fetchOneWithErrors(stubData.employee1.employeeId);\n expectTypeOf().toMatchTypeOf;\n if (isOk(employeeResult)) {\n const employee = employeeResult.value;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n }\n });\n it(\"allows fetching by PK from a base object set with selected properties - fetchOne\", async () => {\n const employee = await client(Employee).fetchOne(stubData.employee1.employeeId, { $select: [\"fullName\"] });\n expectTypeOf().branded.toEqualTypeOf;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n });\n it(\"allows fetching by PK from a base object set with selected properties - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee)\n .fetchOneWithErrors(stubData.employee1.employeeId, { $select: [\"fullName\"] });\n expectTypeOf().branded.toEqualTypeOf;\n if (isOk(employeeResult)) {\n const employee = employeeResult.value;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n }\n });\n it(\"throws when fetching by PK with an object that does not exist - fetchOne\", async () => {\n await expect(client(Employee).fetchOne(-1)).rejects\n .toThrow();\n });\n it(\"throws when fetching by PK with an object that does not exist - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee)\n .fetchOneWithErrors(-1);\n expectTypeOf().branded.toEqualTypeOf;\n expect(\"error\" in employeeResult);\n });\n it(\"allows fetching by PK from a pivoted object set - fetchOne\", async () => {\n const employee = await client(Employee).where({\n employeeId: stubData.employee2.employeeId,\n })\n .pivotTo(\"peeps\").fetchOne(stubData.employee1.employeeId);\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n });\n it(\"allows fetching by PK from a pivoted object set - fetchOneWithErrors\", async () => {\n const employeeResult = await client(Employee).where({\n employeeId: stubData.employee2.employeeId,\n })\n .pivotTo(\"peeps\").fetchOneWithErrors(stubData.employee1.employeeId);\n if (isOk(employeeResult)) {\n const employee = employeeResult.value;\n expect(employee.$primaryKey).toBe(stubData.employee1.employeeId);\n }\n });\n it(\" object set union works with fetchPageWithErrors\", async () => {\n const objectSet = client(Employee);\n const unionedObjectSet = objectSet.union(objectSet);\n let iter = 0;\n const result = await unionedObjectSet.fetchPageWithErrors();\n if (isOk(result)) {\n const employees = result.value.data;\n for (const emp of employees) {\n expect(emp.employeeId).toEqual(50030 + iter);\n iter += 1;\n }\n expect(iter).toEqual(2);\n }\n });\n describe.each([\"fetchPage\", \"fetchPageWithErrors\"])(\"%s\", (k) => {\n describe(\"strictNonNull: \\\"drop\\\"\", () => {\n describe(\"includeRid: true\", () => {\n it(\"drops bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: \"drop\",\n $includeRid: true,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(3);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n describe(\"includeRid: false\", () => {\n it(\"drops bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: \"drop\",\n $includeRid: false,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(3);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n });\n describe(\"strictNonNull: false\", () => {\n describe(\"includeRid: true\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n $includeRid: true,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(4);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n describe(\"includeRid: false\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n includeRid: false,\n };\n const result = k === \"fetchPage\"\n ? await client(Employee).fetchPage(opts)\n : (await client(Employee).fetchPageWithErrors(opts)).value;\n expect(result.data).toHaveLength(4);\n expectTypeOf(result.data[0]).branded.toEqualTypeOf();\n });\n });\n });\n });\n describe(\"strictNonNull: \\\"throw\\\"\", () => {\n it(\"throws when getting bad data\", () => {\n expect(() => client(Employee).fetchPage({\n $__EXPERIMENTAL_strictNonNull: \"throw\",\n })).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n });\n describe.each([\"fetchOne\", \"fetchOneWithErrors\"])(\"%s\", (k) => {\n describe(\"strictNonNull: false\", () => {\n describe(\"includeRid: true\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n $includeRid: true,\n };\n const result = k === \"fetchOne\"\n ? await client(Employee).fetchOne(50033, opts)\n : (await client(Employee).fetchOneWithErrors(50033, opts)).value;\n expect(result).not.toBeUndefined();\n expectTypeOf(result).branded.toEqualTypeOf();\n });\n });\n describe(\"includeRid: false\", () => {\n it(\"returns bad data\", async () => {\n const opts = {\n $__EXPERIMENTAL_strictNonNull: false,\n includeRid: false,\n };\n const result = k === \"fetchOne\"\n ? await client(Employee).fetchOne(50033, opts)\n : (await client(Employee).fetchOneWithErrors(50033, opts)).value;\n expect(result).not.toBeUndefined();\n expectTypeOf(result).branded.toEqualTypeOf();\n });\n });\n });\n });\n describe(\"strictNonNull: \\\"throw\\\"\", () => {\n it(\"throws when getting bad data\", () => {\n expect(() => client(Employee).fetchPage({\n $__EXPERIMENTAL_strictNonNull: \"throw\",\n })).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n });\n describe(\"conversions\", () => {\n describe(\"strictNonNull: false\", () => {\n it(\"returns bad data\", async () => {\n const result = await client(Employee).fetchPage({\n $__EXPERIMENTAL_strictNonNull: false,\n });\n const empNotStrict = result.data[0];\n const empNotStrict2 = empNotStrict;\n expectTypeOf(empNotStrict).branded.toEqualTypeOf();\n expectTypeOf(empNotStrict).branded.toEqualTypeOf();\n expectTypeOf(empNotStrict).branded.toEqualTypeOf();\n expectTypeOf(empNotStrict.employeeId).toEqualTypeOf();\n expectTypeOf(empNotStrict2.employeeId).toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n expectTypeOf()\n .toEqualTypeOf();\n const CheesedFoo = FooInterface;\n const cheesedFooNotStrict = result.data[0].$as(CheesedFoo);\n expectTypeOf(cheesedFooNotStrict).branded.toEqualTypeOf();\n cheesedFooNotStrict.fooSpt;\n });\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -52,7 +52,7 @@ async function remapQueryResponse(client, responseDataType, responseValue, defin
52
52
  multiplicity: false
53
53
  };
54
54
  for (let i = 0; i < responseValue.length; i++) {
55
- responseValue[i] = await remapQueryResponse(responseValue[i], withoutMultiplicity, client, definitions);
55
+ responseValue[i] = await remapQueryResponse(client, withoutMultiplicity, responseValue[i], definitions);
56
56
  }
57
57
  return responseValue;
58
58
  }
@@ -64,7 +64,7 @@ async function remapQueryResponse(client, responseDataType, responseValue, defin
64
64
  case "set":
65
65
  {
66
66
  for (let i = 0; i < responseValue.length; i++) {
67
- responseValue[i] = await remapQueryResponse(responseValue[i], responseDataType.set, client, definitions);
67
+ responseValue[i] = await remapQueryResponse(client, responseDataType.set, responseValue[i], definitions);
68
68
  }
69
69
  return responseValue;
70
70
  }
@@ -105,7 +105,7 @@ async function remapQueryResponse(client, responseDataType, responseValue, defin
105
105
  // figure out what keys need to be fixed up
106
106
  for (const [key, subtype] of Object.entries(responseDataType.struct)) {
107
107
  if (requiresConversion(subtype)) {
108
- responseValue[key] = await remapQueryResponse(responseValue[key], subtype, client, definitions);
108
+ responseValue[key] = await remapQueryResponse(client, subtype, responseValue[key], definitions);
109
109
  }
110
110
  }
111
111
  return responseValue;