@osdk/generator-converters 2.0.0-beta.10 → 2.0.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 +16 -0
- package/build/browser/index.js +89 -1
- package/build/browser/index.js.map +1 -1
- package/build/esm/getEditedEntities.d.ts +7 -0
- package/build/esm/getEditedEntities.d.ts.map +1 -0
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.d.ts.map +1 -1
- package/build/esm/index.js +89 -1
- package/build/esm/index.js.map +1 -1
- package/build/esm/wireActionTypeV2ToSdkActionDefinition.d.ts +4 -0
- package/build/esm/wireActionTypeV2ToSdkActionDefinition.d.ts.map +1 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @osdk/generator-converters
|
|
2
2
|
|
|
3
|
+
## 2.0.0-beta.12
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- dc25fb4: Expose parameters on action metadata
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- @osdk/api@2.0.0-beta.12
|
|
12
|
+
|
|
13
|
+
## 2.0.0-beta.11
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- @osdk/api@2.0.0-beta.11
|
|
18
|
+
|
|
3
19
|
## 2.0.0-beta.10
|
|
4
20
|
|
|
5
21
|
### Major Changes
|
package/build/browser/index.js
CHANGED
|
@@ -84,6 +84,94 @@ function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2)
|
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
+
// src/getEditedEntities.ts
|
|
88
|
+
function getModifiedEntityTypes(action) {
|
|
89
|
+
const addedObjects = /* @__PURE__ */ new Set();
|
|
90
|
+
const modifiedObjects = /* @__PURE__ */ new Set();
|
|
91
|
+
for (const operation of action.operations) {
|
|
92
|
+
switch (operation.type) {
|
|
93
|
+
case "createObject":
|
|
94
|
+
addedObjects.add(operation.objectTypeApiName);
|
|
95
|
+
break;
|
|
96
|
+
case "modifyObject":
|
|
97
|
+
modifiedObjects.add(operation.objectTypeApiName);
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
addedObjects,
|
|
103
|
+
modifiedObjects
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// src/wireActionTypeV2ToSdkActionDefinition.ts
|
|
108
|
+
function wireActionTypeV2ToSdkActionDefinition(input) {
|
|
109
|
+
const modifiedEntityTypes = getModifiedEntityTypes(input);
|
|
110
|
+
return {
|
|
111
|
+
type: "action",
|
|
112
|
+
apiName: input.apiName,
|
|
113
|
+
parameters: Object.fromEntries(Object.entries(input.parameters).map(([key, value]) => [key, wireActionParameterV2ToSdkParameterDefinition(value)])),
|
|
114
|
+
displayName: input.displayName,
|
|
115
|
+
description: input.description,
|
|
116
|
+
modifiedEntities: createModifiedEntities(modifiedEntityTypes.addedObjects, modifiedEntityTypes.modifiedObjects)
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
function wireActionParameterV2ToSdkParameterDefinition(value) {
|
|
120
|
+
return {
|
|
121
|
+
multiplicity: value.dataType.type === "array",
|
|
122
|
+
type: actionPropertyToSdkPropertyDefinition(value.dataType.type === "array" ? value.dataType.subType : value.dataType),
|
|
123
|
+
nullable: !value.required,
|
|
124
|
+
description: value.description
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
function actionPropertyToSdkPropertyDefinition(parameterType) {
|
|
128
|
+
switch (parameterType.type) {
|
|
129
|
+
case "string":
|
|
130
|
+
case "boolean":
|
|
131
|
+
case "attachment":
|
|
132
|
+
case "double":
|
|
133
|
+
case "integer":
|
|
134
|
+
case "long":
|
|
135
|
+
case "timestamp":
|
|
136
|
+
case "marking":
|
|
137
|
+
return parameterType.type;
|
|
138
|
+
case "date":
|
|
139
|
+
return "datetime";
|
|
140
|
+
case "objectSet":
|
|
141
|
+
return {
|
|
142
|
+
type: "objectSet",
|
|
143
|
+
objectSet: parameterType.objectTypeApiName
|
|
144
|
+
};
|
|
145
|
+
case "object":
|
|
146
|
+
return {
|
|
147
|
+
type: "object",
|
|
148
|
+
object: parameterType.objectTypeApiName
|
|
149
|
+
};
|
|
150
|
+
case "array":
|
|
151
|
+
return actionPropertyToSdkPropertyDefinition(parameterType.subType);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
function createModifiedEntities(addedObjects, modifiedObjects) {
|
|
155
|
+
let entities = {};
|
|
156
|
+
for (const key of addedObjects) {
|
|
157
|
+
entities[key] = {
|
|
158
|
+
created: true,
|
|
159
|
+
modified: false
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
for (const key of modifiedObjects) {
|
|
163
|
+
if (entities[key]) {
|
|
164
|
+
entities[key].modified = true;
|
|
165
|
+
} else {
|
|
166
|
+
entities[key] = {
|
|
167
|
+
created: false,
|
|
168
|
+
modified: true
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return entities;
|
|
173
|
+
}
|
|
174
|
+
|
|
87
175
|
// src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts
|
|
88
176
|
function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {
|
|
89
177
|
switch (input.dataType.type) {
|
|
@@ -313,6 +401,6 @@ function wireQueryParameterV2ToQueryParameterDefinition(parameter) {
|
|
|
313
401
|
};
|
|
314
402
|
}
|
|
315
403
|
|
|
316
|
-
export { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition, wireObjectTypeFullMetadataToSdkObjectTypeDefinition, wirePropertyV2ToSdkPropertyDefinition, wireQueryDataTypeToQueryDataTypeDefinition, wireQueryParameterV2ToQueryParameterDefinition, wireQueryTypeV2ToSdkQueryDefinition, wireQueryTypeV2ToSdkQueryDefinitionNoParams };
|
|
404
|
+
export { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition, wireActionTypeV2ToSdkActionDefinition, wireObjectTypeFullMetadataToSdkObjectTypeDefinition, wirePropertyV2ToSdkPropertyDefinition, wireQueryDataTypeToQueryDataTypeDefinition, wireQueryParameterV2ToQueryParameterDefinition, wireQueryTypeV2ToSdkQueryDefinition, wireQueryTypeV2ToSdkQueryDefinitionNoParams };
|
|
317
405
|
//# sourceMappingURL=index.js.map
|
|
318
406
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/wirePropertyV2ToSdkPropertyDefinition.ts","../../src/__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.ts","../../src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts","../../src/wireObjectTypeFullMetadataToSdkObjectTypeDefinition.ts","../../src/isNullableQueryDataType.ts","../../src/wireQueryDataTypeToQueryDataTypeDefinition.ts","../../src/wireQueryTypeV2ToSdkQueryDefinition.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: input.nullable == null ? isNullable : input.nullable\n };\n case \"array\":\n {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: true\n };\n }\n default:\n const _ = input.dataType;\n throw new Error(`Unexpected data type ${JSON.stringify(input.dataType)}`);\n }\n}\nfunction objectPropertyTypeToSdkPropertyDefinition(propertyType) {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType.type === \"string\") {\n return \"stringTimeseries\";\n }\n return \"numericTimeseries\";\n default:\n const _ = propertyType;\n throw new Error(`Unexpected data type ${JSON.stringify(propertyType)}`);\n }\n}","/*\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 { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2) {\n return {\n type: \"interface\",\n apiName: interfaceType.apiName,\n displayName: interfaceType.displayName,\n description: interfaceType.description,\n implements: interfaceType.extendsInterfaces,\n properties: Object.fromEntries(Object.entries(interfaceType.properties).map(([key, value]) => {\n return [key, wirePropertyV2ToSdkPropertyDefinition(value, true)];\n })),\n links: {}\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"double\":\n case \"string\":\n case \"boolean\":\n case \"byte\":\n case \"long\":\n case \"short\":\n {\n return input.dataType.type;\n }\n case \"date\":\n {\n return \"datetime\";\n }\n case \"timestamp\":\n {\n return \"timestamp\";\n }\n case \"geopoint\":\n case \"geoshape\":\n case \"decimal\":\n case \"attachment\":\n case \"timeseries\":\n case \"array\":\n case \"marking\":\n case \"float\":\n throw new Error(`Type not supported for primaryKey: ${input.dataType.type}`);\n default:\n const _ = input.dataType;\n throw new Error(`Unknown type encountered for primaryKey: ${input.dataType}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPrimaryKeyTypeDefinition } from \"./wirePropertyV2ToSdkPrimaryKeyTypeDefinition.js\";\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function wireObjectTypeFullMetadataToSdkObjectTypeDefinition(objectTypeWithLink, v2) {\n if (objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey] === undefined) {\n throw new Error(`Primary key ${objectTypeWithLink.objectType.primaryKey} not found in ${objectTypeWithLink.objectType.apiName}`);\n }\n\n // saved ontology.json files may not have this implementsInterfaces2 so we need to handle\n if (objectTypeWithLink.implementsInterfaces2 == null && objectTypeWithLink.implementsInterfaces != null) {\n throw new Error(\"Your ontology.json file is missing the implementsInterfaces2 field. Please regenerate it.\");\n }\n const interfaceMap = objectTypeWithLink.implementsInterfaces2 ? Object.fromEntries(Object.entries(objectTypeWithLink.implementsInterfaces2).map(([interfaceApiName, impl]) => [interfaceApiName, impl.properties])) : {};\n return {\n type: \"object\",\n apiName: objectTypeWithLink.objectType.apiName,\n description: objectTypeWithLink.objectType.description,\n primaryKeyApiName: objectTypeWithLink.objectType.primaryKey,\n primaryKeyType: wirePropertyV2ToSdkPrimaryKeyTypeDefinition(objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey]),\n links: Object.fromEntries(objectTypeWithLink.linkTypes.map(linkType => {\n return [linkType.apiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetType: linkType.objectTypeApiName\n }];\n })),\n properties: Object.fromEntries(Object.entries(objectTypeWithLink.objectType.properties).map(([key, value]) => [key, wirePropertyV2ToSdkPropertyDefinition(value, !(v2 && objectTypeWithLink.objectType.primaryKey === key))])),\n spts: objectTypeWithLink.sharedPropertyTypeMapping,\n inverseSpts: invertProps(objectTypeWithLink.sharedPropertyTypeMapping),\n implements: objectTypeWithLink.implementsInterfaces,\n interfaceMap,\n inverseInterfaceMap: Object.fromEntries(Object.entries(interfaceMap).map(([interfaceApiName, props]) => [interfaceApiName, invertProps(props)]))\n };\n}\nfunction invertProps(a) {\n return a ? Object.fromEntries(Object.entries(a).map(([k, v]) => [v, k])) : undefined;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isNullableQueryDataType(input) {\n if (input.type === \"null\") {\n return true;\n }\n if (input.type === \"union\") {\n return input.unionTypes.some(t => isNullableQueryDataType(t));\n }\n return false;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNullableQueryDataType } from \"./isNullableQueryDataType.js\";\nexport function wireQueryDataTypeToQueryDataTypeDefinition(input) {\n switch (input.type) {\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"attachment\":\n case \"boolean\":\n case \"date\":\n case \"string\":\n case \"timestamp\":\n return {\n type: input.type,\n nullable: false\n };\n case \"object\":\n return {\n type: \"object\",\n object: input.objectTypeApiName,\n nullable: false\n };\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: input.objectTypeApiName,\n nullable: false\n };\n case \"array\":\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n multiplicity: true\n };\n case \"set\":\n return {\n type: \"set\",\n set: wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n nullable: false\n };\n case \"union\":\n const allowNulls = isNullableQueryDataType(input);\n\n // special case for a union where one half is nullable to skip the union step and just allow nulls directly\n if (allowNulls && input.unionTypes.length === 2) {\n const nonNull = input.unionTypes.find(t => t.type != null);\n if (nonNull) {\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(nonNull),\n nullable: true\n };\n }\n }\n return {\n type: \"union\",\n union: input.unionTypes.reduce((acc, t) => {\n if (t.type === \"null\") {\n return acc;\n }\n acc.push(wireQueryDataTypeToQueryDataTypeDefinition(t));\n return acc;\n }, []),\n nullable: allowNulls\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: Object.fromEntries(input.fields.map(f => [f.name, wireQueryDataTypeToQueryDataTypeDefinition(f.fieldType)])),\n nullable: false\n };\n case \"twoDimensionalAggregation\":\n return {\n type: \"twoDimensionalAggregation\",\n twoDimensionalAggregation: get2DQueryAggregationProps(input),\n nullable: false\n };\n case \"threeDimensionalAggregation\":\n return {\n type: \"threeDimensionalAggregation\",\n threeDimensionalAggregation: get3DQueryAggregationProps(input),\n nullable: false\n };\n case \"null\":\n case \"unsupported\":\n throw new Error(`Accidentally tried to handle QueryDataType.type ${input.type}`);\n default:\n const _ = input;\n throw new Error(`Unsupported QueryDataType.type ${input.type}`);\n }\n}\nfunction get2DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: input.valueType.type\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: input.valueType.type\n };\n }\n throw new Error(`Cannot create 2D aggregation with ${input.keyType.type} as its type`);\n }\n}\nfunction get3DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n }\n throw new Error(`Cannot create 3D aggregation with ${input.keyType.type} as its type`);\n }\n}\n\n/**\n * Guard against aggregation key types that are allowed by the backend types but are illegal to actually use\n */\nfunction guardInvalidKeyTypes(key) {\n return key.type === \"string\" || key.type === \"boolean\";\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireQueryDataTypeToQueryDataTypeDefinition } from \"./wireQueryDataTypeToQueryDataTypeDefinition.js\";\nexport function wireQueryTypeV2ToSdkQueryDefinition(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([name, parameter]) => [name, wireQueryParameterV2ToQueryParameterDefinition(parameter)])),\n output: wireQueryDataTypeToQueryDataTypeDefinition(input.output)\n };\n}\nexport function wireQueryTypeV2ToSdkQueryDefinitionNoParams(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version\n };\n}\nexport function wireQueryParameterV2ToQueryParameterDefinition(parameter) {\n return {\n description: parameter.description,\n ...wireQueryDataTypeToQueryDataTypeDefinition(parameter.dataType)\n };\n}"]}
|
|
1
|
+
{"version":3,"sources":["../../src/wirePropertyV2ToSdkPropertyDefinition.ts","../../src/__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.ts","../../src/getEditedEntities.ts","../../src/wireActionTypeV2ToSdkActionDefinition.ts","../../src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts","../../src/wireObjectTypeFullMetadataToSdkObjectTypeDefinition.ts","../../src/isNullableQueryDataType.ts","../../src/wireQueryDataTypeToQueryDataTypeDefinition.ts","../../src/wireQueryTypeV2ToSdkQueryDefinition.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: input.nullable == null ? isNullable : input.nullable\n };\n case \"array\":\n {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: true\n };\n }\n default:\n const _ = input.dataType;\n throw new Error(`Unexpected data type ${JSON.stringify(input.dataType)}`);\n }\n}\nfunction objectPropertyTypeToSdkPropertyDefinition(propertyType) {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType.type === \"string\") {\n return \"stringTimeseries\";\n }\n return \"numericTimeseries\";\n default:\n const _ = propertyType;\n throw new Error(`Unexpected data type ${JSON.stringify(propertyType)}`);\n }\n}","/*\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 { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2) {\n return {\n type: \"interface\",\n apiName: interfaceType.apiName,\n displayName: interfaceType.displayName,\n description: interfaceType.description,\n implements: interfaceType.extendsInterfaces,\n properties: Object.fromEntries(Object.entries(interfaceType.properties).map(([key, value]) => {\n return [key, wirePropertyV2ToSdkPropertyDefinition(value, true)];\n })),\n links: {}\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function getModifiedEntityTypes(action) {\n const addedObjects = new Set();\n const modifiedObjects = new Set();\n for (const operation of action.operations) {\n switch (operation.type) {\n case \"createObject\":\n addedObjects.add(operation.objectTypeApiName);\n break;\n case \"modifyObject\":\n modifiedObjects.add(operation.objectTypeApiName);\n break;\n case \"deleteObject\":\n case \"createLink\":\n case \"deleteLink\":\n case \"createInterfaceObject\":\n case \"modifyInterfaceObject\":\n break;\n default:\n const _ = operation;\n }\n }\n return {\n addedObjects,\n modifiedObjects\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { getModifiedEntityTypes } from \"./getEditedEntities.js\";\nexport function wireActionTypeV2ToSdkActionDefinition(input) {\n const modifiedEntityTypes = getModifiedEntityTypes(input);\n return {\n type: \"action\",\n apiName: input.apiName,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([key, value]) => [key, wireActionParameterV2ToSdkParameterDefinition(value)])),\n displayName: input.displayName,\n description: input.description,\n modifiedEntities: createModifiedEntities(modifiedEntityTypes.addedObjects, modifiedEntityTypes.modifiedObjects)\n };\n}\nfunction wireActionParameterV2ToSdkParameterDefinition(value) {\n return {\n multiplicity: value.dataType.type === \"array\",\n type: actionPropertyToSdkPropertyDefinition(value.dataType.type === \"array\" ? value.dataType.subType : value.dataType),\n nullable: !value.required,\n description: value.description\n };\n}\nfunction actionPropertyToSdkPropertyDefinition(parameterType) {\n switch (parameterType.type) {\n case \"string\":\n case \"boolean\":\n case \"attachment\":\n case \"double\":\n case \"integer\":\n case \"long\":\n case \"timestamp\":\n case \"marking\":\n return parameterType.type;\n case \"date\":\n return \"datetime\";\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: parameterType.objectTypeApiName\n };\n case \"object\":\n return {\n type: \"object\",\n object: parameterType.objectTypeApiName\n };\n case \"array\":\n return actionPropertyToSdkPropertyDefinition(parameterType.subType);\n }\n}\nfunction createModifiedEntities(addedObjects, modifiedObjects) {\n let entities = {};\n for (const key of addedObjects) {\n entities[key] = {\n created: true,\n modified: false\n };\n }\n for (const key of modifiedObjects) {\n if (entities[key]) {\n entities[key].modified = true;\n } else {\n entities[key] = {\n created: false,\n modified: true\n };\n }\n }\n return entities;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"double\":\n case \"string\":\n case \"boolean\":\n case \"byte\":\n case \"long\":\n case \"short\":\n {\n return input.dataType.type;\n }\n case \"date\":\n {\n return \"datetime\";\n }\n case \"timestamp\":\n {\n return \"timestamp\";\n }\n case \"geopoint\":\n case \"geoshape\":\n case \"decimal\":\n case \"attachment\":\n case \"timeseries\":\n case \"array\":\n case \"marking\":\n case \"float\":\n throw new Error(`Type not supported for primaryKey: ${input.dataType.type}`);\n default:\n const _ = input.dataType;\n throw new Error(`Unknown type encountered for primaryKey: ${input.dataType}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPrimaryKeyTypeDefinition } from \"./wirePropertyV2ToSdkPrimaryKeyTypeDefinition.js\";\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function wireObjectTypeFullMetadataToSdkObjectTypeDefinition(objectTypeWithLink, v2) {\n if (objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey] === undefined) {\n throw new Error(`Primary key ${objectTypeWithLink.objectType.primaryKey} not found in ${objectTypeWithLink.objectType.apiName}`);\n }\n\n // saved ontology.json files may not have this implementsInterfaces2 so we need to handle\n if (objectTypeWithLink.implementsInterfaces2 == null && objectTypeWithLink.implementsInterfaces != null) {\n throw new Error(\"Your ontology.json file is missing the implementsInterfaces2 field. Please regenerate it.\");\n }\n const interfaceMap = objectTypeWithLink.implementsInterfaces2 ? Object.fromEntries(Object.entries(objectTypeWithLink.implementsInterfaces2).map(([interfaceApiName, impl]) => [interfaceApiName, impl.properties])) : {};\n return {\n type: \"object\",\n apiName: objectTypeWithLink.objectType.apiName,\n description: objectTypeWithLink.objectType.description,\n primaryKeyApiName: objectTypeWithLink.objectType.primaryKey,\n primaryKeyType: wirePropertyV2ToSdkPrimaryKeyTypeDefinition(objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey]),\n links: Object.fromEntries(objectTypeWithLink.linkTypes.map(linkType => {\n return [linkType.apiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetType: linkType.objectTypeApiName\n }];\n })),\n properties: Object.fromEntries(Object.entries(objectTypeWithLink.objectType.properties).map(([key, value]) => [key, wirePropertyV2ToSdkPropertyDefinition(value, !(v2 && objectTypeWithLink.objectType.primaryKey === key))])),\n spts: objectTypeWithLink.sharedPropertyTypeMapping,\n inverseSpts: invertProps(objectTypeWithLink.sharedPropertyTypeMapping),\n implements: objectTypeWithLink.implementsInterfaces,\n interfaceMap,\n inverseInterfaceMap: Object.fromEntries(Object.entries(interfaceMap).map(([interfaceApiName, props]) => [interfaceApiName, invertProps(props)]))\n };\n}\nfunction invertProps(a) {\n return a ? Object.fromEntries(Object.entries(a).map(([k, v]) => [v, k])) : undefined;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isNullableQueryDataType(input) {\n if (input.type === \"null\") {\n return true;\n }\n if (input.type === \"union\") {\n return input.unionTypes.some(t => isNullableQueryDataType(t));\n }\n return false;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNullableQueryDataType } from \"./isNullableQueryDataType.js\";\nexport function wireQueryDataTypeToQueryDataTypeDefinition(input) {\n switch (input.type) {\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"attachment\":\n case \"boolean\":\n case \"date\":\n case \"string\":\n case \"timestamp\":\n return {\n type: input.type,\n nullable: false\n };\n case \"object\":\n return {\n type: \"object\",\n object: input.objectTypeApiName,\n nullable: false\n };\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: input.objectTypeApiName,\n nullable: false\n };\n case \"array\":\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n multiplicity: true\n };\n case \"set\":\n return {\n type: \"set\",\n set: wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n nullable: false\n };\n case \"union\":\n const allowNulls = isNullableQueryDataType(input);\n\n // special case for a union where one half is nullable to skip the union step and just allow nulls directly\n if (allowNulls && input.unionTypes.length === 2) {\n const nonNull = input.unionTypes.find(t => t.type != null);\n if (nonNull) {\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(nonNull),\n nullable: true\n };\n }\n }\n return {\n type: \"union\",\n union: input.unionTypes.reduce((acc, t) => {\n if (t.type === \"null\") {\n return acc;\n }\n acc.push(wireQueryDataTypeToQueryDataTypeDefinition(t));\n return acc;\n }, []),\n nullable: allowNulls\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: Object.fromEntries(input.fields.map(f => [f.name, wireQueryDataTypeToQueryDataTypeDefinition(f.fieldType)])),\n nullable: false\n };\n case \"twoDimensionalAggregation\":\n return {\n type: \"twoDimensionalAggregation\",\n twoDimensionalAggregation: get2DQueryAggregationProps(input),\n nullable: false\n };\n case \"threeDimensionalAggregation\":\n return {\n type: \"threeDimensionalAggregation\",\n threeDimensionalAggregation: get3DQueryAggregationProps(input),\n nullable: false\n };\n case \"null\":\n case \"unsupported\":\n throw new Error(`Accidentally tried to handle QueryDataType.type ${input.type}`);\n default:\n const _ = input;\n throw new Error(`Unsupported QueryDataType.type ${input.type}`);\n }\n}\nfunction get2DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: input.valueType.type\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: input.valueType.type\n };\n }\n throw new Error(`Cannot create 2D aggregation with ${input.keyType.type} as its type`);\n }\n}\nfunction get3DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n }\n throw new Error(`Cannot create 3D aggregation with ${input.keyType.type} as its type`);\n }\n}\n\n/**\n * Guard against aggregation key types that are allowed by the backend types but are illegal to actually use\n */\nfunction guardInvalidKeyTypes(key) {\n return key.type === \"string\" || key.type === \"boolean\";\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireQueryDataTypeToQueryDataTypeDefinition } from \"./wireQueryDataTypeToQueryDataTypeDefinition.js\";\nexport function wireQueryTypeV2ToSdkQueryDefinition(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([name, parameter]) => [name, wireQueryParameterV2ToQueryParameterDefinition(parameter)])),\n output: wireQueryDataTypeToQueryDataTypeDefinition(input.output)\n };\n}\nexport function wireQueryTypeV2ToSdkQueryDefinitionNoParams(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version\n };\n}\nexport function wireQueryParameterV2ToQueryParameterDefinition(parameter) {\n return {\n description: parameter.description,\n ...wireQueryDataTypeToQueryDataTypeDefinition(parameter.dataType)\n };\n}"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ActionTypeV2 } from "@osdk/internal.foundry.core";
|
|
2
|
+
export type ModifiedEntityTypes = {
|
|
3
|
+
addedObjects: Set<string>;
|
|
4
|
+
modifiedObjects: Set<string>;
|
|
5
|
+
};
|
|
6
|
+
export declare function getModifiedEntityTypes(action: ActionTypeV2): ModifiedEntityTypes;
|
|
7
|
+
//# sourceMappingURL=getEditedEntities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getEditedEntities.d.ts","sourceRoot":"","sources":["../../src/getEditedEntities.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAAG;IAChC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,GACnB,mBAAmB,CAsBrB"}
|
package/build/esm/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition } from "./__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.js";
|
|
2
|
+
export { wireActionTypeV2ToSdkActionDefinition } from "./wireActionTypeV2ToSdkActionDefinition.js";
|
|
2
3
|
export { wireObjectTypeFullMetadataToSdkObjectTypeDefinition } from "./wireObjectTypeFullMetadataToSdkObjectTypeDefinition.js";
|
|
3
4
|
export { wirePropertyV2ToSdkPropertyDefinition } from "./wirePropertyV2ToSdkPropertyDefinition.js";
|
|
4
5
|
export { wireQueryDataTypeToQueryDataTypeDefinition } from "./wireQueryDataTypeToQueryDataTypeDefinition.js";
|
package/build/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,mDAAmD,EAAE,MAAM,0DAA0D,CAAC;AAC/H,OAAO,EAAE,mDAAmD,EAAE,MAAM,0DAA0D,CAAC;AAC/H,OAAO,EAAE,qCAAqC,EAAE,MAAM,4CAA4C,CAAC;AACnG,OAAO,EAAE,0CAA0C,EAAE,MAAM,iDAAiD,CAAC;AAC7G,OAAO,EAAE,mCAAmC,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,8CAA8C,EAAE,MAAM,0CAA0C,CAAC;AAC1G,OAAO,EAAE,2CAA2C,EAAE,MAAM,0CAA0C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,mDAAmD,EAAE,MAAM,0DAA0D,CAAC;AAC/H,OAAO,EAAE,qCAAqC,EAAE,MAAM,4CAA4C,CAAC;AACnG,OAAO,EAAE,mDAAmD,EAAE,MAAM,0DAA0D,CAAC;AAC/H,OAAO,EAAE,qCAAqC,EAAE,MAAM,4CAA4C,CAAC;AACnG,OAAO,EAAE,0CAA0C,EAAE,MAAM,iDAAiD,CAAC;AAC7G,OAAO,EAAE,mCAAmC,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,8CAA8C,EAAE,MAAM,0CAA0C,CAAC;AAC1G,OAAO,EAAE,2CAA2C,EAAE,MAAM,0CAA0C,CAAC"}
|
package/build/esm/index.js
CHANGED
|
@@ -84,6 +84,94 @@ function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2)
|
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
+
// src/getEditedEntities.ts
|
|
88
|
+
function getModifiedEntityTypes(action) {
|
|
89
|
+
const addedObjects = /* @__PURE__ */ new Set();
|
|
90
|
+
const modifiedObjects = /* @__PURE__ */ new Set();
|
|
91
|
+
for (const operation of action.operations) {
|
|
92
|
+
switch (operation.type) {
|
|
93
|
+
case "createObject":
|
|
94
|
+
addedObjects.add(operation.objectTypeApiName);
|
|
95
|
+
break;
|
|
96
|
+
case "modifyObject":
|
|
97
|
+
modifiedObjects.add(operation.objectTypeApiName);
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
addedObjects,
|
|
103
|
+
modifiedObjects
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// src/wireActionTypeV2ToSdkActionDefinition.ts
|
|
108
|
+
function wireActionTypeV2ToSdkActionDefinition(input) {
|
|
109
|
+
const modifiedEntityTypes = getModifiedEntityTypes(input);
|
|
110
|
+
return {
|
|
111
|
+
type: "action",
|
|
112
|
+
apiName: input.apiName,
|
|
113
|
+
parameters: Object.fromEntries(Object.entries(input.parameters).map(([key, value]) => [key, wireActionParameterV2ToSdkParameterDefinition(value)])),
|
|
114
|
+
displayName: input.displayName,
|
|
115
|
+
description: input.description,
|
|
116
|
+
modifiedEntities: createModifiedEntities(modifiedEntityTypes.addedObjects, modifiedEntityTypes.modifiedObjects)
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
function wireActionParameterV2ToSdkParameterDefinition(value) {
|
|
120
|
+
return {
|
|
121
|
+
multiplicity: value.dataType.type === "array",
|
|
122
|
+
type: actionPropertyToSdkPropertyDefinition(value.dataType.type === "array" ? value.dataType.subType : value.dataType),
|
|
123
|
+
nullable: !value.required,
|
|
124
|
+
description: value.description
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
function actionPropertyToSdkPropertyDefinition(parameterType) {
|
|
128
|
+
switch (parameterType.type) {
|
|
129
|
+
case "string":
|
|
130
|
+
case "boolean":
|
|
131
|
+
case "attachment":
|
|
132
|
+
case "double":
|
|
133
|
+
case "integer":
|
|
134
|
+
case "long":
|
|
135
|
+
case "timestamp":
|
|
136
|
+
case "marking":
|
|
137
|
+
return parameterType.type;
|
|
138
|
+
case "date":
|
|
139
|
+
return "datetime";
|
|
140
|
+
case "objectSet":
|
|
141
|
+
return {
|
|
142
|
+
type: "objectSet",
|
|
143
|
+
objectSet: parameterType.objectTypeApiName
|
|
144
|
+
};
|
|
145
|
+
case "object":
|
|
146
|
+
return {
|
|
147
|
+
type: "object",
|
|
148
|
+
object: parameterType.objectTypeApiName
|
|
149
|
+
};
|
|
150
|
+
case "array":
|
|
151
|
+
return actionPropertyToSdkPropertyDefinition(parameterType.subType);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
function createModifiedEntities(addedObjects, modifiedObjects) {
|
|
155
|
+
let entities = {};
|
|
156
|
+
for (const key of addedObjects) {
|
|
157
|
+
entities[key] = {
|
|
158
|
+
created: true,
|
|
159
|
+
modified: false
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
for (const key of modifiedObjects) {
|
|
163
|
+
if (entities[key]) {
|
|
164
|
+
entities[key].modified = true;
|
|
165
|
+
} else {
|
|
166
|
+
entities[key] = {
|
|
167
|
+
created: false,
|
|
168
|
+
modified: true
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return entities;
|
|
173
|
+
}
|
|
174
|
+
|
|
87
175
|
// src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts
|
|
88
176
|
function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {
|
|
89
177
|
switch (input.dataType.type) {
|
|
@@ -313,6 +401,6 @@ function wireQueryParameterV2ToQueryParameterDefinition(parameter) {
|
|
|
313
401
|
};
|
|
314
402
|
}
|
|
315
403
|
|
|
316
|
-
export { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition, wireObjectTypeFullMetadataToSdkObjectTypeDefinition, wirePropertyV2ToSdkPropertyDefinition, wireQueryDataTypeToQueryDataTypeDefinition, wireQueryParameterV2ToQueryParameterDefinition, wireQueryTypeV2ToSdkQueryDefinition, wireQueryTypeV2ToSdkQueryDefinitionNoParams };
|
|
404
|
+
export { __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition, wireActionTypeV2ToSdkActionDefinition, wireObjectTypeFullMetadataToSdkObjectTypeDefinition, wirePropertyV2ToSdkPropertyDefinition, wireQueryDataTypeToQueryDataTypeDefinition, wireQueryParameterV2ToQueryParameterDefinition, wireQueryTypeV2ToSdkQueryDefinition, wireQueryTypeV2ToSdkQueryDefinitionNoParams };
|
|
317
405
|
//# sourceMappingURL=index.js.map
|
|
318
406
|
//# sourceMappingURL=index.js.map
|
package/build/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/wirePropertyV2ToSdkPropertyDefinition.ts","../../src/__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.ts","../../src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts","../../src/wireObjectTypeFullMetadataToSdkObjectTypeDefinition.ts","../../src/isNullableQueryDataType.ts","../../src/wireQueryDataTypeToQueryDataTypeDefinition.ts","../../src/wireQueryTypeV2ToSdkQueryDefinition.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: input.nullable == null ? isNullable : input.nullable\n };\n case \"array\":\n {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: true\n };\n }\n default:\n const _ = input.dataType;\n throw new Error(`Unexpected data type ${JSON.stringify(input.dataType)}`);\n }\n}\nfunction objectPropertyTypeToSdkPropertyDefinition(propertyType) {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType.type === \"string\") {\n return \"stringTimeseries\";\n }\n return \"numericTimeseries\";\n default:\n const _ = propertyType;\n throw new Error(`Unexpected data type ${JSON.stringify(propertyType)}`);\n }\n}","/*\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 { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2) {\n return {\n type: \"interface\",\n apiName: interfaceType.apiName,\n displayName: interfaceType.displayName,\n description: interfaceType.description,\n implements: interfaceType.extendsInterfaces,\n properties: Object.fromEntries(Object.entries(interfaceType.properties).map(([key, value]) => {\n return [key, wirePropertyV2ToSdkPropertyDefinition(value, true)];\n })),\n links: {}\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"double\":\n case \"string\":\n case \"boolean\":\n case \"byte\":\n case \"long\":\n case \"short\":\n {\n return input.dataType.type;\n }\n case \"date\":\n {\n return \"datetime\";\n }\n case \"timestamp\":\n {\n return \"timestamp\";\n }\n case \"geopoint\":\n case \"geoshape\":\n case \"decimal\":\n case \"attachment\":\n case \"timeseries\":\n case \"array\":\n case \"marking\":\n case \"float\":\n throw new Error(`Type not supported for primaryKey: ${input.dataType.type}`);\n default:\n const _ = input.dataType;\n throw new Error(`Unknown type encountered for primaryKey: ${input.dataType}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPrimaryKeyTypeDefinition } from \"./wirePropertyV2ToSdkPrimaryKeyTypeDefinition.js\";\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function wireObjectTypeFullMetadataToSdkObjectTypeDefinition(objectTypeWithLink, v2) {\n if (objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey] === undefined) {\n throw new Error(`Primary key ${objectTypeWithLink.objectType.primaryKey} not found in ${objectTypeWithLink.objectType.apiName}`);\n }\n\n // saved ontology.json files may not have this implementsInterfaces2 so we need to handle\n if (objectTypeWithLink.implementsInterfaces2 == null && objectTypeWithLink.implementsInterfaces != null) {\n throw new Error(\"Your ontology.json file is missing the implementsInterfaces2 field. Please regenerate it.\");\n }\n const interfaceMap = objectTypeWithLink.implementsInterfaces2 ? Object.fromEntries(Object.entries(objectTypeWithLink.implementsInterfaces2).map(([interfaceApiName, impl]) => [interfaceApiName, impl.properties])) : {};\n return {\n type: \"object\",\n apiName: objectTypeWithLink.objectType.apiName,\n description: objectTypeWithLink.objectType.description,\n primaryKeyApiName: objectTypeWithLink.objectType.primaryKey,\n primaryKeyType: wirePropertyV2ToSdkPrimaryKeyTypeDefinition(objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey]),\n links: Object.fromEntries(objectTypeWithLink.linkTypes.map(linkType => {\n return [linkType.apiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetType: linkType.objectTypeApiName\n }];\n })),\n properties: Object.fromEntries(Object.entries(objectTypeWithLink.objectType.properties).map(([key, value]) => [key, wirePropertyV2ToSdkPropertyDefinition(value, !(v2 && objectTypeWithLink.objectType.primaryKey === key))])),\n spts: objectTypeWithLink.sharedPropertyTypeMapping,\n inverseSpts: invertProps(objectTypeWithLink.sharedPropertyTypeMapping),\n implements: objectTypeWithLink.implementsInterfaces,\n interfaceMap,\n inverseInterfaceMap: Object.fromEntries(Object.entries(interfaceMap).map(([interfaceApiName, props]) => [interfaceApiName, invertProps(props)]))\n };\n}\nfunction invertProps(a) {\n return a ? Object.fromEntries(Object.entries(a).map(([k, v]) => [v, k])) : undefined;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isNullableQueryDataType(input) {\n if (input.type === \"null\") {\n return true;\n }\n if (input.type === \"union\") {\n return input.unionTypes.some(t => isNullableQueryDataType(t));\n }\n return false;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNullableQueryDataType } from \"./isNullableQueryDataType.js\";\nexport function wireQueryDataTypeToQueryDataTypeDefinition(input) {\n switch (input.type) {\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"attachment\":\n case \"boolean\":\n case \"date\":\n case \"string\":\n case \"timestamp\":\n return {\n type: input.type,\n nullable: false\n };\n case \"object\":\n return {\n type: \"object\",\n object: input.objectTypeApiName,\n nullable: false\n };\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: input.objectTypeApiName,\n nullable: false\n };\n case \"array\":\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n multiplicity: true\n };\n case \"set\":\n return {\n type: \"set\",\n set: wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n nullable: false\n };\n case \"union\":\n const allowNulls = isNullableQueryDataType(input);\n\n // special case for a union where one half is nullable to skip the union step and just allow nulls directly\n if (allowNulls && input.unionTypes.length === 2) {\n const nonNull = input.unionTypes.find(t => t.type != null);\n if (nonNull) {\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(nonNull),\n nullable: true\n };\n }\n }\n return {\n type: \"union\",\n union: input.unionTypes.reduce((acc, t) => {\n if (t.type === \"null\") {\n return acc;\n }\n acc.push(wireQueryDataTypeToQueryDataTypeDefinition(t));\n return acc;\n }, []),\n nullable: allowNulls\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: Object.fromEntries(input.fields.map(f => [f.name, wireQueryDataTypeToQueryDataTypeDefinition(f.fieldType)])),\n nullable: false\n };\n case \"twoDimensionalAggregation\":\n return {\n type: \"twoDimensionalAggregation\",\n twoDimensionalAggregation: get2DQueryAggregationProps(input),\n nullable: false\n };\n case \"threeDimensionalAggregation\":\n return {\n type: \"threeDimensionalAggregation\",\n threeDimensionalAggregation: get3DQueryAggregationProps(input),\n nullable: false\n };\n case \"null\":\n case \"unsupported\":\n throw new Error(`Accidentally tried to handle QueryDataType.type ${input.type}`);\n default:\n const _ = input;\n throw new Error(`Unsupported QueryDataType.type ${input.type}`);\n }\n}\nfunction get2DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: input.valueType.type\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: input.valueType.type\n };\n }\n throw new Error(`Cannot create 2D aggregation with ${input.keyType.type} as its type`);\n }\n}\nfunction get3DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n }\n throw new Error(`Cannot create 3D aggregation with ${input.keyType.type} as its type`);\n }\n}\n\n/**\n * Guard against aggregation key types that are allowed by the backend types but are illegal to actually use\n */\nfunction guardInvalidKeyTypes(key) {\n return key.type === \"string\" || key.type === \"boolean\";\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireQueryDataTypeToQueryDataTypeDefinition } from \"./wireQueryDataTypeToQueryDataTypeDefinition.js\";\nexport function wireQueryTypeV2ToSdkQueryDefinition(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([name, parameter]) => [name, wireQueryParameterV2ToQueryParameterDefinition(parameter)])),\n output: wireQueryDataTypeToQueryDataTypeDefinition(input.output)\n };\n}\nexport function wireQueryTypeV2ToSdkQueryDefinitionNoParams(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version\n };\n}\nexport function wireQueryParameterV2ToQueryParameterDefinition(parameter) {\n return {\n description: parameter.description,\n ...wireQueryDataTypeToQueryDataTypeDefinition(parameter.dataType)\n };\n}"]}
|
|
1
|
+
{"version":3,"sources":["../../src/wirePropertyV2ToSdkPropertyDefinition.ts","../../src/__UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition.ts","../../src/getEditedEntities.ts","../../src/wireActionTypeV2ToSdkActionDefinition.ts","../../src/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.ts","../../src/wireObjectTypeFullMetadataToSdkObjectTypeDefinition.ts","../../src/isNullableQueryDataType.ts","../../src/wireQueryDataTypeToQueryDataTypeDefinition.ts","../../src/wireQueryTypeV2ToSdkQueryDefinition.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPropertyDefinition(input, isNullable = true) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"date\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"timeseries\":\n case \"marking\":\n return {\n displayName: input.displayName,\n multiplicity: false,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: input.nullable == null ? isNullable : input.nullable\n };\n case \"array\":\n {\n return {\n displayName: input.displayName,\n multiplicity: true,\n description: input.description,\n type: objectPropertyTypeToSdkPropertyDefinition(input.dataType),\n nullable: true\n };\n }\n default:\n const _ = input.dataType;\n throw new Error(`Unexpected data type ${JSON.stringify(input.dataType)}`);\n }\n}\nfunction objectPropertyTypeToSdkPropertyDefinition(propertyType) {\n switch (propertyType.type) {\n case \"integer\":\n case \"string\":\n case \"byte\":\n case \"decimal\":\n case \"double\":\n case \"float\":\n case \"long\":\n case \"short\":\n case \"boolean\":\n case \"attachment\":\n case \"geopoint\":\n case \"geoshape\":\n case \"timestamp\":\n case \"marking\":\n return propertyType.type;\n case \"date\":\n return \"datetime\";\n case \"array\":\n return objectPropertyTypeToSdkPropertyDefinition(propertyType.subType);\n case \"timeseries\":\n if (propertyType.itemType.type === \"string\") {\n return \"stringTimeseries\";\n }\n return \"numericTimeseries\";\n default:\n const _ = propertyType;\n throw new Error(`Unexpected data type ${JSON.stringify(propertyType)}`);\n }\n}","/*\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 { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function __UNSTABLE_wireInterfaceTypeV2ToSdkObjectDefinition(interfaceType, v2) {\n return {\n type: \"interface\",\n apiName: interfaceType.apiName,\n displayName: interfaceType.displayName,\n description: interfaceType.description,\n implements: interfaceType.extendsInterfaces,\n properties: Object.fromEntries(Object.entries(interfaceType.properties).map(([key, value]) => {\n return [key, wirePropertyV2ToSdkPropertyDefinition(value, true)];\n })),\n links: {}\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function getModifiedEntityTypes(action) {\n const addedObjects = new Set();\n const modifiedObjects = new Set();\n for (const operation of action.operations) {\n switch (operation.type) {\n case \"createObject\":\n addedObjects.add(operation.objectTypeApiName);\n break;\n case \"modifyObject\":\n modifiedObjects.add(operation.objectTypeApiName);\n break;\n case \"deleteObject\":\n case \"createLink\":\n case \"deleteLink\":\n case \"createInterfaceObject\":\n case \"modifyInterfaceObject\":\n break;\n default:\n const _ = operation;\n }\n }\n return {\n addedObjects,\n modifiedObjects\n };\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { getModifiedEntityTypes } from \"./getEditedEntities.js\";\nexport function wireActionTypeV2ToSdkActionDefinition(input) {\n const modifiedEntityTypes = getModifiedEntityTypes(input);\n return {\n type: \"action\",\n apiName: input.apiName,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([key, value]) => [key, wireActionParameterV2ToSdkParameterDefinition(value)])),\n displayName: input.displayName,\n description: input.description,\n modifiedEntities: createModifiedEntities(modifiedEntityTypes.addedObjects, modifiedEntityTypes.modifiedObjects)\n };\n}\nfunction wireActionParameterV2ToSdkParameterDefinition(value) {\n return {\n multiplicity: value.dataType.type === \"array\",\n type: actionPropertyToSdkPropertyDefinition(value.dataType.type === \"array\" ? value.dataType.subType : value.dataType),\n nullable: !value.required,\n description: value.description\n };\n}\nfunction actionPropertyToSdkPropertyDefinition(parameterType) {\n switch (parameterType.type) {\n case \"string\":\n case \"boolean\":\n case \"attachment\":\n case \"double\":\n case \"integer\":\n case \"long\":\n case \"timestamp\":\n case \"marking\":\n return parameterType.type;\n case \"date\":\n return \"datetime\";\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: parameterType.objectTypeApiName\n };\n case \"object\":\n return {\n type: \"object\",\n object: parameterType.objectTypeApiName\n };\n case \"array\":\n return actionPropertyToSdkPropertyDefinition(parameterType.subType);\n }\n}\nfunction createModifiedEntities(addedObjects, modifiedObjects) {\n let entities = {};\n for (const key of addedObjects) {\n entities[key] = {\n created: true,\n modified: false\n };\n }\n for (const key of modifiedObjects) {\n if (entities[key]) {\n entities[key].modified = true;\n } else {\n entities[key] = {\n created: false,\n modified: true\n };\n }\n }\n return entities;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function wirePropertyV2ToSdkPrimaryKeyTypeDefinition(input) {\n switch (input.dataType.type) {\n case \"integer\":\n case \"double\":\n case \"string\":\n case \"boolean\":\n case \"byte\":\n case \"long\":\n case \"short\":\n {\n return input.dataType.type;\n }\n case \"date\":\n {\n return \"datetime\";\n }\n case \"timestamp\":\n {\n return \"timestamp\";\n }\n case \"geopoint\":\n case \"geoshape\":\n case \"decimal\":\n case \"attachment\":\n case \"timeseries\":\n case \"array\":\n case \"marking\":\n case \"float\":\n throw new Error(`Type not supported for primaryKey: ${input.dataType.type}`);\n default:\n const _ = input.dataType;\n throw new Error(`Unknown type encountered for primaryKey: ${input.dataType}`);\n }\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wirePropertyV2ToSdkPrimaryKeyTypeDefinition } from \"./wirePropertyV2ToSdkPrimaryKeyTypeDefinition.js\";\nimport { wirePropertyV2ToSdkPropertyDefinition } from \"./wirePropertyV2ToSdkPropertyDefinition.js\";\nexport function wireObjectTypeFullMetadataToSdkObjectTypeDefinition(objectTypeWithLink, v2) {\n if (objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey] === undefined) {\n throw new Error(`Primary key ${objectTypeWithLink.objectType.primaryKey} not found in ${objectTypeWithLink.objectType.apiName}`);\n }\n\n // saved ontology.json files may not have this implementsInterfaces2 so we need to handle\n if (objectTypeWithLink.implementsInterfaces2 == null && objectTypeWithLink.implementsInterfaces != null) {\n throw new Error(\"Your ontology.json file is missing the implementsInterfaces2 field. Please regenerate it.\");\n }\n const interfaceMap = objectTypeWithLink.implementsInterfaces2 ? Object.fromEntries(Object.entries(objectTypeWithLink.implementsInterfaces2).map(([interfaceApiName, impl]) => [interfaceApiName, impl.properties])) : {};\n return {\n type: \"object\",\n apiName: objectTypeWithLink.objectType.apiName,\n description: objectTypeWithLink.objectType.description,\n primaryKeyApiName: objectTypeWithLink.objectType.primaryKey,\n primaryKeyType: wirePropertyV2ToSdkPrimaryKeyTypeDefinition(objectTypeWithLink.objectType.properties[objectTypeWithLink.objectType.primaryKey]),\n links: Object.fromEntries(objectTypeWithLink.linkTypes.map(linkType => {\n return [linkType.apiName, {\n multiplicity: linkType.cardinality === \"MANY\",\n targetType: linkType.objectTypeApiName\n }];\n })),\n properties: Object.fromEntries(Object.entries(objectTypeWithLink.objectType.properties).map(([key, value]) => [key, wirePropertyV2ToSdkPropertyDefinition(value, !(v2 && objectTypeWithLink.objectType.primaryKey === key))])),\n spts: objectTypeWithLink.sharedPropertyTypeMapping,\n inverseSpts: invertProps(objectTypeWithLink.sharedPropertyTypeMapping),\n implements: objectTypeWithLink.implementsInterfaces,\n interfaceMap,\n inverseInterfaceMap: Object.fromEntries(Object.entries(interfaceMap).map(([interfaceApiName, props]) => [interfaceApiName, invertProps(props)]))\n };\n}\nfunction invertProps(a) {\n return a ? Object.fromEntries(Object.entries(a).map(([k, v]) => [v, k])) : undefined;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport function isNullableQueryDataType(input) {\n if (input.type === \"null\") {\n return true;\n }\n if (input.type === \"union\") {\n return input.unionTypes.some(t => isNullableQueryDataType(t));\n }\n return false;\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNullableQueryDataType } from \"./isNullableQueryDataType.js\";\nexport function wireQueryDataTypeToQueryDataTypeDefinition(input) {\n switch (input.type) {\n case \"double\":\n case \"float\":\n case \"integer\":\n case \"long\":\n case \"attachment\":\n case \"boolean\":\n case \"date\":\n case \"string\":\n case \"timestamp\":\n return {\n type: input.type,\n nullable: false\n };\n case \"object\":\n return {\n type: \"object\",\n object: input.objectTypeApiName,\n nullable: false\n };\n case \"objectSet\":\n return {\n type: \"objectSet\",\n objectSet: input.objectTypeApiName,\n nullable: false\n };\n case \"array\":\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n multiplicity: true\n };\n case \"set\":\n return {\n type: \"set\",\n set: wireQueryDataTypeToQueryDataTypeDefinition(input.subType),\n nullable: false\n };\n case \"union\":\n const allowNulls = isNullableQueryDataType(input);\n\n // special case for a union where one half is nullable to skip the union step and just allow nulls directly\n if (allowNulls && input.unionTypes.length === 2) {\n const nonNull = input.unionTypes.find(t => t.type != null);\n if (nonNull) {\n return {\n ...wireQueryDataTypeToQueryDataTypeDefinition(nonNull),\n nullable: true\n };\n }\n }\n return {\n type: \"union\",\n union: input.unionTypes.reduce((acc, t) => {\n if (t.type === \"null\") {\n return acc;\n }\n acc.push(wireQueryDataTypeToQueryDataTypeDefinition(t));\n return acc;\n }, []),\n nullable: allowNulls\n };\n case \"struct\":\n return {\n type: \"struct\",\n struct: Object.fromEntries(input.fields.map(f => [f.name, wireQueryDataTypeToQueryDataTypeDefinition(f.fieldType)])),\n nullable: false\n };\n case \"twoDimensionalAggregation\":\n return {\n type: \"twoDimensionalAggregation\",\n twoDimensionalAggregation: get2DQueryAggregationProps(input),\n nullable: false\n };\n case \"threeDimensionalAggregation\":\n return {\n type: \"threeDimensionalAggregation\",\n threeDimensionalAggregation: get3DQueryAggregationProps(input),\n nullable: false\n };\n case \"null\":\n case \"unsupported\":\n throw new Error(`Accidentally tried to handle QueryDataType.type ${input.type}`);\n default:\n const _ = input;\n throw new Error(`Unsupported QueryDataType.type ${input.type}`);\n }\n}\nfunction get2DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: input.valueType.type\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: input.valueType.type\n };\n }\n throw new Error(`Cannot create 2D aggregation with ${input.keyType.type} as its type`);\n }\n}\nfunction get3DQueryAggregationProps(input) {\n if (input.keyType.type === \"range\") {\n return {\n keyType: input.keyType.type,\n keySubtype: input.keyType.subType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n } else {\n if (guardInvalidKeyTypes(input.keyType)) {\n return {\n keyType: input.keyType.type,\n valueType: get2DQueryAggregationProps(input.valueType)\n };\n }\n throw new Error(`Cannot create 3D aggregation with ${input.keyType.type} as its type`);\n }\n}\n\n/**\n * Guard against aggregation key types that are allowed by the backend types but are illegal to actually use\n */\nfunction guardInvalidKeyTypes(key) {\n return key.type === \"string\" || key.type === \"boolean\";\n}","/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { wireQueryDataTypeToQueryDataTypeDefinition } from \"./wireQueryDataTypeToQueryDataTypeDefinition.js\";\nexport function wireQueryTypeV2ToSdkQueryDefinition(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version,\n parameters: Object.fromEntries(Object.entries(input.parameters).map(([name, parameter]) => [name, wireQueryParameterV2ToQueryParameterDefinition(parameter)])),\n output: wireQueryDataTypeToQueryDataTypeDefinition(input.output)\n };\n}\nexport function wireQueryTypeV2ToSdkQueryDefinitionNoParams(input) {\n return {\n type: \"query\",\n apiName: input.apiName,\n description: input.description,\n displayName: input.displayName,\n version: input.version\n };\n}\nexport function wireQueryParameterV2ToQueryParameterDefinition(parameter) {\n return {\n description: parameter.description,\n ...wireQueryDataTypeToQueryDataTypeDefinition(parameter.dataType)\n };\n}"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ActionDefinition } from "@osdk/api";
|
|
2
|
+
import type { ActionTypeV2 } from "@osdk/internal.foundry.core";
|
|
3
|
+
export declare function wireActionTypeV2ToSdkActionDefinition(input: ActionTypeV2): ActionDefinition<any, any>;
|
|
4
|
+
//# sourceMappingURL=wireActionTypeV2ToSdkActionDefinition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wireActionTypeV2ToSdkActionDefinition.d.ts","sourceRoot":"","sources":["../../src/wireActionTypeV2ToSdkActionDefinition.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,gBAAgB,EAGjB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAGV,YAAY,EACb,MAAM,6BAA6B,CAAC;AAGrC,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,YAAY,GAClB,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAiB5B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osdk/generator-converters",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.12",
|
|
4
4
|
"description": "",
|
|
5
5
|
"access": "public",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -19,16 +19,16 @@
|
|
|
19
19
|
}
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@osdk/api": "~2.0.0-beta.
|
|
22
|
+
"@osdk/api": "~2.0.0-beta.12"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"ts-expect": "^1.3.0",
|
|
26
26
|
"typescript": "^5.5.4",
|
|
27
27
|
"vitest": "^2.0.4",
|
|
28
28
|
"@osdk/internal.foundry.core": "~0.2.0-beta.7",
|
|
29
|
-
"@osdk/monorepo.api-extractor": "~0.0.0",
|
|
30
29
|
"@osdk/monorepo.tsconfig": "~0.0.0",
|
|
31
|
-
"@osdk/monorepo.tsup": "~0.0.0"
|
|
30
|
+
"@osdk/monorepo.tsup": "~0.0.0",
|
|
31
|
+
"@osdk/monorepo.api-extractor": "~0.0.0"
|
|
32
32
|
},
|
|
33
33
|
"publishConfig": {
|
|
34
34
|
"access": "public"
|