@osdk/generator 0.0.12 → 0.0.13
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 +9 -0
- package/build/js/index.js +36 -35
- package/build/js/index.js.map +1 -1
- package/build/js/index.mjs +34 -33
- package/build/js/index.mjs.map +1 -1
- package/build/types/v1.1/generateObjectsInterfaceSupportFiles.d.ts +3 -0
- package/build/types/v1.1/generateObjectsInterfaceSupportFiles.test.d.ts +1 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
package/build/js/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var b = require('path');
|
|
4
4
|
var prettier = require('prettier');
|
|
5
|
-
var
|
|
5
|
+
var pe = require('prettier-plugin-organize-imports');
|
|
6
6
|
|
|
7
7
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
8
|
|
|
@@ -24,16 +24,16 @@ function _interopNamespace(e) {
|
|
|
24
24
|
return Object.freeze(n);
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
var
|
|
28
|
-
var
|
|
27
|
+
var b__namespace = /*#__PURE__*/_interopNamespace(b);
|
|
28
|
+
var pe__default = /*#__PURE__*/_interopDefault(pe);
|
|
29
29
|
|
|
30
|
-
function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:
|
|
31
|
-
`;for(let[f,
|
|
30
|
+
function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:se(r.apiName)}))}}function se(e){return e.replace(/-./g,r=>r[1].toUpperCase())}function $(e){let r=new Set,o=new Set;for(let t of e.operations)switch(t.type){case"createObject":r.add(t.objectTypeApiName);break;case"modifyObject":o.add(t.objectTypeApiName);break;}return {addedObjects:r,modifiedObjects:o}}function c(e){return prettier.format(e,{parser:"typescript",singleQuote:!0,trailingComma:"all",plugins:[pe__default.default],tabWidth:2,printWidth:120})}async function Q(e,r,o){let t=new Set,n=[];for(let a of e.actionTypes){let s=Object.entries(a.parameters),y=$(a),m=Array.from(y.addedObjects),l=Array.from(y.modifiedObjects);m.forEach(t.add,t),l.forEach(t.add,t);let i=["/**"];a.description&&i.push(`* ${a.description}`);let p="";if(s.length>0){p=`params: {
|
|
31
|
+
`;for(let[f,T]of s){p+=`"${f}"`,p+=T.required?": ":"?: ";let E=P(T.dataType,t);p+=`${E};
|
|
32
32
|
`,i.push(`* @param {${E}} params.${f}`);}p+="}, ";}i.push("*/"),n.push(`
|
|
33
33
|
${i.join(`
|
|
34
34
|
`)}
|
|
35
35
|
${a.apiName}<O extends ActionExecutionOptions>(${p}options?: O):
|
|
36
|
-
Promise<Result<ActionResponseFromOptions<O, Edits<${m.length>0?m.join(" | "):"void"}, ${l.length>0?l.join(" | "):"void"}>>, ActionError>>;`);}await r.mkdir(o,{recursive:!0}),await r.writeFile(
|
|
36
|
+
Promise<Result<ActionResponseFromOptions<O, Edits<${m.length>0?m.join(" | "):"void"}, ${l.length>0?l.join(" | "):"void"}>>, ActionError>>;`);}await r.mkdir(o,{recursive:!0}),await r.writeFile(b__namespace.default.join(o,"Actions.ts"),await c(`
|
|
37
37
|
import type { ObjectSet, LocalDate, Timestamp, Attachment, Edits, ActionExecutionOptions, ActionError, Result, ActionResponseFromOptions } from "@osdk/legacy-client";
|
|
38
38
|
${Array.from(t).map(a=>`import type { ${a} } from "../objects/${a}";`).join(`
|
|
39
39
|
`)}
|
|
@@ -41,7 +41,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.
|
|
|
41
41
|
${n.join(`
|
|
42
42
|
`)}
|
|
43
43
|
}
|
|
44
|
-
`));}function P(e,r){switch(e.type){case"objectSet":{let t=e.objectTypeApiName;return r.add(t),`ObjectSet<${t}>`}case"object":{let t=e.objectTypeApiName;return r.add(t),`${t} | ${t}["__primaryKey"]`}case"array":return `Array<${P(e.subType,r)}>`;case"string":return "string";case"boolean":return "boolean";case"attachment":return "Attachment";case"date":return "LocalDate";case"double":case"integer":case"long":return "number";case"timestamp":return "Timestamp";default:throw new Error(`Unsupported action parameter type: ${e}`)}}async function v(e,r){await e.writeFile(
|
|
44
|
+
`));}function P(e,r){switch(e.type){case"objectSet":{let t=e.objectTypeApiName;return r.add(t),`ObjectSet<${t}>`}case"object":{let t=e.objectTypeApiName;return r.add(t),`${t} | ${t}["__primaryKey"]`}case"array":return `Array<${P(e.subType,r)}>`;case"string":return "string";case"boolean":return "boolean";case"attachment":return "Attachment";case"date":return "LocalDate";case"double":case"integer":case"long":return "number";case"timestamp":return "Timestamp";default:throw new Error(`Unsupported action parameter type: ${e}`)}}async function v(e,r){await e.writeFile(b__namespace.default.join(r,"FoundryClient.ts"),await c(`
|
|
45
45
|
import { BaseFoundryClient } from "@osdk/legacy-client";
|
|
46
46
|
import type { Auth, FoundryClientOptions } from "@osdk/legacy-client";
|
|
47
47
|
import { Ontology } from "./Ontology";
|
|
@@ -54,7 +54,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.
|
|
|
54
54
|
get ontology(): Ontology {
|
|
55
55
|
return super.ontology;
|
|
56
56
|
}
|
|
57
|
-
}`));}async function
|
|
57
|
+
}`));}async function C(e,r){await e.mkdir(r,{recursive:!0}),await e.writeFile(b__namespace.join(r,"index.ts"),await c(`
|
|
58
58
|
export {
|
|
59
59
|
ActionExecutionMode,
|
|
60
60
|
ActionResponse,
|
|
@@ -123,7 +123,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.
|
|
|
123
123
|
} from '@osdk/legacy-client';
|
|
124
124
|
export { Ontology } from "./Ontology";
|
|
125
125
|
export { FoundryClient } from "./FoundryClient";
|
|
126
|
-
`));}function w(e,r){return e.map(o=>{let t=r?.get(o);return t?`${o}: ${t}`:o}).join(",")}function h(e,r){return e.map(o=>`${o}: typeof ${r?.get(o)??o}`).join(",")}async function
|
|
126
|
+
`));}function w(e,r){return e.map(o=>{let t=r?.get(o);return t?`${o}: ${t}`:o}).join(",")}function h(e,r){return e.map(o=>`${o}: typeof ${r?.get(o)??o}`).join(",")}async function I(e,r,o){let t=Object.keys(e.objectTypes),n=e.actionTypes.map(i=>i.apiName),a=e.queryTypes.map(i=>i.apiName),s=new Map,y=new Map,m=new Set(t);for(let i of n)m.has(i)?s.set(i,`${i}Action`):m.add(i);for(let i of a)m.has(i)&&y.set(i,`${i}Query`);let l=(i,p)=>{let f=p.get(i);return f?`${i} as ${f}`:i};await r.writeFile(b__namespace.default.join(o,"Ontology.ts"),await c(`
|
|
127
127
|
import type { OntologyDefinition } from "@osdk/api";
|
|
128
128
|
import type { Ontology as ClientOntology } from "@osdk/legacy-client";
|
|
129
129
|
import type { Objects } from "./ontology/objects/Objects";
|
|
@@ -172,7 +172,7 @@ export interface Ontology extends ClientOntology<typeof Ontology> {
|
|
|
172
172
|
objects: Objects;
|
|
173
173
|
actions: Actions;
|
|
174
174
|
queries: Queries;
|
|
175
|
-
}`));}async function
|
|
175
|
+
}`));}async function L(e,r,o){await r.mkdir(o,{recursive:!0}),await r.writeFile(b__namespace.default.join(o,"Objects.ts"),await c(`
|
|
176
176
|
import { BaseObjectSet } from "@osdk/legacy-client";
|
|
177
177
|
${Array.from(Object.keys(e.objectTypes)).map(t=>`import type { ${t} } from "./${t}";`).join(`
|
|
178
178
|
`)}
|
|
@@ -181,50 +181,51 @@ export interface Ontology extends ClientOntology<typeof Ontology> {
|
|
|
181
181
|
${Object.keys(e.objectTypes).map(t=>`${t} : BaseObjectSet<${t}>;`).join(`
|
|
182
182
|
`)}
|
|
183
183
|
}
|
|
184
|
-
;`));}async function
|
|
184
|
+
;`));}async function V(e,r,o){await r.mkdir(o,{recursive:!0});for(let{apiName:t}of Object.values(e.objectTypes)){let n=b.join(o,`${t}.ts`),a=[];a.push('import { ObjectSetAggregateArg, ObjectSetFilterArg, ObjectSetGroupByArg, ObjectSetMultipleAggregateArg, ObjectSetOrderByArg } from "@osdk/legacy-client";'),a.push(`import { ${t} } from "../${t}";`),a.push(""),a.push(`export type ${t}Filter = ObjectSetFilterArg<${t}>;`),a.push(`export type ${t}OrderBy = ObjectSetOrderByArg<${t}>;`),a.push(`export type ${t}GroupByProperties = ObjectSetGroupByArg<${t}>;`),a.push(`/** Aggregation properties for ${t}. */`,`export type ${t}AggregationProperties = ObjectSetAggregateArg<${t}>;`),a.push(`/** Multiple aggregation properties for ${t}. */`,`export type ${t}MultipleAggregationProperties = ObjectSetMultipleAggregateArg<${t}>;`),await r.writeFile(n,a.join(`
|
|
185
|
+
`));}}async function _(e,r){await e.mkdir(r,{recursive:!0}),await e.writeFile(b__namespace.join(r,"index.ts"),await c(`
|
|
185
186
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
186
|
-
`));}function
|
|
187
|
+
`));}function q(e){let r=$(e);return {apiName:e.apiName,parameters:Object.fromEntries(Object.entries(e.parameters).map(([o,t])=>[o,de(t)])),displayName:e.displayName,description:e.description,modifiedEntities:ge(r.addedObjects,r.modifiedObjects)}}function de(e){switch(e.dataType.type){case"string":case"boolean":case"object":case"attachment":case"date":case"double":case"integer":case"long":case"objectSet":case"timestamp":return {multiplicity:!1,type:A(e.dataType),nullable:!e.required,description:e.description};case"array":return {multiplicity:!0,type:A(e.dataType),nullable:!e.required,description:e.description}}}function A(e){switch(e.type){case"string":case"boolean":case"attachment":case"double":case"integer":case"long":case"timestamp":return e.type;case"date":return "datetime";case"objectSet":return {type:"objectSet",objectSet:e.objectTypeApiName};case"object":return {type:"object",object:e.objectTypeApiName};case"array":return A(e.subType)}}function ge(e,r){let o={};for(let t of e)o[t]={created:!0,modified:!1};for(let t of r)o[t]?o[t].modified=!0:o[t]={created:!1,modified:!0};return o}async function K(e,r,o){await r.mkdir(o,{recursive:!0}),await Promise.all(e.actionTypes.map(async t=>{let n=new Set(be(t));await r.writeFile(b__namespace.default.join(o,`${t.apiName}.ts`),await c(`
|
|
187
188
|
import { ActionDefinition } from "@osdk/api";
|
|
188
189
|
|
|
189
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
190
|
+
export const ${t.apiName} = ${JSON.stringify(q(t),null,2)} satisfies ActionDefinition<"${t.apiName}", ${n.size>0?[...n].map(a=>`"${a}"`).join("|"):"never"}>;`));})),await r.writeFile(b__namespace.default.join(o,"index.ts"),await c(`
|
|
190
191
|
${e.actionTypes.map(t=>`export * from "./${t.apiName}";`).join(`
|
|
191
192
|
`)}
|
|
192
|
-
`));}function
|
|
193
|
+
`));}function be(e){let r=Object.values(e.parameters).flatMap(({dataType:t})=>{let n=G(t);return n?[n]:[]});return [...e.operations.flatMap(t=>{switch(t.type){case"createObject":return [t.objectTypeApiName];case"modifyObject":return [t.objectTypeApiName];case"deleteObject":case"createLink":case"deleteLink":return []}}),...r]}function G(e){switch(e.type){case"objectSet":case"object":return e.objectTypeApiName;case"array":return G(e.subType);case"string":case"boolean":case"attachment":case"date":case"double":case"integer":case"long":case"timestamp":return}}function U(e){switch(e.dataType.type){case"integer":case"double":case"string":case"boolean":case"attachment":case"byte":case"decimal":case"float":case"geopoint":case"geoshape":case"long":case"short":return e.dataType.type;case"date":return "datetime";case"timestamp":return "timestamp";case"timeseries":case"array":throw new Error(`Type not supported for primaryKey: ${e.dataType.type}`);default:e.dataType;throw new Error(`Unknown type encountered for primaryKey: ${e.dataType}`)}}function z(e){switch(e.dataType.type){case"integer":case"string":case"byte":case"decimal":case"double":case"float":case"long":case"short":case"boolean":case"date":case"attachment":case"geopoint":case"geoshape":case"timestamp":case"timeseries":return {multiplicity:!1,description:e.description,type:S(e.dataType),nullable:!0};case"array":return {multiplicity:!0,description:e.description,type:S(e.dataType),nullable:!0};default:e.dataType;throw new Error(`Unexpected data type ${JSON.stringify(e.dataType)}`)}}function S(e){switch(e.type){case"integer":case"string":case"byte":case"decimal":case"double":case"float":case"long":case"short":case"boolean":case"attachment":case"geopoint":case"geoshape":case"timestamp":return e.type;case"date":return "datetime";case"array":return S(e.subType);case"timeseries":return e.itemType.type==="string"?"stringTimeseries":"numericTimeseries";default:throw new Error(`Unexecpected data type ${e}`)}}function O(e,r=[]){return {apiName:e.apiName,description:e.description,primaryKeyType:U(e.properties[e.primaryKey]),links:Object.fromEntries(r.map(o=>[o.apiName,{multiplicity:o.cardinality==="MANY",targetType:o.objectTypeApiName}])),properties:Object.fromEntries(Object.entries(e.properties).map(([o,t])=>[o,z(t)]))}}var Te=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","enum","export","extends","false","finally","for","function","if","import","in","instanceof","new","null","return","super","switch","this","throw","true","try","typeof","var","void","while","with","implements","interface","let","package","private","protected","public","static","yield"]);function J(e){return Te.has(e)}function Y(e,r=[]){let o=new Set(r.map(t=>t.objectTypeApiName).filter(t=>t!==e.apiName));return `import type { OntologyObject, LocalDate, Timestamp, GeoShape, GeoPoint, Attachment, TimeSeries, MultiLink, SingleLink } from "@osdk/legacy-client";
|
|
193
194
|
${Array.from(o).map(t=>`import type { ${t} } from "./${t}";`).join(`
|
|
194
195
|
`)}
|
|
195
196
|
|
|
196
|
-
${
|
|
197
|
+
${W(e.description)}export interface ${e.apiName} extends OntologyObject {
|
|
197
198
|
readonly __apiName: "${e.apiName}";
|
|
198
|
-
readonly __primaryKey: ${
|
|
199
|
-
${Object.entries(e.properties).flatMap(([t,n])=>{let a=
|
|
199
|
+
readonly __primaryKey: ${k(e.properties[e.primaryKey].dataType)};
|
|
200
|
+
${Object.entries(e.properties).flatMap(([t,n])=>{let a=k(n.dataType),s=[`${W(n.description)}readonly ${t}: ${a} | undefined`];return J(t)&&s.push(`/** @deprecated please migrate to '${t}' instead */
|
|
200
201
|
readonly ${t}_: ${a} | undefined`),s}).join(`;
|
|
201
202
|
`)}
|
|
202
203
|
${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"SingleLink"}<${t.objectTypeApiName}>`]).join(`;
|
|
203
204
|
`)}
|
|
204
205
|
}
|
|
205
|
-
`}function
|
|
206
|
+
`}function k(e){switch(e.type){case"string":return "string";case"boolean":return "boolean";case"array":return k(e.subType)+"[]";case"integer":return "number";case"attachment":return "Attachment";case"byte":return "number";case"date":return "LocalDate";case"decimal":return "number";case"double":return "number";case"float":return "number";case"geopoint":return "GeoPoint";case"geoshape":return "GeoShape";case"long":return "number";case"short":return "number";case"timestamp":return "Timestamp";case"timeseries":return e.itemType.type==="string"?"TimeSeries<string>":"TimeSeries<number>";default:throw new Error(`Unknown property type ${e}`)}}function W(e){return e?`/**
|
|
206
207
|
* ${e}
|
|
207
208
|
*/
|
|
208
|
-
`:""}async function
|
|
209
|
+
`:""}async function H(e,r,o){await r.mkdir(o,{recursive:!0}),await Promise.all(Object.values(e.objectTypes).map(async t=>{let n=e.linkTypes[t.apiName],a=new Set(n?.map(s=>s.objectTypeApiName));await r.writeFile(b__namespace.default.join(o,`${t.apiName}.ts`),await c(`
|
|
209
210
|
import { ObjectDefinition } from "@osdk/api";
|
|
210
|
-
${
|
|
211
|
+
${Y(t,n)}
|
|
211
212
|
|
|
212
|
-
export const ${t.apiName} = ${JSON.stringify(O(t,n),null,2)} satisfies ObjectDefinition<"${t.apiName}", ${a.size>0?[...a].map(s=>`"${s}"`).join("|"):"never"}>;`));})),await r.writeFile(
|
|
213
|
+
export const ${t.apiName} = ${JSON.stringify(O(t,n),null,2)} satisfies ObjectDefinition<"${t.apiName}", ${a.size>0?[...a].map(s=>`"${s}"`).join("|"):"never"}>;`));})),await r.writeFile(b__namespace.default.join(o,"index.ts"),await c(`
|
|
213
214
|
${Object.keys(e.objectTypes).map(t=>`export * from "./${t}";`).join(`
|
|
214
215
|
`)}
|
|
215
216
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
216
217
|
|
|
217
|
-
`));}function d(e){return e.type==="null"?!0:e.type==="union"?e.unionTypes.some(r=>d(r)):!1}function u(e){switch(e.type){case"double":case"float":case"integer":case"long":case"attachment":case"boolean":case"date":case"string":case"timestamp":return {type:e.type,nullable:!1};case"object":return {type:{type:"object",object:e.objectTypeApiName},nullable:!1};case"objectSet":return {type:{type:"objectSet",objectSet:e.objectTypeApiName},nullable:!1};case"array":return {...u(e.subType),multiplicity:!0};case"set":return {type:{type:"set",set:u(e.subType)},nullable:!1};case"union":let r=d(e);if(r&&e.unionTypes.length===2){let t=e.unionTypes.find(n=>n.type!==null);if(t)return {...u(t),nullable:!0}}return {type:{type:"union",union:e.unionTypes.reduce((t,n)=>(n.type==="null"||t.push(u(n)),t),[])},nullable:r};case"struct":return {type:{type:"struct",struct:Object.fromEntries(e.fields.map(t=>[t.name,u(t.fieldType)]))},nullable:!1};case"twoDimensionalAggregation":return {type:{type:"twoDimensionalAggregation",twoDimensionalAggregation:N(e)}};case"threeDimensionalAggregation":return {type:{type:"threeDimensionalAggregation",threeDimensionalAggregation:
|
|
218
|
+
`));}function d(e){return e.type==="null"?!0:e.type==="union"?e.unionTypes.some(r=>d(r)):!1}function u(e){switch(e.type){case"double":case"float":case"integer":case"long":case"attachment":case"boolean":case"date":case"string":case"timestamp":return {type:e.type,nullable:!1};case"object":return {type:{type:"object",object:e.objectTypeApiName},nullable:!1};case"objectSet":return {type:{type:"objectSet",objectSet:e.objectTypeApiName},nullable:!1};case"array":return {...u(e.subType),multiplicity:!0};case"set":return {type:{type:"set",set:u(e.subType)},nullable:!1};case"union":let r=d(e);if(r&&e.unionTypes.length===2){let t=e.unionTypes.find(n=>n.type!==null);if(t)return {...u(t),nullable:!0}}return {type:{type:"union",union:e.unionTypes.reduce((t,n)=>(n.type==="null"||t.push(u(n)),t),[])},nullable:r};case"struct":return {type:{type:"struct",struct:Object.fromEntries(e.fields.map(t=>[t.name,u(t.fieldType)]))},nullable:!1};case"twoDimensionalAggregation":return {type:{type:"twoDimensionalAggregation",twoDimensionalAggregation:N(e)}};case"threeDimensionalAggregation":return {type:{type:"threeDimensionalAggregation",threeDimensionalAggregation:je(e)}};case"null":case"unsupported":throw new Error(`Accidentally tried to handle QueryDataType.type ${e.type}`);default:throw new Error(`Unsupported QueryDataType.type ${e.type}`)}}function N(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:e.valueType.type};if(X(e.keyType))return {keyType:e.keyType.type,valueType:e.valueType.type};throw new Error(`Cannot create 2D aggregation with ${e.keyType.type} as its type`)}function je(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:N(e.valueType)};if(X(e.keyType))return {keyType:e.keyType.type,valueType:N(e.valueType)};throw new Error(`Cannot create 3D aggregation with ${e.keyType.type} as its type`)}function X(e){return e.type==="string"||e.type==="boolean"}function ee(e){return {apiName:e.apiName,description:e.description,displayName:e.displayName,rid:e.rid,version:e.version,parameters:Object.fromEntries(Object.entries(e.parameters).map(([r,o])=>[r,$e(o)])),output:u(e.output)}}function $e(e){return {description:e.description,dataType:u(e.dataType)}}async function re(e,r,o){await r.mkdir(o,{recursive:!0}),await Promise.all(e.queryTypes.map(async t=>{let n=we(t);await r.writeFile(b__namespace.default.join(o,`${t.apiName}.ts`),await c(`
|
|
218
219
|
import { QueryDefinition } from "@osdk/api";
|
|
219
220
|
|
|
220
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
221
|
+
export const ${t.apiName} = ${JSON.stringify(ee(t))} satisfies QueryDefinition<"${t.apiName}", ${n.length>0?n.map(a=>`"${a}"`).join("|"):"never"}>;`));})),await r.writeFile(b__namespace.default.join(o,"index.ts"),await c(`
|
|
221
222
|
${e.queryTypes.map(t=>`export * from "./${t.apiName}";`).join(`
|
|
222
223
|
`)}
|
|
223
|
-
`));}function
|
|
224
|
+
`));}function we(e){let r=new Set;for(let{dataType:o}of Object.values(e.parameters))j(o,r);return j(e.output,r),Array.from(r)}function j(e,r){switch(e.type){case"array":case"set":j(e.subType,r);return;case"object":r.add(e.objectTypeApiName);return;case"objectSet":r.add(e.objectTypeApiName);return;case"struct":for(let t of Object.values(e.fields))j(t.fieldType,r);return;case"union":for(let t of e.unionTypes)j(t,r);return;case"attachment":case"boolean":case"date":case"double":case"float":case"integer":case"long":case"null":case"string":case"threeDimensionalAggregation":case"timestamp":case"twoDimensionalAggregation":case"unsupported":return;default:throw new Error(`Cannot find object types from unsupported QueryDataType ${e.type}`)}}async function ne(e,r,o){let t=new Set,n=[];for(let a of e.queryTypes){let s=["/**"];a.description&&s.push(`* ${a.description}`);let y=g(a.output,t,!0),m=[];for(let[i,p]of Object.entries(a.parameters)){let f=d(p.dataType),T=g(p.dataType,t,!1);m.push(`"${i}"${f?"?":""}: ${T}`),s.push(`* @param {${ae(T)}} params.${i}${p.description?` - ${p.description}`:""}`);}let l=m.length===0?"":`params: { ${m.join("; ")} }`;s.push(`* @returns ${ae(y)}`,"*/"),n.push(`
|
|
224
225
|
${s.join(`
|
|
225
226
|
`)}
|
|
226
227
|
${a.apiName}(${l}): Promise<Result<QueryResponse<${y}>, QueryError>>;
|
|
227
|
-
`);}await r.mkdir(o,{recursive:!0}),await r.writeFile(
|
|
228
|
+
`);}await r.mkdir(o,{recursive:!0}),await r.writeFile(b__namespace.default.join(o,"Queries.ts"),await c(`
|
|
228
229
|
import type { QueryResponse, QueryError, Result, Timestamp, LocalDate, Range, Attachment, ObjectSet, TwoDimensionalAggregation, ThreeDimensionalAggregation } from "@osdk/legacy-client";
|
|
229
230
|
${Array.from(t).map(a=>`import type { ${a} } from "../objects/${a}";`).join(`
|
|
230
231
|
`)}
|
|
@@ -236,12 +237,12 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
236
237
|
`));}function g(e,r,o){switch(e.type){case"boolean":return "boolean";case"string":return "string";case"double":case"float":case"integer":case"long":return "number";case"date":return "LocalDate";case"timestamp":return "Timestamp";case"attachment":return "Attachment";case"array":return `Array<${g(e.subType,r,o)}>`;case"object":{let a=e.objectTypeApiName;return r.add(a),o?a:`${a} | ${a}["__primaryKey"]`}case"objectSet":{let a=e.objectTypeApiName;return r.add(a),`ObjectSet<${a}>`}case"set":return `Set<${g(e.subType,r,o)}>`;case"struct":return `{ ${e.fields.map(a=>{let s=d(a.fieldType);return `${a.name}${s?"?":""}: ${g(a.fieldType,r,o)}`}).join(`,
|
|
237
238
|
`)} }`;case"union":return e.unionTypes.map(a=>g(a,r,o)).filter(a=>a!=="null").join("|");case"twoDimensionalAggregation":return e.valueType,`TwoDimensionalAggregation<
|
|
238
239
|
${x(e.keyType)},
|
|
239
|
-
${
|
|
240
|
+
${oe(e.valueType)}
|
|
240
241
|
>`;case"threeDimensionalAggregation":return `ThreeDimensionalAggregation<
|
|
241
242
|
${x(e.keyType)},
|
|
242
243
|
${x(e.valueType.keyType)},
|
|
243
|
-
${
|
|
244
|
-
>`;case"null":return "null";case"unsupported":throw new Error("Cannot generate queries for unsupported type");default:throw new Error(`Cannot generate queries for type ${e.type}`)}}function x(e){switch(e.type){case"boolean":return "boolean";case"double":case"integer":return "number";case"string":return "string";case"date":return "LocalDate";case"timestamp":return "Timestamp";case"range":return `Range<${
|
|
244
|
+
${oe(e.valueType.valueType)}
|
|
245
|
+
>`;case"null":return "null";case"unsupported":throw new Error("Cannot generate queries for unsupported type");default:throw new Error(`Cannot generate queries for type ${e.type}`)}}function x(e){switch(e.type){case"boolean":return "boolean";case"double":case"integer":return "number";case"string":return "string";case"date":return "LocalDate";case"timestamp":return "Timestamp";case"range":return `Range<${Oe(e.subType)}>`;default:throw new Error(`Unknown TwoDimensionalAggregation keyType ${e.type}`)}}function Oe(e){switch(e.type){case"date":return "LocalDate";case"double":case"integer":return "number";case"timestamp":return "Timestamp";default:throw new Error(`Unsupported QueryAggregationRangeSubType ${e.type}`)}}function oe(e){switch(e.type){case"date":return "LocalDate";case"double":return "number";case"timestamp":return "Timestamp";default:throw new Error(`Unsupported QueryAggregationValueType ${e.type}`)}}function ae(e){return e.replace(/\s/g,"")}async function Ae(e,r,o){let t=b__namespace.join(o,"ontology","objects"),n=b__namespace.join(o,"ontology","actions"),a=b__namespace.join(o,"ontology","queries"),s=F(e);await v(r,o),await I(s,r,o),await _(r,b__namespace.join(o,"ontology")),await L(s,r,t),await V(s,r,b__namespace.join(t,"objects-api")),await H(s,r,t),await Q(s,r,n),await K(s,r,n),await ne(s,r,a),await re(s,r,a),await C(r,o);}function ie(e){return `
|
|
245
246
|
export interface ${e.apiName} extends ObjectDefinition<"${e.apiName}", "${e.apiName}">{
|
|
246
247
|
apiName: "${e.apiName}";
|
|
247
248
|
properties: {
|
|
@@ -257,9 +258,9 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
257
258
|
`)}
|
|
258
259
|
}
|
|
259
260
|
}
|
|
260
|
-
`}async function
|
|
261
|
+
`}async function Se(e,r,o){r.writeFile(b__namespace.default.join(o,"index.ts"),await c(`
|
|
261
262
|
export { Ontology } from "./Ontology";
|
|
262
|
-
`));let t=Object.keys(e.objectTypes);r.writeFile(
|
|
263
|
+
`));let t=Object.keys(e.objectTypes);r.writeFile(b__namespace.default.join(o,"Ontology.ts"),await c(`
|
|
263
264
|
import type { OntologyDefinition } from "@osdk/api";
|
|
264
265
|
${t.map(n=>`import {${n}} from "./objects/${n}";`).join(`
|
|
265
266
|
`)}
|
|
@@ -273,16 +274,16 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
273
274
|
`)}
|
|
274
275
|
},
|
|
275
276
|
} satisfies OntologyDefinition<${t.map(n=>`"${n}"`).join("|")}>;
|
|
276
|
-
`));for(let n of t){let a=e.objectTypes[n];r.writeFile(
|
|
277
|
+
`));for(let n of t){let a=e.objectTypes[n];r.writeFile(b__namespace.default.join(o,"objects",`${n}.ts`),await c(`
|
|
277
278
|
|
|
278
279
|
import type { ObjectDefinition } from "@osdk/api";
|
|
279
280
|
|
|
280
281
|
export const ${n} = ${JSON.stringify(O(a),null,2)} satisfies ${n};
|
|
281
282
|
|
|
282
|
-
${
|
|
283
|
+
${ie(a)}
|
|
283
284
|
`));}}
|
|
284
285
|
|
|
285
|
-
exports.generateClientSdkVersionOneDotOne =
|
|
286
|
-
exports.generateClientSdkVersionTwoPointZero =
|
|
286
|
+
exports.generateClientSdkVersionOneDotOne = Ae;
|
|
287
|
+
exports.generateClientSdkVersionTwoPointZero = Se;
|
|
287
288
|
//# sourceMappingURL=out.js.map
|
|
288
289
|
//# sourceMappingURL=index.js.map
|