@osdk/generator 0.0.13 → 0.0.14
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 +154 -74
- package/build/js/index.js.map +1 -1
- package/build/js/index.mjs +152 -72
- package/build/js/index.mjs.map +1 -1
- package/build/types/v1.1/backcompat/generateOntologyRuntimeDistDir.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/aggregations/generateAggregationsAggregations.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/aggregations/generateGroupBy.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/aggregations/generateMetrics.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/generateAggregationsDir.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/generateCommonDir.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/generateOntologyProviderDir.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/generatePagingDir.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/ontologyProvider/generateErrors.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/ontologyProvider/generateOntologyMetadata.d.ts +2 -0
- package/build/types/v1.1/backcompat/internal-foundry-ontology-runtime-dist/ontologyProvider/generateResult.d.ts +2 -0
- package/build/types/v1.1/backcompat/util/reexportConsts.d.ts +1 -0
- package/build/types/v1.1/backcompat/util/reexportTypes.d.ts +1 -0
- package/build/types/v1.1/generateBackCompatDeprecatedExports.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 T = require('path');
|
|
4
4
|
var prettier = require('prettier');
|
|
5
|
-
var
|
|
5
|
+
var Be = require('prettier-plugin-organize-imports');
|
|
6
6
|
|
|
7
7
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
8
|
|
|
@@ -24,24 +24,93 @@ function _interopNamespace(e) {
|
|
|
24
24
|
return Object.freeze(n);
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
var
|
|
28
|
-
var
|
|
27
|
+
var T__namespace = /*#__PURE__*/_interopNamespace(T);
|
|
28
|
+
var Be__default = /*#__PURE__*/_interopDefault(Be);
|
|
29
29
|
|
|
30
|
-
function
|
|
31
|
-
`;for(let[f,
|
|
32
|
-
`,
|
|
33
|
-
${
|
|
30
|
+
function I(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:De(t.apiName)}))}}function De(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function x(e){let t=new Set,o=new Set;for(let r of e.operations)switch(r.type){case"createObject":t.add(r.objectTypeApiName);break;case"modifyObject":o.add(r.objectTypeApiName);break;}return {addedObjects:t,modifiedObjects:o}}function i(e){return prettier.format(e,{parser:"typescript",singleQuote:!0,trailingComma:"all",plugins:[Be__default.default],tabWidth:2,printWidth:120})}async function G(e,t,o){let r=new Set,n=[];for(let a of e.actionTypes){let c=Object.entries(a.parameters),l=x(a),y=Array.from(l.addedObjects),g=Array.from(l.modifiedObjects);y.forEach(r.add,r),g.forEach(r.add,r);let s=["/**"];a.description&&s.push(`* ${a.description}`);let m="";if(c.length>0){m=`params: {
|
|
31
|
+
`;for(let[f,A]of c){m+=`"${f}"`,m+=A.required?": ":"?: ";let R=Q(A.dataType,r);m+=`${R};
|
|
32
|
+
`,s.push(`* @param {${R}} params.${f}`);}m+="}, ";}s.push("*/"),n.push(`
|
|
33
|
+
${s.join(`
|
|
34
34
|
`)}
|
|
35
|
-
${a.apiName}<O extends ActionExecutionOptions>(${
|
|
36
|
-
Promise<Result<ActionResponseFromOptions<O, Edits<${
|
|
35
|
+
${a.apiName}<O extends ActionExecutionOptions>(${m}options?: O):
|
|
36
|
+
Promise<Result<ActionResponseFromOptions<O, Edits<${y.length>0?y.join(" | "):"void"}, ${g.length>0?g.join(" | "):"void"}>>, ActionError>>;`);}await t.mkdir(o,{recursive:!0}),await t.writeFile(T__namespace.default.join(o,"Actions.ts"),await i(`
|
|
37
37
|
import type { ObjectSet, LocalDate, Timestamp, Attachment, Edits, ActionExecutionOptions, ActionError, Result, ActionResponseFromOptions } from "@osdk/legacy-client";
|
|
38
|
-
${Array.from(
|
|
38
|
+
${Array.from(r).map(a=>`import type { ${a} } from "../objects/${a}";`).join(`
|
|
39
39
|
`)}
|
|
40
40
|
export interface Actions {
|
|
41
41
|
${n.join(`
|
|
42
42
|
`)}
|
|
43
43
|
}
|
|
44
|
-
`));}function
|
|
44
|
+
`));}function Q(e,t){switch(e.type){case"objectSet":{let r=e.objectTypeApiName;return t.add(r),`ObjectSet<${r}>`}case"object":{let r=e.objectTypeApiName;return t.add(r),`${r} | ${r}["__primaryKey"]`}case"array":return `Array<${Q(e.subType,t)}>`;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}`)}}function u(e){return `
|
|
45
|
+
import { ${e.map(t=>`${t} as OG_${t}`).join(", ")}} from "@osdk/legacy-client";
|
|
46
|
+
|
|
47
|
+
${e.map(t=>`
|
|
48
|
+
/** @deprecated submodule imports arent public api **/
|
|
49
|
+
export const ${t} = OG_${t};
|
|
50
|
+
`).join(`
|
|
51
|
+
|
|
52
|
+
`)}
|
|
53
|
+
`}function p(e,t="",o=Ve(t)){return `
|
|
54
|
+
import type { ${e.map(r=>`${r} as OG_${r}`).join(", ")}} from "@osdk/legacy-client";
|
|
55
|
+
|
|
56
|
+
${e.map(r=>`
|
|
57
|
+
/** @deprecated submodule imports arent public api **/
|
|
58
|
+
export type ${r}${t} = OG_${r}${o};
|
|
59
|
+
`).join(`
|
|
60
|
+
|
|
61
|
+
`)}
|
|
62
|
+
`}var Me=/<(.*?)>/,ve=/^\s?(.+?)( extends .*?)?( = .*?)?\s?$/;function Ve(e){return e.length===0?"":`<${Me.exec(e)?.[1]?.split(",")?.map(o=>ve.exec(o)?.[1]??o)?.join(",")}>`}async function K(e,t){await e.writeFile(T__namespace.join(t,"Aggregations.ts"),await i(`
|
|
63
|
+
import { LocalDate, Timestamp } from "@osdk/legacy-client";
|
|
64
|
+
`+p(["Double","Rangeable","MetricValue","Date","BucketKey","BucketValue","TimeUnit","BucketGroup","Metrics","AggregatableProperties","AggregationClause"])+p(["Range"],"<T extends Rangeable>","<T>")+p(["BaseGroupBy"],"<_T extends BucketValue = BucketValue>")+p(["Duration"],"<_T extends Timestamp | LocalDate = Timestamp | LocalDate>")+p(["AggregatableProperty","MultipleAggregationsOperations"],"<_T extends MetricValue = MetricValue>")+p(["AggregationGroup"],"<TMetrics extends Metrics | MetricValue, TBucketGroup extends BucketGroup>")+p(["Bucketing"],"<_T extends string , _X extends BucketValue>")+p(["AggregationResult"],"<TBucketGroup extends BucketGroup, TMetrics extends Metrics | MetricValue>")+p(["BaseBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends BucketValue, Kind extends string>")+p(["ExactValueBucketing","InternalBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends BucketValue>")+p(["RangeBucketing","FixedWidthBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends Range<Rangeable>>")+p(["DurationBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends Date>")+p(["InternalBucketingVisitor"],"<TBucketKey extends BucketKey, T extends BucketValue, R>")+p(["AggregationBuilderResult"],"<T, TMultipleAggregationProperties>")+p(["AggregatablePropertiesForResult","AggregatablePropertyNamesForResult"],"<TAggregatableProperties, TResult extends MetricValue>")+u(["assertBucketingInternal","visitInternalBucketing"])+p(["AggregatableObjectSetStep"],"<TAggregatableProperties, TMultipleAggregationProperties, TBucketableProperties, TBucketGroup extends BucketGroup = {}>")+p(["GroupedTerminalAggregationOperations"],"<TAggregatableProperties, TMultipleAggregationProperties, TBucketGroup extends BucketGroup = {}>")));}async function _(e,t){await e.mkdir(T__namespace.join(t,"groupBy"),{recursive:!0});let o=["BooleanGroupBy","LocalDateGroupBy","NumericGroupBy","StringGroupBy","TimestampGroupBy"],r=[...o,"GroupKeyType"];for(let n of r)await e.writeFile(T__namespace.join(t,"groupBy",`${n}.ts`),await i(`export {${n}} from "./index";`));await e.writeFile(T__namespace.join(t,"groupBy","index.ts"),await i('import { Bucketing, BucketKey, Duration, Range, Rangeable } from "../Aggregations";'+u(o)+p(o,"<T extends BucketKey>")+`export {GroupKeyType} from "@osdk/legacy-client";
|
|
65
|
+
`));}async function U(e,t){let o=T__namespace.join(t,"metrics");await e.mkdir(o,{recursive:!0}),await e.writeFile(T__namespace.join(o,"metrics.ts"),await i('export {MetricValueType} from "@osdk/legacy-client";')),await e.writeFile(T__namespace.join(o,"ApproximateDistinctCountAggregatableProperty.ts"),await i(u(["ApproximateDistinctCountAggregatableProperty"])+p(["ApproximateDistinctCountAggregatableProperty"]))),await e.writeFile(T__namespace.join(o,"MultipleAggregatableProperty.ts"),await i(`
|
|
66
|
+
import { Double, MetricValue, MultipleAggregationsOperations } from "../Aggregations";
|
|
67
|
+
import { MetricValueType } from "./metrics";
|
|
68
|
+
`+u(["MultipleAggregatableProperty"])+p(["MultipleAggregatableProperty"],"<TResult extends MetricValue = Double>")));for(let r of ["DefaultAggregatableProperty","LocalDatePropertyMetric","NumericPropertyMetric","TimestampPropertyMetric"])await e.writeFile(T__namespace.join(o,`${r}.ts`),await i(`
|
|
69
|
+
import { MultipleAggregatableProperty } from "./MultipleAggregatableProperty";
|
|
70
|
+
`+u([r])));await e.writeFile(T__namespace.join(o,"index.ts"),await i(`
|
|
71
|
+
export * from "./ApproximateDistinctCountAggregatableProperty";
|
|
72
|
+
export * from "./DefaultAggregatableProperty";
|
|
73
|
+
export * from "./LocalDatePropertyMetric";
|
|
74
|
+
export * from "./metrics";
|
|
75
|
+
export * from "./MultipleAggregatableProperty";
|
|
76
|
+
export * from "./NumericPropertyMetric";
|
|
77
|
+
export * from "./TimestampPropertyMetric";
|
|
78
|
+
`));}async function q(e,t){let o=T__namespace.join(t,"aggregations");await e.mkdir(o,{recursive:!0}),await _(e,o),await K(e,o),await U(e,o),await e.writeFile(T__namespace.join(o,"index.ts"),await i(`
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
export * from "./Aggregations";
|
|
83
|
+
export * from "./ComputeStep";
|
|
84
|
+
export * from "./CountOperation";
|
|
85
|
+
export * from "./groupBy";
|
|
86
|
+
export * from "./internalAggregationRequest";
|
|
87
|
+
export * from "./metrics";
|
|
88
|
+
`)),await e.writeFile(T__namespace.join(o,"ComputeStep.ts"),await i(`
|
|
89
|
+
import { ObjectSetDefinition } from "../baseTypes";
|
|
90
|
+
import { FoundryClientOptions } from "../client";
|
|
91
|
+
import { AggregateObjectsError, OntologyMetadata, Result } from "../ontologyProvider";
|
|
92
|
+
import { AggregationClause, AggregationResult, BucketGroup, BucketValue, InternalBucketing, Metrics, MetricValue } from "./Aggregations";
|
|
93
|
+
`+u(["ComputeStep"])+p(["ComputeStep"],"<TBucketGroup extends BucketGroup, TMetrics extends Metrics | MetricValue> ")+p(["AggregationComputeStep"],"<TBucketGroup extends BucketGroup, TMetrics extends Metrics | MetricValue>")+`
|
|
94
|
+
|
|
95
|
+
`)),await e.writeFile(T__namespace.join(o,"CountOperation.ts"),await i(""+u(["CountOperation","isCountOperation"])+p(["CountOperation"]))),await e.writeFile(T__namespace.join(o,"internalAggregationRequest.ts"),await i(p(["InternalAggregationRequest"])));}async function J(e,t){await e.writeFile(T__namespace.join(t,"Errors.ts"),await i(p(["PermissionDenied","Unauthorized","InvalidAggregationRangeValue","MalformedPropertyFilters","PropertiesNotFilterable","ParametersNotFound","ApplyActionFailed","PropertyTypesSearchNotSupported","InvalidParameterValue","QueryTimeExceededLimit","CompositePrimaryKeyNotSupported","PropertyBaseTypeNotSupported","PropertiesNotSearchable","AttachmentNotFound","ObjectTypeNotFound","InvalidGroupId","OntologySyncing","ActionNotFound","ParameterObjectSetRidNotFound","LinkTypeNotFound","InvalidRangeQuery","ActionParameterObjectNotFound","InvalidPropertyValue","PropertiesNotSortable","FunctionExecutionTimedOut","InvalidFields","ActionTypeNotFound","ObjectTypeNotSynced","OntologyEditsExceededLimit","AggregationGroupCountExceededLimit","InvalidContentType","PropertiesNotFound","FunctionInvalidInput","InvalidSortOrder","QueryDepthExceededLimit","InvalidPropertyFiltersCombination","ObjectsExceededLimit","DuplicateOrderBy","FunctionEncounteredUserFacingError","InvalidUserId","QueryNotFound","InvalidAggregationRange","ParameterObjectNotFound","QueryMemoryExceededLimit","InvalidContentLength","OntologyNotFound","ActionParameterObjectTypeNotFound","UnknownParameter","InvalidSortType","PropertyFiltersNotSupported","ActionValidationFailed","MultipleGroupByOnFieldNotSupported","LinkedObjectNotFound","ActionEditedPropertiesNotFound","InvalidPropertyFilterValue","QueryEncounteredUserFacingError","AttachmentSizeExceededLimit","ObjectNotFound","PropertyApiNameNotFound","ParameterTypeNotSupported","InvalidAggregationRangePropertyType","MissingParameter"])));}async function Y(e,t){await e.writeFile(T__namespace.join(t,"OntologyMetadata.ts"),await i(p(["OntologyMetadata"])));}async function X(e,t){await e.writeFile(T__namespace.join(t,"Result.ts"),await i(`import {FoundryApiError} from "@osdk/legacy-client";
|
|
96
|
+
`+p(["Ok","Err"],"<T>")+p(["Result"],"<V, E = FoundryApiError>","<V,E>")+u(["isOk","isErr","visitError"])+p(["ErrorVisitor"],"<E extends FoundryApiError, R>","<E,R>")+p(["ExtractKeysWithType"],"<T, K extends keyof T>","<T,K>")));}async function H(e,t){let o=T__namespace.join(t,"ontologyProvider");await e.mkdir(o,{recursive:!0}),await J(e,o),await Y(e,o),await X(e,o),await e.writeFile(T__namespace.join(o,"index.ts"),await i(`
|
|
97
|
+
|
|
98
|
+
export * from "./Errors";
|
|
99
|
+
export * from "./OntologyMetadata";
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
// export * from "./Result";
|
|
103
|
+
`));}async function ee(e,t){let o=T__namespace.join(e,"paging");await t.mkdir(o,{recursive:!0}),await t.writeFile(T__namespace.join(o,"index.ts"),await i('export * from "./Page";')),await t.writeFile(T__namespace.join(o,"Page.ts"),await i(p(["Page"],"<T>")));}async function te(e,t){let o=T__namespace.join(e,"internal","@foundry","ontology-runtime","dist");await t.mkdir(o,{recursive:!0}),await H(t,o),await q(t,o),await ee(o,t),await t.writeFile(T__namespace.join(o,"index.ts"),await i(`
|
|
104
|
+
export * from "./aggregations";
|
|
105
|
+
// export * from "./baseTypes";
|
|
106
|
+
|
|
107
|
+
// export * from "./filters";
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
export * from "./ontologyProvider";
|
|
112
|
+
export * from "./paging";
|
|
113
|
+
`));}async function re(e,t){await te(t,e);}async function oe(e,t){await e.writeFile(T__namespace.default.join(t,"FoundryClient.ts"),await i(`
|
|
45
114
|
import { BaseFoundryClient } from "@osdk/legacy-client";
|
|
46
115
|
import type { Auth, FoundryClientOptions } from "@osdk/legacy-client";
|
|
47
116
|
import { Ontology } from "./Ontology";
|
|
@@ -54,7 +123,7 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:se(r.
|
|
|
54
123
|
get ontology(): Ontology {
|
|
55
124
|
return super.ontology;
|
|
56
125
|
}
|
|
57
|
-
}`));}async function
|
|
126
|
+
}`));}async function ie(e,t){await e.mkdir(t,{recursive:!0}),await e.writeFile(T__namespace.join(t,"index.ts"),await i(`
|
|
58
127
|
export {
|
|
59
128
|
ActionExecutionMode,
|
|
60
129
|
ActionResponse,
|
|
@@ -109,6 +178,11 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:se(r.
|
|
|
109
178
|
ListLinkedObjectsError,
|
|
110
179
|
ListObjectsError,
|
|
111
180
|
LoadObjectSetError,
|
|
181
|
+
ObjectSetAggregateArg,
|
|
182
|
+
ObjectSetFilterArg,
|
|
183
|
+
ObjectSetGroupByArg,
|
|
184
|
+
ObjectSetMultipleAggregateArg,
|
|
185
|
+
ObjectSetOrderByArg,
|
|
112
186
|
Page,
|
|
113
187
|
PermissionDenied,
|
|
114
188
|
QueryError,
|
|
@@ -121,19 +195,19 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:se(r.
|
|
|
121
195
|
Unauthorized,
|
|
122
196
|
UnknownError,
|
|
123
197
|
} from '@osdk/legacy-client';
|
|
124
|
-
export { Ontology } from "./Ontology";
|
|
198
|
+
export type { Ontology } from "./Ontology";
|
|
125
199
|
export { FoundryClient } from "./FoundryClient";
|
|
126
|
-
`));}function
|
|
200
|
+
`));}function S(e,t){return e.map(o=>{let r=t?.get(o);return r?`${o}: ${r}`:o}).join(",")}function N(e,t){return e.map(o=>`${o}: typeof ${t?.get(o)??o}`).join(",")}async function ne(e,t,o){let r=Object.keys(e.objectTypes),n=e.actionTypes.map(s=>s.apiName),a=e.queryTypes.map(s=>s.apiName),c=new Map,l=new Map,y=new Set(r);for(let s of n)y.has(s)?c.set(s,`${s}Action`):y.add(s);for(let s of a)y.has(s)&&l.set(s,`${s}Query`);let g=(s,m)=>{let f=m.get(s);return f?`${s} as ${f}`:s};await t.writeFile(T__namespace.default.join(o,"Ontology.ts"),await i(`
|
|
127
201
|
import type { OntologyDefinition } from "@osdk/api";
|
|
128
202
|
import type { Ontology as ClientOntology } from "@osdk/legacy-client";
|
|
129
203
|
import type { Objects } from "./ontology/objects/Objects";
|
|
130
204
|
import type { Actions } from "./ontology/actions/Actions";
|
|
131
205
|
import type { Queries } from "./ontology/queries/Queries";
|
|
132
|
-
${
|
|
206
|
+
${r.map(s=>`import {${s}} from "./ontology/objects/${s}";`).join(`
|
|
133
207
|
`)}
|
|
134
|
-
${n.map(
|
|
208
|
+
${n.map(s=>`import {${g(s,c)}} from "./ontology/actions/${s}";`).join(`
|
|
135
209
|
`)}
|
|
136
|
-
${a.map(
|
|
210
|
+
${a.map(s=>`import {${g(s,l)}} from "./ontology/queries/${s}";`).join(`
|
|
137
211
|
`)}
|
|
138
212
|
|
|
139
213
|
export const Ontology : {
|
|
@@ -143,13 +217,13 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:se(r.
|
|
|
143
217
|
userAgent: "foundry-typescript-osdk/0.0.1",
|
|
144
218
|
},
|
|
145
219
|
objects: {
|
|
146
|
-
${
|
|
220
|
+
${N(r)}
|
|
147
221
|
},
|
|
148
222
|
actions: {
|
|
149
|
-
${
|
|
223
|
+
${N(n,c)}
|
|
150
224
|
},
|
|
151
225
|
queries: {
|
|
152
|
-
${
|
|
226
|
+
${N(a,l)}
|
|
153
227
|
},
|
|
154
228
|
} = {
|
|
155
229
|
metadata: {
|
|
@@ -158,111 +232,117 @@ function F(e){return {...e,actionTypes:e.actionTypes.map(r=>({...r,apiName:se(r.
|
|
|
158
232
|
userAgent: "foundry-typescript-osdk/0.0.1" as const,
|
|
159
233
|
},
|
|
160
234
|
objects: {
|
|
161
|
-
${
|
|
235
|
+
${S(r)}
|
|
162
236
|
},
|
|
163
237
|
actions: {
|
|
164
|
-
${
|
|
238
|
+
${S(n,c)}
|
|
165
239
|
},
|
|
166
240
|
queries: {
|
|
167
|
-
${
|
|
241
|
+
${S(a,l)}
|
|
168
242
|
}
|
|
169
|
-
} satisfies OntologyDefinition<${
|
|
243
|
+
} satisfies OntologyDefinition<${r.map(s=>`"${s}"`).join("|")}, ${e.actionTypes.map(s=>`"${s.apiName}"`).join("|")}, ${e.queryTypes.map(s=>`"${s.apiName}"`).join("|")}>;
|
|
170
244
|
|
|
171
245
|
export interface Ontology extends ClientOntology<typeof Ontology> {
|
|
172
246
|
objects: Objects;
|
|
173
247
|
actions: Actions;
|
|
174
248
|
queries: Queries;
|
|
175
|
-
}`));}async function
|
|
249
|
+
}`));}async function se(e,t,o){await t.mkdir(o,{recursive:!0}),await t.writeFile(T__namespace.default.join(o,"Objects.ts"),await i(`
|
|
176
250
|
import { BaseObjectSet } from "@osdk/legacy-client";
|
|
177
|
-
${Array.from(Object.keys(e.objectTypes)).map(
|
|
251
|
+
${Array.from(Object.keys(e.objectTypes)).map(r=>`import type { ${r} } from "./${r}";`).join(`
|
|
178
252
|
`)}
|
|
179
253
|
|
|
180
254
|
export interface Objects {
|
|
181
|
-
${Object.keys(e.objectTypes).map(
|
|
255
|
+
${Object.keys(e.objectTypes).map(r=>`${r} : BaseObjectSet<${r}>;`).join(`
|
|
182
256
|
`)}
|
|
183
257
|
}
|
|
184
|
-
;`));}async function
|
|
185
|
-
|
|
258
|
+
;`));}async function pe(e,t,o){await t.mkdir(o,{recursive:!0});for(let{apiName:r}of Object.values(e.objectTypes)){let n=T.join(o,`${r}.ts`),a=[];a.push('import { ObjectSetAggregateArg, ObjectSetFilterArg, ObjectSetGroupByArg, ObjectSetMultipleAggregateArg, ObjectSetOrderByArg } from "@osdk/legacy-client";'),a.push(`import { ${r} } from "../${r}";`),a.push(""),a.push(`/** @deprecated Use ObjectSetFilterArg<${r}> instead */`,`export type ${r}Filter = ObjectSetFilterArg<${r}>;`),a.push(`/** @deprecated Use ObjectSetOrderByArg<${r}> instead */`,`export type ${r}OrderBy = ObjectSetOrderByArg<${r}>;`),a.push(`/** @deprecated Use ObjectSetGroupByArg<${r}> instead */`,`export type ${r}GroupByProperties = ObjectSetGroupByArg<${r}>;`),a.push(`/**
|
|
259
|
+
* Aggregation properties for ${r}
|
|
260
|
+
* @deprecated Use ObjectSetAggregateArg<${r}> instead
|
|
261
|
+
*/`,`export type ${r}AggregationProperties = ObjectSetAggregateArg<${r}>;`),a.push(`/**
|
|
262
|
+
* Multiple aggregation properties for ${r}.
|
|
263
|
+
* @deprecated Use ObjectSetMultipleAggregateArg<${r}> instead
|
|
264
|
+
*/`,`export type ${r}MultipleAggregationProperties = ObjectSetMultipleAggregateArg<${r}>;`),await t.writeFile(n,a.join(`
|
|
265
|
+
`));}}async function me(e,t){await e.mkdir(t,{recursive:!0}),await e.writeFile(T__namespace.join(t,"index.ts"),await i(`
|
|
186
266
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
187
|
-
`));}function
|
|
267
|
+
`));}function ue(e){let t=x(e);return {apiName:e.apiName,parameters:Object.fromEntries(Object.entries(e.parameters).map(([o,r])=>[o,Qe(r)])),displayName:e.displayName,description:e.description,modifiedEntities:Le(t.addedObjects,t.modifiedObjects)}}function Qe(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:B(e.dataType),nullable:!e.required,description:e.description};case"array":return {multiplicity:!0,type:B(e.dataType),nullable:!e.required,description:e.description}}}function B(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 B(e.subType)}}function Le(e,t){let o={};for(let r of e)o[r]={created:!0,modified:!1};for(let r of t)o[r]?o[r].modified=!0:o[r]={created:!1,modified:!0};return o}async function le(e,t,o){await t.mkdir(o,{recursive:!0}),await Promise.all(e.actionTypes.map(async r=>{let n=new Set(Ke(r));await t.writeFile(T__namespace.default.join(o,`${r.apiName}.ts`),await i(`
|
|
188
268
|
import { ActionDefinition } from "@osdk/api";
|
|
189
269
|
|
|
190
|
-
export const ${
|
|
191
|
-
${e.actionTypes.map(
|
|
270
|
+
export const ${r.apiName} = ${JSON.stringify(ue(r),null,2)} satisfies ActionDefinition<"${r.apiName}", ${n.size>0?[...n].map(a=>`"${a}"`).join("|"):"never"}>;`));})),await t.writeFile(T__namespace.default.join(o,"index.ts"),await i(`
|
|
271
|
+
${e.actionTypes.map(r=>`export * from "./${r.apiName}";`).join(`
|
|
192
272
|
`)}
|
|
193
|
-
`));}function
|
|
194
|
-
${Array.from(o).map(
|
|
273
|
+
`));}function Ke(e){let t=Object.values(e.parameters).flatMap(({dataType:r})=>{let n=ge(r);return n?[n]:[]});return [...e.operations.flatMap(r=>{switch(r.type){case"createObject":return [r.objectTypeApiName];case"modifyObject":return [r.objectTypeApiName];case"deleteObject":case"createLink":case"deleteLink":return []}}),...t]}function ge(e){switch(e.type){case"objectSet":case"object":return e.objectTypeApiName;case"array":return ge(e.subType);case"string":case"boolean":case"attachment":case"date":case"double":case"integer":case"long":case"timestamp":return}}function de(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 fe(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:E(e.dataType),nullable:!0};case"array":return {multiplicity:!0,description:e.description,type:E(e.dataType),nullable:!0};default:e.dataType;throw new Error(`Unexpected data type ${JSON.stringify(e.dataType)}`)}}function E(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 E(e.subType);case"timeseries":return e.itemType.type==="string"?"stringTimeseries":"numericTimeseries";default:throw new Error(`Unexecpected data type ${e}`)}}function F(e,t=[]){return {apiName:e.apiName,description:e.description,primaryKeyType:de(e.properties[e.primaryKey]),links:Object.fromEntries(t.map(o=>[o.apiName,{multiplicity:o.cardinality==="MANY",targetType:o.objectTypeApiName}])),properties:Object.fromEntries(Object.entries(e.properties).map(([o,r])=>[o,fe(r)]))}}var _e=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 Te(e){return _e.has(e)}function je(e,t=[]){let o=new Set(t.map(r=>r.objectTypeApiName).filter(r=>r!==e.apiName));return `import type { OntologyObject, LocalDate, Timestamp, GeoShape, GeoPoint, Attachment, TimeSeries, MultiLink, SingleLink } from "@osdk/legacy-client";
|
|
274
|
+
${Array.from(o).map(r=>`import type { ${r} } from "./${r}";`).join(`
|
|
195
275
|
`)}
|
|
196
276
|
|
|
197
|
-
${
|
|
277
|
+
${be(e.description)}export interface ${e.apiName} extends OntologyObject {
|
|
198
278
|
readonly __apiName: "${e.apiName}";
|
|
199
|
-
readonly __primaryKey: ${
|
|
200
|
-
${Object.entries(e.properties).flatMap(([
|
|
201
|
-
readonly ${
|
|
279
|
+
readonly __primaryKey: ${M(e.properties[e.primaryKey].dataType)};
|
|
280
|
+
${Object.entries(e.properties).flatMap(([r,n])=>{let a=M(n.dataType),c=[`${be(n.description)}readonly ${r}: ${a} | undefined`];return Te(r)&&c.push(`/** @deprecated please migrate to '${r}' instead */
|
|
281
|
+
readonly ${r}_: ${a} | undefined`),c}).join(`;
|
|
202
282
|
`)}
|
|
203
|
-
${
|
|
283
|
+
${t.flatMap(r=>[`readonly ${r.apiName}: ${r.cardinality==="MANY"?"MultiLink":"SingleLink"}<${r.objectTypeApiName}>`]).join(`;
|
|
204
284
|
`)}
|
|
205
285
|
}
|
|
206
|
-
`}function
|
|
286
|
+
`}function M(e){switch(e.type){case"string":return "string";case"boolean":return "boolean";case"array":return M(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 be(e){return e?`/**
|
|
207
287
|
* ${e}
|
|
208
288
|
*/
|
|
209
|
-
`:""}async function
|
|
289
|
+
`:""}async function $e(e,t,o){await t.mkdir(o,{recursive:!0}),await Promise.all(Object.values(e.objectTypes).map(async r=>{let n=e.linkTypes[r.apiName],a=new Set(n?.map(c=>c.objectTypeApiName));await t.writeFile(T__namespace.default.join(o,`${r.apiName}.ts`),await i(`
|
|
210
290
|
import { ObjectDefinition } from "@osdk/api";
|
|
211
|
-
${
|
|
291
|
+
${je(r,n)}
|
|
212
292
|
|
|
213
|
-
export const ${
|
|
214
|
-
${Object.keys(e.objectTypes).map(
|
|
293
|
+
export const ${r.apiName} = ${JSON.stringify(F(r,n),null,2)} satisfies ObjectDefinition<"${r.apiName}", ${a.size>0?[...a].map(c=>`"${c}"`).join("|"):"never"}>;`));})),await t.writeFile(T__namespace.default.join(o,"index.ts"),await i(`
|
|
294
|
+
${Object.keys(e.objectTypes).map(r=>`export * from "./${r}";`).join(`
|
|
215
295
|
`)}
|
|
216
296
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
217
297
|
|
|
218
|
-
`));}function
|
|
298
|
+
`));}function j(e){return e.type==="null"?!0:e.type==="union"?e.unionTypes.some(t=>j(t)):!1}function d(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 {...d(e.subType),multiplicity:!0};case"set":return {type:{type:"set",set:d(e.subType)},nullable:!1};case"union":let t=j(e);if(t&&e.unionTypes.length===2){let r=e.unionTypes.find(n=>n.type!==null);if(r)return {...d(r),nullable:!0}}return {type:{type:"union",union:e.unionTypes.reduce((r,n)=>(n.type==="null"||r.push(d(n)),r),[])},nullable:t};case"struct":return {type:{type:"struct",struct:Object.fromEntries(e.fields.map(r=>[r.name,d(r.fieldType)]))},nullable:!1};case"twoDimensionalAggregation":return {type:{type:"twoDimensionalAggregation",twoDimensionalAggregation:v(e)}};case"threeDimensionalAggregation":return {type:{type:"threeDimensionalAggregation",threeDimensionalAggregation:Ue(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 v(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:e.valueType.type};if(Ae(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 Ue(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:v(e.valueType)};if(Ae(e.keyType))return {keyType:e.keyType.type,valueType:v(e.valueType)};throw new Error(`Cannot create 3D aggregation with ${e.keyType.type} as its type`)}function Ae(e){return e.type==="string"||e.type==="boolean"}function Oe(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(([t,o])=>[t,qe(o)])),output:d(e.output)}}function qe(e){return {description:e.description,dataType:d(e.dataType)}}async function he(e,t,o){await t.mkdir(o,{recursive:!0}),await Promise.all(e.queryTypes.map(async r=>{let n=ze(r);await t.writeFile(T__namespace.default.join(o,`${r.apiName}.ts`),await i(`
|
|
219
299
|
import { QueryDefinition } from "@osdk/api";
|
|
220
300
|
|
|
221
|
-
export const ${
|
|
222
|
-
${e.queryTypes.map(
|
|
301
|
+
export const ${r.apiName} = ${JSON.stringify(Oe(r))} satisfies QueryDefinition<"${r.apiName}", ${n.length>0?n.map(a=>`"${a}"`).join("|"):"never"}>;`));})),await t.writeFile(T__namespace.default.join(o,"index.ts"),await i(`
|
|
302
|
+
${e.queryTypes.map(r=>`export * from "./${r.apiName}";`).join(`
|
|
223
303
|
`)}
|
|
224
|
-
`));}function
|
|
225
|
-
${
|
|
304
|
+
`));}function ze(e){let t=new Set;for(let{dataType:o}of Object.values(e.parameters))O(o,t);return O(e.output,t),Array.from(t)}function O(e,t){switch(e.type){case"array":case"set":O(e.subType,t);return;case"object":t.add(e.objectTypeApiName);return;case"objectSet":t.add(e.objectTypeApiName);return;case"struct":for(let r of Object.values(e.fields))O(r.fieldType,t);return;case"union":for(let r of e.unionTypes)O(r,t);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,t,o){let r=new Set,n=[];for(let a of e.queryTypes){let c=["/**"];a.description&&c.push(`* ${a.description}`);let l=w(a.output,r,!0),y=[];for(let[s,m]of Object.entries(a.parameters)){let f=j(m.dataType),A=w(m.dataType,r,!1);y.push(`"${s}"${f?"?":""}: ${A}`),c.push(`* @param {${Se(A)}} params.${s}${m.description?` - ${m.description}`:""}`);}let g=y.length===0?"":`params: { ${y.join("; ")} }`;c.push(`* @returns ${Se(l)}`,"*/"),n.push(`
|
|
305
|
+
${c.join(`
|
|
226
306
|
`)}
|
|
227
|
-
${a.apiName}(${
|
|
228
|
-
`);}await
|
|
307
|
+
${a.apiName}(${g}): Promise<Result<QueryResponse<${l}>, QueryError>>;
|
|
308
|
+
`);}await t.mkdir(o,{recursive:!0}),await t.writeFile(T__namespace.default.join(o,"Queries.ts"),await i(`
|
|
229
309
|
import type { QueryResponse, QueryError, Result, Timestamp, LocalDate, Range, Attachment, ObjectSet, TwoDimensionalAggregation, ThreeDimensionalAggregation } from "@osdk/legacy-client";
|
|
230
|
-
${Array.from(
|
|
310
|
+
${Array.from(r).map(a=>`import type { ${a} } from "../objects/${a}";`).join(`
|
|
231
311
|
`)}
|
|
232
312
|
|
|
233
313
|
export interface Queries {
|
|
234
314
|
${n.join(`
|
|
235
315
|
`)}
|
|
236
316
|
}
|
|
237
|
-
`));}function
|
|
238
|
-
`)} }`;case"union":return e.unionTypes.map(a=>
|
|
239
|
-
${
|
|
240
|
-
${
|
|
317
|
+
`));}function w(e,t,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<${w(e.subType,t,o)}>`;case"object":{let a=e.objectTypeApiName;return t.add(a),o?a:`${a} | ${a}["__primaryKey"]`}case"objectSet":{let a=e.objectTypeApiName;return t.add(a),`ObjectSet<${a}>`}case"set":return `Set<${w(e.subType,t,o)}>`;case"struct":return `{ ${e.fields.map(a=>{let c=j(a.fieldType);return `${a.name}${c?"?":""}: ${w(a.fieldType,t,o)}`}).join(`,
|
|
318
|
+
`)} }`;case"union":return e.unionTypes.map(a=>w(a,t,o)).filter(a=>a!=="null").join("|");case"twoDimensionalAggregation":return e.valueType,`TwoDimensionalAggregation<
|
|
319
|
+
${V(e.keyType)},
|
|
320
|
+
${ke(e.valueType)}
|
|
241
321
|
>`;case"threeDimensionalAggregation":return `ThreeDimensionalAggregation<
|
|
242
|
-
${
|
|
243
|
-
${
|
|
244
|
-
${
|
|
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
|
|
322
|
+
${V(e.keyType)},
|
|
323
|
+
${V(e.valueType.keyType)},
|
|
324
|
+
${ke(e.valueType.valueType)}
|
|
325
|
+
>`;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 V(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<${We(e.subType)}>`;default:throw new Error(`Unknown TwoDimensionalAggregation keyType ${e.type}`)}}function We(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 ke(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 Se(e){return e.replace(/\s/g,"")}async function Ye(e,t,o){let r=T__namespace.join(o,"ontology","objects"),n=T__namespace.join(o,"ontology","actions"),a=T__namespace.join(o,"ontology","queries"),c=I(e);await oe(t,o),await ne(c,t,o),await me(t,T__namespace.join(o,"ontology")),await se(c,t,r),await pe(c,t,T__namespace.join(r,"objects-api")),await $e(c,t,r),await G(c,t,n),await le(c,t,n),await Ne(c,t,a),await he(c,t,a),await ie(t,o),await re(t,o);}function Fe(e){return `
|
|
246
326
|
export interface ${e.apiName} extends ObjectDefinition<"${e.apiName}", "${e.apiName}">{
|
|
247
327
|
apiName: "${e.apiName}";
|
|
248
328
|
properties: {
|
|
249
|
-
${Object.entries(e.properties).map(([
|
|
329
|
+
${Object.entries(e.properties).map(([t,o])=>`
|
|
250
330
|
/**
|
|
251
331
|
* ${o.description??""}
|
|
252
332
|
**/
|
|
253
|
-
${
|
|
333
|
+
${t}: {
|
|
254
334
|
type: "${o.dataType.type}";
|
|
255
|
-
displayName: "${o.displayName??
|
|
335
|
+
displayName: "${o.displayName??t}";
|
|
256
336
|
}
|
|
257
337
|
|
|
258
338
|
`)}
|
|
259
339
|
}
|
|
260
340
|
}
|
|
261
|
-
`}async function
|
|
341
|
+
`}async function Ze(e,t,o){t.writeFile(T__namespace.default.join(o,"index.ts"),await i(`
|
|
262
342
|
export { Ontology } from "./Ontology";
|
|
263
|
-
`));let
|
|
343
|
+
`));let r=Object.keys(e.objectTypes);t.writeFile(T__namespace.default.join(o,"Ontology.ts"),await i(`
|
|
264
344
|
import type { OntologyDefinition } from "@osdk/api";
|
|
265
|
-
${
|
|
345
|
+
${r.map(n=>`import {${n}} from "./objects/${n}";`).join(`
|
|
266
346
|
`)}
|
|
267
347
|
|
|
268
348
|
import { OntologyMetadata } from "./OntologyMetadata";
|
|
@@ -270,20 +350,20 @@ ${r.flatMap(t=>[`readonly ${t.apiName}: ${t.cardinality==="MANY"?"MultiLink":"Si
|
|
|
270
350
|
export const Ontology = {
|
|
271
351
|
metadata: OntologyMetadata,
|
|
272
352
|
objects: {
|
|
273
|
-
${
|
|
353
|
+
${r.map(n=>`${n}: ${n},`).join(`
|
|
274
354
|
`)}
|
|
275
355
|
},
|
|
276
|
-
} satisfies OntologyDefinition<${
|
|
277
|
-
`));for(let n of
|
|
356
|
+
} satisfies OntologyDefinition<${r.map(n=>`"${n}"`).join("|")}>;
|
|
357
|
+
`));for(let n of r){let a=e.objectTypes[n];t.writeFile(T__namespace.default.join(o,"objects",`${n}.ts`),await i(`
|
|
278
358
|
|
|
279
359
|
import type { ObjectDefinition } from "@osdk/api";
|
|
280
360
|
|
|
281
|
-
export const ${n} = ${JSON.stringify(
|
|
361
|
+
export const ${n} = ${JSON.stringify(F(a),null,2)} satisfies ${n};
|
|
282
362
|
|
|
283
|
-
${
|
|
363
|
+
${Fe(a)}
|
|
284
364
|
`));}}
|
|
285
365
|
|
|
286
|
-
exports.generateClientSdkVersionOneDotOne =
|
|
287
|
-
exports.generateClientSdkVersionTwoPointZero =
|
|
366
|
+
exports.generateClientSdkVersionOneDotOne = Ye;
|
|
367
|
+
exports.generateClientSdkVersionTwoPointZero = Ze;
|
|
288
368
|
//# sourceMappingURL=out.js.map
|
|
289
369
|
//# sourceMappingURL=index.js.map
|