@osdk/generator 2.0.2-rc.0 → 2.1.0-beta.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 +9 -9
- package/build/browser/GenerateContext/EnhanceCommon.d.ts +0 -2
- package/build/browser/GenerateContext/EnhanceCommon.d.ts.map +1 -1
- package/build/browser/GenerateContext/EnhancedBase.d.ts +1 -3
- package/build/browser/GenerateContext/EnhancedBase.d.ts.map +1 -1
- package/build/browser/GenerateContext/EnhancedBase.js +2 -11
- package/build/browser/GenerateContext/EnhancedBase.js.map +1 -1
- package/build/browser/GenerateContext/EnhancedOntologyDefinition.d.ts +4 -4
- package/build/browser/GenerateContext/EnhancedOntologyDefinition.d.ts.map +1 -1
- package/build/browser/GenerateContext/EnhancedOntologyDefinition.js +27 -21
- package/build/browser/GenerateContext/EnhancedOntologyDefinition.js.map +1 -1
- package/build/browser/GenerateContext/ForeignType.d.ts +1 -2
- package/build/browser/GenerateContext/ForeignType.d.ts.map +1 -1
- package/build/browser/GenerateContext/ForeignType.js +5 -11
- package/build/browser/GenerateContext/ForeignType.js.map +1 -1
- package/build/browser/GenerateContext/enhanceOntology.d.ts +7 -1
- package/build/browser/GenerateContext/enhanceOntology.d.ts.map +1 -1
- package/build/browser/GenerateContext/enhanceOntology.js +8 -2
- package/build/browser/GenerateContext/enhanceOntology.js.map +1 -1
- package/build/browser/generateClientSdkPackage.d.ts +1 -1
- package/build/browser/generateClientSdkPackage.d.ts.map +1 -1
- package/build/browser/generateClientSdkPackage.js +2 -2
- package/build/browser/generateClientSdkPackage.js.map +1 -1
- package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js +19 -6
- package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js.map +1 -1
- package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js +40 -6
- package/build/browser/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js.map +1 -1
- package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.d.ts +1 -1
- package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.d.ts.map +1 -1
- package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.js +16 -80
- package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.js.map +1 -1
- package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.test.js +121 -52
- package/build/browser/v2.0/generateClientSdkVersionTwoPointZero.test.js.map +1 -1
- package/build/browser/v2.0/generateMetadata.js +1 -1
- package/build/browser/v2.0/generateMetadata.js.map +1 -1
- package/build/browser/v2.0/generatePerActionDataFiles.test.js +14 -2
- package/build/browser/v2.0/generatePerActionDataFiles.test.js.map +1 -1
- package/build/browser/v2.0/generatePerInterfaceDataFiles.d.ts +2 -0
- package/build/browser/v2.0/generatePerInterfaceDataFiles.d.ts.map +1 -0
- package/build/browser/v2.0/generatePerInterfaceDataFiles.js +45 -0
- package/build/browser/v2.0/generatePerInterfaceDataFiles.js.map +1 -0
- package/build/browser/v2.0/generatePerObjectDataFiles.d.ts +3 -0
- package/build/browser/v2.0/generatePerObjectDataFiles.d.ts.map +1 -0
- package/build/browser/v2.0/generatePerObjectDataFiles.js +47 -0
- package/build/browser/v2.0/generatePerObjectDataFiles.js.map +1 -0
- package/build/browser/v2.0/generatePerQueryDataFiles.d.ts.map +1 -1
- package/build/browser/v2.0/generatePerQueryDataFiles.js +1 -1
- package/build/browser/v2.0/generatePerQueryDataFiles.js.map +1 -1
- package/build/browser/v2.0/generatePerQueryDataFiles.test.js +9 -3
- package/build/browser/v2.0/generatePerQueryDataFiles.test.js.map +1 -1
- package/build/browser/v2.0/generateRootIndexTsFile.d.ts +3 -0
- package/build/browser/v2.0/generateRootIndexTsFile.d.ts.map +1 -0
- package/build/browser/v2.0/generateRootIndexTsFile.js +40 -0
- package/build/browser/v2.0/generateRootIndexTsFile.js.map +1 -0
- package/build/browser/v2.0/wireObjectTypeV2ToSdkObjectConstV2.d.ts.map +1 -1
- package/build/browser/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js +19 -9
- package/build/browser/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js.map +1 -1
- package/build/esm/GenerateContext/EnhanceCommon.d.ts +0 -2
- package/build/esm/GenerateContext/EnhanceCommon.d.ts.map +1 -1
- package/build/esm/GenerateContext/EnhancedBase.d.ts +1 -3
- package/build/esm/GenerateContext/EnhancedBase.d.ts.map +1 -1
- package/build/esm/GenerateContext/EnhancedBase.js +2 -11
- package/build/esm/GenerateContext/EnhancedBase.js.map +1 -1
- package/build/esm/GenerateContext/EnhancedOntologyDefinition.d.ts +4 -4
- package/build/esm/GenerateContext/EnhancedOntologyDefinition.d.ts.map +1 -1
- package/build/esm/GenerateContext/EnhancedOntologyDefinition.js +27 -21
- package/build/esm/GenerateContext/EnhancedOntologyDefinition.js.map +1 -1
- package/build/esm/GenerateContext/ForeignType.d.ts +1 -2
- package/build/esm/GenerateContext/ForeignType.d.ts.map +1 -1
- package/build/esm/GenerateContext/ForeignType.js +5 -11
- package/build/esm/GenerateContext/ForeignType.js.map +1 -1
- package/build/esm/GenerateContext/enhanceOntology.d.ts +7 -1
- package/build/esm/GenerateContext/enhanceOntology.d.ts.map +1 -1
- package/build/esm/GenerateContext/enhanceOntology.js +8 -2
- package/build/esm/GenerateContext/enhanceOntology.js.map +1 -1
- package/build/esm/generateClientSdkPackage.d.ts +1 -1
- package/build/esm/generateClientSdkPackage.d.ts.map +1 -1
- package/build/esm/generateClientSdkPackage.js +2 -2
- package/build/esm/generateClientSdkPackage.js.map +1 -1
- package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js +19 -6
- package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.js.map +1 -1
- package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js +40 -6
- package/build/esm/v2.0/UNSTABLE_wireInterfaceTypeV2ToSdkObjectConst.test.js.map +1 -1
- package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.d.ts +1 -1
- package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.d.ts.map +1 -1
- package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.js +16 -80
- package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.js.map +1 -1
- package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.test.js +121 -52
- package/build/esm/v2.0/generateClientSdkVersionTwoPointZero.test.js.map +1 -1
- package/build/esm/v2.0/generateMetadata.js +1 -1
- package/build/esm/v2.0/generateMetadata.js.map +1 -1
- package/build/esm/v2.0/generatePerActionDataFiles.test.js +14 -2
- package/build/esm/v2.0/generatePerActionDataFiles.test.js.map +1 -1
- package/build/esm/v2.0/generatePerInterfaceDataFiles.d.ts +2 -0
- package/build/esm/v2.0/generatePerInterfaceDataFiles.d.ts.map +1 -0
- package/build/esm/v2.0/generatePerInterfaceDataFiles.js +45 -0
- package/build/esm/v2.0/generatePerInterfaceDataFiles.js.map +1 -0
- package/build/esm/v2.0/generatePerObjectDataFiles.d.ts +3 -0
- package/build/esm/v2.0/generatePerObjectDataFiles.d.ts.map +1 -0
- package/build/esm/v2.0/generatePerObjectDataFiles.js +47 -0
- package/build/esm/v2.0/generatePerObjectDataFiles.js.map +1 -0
- package/build/esm/v2.0/generatePerQueryDataFiles.d.ts.map +1 -1
- package/build/esm/v2.0/generatePerQueryDataFiles.js +1 -1
- package/build/esm/v2.0/generatePerQueryDataFiles.js.map +1 -1
- package/build/esm/v2.0/generatePerQueryDataFiles.test.js +9 -3
- package/build/esm/v2.0/generatePerQueryDataFiles.test.js.map +1 -1
- package/build/esm/v2.0/generateRootIndexTsFile.d.ts +3 -0
- package/build/esm/v2.0/generateRootIndexTsFile.d.ts.map +1 -0
- package/build/esm/v2.0/generateRootIndexTsFile.js +40 -0
- package/build/esm/v2.0/generateRootIndexTsFile.js.map +1 -0
- package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.d.ts.map +1 -1
- package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js +19 -9
- package/build/esm/v2.0/wireObjectTypeV2ToSdkObjectConstV2.js.map +1 -1
- package/package.json +6 -6
|
@@ -80,6 +80,9 @@ function changeNames(ontology, newNames) {
|
|
|
80
80
|
changeEachEntry(draft.interfaceTypes, newNames.interfaces, (ifaceType, oldIfaceName, newIfaceName) => {
|
|
81
81
|
changeValue(ifaceType, "apiName", oldIfaceName, newIfaceName);
|
|
82
82
|
ifaceType.extendsInterfaces = ifaceType.extendsInterfaces.map(v => v === oldIfaceName ? newIfaceName : v);
|
|
83
|
+
changeEachEntry(ifaceType.properties, newNames.spts, (property, oldSptName, newSptName) => {
|
|
84
|
+
changeValue(property, "apiName", oldSptName, newSptName);
|
|
85
|
+
}, true);
|
|
83
86
|
}, true);
|
|
84
87
|
changeEachEntry(draft.objectTypes, newNames.interfaces, (objectType, oldIfaceName, newIfaceName) => {
|
|
85
88
|
changeArrayEntry(objectType.implementsInterfaces, oldIfaceName, newIfaceName);
|
|
@@ -224,8 +227,11 @@ const referencingOntology = {
|
|
|
224
227
|
}]
|
|
225
228
|
}
|
|
226
229
|
},
|
|
227
|
-
interfaceTypes: {
|
|
230
|
+
interfaceTypes: {
|
|
231
|
+
...referencedOntology.interfaceTypes
|
|
232
|
+
},
|
|
228
233
|
objectTypes: {
|
|
234
|
+
...referencedOntology.objectTypes,
|
|
229
235
|
"Thing": {
|
|
230
236
|
implementsInterfaces: ["com.example.dep.SomeInterface"],
|
|
231
237
|
implementsInterfaces2: {
|
|
@@ -370,13 +376,13 @@ describe("generator", () => {
|
|
|
370
376
|
|
|
371
377
|
export const $ontologyRid = 'ridHere';
|
|
372
378
|
",
|
|
373
|
-
"/foo/index.ts": "export
|
|
379
|
+
"/foo/index.ts": "export { deleteTodos, markTodoCompleted } from './ontology/actions';
|
|
374
380
|
export * as $Actions from './ontology/actions';
|
|
375
|
-
export
|
|
381
|
+
export { SomeInterface } from './ontology/interfaces';
|
|
376
382
|
export * as $Interfaces from './ontology/interfaces';
|
|
377
|
-
export
|
|
383
|
+
export { Person, Todo } from './ontology/objects';
|
|
378
384
|
export * as $Objects from './ontology/objects';
|
|
379
|
-
export
|
|
385
|
+
export { getCount, returnsTodo } from './ontology/queries';
|
|
380
386
|
export * as $Queries from './ontology/queries';
|
|
381
387
|
export { $ontologyRid } from './OntologyMetadata';
|
|
382
388
|
",
|
|
@@ -540,7 +546,7 @@ describe("generator", () => {
|
|
|
540
546
|
osdkMetadata: $osdkMetadata,
|
|
541
547
|
};
|
|
542
548
|
",
|
|
543
|
-
"/foo/ontology/interfaces.ts": "export
|
|
549
|
+
"/foo/ontology/interfaces.ts": "export { SomeInterface } from './interfaces/SomeInterface';
|
|
544
550
|
",
|
|
545
551
|
"/foo/ontology/interfaces/SomeInterface.ts": "import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
546
552
|
import { $osdkMetadata } from '../../OntologyMetadata';
|
|
@@ -566,10 +572,16 @@ describe("generator", () => {
|
|
|
566
572
|
|
|
567
573
|
export interface ObjectSet extends $ObjectSet<SomeInterface, SomeInterface.ObjectSet> {}
|
|
568
574
|
|
|
575
|
+
export type OsdkInstance<
|
|
576
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
577
|
+
K extends keyof SomeInterface.Props = keyof SomeInterface.Props,
|
|
578
|
+
> = $Osdk.Instance<SomeInterface, OPTIONS, K>;
|
|
579
|
+
|
|
580
|
+
/** @deprecated use OsdkInstance */
|
|
569
581
|
export type OsdkObject<
|
|
570
582
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
571
583
|
K extends keyof SomeInterface.Props = keyof SomeInterface.Props,
|
|
572
|
-
> =
|
|
584
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
573
585
|
}
|
|
574
586
|
|
|
575
587
|
export interface SomeInterface extends $InterfaceDefinition {
|
|
@@ -604,8 +616,8 @@ describe("generator", () => {
|
|
|
604
616
|
osdkMetadata: $osdkMetadata,
|
|
605
617
|
};
|
|
606
618
|
",
|
|
607
|
-
"/foo/ontology/objects.ts": "export
|
|
608
|
-
export
|
|
619
|
+
"/foo/ontology/objects.ts": "export { Person } from './objects/Person';
|
|
620
|
+
export { Todo } from './objects/Todo';
|
|
609
621
|
",
|
|
610
622
|
"/foo/ontology/objects/Person.ts": "import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
611
623
|
import { $osdkMetadata } from '../../OntologyMetadata';
|
|
@@ -640,10 +652,16 @@ describe("generator", () => {
|
|
|
640
652
|
|
|
641
653
|
export interface ObjectSet extends $ObjectSet<Person, Person.ObjectSet> {}
|
|
642
654
|
|
|
655
|
+
export type OsdkInstance<
|
|
656
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
657
|
+
K extends keyof Person.Props = keyof Person.Props,
|
|
658
|
+
> = $Osdk.Instance<Person, OPTIONS, K>;
|
|
659
|
+
|
|
660
|
+
/** @deprecated use OsdkInstance */
|
|
643
661
|
export type OsdkObject<
|
|
644
662
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
645
663
|
K extends keyof Person.Props = keyof Person.Props,
|
|
646
|
-
> =
|
|
664
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
647
665
|
}
|
|
648
666
|
|
|
649
667
|
export interface Person extends $ObjectTypeDefinition {
|
|
@@ -728,10 +746,16 @@ describe("generator", () => {
|
|
|
728
746
|
|
|
729
747
|
export interface ObjectSet extends $ObjectSet<Todo, Todo.ObjectSet> {}
|
|
730
748
|
|
|
749
|
+
export type OsdkInstance<
|
|
750
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
751
|
+
K extends keyof Todo.Props = keyof Todo.Props,
|
|
752
|
+
> = $Osdk.Instance<Todo, OPTIONS, K>;
|
|
753
|
+
|
|
754
|
+
/** @deprecated use OsdkInstance */
|
|
731
755
|
export type OsdkObject<
|
|
732
756
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
733
757
|
K extends keyof Todo.Props = keyof Todo.Props,
|
|
734
|
-
> =
|
|
758
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
735
759
|
}
|
|
736
760
|
|
|
737
761
|
export interface Todo extends $ObjectTypeDefinition {
|
|
@@ -796,8 +820,8 @@ describe("generator", () => {
|
|
|
796
820
|
osdkMetadata: $osdkMetadata,
|
|
797
821
|
};
|
|
798
822
|
",
|
|
799
|
-
"/foo/ontology/queries.ts": "export
|
|
800
|
-
export
|
|
823
|
+
"/foo/ontology/queries.ts": "export { getCount } from './queries/getCount';
|
|
824
|
+
export { returnsTodo } from './queries/returnsTodo';
|
|
801
825
|
",
|
|
802
826
|
"/foo/ontology/queries/getCount.ts": "import type { QueryDefinition, VersionBound } from '@osdk/api';
|
|
803
827
|
import type { QueryParam, QueryResult } from '@osdk/api';
|
|
@@ -921,25 +945,32 @@ describe("generator", () => {
|
|
|
921
945
|
it("throws an error if a namespace is provided that all top levels do not use", async () => {
|
|
922
946
|
await expect(generateClientSdkVersionTwoPointZero({
|
|
923
947
|
...TodoWireOntology
|
|
924
|
-
}, "", helper.minimalFiles, BASE_PATH, "module"
|
|
948
|
+
}, "", helper.minimalFiles, BASE_PATH, "module"));
|
|
949
|
+
// Disabled for now since we can't really enforce it from dev console at the moment
|
|
950
|
+
// .rejects.toThrowErrorMatchingInlineSnapshot(
|
|
951
|
+
// `[Error: Found type { ns:'undefined', shortName: 'Todo'} but it is not in the generation namespace 'foo.bar'. This violates the contract of the generator.]`,
|
|
952
|
+
// );
|
|
925
953
|
});
|
|
926
954
|
it("does not throw an error if a namespace is provided that all top levels use", async () => {
|
|
927
|
-
await expect(generateClientSdkVersionTwoPointZero(fooBarTodoWireOntology, "", helper.minimalFiles, BASE_PATH, "module"
|
|
955
|
+
await expect(generateClientSdkVersionTwoPointZero(fooBarTodoWireOntology, "", helper.minimalFiles, BASE_PATH, "module")).resolves.toMatchInlineSnapshot(`undefined`);
|
|
928
956
|
expect(helper.getFiles()["/foo/ontology/objects/foo.bar.Todo.ts"]).toBeUndefined();
|
|
929
957
|
expect(helper.getFiles()["/foo/ontology/objects/Todo.ts"]).not.toBeUndefined();
|
|
930
958
|
expect(tweakedFilesForSnapshotConsistency(helper.getFiles())).toMatchInlineSnapshot(`
|
|
931
959
|
{
|
|
932
960
|
"/foo/OntologyMetadata.ts": "export type $ExpectedClientVersion = 'PLACEHOLDER';
|
|
933
961
|
export const $osdkMetadata = { extraUserAgent: '' };
|
|
962
|
+
|
|
963
|
+
export const $ontologyRid = 'ridHere';
|
|
934
964
|
",
|
|
935
|
-
"/foo/index.ts": "export
|
|
965
|
+
"/foo/index.ts": "export { deleteTodos, markTodoCompleted } from './ontology/actions.js';
|
|
936
966
|
export * as $Actions from './ontology/actions.js';
|
|
937
|
-
export
|
|
967
|
+
export { SomeInterface } from './ontology/interfaces.js';
|
|
938
968
|
export * as $Interfaces from './ontology/interfaces.js';
|
|
939
|
-
export
|
|
969
|
+
export { Person, Todo } from './ontology/objects.js';
|
|
940
970
|
export * as $Objects from './ontology/objects.js';
|
|
941
|
-
export
|
|
971
|
+
export { getCount, returnsTodo } from './ontology/queries.js';
|
|
942
972
|
export * as $Queries from './ontology/queries.js';
|
|
973
|
+
export { $ontologyRid } from './OntologyMetadata.js';
|
|
943
974
|
",
|
|
944
975
|
"/foo/ontology/actions.ts": "export { deleteTodos } from './actions/deleteTodos.js';
|
|
945
976
|
export { markTodoCompleted } from './actions/markTodoCompleted.js';
|
|
@@ -1101,7 +1132,7 @@ describe("generator", () => {
|
|
|
1101
1132
|
osdkMetadata: $osdkMetadata,
|
|
1102
1133
|
};
|
|
1103
1134
|
",
|
|
1104
|
-
"/foo/ontology/interfaces.ts": "export
|
|
1135
|
+
"/foo/ontology/interfaces.ts": "export { SomeInterface } from './interfaces/SomeInterface.js';
|
|
1105
1136
|
",
|
|
1106
1137
|
"/foo/ontology/interfaces/SomeInterface.ts": "import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
1107
1138
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
@@ -1127,10 +1158,16 @@ describe("generator", () => {
|
|
|
1127
1158
|
|
|
1128
1159
|
export interface ObjectSet extends $ObjectSet<SomeInterface, SomeInterface.ObjectSet> {}
|
|
1129
1160
|
|
|
1161
|
+
export type OsdkInstance<
|
|
1162
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1163
|
+
K extends keyof SomeInterface.Props = keyof SomeInterface.Props,
|
|
1164
|
+
> = $Osdk.Instance<SomeInterface, OPTIONS, K>;
|
|
1165
|
+
|
|
1166
|
+
/** @deprecated use OsdkInstance */
|
|
1130
1167
|
export type OsdkObject<
|
|
1131
1168
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1132
1169
|
K extends keyof SomeInterface.Props = keyof SomeInterface.Props,
|
|
1133
|
-
> =
|
|
1170
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
1134
1171
|
}
|
|
1135
1172
|
|
|
1136
1173
|
export interface SomeInterface extends $InterfaceDefinition {
|
|
@@ -1165,8 +1202,8 @@ describe("generator", () => {
|
|
|
1165
1202
|
osdkMetadata: $osdkMetadata,
|
|
1166
1203
|
};
|
|
1167
1204
|
",
|
|
1168
|
-
"/foo/ontology/objects.ts": "export
|
|
1169
|
-
export
|
|
1205
|
+
"/foo/ontology/objects.ts": "export { Person } from './objects/Person.js';
|
|
1206
|
+
export { Todo } from './objects/Todo.js';
|
|
1170
1207
|
",
|
|
1171
1208
|
"/foo/ontology/objects/Person.ts": "import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
1172
1209
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
@@ -1201,10 +1238,16 @@ describe("generator", () => {
|
|
|
1201
1238
|
|
|
1202
1239
|
export interface ObjectSet extends $ObjectSet<Person, Person.ObjectSet> {}
|
|
1203
1240
|
|
|
1241
|
+
export type OsdkInstance<
|
|
1242
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1243
|
+
K extends keyof Person.Props = keyof Person.Props,
|
|
1244
|
+
> = $Osdk.Instance<Person, OPTIONS, K>;
|
|
1245
|
+
|
|
1246
|
+
/** @deprecated use OsdkInstance */
|
|
1204
1247
|
export type OsdkObject<
|
|
1205
1248
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1206
1249
|
K extends keyof Person.Props = keyof Person.Props,
|
|
1207
|
-
> =
|
|
1250
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
1208
1251
|
}
|
|
1209
1252
|
|
|
1210
1253
|
export interface Person extends $ObjectTypeDefinition {
|
|
@@ -1289,10 +1332,16 @@ describe("generator", () => {
|
|
|
1289
1332
|
|
|
1290
1333
|
export interface ObjectSet extends $ObjectSet<Todo, Todo.ObjectSet> {}
|
|
1291
1334
|
|
|
1335
|
+
export type OsdkInstance<
|
|
1336
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1337
|
+
K extends keyof Todo.Props = keyof Todo.Props,
|
|
1338
|
+
> = $Osdk.Instance<Todo, OPTIONS, K>;
|
|
1339
|
+
|
|
1340
|
+
/** @deprecated use OsdkInstance */
|
|
1292
1341
|
export type OsdkObject<
|
|
1293
1342
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1294
1343
|
K extends keyof Todo.Props = keyof Todo.Props,
|
|
1295
|
-
> =
|
|
1344
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
1296
1345
|
}
|
|
1297
1346
|
|
|
1298
1347
|
export interface Todo extends $ObjectTypeDefinition {
|
|
@@ -1357,8 +1406,8 @@ describe("generator", () => {
|
|
|
1357
1406
|
osdkMetadata: $osdkMetadata,
|
|
1358
1407
|
};
|
|
1359
1408
|
",
|
|
1360
|
-
"/foo/ontology/queries.ts": "export
|
|
1361
|
-
export
|
|
1409
|
+
"/foo/ontology/queries.ts": "export { getCount } from './queries/getCount.js';
|
|
1410
|
+
export { returnsTodo } from './queries/returnsTodo.js';
|
|
1362
1411
|
",
|
|
1363
1412
|
"/foo/ontology/queries/getCount.ts": "import type { QueryDefinition, VersionBound } from '@osdk/api';
|
|
1364
1413
|
import type { QueryParam, QueryResult } from '@osdk/api';
|
|
@@ -1507,8 +1556,10 @@ describe("generator", () => {
|
|
|
1507
1556
|
});
|
|
1508
1557
|
describe("$ontologyRid", () => {
|
|
1509
1558
|
it("does not exist when an ontology api name is provided", async () => {
|
|
1510
|
-
await expect(generateClientSdkVersionTwoPointZero(fooBarTodoWireOntology, "", helper.minimalFiles, "/foo", "module",
|
|
1511
|
-
expect(helper.getFiles()["/foo/index.ts"]).not.toContain(
|
|
1559
|
+
await expect(generateClientSdkVersionTwoPointZero(fooBarTodoWireOntology, "", helper.minimalFiles, "/foo", "module", new Map())).resolves.toMatchInlineSnapshot(`undefined`);
|
|
1560
|
+
// expect(helper.getFiles()["/foo/index.ts"]).not.toContain(
|
|
1561
|
+
// "$ontologyRid",
|
|
1562
|
+
// );
|
|
1512
1563
|
});
|
|
1513
1564
|
it("does exist when an ontology api name is not provided", async () => {
|
|
1514
1565
|
await expect(generateClientSdkVersionTwoPointZero(TodoWireOntology, "", helper.minimalFiles, "/foo", "module", undefined, new Map())).resolves.toMatchInlineSnapshot(`undefined`);
|
|
@@ -1517,24 +1568,24 @@ describe("generator", () => {
|
|
|
1517
1568
|
});
|
|
1518
1569
|
describe("query depends on foreign object", () => {
|
|
1519
1570
|
it("generates the correct code", async () => {
|
|
1520
|
-
await expect(generateClientSdkVersionTwoPointZero(referencingOntology, "", helper.minimalFiles, BASE_PATH, "module",
|
|
1571
|
+
await expect(generateClientSdkVersionTwoPointZero(referencingOntology, "", helper.minimalFiles, BASE_PATH, "module", new Map([["com.example.dep.Task", "@com.example.dep/osdk"]]), new Map([["com.example.dep.SomeInterface", "@com.example.dep/osdk"]]), new Map([["com.example.dep.spt", "@com.example.dep/osdk"]]))).resolves.toMatchInlineSnapshot(`undefined`);
|
|
1521
1572
|
expect(helper.getFiles()["/foo/ontology/queries/getTask.ts"]).toMatchInlineSnapshot(`
|
|
1522
1573
|
"import type { QueryDefinition, VersionBound } from '@osdk/api';
|
|
1523
1574
|
import type { QueryParam, QueryResult } from '@osdk/api';
|
|
1524
1575
|
import type { $ExpectedClientVersion } from '../../OntologyMetadata.js';
|
|
1525
1576
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
1526
|
-
import type { Task as $Imported$
|
|
1577
|
+
import type { Task as $Imported$com$example$dep$Task } from '@com.example.dep/osdk';
|
|
1527
1578
|
|
|
1528
1579
|
export namespace getTask {
|
|
1529
1580
|
export interface Signature {
|
|
1530
|
-
(query: getTask.Parameters): Promise<QueryResult.ObjectType<$Imported$
|
|
1581
|
+
(query: getTask.Parameters): Promise<QueryResult.ObjectType<$Imported$com$example$dep$Task>>;
|
|
1531
1582
|
}
|
|
1532
1583
|
|
|
1533
1584
|
export interface Parameters {
|
|
1534
1585
|
/**
|
|
1535
1586
|
* (no ontology metadata)
|
|
1536
1587
|
*/
|
|
1537
|
-
readonly a: QueryParam.ObjectType<$Imported$
|
|
1588
|
+
readonly a: QueryParam.ObjectType<$Imported$com$example$dep$Task>;
|
|
1538
1589
|
}
|
|
1539
1590
|
}
|
|
1540
1591
|
|
|
@@ -1552,14 +1603,14 @@ describe("generator", () => {
|
|
|
1552
1603
|
nullable: false;
|
|
1553
1604
|
object: 'com.example.dep.Task';
|
|
1554
1605
|
type: 'object';
|
|
1555
|
-
__OsdkTargetType?: $Imported$
|
|
1606
|
+
__OsdkTargetType?: $Imported$com$example$dep$Task;
|
|
1556
1607
|
};
|
|
1557
1608
|
};
|
|
1558
1609
|
output: {
|
|
1559
1610
|
nullable: false;
|
|
1560
1611
|
object: 'com.example.dep.Task';
|
|
1561
1612
|
type: 'object';
|
|
1562
|
-
__OsdkTargetType?: $Imported$
|
|
1613
|
+
__OsdkTargetType?: $Imported$com$example$dep$Task;
|
|
1563
1614
|
};
|
|
1564
1615
|
signature: getTask.Signature;
|
|
1565
1616
|
};
|
|
@@ -1581,7 +1632,7 @@ describe("generator", () => {
|
|
|
1581
1632
|
});
|
|
1582
1633
|
describe("object uses on foreign spt", () => {
|
|
1583
1634
|
it("stuff", async () => {
|
|
1584
|
-
await expect(generateClientSdkVersionTwoPointZero(referencingOntology, "", helper.minimalFiles, BASE_PATH, "module",
|
|
1635
|
+
await expect(generateClientSdkVersionTwoPointZero(referencingOntology, "", helper.minimalFiles, BASE_PATH, "module", new Map([["com.example.dep.Task", "@com.example.dep/osdk"]]), new Map([["com.example.dep.SomeInterface", "@com.example.dep/osdk"]]), new Map([["com.example.dep.spt", "@com.example.dep/osdk"]]))).resolves.toMatchInlineSnapshot(`undefined`);
|
|
1585
1636
|
expect(helper.getFiles()["/foo/ontology/objects/UsesForeignSpt.ts"]).toMatchInlineSnapshot(`
|
|
1586
1637
|
"import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
1587
1638
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
@@ -1615,10 +1666,16 @@ describe("generator", () => {
|
|
|
1615
1666
|
|
|
1616
1667
|
export interface ObjectSet extends $ObjectSet<UsesForeignSpt, UsesForeignSpt.ObjectSet> {}
|
|
1617
1668
|
|
|
1669
|
+
export type OsdkInstance<
|
|
1670
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1671
|
+
K extends keyof UsesForeignSpt.Props = keyof UsesForeignSpt.Props,
|
|
1672
|
+
> = $Osdk.Instance<UsesForeignSpt, OPTIONS, K>;
|
|
1673
|
+
|
|
1674
|
+
/** @deprecated use OsdkInstance */
|
|
1618
1675
|
export type OsdkObject<
|
|
1619
1676
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1620
1677
|
K extends keyof UsesForeignSpt.Props = keyof UsesForeignSpt.Props,
|
|
1621
|
-
> =
|
|
1678
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
1622
1679
|
}
|
|
1623
1680
|
|
|
1624
1681
|
export interface UsesForeignSpt extends $ObjectTypeDefinition {
|
|
@@ -1671,8 +1728,8 @@ describe("generator", () => {
|
|
|
1671
1728
|
});
|
|
1672
1729
|
});
|
|
1673
1730
|
describe("action depends on foreign object", () => {
|
|
1674
|
-
it("
|
|
1675
|
-
await expect(generateClientSdkVersionTwoPointZero(referencingOntology, "", helper.minimalFiles, BASE_PATH, "module",
|
|
1731
|
+
it("can generate the action", async () => {
|
|
1732
|
+
await expect(generateClientSdkVersionTwoPointZero(referencingOntology, "", helper.minimalFiles, BASE_PATH, "module", new Map([["com.example.dep.Task", "@com.example.dep/osdk"]]), new Map([["com.example.dep.SomeInterface", "@com.example.dep/osdk"]]), new Map([["com.example.dep.spt", "@com.example.dep/osdk"]]))).resolves.toMatchInlineSnapshot(`undefined`);
|
|
1676
1733
|
expect(helper.getFiles()["/foo/ontology/actions/setTaskBody.ts"]).toMatchInlineSnapshot(`
|
|
1677
1734
|
"import type {
|
|
1678
1735
|
ActionDefinition,
|
|
@@ -1683,7 +1740,7 @@ describe("generator", () => {
|
|
|
1683
1740
|
ApplyBatchActionOptions,
|
|
1684
1741
|
} from '@osdk/api';
|
|
1685
1742
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
1686
|
-
import type { Task as $Imported$
|
|
1743
|
+
import type { Task as $Imported$com$example$dep$Task } from '@com.example.dep/osdk';
|
|
1687
1744
|
|
|
1688
1745
|
export namespace setTaskBody {
|
|
1689
1746
|
// Represents the definition of the parameters for the action
|
|
@@ -1696,14 +1753,14 @@ describe("generator", () => {
|
|
|
1696
1753
|
task: {
|
|
1697
1754
|
multiplicity: false;
|
|
1698
1755
|
nullable: false;
|
|
1699
|
-
type: ActionMetadata.DataType.Object<$Imported$
|
|
1756
|
+
type: ActionMetadata.DataType.Object<$Imported$com$example$dep$Task>;
|
|
1700
1757
|
};
|
|
1701
1758
|
};
|
|
1702
1759
|
|
|
1703
1760
|
export interface Params {
|
|
1704
1761
|
readonly body: ActionParam.PrimitiveType<'string'>;
|
|
1705
1762
|
|
|
1706
|
-
readonly task: ActionParam.ObjectType<$Imported$
|
|
1763
|
+
readonly task: ActionParam.ObjectType<$Imported$com$example$dep$Task>;
|
|
1707
1764
|
}
|
|
1708
1765
|
|
|
1709
1766
|
// Represents a fqn of the action
|
|
@@ -1722,7 +1779,7 @@ describe("generator", () => {
|
|
|
1722
1779
|
|
|
1723
1780
|
/**
|
|
1724
1781
|
* @param {ActionParam.PrimitiveType<"string">} body
|
|
1725
|
-
* @param {ActionParam.ObjectType<$Imported$
|
|
1782
|
+
* @param {ActionParam.ObjectType<$Imported$com$example$dep$Task>} task
|
|
1726
1783
|
*/
|
|
1727
1784
|
export interface setTaskBody extends ActionDefinition<setTaskBody.Signatures> {
|
|
1728
1785
|
__DefinitionMetadata?: {
|
|
@@ -1755,7 +1812,7 @@ describe("generator", () => {
|
|
|
1755
1812
|
});
|
|
1756
1813
|
});
|
|
1757
1814
|
it("can generate an sdk package that is entirely a library", async () => {
|
|
1758
|
-
await expect(generateClientSdkVersionTwoPointZero(referencedOntology, "", helper.minimalFiles, BASE_PATH, "module"
|
|
1815
|
+
await expect(generateClientSdkVersionTwoPointZero(referencedOntology, "", helper.minimalFiles, BASE_PATH, "module")).resolves.toMatchInlineSnapshot(`undefined`);
|
|
1759
1816
|
expect(tweakedFilesForSnapshotConsistency(helper.getFiles())).toMatchInlineSnapshot(`
|
|
1760
1817
|
{
|
|
1761
1818
|
"/foo/OntologyMetadata.ts": "export type $ExpectedClientVersion = 'PLACEHOLDER';
|
|
@@ -1763,19 +1820,19 @@ describe("generator", () => {
|
|
|
1763
1820
|
|
|
1764
1821
|
export const $ontologyRid = 'ri.ontology.main.ontology.dep';
|
|
1765
1822
|
",
|
|
1766
|
-
"/foo/index.ts": "export
|
|
1823
|
+
"/foo/index.ts": "export {} from './ontology/actions.js';
|
|
1767
1824
|
export * as $Actions from './ontology/actions.js';
|
|
1768
|
-
export
|
|
1825
|
+
export { SomeInterface } from './ontology/interfaces.js';
|
|
1769
1826
|
export * as $Interfaces from './ontology/interfaces.js';
|
|
1770
|
-
export
|
|
1827
|
+
export { Task } from './ontology/objects.js';
|
|
1771
1828
|
export * as $Objects from './ontology/objects.js';
|
|
1772
|
-
export
|
|
1829
|
+
export {} from './ontology/queries.js';
|
|
1773
1830
|
export * as $Queries from './ontology/queries.js';
|
|
1774
1831
|
export { $ontologyRid } from './OntologyMetadata.js';
|
|
1775
1832
|
",
|
|
1776
1833
|
"/foo/ontology/actions.ts": "export {};
|
|
1777
1834
|
",
|
|
1778
|
-
"/foo/ontology/interfaces.ts": "export
|
|
1835
|
+
"/foo/ontology/interfaces.ts": "export { SomeInterface } from './interfaces/SomeInterface.js';
|
|
1779
1836
|
",
|
|
1780
1837
|
"/foo/ontology/interfaces/SomeInterface.ts": "import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
1781
1838
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
@@ -1801,10 +1858,16 @@ describe("generator", () => {
|
|
|
1801
1858
|
|
|
1802
1859
|
export interface ObjectSet extends $ObjectSet<SomeInterface, SomeInterface.ObjectSet> {}
|
|
1803
1860
|
|
|
1861
|
+
export type OsdkInstance<
|
|
1862
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1863
|
+
K extends keyof SomeInterface.Props = keyof SomeInterface.Props,
|
|
1864
|
+
> = $Osdk.Instance<SomeInterface, OPTIONS, K>;
|
|
1865
|
+
|
|
1866
|
+
/** @deprecated use OsdkInstance */
|
|
1804
1867
|
export type OsdkObject<
|
|
1805
1868
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1806
1869
|
K extends keyof SomeInterface.Props = keyof SomeInterface.Props,
|
|
1807
|
-
> =
|
|
1870
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
1808
1871
|
}
|
|
1809
1872
|
|
|
1810
1873
|
export interface SomeInterface extends $InterfaceDefinition {
|
|
@@ -1837,7 +1900,7 @@ describe("generator", () => {
|
|
|
1837
1900
|
osdkMetadata: $osdkMetadata,
|
|
1838
1901
|
};
|
|
1839
1902
|
",
|
|
1840
|
-
"/foo/ontology/objects.ts": "export
|
|
1903
|
+
"/foo/ontology/objects.ts": "export { Task } from './objects/Task.js';
|
|
1841
1904
|
",
|
|
1842
1905
|
"/foo/ontology/objects/Task.ts": "import type { PropertyDef as $PropertyDef } from '@osdk/api';
|
|
1843
1906
|
import { $osdkMetadata } from '../../OntologyMetadata.js';
|
|
@@ -1871,10 +1934,16 @@ describe("generator", () => {
|
|
|
1871
1934
|
|
|
1872
1935
|
export interface ObjectSet extends $ObjectSet<Task, Task.ObjectSet> {}
|
|
1873
1936
|
|
|
1937
|
+
export type OsdkInstance<
|
|
1938
|
+
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1939
|
+
K extends keyof Task.Props = keyof Task.Props,
|
|
1940
|
+
> = $Osdk.Instance<Task, OPTIONS, K>;
|
|
1941
|
+
|
|
1942
|
+
/** @deprecated use OsdkInstance */
|
|
1874
1943
|
export type OsdkObject<
|
|
1875
1944
|
OPTIONS extends never | '$notStrict' | '$rid' = never,
|
|
1876
1945
|
K extends keyof Task.Props = keyof Task.Props,
|
|
1877
|
-
> =
|
|
1946
|
+
> = OsdkInstance<OPTIONS, K>;
|
|
1878
1947
|
}
|
|
1879
1948
|
|
|
1880
1949
|
export interface Task extends $ObjectTypeDefinition {
|