@osdk/generator 0.0.15 → 1.0.0
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 +21 -0
- package/build/js/index.cjs +361 -0
- package/build/js/index.cjs.map +1 -0
- package/build/js/index.mjs +137 -141
- package/build/js/index.mjs.map +1 -1
- package/build/types/WireOntologyDefinition.d.ts +1 -10
- package/build/types/shared/wireObjectTypeV2ToSdkObjectConst.d.ts +2 -0
- package/build/types/shared/wireObjectTypeV2ToSdkObjectDefinition.d.ts +3 -3
- package/build/types/shared/wirePropertyV2ToSdkPrimaryKeyTypeDefinition.d.ts +2 -2
- package/build/types/shared/wirePropertyV2ToSdkPropertyDefinition.d.ts +2 -2
- package/build/types/util/test/TodoWireOntology.d.ts +86 -76
- package/build/types/v1.1/generateActions.d.ts +1 -1
- package/build/types/v1.1/generateClientSdkVersionOneDotOne.d.ts +1 -1
- package/build/types/v1.1/generateFoundryClientFile.d.ts +1 -1
- package/build/types/v1.1/generateIndexFile.d.ts +1 -1
- package/build/types/v1.1/generateMetadataFile.d.ts +1 -1
- package/build/types/v1.1/generateObjectsInterfaceFile.d.ts +1 -1
- package/build/types/v1.1/generateObjectsInterfaceSupportFiles.d.ts +1 -1
- package/build/types/v1.1/generatePerActionDataFiles.d.ts +1 -1
- package/build/types/v1.1/generatePerObjectInterfaceAndDataFiles.d.ts +1 -1
- package/build/types/v1.1/generatePerQueryDataFiles.d.ts +1 -1
- package/build/types/v1.1/generateQueries.d.ts +1 -1
- package/build/types/v1.1/wireObjectTypeV2ToV1ObjectInterfaceString.d.ts +2 -2
- package/build/types/v2.0/generateClientSdkVersionTwoPointZero.d.ts +1 -1
- package/build/types/v2.0/generateMetadata.d.ts +3 -0
- package/package.json +10 -6
- package/build/js/index.js +0 -365
- package/build/js/index.js.map +0 -1
package/build/js/index.mjs
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import
|
|
1
|
+
import * as y from 'path';
|
|
2
|
+
import y__default, { join } from 'path';
|
|
3
3
|
import { format } from 'prettier';
|
|
4
|
-
import
|
|
4
|
+
import it from 'prettier-plugin-organize-imports';
|
|
5
5
|
|
|
6
|
-
function
|
|
7
|
-
`;for(let[
|
|
8
|
-
`,m.push(`* @param {${
|
|
6
|
+
function H(e){return {...e,actionTypes:Object.fromEntries(Object.values(e.actionTypes).map(t=>[Z(t.apiName),{...t,apiName:Z(t.apiName)}]))}}function Z(e){return e.replace(/-./g,t=>t[1].toUpperCase())}function B(e){let t=new Set,r=new Set;for(let n of e.operations)switch(n.type){case"createObject":t.add(n.objectTypeApiName);break;case"modifyObject":r.add(n.objectTypeApiName);break;}return {addedObjects:t,modifiedObjects:r}}function o(e){return format(e,{parser:"typescript",singleQuote:!0,trailingComma:"all",plugins:[it],tabWidth:2,printWidth:120})}async function X(e,t,r,n=""){let a=new Set,p=[];for(let s of Object.values(e.actionTypes)){let l=Object.entries(s.parameters),u=B(s),T=Array.from(u.addedObjects),w=Array.from(u.modifiedObjects);T.forEach(a.add,a),w.forEach(a.add,a);let m=["/**"];s.description&&m.push(`* ${s.description}`);let g="";if(l.length>0){g=`params: {
|
|
7
|
+
`;for(let[x,S]of l){g+=`"${x}"`,g+=S.required?": ":"?: ";let Y=ee(S.dataType,a);g+=`${Y};
|
|
8
|
+
`,m.push(`* @param {${Y}} params.${x}`);}g+="}, ";}m.push("*/"),p.push(`
|
|
9
9
|
${m.join(`
|
|
10
10
|
`)}
|
|
11
|
-
${
|
|
12
|
-
Promise<Result<ActionResponseFromOptions<O, Edits<${
|
|
11
|
+
${s.apiName}<O extends ActionExecutionOptions>(${g}options?: O):
|
|
12
|
+
Promise<Result<ActionResponseFromOptions<O, Edits<${T.length>0?T.join(" | "):"void"}, ${w.length>0?w.join(" | "):"void"}>>, ActionError>>;`);}await t.mkdir(r,{recursive:!0}),await t.writeFile(y__default.join(r,"Actions.ts"),await o(`
|
|
13
13
|
import type { ObjectSet, LocalDate, Timestamp, Attachment, Edits, ActionExecutionOptions, ActionError, Result, ActionResponseFromOptions } from "@osdk/legacy-client";
|
|
14
|
-
${Array.from(
|
|
14
|
+
${Array.from(a).map(s=>`import type { ${s} } from "../objects/${s}${n}";`).join(`
|
|
15
15
|
`)}
|
|
16
16
|
export interface Actions {
|
|
17
|
-
${
|
|
17
|
+
${p.join(`
|
|
18
18
|
`)}
|
|
19
19
|
}
|
|
20
|
-
`));}function
|
|
20
|
+
`));}function ee(e,t){switch(e.type){case"objectSet":{let n=e.objectTypeApiName;return t.add(n),`ObjectSet<${n}>`}case"object":{let n=e.objectTypeApiName;return t.add(n),`${n} | ${n}["__primaryKey"]`}case"array":return `Array<${ee(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 c(e){return `
|
|
21
21
|
import { ${e.map(t=>`${t} as OG_${t}`).join(", ")}} from "@osdk/legacy-client";
|
|
22
22
|
|
|
23
23
|
${e.map(t=>`
|
|
@@ -26,43 +26,43 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
26
26
|
`).join(`
|
|
27
27
|
|
|
28
28
|
`)}
|
|
29
|
-
`}async function
|
|
29
|
+
`}async function te(e,t){let r=y__default.join(t,"ConfidentialClient");await e.mkdir(r,{recursive:!0}),await e.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
30
30
|
export * from "./ConfidentialClientAuth";
|
|
31
|
-
`)),await e.writeFile(
|
|
32
|
-
${
|
|
33
|
-
`));}async function
|
|
31
|
+
`)),await e.writeFile(y__default.join(r,"ConfidentialClientAuth.ts"),await o(`
|
|
32
|
+
${c(["ConfidentialClientAuth"])}
|
|
33
|
+
`));}async function re(e,t){let r=y__default.join(t,"PublicClient");await e.mkdir(r,{recursive:!0}),await e.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
34
34
|
export * from "./PublicClientAuth";
|
|
35
|
-
`)),await e.writeFile(
|
|
36
|
-
${
|
|
37
|
-
`));}async function
|
|
35
|
+
`)),await e.writeFile(y__default.join(r,"PublicClientAuth.ts"),await o(`
|
|
36
|
+
${c(["PublicClientAuth"])}
|
|
37
|
+
`));}async function oe(e,t){let r=y__default.join(t,"UserToken");await e.mkdir(r,{recursive:!0}),await e.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
38
38
|
export * from "./UserTokenAuth";
|
|
39
|
-
`)),await e.writeFile(
|
|
40
|
-
${
|
|
41
|
-
`));}function
|
|
42
|
-
import type { ${e.map(
|
|
39
|
+
`)),await e.writeFile(y__default.join(r,"UserTokenAuth.ts"),await o(`
|
|
40
|
+
${c(["UserTokenAuth"])}
|
|
41
|
+
`));}function i(e,t="",r=pt(t)){return `
|
|
42
|
+
import type { ${e.map(n=>`${n} as OG_${n}`).join(", ")}} from "@osdk/legacy-client";
|
|
43
43
|
|
|
44
|
-
${e.map(
|
|
44
|
+
${e.map(n=>`
|
|
45
45
|
/** @deprecated submodule imports arent public api **/
|
|
46
|
-
export type ${
|
|
46
|
+
export type ${n}${t} = OG_${n}${r};
|
|
47
47
|
`).join(`
|
|
48
48
|
|
|
49
49
|
`)}
|
|
50
|
-
`}var
|
|
50
|
+
`}var nt=/<(.*?)>/,st=/^\s?(.+?)( extends .*?)?( = .*?)?\s?$/;function pt(e){return e.length===0?"":`<${nt.exec(e)?.[1]?.split(",")?.map(r=>st.exec(r)?.[1]??r)?.join(",")}>`}async function ie(e,t){let r=y.join(e,"internal","@foundry","oauth-client","dist");await t.mkdir(r,{recursive:!0}),await t.writeFile(y.join(r,"index.ts"),await o(`
|
|
51
51
|
export * from "./Auth";
|
|
52
52
|
export * from "./ConfidentialClient";
|
|
53
53
|
export * from "./OAuthClient";
|
|
54
54
|
export * from "./PublicClient";
|
|
55
55
|
export * from "./Token";
|
|
56
56
|
export * from "./UserToken";
|
|
57
|
-
`)),await t.writeFile(
|
|
57
|
+
`)),await t.writeFile(y.join(r,"Auth.ts"),await o(i(["Auth"]))),await t.writeFile(y.join(r,"Token.ts"),await o(i(["Token","TokenValue"]))),await t.writeFile(y.join(r,"OAuthClient.ts"),await o(i(["AuthSubscription","UnsubscribeFunction","SignInResponse","RefreshResponse","SignOutResponse"]))),await t.writeFile(y.join(r,"OAuthToken.ts"),await o(c(["OAuthToken"]))),await t.writeFile(y.join(r,"Auth.ts"),await o(i(["Auth"]))),await te(t,r),await re(t,r),await oe(t,r);}async function ne(e,t){await e.writeFile(y.join(t,"Aggregations.ts"),await o(`
|
|
58
58
|
import { LocalDate, Timestamp } from "@osdk/legacy-client";
|
|
59
|
-
`+
|
|
60
|
-
`));}async function
|
|
59
|
+
`+i(["Double","Rangeable","MetricValue","Date","BucketKey","BucketValue","TimeUnit","BucketGroup","Metrics","AggregatableProperties","AggregationClause"])+i(["Range"],"<T extends Rangeable>","<T>")+i(["BaseGroupBy"],"<_T extends BucketValue = BucketValue>")+i(["Duration"],"<_T extends Timestamp | LocalDate = Timestamp | LocalDate>")+i(["AggregatableProperty","MultipleAggregationsOperations"],"<_T extends MetricValue = MetricValue>")+i(["AggregationGroup"],"<TMetrics extends Metrics | MetricValue, TBucketGroup extends BucketGroup>")+i(["Bucketing"],"<_T extends string , _X extends BucketValue>")+i(["AggregationResult"],"<TBucketGroup extends BucketGroup, TMetrics extends Metrics | MetricValue>")+i(["BaseBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends BucketValue, Kind extends string>")+i(["ExactValueBucketing","InternalBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends BucketValue>")+i(["RangeBucketing","FixedWidthBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends Range<Rangeable>>")+i(["DurationBucketing"],"<TBucketKey extends BucketKey, TBucketValue extends Date>")+i(["InternalBucketingVisitor"],"<TBucketKey extends BucketKey, T extends BucketValue, R>")+i(["AggregationBuilderResult"],"<T, TMultipleAggregationProperties>")+i(["AggregatablePropertiesForResult","AggregatablePropertyNamesForResult"],"<TAggregatableProperties, TResult extends MetricValue>")+c(["assertBucketingInternal","visitInternalBucketing"])+i(["AggregatableObjectSetStep"],"<TAggregatableProperties, TMultipleAggregationProperties, TBucketableProperties, TBucketGroup extends BucketGroup = {}>")+i(["GroupedTerminalAggregationOperations"],"<TAggregatableProperties, TMultipleAggregationProperties, TBucketGroup extends BucketGroup = {}>")));}async function se(e,t){await e.mkdir(y.join(t,"groupBy"),{recursive:!0});let r=["BooleanGroupBy","LocalDateGroupBy","NumericGroupBy","StringGroupBy","TimestampGroupBy"],n=[...r,"GroupKeyType"];for(let a of n)await e.writeFile(y.join(t,"groupBy",`${a}.ts`),await o(`export {${a}} from "./index";`));await e.writeFile(y.join(t,"groupBy","index.ts"),await o('import { Bucketing, BucketKey, Duration, Range, Rangeable } from "../Aggregations";'+c(r)+i(r,"<T extends BucketKey>")+`export {GroupKeyType} from "@osdk/legacy-client";
|
|
60
|
+
`));}async function pe(e,t){let r=y.join(t,"metrics");await e.mkdir(r,{recursive:!0}),await e.writeFile(y.join(r,"metrics.ts"),await o('export {MetricValueType} from "@osdk/legacy-client";')),await e.writeFile(y.join(r,"ApproximateDistinctCountAggregatableProperty.ts"),await o(c(["ApproximateDistinctCountAggregatableProperty"])+i(["ApproximateDistinctCountAggregatableProperty"]))),await e.writeFile(y.join(r,"MultipleAggregatableProperty.ts"),await o(`
|
|
61
61
|
import { Double, MetricValue, MultipleAggregationsOperations } from "../Aggregations";
|
|
62
62
|
import { MetricValueType } from "./metrics";
|
|
63
|
-
`+
|
|
63
|
+
`+c(["MultipleAggregatableProperty"])+i(["MultipleAggregatableProperty"],"<TResult extends MetricValue = Double>")));for(let n of ["DefaultAggregatableProperty","LocalDatePropertyMetric","NumericPropertyMetric","TimestampPropertyMetric"])await e.writeFile(y.join(r,`${n}.ts`),await o(`
|
|
64
64
|
import { MultipleAggregatableProperty } from "./MultipleAggregatableProperty";
|
|
65
|
-
`+
|
|
65
|
+
`+c([n])));await e.writeFile(y.join(r,"index.ts"),await o(`
|
|
66
66
|
export * from "./ApproximateDistinctCountAggregatableProperty";
|
|
67
67
|
export * from "./DefaultAggregatableProperty";
|
|
68
68
|
export * from "./LocalDatePropertyMetric";
|
|
@@ -70,7 +70,7 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
70
70
|
export * from "./MultipleAggregatableProperty";
|
|
71
71
|
export * from "./NumericPropertyMetric";
|
|
72
72
|
export * from "./TimestampPropertyMetric";
|
|
73
|
-
`));}async function
|
|
73
|
+
`));}async function ce(e,t){let r=y.join(t,"aggregations");await e.mkdir(r,{recursive:!0}),await se(e,r),await ne(e,r),await pe(e,r),await e.writeFile(y.join(r,"index.ts"),await o(`
|
|
74
74
|
|
|
75
75
|
|
|
76
76
|
|
|
@@ -80,16 +80,16 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
80
80
|
export * from "./groupBy";
|
|
81
81
|
export * from "./internalAggregationRequest";
|
|
82
82
|
export * from "./metrics";
|
|
83
|
-
`)),await e.writeFile(
|
|
83
|
+
`)),await e.writeFile(y.join(r,"ComputeStep.ts"),await o(`
|
|
84
84
|
import { ObjectSetDefinition } from "../baseTypes";
|
|
85
85
|
import { FoundryClientOptions } from "../client";
|
|
86
86
|
import { AggregateObjectsError, OntologyMetadata, Result } from "../ontologyProvider";
|
|
87
87
|
import { AggregationClause, AggregationResult, BucketGroup, BucketValue, InternalBucketing, Metrics, MetricValue } from "./Aggregations";
|
|
88
|
-
`+
|
|
88
|
+
`+c(["ComputeStep"])+i(["ComputeStep"],"<TBucketGroup extends BucketGroup, TMetrics extends Metrics | MetricValue> ")+i(["AggregationComputeStep"],"<TBucketGroup extends BucketGroup, TMetrics extends Metrics | MetricValue>")+`
|
|
89
89
|
|
|
90
|
-
`)),await e.writeFile(
|
|
90
|
+
`)),await e.writeFile(y.join(r,"CountOperation.ts"),await o(""+c(["CountOperation","isCountOperation"])+i(["CountOperation"]))),await e.writeFile(y.join(r,"internalAggregationRequest.ts"),await o(i(["InternalAggregationRequest"])));}async function me(e,t){await t.mkdir(e,{recursive:!0}),await t.writeFile(y__default.join(e,"index.ts"),await o(`export * from "./Attachment";
|
|
91
91
|
export * from "./Attachments";
|
|
92
|
-
`)),await t.writeFile(
|
|
92
|
+
`)),await t.writeFile(y__default.join(e,"Attachment.ts"),await o(i(["Attachment","AttachmentMetadata"]))),await t.writeFile(y__default.join(e,"Attachments.ts"),await o(i(["Attachments"])));}async function le(e,t){await t.mkdir(e,{recursive:!0}),await t.writeFile(y.join(e,"index.ts"),await o(`export * from "./Distance";
|
|
93
93
|
export * from "./GeoJson";
|
|
94
94
|
export * from "./GeometryCollection";
|
|
95
95
|
export * from "./GeoPoint";
|
|
@@ -98,19 +98,19 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
98
98
|
export * from "./MultiGeoPoint";
|
|
99
99
|
export * from "./MultiLineString";
|
|
100
100
|
export * from "./MultiPolygon";
|
|
101
|
-
export * from "./Polygon";`)),await t.writeFile(
|
|
101
|
+
export * from "./Polygon";`)),await t.writeFile(y.join(e,"Distance.ts"),await o(""+c(["Distance","DistanceUnit"])+i(["Distance","DistanceUnit"]))),await t.writeFile(y.join(e,"GeoJson.ts"),await o(i(["GeoJsonPoint","GeoJsonPolygon","GeoJsonLineString","GeoJsonMultiPoint","GeoJsonMultiPolygon","GeoJsonMultiLineString","GeoJsonGeometryCollection","GeoJsonGeometry","GeoJson"]))),await t.writeFile(y.join(e,"GeometryCollection.ts"),await o(c(["GeometryCollection"]))),await t.writeFile(y.join(e,"GeoPoint.ts"),await o(""+c(["isGeoPoint","GeoPoint","mapCoordinatesToGeoPoint"])+i(["GeoHash","Coordinates","GeoPoint"]))),await t.writeFile(y.join(e,"GeoShape.ts"),await o(c(["GeoShape"])+i(["GeoShape"]))),await t.writeFile(y.join(e,"LineString.ts"),await o(c(["LineString"])+i(["LineString"]))),await t.writeFile(y.join(e,"MultiGeoPoint.ts"),await o(c(["MultiGeoPoint"])+i(["MultiGeoPoint"]))),await t.writeFile(y.join(e,"MultiLineString.ts"),await o(c(["MultiLineString"])+i(["MultiLineString"]))),await t.writeFile(y.join(e,"MultiPolygon.ts"),await o(c(["MultiPolygon"])+i(["MultiPolygon"]))),await t.writeFile(y.join(e,"Polygon.ts"),await o(c(["Polygon"])+i(["LinearRing","Polygon"])));}async function ue(e,t){await t.mkdir(e,{recursive:!0}),await t.writeFile(y__default.join(e,"index.ts"),await o(`
|
|
102
102
|
export * from "./ObjectSetDefinition";
|
|
103
103
|
export * from "./OntologyObjectSet";
|
|
104
|
-
`)),await t.writeFile(
|
|
104
|
+
`)),await t.writeFile(y__default.join(e,"ObjectSetDefinition.ts"),await o(i(["BaseObjectSetDefinition","ReferenceObjectSetDefinition","StaticObjectSetDefinition","IntersectObjectSetDefinition","SubtractObjectSetDefinition","SearchAroundObjectSetDefinition","FilterObjectSetDefinition","ObjectSetDefinition"]))),await t.writeFile(y__default.join(e,"OntologyObjectSet.ts"),await o(i(["OntologyObjectSet"])));}async function ge(e,t){await t.mkdir(e,{recursive:!0}),await t.writeFile(y__default.join(e,"index.ts"),await o(`
|
|
105
105
|
export * from "./FilteredPropertiesTerminalOperations";
|
|
106
|
-
`)),await t.writeFile(
|
|
106
|
+
`)),await t.writeFile(y__default.join(e,"FilteredPropertiesTerminalOperations.ts"),await o('import { OntologyObject } from "../OntologyObject'+i(["FilteredPropertiesTerminalOperations","FilteredPropertiesTerminalOperationsWithGet"],"<T extends OntologyObject, V extends Array<keyof T>>")));}async function de(e,t){await t.mkdir(e,{recursive:!0}),await t.writeFile(y.join(e,"index.ts"),await o(`
|
|
107
107
|
export * from "./TimeSeries";
|
|
108
108
|
export * from "./TimeSeriesDuration";
|
|
109
109
|
export * from "./TimeSeriesPoint";
|
|
110
110
|
|
|
111
111
|
export * from "./TimeSeriesQuery";
|
|
112
112
|
export * from "./TimeSeriesTerminalOperations";
|
|
113
|
-
`)),await t.writeFile(
|
|
113
|
+
`)),await t.writeFile(y.join(e,"TimeSeries.ts"),await o(i(["TimeSeries"],"<T extends number | string>"))),await t.writeFile(y.join(e,"TimeSeriesDuration.ts"),await o(i(["WhenUnit","DurationUnit","TimeSeriesDuration"]))),await t.writeFile(y.join(e,"TimeSeriesPoint.ts"),await o(i(["TimeSeriesPoint"],"<T extends number | string>"))),await t.writeFile(y.join(e,"TimeSeriesQuery.ts"),await o(i(["TimeSeriesQuery"],"<T extends number | string>"))),await t.writeFile(y.join(e,"TimeSeriesTerminalOperations.ts"),await o(i(["TimeSeriesTerminalOperations","TimeSeriesIterator"],"<T extends number | string>")));}async function fe(e,t){let r=y.join(e,"baseTypes");await t.mkdir(r,{recursive:!0}),await t.writeFile(y.join(r,"index.ts"),await o(`export * from "./ActionType";
|
|
114
114
|
export * from "./attachments";
|
|
115
115
|
export * from "./geoshapes";
|
|
116
116
|
export * from "./links";
|
|
@@ -120,9 +120,9 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
120
120
|
export * from "./OntologyObject";
|
|
121
121
|
export * from "./Queries";
|
|
122
122
|
export * from "./timeseries";
|
|
123
|
-
export * from "./timestamp";`));let
|
|
124
|
-
`+
|
|
125
|
-
`+
|
|
123
|
+
export * from "./timestamp";`));let n=y.join(r,"geoshapes");await le(n,t);let a=y.join(r,"timeseries");await de(a,t);let p=y.join(r,"attachments");await me(p,t);let s=y.join(r,"objectset");await ue(s,t);let l=y.join(r,"sharedObjectCode");await ge(l,t),await t.writeFile(y.join(r,"ActionType.ts"),await o(`import { OntologyObject } from "./OntologyObject";
|
|
124
|
+
`+c(["ActionExecutionMode","ReturnEditsMode","ActionValidationResult"])+i(["ActionExecutionOptions","ValidationResponse","BulkEdits"])+i(["CreatedObjectEdits","ModifiedObjectEdits"],"<T extends OntologyObject>")+i(["Edits"],"<TAddedObjects extends OntologyObject | void, TModifiedObjects extends OntologyObject | void>")+i(["ActionResponse"],"<TEdits extends Edits<any, any> | undefined = undefined>","<TEdits>")+i(["ActionResponseFromOptions"],"<TOptions extends ActionExecutionOptions | undefined = undefined, TEdits extends Edits<any, any> | undefined = undefined>","<TOptions, TEdits>"))),await t.writeFile(y.join(r,"OntologyObject.ts"),await o(i(["OntologyObject"])+c(["isOntologyObject"]))),await t.writeFile(y.join(r,"links.ts"),await o('import { OntologyObject } from "./OntologyObject'+i(["SingleLink","MultiLink"],"<T extends OntologyObject = OntologyObject>"))),await t.writeFile(y.join(r,"localDate.ts"),await o(c(["LocalDate"])+i(["LocalDate"]))),await t.writeFile(y.join(r,"timestamp.ts"),await o(c(["Timestamp"])+i(["Timestamp"]))),await t.writeFile(y.join(r,"Queries.ts"),await o(`import { BucketValue, Range, Rangeable } from "../aggregations";
|
|
125
|
+
`+i(["QueryResponse"],"<T>")+i(["BaseBucket"],"<K, V>")+i(["NestedBucket"],"<TGroupKey, TSegmentKey, TValue extends BucketValue>")+i(["TwoDimensionalAggregation"],"<TGroupKey extends QueryBucketKey, TValue extends BucketValue = number>")+i(["ThreeDimensionalAggregation"],"<TGroupKey extends QueryBucketKey, TSegmentKey extends QueryBucketKey, TValue extends BucketValue = number>")+i(["QueryBucketKey"]))),await t.writeFile(y.join(r,"ObjectType.ts"),await o('import { OntologyObject } from "./OntologyObject";'+i(["BaseType","StringType","IntegerType","DateType","BooleanType","ByteType","DecimalType","FloatType","TimestampType","ShortType","LongType","DoubleType","GeoPointType","GeoShapeType","AttachmentType","ObjectType","StructField","QueryBucketRangeableType","QueryBucketKeyType","QueryBucketValueType","AllValueTypes","OntologyType","ObjectTypeProperties","StructType"])+i(["TimeSeriesType","ArrayType","SetType"],"<T extends BaseType>")+i(["Property"],"<TType extends OntologyType = OntologyType>")+i(["BaseObjectType"],"<TOntologyObject extends OntologyObject = OntologyObject>")+i(["ObjectSetType"],"<T extends ObjectType>")+i(["RangeType"],"<T extends QueryBucketRangeableType>")+i(["TwoDimensionalAggregationType"],"<TGroupKey extends QueryBucketKeyType, TValue extends QueryBucketValueType>")+i(["ThreeDimensionalAggregationType"],"<TGroupKey extends QueryBucketKeyType, TSegmentKey extends QueryBucketKeyType, TValue extends QueryBucketValueType>")));}async function Te(e,t){let r=y__default.join(e,"client");await t.mkdir(r,{recursive:!0}),await t.writeFile(y__default.join(r,"index.ts"),await o('export * from "./clientOptions";')),await t.writeFile(y__default.join(r,"clientOptions.ts"),await o('import {Auth} from "@osdk/legacy-client";'+i(["FoundryClientOptions"],"<TAuth extends Auth = Auth>")));}async function we(e,t){let r=y__default.join(e,"filters");await t.mkdir(r,{recursive:!0}),await t.writeFile(y__default.join(r,"index.ts"),await o(`export * from "./ArrayFilter";
|
|
126
126
|
export * from "./AttachmentFilter";
|
|
127
127
|
export * from "./BooleanFilter";
|
|
128
128
|
export * from "./DateTimeFilters";
|
|
@@ -132,15 +132,15 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
132
132
|
export * from "./NumericFilter";
|
|
133
133
|
export * from "./Op";
|
|
134
134
|
export * from "./OrderByOption";
|
|
135
|
-
export * from "./StringFilter";`)),await t.writeFile(
|
|
136
|
-
`+
|
|
135
|
+
export * from "./StringFilter";`)),await t.writeFile(y__default.join(r,"ArrayFilter.ts"),await o('import { Attachment, GeoPoint, GeoShape, LocalDate, Timestamp } from "../baseTypes";'+c(["ArrayFilter"])+i(["ArrayFilter"],"<T extends string | number | Timestamp | LocalDate | boolean | GeoShape | GeoPoint | Attachment>"))),await t.writeFile(y__default.join(r,"AttachmentFilter.ts"),await o(c(["AttachmentFilter"])+i(["AttachmentFilter"]))),await t.writeFile(y__default.join(r,"BooleanFilter.ts"),await o(c(["BooleanFilter"])+i(["BooleanFilter"]))),await t.writeFile(y__default.join(r,"GeoPointFilter.ts"),await o(c(["GeoPointFilter"])+i(["GeoPointFilter","BoundingBox"]))),await t.writeFile(y__default.join(r,"DateTimeFilters.ts"),await o(c(["TimestampFilter","LocalDateFilter"])+i(["TimestampFilter","LocalDateFilter"]))),await t.writeFile(y__default.join(r,"GeoShapeFilter.ts"),await o(c(["GeoShapeFilter"])+i(["GeoShapeFilter"]))),await t.writeFile(y__default.join(r,"NumericFilter.ts"),await o(c(["NumericFilter"])+i(["NumericFilter"]))),await t.writeFile(y__default.join(r,"Op.ts"),await o(c(["Op"]))),await t.writeFile(y__default.join(r,"OrderByOption.ts"),await o(c(["OrderByOption"])+i(["OrderByOption"]))),await t.writeFile(y__default.join(r,"StringFilter.ts"),await o(c(["StringFilter"])+i(["StringFilter"]))),await t.writeFile(y__default.join(r,"Filters.ts"),await o('import { OntologyObject } from "@osdk/legacy-client";'+i(["ObjectTypeFilterFunction","ObjectTypeOrderByFunction"],"<T extends OntologyObject>")+i(["BoundingBoxFilter","DistanceOf","SearchClause","LtWhereClause","GtWhereClause","LteWhereClause","GteWhereClause","EqWhereClause","IsNullWhereClause","ContainsWhereClause","StartsWithWhereClause","ContainsAllTermsInOrderWhereClause","ContainsAnyTermWhereClause","ContainsAllTermsWhereClause","WithinDistanceOfWhereClause","WithinBoundingBoxWhereClause","IntersectsBoundingBoxWhereClause","DoesNotIntersectBoundingBoxWhereClause","WithinPolygonWhereClause","IntersectsPolygonWhereClause","DoesNotIntersectPolygonWhereClause","AndWhereClause","OrWhereClause","NotWhereClause","WhereClause","OrderByClause"])+i(["FilterType"],"<T extends string | number>")));}async function be(e,t){await e.writeFile(y.join(t,"Errors.ts"),await o(i(["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 Oe(e,t){await e.writeFile(y.join(t,"OntologyMetadata.ts"),await o(i(["OntologyMetadata"])));}async function Ae(e,t){await e.writeFile(y.join(t,"Result.ts"),await o(`import {FoundryApiError} from "@osdk/legacy-client";
|
|
136
|
+
`+i(["Ok","Err"],"<T>")+i(["Result"],"<V, E = FoundryApiError>","<V,E>")+c(["isOk","isErr","visitError"])+i(["ErrorVisitor"],"<E extends FoundryApiError, R>","<E,R>")+i(["ExtractKeysWithType"],"<T, K extends keyof T>","<T,K>")));}async function $e(e,t){let r=y.join(t,"ontologyProvider");await e.mkdir(r,{recursive:!0}),await be(e,r),await Oe(e,r),await Ae(e,r),await e.writeFile(y.join(r,"index.ts"),await o(`
|
|
137
137
|
|
|
138
138
|
export * from "./Errors";
|
|
139
139
|
export * from "./OntologyMetadata";
|
|
140
140
|
|
|
141
141
|
|
|
142
142
|
// export * from "./Result";
|
|
143
|
-
`));}async function
|
|
143
|
+
`));}async function Fe(e,t){let r=y.join(e,"paging");await t.mkdir(r,{recursive:!0}),await t.writeFile(y.join(r,"index.ts"),await o('export * from "./Page";')),await t.writeFile(y.join(r,"Page.ts"),await o(i(["Page"],"<T>")));}async function ke(e,t){let r=y.join(e,"internal","@foundry","ontology-runtime","dist");await t.mkdir(r,{recursive:!0}),await $e(t,r),await ce(t,r),await Fe(r,t),await fe(r,t),await Te(r,t),await we(r,t),await t.writeFile(y.join(r,"index.ts"),await o(`
|
|
144
144
|
export * from "./aggregations";
|
|
145
145
|
export * from "./baseTypes";
|
|
146
146
|
|
|
@@ -150,10 +150,10 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
150
150
|
|
|
151
151
|
export * from "./ontologyProvider";
|
|
152
152
|
export * from "./paging";
|
|
153
|
-
`));}async function
|
|
153
|
+
`));}async function Se(e,t){await ke(t,e),await ie(t,e);}async function Pe(e,t,r=""){await e.writeFile(y__default.join(t,"FoundryClient.ts"),await o(`
|
|
154
154
|
import { BaseFoundryClient } from "@osdk/legacy-client";
|
|
155
155
|
import type { Auth, FoundryClientOptions } from "@osdk/legacy-client";
|
|
156
|
-
import { Ontology } from "./Ontology";
|
|
156
|
+
import { Ontology } from "./Ontology${r}";
|
|
157
157
|
|
|
158
158
|
export class FoundryClient<TAuth extends Auth = Auth> extends BaseFoundryClient<typeof Ontology, TAuth> {
|
|
159
159
|
constructor(options: FoundryClientOptions<TAuth>) {
|
|
@@ -163,178 +163,174 @@ function Y(e){return {...e,actionTypes:e.actionTypes.map(t=>({...t,apiName:et(t.
|
|
|
163
163
|
get ontology(): Ontology {
|
|
164
164
|
return super.ontology;
|
|
165
165
|
}
|
|
166
|
-
}`));}async function
|
|
166
|
+
}`));}async function Be(e,t,r){await e.mkdir(t,{recursive:!0}),await e.writeFile(y.join(t,"index.ts"),await o(`
|
|
167
167
|
export * from "@osdk/legacy-client";
|
|
168
|
-
export type { Ontology } from "./Ontology";
|
|
169
|
-
export { FoundryClient } from "./FoundryClient";
|
|
170
|
-
`));}function
|
|
168
|
+
export type { Ontology } from "./Ontology${r}";
|
|
169
|
+
export { FoundryClient } from "./FoundryClient${r}";
|
|
170
|
+
`));}function M(e,t){return e.map(r=>{let n=t?.get(r);return n?`${r}: ${n}`:r}).join(",")}function G(e,t){return e.map(r=>`${r}: typeof ${t?.get(r)??r}`).join(",")}async function Ce(e,t,r,n=""){let a=Object.keys(e.objectTypes),p=Object.keys(e.actionTypes),s=Object.keys(e.queryTypes),l=new Map,u=new Map,T=new Set(a);for(let m of p)T.has(m)?l.set(m,`${m}Action`):T.add(m);for(let m of s)T.has(m)&&u.set(m,`${m}Query`);let w=(m,g)=>{let x=g.get(m);return x?`${m} as ${x}`:m};await t.writeFile(y__default.join(r,"Ontology.ts"),await o(`
|
|
171
171
|
import type { OntologyDefinition } from "@osdk/api";
|
|
172
172
|
import type { Ontology as ClientOntology } from "@osdk/legacy-client";
|
|
173
|
-
import type { Objects } from "./ontology/objects/Objects";
|
|
174
|
-
import type { Actions } from "./ontology/actions/Actions";
|
|
175
|
-
import type { Queries } from "./ontology/queries/Queries";
|
|
176
|
-
${
|
|
173
|
+
import type { Objects } from "./ontology/objects/Objects${n}";
|
|
174
|
+
import type { Actions } from "./ontology/actions/Actions${n}";
|
|
175
|
+
import type { Queries } from "./ontology/queries/Queries${n}";
|
|
176
|
+
${a.map(m=>`import {${m}} from "./ontology/objects/${m}${n}";`).join(`
|
|
177
177
|
`)}
|
|
178
|
-
${
|
|
178
|
+
${p.map(m=>`import {${w(m,l)}} from "./ontology/actions/${m}${n}";`).join(`
|
|
179
179
|
`)}
|
|
180
|
-
${
|
|
180
|
+
${s.map(m=>`import {${w(m,u)}} from "./ontology/queries/${m}${n}";`).join(`
|
|
181
181
|
`)}
|
|
182
182
|
|
|
183
183
|
export const Ontology : {
|
|
184
184
|
metadata: {
|
|
185
|
-
ontologyRid: "${e.rid}",
|
|
186
|
-
ontologyApiName: "${e.apiName}",
|
|
185
|
+
ontologyRid: "${e.ontology.rid}",
|
|
186
|
+
ontologyApiName: "${e.ontology.apiName}",
|
|
187
187
|
userAgent: "foundry-typescript-osdk/0.0.1",
|
|
188
188
|
},
|
|
189
189
|
objects: {
|
|
190
|
-
${
|
|
190
|
+
${G(a)}
|
|
191
191
|
},
|
|
192
192
|
actions: {
|
|
193
|
-
${
|
|
193
|
+
${G(p,l)}
|
|
194
194
|
},
|
|
195
195
|
queries: {
|
|
196
|
-
${
|
|
196
|
+
${G(s,u)}
|
|
197
197
|
},
|
|
198
198
|
} = {
|
|
199
199
|
metadata: {
|
|
200
|
-
ontologyRid: "${e.rid}" as const,
|
|
201
|
-
ontologyApiName: "${e.apiName}" as const,
|
|
200
|
+
ontologyRid: "${e.ontology.rid}" as const,
|
|
201
|
+
ontologyApiName: "${e.ontology.apiName}" as const,
|
|
202
202
|
userAgent: "foundry-typescript-osdk/0.0.1" as const,
|
|
203
203
|
},
|
|
204
204
|
objects: {
|
|
205
|
-
${
|
|
205
|
+
${M(a)}
|
|
206
206
|
},
|
|
207
207
|
actions: {
|
|
208
|
-
${
|
|
208
|
+
${M(p,l)}
|
|
209
209
|
},
|
|
210
210
|
queries: {
|
|
211
|
-
${
|
|
211
|
+
${M(s,u)}
|
|
212
212
|
}
|
|
213
|
-
} satisfies OntologyDefinition<${
|
|
213
|
+
} satisfies OntologyDefinition<${a.map(m=>`"${m}"`).join("|")}, ${Object.values(e.actionTypes).map(m=>`"${m.apiName}"`).join("|")}, ${Object.values(e.queryTypes).map(m=>`"${m.apiName}"`).join("|")}>;
|
|
214
214
|
|
|
215
215
|
export interface Ontology extends ClientOntology<typeof Ontology> {
|
|
216
216
|
objects: Objects;
|
|
217
217
|
actions: Actions;
|
|
218
218
|
queries: Queries;
|
|
219
|
-
}`));}async function
|
|
219
|
+
}`));}async function Ne(e,t,r,n=""){await t.mkdir(r,{recursive:!0}),await t.writeFile(y__default.join(r,"Objects.ts"),await o(`
|
|
220
220
|
import { BaseObjectSet } from "@osdk/legacy-client";
|
|
221
|
-
${Array.from(Object.keys(e.objectTypes)).map(
|
|
221
|
+
${Array.from(Object.keys(e.objectTypes)).map(a=>`import type { ${a} } from "./${a}${n}";`).join(`
|
|
222
222
|
`)}
|
|
223
223
|
|
|
224
224
|
export interface Objects {
|
|
225
|
-
${Object.keys(e.objectTypes).map(
|
|
225
|
+
${Object.keys(e.objectTypes).map(a=>`${a} : BaseObjectSet<${a}>;`).join(`
|
|
226
226
|
`)}
|
|
227
227
|
}
|
|
228
|
-
;`));}async function
|
|
228
|
+
;`));}async function Me(e,t,r,n=""){await t.mkdir(r,{recursive:!0});for(let{objectType:{apiName:a}}of Object.values(e.objectTypes)){let p=join(r,`${a}.ts`),s=`OG_${a}`,l=[];l.push('import { ObjectSetAggregateArg, ObjectSetFilterArg, ObjectSetGroupByArg, ObjectSetMultipleAggregateArg, ObjectSetOrderByArg } from "@osdk/legacy-client";'),l.push(`import { ${a} as ${s} } from "../${a}${n}";`),l.push(""),l.push(`/** @deprecated Use ${a} from ontology/objects instead */`,`export type ${a} = ${s};`),l.push(`/** @deprecated Use ObjectSetFilterArg<${a}> instead */`,`export type ${a}Filter = ObjectSetFilterArg<${s}>;`),l.push(`/** @deprecated Use ObjectSetOrderByArg<${a}> instead */`,`export type ${a}OrderBy = ObjectSetOrderByArg<${s}>;`),l.push(`/** @deprecated Use ObjectSetGroupByArg<${a}> instead */`,`export type ${a}GroupByProperties = ObjectSetGroupByArg<${s}>;`),l.push(`
|
|
229
229
|
/**
|
|
230
|
-
* Aggregation properties for ${
|
|
231
|
-
* @deprecated Use ObjectSetAggregateArg<${
|
|
232
|
-
*/`,`export type ${
|
|
230
|
+
* Aggregation properties for ${a}
|
|
231
|
+
* @deprecated Use ObjectSetAggregateArg<${a}> instead
|
|
232
|
+
*/`,`export type ${a}AggregationProperties = ObjectSetAggregateArg<${s}>;`),l.push(`
|
|
233
233
|
/**
|
|
234
|
-
* Multiple aggregation properties for ${
|
|
235
|
-
* @deprecated Use ObjectSetMultipleAggregateArg<${
|
|
236
|
-
*/`,`export type ${
|
|
237
|
-
`));}}async function
|
|
234
|
+
* Multiple aggregation properties for ${a}.
|
|
235
|
+
* @deprecated Use ObjectSetMultipleAggregateArg<${a}> instead
|
|
236
|
+
*/`,`export type ${a}MultipleAggregationProperties = ObjectSetMultipleAggregateArg<${s}>;`),await t.writeFile(p,l.join(`
|
|
237
|
+
`));}}async function ve(e,t){await e.mkdir(t,{recursive:!0}),await e.writeFile(y.join(t,"index.ts"),await o(`
|
|
238
238
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
239
|
-
`));}function
|
|
239
|
+
`));}function Ee(e){let t=B(e);return {apiName:e.apiName,parameters:Object.fromEntries(Object.entries(e.parameters).map(([r,n])=>[r,yt(n)])),displayName:e.displayName,description:e.description,modifiedEntities:gt(t.addedObjects,t.modifiedObjects)}}function yt(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:_(e.dataType),nullable:!e.required,description:e.description};case"array":return {multiplicity:!0,type:_(e.dataType),nullable:!e.required,description:e.description}}}function _(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 _(e.subType)}}function gt(e,t){let r={};for(let n of e)r[n]={created:!0,modified:!1};for(let n of t)r[n]?r[n].modified=!0:r[n]={created:!1,modified:!0};return r}async function Re(e,t,r,n=""){await t.mkdir(r,{recursive:!0}),await Promise.all(Object.values(e.actionTypes).map(async a=>{let p=new Set(dt(a));await t.writeFile(y__default.join(r,`${a.apiName}.ts`),await o(`
|
|
240
240
|
import { ActionDefinition } from "@osdk/api";
|
|
241
241
|
|
|
242
|
-
export const ${
|
|
243
|
-
${e.actionTypes.map(
|
|
242
|
+
export const ${a.apiName} = ${JSON.stringify(Ee(a),null,2)} satisfies ActionDefinition<"${a.apiName}", ${p.size>0?[...p].map(s=>`"${s}"`).join("|"):"never"}>;`));})),await t.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
243
|
+
${Object.values(e.actionTypes).map(a=>`export * from "./${a.apiName}";`).join(`
|
|
244
244
|
`)}
|
|
245
|
-
`));}function
|
|
246
|
-
${
|
|
245
|
+
`));}function dt(e){let t=Object.values(e.parameters).flatMap(({dataType:n})=>{let a=Qe(n);return a?[a]:[]});return [...e.operations.flatMap(n=>{switch(n.type){case"createObject":return [n.objectTypeApiName];case"modifyObject":return [n.objectTypeApiName];case"deleteObject":case"createLink":case"deleteLink":return []}}),...t]}function Qe(e){switch(e.type){case"objectSet":case"object":return e.objectTypeApiName;case"array":return Qe(e.subType);case"string":case"boolean":case"attachment":case"date":case"double":case"integer":case"long":case"timestamp":return}}function Ie(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 Ke(e,t=!0){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:q(e.dataType),nullable:t};case"array":return {multiplicity:!0,description:e.description,type:q(e.dataType),nullable:!0};default:e.dataType;throw new Error(`Unexpected data type ${JSON.stringify(e.dataType)}`)}}function q(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 q(e.subType);case"timeseries":return e.itemType.type==="string"?"stringTimeseries":"numericTimeseries";default:throw new Error(`Unexecpected data type ${e}`)}}function Le(e,t){return {apiName:e.objectType.apiName,description:e.objectType.description,primaryKeyType:Ie(e.objectType.properties[e.objectType.primaryKey]),links:Object.fromEntries(e.linkTypes.map(r=>[r.apiName,{multiplicity:r.cardinality==="MANY",targetType:r.objectTypeApiName}])),properties:Object.fromEntries(Object.entries(e.objectType.properties).map(([r,n])=>[r,Ke(n,!(t&&e.objectType.primaryKey===r))]))}}function v(e,t=!1){let r=new Set(e.linkTypes.map(n=>n.objectTypeApiName));return `
|
|
246
|
+
export const ${e.objectType.apiName} = ${JSON.stringify(Le(e,t),null,2)} satisfies ObjectTypeDefinition<"${e.objectType.apiName}", ${r.size>0?[...r].map(n=>`"${n}"`).join("|"):"never"}>;`}var ft=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 Ue(e){return ft.has(e)}function qe(e){let t=new Set(e.linkTypes.map(r=>r.objectTypeApiName).filter(r=>r!==e.objectType.apiName));return `import type { OntologyObject, LocalDate, Timestamp, GeoShape, GeoPoint, Attachment, TimeSeries, MultiLink, SingleLink } from "@osdk/legacy-client";
|
|
247
|
+
${Array.from(t).map(r=>`import type { ${r} } from "./${r}";`).join(`
|
|
247
248
|
`)}
|
|
248
249
|
|
|
249
|
-
${
|
|
250
|
-
readonly __apiName: "${e.apiName}";
|
|
251
|
-
readonly __primaryKey: ${W(e.properties[e.primaryKey].dataType)};
|
|
252
|
-
${Object.entries(e.properties).flatMap(([
|
|
253
|
-
readonly ${
|
|
250
|
+
${_e(e.objectType.description)}export interface ${e.objectType.apiName} extends OntologyObject {
|
|
251
|
+
readonly __apiName: "${e.objectType.apiName}";
|
|
252
|
+
readonly __primaryKey: ${W(e.objectType.properties[e.objectType.primaryKey].dataType)};
|
|
253
|
+
${Object.entries(e.objectType.properties).flatMap(([r,n])=>{let a=W(n.dataType),p=[`${_e(n.description)}readonly ${r}: ${a} | undefined`];return Ue(r)&&p.push(`/** @deprecated please migrate to '${r}' instead */
|
|
254
|
+
readonly ${r}_: ${a} | undefined`),p}).join(`;
|
|
254
255
|
`)}
|
|
255
|
-
${
|
|
256
|
+
${e.linkTypes.flatMap(r=>[`readonly ${r.apiName}: ${r.cardinality==="MANY"?"MultiLink":"SingleLink"}<${r.objectTypeApiName}>`]).join(`;
|
|
256
257
|
`)}
|
|
257
258
|
}
|
|
258
|
-
`}function W(e){switch(e.type){case"string":return "string";case"boolean":return "boolean";case"array":return W(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
|
|
259
|
+
`}function W(e){switch(e.type){case"string":return "string";case"boolean":return "boolean";case"array":return W(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 _e(e){return e?`/**
|
|
259
260
|
* ${e}
|
|
260
261
|
*/
|
|
261
|
-
`:""}async function
|
|
262
|
-
import {
|
|
263
|
-
${
|
|
262
|
+
`:""}async function Je(e,t,r,n=""){await t.mkdir(r,{recursive:!0}),await Promise.all(Object.values(e.objectTypes).map(async a=>{a.linkTypes;await t.writeFile(y__default.join(r,`${a.objectType.apiName}.ts`),await o(`
|
|
263
|
+
import { ObjectTypeDefinition } from "@osdk/api";
|
|
264
|
+
${qe(a)}
|
|
264
265
|
|
|
265
|
-
|
|
266
|
-
|
|
266
|
+
${v(a)}
|
|
267
|
+
`));})),await t.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
268
|
+
${Object.keys(e.objectTypes).map(a=>`export * from "./${a}${n}";`).join(`
|
|
267
269
|
`)}
|
|
268
270
|
export type { ObjectSet } from "@osdk/legacy-client";
|
|
269
271
|
|
|
270
|
-
`));}function
|
|
272
|
+
`));}function $(e){return e.type==="null"?!0:e.type==="union"?e.unionTypes.some(t=>$(t)):!1}function b(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:"object",object:e.objectTypeApiName,nullable:!1};case"objectSet":return {type:"objectSet",objectSet:e.objectTypeApiName,nullable:!1};case"array":return {...b(e.subType),multiplicity:!0};case"set":return {type:"set",set:b(e.subType),nullable:!1};case"union":let t=$(e);if(t&&e.unionTypes.length===2){let n=e.unionTypes.find(a=>a.type!==null);if(n)return {...b(n),nullable:!0}}return {type:"union",union:e.unionTypes.reduce((n,a)=>(a.type==="null"||n.push(b(a)),n),[]),nullable:t};case"struct":return {type:"struct",struct:Object.fromEntries(e.fields.map(n=>[n.name,b(n.fieldType)])),nullable:!1};case"twoDimensionalAggregation":return {type:"twoDimensionalAggregation",twoDimensionalAggregation:J(e)};case"threeDimensionalAggregation":return {type:"threeDimensionalAggregation",threeDimensionalAggregation:Tt(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 J(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:e.valueType.type};if(ze(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 Tt(e){if(e.keyType.type==="range")return {keyType:e.keyType.type,keySubtype:e.keyType.subType.type,valueType:J(e.valueType)};if(ze(e.keyType))return {keyType:e.keyType.type,valueType:J(e.valueType)};throw new Error(`Cannot create 3D aggregation with ${e.keyType.type} as its type`)}function ze(e){return e.type==="string"||e.type==="boolean"}function Ye(e){return {apiName:e.apiName,description:e.description,displayName:e.displayName,version:e.version,parameters:Object.fromEntries(Object.entries(e.parameters).map(([t,r])=>[t,wt(r)])),output:b(e.output)}}function wt(e){return {description:e.description,...b(e.dataType)}}async function He(e,t,r,n=""){await t.mkdir(r,{recursive:!0}),await Promise.all(Object.values(e.queryTypes).map(async a=>{let p=jt(a);await t.writeFile(y__default.join(r,`${a.apiName}.ts`),await o(`
|
|
271
273
|
import { QueryDefinition } from "@osdk/api";
|
|
272
274
|
|
|
273
|
-
export const ${
|
|
274
|
-
${e.queryTypes.map(
|
|
275
|
+
export const ${a.apiName} = ${JSON.stringify(Ye(a))} satisfies QueryDefinition<"${a.apiName}", ${p.length>0?p.map(s=>`"${s}"`).join("|"):"never"}>;`));})),await t.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
276
|
+
${Object.values(e.queryTypes).map(a=>`export * from "./${a.apiName}${n}";`).join(`
|
|
275
277
|
`)}
|
|
276
|
-
`));}function
|
|
277
|
-
${
|
|
278
|
+
`));}function jt(e){let t=new Set;for(let{dataType:r}of Object.values(e.parameters))P(r,t);return P(e.output,t),Array.from(t)}function P(e,t){switch(e.type){case"array":case"set":P(e.subType,t);return;case"object":t.add(e.objectTypeApiName);return;case"objectSet":t.add(e.objectTypeApiName);return;case"struct":for(let n of Object.values(e.fields))P(n.fieldType,t);return;case"union":for(let n of e.unionTypes)P(n,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 tt(e,t,r,n=""){let a=new Set,p=[];for(let s of Object.values(e.queryTypes)){let l=["/**"];s.description&&l.push(`* ${s.description}`);let u=F(s.output,a,!0),T=[];for(let[m,g]of Object.entries(s.parameters)){let x=$(g.dataType),S=F(g.dataType,a,!1);T.push(`"${m}"${x?"?":""}: ${S}`),l.push(`* @param {${et(S)}} params.${m}${g.description?` - ${g.description}`:""}`);}let w=T.length===0?"":`params: { ${T.join("; ")} }`;l.push(`* @returns ${et(u)}`,"*/"),p.push(`
|
|
279
|
+
${l.join(`
|
|
278
280
|
`)}
|
|
279
|
-
${
|
|
280
|
-
`);}await t.mkdir(r,{recursive:!0}),await t.writeFile(
|
|
281
|
+
${s.apiName}(${w}): Promise<Result<QueryResponse<${u}>, QueryError>>;
|
|
282
|
+
`);}await t.mkdir(r,{recursive:!0}),await t.writeFile(y__default.join(r,"Queries.ts"),await o(`
|
|
281
283
|
import type { QueryResponse, QueryError, Result, Timestamp, LocalDate, Range, Attachment, ObjectSet, TwoDimensionalAggregation, ThreeDimensionalAggregation } from "@osdk/legacy-client";
|
|
282
|
-
${Array.from(
|
|
284
|
+
${Array.from(a).map(s=>`import type { ${s} } from "../objects/${s}${n}";`).join(`
|
|
283
285
|
`)}
|
|
284
286
|
|
|
285
287
|
export interface Queries {
|
|
286
|
-
${
|
|
288
|
+
${p.join(`
|
|
287
289
|
`)}
|
|
288
290
|
}
|
|
289
|
-
`));}function
|
|
290
|
-
`)} }`;case"union":return e.unionTypes.map(
|
|
291
|
-
${
|
|
292
|
-
${
|
|
291
|
+
`));}function F(e,t,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,t,r)}>`;case"object":{let p=e.objectTypeApiName;return t.add(p),r?p:`${p} | ${p}["__primaryKey"]`}case"objectSet":{let p=e.objectTypeApiName;return t.add(p),`ObjectSet<${p}>`}case"set":return `Set<${F(e.subType,t,r)}>`;case"struct":return `{ ${e.fields.map(p=>{let s=$(p.fieldType);return `${p.name}${s?"?":""}: ${F(p.fieldType,t,r)}`}).join(`,
|
|
292
|
+
`)} }`;case"union":return e.unionTypes.map(p=>F(p,t,r)).filter(p=>p!=="null").join("|");case"twoDimensionalAggregation":return e.valueType,`TwoDimensionalAggregation<
|
|
293
|
+
${z(e.keyType)},
|
|
294
|
+
${Xe(e.valueType)}
|
|
293
295
|
>`;case"threeDimensionalAggregation":return `ThreeDimensionalAggregation<
|
|
294
|
-
${
|
|
295
|
-
${
|
|
296
|
-
${
|
|
297
|
-
>`;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
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
/**
|
|
303
|
-
* ${r.description??""}
|
|
304
|
-
**/
|
|
305
|
-
${t}: {
|
|
306
|
-
type: "${r.dataType.type}";
|
|
307
|
-
displayName: "${r.displayName??t}";
|
|
308
|
-
}
|
|
309
|
-
|
|
310
|
-
`)}
|
|
296
|
+
${z(e.keyType)},
|
|
297
|
+
${z(e.valueType.keyType)},
|
|
298
|
+
${Xe(e.valueType.valueType)}
|
|
299
|
+
>`;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 z(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<${xt(e.subType)}>`;default:throw new Error(`Unknown TwoDimensionalAggregation keyType ${e.type}`)}}function xt(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 Xe(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 et(e){return e.replace(/\s/g,"")}async function Ot(e,t,r,n="commonjs"){let a=n==="module"?".js":"",p=y.join(r,"ontology","objects"),s=y.join(r,"ontology","actions"),l=y.join(r,"ontology","queries"),u=H(e);await Pe(t,r,a),await Ce(u,t,r,a),await ve(t,y.join(r,"ontology")),await Ne(u,t,p,a),await Me(u,t,y.join(p,"objects-api"),a),await Je(u,t,p,a),await X(u,t,s,a),await Re(u,t,s,a),await tt(u,t,l,a),await He(u,t,l,a),await Be(t,r,a),await Se(t,r);}async function rt(e,t,r){t.writeFile(y__default.join(r,"OntologyMetadata.ts"),await o(`
|
|
300
|
+
export const OntologyMetadata = {
|
|
301
|
+
ontologyRid: "${e.ontology.rid}",
|
|
302
|
+
ontologyApiName: "${e.ontology.apiName}",
|
|
303
|
+
userAgent: "foundry-typescript-osdk/2.0.0",
|
|
311
304
|
}
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
`));let o=Object.keys(e.objectTypes);t.writeFile(l__default.join(r,"Ontology.ts"),await i(`
|
|
305
|
+
`));}async function At(e,t,r,n="commonjs"){let a=n==="module"?".js":"";await t.mkdir(r,{recursive:!0}),t.writeFile(y__default.join(r,"index.ts"),await o(`
|
|
306
|
+
export { Ontology } from "./Ontology${a}";
|
|
307
|
+
`));let p=Object.keys(e.objectTypes);await rt(e,t,r),t.writeFile(y__default.join(r,"Ontology.ts"),await o(`
|
|
316
308
|
import type { OntologyDefinition } from "@osdk/api";
|
|
317
|
-
${
|
|
309
|
+
${p.map(s=>`import {${s}} from "./objects/${s}${a}";`).join(`
|
|
318
310
|
`)}
|
|
319
|
-
|
|
320
|
-
import { OntologyMetadata } from "./OntologyMetadata";
|
|
311
|
+
import { OntologyMetadata } from "./OntologyMetadata${a}";
|
|
321
312
|
|
|
322
313
|
export const Ontology = {
|
|
323
314
|
metadata: OntologyMetadata,
|
|
324
315
|
objects: {
|
|
325
|
-
${
|
|
316
|
+
${p.map(s=>`${s}: ${s},`).join(`
|
|
326
317
|
`)}
|
|
327
318
|
},
|
|
328
|
-
|
|
329
|
-
|
|
319
|
+
actions: {},
|
|
320
|
+
queries: {},
|
|
321
|
+
} satisfies OntologyDefinition<${p.map(s=>`"${s}"`).join("|")}>;
|
|
322
|
+
`)),await t.mkdir(y__default.join(r,"objects"),{recursive:!0});for(let s of p){let l=e.objectTypes[s];await t.writeFile(y__default.join(r,"objects",`${s}.ts`),await o(`
|
|
330
323
|
|
|
331
|
-
import type {
|
|
324
|
+
import type { ObjectTypeDefinition } from "@osdk/api";
|
|
332
325
|
|
|
333
|
-
|
|
326
|
+
${v(l,!0)}
|
|
334
327
|
|
|
335
|
-
|
|
336
|
-
`));}
|
|
328
|
+
|
|
329
|
+
`));}await t.writeFile(y__default.join(r,"objects","index.ts"),await o(`
|
|
330
|
+
${Object.keys(e.objectTypes).map(s=>`export * from "./${s}${a}";`).join(`
|
|
331
|
+
`)}
|
|
332
|
+
`));}
|
|
337
333
|
|
|
338
|
-
export {
|
|
334
|
+
export { Ot as generateClientSdkVersionOneDotOne, At as generateClientSdkVersionTwoPointZero };
|
|
339
335
|
//# sourceMappingURL=out.js.map
|
|
340
336
|
//# sourceMappingURL=index.mjs.map
|