@osdk/maker 0.9.0-beta.10 → 0.9.0-beta.12
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 +19 -0
- package/build/browser/api/defineImportSpt.d.ts.map +1 -1
- package/build/browser/api/defineImportSpt.js +21 -2
- package/build/browser/api/defineImportSpt.js.map +1 -1
- package/build/browser/api/defineInterface.d.ts.map +1 -1
- package/build/browser/api/defineInterface.js +2 -1
- package/build/browser/api/defineInterface.js.map +1 -1
- package/build/browser/api/defineObject.d.ts.map +1 -1
- package/build/browser/api/defineObject.js +6 -1
- package/build/browser/api/defineObject.js.map +1 -1
- package/build/browser/api/defineOntology.d.ts +3 -3
- package/build/browser/api/defineOntology.d.ts.map +1 -1
- package/build/browser/api/defineOntology.js +21 -15
- package/build/browser/api/defineOntology.js.map +1 -1
- package/build/browser/api/overall.test.js +25 -14
- package/build/browser/api/overall.test.js.map +1 -1
- package/build/browser/api/types.d.ts +2 -1
- package/build/browser/api/types.d.ts.map +1 -1
- package/build/browser/cli/main.js +1 -1
- package/build/esm/api/defineImportSpt.d.ts.map +1 -1
- package/build/esm/api/defineImportSpt.js +21 -2
- package/build/esm/api/defineImportSpt.js.map +1 -1
- package/build/esm/api/defineInterface.d.ts.map +1 -1
- package/build/esm/api/defineInterface.js +2 -1
- package/build/esm/api/defineInterface.js.map +1 -1
- package/build/esm/api/defineObject.d.ts.map +1 -1
- package/build/esm/api/defineObject.js +6 -1
- package/build/esm/api/defineObject.js.map +1 -1
- package/build/esm/api/defineOntology.d.ts +3 -3
- package/build/esm/api/defineOntology.d.ts.map +1 -1
- package/build/esm/api/defineOntology.js +21 -15
- package/build/esm/api/defineOntology.js.map +1 -1
- package/build/esm/api/overall.test.js +25 -14
- package/build/esm/api/overall.test.js.map +1 -1
- package/build/esm/api/types.d.ts +2 -1
- package/build/esm/api/types.d.ts.map +1 -1
- package/build/esm/cli/main.js +1 -1
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# @osdk/maker
|
|
2
2
|
|
|
3
|
+
## 0.9.0-beta.12
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- @osdk/api@2.1.0-beta.12
|
|
8
|
+
|
|
9
|
+
## 0.9.0-beta.11
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- bc1761c: Update platform API dependencies.
|
|
14
|
+
- caf1abc: Support generating linked products for marketplace
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- Updated dependencies [bc1761c]
|
|
19
|
+
- Updated dependencies [9298f75]
|
|
20
|
+
- @osdk/api@2.1.0-beta.11
|
|
21
|
+
|
|
3
22
|
## 0.9.0-beta.10
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineImportSpt.d.ts","sourceRoot":"","sources":["../../../src/api/defineImportSpt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"defineImportSpt.d.ts","sourceRoot":"","sources":["../../../src/api/defineImportSpt.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEvE;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,gBAAgB,CAAC;CAC5B,GACA,kBAAkB,CAoBpB"}
|
|
@@ -13,13 +13,32 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
+
import invariant from "tiny-invariant";
|
|
17
|
+
import { ontologyDefinition } from "./defineOntology.js";
|
|
16
18
|
/**
|
|
17
19
|
* Defines a foreign shared property type you want to take as an input to your product. The typeHint field is used for OSDK generation
|
|
18
20
|
*/
|
|
19
21
|
export function importSharedPropertyType(opts) {
|
|
22
|
+
const {
|
|
23
|
+
apiName,
|
|
24
|
+
packageName,
|
|
25
|
+
typeHint
|
|
26
|
+
} = opts;
|
|
27
|
+
if (packageName !== undefined) {
|
|
28
|
+
ontologyDefinition.importedTypes.sharedPropertyTypes.push({
|
|
29
|
+
apiName,
|
|
30
|
+
packageName
|
|
31
|
+
});
|
|
32
|
+
!!packageName.endsWith(".") ? process.env.NODE_ENV !== "production" ? invariant(false, "Package name format invalid ends with period") : invariant(false) : void 0;
|
|
33
|
+
!(packageName.match("[A-Z]") == null) ? process.env.NODE_ENV !== "production" ? invariant(false, "Package name includes upper case characters") : invariant(false) : void 0;
|
|
34
|
+
return {
|
|
35
|
+
apiName: packageName + "." + apiName,
|
|
36
|
+
type: typeHint
|
|
37
|
+
};
|
|
38
|
+
}
|
|
20
39
|
return {
|
|
21
|
-
apiName:
|
|
22
|
-
type:
|
|
40
|
+
apiName: apiName,
|
|
41
|
+
type: typeHint
|
|
23
42
|
};
|
|
24
43
|
}
|
|
25
44
|
//# sourceMappingURL=defineImportSpt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineImportSpt.js","names":["importSharedPropertyType","opts","apiName","
|
|
1
|
+
{"version":3,"file":"defineImportSpt.js","names":["invariant","ontologyDefinition","importSharedPropertyType","opts","apiName","packageName","typeHint","undefined","importedTypes","sharedPropertyTypes","push","endsWith","process","env","NODE_ENV","match","type"],"sources":["defineImportSpt.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 invariant from \"tiny-invariant\";\nimport { ontologyDefinition } from \"./defineOntology.js\";\n/**\n * Defines a foreign shared property type you want to take as an input to your product. The typeHint field is used for OSDK generation\n */\nexport function importSharedPropertyType(opts) {\n const { apiName, packageName, typeHint } = opts;\n if (packageName !== undefined) {\n ontologyDefinition.importedTypes.sharedPropertyTypes.push({\n apiName,\n packageName,\n });\n invariant(!packageName.endsWith(\".\"), \"Package name format invalid ends with period\");\n invariant(packageName.match(\"[A-Z]\") == null, \"Package name includes upper case characters\");\n return { apiName: packageName + \".\" + apiName, type: typeHint };\n }\n return { apiName: apiName, type: typeHint };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,gBAAgB;AACtC,SAASC,kBAAkB,QAAQ,qBAAqB;AACxD;AACA;AACA;AACA,OAAO,SAASC,wBAAwBA,CAACC,IAAI,EAAE;EAC3C,MAAM;IAAEC,OAAO;IAAEC,WAAW;IAAEC;EAAS,CAAC,GAAGH,IAAI;EAC/C,IAAIE,WAAW,KAAKE,SAAS,EAAE;IAC3BN,kBAAkB,CAACO,aAAa,CAACC,mBAAmB,CAACC,IAAI,CAAC;MACtDN,OAAO;MACPC;IACJ,CAAC,CAAC;IACF,CAAU,CAACA,WAAW,CAACM,QAAQ,CAAC,GAAG,CAAC,GAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAApCd,SAAS,QAA6B,8CAA8C,IAApFA,SAAS;IACT,EAAUK,WAAW,CAACU,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,IAAAH,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAA5Cd,SAAS,QAAqC,6CAA6C,IAA3FA,SAAS;IACT,OAAO;MAAEI,OAAO,EAAEC,WAAW,GAAG,GAAG,GAAGD,OAAO;MAAEY,IAAI,EAAEV;IAAS,CAAC;EACnE;EACA,OAAO;IAAEF,OAAO,EAAEA,OAAO;IAAEY,IAAI,EAAEV;EAAS,CAAC;AAC/C","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineInterface.d.ts","sourceRoot":"","sources":["../../../src/api/defineInterface.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,eAAe,CAC7B,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,aAAa,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACN,kBAAkB,GAAG,gBAAgB,CACtC,CAAC;IACF,OAAO,CAAC,EAAE,aAAa,GAAG,aAAa,EAAE,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;CAC/D,GACA,aAAa,
|
|
1
|
+
{"version":3,"file":"defineInterface.d.ts","sourceRoot":"","sources":["../../../src/api/defineInterface.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,eAAe,CAC7B,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,aAAa,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACN,kBAAkB,GAAG,gBAAgB,CACtC,CAAC;IACF,OAAO,CAAC,EAAE,aAAa,GAAG,aAAa,EAAE,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;CAC/D,GACA,aAAa,CAkFf"}
|
|
@@ -30,7 +30,8 @@ export function defineInterface(opts) {
|
|
|
30
30
|
});
|
|
31
31
|
return [apiName, spt];
|
|
32
32
|
} else {
|
|
33
|
-
|
|
33
|
+
const unNamespacedTypeApiName = type.apiName.slice(type.apiName.lastIndexOf(".") + 1);
|
|
34
|
+
!(namespace + apiName === type.apiName || apiName === unNamespacedTypeApiName) ? process.env.NODE_ENV !== "production" ? invariant(false, `property key and it's apiName must be identical. ${JSON.stringify({
|
|
34
35
|
key: apiName,
|
|
35
36
|
apiName: type.apiName
|
|
36
37
|
})}`) : invariant(false) : void 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineInterface.js","names":["invariant","namespace","ontologyDefinition","defineSharedPropertyType","defineInterface","opts","apiName","interfaceTypes","undefined","process","env","NODE_ENV","properties","Object","fromEntries","entries","map","type","isPropertyTypeType","spt","displayName","array","JSON","stringify","key","extendsInterfaces","extends","Array","isArray","every","item","a","displayMetadata","description","icon","blueprint","color","locator","links","status","active","v"],"sources":["defineInterface.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 invariant from \"tiny-invariant\";\nimport { namespace, ontologyDefinition } from \"./defineOntology.js\";\nimport { defineSharedPropertyType } from \"./defineSpt.js\";\nexport function defineInterface(opts) {\n const apiName = namespace + opts.apiName;\n invariant(ontologyDefinition.interfaceTypes[apiName] === undefined, `Interface ${apiName} already exists`);\n const properties = Object.fromEntries(Object.entries(opts.properties ?? {}).map(([apiName, type]) => {\n if (typeof type === \"string\"\n || (typeof type === \"object\" && !(\"apiName\" in type))) {\n invariant(isPropertyTypeType(type), `Invalid data type ${type} for property ${apiName} on InterfaceType ${apiName}`);\n const spt = defineSharedPropertyType({\n apiName,\n displayName: apiName,\n type,\n array: false,\n });\n return [apiName, spt];\n }\n else {\n invariant(namespace + apiName === type.apiName
|
|
1
|
+
{"version":3,"file":"defineInterface.js","names":["invariant","namespace","ontologyDefinition","defineSharedPropertyType","defineInterface","opts","apiName","interfaceTypes","undefined","process","env","NODE_ENV","properties","Object","fromEntries","entries","map","type","isPropertyTypeType","spt","displayName","array","unNamespacedTypeApiName","slice","lastIndexOf","JSON","stringify","key","extendsInterfaces","extends","Array","isArray","every","item","a","displayMetadata","description","icon","blueprint","color","locator","links","status","active","v"],"sources":["defineInterface.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 invariant from \"tiny-invariant\";\nimport { namespace, ontologyDefinition } from \"./defineOntology.js\";\nimport { defineSharedPropertyType } from \"./defineSpt.js\";\nexport function defineInterface(opts) {\n const apiName = namespace + opts.apiName;\n invariant(ontologyDefinition.interfaceTypes[apiName] === undefined, `Interface ${apiName} already exists`);\n const properties = Object.fromEntries(Object.entries(opts.properties ?? {}).map(([apiName, type]) => {\n if (typeof type === \"string\"\n || (typeof type === \"object\" && !(\"apiName\" in type))) {\n invariant(isPropertyTypeType(type), `Invalid data type ${type} for property ${apiName} on InterfaceType ${apiName}`);\n const spt = defineSharedPropertyType({\n apiName,\n displayName: apiName,\n type,\n array: false,\n });\n return [apiName, spt];\n }\n else {\n const unNamespacedTypeApiName = type.apiName.slice(type.apiName.lastIndexOf(\".\") + 1);\n invariant(namespace + apiName === type.apiName\n || apiName === unNamespacedTypeApiName, `property key and it's apiName must be identical. ${JSON.stringify({ key: apiName, apiName: type.apiName })}`);\n return [apiName, type];\n }\n }));\n let extendsInterfaces = [];\n if (opts.extends) {\n if (typeof opts.extends === \"string\") {\n extendsInterfaces = [opts.extends];\n }\n else if (Array.isArray(opts.extends)\n && opts.extends.every(item => typeof item === \"string\")) {\n extendsInterfaces = opts.extends;\n }\n else if (opts.extends.apiName !== undefined) {\n extendsInterfaces = [opts.extends.apiName];\n }\n else {\n extendsInterfaces = opts.extends.map(item => item.apiName);\n }\n }\n const a = {\n apiName,\n displayMetadata: {\n displayName: opts.displayName ?? opts.apiName,\n description: opts.description ?? opts.displayName ?? opts.apiName,\n icon: opts.icon !== undefined\n ? {\n type: \"blueprint\",\n blueprint: { color: opts.icon.color, locator: opts.icon.locator },\n }\n : undefined,\n },\n extendsInterfaces: extendsInterfaces,\n links: [],\n properties,\n status: { type: \"active\", active: {} },\n };\n return ontologyDefinition.interfaceTypes[apiName] = a;\n}\nfunction isPropertyTypeType(v) {\n return v === \"boolean\" || v === \"byte\"\n || v === \"date\" || v === \"decimal\" || v === \"double\"\n || v === \"float\" || v === \"geopoint\" || v === \"geoshape\"\n || v === \"integer\" || v === \"long\"\n || (typeof v === \"object\" && v.type === \"marking\")\n || v === \"short\" || v === \"string\"\n || v === \"timestamp\";\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineObject.d.ts","sourceRoot":"","sources":["../../../src/api/defineObject.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,6BAA6B,CAAC;AASrC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,sBAAsB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,EAIzB,CAAC,CAAC;CACJ;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;IACJ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,GAAG,CAAC,cAAc,CAAC,QAAQ,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACJ,GAAG,CAAC,iBAAiB,GACrB,GAAG,CAAC,cAAc,CAAC,QAAQ,CAC9B,CAAC;CACH,GACA,UAAU,
|
|
1
|
+
{"version":3,"file":"defineObject.d.ts","sourceRoot":"","sources":["../../../src/api/defineObject.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,GAAG,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,6BAA6B,CAAC;AASrC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,sBAAsB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,EAIzB,CAAC,CAAC;CACJ;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;IACJ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,GAAG,CAAC,cAAc,CAAC,QAAQ,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,UAAU,CAAC,EAAE,MAAM,CACjB,MAAM,EACJ,GAAG,CAAC,iBAAiB,GACrB,GAAG,CAAC,cAAc,CAAC,QAAQ,CAC9B,CAAC;CACH,GACA,UAAU,CAkCZ"}
|
|
@@ -32,7 +32,8 @@ export function defineObject(apiName, opts) {
|
|
|
32
32
|
},
|
|
33
33
|
properties: {
|
|
34
34
|
[opts.primaryKey.apiName]: {
|
|
35
|
-
dataType: convertType(opts.primaryKey)
|
|
35
|
+
dataType: convertType(opts.primaryKey),
|
|
36
|
+
rid: "rid"
|
|
36
37
|
}
|
|
37
38
|
},
|
|
38
39
|
rid: "PLACEHOLDER",
|
|
@@ -72,6 +73,10 @@ function convertType(t) {
|
|
|
72
73
|
},
|
|
73
74
|
type: "timeseries"
|
|
74
75
|
};
|
|
76
|
+
case t.type === "sensorTimeseries":
|
|
77
|
+
return {
|
|
78
|
+
type: "timeseries"
|
|
79
|
+
};
|
|
75
80
|
case t.type === "datetime":
|
|
76
81
|
return {
|
|
77
82
|
type: "timestamp"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineObject.js","names":["invariant","ontologyDefinition","defineObject","apiName","opts","objectTypes","implementsInterfaces","implementsInterfaces2","linkTypes","objectType","primaryKey","displayName","pluralDisplayName","icon","color","name","type","properties","dataType","convertType","rid","status","titleProperty","sharedPropertyTypeMapping","data","t","multiplicity","subType","itemType","process","env","NODE_ENV"],"sources":["defineObject.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 invariant from \"tiny-invariant\";\nimport { ontologyDefinition } from \"./defineOntology.js\";\nexport function defineObject(apiName, opts) {\n ontologyDefinition.objectTypes[apiName] = {\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName,\n primaryKey: opts.primaryKey.apiName,\n displayName: opts.displayName ?? apiName,\n pluralDisplayName: opts.pluralDisplayName ?? apiName,\n icon: {\n color: \"blue\",\n name: \"cube\",\n type: \"blueprint\",\n },\n properties: {\n [opts.primaryKey.apiName]: {\n dataType: convertType(opts.primaryKey),\n },\n },\n rid: \"PLACEHOLDER\",\n status: \"ACTIVE\",\n titleProperty: opts.primaryKey.apiName,\n },\n sharedPropertyTypeMapping: {},\n };\n // FIXME: don't return the raw value\n return {\n data: ontologyDefinition.objectTypes[apiName],\n linkTypes: {},\n };\n}\nfunction convertType(t) {\n switch (true) {\n case t.multiplicity === true:\n return {\n type: \"array\",\n subType: convertType({ ...t, multiplicity: false }),\n };\n case t.type === \"stringTimeseries\":\n return {\n itemType: {\n type: \"string\",\n },\n type: \"timeseries\",\n };\n break;\n case t.type === \"numericTimeseries\":\n return {\n itemType: {\n type: \"double\",\n },\n type: \"timeseries\",\n };\n case t.type === \"datetime\":\n return {\n type: \"timestamp\",\n };\n default:\n return {\n type: t.type,\n };\n }\n invariant(false);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,gBAAgB;AACtC,SAASC,kBAAkB,QAAQ,qBAAqB;AACxD,OAAO,SAASC,YAAYA,CAACC,OAAO,EAAEC,IAAI,EAAE;EACxCH,kBAAkB,CAACI,WAAW,CAACF,OAAO,CAAC,GAAG;IACtCG,oBAAoB,EAAE,EAAE;IACxBC,qBAAqB,EAAE,CAAC,CAAC;IACzBC,SAAS,EAAE,EAAE;IACbC,UAAU,EAAE;MACRN,OAAO;MACPO,UAAU,EAAEN,IAAI,CAACM,UAAU,CAACP,OAAO;MACnCQ,WAAW,EAAEP,IAAI,CAACO,WAAW,IAAIR,OAAO;MACxCS,iBAAiB,EAAER,IAAI,CAACQ,iBAAiB,IAAIT,OAAO;MACpDU,IAAI,EAAE;QACFC,KAAK,EAAE,MAAM;QACbC,IAAI,EAAE,MAAM;QACZC,IAAI,EAAE;MACV,CAAC;MACDC,UAAU,EAAE;QACR,CAACb,IAAI,CAACM,UAAU,CAACP,OAAO,GAAG;UACvBe,QAAQ,EAAEC,WAAW,CAACf,IAAI,CAACM,UAAU;
|
|
1
|
+
{"version":3,"file":"defineObject.js","names":["invariant","ontologyDefinition","defineObject","apiName","opts","objectTypes","implementsInterfaces","implementsInterfaces2","linkTypes","objectType","primaryKey","displayName","pluralDisplayName","icon","color","name","type","properties","dataType","convertType","rid","status","titleProperty","sharedPropertyTypeMapping","data","t","multiplicity","subType","itemType","process","env","NODE_ENV"],"sources":["defineObject.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 invariant from \"tiny-invariant\";\nimport { ontologyDefinition } from \"./defineOntology.js\";\nexport function defineObject(apiName, opts) {\n ontologyDefinition.objectTypes[apiName] = {\n implementsInterfaces: [],\n implementsInterfaces2: {},\n linkTypes: [],\n objectType: {\n apiName,\n primaryKey: opts.primaryKey.apiName,\n displayName: opts.displayName ?? apiName,\n pluralDisplayName: opts.pluralDisplayName ?? apiName,\n icon: {\n color: \"blue\",\n name: \"cube\",\n type: \"blueprint\",\n },\n properties: {\n [opts.primaryKey.apiName]: {\n dataType: convertType(opts.primaryKey),\n rid: \"rid\",\n },\n },\n rid: \"PLACEHOLDER\",\n status: \"ACTIVE\",\n titleProperty: opts.primaryKey.apiName,\n },\n sharedPropertyTypeMapping: {},\n };\n // FIXME: don't return the raw value\n return {\n data: ontologyDefinition.objectTypes[apiName],\n linkTypes: {},\n };\n}\nfunction convertType(t) {\n switch (true) {\n case t.multiplicity === true:\n return {\n type: \"array\",\n subType: convertType({ ...t, multiplicity: false }),\n };\n case t.type === \"stringTimeseries\":\n return {\n itemType: {\n type: \"string\",\n },\n type: \"timeseries\",\n };\n break;\n case t.type === \"numericTimeseries\":\n return {\n itemType: {\n type: \"double\",\n },\n type: \"timeseries\",\n };\n case t.type === \"sensorTimeseries\":\n return {\n type: \"timeseries\",\n };\n case t.type === \"datetime\":\n return {\n type: \"timestamp\",\n };\n default:\n return {\n type: t.type,\n };\n }\n invariant(false);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,SAAS,MAAM,gBAAgB;AACtC,SAASC,kBAAkB,QAAQ,qBAAqB;AACxD,OAAO,SAASC,YAAYA,CAACC,OAAO,EAAEC,IAAI,EAAE;EACxCH,kBAAkB,CAACI,WAAW,CAACF,OAAO,CAAC,GAAG;IACtCG,oBAAoB,EAAE,EAAE;IACxBC,qBAAqB,EAAE,CAAC,CAAC;IACzBC,SAAS,EAAE,EAAE;IACbC,UAAU,EAAE;MACRN,OAAO;MACPO,UAAU,EAAEN,IAAI,CAACM,UAAU,CAACP,OAAO;MACnCQ,WAAW,EAAEP,IAAI,CAACO,WAAW,IAAIR,OAAO;MACxCS,iBAAiB,EAAER,IAAI,CAACQ,iBAAiB,IAAIT,OAAO;MACpDU,IAAI,EAAE;QACFC,KAAK,EAAE,MAAM;QACbC,IAAI,EAAE,MAAM;QACZC,IAAI,EAAE;MACV,CAAC;MACDC,UAAU,EAAE;QACR,CAACb,IAAI,CAACM,UAAU,CAACP,OAAO,GAAG;UACvBe,QAAQ,EAAEC,WAAW,CAACf,IAAI,CAACM,UAAU,CAAC;UACtCU,GAAG,EAAE;QACT;MACJ,CAAC;MACDA,GAAG,EAAE,aAAa;MAClBC,MAAM,EAAE,QAAQ;MAChBC,aAAa,EAAElB,IAAI,CAACM,UAAU,CAACP;IACnC,CAAC;IACDoB,yBAAyB,EAAE,CAAC;EAChC,CAAC;EACD;EACA,OAAO;IACHC,IAAI,EAAEvB,kBAAkB,CAACI,WAAW,CAACF,OAAO,CAAC;IAC7CK,SAAS,EAAE,CAAC;EAChB,CAAC;AACL;AACA,SAASW,WAAWA,CAACM,CAAC,EAAE;EACpB,QAAQ,IAAI;IACR,KAAKA,CAAC,CAACC,YAAY,KAAK,IAAI;MACxB,OAAO;QACHV,IAAI,EAAE,OAAO;QACbW,OAAO,EAAER,WAAW,CAAC;UAAE,GAAGM,CAAC;UAAEC,YAAY,EAAE;QAAM,CAAC;MACtD,CAAC;IACL,KAAKD,CAAC,CAACT,IAAI,KAAK,kBAAkB;MAC9B,OAAO;QACHY,QAAQ,EAAE;UACNZ,IAAI,EAAE;QACV,CAAC;QACDA,IAAI,EAAE;MACV,CAAC;MACD;IACJ,KAAKS,CAAC,CAACT,IAAI,KAAK,mBAAmB;MAC/B,OAAO;QACHY,QAAQ,EAAE;UACNZ,IAAI,EAAE;QACV,CAAC;QACDA,IAAI,EAAE;MACV,CAAC;IACL,KAAKS,CAAC,CAACT,IAAI,KAAK,kBAAkB;MAC9B,OAAO;QACHA,IAAI,EAAE;MACV,CAAC;IACL,KAAKS,CAAC,CAACT,IAAI,KAAK,UAAU;MACtB,OAAO;QACHA,IAAI,EAAE;MACV,CAAC;IACL;MACI,OAAO;QACHA,IAAI,EAAES,CAAC,CAACT;MACZ,CAAC;EACT;EACAa,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBAAA/B,SAAS,UAATA,SAAS;AACb","ignoreList":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { OntologyIr, OntologyIrValueTypeBlockData } from "@osdk/client.unstable";
|
|
2
2
|
type OntologyAndValueTypeIrs = {
|
|
3
|
-
ontology:
|
|
3
|
+
ontology: OntologyIr;
|
|
4
4
|
valueType: OntologyIrValueTypeBlockData;
|
|
5
5
|
};
|
|
6
6
|
export declare function defineOntology(ns: string, body: () => void | Promise<void>): Promise<OntologyAndValueTypeIrs>;
|
|
7
|
-
export declare function dumpOntologyFullMetadata():
|
|
7
|
+
export declare function dumpOntologyFullMetadata(): OntologyIr;
|
|
8
8
|
export declare function dumpValueTypeWireType(): OntologyIrValueTypeBlockData;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=defineOntology.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineOntology.d.ts","sourceRoot":"","sources":["../../../src/api/defineOntology.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"defineOntology.d.ts","sourceRoot":"","sources":["../../../src/api/defineOntology.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,UAAU,EAQV,4BAA4B,EAI7B,MAAM,uBAAuB,CAAC;AAc/B,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,EAAE,UAAU,CAAC;IACrB,SAAS,EAAE,4BAA4B,CAAC;CACzC,CAAC;AAEF,wBAAsB,cAAc,CAClC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC/B,OAAO,CAAC,uBAAuB,CAAC,CA6BlC;AAyED,wBAAgB,wBAAwB,IAAI,UAAU,CAErD;AAED,wBAAgB,qBAAqB,IAAI,4BAA4B,CAEpE"}
|
|
@@ -25,7 +25,10 @@ export async function defineOntology(ns, body) {
|
|
|
25
25
|
queryTypes: {},
|
|
26
26
|
interfaceTypes: {},
|
|
27
27
|
sharedPropertyTypes: {},
|
|
28
|
-
valueTypes: {}
|
|
28
|
+
valueTypes: {},
|
|
29
|
+
importedTypes: {
|
|
30
|
+
sharedPropertyTypes: []
|
|
31
|
+
}
|
|
29
32
|
};
|
|
30
33
|
try {
|
|
31
34
|
await body();
|
|
@@ -58,19 +61,22 @@ function convertOntologyToValueTypeIr(ontology) {
|
|
|
58
61
|
}
|
|
59
62
|
function convertToWireOntologyIr(ontology) {
|
|
60
63
|
return {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
64
|
+
blockData: {
|
|
65
|
+
sharedPropertyTypes: Object.fromEntries(Object.entries(ontology.sharedPropertyTypes).map(([apiName, spt]) => [apiName, {
|
|
66
|
+
sharedPropertyType: convertSpt(spt)
|
|
67
|
+
}])),
|
|
68
|
+
interfaceTypes: Object.fromEntries(Object.entries(ontology.interfaceTypes).map(([apiName, interfaceType]) => {
|
|
69
|
+
return [apiName, {
|
|
70
|
+
interfaceType: convertInterface(interfaceType)
|
|
71
|
+
}];
|
|
72
|
+
})),
|
|
73
|
+
blockPermissionInformation: {
|
|
74
|
+
actionTypes: {},
|
|
75
|
+
linkTypes: {},
|
|
76
|
+
objectTypes: {}
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
importedTypes: ontology.importedTypes
|
|
74
80
|
};
|
|
75
81
|
}
|
|
76
82
|
function convertInterface(interfaceType) {
|
|
@@ -101,7 +107,7 @@ function convertSpt({
|
|
|
101
107
|
}) {
|
|
102
108
|
const dataConstraint = typeof type === "object" && type.type === "marking" ? {
|
|
103
109
|
propertyTypeConstraints: [],
|
|
104
|
-
nullability:
|
|
110
|
+
nullability: "NO_EXPLICIT_NULLS",
|
|
105
111
|
nullabilityV2: {
|
|
106
112
|
noEmptyCollections: true,
|
|
107
113
|
noNulls: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineOntology.js","names":["ontologyDefinition","namespace","defineOntology","ns","body","actionTypes","objectTypes","queryTypes","interfaceTypes","sharedPropertyTypes","valueTypes","e","console","error","ontology","convertToWireOntologyIr","valueType","convertOntologyToValueTypeIr","Object","values","map","definitions","metadata","apiName","displayMetadata","status","versions","definition","version","baseType","constraints","exampleValues","fromEntries","entries","spt","sharedPropertyType","convertSpt","interfaceType","convertInterface","blockPermissionInformation","linkTypes","properties","allExtendsInterfaces","allLinks","allProperties","dumpOntologyFullMetadata","dumpValueTypeWireType","type","array","description","displayName","gothamMapping","typeClasses","dataConstraint","propertyTypeConstraints","nullability","undefined","nullabilityV2","noEmptyCollections","noNulls","visibility","subtype","convertType","aliases","baseFormatter","dataConstraints","indexedForSearch","provenance","marking","markingType","structFields","Array","key","structDefinition","fieldTypeDefinition","field","fieldType","push","struct","geohash","precision","scale","analyzerOverride","enableAsciiFolding","isLongText","supportsExactMatching","mediaReference","distributeTypeHelper"],"sources":["defineOntology.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 */\n/** @internal */\nexport let ontologyDefinition;\n/** @internal */\nexport let namespace;\nexport async function defineOntology(ns, body) {\n namespace = ns;\n ontologyDefinition = {\n actionTypes: {},\n objectTypes: {},\n queryTypes: {},\n interfaceTypes: {},\n sharedPropertyTypes: {},\n valueTypes: {},\n };\n try {\n await body();\n }\n catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"Unexpected error while processing the body of the ontology\", e);\n throw e;\n }\n return {\n ontology: convertToWireOntologyIr(ontologyDefinition),\n valueType: convertOntologyToValueTypeIr(ontologyDefinition),\n };\n}\nfunction convertOntologyToValueTypeIr(ontology) {\n return {\n valueTypes: Object.values(ontology.valueTypes).map(definitions => ({\n metadata: {\n apiName: definitions[0].apiName,\n displayMetadata: definitions[0].displayMetadata,\n status: definitions[0].status,\n },\n versions: definitions.map(definition => ({\n version: definition.version,\n baseType: definition.baseType,\n constraints: definition.constraints,\n exampleValues: definition.exampleValues,\n })),\n })),\n };\n}\nfunction convertToWireOntologyIr(ontology) {\n return {\n sharedPropertyTypes: Object.fromEntries(Object.entries(ontology.sharedPropertyTypes)\n .map(([apiName, spt]) => [apiName, { sharedPropertyType: convertSpt(spt) }])),\n interfaceTypes: Object.fromEntries(Object.entries(ontology.interfaceTypes)\n .map(([apiName, interfaceType]) => {\n return [apiName, {\n interfaceType: convertInterface(interfaceType),\n }];\n })),\n blockPermissionInformation: {\n actionTypes: {},\n linkTypes: {},\n objectTypes: {},\n },\n };\n}\nfunction convertInterface(interfaceType) {\n return {\n ...interfaceType,\n properties: Object.values(interfaceType.properties)\n .map((spt) => convertSpt(spt)),\n // these are omitted from our internal types but we need to re-add them for the final json\n allExtendsInterfaces: [],\n allLinks: [],\n allProperties: [],\n };\n}\nexport function dumpOntologyFullMetadata() {\n return convertToWireOntologyIr(ontologyDefinition);\n}\nexport function dumpValueTypeWireType() {\n return convertOntologyToValueTypeIr(ontologyDefinition);\n}\nfunction convertSpt({ type, array, description, apiName, displayName, gothamMapping, typeClasses, valueType, }) {\n const dataConstraint = (typeof type === \"object\" && type.type === \"marking\")\n ? {\n propertyTypeConstraints: [],\n nullability: undefined,\n nullabilityV2: { noEmptyCollections: true, noNulls: true },\n }\n : undefined;\n return {\n apiName,\n displayMetadata: {\n displayName: displayName ?? apiName,\n visibility: \"NORMAL\",\n description,\n },\n type: array\n ? {\n type: \"array\",\n array: {\n subtype: convertType(type),\n },\n }\n : convertType(type),\n aliases: [],\n baseFormatter: undefined,\n dataConstraints: dataConstraint,\n gothamMapping: gothamMapping,\n indexedForSearch: true,\n provenance: undefined,\n typeClasses: typeClasses ?? [],\n valueType: valueType,\n };\n}\nfunction convertType(type) {\n switch (true) {\n case (typeof type === \"object\" && \"markingType\" in type):\n return {\n \"type\": \"marking\",\n marking: { markingType: type.markingType },\n };\n case (typeof type === \"object\" && \"structDefinition\" in type):\n const structFields = new Array();\n for (const key in type.structDefinition) {\n const fieldTypeDefinition = type.structDefinition[key];\n var field;\n if (typeof fieldTypeDefinition === \"string\") {\n field = {\n apiName: key,\n displayMetadata: { displayName: key, description: undefined },\n typeClasses: [],\n aliases: [],\n fieldType: convertType(fieldTypeDefinition),\n };\n }\n else {\n // If it is a full form type definition then process it as such\n if (\"fieldType\" in fieldTypeDefinition) {\n field = {\n ...fieldTypeDefinition,\n apiName: key,\n fieldType: convertType(fieldTypeDefinition.fieldType),\n typeClasses: fieldTypeDefinition.typeClasses ?? [],\n aliases: fieldTypeDefinition.aliases ?? [],\n };\n }\n else {\n field = {\n apiName: key,\n displayMetadata: { displayName: key, description: undefined },\n typeClasses: [],\n aliases: [],\n fieldType: convertType(fieldTypeDefinition),\n };\n }\n }\n structFields.push(field);\n }\n return {\n type: \"struct\",\n struct: { structFields },\n };\n case (type === \"geopoint\"):\n return { type: \"geohash\", geohash: {} };\n case (type === \"decimal\"):\n return { type, [type]: { precision: undefined, scale: undefined } };\n case (type === \"string\"):\n return {\n type,\n [type]: {\n analyzerOverride: undefined,\n enableAsciiFolding: undefined,\n isLongText: false,\n supportsExactMatching: true,\n },\n };\n case (type === \"mediaReference\"):\n return {\n type: type,\n mediaReference: {},\n };\n default:\n // use helper function to distribute `type` properly\n return distributeTypeHelper(type);\n }\n}\n/**\n * Helper function to avoid duplication. Makes the types match properly with the correct\n * behavior without needing to switch on type.\n * @param type\n * @returns\n */\nfunction distributeTypeHelper(type) {\n return { type, [type]: {} }; // any cast to match conditional return type\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"defineOntology.js","names":["ontologyDefinition","namespace","defineOntology","ns","body","actionTypes","objectTypes","queryTypes","interfaceTypes","sharedPropertyTypes","valueTypes","importedTypes","e","console","error","ontology","convertToWireOntologyIr","valueType","convertOntologyToValueTypeIr","Object","values","map","definitions","metadata","apiName","displayMetadata","status","versions","definition","version","baseType","constraints","exampleValues","blockData","fromEntries","entries","spt","sharedPropertyType","convertSpt","interfaceType","convertInterface","blockPermissionInformation","linkTypes","properties","allExtendsInterfaces","allLinks","allProperties","dumpOntologyFullMetadata","dumpValueTypeWireType","type","array","description","displayName","gothamMapping","typeClasses","dataConstraint","propertyTypeConstraints","nullability","nullabilityV2","noEmptyCollections","noNulls","undefined","visibility","subtype","convertType","aliases","baseFormatter","dataConstraints","indexedForSearch","provenance","marking","markingType","structFields","Array","key","structDefinition","fieldTypeDefinition","field","fieldType","push","struct","geohash","precision","scale","analyzerOverride","enableAsciiFolding","isLongText","supportsExactMatching","mediaReference","distributeTypeHelper"],"sources":["defineOntology.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 */\n/** @internal */\nexport let ontologyDefinition;\n/** @internal */\nexport let namespace;\nexport async function defineOntology(ns, body) {\n namespace = ns;\n ontologyDefinition = {\n actionTypes: {},\n objectTypes: {},\n queryTypes: {},\n interfaceTypes: {},\n sharedPropertyTypes: {},\n valueTypes: {},\n importedTypes: {\n sharedPropertyTypes: [],\n },\n };\n try {\n await body();\n }\n catch (e) {\n // eslint-disable-next-line no-console\n console.error(\"Unexpected error while processing the body of the ontology\", e);\n throw e;\n }\n return {\n ontology: convertToWireOntologyIr(ontologyDefinition),\n valueType: convertOntologyToValueTypeIr(ontologyDefinition),\n };\n}\nfunction convertOntologyToValueTypeIr(ontology) {\n return {\n valueTypes: Object.values(ontology.valueTypes).map(definitions => ({\n metadata: {\n apiName: definitions[0].apiName,\n displayMetadata: definitions[0].displayMetadata,\n status: definitions[0].status,\n },\n versions: definitions.map(definition => ({\n version: definition.version,\n baseType: definition.baseType,\n constraints: definition.constraints,\n exampleValues: definition.exampleValues,\n })),\n })),\n };\n}\nfunction convertToWireOntologyIr(ontology) {\n return {\n blockData: {\n sharedPropertyTypes: Object.fromEntries(Object.entries(ontology.sharedPropertyTypes)\n .map(([apiName, spt]) => [apiName, { sharedPropertyType: convertSpt(spt) }])),\n interfaceTypes: Object.fromEntries(Object.entries(ontology.interfaceTypes)\n .map(([apiName, interfaceType]) => {\n return [apiName, {\n interfaceType: convertInterface(interfaceType),\n }];\n })),\n blockPermissionInformation: {\n actionTypes: {},\n linkTypes: {},\n objectTypes: {},\n },\n },\n importedTypes: ontology.importedTypes,\n };\n}\nfunction convertInterface(interfaceType) {\n return {\n ...interfaceType,\n properties: Object.values(interfaceType.properties)\n .map((spt) => convertSpt(spt)),\n // these are omitted from our internal types but we need to re-add them for the final json\n allExtendsInterfaces: [],\n allLinks: [],\n allProperties: [],\n };\n}\nexport function dumpOntologyFullMetadata() {\n return convertToWireOntologyIr(ontologyDefinition);\n}\nexport function dumpValueTypeWireType() {\n return convertOntologyToValueTypeIr(ontologyDefinition);\n}\nfunction convertSpt({ type, array, description, apiName, displayName, gothamMapping, typeClasses, valueType, }) {\n const dataConstraint = (typeof type === \"object\" && type.type === \"marking\")\n ? {\n propertyTypeConstraints: [],\n nullability: \"NO_EXPLICIT_NULLS\",\n nullabilityV2: { noEmptyCollections: true, noNulls: true },\n }\n : undefined;\n return {\n apiName,\n displayMetadata: {\n displayName: displayName ?? apiName,\n visibility: \"NORMAL\",\n description,\n },\n type: array\n ? {\n type: \"array\",\n array: {\n subtype: convertType(type),\n },\n }\n : convertType(type),\n aliases: [],\n baseFormatter: undefined,\n dataConstraints: dataConstraint,\n gothamMapping: gothamMapping,\n indexedForSearch: true,\n provenance: undefined,\n typeClasses: typeClasses ?? [],\n valueType: valueType,\n };\n}\nfunction convertType(type) {\n switch (true) {\n case (typeof type === \"object\" && \"markingType\" in type):\n return {\n \"type\": \"marking\",\n marking: { markingType: type.markingType },\n };\n case (typeof type === \"object\" && \"structDefinition\" in type):\n const structFields = new Array();\n for (const key in type.structDefinition) {\n const fieldTypeDefinition = type.structDefinition[key];\n var field;\n if (typeof fieldTypeDefinition === \"string\") {\n field = {\n apiName: key,\n displayMetadata: { displayName: key, description: undefined },\n typeClasses: [],\n aliases: [],\n fieldType: convertType(fieldTypeDefinition),\n };\n }\n else {\n // If it is a full form type definition then process it as such\n if (\"fieldType\" in fieldTypeDefinition) {\n field = {\n ...fieldTypeDefinition,\n apiName: key,\n fieldType: convertType(fieldTypeDefinition.fieldType),\n typeClasses: fieldTypeDefinition.typeClasses ?? [],\n aliases: fieldTypeDefinition.aliases ?? [],\n };\n }\n else {\n field = {\n apiName: key,\n displayMetadata: { displayName: key, description: undefined },\n typeClasses: [],\n aliases: [],\n fieldType: convertType(fieldTypeDefinition),\n };\n }\n }\n structFields.push(field);\n }\n return {\n type: \"struct\",\n struct: { structFields },\n };\n case (type === \"geopoint\"):\n return { type: \"geohash\", geohash: {} };\n case (type === \"decimal\"):\n return { type, [type]: { precision: undefined, scale: undefined } };\n case (type === \"string\"):\n return {\n type,\n [type]: {\n analyzerOverride: undefined,\n enableAsciiFolding: undefined,\n isLongText: false,\n supportsExactMatching: true,\n },\n };\n case (type === \"mediaReference\"):\n return {\n type: type,\n mediaReference: {},\n };\n default:\n // use helper function to distribute `type` properly\n return distributeTypeHelper(type);\n }\n}\n/**\n * Helper function to avoid duplication. Makes the types match properly with the correct\n * behavior without needing to switch on type.\n * @param type\n * @returns\n */\nfunction distributeTypeHelper(type) {\n return { type, [type]: {} }; // any cast to match conditional return type\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -145,7 +145,7 @@ describe("Ontology Defining", () => {
|
|
|
145
145
|
foo: "string"
|
|
146
146
|
}
|
|
147
147
|
});
|
|
148
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
148
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
149
149
|
{
|
|
150
150
|
"blockPermissionInformation": {
|
|
151
151
|
"actionTypes": {},
|
|
@@ -255,7 +255,7 @@ describe("Ontology Defining", () => {
|
|
|
255
255
|
apiName: "foo",
|
|
256
256
|
type: "string"
|
|
257
257
|
});
|
|
258
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
258
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
259
259
|
{
|
|
260
260
|
"blockPermissionInformation": {
|
|
261
261
|
"actionTypes": {},
|
|
@@ -327,7 +327,7 @@ describe("Ontology Defining", () => {
|
|
|
327
327
|
},
|
|
328
328
|
extends: [parentInterface]
|
|
329
329
|
});
|
|
330
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
330
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
331
331
|
{
|
|
332
332
|
"blockPermissionInformation": {
|
|
333
333
|
"actionTypes": {},
|
|
@@ -539,7 +539,7 @@ describe("Ontology Defining", () => {
|
|
|
539
539
|
},
|
|
540
540
|
extends: ["parentInterface"]
|
|
541
541
|
});
|
|
542
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
542
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
543
543
|
{
|
|
544
544
|
"blockPermissionInformation": {
|
|
545
545
|
"actionTypes": {},
|
|
@@ -756,7 +756,7 @@ describe("Ontology Defining", () => {
|
|
|
756
756
|
toOne: b,
|
|
757
757
|
apiName: "singleLink"
|
|
758
758
|
});
|
|
759
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
759
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
760
760
|
{
|
|
761
761
|
"blockPermissionInformation": {
|
|
762
762
|
"actionTypes": {},
|
|
@@ -829,7 +829,7 @@ describe("Ontology Defining", () => {
|
|
|
829
829
|
toMany: b,
|
|
830
830
|
apiName: "manyLink"
|
|
831
831
|
});
|
|
832
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
832
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
833
833
|
{
|
|
834
834
|
"blockPermissionInformation": {
|
|
835
835
|
"actionTypes": {},
|
|
@@ -927,7 +927,7 @@ describe("Ontology Defining", () => {
|
|
|
927
927
|
locator: "airplane"
|
|
928
928
|
}
|
|
929
929
|
});
|
|
930
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
930
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
931
931
|
{
|
|
932
932
|
"blockPermissionInformation": {
|
|
933
933
|
"actionTypes": {},
|
|
@@ -1055,7 +1055,7 @@ describe("Ontology Defining", () => {
|
|
|
1055
1055
|
}
|
|
1056
1056
|
}
|
|
1057
1057
|
});
|
|
1058
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
1058
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
1059
1059
|
{
|
|
1060
1060
|
"blockPermissionInformation": {
|
|
1061
1061
|
"actionTypes": {},
|
|
@@ -1138,7 +1138,8 @@ describe("Ontology Defining", () => {
|
|
|
1138
1138
|
});
|
|
1139
1139
|
const importedSpt = importSharedPropertyType({
|
|
1140
1140
|
apiName: "bar",
|
|
1141
|
-
typeHint: "string"
|
|
1141
|
+
typeHint: "string",
|
|
1142
|
+
packageName: "com.palantir.bar"
|
|
1142
1143
|
});
|
|
1143
1144
|
defineInterface({
|
|
1144
1145
|
apiName: "interface",
|
|
@@ -1147,7 +1148,7 @@ describe("Ontology Defining", () => {
|
|
|
1147
1148
|
bar: importedSpt
|
|
1148
1149
|
}
|
|
1149
1150
|
});
|
|
1150
|
-
expect(dumpOntologyFullMetadata()).toMatchInlineSnapshot(`
|
|
1151
|
+
expect(dumpOntologyFullMetadata().blockData).toMatchInlineSnapshot(`
|
|
1151
1152
|
{
|
|
1152
1153
|
"blockPermissionInformation": {
|
|
1153
1154
|
"actionTypes": {},
|
|
@@ -1174,7 +1175,7 @@ describe("Ontology Defining", () => {
|
|
|
1174
1175
|
"apiName": "com.palantir.foo",
|
|
1175
1176
|
"baseFormatter": undefined,
|
|
1176
1177
|
"dataConstraints": {
|
|
1177
|
-
"nullability":
|
|
1178
|
+
"nullability": "NO_EXPLICIT_NULLS",
|
|
1178
1179
|
"nullabilityV2": {
|
|
1179
1180
|
"noEmptyCollections": true,
|
|
1180
1181
|
"noNulls": true,
|
|
@@ -1209,12 +1210,12 @@ describe("Ontology Defining", () => {
|
|
|
1209
1210
|
},
|
|
1210
1211
|
{
|
|
1211
1212
|
"aliases": [],
|
|
1212
|
-
"apiName": "bar",
|
|
1213
|
+
"apiName": "com.palantir.bar.bar",
|
|
1213
1214
|
"baseFormatter": undefined,
|
|
1214
1215
|
"dataConstraints": undefined,
|
|
1215
1216
|
"displayMetadata": {
|
|
1216
1217
|
"description": undefined,
|
|
1217
|
-
"displayName": "bar",
|
|
1218
|
+
"displayName": "com.palantir.bar.bar",
|
|
1218
1219
|
"visibility": "NORMAL",
|
|
1219
1220
|
},
|
|
1220
1221
|
"gothamMapping": undefined,
|
|
@@ -1247,7 +1248,7 @@ describe("Ontology Defining", () => {
|
|
|
1247
1248
|
"apiName": "com.palantir.foo",
|
|
1248
1249
|
"baseFormatter": undefined,
|
|
1249
1250
|
"dataConstraints": {
|
|
1250
|
-
"nullability":
|
|
1251
|
+
"nullability": "NO_EXPLICIT_NULLS",
|
|
1251
1252
|
"nullabilityV2": {
|
|
1252
1253
|
"noEmptyCollections": true,
|
|
1253
1254
|
"noNulls": true,
|
|
@@ -1284,6 +1285,16 @@ describe("Ontology Defining", () => {
|
|
|
1284
1285
|
},
|
|
1285
1286
|
}
|
|
1286
1287
|
`);
|
|
1288
|
+
expect(dumpOntologyFullMetadata().importedTypes).toMatchInlineSnapshot(`
|
|
1289
|
+
{
|
|
1290
|
+
"sharedPropertyTypes": [
|
|
1291
|
+
{
|
|
1292
|
+
"apiName": "bar",
|
|
1293
|
+
"packageName": "com.palantir.bar",
|
|
1294
|
+
},
|
|
1295
|
+
],
|
|
1296
|
+
}
|
|
1297
|
+
`);
|
|
1287
1298
|
});
|
|
1288
1299
|
});
|
|
1289
1300
|
//# sourceMappingURL=overall.test.js.map
|