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