@osdk/generator 0.0.6 → 0.0.7
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 +8 -0
- package/build/js/index.js +56 -52
- package/build/js/index.js.map +1 -1
- package/build/js/index.mjs +54 -50
- package/build/js/index.mjs.map +1 -1
- package/build/types/v1.1/generateOntologyIndexFile.d.ts +2 -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 j = require('path');
|
|
4
4
|
var prettier = require('prettier');
|
|
5
|
-
var
|
|
5
|
+
var ce = require('prettier-plugin-organize-imports');
|
|
6
6
|
|
|
7
7
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
8
|
|
|
@@ -24,24 +24,24 @@ function _interopNamespace(e) {
|
|
|
24
24
|
return Object.freeze(n);
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
var
|
|
28
|
-
var
|
|
27
|
+
var j__namespace = /*#__PURE__*/_interopNamespace(j);
|
|
28
|
+
var ce__default = /*#__PURE__*/_interopDefault(ce);
|
|
29
29
|
|
|
30
|
-
function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:
|
|
31
|
-
`;for(let[
|
|
32
|
-
`,y.push(`* @param {${E}} params.${
|
|
30
|
+
function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ie(r.apiName)}))}}function ie(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 s(e){return prettier.format(e,{parser:"typescript",singleQuote:!0,trailingComma:"all",plugins:[ce__default.default],tabWidth:2,printWidth:120})}async function Q(e,r,o){let t=new Set,a=[];for(let n of e.actionTypes){let i=Object.entries(n.parameters),d=$(n),m=Array.from(d.addedObjects),g=Array.from(d.modifiedObjects);m.forEach(t.add,t),g.forEach(t.add,t);let y=["/**"];n.description&&y.push(`* ${n.description}`);let c="";if(i.length>0){c=`params: {
|
|
31
|
+
`;for(let[w,b]of i){c+=`"${w}"`,c+=b.required?": ":"?: ";let E=P(b.dataType,t);c+=`${E};
|
|
32
|
+
`,y.push(`* @param {${E}} params.${w}`);}c+="}, ";}y.push("*/"),a.push(`
|
|
33
33
|
${y.join(`
|
|
34
34
|
`)}
|
|
35
35
|
${n.apiName}<O extends ActionExecutionOptions>(${c}options?: O):
|
|
36
|
-
Promise<Result<ActionResponseFromOptions<O, Edits<${m.length>0?m.join(" | "):"void"}, ${g.length>0?g.join(" | "):"void"}>>, ActionError>>;`);}await r.writeFile(
|
|
36
|
+
Promise<Result<ActionResponseFromOptions<O, Edits<${m.length>0?m.join(" | "):"void"}, ${g.length>0?g.join(" | "):"void"}>>, ActionError>>;`);}await r.writeFile(j__namespace.default.join(o,"ontologyActions.ts"),await s(`
|
|
37
37
|
import type { ObjectSet, LocalDate, Timestamp, Attachment, Edits, ActionExecutionOptions, ActionError, Result, ActionResponseFromOptions } from "@osdk/legacy-client";
|
|
38
|
-
${Array.from(t).map(n=>`import type { ${n} } from "./objects/${n}";`).join(`
|
|
38
|
+
${Array.from(t).map(n=>`import type { ${n} } from "./ontology/objects/${n}";`).join(`
|
|
39
39
|
`)}
|
|
40
40
|
export interface Actions {
|
|
41
41
|
${a.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}`}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}`}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(j__namespace.default.join(r,"FoundryClient.ts"),await s(`
|
|
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:ae(r.
|
|
|
54
54
|
get ontology(): Ontology {
|
|
55
55
|
return super.ontology;
|
|
56
56
|
}
|
|
57
|
-
}`));}async function
|
|
57
|
+
}`));}async function v(e,r){await e.mkdir(r,{recursive:!0}),await e.writeFile(j__namespace.join(r,"index.ts"),await s(`
|
|
58
58
|
export {
|
|
59
59
|
ActionExecutionMode,
|
|
60
60
|
ActionResponse,
|
|
@@ -123,17 +123,17 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ae(r.
|
|
|
123
123
|
} from '@osdk/legacy-client';
|
|
124
124
|
export { Ontology } from "./Ontology";
|
|
125
125
|
export { FoundryClient } from "./FoundryClient";
|
|
126
|
-
`));}function
|
|
126
|
+
`));}function l(e){return e.join(",")}function h(e){return e.map(r=>`${r}: typeof ${r}`).join(",")}async function L(e,r,o){let t=Object.keys(e.objectTypes),a=e.actionTypes.map(i=>i.apiName),n=e.queryTypes.map(i=>i.apiName);await r.writeFile(j__namespace.default.join(o,"Ontology.ts"),await s(`
|
|
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 "./ontologyObjects";
|
|
130
130
|
import type { Actions } from "./ontologyActions";
|
|
131
131
|
import type { Queries } from "./ontologyQueries";
|
|
132
|
-
${t.map(i=>`import {${i}} from "./objects/${i}";`).join(`
|
|
132
|
+
${t.map(i=>`import {${i}} from "./ontology/objects/${i}";`).join(`
|
|
133
133
|
`)}
|
|
134
|
-
${a.map(i=>`import {${i}} from "./actions/${i}";`).join(`
|
|
134
|
+
${a.map(i=>`import {${i}} from "./ontology/actions/${i}";`).join(`
|
|
135
135
|
`)}
|
|
136
|
-
${n.map(i=>`import {${i}} from "./queries/${i}";`).join(`
|
|
136
|
+
${n.map(i=>`import {${i}} from "./ontology/queries/${i}";`).join(`
|
|
137
137
|
`)}
|
|
138
138
|
|
|
139
139
|
export const Ontology : {
|
|
@@ -143,13 +143,13 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ae(r.
|
|
|
143
143
|
userAgent: "foundry-typescript-osdk/0.0.1",
|
|
144
144
|
},
|
|
145
145
|
objects: {
|
|
146
|
-
${
|
|
146
|
+
${h(t)}
|
|
147
147
|
},
|
|
148
148
|
actions: {
|
|
149
|
-
${
|
|
149
|
+
${h(a)}
|
|
150
150
|
},
|
|
151
151
|
queries: {
|
|
152
|
-
${
|
|
152
|
+
${h(n)}
|
|
153
153
|
},
|
|
154
154
|
} = {
|
|
155
155
|
metadata: {
|
|
@@ -158,13 +158,13 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:ae(r.
|
|
|
158
158
|
userAgent: "foundry-typescript-osdk/0.0.1" as const,
|
|
159
159
|
},
|
|
160
160
|
objects: {
|
|
161
|
-
${
|
|
161
|
+
${l(t)}
|
|
162
162
|
},
|
|
163
163
|
actions: {
|
|
164
|
-
${
|
|
164
|
+
${l(a)}
|
|
165
165
|
},
|
|
166
166
|
queries: {
|
|
167
|
-
${
|
|
167
|
+
${l(n)}
|
|
168
168
|
}
|
|
169
169
|
} satisfies OntologyDefinition<${t.map(i=>`"${i}"`).join("|")}, ${e.actionTypes.map(i=>`"${i.apiName}"`).join("|")}, ${e.queryTypes.map(i=>`"${i.apiName}"`).join("|")}>;
|
|
170
170
|
|
|
@@ -172,71 +172,75 @@ 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 R(e,r,o){await r.writeFile(j__namespace.default.join(o,"ontologyObjects.ts"),await s(`
|
|
176
176
|
import { BaseObjectSet } from "@osdk/legacy-client";
|
|
177
|
-
import { ${
|
|
177
|
+
import { ${l(Object.keys(e.objectTypes))} } from "./ontology/objects";
|
|
178
178
|
|
|
179
179
|
export interface Objects {
|
|
180
180
|
${Object.keys(e.objectTypes).map(t=>`${t} : BaseObjectSet<${t}>;`).join(`
|
|
181
181
|
`)}
|
|
182
182
|
}
|
|
183
|
-
;`));}
|
|
183
|
+
;`));}async function M(e,r){await e.mkdir(r,{recursive:!0}),await e.writeFile(j__namespace.join(r,"index.ts"),await s(`
|
|
184
|
+
export type { ObjectSet } from "@osdk/legacy-client";
|
|
185
|
+
`));}function _(e){let r=$(e);return {apiName:e.apiName,parameters:Object.fromEntries(Object.entries(e.parameters).map(([o,t])=>[o,ue(t)])),displayName:e.displayName,description:e.description,modifiedEntities:fe(r.addedObjects,r.modifiedObjects)}}function ue(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 fe(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 a=new Set(de(t));await r.writeFile(j__namespace.default.join(o,`${t.apiName}.ts`),await s(`
|
|
184
186
|
import { ActionDefinition } from "@osdk/api";
|
|
185
187
|
|
|
186
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
188
|
+
export const ${t.apiName} = ${JSON.stringify(_(t),null,2)} satisfies ActionDefinition<"${t.apiName}", ${a.size>0?[...a].map(n=>`"${n}"`).join("|"):"never"}>;`));})),await r.writeFile(j__namespace.default.join(o,"index.ts"),await s(`
|
|
187
189
|
${e.actionTypes.map(t=>`export * from "./${t.apiName}";`).join(`
|
|
188
190
|
`)}
|
|
189
|
-
`));}function
|
|
191
|
+
`));}function de(e){let r=Object.values(e.parameters).flatMap(({dataType:t})=>{let a=U(t);return a?[a]:[]});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 U(e){switch(e.type){case"objectSet":case"object":return e.objectTypeApiName;case"array":return U(e.subType);case"string":case"boolean":case"attachment":case"date":case"double":case"integer":case"long":case"timestamp":return}}function G(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:k(e.dataType),nullable:!0};case"array":return {multiplicity:!0,description:e.description,type:k(e.dataType),nullable:!0};default:e.dataType;throw new Error(`Unexpected data type ${JSON.stringify(e.dataType)}`)}}function k(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 k(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:G(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 ge=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 B(e){return ge.has(e)}function W(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";
|
|
190
192
|
${Array.from(o).map(t=>`import type { ${t} } from "./${t}";`).join(`
|
|
191
193
|
`)}
|
|
192
194
|
|
|
193
|
-
${
|
|
195
|
+
${J(e.description)}export interface ${e.apiName} extends OntologyObject {
|
|
194
196
|
readonly __apiName: "${e.apiName}";
|
|
195
|
-
readonly __primaryKey: ${
|
|
196
|
-
${Object.entries(e.properties).flatMap(([t,a])=>{let n=
|
|
197
|
+
readonly __primaryKey: ${S(e.properties[e.primaryKey].dataType)};
|
|
198
|
+
${Object.entries(e.properties).flatMap(([t,a])=>{let n=S(a.dataType),i=[`${J(a.description)}readonly ${t}: ${n} | undefined`];return B(t)&&i.push(`/** @deprecated please migrate to '${t}' instead */
|
|
197
199
|
readonly ${t}_: ${n} | undefined`),i}).join(`;
|
|
198
200
|
`)}
|
|
199
201
|
${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"SingleLink"}<${t.objectTypeApiName}>`]).join(`;
|
|
200
202
|
`)}
|
|
201
203
|
}
|
|
202
|
-
`}function
|
|
204
|
+
`}function S(e){switch(e.type){case"string":return "string";case"boolean":return "boolean";case"array":return S(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 J(e){return e?`/**
|
|
203
205
|
* ${e}
|
|
204
206
|
*/
|
|
205
|
-
`:""}async function
|
|
207
|
+
`:""}async function Z(e,r,o){await r.mkdir(o,{recursive:!0}),await Promise.all(Object.values(e.objectTypes).map(async t=>{let a=e.linkTypes[t.apiName],n=new Set(a?.map(i=>i.objectTypeApiName));await r.writeFile(j__namespace.default.join(o,`${t.apiName}.ts`),await s(`
|
|
206
208
|
import { ObjectDefinition } from "@osdk/api";
|
|
207
|
-
${
|
|
209
|
+
${W(t,a)}
|
|
208
210
|
|
|
209
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
211
|
+
export const ${t.apiName} = ${JSON.stringify(O(t,a),null,2)} satisfies ObjectDefinition<"${t.apiName}", ${n.size>0?[...n].map(i=>`"${i}"`).join("|"):"never"}>;`));})),await r.writeFile(j__namespace.default.join(o,"index.ts"),await s(`
|
|
210
212
|
${Object.keys(e.objectTypes).map(t=>`export * from "./${t}";`).join(`
|
|
211
213
|
`)}
|
|
212
|
-
|
|
214
|
+
export type { ObjectSet } from "@osdk/legacy-client";
|
|
215
|
+
|
|
216
|
+
`));}function u(e){return e.type==="null"?!0:e.type==="union"?e.unionTypes.some(r=>u(r)):!1}function p(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 {...p(e.subType),multiplicity:!0};case"set":return {type:{type:"set",set:p(e.subType)},nullable:!1};case"union":let r=u(e);if(r&&e.unionTypes.length===2){let t=e.unionTypes.find(a=>a.type!==null);if(t)return {...p(t),nullable:!0}}return {type:{type:"union",union:e.unionTypes.reduce((t,a)=>(a.type==="null"||t.push(p(a)),t),[])},nullable:r};case"struct":return {type:{type:"struct",struct:Object.fromEntries(e.fields.map(t=>[t.name,p(t.fieldType)]))},nullable:!1};case"twoDimensionalAggregation":return {type:{type:"twoDimensionalAggregation",twoDimensionalAggregation:N(e)}};case"threeDimensionalAggregation":return {type:{type:"threeDimensionalAggregation",threeDimensionalAggregation:be(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(H(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 be(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:N(e.valueType)};if(H(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 H(e){return e.type==="string"||e.type==="boolean"}function X(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,Te(o)])),output:p(e.output)}}function Te(e){return {description:e.description,dataType:p(e.dataType)}}async function te(e,r,o){await r.mkdir(o,{recursive:!0}),await Promise.all(e.queryTypes.map(async t=>{let a=je(t);await r.writeFile(j__namespace.default.join(o,`${t.apiName}.ts`),await s(`
|
|
213
217
|
import { QueryDefinition } from "@osdk/api";
|
|
214
218
|
|
|
215
|
-
export const ${t.apiName} = ${JSON.stringify(
|
|
219
|
+
export const ${t.apiName} = ${JSON.stringify(X(t))} satisfies QueryDefinition<"${t.apiName}", ${a.length>0?a.map(n=>`"${n}"`).join("|"):"never"}>;`));})),await r.writeFile(j__namespace.default.join(o,"index.ts"),await s(`
|
|
216
220
|
${e.queryTypes.map(t=>`export * from "./${t.apiName}";`).join(`
|
|
217
221
|
`)}
|
|
218
|
-
`));}function
|
|
222
|
+
`));}function je(e){let r=new Set;for(let{dataType:o}of Object.values(e.parameters))T(o,r);return T(e.output,r),Array.from(r)}function T(e,r){switch(e.type){case"array":case"set":T(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))T(t.fieldType,r);return;case"union":for(let t of e.unionTypes)T(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 ae(e,r,o){let t=new Set,a=[];for(let n of e.queryTypes){let i=["/**"];n.description&&i.push(`* ${n.description}`);let d=f(n.output,t),m=[];for(let[y,c]of Object.entries(n.parameters)){let w=u(c.dataType),b=f(c.dataType,t);m.push(`"${y}"${w?"?":""}: ${b}`),i.push(`* @param {${oe(b)}} params.${y}${c.description?` - ${c.description}`:""}`);}let g=m.length===0?"":`params: { ${m.join("; ")} }`;i.push(`* @returns ${oe(d)}`,"*/"),a.push(`
|
|
219
223
|
${i.join(`
|
|
220
224
|
`)}
|
|
221
225
|
${n.apiName}(${g}): Promise<Result<QueryResponse<${d}>, QueryError>>;
|
|
222
|
-
`);}await r.writeFile(
|
|
226
|
+
`);}await r.writeFile(j__namespace.default.join(o,"ontologyQueries.ts"),await s(`
|
|
223
227
|
import type { QueryResponse, QueryError, Result, Timestamp, LocalDate, Range, Attachment, ObjectSet, TwoDimensionalAggregation, ThreeDimensionalAggregation } from "@osdk/legacy-client";
|
|
224
|
-
${Array.from(t).map(n=>`import type { ${n} } from "./objects/${n}";`).join(`
|
|
228
|
+
${Array.from(t).map(n=>`import type { ${n} } from "./ontology/objects/${n}";`).join(`
|
|
225
229
|
`)}
|
|
226
230
|
|
|
227
231
|
export interface Queries {
|
|
228
232
|
${a.join(`
|
|
229
233
|
`)}
|
|
230
234
|
}
|
|
231
|
-
`));}function f(e,r){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<${f(e.subType,r)}>`;case"object":{let a=e.objectTypeApiName;return r.add(a),a}case"objectSet":{let a=e.objectTypeApiName;return r.add(a),`ObjectSet<${a}>`}case"set":return `Set<${f(e.subType,r)}>`;case"struct":return `{ ${e.fields.map(a=>{let n=
|
|
235
|
+
`));}function f(e,r){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<${f(e.subType,r)}>`;case"object":{let a=e.objectTypeApiName;return r.add(a),a}case"objectSet":{let a=e.objectTypeApiName;return r.add(a),`ObjectSet<${a}>`}case"set":return `Set<${f(e.subType,r)}>`;case"struct":return `{ ${e.fields.map(a=>{let n=u(a.fieldType);return `${a.name}${n?"?":""}: ${f(a.fieldType,r)}`}).join(`,
|
|
232
236
|
`)} }`;case"union":return e.unionTypes.map(a=>f(a,r)).filter(a=>a!=="null").join("|");case"twoDimensionalAggregation":return e.valueType,`TwoDimensionalAggregation<
|
|
233
|
-
${
|
|
234
|
-
${
|
|
237
|
+
${x(e.keyType)},
|
|
238
|
+
${re(e.valueType)}
|
|
235
239
|
>`;case"threeDimensionalAggregation":return `ThreeDimensionalAggregation<
|
|
236
|
-
${
|
|
237
|
-
${
|
|
238
|
-
${
|
|
239
|
-
>`;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
|
|
240
|
+
${x(e.keyType)},
|
|
241
|
+
${x(e.valueType.keyType)},
|
|
242
|
+
${re(e.valueType.valueType)}
|
|
243
|
+
>`;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<${$e(e.subType)}>`;default:throw new Error(`Unknown TwoDimensionalAggregation keyType ${e.type}`)}}function $e(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 re(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 oe(e){return e.replace(/\s/g,"")}async function he(e,r,o){let t=F(e);await V(r,o),await L(t,r,o),await M(r,j__namespace.join(o,"ontology")),await R(t,r,o),await Z(t,r,j__namespace.join(o,"ontology","objects")),await Q(t,r,o),await K(t,r,j__namespace.join(o,"ontology","actions")),await ae(t,r,o),await te(t,r,j__namespace.join(o,"ontology","queries")),await v(r,o);}function ne(e){return `
|
|
240
244
|
export interface ${e.apiName} extends ObjectDefinition<"${e.apiName}", "${e.apiName}">{
|
|
241
245
|
apiName: "${e.apiName}";
|
|
242
246
|
properties: {
|
|
@@ -252,9 +256,9 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
252
256
|
`)}
|
|
253
257
|
}
|
|
254
258
|
}
|
|
255
|
-
`}async function
|
|
259
|
+
`}async function Oe(e,r,o){r.writeFile(j__namespace.default.join(o,"index.ts"),await s(`
|
|
256
260
|
export { Ontology } from "./Ontology";
|
|
257
|
-
`));let t=Object.keys(e.objectTypes);r.writeFile(
|
|
261
|
+
`));let t=Object.keys(e.objectTypes);r.writeFile(j__namespace.default.join(o,"Ontology.ts"),await s(`
|
|
258
262
|
import type { OntologyDefinition } from "@osdk/api";
|
|
259
263
|
${t.map(a=>`import {${a}} from "./objects/${a}";`).join(`
|
|
260
264
|
`)}
|
|
@@ -268,16 +272,16 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
268
272
|
`)}
|
|
269
273
|
},
|
|
270
274
|
} satisfies OntologyDefinition<${t.map(a=>`"${a}"`).join("|")}>;
|
|
271
|
-
`));for(let a of t){let n=e.objectTypes[a];r.writeFile(
|
|
275
|
+
`));for(let a of t){let n=e.objectTypes[a];r.writeFile(j__namespace.default.join(o,"objects",`${a}.ts`),await s(`
|
|
272
276
|
|
|
273
277
|
import type { ObjectDefinition } from "@osdk/api";
|
|
274
278
|
|
|
275
|
-
export const ${a} = ${JSON.stringify(
|
|
279
|
+
export const ${a} = ${JSON.stringify(O(n),null,2)} satisfies ${a};
|
|
276
280
|
|
|
277
|
-
${
|
|
281
|
+
${ne(n)}
|
|
278
282
|
`));}}
|
|
279
283
|
|
|
280
|
-
exports.generateClientSdkVersionOneDotOne =
|
|
281
|
-
exports.generateClientSdkVersionTwoPointZero =
|
|
284
|
+
exports.generateClientSdkVersionOneDotOne = he;
|
|
285
|
+
exports.generateClientSdkVersionTwoPointZero = Oe;
|
|
282
286
|
//# sourceMappingURL=out.js.map
|
|
283
287
|
//# sourceMappingURL=index.js.map
|