@osdk/faux 0.4.0-beta.1 → 0.4.0-beta.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.
- package/CHANGELOG.md +26 -0
- package/build/browser/FauxFoundry/FauxAttachmentStore.js +4 -2
- package/build/browser/FauxFoundry/FauxAttachmentStore.js.map +1 -1
- package/build/browser/FauxFoundry/FauxDataStore.js +8 -4
- package/build/browser/FauxFoundry/FauxDataStore.js.map +1 -1
- package/build/browser/FauxFoundry/FauxDataStoreBatch.js +2 -1
- package/build/browser/FauxFoundry/FauxDataStoreBatch.js.map +1 -1
- package/build/browser/FauxFoundry/validateAction.js +85 -13
- package/build/browser/FauxFoundry/validateAction.js.map +1 -1
- package/build/browser/FauxFoundry/validateAction.test.js +522 -0
- package/build/browser/FauxFoundry/validateAction.test.js.map +1 -0
- package/build/browser/handlers/util/handleOpenApiCall.js.map +1 -1
- package/build/cjs/index.cjs +130 -50
- package/build/cjs/index.cjs.map +1 -1
- package/build/cjs/index.d.cts +5 -3
- package/build/esm/FauxFoundry/FauxAttachmentStore.js +4 -2
- package/build/esm/FauxFoundry/FauxAttachmentStore.js.map +1 -1
- package/build/esm/FauxFoundry/FauxDataStore.js +8 -4
- package/build/esm/FauxFoundry/FauxDataStore.js.map +1 -1
- package/build/esm/FauxFoundry/FauxDataStoreBatch.js +2 -1
- package/build/esm/FauxFoundry/FauxDataStoreBatch.js.map +1 -1
- package/build/esm/FauxFoundry/validateAction.js +85 -13
- package/build/esm/FauxFoundry/validateAction.js.map +1 -1
- package/build/esm/FauxFoundry/validateAction.test.js +522 -0
- package/build/esm/FauxFoundry/validateAction.test.js.map +1 -0
- package/build/esm/handlers/util/handleOpenApiCall.js.map +1 -1
- package/build/types/FauxFoundry/FauxAttachmentStore.d.ts.map +1 -1
- package/build/types/FauxFoundry/FauxDataStore.d.ts.map +1 -1
- package/build/types/FauxFoundry/FauxDataStoreBatch.d.ts.map +1 -1
- package/build/types/FauxFoundry/validateAction.d.ts +2 -1
- package/build/types/FauxFoundry/validateAction.d.ts.map +1 -1
- package/build/types/FauxFoundry/validateAction.test.d.ts +1 -0
- package/build/types/FauxFoundry/validateAction.test.d.ts.map +1 -0
- package/build/types/handlers/util/handleOpenApiCall.d.ts +6 -4
- package/build/types/handlers/util/handleOpenApiCall.d.ts.map +1 -1
- package/package.json +5 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateAction.test.js","names":["describe","expect","it","isInterfaceActionParam","isMediaReference","matchesOntologyDataType","dataType","type","undefined","toBe","Number","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","Infinity","Date","objectApiName","objectTypeApiName","$primaryKey","name","objectSet","itemType","length","toThrow","keyType","valueType","Set","fields","unsupportedType","mimeType","reference","mediaSetViewItem","mediaSetRid","mediaSetViewRid","mediaItemRid","primaryKeyValue"],"sources":["validateAction.test.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { OntologyDataType } from \"@osdk/foundry.ontologies\";\nimport { describe, expect, it } from \"vitest\";\nimport {\n isInterfaceActionParam,\n isMediaReference,\n matchesOntologyDataType,\n} from \"./validateAction.js\";\n\ndescribe(\"matchesOntologyDataType\", () => {\n describe(\"any type\", () => {\n it(\"should return true for any value\", () => {\n const dataType: OntologyDataType = { type: \"any\" };\n\n expect(matchesOntologyDataType(dataType, undefined)).toBe(true);\n expect(matchesOntologyDataType(dataType, null)).toBe(true);\n expect(matchesOntologyDataType(dataType, \"string\")).toBe(true);\n expect(matchesOntologyDataType(dataType, 123)).toBe(true);\n expect(matchesOntologyDataType(dataType, true)).toBe(true);\n expect(matchesOntologyDataType(dataType, {})).toBe(true);\n expect(matchesOntologyDataType(dataType, [])).toBe(true);\n });\n });\n\n describe(\"boolean type\", () => {\n const dataType: OntologyDataType = { type: \"boolean\" };\n\n it(\"should return true for boolean values\", () => {\n expect(matchesOntologyDataType(dataType, true)).toBe(true);\n expect(matchesOntologyDataType(dataType, false)).toBe(true);\n });\n\n it(\"should return false for non-boolean values\", () => {\n expect(matchesOntologyDataType(dataType, \"true\")).toBe(false);\n expect(matchesOntologyDataType(dataType, 1)).toBe(false);\n expect(matchesOntologyDataType(dataType, 0)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n expect(matchesOntologyDataType(dataType, undefined)).toBe(false);\n });\n });\n\n describe(\"string type\", () => {\n const dataType: OntologyDataType = { type: \"string\" };\n\n it(\"should return true for string values\", () => {\n expect(matchesOntologyDataType(dataType, \"\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"hello\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"123\")).toBe(true);\n });\n\n it(\"should return false for non-string values\", () => {\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, true)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n expect(matchesOntologyDataType(dataType, undefined)).toBe(false);\n expect(matchesOntologyDataType(dataType, {})).toBe(false);\n });\n });\n\n describe(\"integer type\", () => {\n const dataType: OntologyDataType = { type: \"integer\" };\n\n it(\"should return true for valid integer values within bounds\", () => {\n expect(matchesOntologyDataType(dataType, 0)).toBe(true);\n expect(matchesOntologyDataType(dataType, 1)).toBe(true);\n expect(matchesOntologyDataType(dataType, -1)).toBe(true);\n expect(matchesOntologyDataType(dataType, 2147483647)).toBe(true); // max int\n expect(matchesOntologyDataType(dataType, -2147483648)).toBe(true); // min int\n });\n\n it(\"should return false for non-integer values\", () => {\n expect(matchesOntologyDataType(dataType, 1.5)).toBe(false);\n expect(matchesOntologyDataType(dataType, \"123\")).toBe(false);\n expect(matchesOntologyDataType(dataType, true)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n });\n\n it(\"should return false for integers out of bounds\", () => {\n expect(matchesOntologyDataType(dataType, 2147483648)).toBe(false); // max + 1\n expect(matchesOntologyDataType(dataType, -2147483649)).toBe(false); // min - 1\n });\n });\n\n describe(\"long type\", () => {\n const dataType: OntologyDataType = { type: \"long\" };\n\n it(\"should return true for valid long values within safe integer bounds\", () => {\n expect(matchesOntologyDataType(dataType, 0)).toBe(true);\n expect(matchesOntologyDataType(dataType, Number.MAX_SAFE_INTEGER)).toBe(\n true,\n );\n expect(matchesOntologyDataType(dataType, Number.MIN_SAFE_INTEGER)).toBe(\n true,\n );\n });\n\n it(\"should return false for non-integer values\", () => {\n expect(matchesOntologyDataType(dataType, 1.5)).toBe(false);\n expect(matchesOntologyDataType(dataType, \"123\")).toBe(false);\n });\n\n it(\"should return false for values outside safe integer range\", () => {\n expect(\n matchesOntologyDataType(dataType, Number.MAX_SAFE_INTEGER + 1),\n ).toBe(false);\n expect(\n matchesOntologyDataType(dataType, Number.MIN_SAFE_INTEGER - 1),\n ).toBe(false);\n });\n });\n\n describe(\"double type\", () => {\n const dataType: OntologyDataType = { type: \"double\" };\n\n it(\"should return true for valid double values\", () => {\n expect(matchesOntologyDataType(dataType, 0)).toBe(true);\n expect(matchesOntologyDataType(dataType, 1.5)).toBe(true);\n expect(matchesOntologyDataType(dataType, -1.5)).toBe(true);\n expect(matchesOntologyDataType(dataType, Number.MAX_VALUE)).toBe(true);\n expect(matchesOntologyDataType(dataType, -Number.MAX_VALUE)).toBe(true);\n });\n\n it(\"should return false for non-number values\", () => {\n expect(matchesOntologyDataType(dataType, \"123\")).toBe(false);\n expect(matchesOntologyDataType(dataType, true)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n });\n\n it(\"should return false for Infinity\", () => {\n expect(matchesOntologyDataType(dataType, Infinity)).toBe(false);\n expect(matchesOntologyDataType(dataType, -Infinity)).toBe(false);\n });\n });\n\n describe(\"float type\", () => {\n const dataType: OntologyDataType = { type: \"float\" };\n\n it(\"should return true for valid float values within bounds\", () => {\n expect(matchesOntologyDataType(dataType, 0)).toBe(true);\n expect(matchesOntologyDataType(dataType, 1.5)).toBe(true);\n expect(matchesOntologyDataType(dataType, -1.5)).toBe(true);\n expect(matchesOntologyDataType(dataType, 3.4028235e38)).toBe(true);\n expect(matchesOntologyDataType(dataType, -3.4028235e38)).toBe(true);\n });\n\n it(\"should return false for values outside float bounds\", () => {\n expect(matchesOntologyDataType(dataType, 3.5e38)).toBe(false);\n expect(matchesOntologyDataType(dataType, -3.5e38)).toBe(false);\n });\n });\n\n describe(\"byte type\", () => {\n const dataType: OntologyDataType = { type: \"byte\" };\n\n it(\"should return true for valid byte values\", () => {\n expect(matchesOntologyDataType(dataType, 0)).toBe(true);\n expect(matchesOntologyDataType(dataType, 127)).toBe(true);\n expect(matchesOntologyDataType(dataType, -128)).toBe(true);\n });\n\n it(\"should return false for values outside byte bounds\", () => {\n expect(matchesOntologyDataType(dataType, 128)).toBe(false);\n expect(matchesOntologyDataType(dataType, -129)).toBe(false);\n });\n\n it(\"should return false for non-integer values\", () => {\n expect(matchesOntologyDataType(dataType, 1.5)).toBe(true); // Note: isInBounds doesn't check for integers for byte\n });\n });\n\n describe(\"short type\", () => {\n const dataType: OntologyDataType = { type: \"short\" };\n\n it(\"should return true for valid short values\", () => {\n expect(matchesOntologyDataType(dataType, 0)).toBe(true);\n expect(matchesOntologyDataType(dataType, 32767)).toBe(true);\n expect(matchesOntologyDataType(dataType, -32768)).toBe(true);\n });\n\n it(\"should return false for values outside short bounds\", () => {\n expect(matchesOntologyDataType(dataType, 32768)).toBe(false);\n expect(matchesOntologyDataType(dataType, -32769)).toBe(false);\n });\n });\n\n describe(\"date type\", () => {\n const dataType: OntologyDataType = { type: \"date\" };\n\n it(\"should return true for valid date strings\", () => {\n expect(matchesOntologyDataType(dataType, \"2025-01-15\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"2000-12-31\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"1970-01-01\")).toBe(true);\n });\n\n it(\"should return false for invalid date strings\", () => {\n expect(matchesOntologyDataType(dataType, \"2025-13-01\")).toBe(false); // invalid month\n expect(matchesOntologyDataType(dataType, \"2025-01-32\")).toBe(false); // invalid day\n expect(matchesOntologyDataType(dataType, \"2025/01/15\")).toBe(false); // wrong format\n expect(matchesOntologyDataType(dataType, \"01-15-2025\")).toBe(false); // wrong format\n expect(matchesOntologyDataType(dataType, \"not a date\")).toBe(false);\n });\n\n it(\"should return false for non-string values\", () => {\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, new Date())).toBe(false);\n });\n });\n\n describe(\"timestamp type\", () => {\n const dataType: OntologyDataType = { type: \"timestamp\" };\n\n it(\"should return true for valid timestamp strings\", () => {\n expect(matchesOntologyDataType(dataType, \"2025-01-15T10:30:00Z\")).toBe(\n true,\n );\n expect(\n matchesOntologyDataType(dataType, \"2025-01-15T10:30:00.123Z\"),\n ).toBe(true);\n expect(matchesOntologyDataType(dataType, \"2025-01-15\")).toBe(true);\n });\n\n it(\"should return false for invalid timestamp strings\", () => {\n expect(matchesOntologyDataType(dataType, \"not a timestamp\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"\")).toBe(false);\n });\n\n it(\"should return false for non-string values\", () => {\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, new Date())).toBe(false);\n });\n });\n\n describe(\"decimal type\", () => {\n const dataType: OntologyDataType = { type: \"decimal\" };\n\n it(\"should return true for valid decimal strings\", () => {\n expect(matchesOntologyDataType(dataType, \"0\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"123\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"123.456\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"-123.456\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"+123.456\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \".5\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"-.5\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"123.\")).toBe(true);\n });\n\n it(\"should return true for valid decimal strings with scientific notation\", () => {\n expect(matchesOntologyDataType(dataType, \"1E10\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"1.5E10\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"1.5E+10\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"1.5E-10\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"-1.5E10\")).toBe(true);\n });\n\n it(\"should return false for invalid decimal strings\", () => {\n expect(matchesOntologyDataType(dataType, \"abc\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"12.34.56\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"1.2.3E10\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"E10\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"1E\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"1e10\")).toBe(false);\n });\n\n it(\"should return false for non-string values\", () => {\n expect(matchesOntologyDataType(dataType, 123.456)).toBe(false);\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, true)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n expect(matchesOntologyDataType(dataType, undefined)).toBe(false);\n expect(matchesOntologyDataType(dataType, {})).toBe(false);\n });\n });\n\n describe(\"marking type\", () => {\n const dataType: OntologyDataType = { type: \"marking\" };\n\n it(\"should return true for string values\", () => {\n expect(matchesOntologyDataType(dataType, \"marking1\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"\")).toBe(true);\n });\n\n it(\"should return false for non-string values\", () => {\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n });\n });\n\n describe(\"object type\", () => {\n const dataType: OntologyDataType = {\n type: \"object\",\n objectApiName: \"Employee\",\n objectTypeApiName: \"Employee\",\n };\n\n it(\"should return true for string (RID) values\", () => {\n expect(matchesOntologyDataType(dataType, \"ri.object.123\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"someId\")).toBe(true);\n });\n\n it(\"should return true for objects with $primaryKey\", () => {\n expect(matchesOntologyDataType(dataType, { $primaryKey: \"123\" })).toBe(\n true,\n );\n expect(\n matchesOntologyDataType(dataType, {\n $primaryKey: \"123\",\n name: \"test\",\n }),\n ).toBe(true);\n });\n\n it(\"should return false for objects without $primaryKey\", () => {\n expect(matchesOntologyDataType(dataType, { name: \"test\" })).toBe(false);\n expect(matchesOntologyDataType(dataType, {})).toBe(false);\n });\n\n it(\"should return false for other value types\", () => {\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, true)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n });\n });\n\n describe(\"objectSet type\", () => {\n const dataType: OntologyDataType = { type: \"objectSet\" };\n\n it(\"should return true for RID strings\", () => {\n expect(matchesOntologyDataType(dataType, \"ri.objectSet.123\")).toBe(true);\n expect(matchesOntologyDataType(dataType, \"ri.anything.456\")).toBe(true);\n });\n\n it(\"should return true for objects with objectSet property\", () => {\n expect(\n matchesOntologyDataType(dataType, { objectSet: \"definition\" }),\n ).toBe(true);\n });\n\n it(\"should return false for non-RID strings\", () => {\n expect(matchesOntologyDataType(dataType, \"not a rid\")).toBe(false);\n expect(matchesOntologyDataType(dataType, \"objectSet\")).toBe(false);\n });\n\n it(\"should return false for objects without objectSet property\", () => {\n expect(matchesOntologyDataType(dataType, { name: \"test\" })).toBe(false);\n });\n });\n\n describe(\"array type\", () => {\n it(\"should return true for arrays with matching item types\", () => {\n const dataType: OntologyDataType = {\n type: \"array\",\n itemType: { type: \"string\" },\n };\n\n expect(matchesOntologyDataType(dataType, [])).toBe(true);\n expect(matchesOntologyDataType(dataType, [\"a\", \"b\", \"c\"])).toBe(true);\n });\n\n it(\"should return false for arrays with non-matching item types\", () => {\n const dataType: OntologyDataType = {\n type: \"array\",\n itemType: { type: \"string\" },\n };\n\n expect(matchesOntologyDataType(dataType, [1, 2, 3])).toBe(false);\n expect(matchesOntologyDataType(dataType, [\"a\", 1, \"c\"])).toBe(false);\n });\n\n it(\"should work with nested arrays\", () => {\n const dataType: OntologyDataType = {\n type: \"array\",\n itemType: {\n type: \"array\",\n itemType: { type: \"integer\" },\n },\n };\n\n expect(matchesOntologyDataType(dataType, [[1, 2], [3, 4]])).toBe(true);\n expect(matchesOntologyDataType(dataType, [[1, 2], [\"a\", \"b\"]])).toBe(\n false,\n );\n });\n\n it(\"should return false for non-array values\", () => {\n const dataType: OntologyDataType = {\n type: \"array\",\n itemType: { type: \"string\" },\n };\n\n expect(matchesOntologyDataType(dataType, \"not an array\")).toBe(false);\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, { length: 0 })).toBe(false);\n });\n });\n\n describe(\"cipherText type\", () => {\n const dataType: OntologyDataType = { type: \"cipherText\" };\n\n it(\"should return true for valid CIPHER format\", () => {\n expect(\n matchesOntologyDataType(\n dataType,\n \"CIPHER::ri.channel.123::encrypted::CIPHER\",\n ),\n ).toBe(true);\n });\n\n it(\"should return true for valid BELLASO format\", () => {\n expect(\n matchesOntologyDataType(\n dataType,\n \"BELLASO::ri.channel.123::encrypted::BELLASO\",\n ),\n ).toBe(true);\n });\n\n it(\"should return true for valid BELLASO format without suffix\", () => {\n expect(\n matchesOntologyDataType(dataType, \"BELLASO::ri.channel.123::encrypted\"),\n ).toBe(true);\n });\n\n it(\"should return false for invalid cipher format\", () => {\n expect(matchesOntologyDataType(dataType, \"CIPHER::channel::data\")).toBe(\n false,\n ); // missing ri. prefix\n expect(\n matchesOntologyDataType(dataType, \"CIPHER::ri.channel.123::\"),\n ).toBe(false); // empty encrypted value\n expect(\n matchesOntologyDataType(\n dataType,\n \"INVALID::ri.channel.123::data::INVALID\",\n ),\n ).toBe(false);\n });\n\n it(\"should return false for non-string values\", () => {\n expect(matchesOntologyDataType(dataType, 123)).toBe(false);\n expect(matchesOntologyDataType(dataType, null)).toBe(false);\n });\n });\n\n describe(\"binary type\", () => {\n const dataType: OntologyDataType = { type: \"binary\" };\n\n it(\"should throw an error\", () => {\n expect(() => matchesOntologyDataType(dataType, \"data\")).toThrow(\n \"validateDataType: binary not implemented yet.\",\n );\n });\n });\n\n describe(\"map type\", () => {\n const dataType: OntologyDataType = {\n type: \"map\",\n keyType: { type: \"string\" },\n valueType: { type: \"integer\" },\n };\n\n it(\"should throw an error\", () => {\n expect(() => matchesOntologyDataType(dataType, {})).toThrow(\n \"matchesOntologyDataType: map not implemented yet.\",\n );\n });\n });\n\n describe(\"set type\", () => {\n const dataType: OntologyDataType = {\n type: \"set\",\n itemType: { type: \"string\" },\n };\n\n it(\"should throw an error\", () => {\n expect(() => matchesOntologyDataType(dataType, new Set())).toThrow(\n \"matchesOntologyDataType: set not implemented yet.\",\n );\n });\n });\n\n describe(\"struct type\", () => {\n const dataType: OntologyDataType = {\n type: \"struct\",\n fields: [],\n };\n\n it(\"should throw an error\", () => {\n expect(() => matchesOntologyDataType(dataType, {})).toThrow(\n \"matchesOntologyDataType: struct not implemented yet.\",\n );\n });\n });\n\n describe(\"unsupported type\", () => {\n const dataType: OntologyDataType = {\n type: \"unsupported\",\n unsupportedType: \"someCustomType\",\n };\n\n it(\"should throw an error\", () => {\n expect(() => matchesOntologyDataType(dataType, \"anything\")).toThrow(\n \"matchesOntologyDataType: unsupported not implemented yet.\",\n );\n });\n });\n});\n\ndescribe(\"isMediaReference\", () => {\n it(\"should return true for valid MediaReference objects\", () => {\n const validMediaRef = {\n mimeType: \"image/png\",\n reference: {\n type: \"mediaSetViewItem\",\n mediaSetViewItem: {\n mediaSetRid: \"ri.mediaset.123\",\n mediaSetViewRid: \"ri.mediasetview.456\",\n mediaItemRid: \"ri.mediaitem.789\",\n },\n },\n };\n\n expect(isMediaReference(validMediaRef)).toBe(true);\n });\n\n it(\"should return false for objects missing required properties\", () => {\n expect(isMediaReference({ mimeType: \"image/png\" })).toBe(false);\n expect(\n isMediaReference({\n reference: {\n type: \"mediaSetViewItem\",\n mediaSetViewItem: {},\n },\n }),\n ).toBe(false);\n });\n\n it(\"should return false for objects with incorrect reference type\", () => {\n const invalidMediaRef = {\n mimeType: \"image/png\",\n reference: {\n type: \"wrongType\",\n mediaSetViewItem: {\n mediaSetRid: \"ri.mediaset.123\",\n mediaSetViewRid: \"ri.mediasetview.456\",\n mediaItemRid: \"ri.mediaitem.789\",\n },\n },\n };\n\n expect(isMediaReference(invalidMediaRef)).toBe(false);\n });\n});\n\ndescribe(\"isInterfaceActionParam\", () => {\n it(\"should return true for valid interface action params with string primary key\", () => {\n expect(\n isInterfaceActionParam({\n objectTypeApiName: \"Employee\",\n primaryKeyValue: \"emp-123\",\n }),\n ).toBe(true);\n });\n\n it(\"should return true for valid interface action params with number primary key\", () => {\n expect(\n isInterfaceActionParam({\n objectTypeApiName: \"Employee\",\n primaryKeyValue: 123,\n }),\n ).toBe(true);\n });\n\n it(\"should return true for valid interface action params with boolean primary key\", () => {\n expect(\n isInterfaceActionParam({\n objectTypeApiName: \"Employee\",\n primaryKeyValue: true,\n }),\n ).toBe(true);\n });\n\n it(\"should return false for objects missing objectTypeApiName\", () => {\n expect(\n isInterfaceActionParam({\n primaryKeyValue: \"123\",\n }),\n ).toBe(false);\n });\n\n it(\"should return false for objects missing primaryKeyValue\", () => {\n expect(\n isInterfaceActionParam({\n objectTypeApiName: \"Employee\",\n }),\n ).toBe(false);\n });\n\n it(\"should return false for objects with invalid primaryKeyValue type\", () => {\n expect(\n isInterfaceActionParam({\n objectTypeApiName: \"Employee\",\n primaryKeyValue: {},\n }),\n ).toBe(false);\n\n expect(\n isInterfaceActionParam({\n objectTypeApiName: \"Employee\",\n primaryKeyValue: [],\n }),\n ).toBe(false);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleOpenApiCall.js","names":["http","HttpResponse","authHandlerMiddleware","OpenApiCallError","Error","constructor","status","json","errorCode","errorName","JSON","stringify","parameters","handleOpenApiCall","openApiCall","names","baseUrl","restImpl","options","captured","fetch","url","req","u","URL","search","method","endPoint","toString","replace","ok","Promise","resolve","blob","Blob","map","n","type","size","toLowerCase","info","result","Response","body","e","stack","statusText","message"],"sources":["handleOpenApiCall.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n DefaultBodyType,\n HttpHandler,\n HttpResponseResolver,\n RequestHandlerOptions,\n} from \"msw\";\nimport { http, HttpResponse } from \"msw\";\nimport type { BaseAPIError } from \"../../BaseError.js\";\nimport { authHandlerMiddleware } from \"../authHandlerMiddleware.js\";\n\nexport class OpenApiCallError extends Error {\n constructor(\n public status: number,\n public json: {\n errorCode: string;\n errorName: string;\n errorInstanceId: string;\n parameters: Record<string, unknown>;\n },\n ) {\n super(\n `${json.errorCode} ${json.errorName ?? \"Unknown error\"} ${\n JSON.stringify(json.parameters)\n }`,\n );\n }\n}\n\ntype ExtractStringParams<T extends any[]> = T extends [infer A, ...infer B]\n ? A extends string ? [A, ...ExtractStringParams<B>]
|
|
1
|
+
{"version":3,"file":"handleOpenApiCall.js","names":["http","HttpResponse","authHandlerMiddleware","OpenApiCallError","Error","constructor","status","json","errorCode","errorName","JSON","stringify","parameters","handleOpenApiCall","openApiCall","names","baseUrl","restImpl","options","captured","fetch","url","req","u","URL","search","method","endPoint","toString","replace","ok","Promise","resolve","blob","Blob","map","n","type","size","toLowerCase","info","result","Response","body","e","stack","statusText","message"],"sources":["handleOpenApiCall.ts"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n DefaultBodyType,\n HttpHandler,\n HttpResponseResolver,\n RequestHandlerOptions,\n} from \"msw\";\nimport { http, HttpResponse } from \"msw\";\nimport type { BaseAPIError } from \"../../BaseError.js\";\nimport { authHandlerMiddleware } from \"../authHandlerMiddleware.js\";\n\nexport class OpenApiCallError extends Error {\n constructor(\n public status: number,\n public json: {\n errorCode: string;\n errorName: string;\n errorInstanceId: string;\n errorDescription?: string;\n parameters: Record<string, unknown>;\n },\n ) {\n super(\n `${json.errorCode} ${json.errorName ?? \"Unknown error\"} ${\n JSON.stringify(\n json.parameters,\n )\n }`,\n );\n }\n}\n\ntype ExtractStringParams<T extends any[]> = T extends [infer A, ...infer B]\n ? A extends string ? [A, ...ExtractStringParams<B>]\n : []\n : [];\n\nexport type SkipStringParams<T extends any[]> = T extends [infer A, ...infer B]\n ? A extends string ? SkipStringParams<B>\n : T\n : T;\n\n/**\n * This relies on a trick that generally our query params and header params are optional therefore\n * the body can generally be assumed to be the first payload following the strings which are path\n * params.\n *\n * This will also fail if your body is defined as a string as that will get interpreted as a path param.\n * If this happens, you cannot use the helper. Sorry\n */\nexport type ExtractBody<\n X extends (reqCall: any, ...args: any[]) => Promise<any>,\n> = undefined extends SkipStringParams<ParamsAfterReqCall<X>>[0] ? never\n : SkipStringParams<ParamsAfterReqCall<X>>[0];\n\nexport type ExtractResponse<X extends (...args: any[]) => Promise<any>> =\n Awaited<ReturnType<X>>;\n\nexport type ParamsAfterReqCall<\n T extends (reqCall: any, ...args: any[]) => Promise<any>,\n> = T extends (reqCall: any, ...args: infer Z) => Promise<any> ? Z : never;\n\nexport type RestImpl<\n URL_PARAMS extends string,\n REQ_BODY extends DefaultBodyType,\n RESP_BODY extends DefaultBodyType,\n> = (\n info: Parameters<\n HttpResponseResolver<\n Record<URL_PARAMS, string>,\n REQ_BODY,\n RESP_BODY | BaseAPIError\n >\n >[0],\n) => RESP_BODY | Promise<RESP_BODY>;\n\nexport type OpenApiCallFactory<\n URL_PARAMS extends string,\n REQ_BODY extends DefaultBodyType,\n RESP_BODY extends DefaultBodyType,\n> = (\n baseUrl: string,\n restImpl: RestImpl<URL_PARAMS, REQ_BODY, RESP_BODY>,\n options?: RequestHandlerOptions,\n) => HttpHandler;\n\nexport type CallFactory<\n URL_PARAMS extends string,\n X extends (...args: any[]) => Promise<any>,\n> = (\n baseUrl: string,\n restImpl: RestImpl<URL_PARAMS, ExtractBody<X>, ExtractResponse<X>>,\n options?: RequestHandlerOptions,\n) => HttpHandler;\n\nexport function handleOpenApiCall<\n const N extends ExtractStringParams<ParamsAfterReqCall<X>>,\n const X extends (...args: any[]) => Promise<any>,\n>(openApiCall: X, names: N): CallFactory<N[number], X> {\n return (\n baseUrl: string,\n restImpl: RestImpl<N[number], ExtractBody<X>, ExtractResponse<X>>,\n options?: RequestHandlerOptions,\n ): HttpHandler => {\n let captured: {\n method: \"GET\" | \"POST\" | \"PUT\" | \"DELETE\" | \"PATCH\";\n endPoint: string;\n data?: any;\n queryArguments?: Record<string, any>;\n headers?: Record<string, any>;\n requestMediaType?: string;\n responseMediaType?: string;\n } = {} as any;\n\n const capture = {\n fetch: (url: string, req: Request) => {\n const u = new URL(url);\n u.search = \"\"; // msw doesn't want the search string\n captured = {\n method: req.method as any,\n endPoint: u.toString().replace(/%3A/g, \":\"),\n };\n\n // fake a response object so the call doesn't fail\n return {\n ok: true,\n json: () => Promise.resolve({}),\n blob: () => new Blob(),\n };\n },\n baseUrl,\n };\n\n // we don't care about the promise here, we are just building the url\n void openApiCall(\n capture as any,\n ...(names.map((n) => `:${n}`) as any),\n // add a simulated blob in here in case of an upload\n { type: \"\", size: 5 },\n );\n\n return http[\n captured.method.toLowerCase() as Lowercase<typeof captured.method>\n ](\n captured.endPoint,\n authHandlerMiddleware(async (info) => {\n try {\n const result: any = await restImpl(info as any);\n\n if (result instanceof Response) {\n return new HttpResponse(\n result.body,\n ) as HttpResponse<DefaultBodyType>;\n }\n return HttpResponse.json(result);\n } catch (e) {\n if (e instanceof OpenApiCallError) {\n return HttpResponse.json(\n { ...e.json, stack: e.stack },\n {\n status: e.status,\n statusText: e.message,\n },\n );\n }\n throw e;\n }\n }),\n options,\n );\n };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAQA,SAASA,IAAI,EAAEC,YAAY,QAAQ,KAAK;AAExC,SAASC,qBAAqB,QAAQ,6BAA6B;AAEnE,OAAO,MAAMC,gBAAgB,SAASC,KAAK,CAAC;EAC1CC,WAAWA,CACFC,MAAc,EACdC,IAMN,EACD;IACA,KAAK,CACH,GAAGA,IAAI,CAACC,SAAS,IAAID,IAAI,CAACE,SAAS,IAAI,eAAe,IACpDC,IAAI,CAACC,SAAS,CACZJ,IAAI,CAACK,UACP,CAAC,EAEL,CAAC;IAAC,KAfKN,MAAc,GAAdA,MAAc;IAAA,KACdC,IAMN,GANMA,IAMN;EASH;AACF;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA8CA,OAAO,SAASM,iBAAiBA,CAG/BC,WAAc,EAAEC,KAAQ,EAA6B;EACrD,OAAO,CACLC,OAAe,EACfC,QAAiE,EACjEC,OAA+B,KACf;IAChB,IAAIC,QAQH,GAAG,CAAC,CAAQ;IAqBb;IACA,KAAKL,WAAW,CApBA;MACdM,KAAK,EAAEA,CAACC,GAAW,EAAEC,GAAY,KAAK;QACpC,MAAMC,CAAC,GAAG,IAAIC,GAAG,CAACH,GAAG,CAAC;QACtBE,CAAC,CAACE,MAAM,GAAG,EAAE,CAAC,CAAC;QACfN,QAAQ,GAAG;UACTO,MAAM,EAAEJ,GAAG,CAACI,MAAa;UACzBC,QAAQ,EAAEJ,CAAC,CAACK,QAAQ,CAAC,CAAC,CAACC,OAAO,CAAC,MAAM,EAAE,GAAG;QAC5C,CAAC;;QAED;QACA,OAAO;UACLC,EAAE,EAAE,IAAI;UACRvB,IAAI,EAAEA,CAAA,KAAMwB,OAAO,CAACC,OAAO,CAAC,CAAC,CAAC,CAAC;UAC/BC,IAAI,EAAEA,CAAA,KAAM,IAAIC,IAAI,CAAC;QACvB,CAAC;MACH,CAAC;MACDlB;IACF,CAAC,EAKC,GAAID,KAAK,CAACoB,GAAG,CAAEC,CAAC,IAAK,IAAIA,CAAC,EAAE,CAAS;IACrC;IACA;MAAEC,IAAI,EAAE,EAAE;MAAEC,IAAI,EAAE;IAAE,CACtB,CAAC;IAED,OAAOtC,IAAI,CACTmB,QAAQ,CAACO,MAAM,CAACa,WAAW,CAAC,CAAC,CAC9B,CACCpB,QAAQ,CAACQ,QAAQ,EACjBzB,qBAAqB,CAAC,MAAOsC,IAAI,IAAK;MACpC,IAAI;QACF,MAAMC,MAAW,GAAG,MAAMxB,QAAQ,CAACuB,IAAW,CAAC;QAE/C,IAAIC,MAAM,YAAYC,QAAQ,EAAE;UAC9B,OAAO,IAAIzC,YAAY,CACrBwC,MAAM,CAACE,IACT,CAAC;QACH;QACA,OAAO1C,YAAY,CAACM,IAAI,CAACkC,MAAM,CAAC;MAClC,CAAC,CAAC,OAAOG,CAAC,EAAE;QACV,IAAIA,CAAC,YAAYzC,gBAAgB,EAAE;UACjC,OAAOF,YAAY,CAACM,IAAI,CACtB;YAAE,GAAGqC,CAAC,CAACrC,IAAI;YAAEsC,KAAK,EAAED,CAAC,CAACC;UAAM,CAAC,EAC7B;YACEvC,MAAM,EAAEsC,CAAC,CAACtC,MAAM;YAChBwC,UAAU,EAAEF,CAAC,CAACG;UAChB,CACF,CAAC;QACH;QACA,MAAMH,CAAC;MACT;IACF,CAAC,CAAC,EACF1B,OACF,CAAC;EACH,CAAC;AACH","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,iBAAiB,kBAAkB,0BAA2B;AAG9D,iBAAiB,2BACP,KAAK,aAAa,cAAc,aAC1C;CACE,QAAQ;AACT;AAED,OAAO,cAAM,oBAAoB;;CAG/B,mBACEA,YAAY,qBACX,aAAa;CAKhB,2BAA2BC,wBAAwB,aAAa;
|
|
1
|
+
{"mappings":"AAgBA,iBAAiB,kBAAkB,0BAA2B;AAG9D,iBAAiB,2BACP,KAAK,aAAa,cAAc,aAC1C;CACE,QAAQ;AACT;AAED,OAAO,cAAM,oBAAoB;;CAG/B,mBACEA,YAAY,qBACX,aAAa;CAKhB,2BAA2BC,wBAAwB,aAAa;CAwBhE,oBAAoBA,wBAAwB;AAiB7C","names":["attachment: FauxAttachmentInfo","attachmentRid: string"],"sources":["../../../src/FauxFoundry/FauxAttachmentStore.ts"],"version":3,"file":"FauxAttachmentStore.d.ts"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,qBAAqB,4BAA4B,WAAY;AAC3E,cACE,cACA,gBACA,iBACK,oBAAqB;AAC5B,iBAAiB,kBAAkB,0BAA2B;AAW9D,cAAc,kCAAkC,qDAAsD;AAEtG,cACO,wBAEA,uBAAwB;AAC/B,cAAc,2BAA2B,0BAA2B;AAEpE,cAAc,oBAAoB,mBAAoB;AAKtD,cAAc,iBAAiB,4BAA6B;AAG5D,iBAAiB,wBAAwB;CACvC,SAAS;CACT,UAAU;CACV,UAAU,aAAa;AACxB;KAEI,kCAAkC,UAAU,wBAC/C,sBAAsB,UAAU;;;;;KAM7B,oBAAoB,UAAU,wBAC/B,kCAAkC,KAClC;
|
|
1
|
+
{"mappings":"AAgBA,cAAc,qBAAqB,4BAA4B,WAAY;AAC3E,cACE,cACA,gBACA,iBACK,oBAAqB;AAC5B,iBAAiB,kBAAkB,0BAA2B;AAW9D,cAAc,kCAAkC,qDAAsD;AAEtG,cACO,wBAEA,uBAAwB;AAC/B,cAAc,2BAA2B,0BAA2B;AAEpE,cAAc,oBAAoB,mBAAoB;AAKtD,cAAc,iBAAiB,4BAA6B;AAG5D,iBAAiB,wBAAwB;CACvC,SAAS;CACT,UAAU;CACV,UAAU,aAAa;AACxB;KAEI,kCAAkC,UAAU,wBAC/C,sBAAsB,UAAU;;;;;KAM7B,oBAAoB,UAAU,wBAC/B,kCAAkC,KAClC;CACA,UAAU,oBAAoB,GAAG;AAClC;;;;KAKE,sBAAsB,uBAEtB,WAAW,KAAK,EAAE,uBAAuB,cAAa,EAAE,UAGxD,WAAW,KAAK,EAAE,+BAA+B,MAAK,EAAE;AAwB7D,OAAO,cAAM,cAAc;;CAsCzB,YACEA,cAAc,cACdC,aAAa,qBACbC;;;;;;CAYF,AAAO;CAQP,IAAI,YAAY;;;;;;CA2ChB,eAAe,UAAU,sBACvBC,YAAY,GACZC,KAAK,oBAAoB,KAAK,kCAAkC,KAC/D;;;;;;;CAOH,eAAeC,KAAK,mBAAmB;CAmGvC,qBAAqBC,GAAG;;CA0FxB,wBACEC,oBACAC;CAMF,aACEC,QAAQ,kBACRC,qBACAC,QAAQ,kBACRC;CAwDF,eACEC,KAAK,kBACLH,qBACAI,KAAK,kBACLC;CA4CF,uBACEC,YAAY,aAAa,mBACzBC,6BACAC,UAAU,aAAa,iBACvBC,MAAM,aAAa;CAerB,kBACEH,YAAY,aAAa,mBACzBC,6BACAC,UAAU,aAAa,iBACvBE,SAAS,aAAa,gCACrB,aAAa;CAmChB,cACEJ,YAAY,aAAa,mBACzBE,UAAU,aAAa,iBACvBG,SAAS,aACTC,WAAW,WACXC,0BAGAC,eAAc,eACb;CAgCH,gBACER,YAAY,aAAa,mBACzBS,oBACAP,UAAU,aAAa,kBACtB;CA0GH,UACEQ,iBACAlB,wCACC;CAIH,iBACEkB,iBACAlB,wCACC;CAYH,eAAemB,cAAc;CAU7B,gBACED,iBACAlB,uCACAoB,sBACC;CA+BH,eACErB,oBACAC,uCACAqB,kBACAC,8CACC;CAkBH,iBAAiBJ,kBAAkB,SAAS;CAK5C,wBACEK,YACI,aAAa,4CACb,aAAa,yBAChB,2BAA2B;CA2C9B,sBACExB,oBACAC,uCACAwB,uBACC,aAAa;CAKhB,oBACEzB,oBACAC,uCACAwB,uBACC;CAKH,YACEC,2BACAC,KAAK,aAAa,uBACjB,aAAa;CAsChB,iBACED,2BACAE,UAAU,aAAa,4BACtB,aAAa;AAoEjB","names":["fauxOntology: FauxOntology","attachments: FauxAttachmentStore","strict: boolean","objectType: T","obj: ObjectTypeCreatable<T> | ObjectTypeCreatableWithoutApiName<T>","obj: BaseServerObject","x: BaseServerObject","objectType: string","primaryKey: string | number | boolean","tmpSrc: BaseServerObject","srcLinkName: string","tmpDst: BaseServerObject","destLinkName: string","src: BaseServerObject","dst: BaseServerObject","dstLinkName: string","objectType: OntologiesV2.ObjectTypeApiName","primaryKey: string | number","property: OntologiesV2.PropertyApiName","data: OntologiesV2.TimeSeriesPoint[]","filter?: OntologiesV2.StreamTimeSeriesPointsRequest","content: ArrayBuffer","mediaType: MediaType","path: string | undefined","mediaItemRid: MediaItemRid","primaryKey: string","apiName: string","rid: string","linkApiName: string","linkType: string","targetPrimaryKey: string | number | boolean","parsedBody:\n | OntologiesV2.LoadObjectSetV2MultipleObjectTypesRequest\n | OntologiesV2.LoadObjectSetRequestV2","propertyName: string","actionTypeApiName: string","req: OntologiesV2.ApplyActionRequestV2","batchReq: OntologiesV2.BatchApplyActionRequestV2"],"sources":["../../../src/FauxFoundry/FauxDataStore.ts"],"version":3,"file":"FauxDataStore.d.ts"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cACE,qBACA,sBACA,sBACK,WAAY;AACnB,iBAAiB,kBAAkB,0BAA2B;AAG9D,cAAc,wBAAwB,uBAAwB;AAC9D,cAAc,qBAAqB,oBAAqB;AACxD,cAAc,iBAAiB,4BAA6B;;;;;AAM5D,OAAO,cAAM,mBAAmB;;CAE9B,aAAa,aAAa;CAS1B,YAAYA,eAAe;CAI3B,YACEC,oBACAC,0CACC;
|
|
1
|
+
{"mappings":"AAgBA,cACE,qBACA,sBACA,sBACK,WAAY;AACnB,iBAAiB,kBAAkB,0BAA2B;AAG9D,cAAc,wBAAwB,uBAAwB;AAC9D,cAAc,qBAAqB,oBAAqB;AACxD,cAAc,iBAAiB,4BAA6B;;;;;AAM5D,OAAO,cAAM,mBAAmB;;CAE9B,aAAa,aAAa;CAS1B,YAAYA,eAAe;CAI3B,YACEC,oBACAC,0CACC;CAIH,aAAcD,uBAAqB,SAAS;CAI5C,AAAO,UAAU,UAAU,sBACzBE,YAAY,EAAE,YACdC,YAAY,eAAe,IAC3BC,QAAQ,KAAK,UAAU,IAAI,oBAAoB,GAAG;CAEpD,AAAO,UACLJ,oBACAC,uCACAI,QAAQ;CA6CV,AAAO,aAAa,UAAU,sBAC5BH,YAAY,EAAE,YACdC,YAAY,eAAe,IAC3BG,QAAQ,QAAQ,UAAU;CAE5B,AAAO,aACLN,oBACAC,uCACAM,QAAQ,QAAQ;CA2BlB,eACEP,oBACAC;CAUF,UACEO,wBACAC,2CACAC,sBACAC,yBACAC;CAiCF,aACEJ,wBACAC,2CACAC,sBACAC,yBACAC;AAgBH","names":["fauxDataStore: FauxDataStore","objectType: string","primaryKey: string | number | boolean","objectType: T[\"apiName\"]","primaryKey: PrimaryKeyType<T>","update: Omit<JustProps<T>, CompileTimeMetadata<T>[\"primaryKeyApiName\"]>","object: BaseServerObject","update: Partial<JustProps<T>>","update: Partial<BaseServerObject>","leftObjectType: string","leftPrimaryKey: string | number | boolean","leftLinkName: string","rightObjectType: string","rightPrimaryKey: string | number | boolean"],"sources":["../../../src/FauxFoundry/FauxDataStoreBatch.ts"],"version":3,"file":"FauxDataStoreBatch.d.ts"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { MediaReference } from "@osdk/foundry.core";
|
|
2
|
-
import type { ActionTypeV2, ApplyActionRequestV2, BatchApplyActionRequestItem, ValidateActionResponseV2 } from "@osdk/foundry.ontologies";
|
|
2
|
+
import type { ActionTypeV2, ApplyActionRequestV2, BatchApplyActionRequestItem, OntologyDataType, ValidateActionResponseV2 } from "@osdk/foundry.ontologies";
|
|
3
3
|
import type { FauxDataStore } from "./FauxDataStore.js";
|
|
4
4
|
export declare function validateAction(payload: ApplyActionRequestV2 | BatchApplyActionRequestItem, def: ActionTypeV2, dataStore: FauxDataStore): ValidateActionResponseV2;
|
|
5
|
+
export declare function matchesOntologyDataType(odt: OntologyDataType, value: unknown): boolean;
|
|
5
6
|
export declare function isMediaReference(o: any): o is MediaReference;
|
|
6
7
|
export declare function isInterfaceActionParam(value: any): value is {
|
|
7
8
|
objectTypeApiName: string
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,sBAAsB,oBAAqB;AACzD,cAGE,cACA,sBACA,
|
|
1
|
+
{"mappings":"AAgBA,cAAc,sBAAsB,oBAAqB;AACzD,cAGE,cACA,sBACA,6BACA,kBAEA,gCACK,0BAA2B;AAClC,cAAc,qBAAqB,oBAAqB;AAgDxD,OAAO,iBAAS,eACdA,SAAS,uBAAuB,6BAChCC,KAAK,cACLC,WAAW,gBACV;AA6MH,OAAO,iBAAS,wBACdC,KAAK,kBACLC;AA0EF,OAAO,iBAAS,iBAAiBC,SAAS,KAAK;AAa/C,OAAO,iBAAS,uBAAuBC,aAAa,SAAS;CAC3D;CACA;AACD","names":["payload: ApplyActionRequestV2 | BatchApplyActionRequestItem","def: ActionTypeV2","dataStore: FauxDataStore","odt: OntologyDataType","value: unknown","o: any","value: any"],"sources":["../../../src/FauxFoundry/validateAction.ts"],"version":3,"file":"validateAction.d.ts"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"","names":[],"sources":["../../../src/FauxFoundry/validateAction.test.ts"],"version":3,"file":"validateAction.test.d.ts"}
|
|
@@ -6,12 +6,14 @@ export declare class OpenApiCallError extends Error {
|
|
|
6
6
|
errorCode: string
|
|
7
7
|
errorName: string
|
|
8
8
|
errorInstanceId: string
|
|
9
|
+
errorDescription?: string
|
|
9
10
|
parameters: Record<string, unknown>
|
|
10
11
|
};
|
|
11
12
|
constructor(status: number, json: {
|
|
12
13
|
errorCode: string
|
|
13
14
|
errorName: string
|
|
14
15
|
errorInstanceId: string
|
|
16
|
+
errorDescription?: string
|
|
15
17
|
parameters: Record<string, unknown>
|
|
16
18
|
});
|
|
17
19
|
}
|
|
@@ -25,8 +27,8 @@ export type SkipStringParams<T extends any[]> = T extends [infer A, ...infer B]
|
|
|
25
27
|
* This will also fail if your body is defined as a string as that will get interpreted as a path param.
|
|
26
28
|
* If this happens, you cannot use the helper. Sorry
|
|
27
29
|
*/
|
|
28
|
-
export type ExtractBody<X extends (
|
|
29
|
-
export type ExtractResponse<X extends (
|
|
30
|
+
export type ExtractBody<X extends (reqCall: any, ...args: any[]) => Promise<any>> = undefined extends SkipStringParams<ParamsAfterReqCall<X>>[0] ? never : SkipStringParams<ParamsAfterReqCall<X>>[0];
|
|
31
|
+
export type ExtractResponse<X extends (...args: any[]) => Promise<any>> = Awaited<ReturnType<X>>;
|
|
30
32
|
export type ParamsAfterReqCall<T extends (reqCall: any, ...args: any[]) => Promise<any>> = T extends (reqCall: any, ...args: infer Z) => Promise<any> ? Z : never;
|
|
31
33
|
export type RestImpl<
|
|
32
34
|
URL_PARAMS extends string,
|
|
@@ -40,10 +42,10 @@ export type OpenApiCallFactory<
|
|
|
40
42
|
> = (baseUrl: string, restImpl: RestImpl<URL_PARAMS, REQ_BODY, RESP_BODY>, options?: RequestHandlerOptions) => HttpHandler;
|
|
41
43
|
export type CallFactory<
|
|
42
44
|
URL_PARAMS extends string,
|
|
43
|
-
X extends (
|
|
45
|
+
X extends (...args: any[]) => Promise<any>
|
|
44
46
|
> = (baseUrl: string, restImpl: RestImpl<URL_PARAMS, ExtractBody<X>, ExtractResponse<X>>, options?: RequestHandlerOptions) => HttpHandler;
|
|
45
47
|
export declare function handleOpenApiCall<
|
|
46
48
|
const N extends ExtractStringParams<ParamsAfterReqCall<X>>,
|
|
47
|
-
const X extends (
|
|
49
|
+
const X extends (...args: any[]) => Promise<any>
|
|
48
50
|
>(openApiCall: X, names: N): CallFactory<N[number], X>;
|
|
49
51
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cACE,iBACA,aACA,sBACA,6BACK,KAAM;AAEb,cAAc,oBAAoB,oBAAqB;AAGvD,OAAO,cAAM,yBAAyB,MAAM;CAExC;CACA,MAAa;EACX;EACA;EACA;EACA,YAAY;CACb;
|
|
1
|
+
{"mappings":"AAgBA,cACE,iBACA,aACA,sBACA,6BACK,KAAM;AAEb,cAAc,oBAAoB,oBAAqB;AAGvD,OAAO,cAAM,yBAAyB,MAAM;CAExC;CACA,MAAa;EACX;EACA;EACA;EACA;EACA,YAAY;CACb;CARH,YACSA,gBACAC,MAAM;EACX;EACA;EACA;EACA;EACA,YAAY;CACb;AAUJ;KAEI,oBAAoB,mBAAmB,iBAAiB,YAAY,KACrE,oBAAoB,MAAM,oBAAoB;AAIlD,YAAY,iBAAiB,mBAAmB,iBAAiB,YAAY,KACzE,mBAAmB,iBAAiB,KACpC,IACA;;;;;;;;;AAUJ,YAAY,YACV,WAAWC,cAAc,GAAG,gBAAgB,kCACxB,iBAAiB,mBAAmB,IAAI,aAC1D,iBAAiB,mBAAmB,IAAI;AAE5C,YAAY,gBAAgB,WAAW,GAAG,gBAAgB,gBACxD,QAAQ,WAAW;AAErB,YAAY,mBACV,WAAWA,cAAc,GAAG,gBAAgB,gBAC1C,WAAWA,cAAc,GAAG,YAAY,MAAM,eAAe;AAEjE,YAAY;CACV;CACA,iBAAiB;CACjB,kBAAkB;KAElBC,MAAM,WACJ,qBACE,OAAO,qBACP,UACA,YAAY,eAEd,OACC,YAAY,QAAQ;AAEzB,YAAY;CACV;CACA,iBAAiB;CACjB,kBAAkB;KAElBC,iBACAC,UAAU,SAAS,YAAY,UAAU,YACzCC,UAAU,0BACP;AAEL,YAAY;CACV;CACA,WAAW,GAAG,gBAAgB;KAE9BF,iBACAG,UAAU,SAAS,YAAY,YAAY,IAAI,gBAAgB,KAC/DD,UAAU,0BACP;AAEL,OAAO,iBAAS;OACR,UAAU,oBAAoB,mBAAmB;OACjD,WAAW,GAAG,gBAAgB;EACpCE,aAAa,GAAGC,OAAO,IAAI,YAAY,WAAW","names":["status: number","json: {\n errorCode: string;\n errorName: string;\n errorInstanceId: string;\n errorDescription?: string;\n parameters: Record<string, unknown>;\n }","reqCall: any","info: Parameters<\n HttpResponseResolver<\n Record<URL_PARAMS, string>,\n REQ_BODY,\n RESP_BODY | BaseAPIError\n >\n >[0]","baseUrl: string","restImpl: RestImpl<URL_PARAMS, REQ_BODY, RESP_BODY>","options?: RequestHandlerOptions","restImpl: RestImpl<URL_PARAMS, ExtractBody<X>, ExtractResponse<X>>","openApiCall: X","names: N"],"sources":["../../../../src/handlers/util/handleOpenApiCall.ts"],"version":3,"file":"handleOpenApiCall.d.ts"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osdk/faux",
|
|
3
|
-
"version": "0.4.0-beta.
|
|
3
|
+
"version": "0.4.0-beta.3",
|
|
4
4
|
"description": "",
|
|
5
5
|
"access": "private",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -31,9 +31,10 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@osdk/foundry.core": "2.30.0",
|
|
33
33
|
"@osdk/foundry.geo": "2.30.0",
|
|
34
|
-
"@osdk/foundry.ontologies": "2.
|
|
34
|
+
"@osdk/foundry.ontologies": "2.35.0",
|
|
35
35
|
"@osdk/internal.foundry.ontologies": "2.30.0",
|
|
36
36
|
"date-fns": "^4.1.0",
|
|
37
|
+
"decimal.js": "^10.6.0",
|
|
37
38
|
"fast-deep-equal": "^3.1.3",
|
|
38
39
|
"fetch-retry": "^6.0.0",
|
|
39
40
|
"json-stable-stringify": "^1.3.0",
|
|
@@ -42,8 +43,8 @@
|
|
|
42
43
|
"semver": "^7.7.2",
|
|
43
44
|
"tiny-invariant": "^1.3.3",
|
|
44
45
|
"type-fest": "^4.41.0",
|
|
45
|
-
"@osdk/api": "~2.6.0-beta.
|
|
46
|
-
"@osdk/generator-converters": "~2.6.0-beta.
|
|
46
|
+
"@osdk/api": "~2.6.0-beta.4",
|
|
47
|
+
"@osdk/generator-converters": "~2.6.0-beta.4"
|
|
47
48
|
},
|
|
48
49
|
"devDependencies": {
|
|
49
50
|
"@types/json-stable-stringify": "^1.2.0",
|