@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/build/js/index.mjs
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import
|
|
1
|
+
import * as b from 'path';
|
|
2
|
+
import b__default, { join } from 'path';
|
|
3
3
|
import { format } from 'prettier';
|
|
4
|
-
import
|
|
4
|
+
import pe from 'prettier-plugin-organize-imports';
|
|
5
5
|
|
|
6
|
-
function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:
|
|
7
|
-
`;for(let[f,
|
|
6
|
+
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 format(e,{parser:"typescript",singleQuote:!0,trailingComma:"all",plugins:[pe],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: {
|
|
7
|
+
`;for(let[f,T]of s){p+=`"${f}"`,p+=T.required?": ":"?: ";let E=P(T.dataType,t);p+=`${E};
|
|
8
8
|
`,i.push(`* @param {${E}} params.${f}`);}p+="}, ";}i.push("*/"),n.push(`
|
|
9
9
|
${i.join(`
|
|
10
10
|
`)}
|
|
11
11
|
${a.apiName}<O extends ActionExecutionOptions>(${p}options?: O):
|
|
12
|
-
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(
|
|
12
|
+
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__default.join(o,"Actions.ts"),await c(`
|
|
13
13
|
import type { ObjectSet, LocalDate, Timestamp, Attachment, Edits, ActionExecutionOptions, ActionError, Result, ActionResponseFromOptions } from "@osdk/legacy-client";
|
|
14
14
|
${Array.from(t).map(a=>`import type { ${a} } from "../objects/${a}";`).join(`
|
|
15
15
|
`)}
|
|
@@ -17,7 +17,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.
|
|
|
17
17
|
${n.join(`
|
|
18
18
|
`)}
|
|
19
19
|
}
|
|
20
|
-
`));}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(
|
|
20
|
+
`));}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__default.join(r,"FoundryClient.ts"),await c(`
|
|
21
21
|
import { BaseFoundryClient } from "@osdk/legacy-client";
|
|
22
22
|
import type { Auth, FoundryClientOptions } from "@osdk/legacy-client";
|
|
23
23
|
import { Ontology } from "./Ontology";
|
|
@@ -30,7 +30,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.
|
|
|
30
30
|
get ontology(): Ontology {
|
|
31
31
|
return super.ontology;
|
|
32
32
|
}
|
|
33
|
-
}`));}async function
|
|
33
|
+
}`));}async function C(e,r){await e.mkdir(r,{recursive:!0}),await e.writeFile(b.join(r,"index.ts"),await c(`
|
|
34
34
|
export {
|
|
35
35
|
ActionExecutionMode,
|
|
36
36
|
ActionResponse,
|
|
@@ -99,7 +99,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.
|
|
|
99
99
|
} from '@osdk/legacy-client';
|
|
100
100
|
export { Ontology } from "./Ontology";
|
|
101
101
|
export { FoundryClient } from "./FoundryClient";
|
|
102
|
-
`));}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
|
|
102
|
+
`));}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__default.join(o,"Ontology.ts"),await c(`
|
|
103
103
|
import type { OntologyDefinition } from "@osdk/api";
|
|
104
104
|
import type { Ontology as ClientOntology } from "@osdk/legacy-client";
|
|
105
105
|
import type { Objects } from "./ontology/objects/Objects";
|
|
@@ -148,7 +148,7 @@ export interface Ontology extends ClientOntology<typeof Ontology> {
|
|
|
148
148
|
objects: Objects;
|
|
149
149
|
actions: Actions;
|
|
150
150
|
queries: Queries;
|
|
151
|
-
}`));}async function
|
|
151
|
+
}`));}async function L(e,r,o){await r.mkdir(o,{recursive:!0}),await r.writeFile(b__default.join(o,"Objects.ts"),await c(`
|
|
152
152
|
import { BaseObjectSet } from "@osdk/legacy-client";
|
|
153
153
|
${Array.from(Object.keys(e.objectTypes)).map(t=>`import type { ${t} } from "./${t}";`).join(`
|
|
154
154
|
`)}
|
|
@@ -157,50 +157,51 @@ export interface Ontology extends ClientOntology<typeof Ontology> {
|
|
|
157
157
|
${Object.keys(e.objectTypes).map(t=>`${t} : BaseObjectSet<${t}>;`).join(`
|
|
158
158
|
`)}
|
|
159
159
|
}
|
|
160
|
-
;`));}async function
|
|
160
|
+
;`));}async function V(e,r,o){await r.mkdir(o,{recursive:!0});for(let{apiName:t}of Object.values(e.objectTypes)){let n=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(`
|
|
161
|
+
`));}}async function _(e,r){await e.mkdir(r,{recursive:!0}),await e.writeFile(b.join(r,"index.ts"),await c(`
|
|
161
162
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
162
|
-
`));}function
|
|
163
|
+
`));}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__default.join(o,`${t.apiName}.ts`),await c(`
|
|
163
164
|
import { ActionDefinition } from "@osdk/api";
|
|
164
165
|
|
|
165
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
166
|
+
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__default.join(o,"index.ts"),await c(`
|
|
166
167
|
${e.actionTypes.map(t=>`export * from "./${t.apiName}";`).join(`
|
|
167
168
|
`)}
|
|
168
|
-
`));}function
|
|
169
|
+
`));}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";
|
|
169
170
|
${Array.from(o).map(t=>`import type { ${t} } from "./${t}";`).join(`
|
|
170
171
|
`)}
|
|
171
172
|
|
|
172
|
-
${
|
|
173
|
+
${W(e.description)}export interface ${e.apiName} extends OntologyObject {
|
|
173
174
|
readonly __apiName: "${e.apiName}";
|
|
174
|
-
readonly __primaryKey: ${
|
|
175
|
-
${Object.entries(e.properties).flatMap(([t,n])=>{let a=
|
|
175
|
+
readonly __primaryKey: ${k(e.properties[e.primaryKey].dataType)};
|
|
176
|
+
${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 */
|
|
176
177
|
readonly ${t}_: ${a} | undefined`),s}).join(`;
|
|
177
178
|
`)}
|
|
178
179
|
${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"SingleLink"}<${t.objectTypeApiName}>`]).join(`;
|
|
179
180
|
`)}
|
|
180
181
|
}
|
|
181
|
-
`}function
|
|
182
|
+
`}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?`/**
|
|
182
183
|
* ${e}
|
|
183
184
|
*/
|
|
184
|
-
`:""}async function
|
|
185
|
+
`:""}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__default.join(o,`${t.apiName}.ts`),await c(`
|
|
185
186
|
import { ObjectDefinition } from "@osdk/api";
|
|
186
|
-
${
|
|
187
|
+
${Y(t,n)}
|
|
187
188
|
|
|
188
|
-
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(
|
|
189
|
+
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__default.join(o,"index.ts"),await c(`
|
|
189
190
|
${Object.keys(e.objectTypes).map(t=>`export * from "./${t}";`).join(`
|
|
190
191
|
`)}
|
|
191
192
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
192
193
|
|
|
193
|
-
`));}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:
|
|
194
|
+
`));}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__default.join(o,`${t.apiName}.ts`),await c(`
|
|
194
195
|
import { QueryDefinition } from "@osdk/api";
|
|
195
196
|
|
|
196
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
197
|
+
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__default.join(o,"index.ts"),await c(`
|
|
197
198
|
${e.queryTypes.map(t=>`export * from "./${t.apiName}";`).join(`
|
|
198
199
|
`)}
|
|
199
|
-
`));}function
|
|
200
|
+
`));}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(`
|
|
200
201
|
${s.join(`
|
|
201
202
|
`)}
|
|
202
203
|
${a.apiName}(${l}): Promise<Result<QueryResponse<${y}>, QueryError>>;
|
|
203
|
-
`);}await r.mkdir(o,{recursive:!0}),await r.writeFile(
|
|
204
|
+
`);}await r.mkdir(o,{recursive:!0}),await r.writeFile(b__default.join(o,"Queries.ts"),await c(`
|
|
204
205
|
import type { QueryResponse, QueryError, Result, Timestamp, LocalDate, Range, Attachment, ObjectSet, TwoDimensionalAggregation, ThreeDimensionalAggregation } from "@osdk/legacy-client";
|
|
205
206
|
${Array.from(t).map(a=>`import type { ${a} } from "../objects/${a}";`).join(`
|
|
206
207
|
`)}
|
|
@@ -212,12 +213,12 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
212
213
|
`));}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(`,
|
|
213
214
|
`)} }`;case"union":return e.unionTypes.map(a=>g(a,r,o)).filter(a=>a!=="null").join("|");case"twoDimensionalAggregation":return e.valueType,`TwoDimensionalAggregation<
|
|
214
215
|
${x(e.keyType)},
|
|
215
|
-
${
|
|
216
|
+
${oe(e.valueType)}
|
|
216
217
|
>`;case"threeDimensionalAggregation":return `ThreeDimensionalAggregation<
|
|
217
218
|
${x(e.keyType)},
|
|
218
219
|
${x(e.valueType.keyType)},
|
|
219
|
-
${
|
|
220
|
-
>`;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<${
|
|
220
|
+
${oe(e.valueType.valueType)}
|
|
221
|
+
>`;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.join(o,"ontology","objects"),n=b.join(o,"ontology","actions"),a=b.join(o,"ontology","queries"),s=F(e);await v(r,o),await I(s,r,o),await _(r,b.join(o,"ontology")),await L(s,r,t),await V(s,r,b.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 `
|
|
221
222
|
export interface ${e.apiName} extends ObjectDefinition<"${e.apiName}", "${e.apiName}">{
|
|
222
223
|
apiName: "${e.apiName}";
|
|
223
224
|
properties: {
|
|
@@ -233,9 +234,9 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
233
234
|
`)}
|
|
234
235
|
}
|
|
235
236
|
}
|
|
236
|
-
`}async function
|
|
237
|
+
`}async function Se(e,r,o){r.writeFile(b__default.join(o,"index.ts"),await c(`
|
|
237
238
|
export { Ontology } from "./Ontology";
|
|
238
|
-
`));let t=Object.keys(e.objectTypes);r.writeFile(
|
|
239
|
+
`));let t=Object.keys(e.objectTypes);r.writeFile(b__default.join(o,"Ontology.ts"),await c(`
|
|
239
240
|
import type { OntologyDefinition } from "@osdk/api";
|
|
240
241
|
${t.map(n=>`import {${n}} from "./objects/${n}";`).join(`
|
|
241
242
|
`)}
|
|
@@ -249,15 +250,15 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
249
250
|
`)}
|
|
250
251
|
},
|
|
251
252
|
} satisfies OntologyDefinition<${t.map(n=>`"${n}"`).join("|")}>;
|
|
252
|
-
`));for(let n of t){let a=e.objectTypes[n];r.writeFile(
|
|
253
|
+
`));for(let n of t){let a=e.objectTypes[n];r.writeFile(b__default.join(o,"objects",`${n}.ts`),await c(`
|
|
253
254
|
|
|
254
255
|
import type { ObjectDefinition } from "@osdk/api";
|
|
255
256
|
|
|
256
257
|
export const ${n} = ${JSON.stringify(O(a),null,2)} satisfies ${n};
|
|
257
258
|
|
|
258
|
-
${
|
|
259
|
+
${ie(a)}
|
|
259
260
|
`));}}
|
|
260
261
|
|
|
261
|
-
export {
|
|
262
|
+
export { Ae as generateClientSdkVersionOneDotOne, Se as generateClientSdkVersionTwoPointZero };
|
|
262
263
|
//# sourceMappingURL=out.js.map
|
|
263
264
|
//# sourceMappingURL=index.mjs.map
|