@osdk/client 2.0.0-beta.8 → 2.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 +284 -0
- package/build/browser/Client.d.ts +39 -0
- package/build/browser/Client.d.ts.map +1 -0
- package/build/browser/Client.js +20 -0
- package/build/browser/Client.js.map +1 -0
- package/build/browser/Definitions.test.d.ts +2 -0
- package/build/browser/Definitions.test.d.ts.map +1 -0
- package/build/browser/Definitions.test.js +35 -0
- package/build/browser/Definitions.test.js.map +1 -0
- package/build/browser/Logger.d.ts +19 -0
- package/build/browser/Logger.d.ts.map +1 -0
- package/build/browser/Logger.js +17 -0
- package/build/browser/Logger.js.map +1 -0
- package/build/browser/MinimalClientContext.d.ts +26 -0
- package/build/browser/MinimalClientContext.d.ts.map +1 -0
- package/build/browser/MinimalClientContext.js +17 -0
- package/build/browser/MinimalClientContext.js.map +1 -0
- package/build/browser/ResultOrError.d.ts +12 -0
- package/build/browser/ResultOrError.d.ts.map +1 -0
- package/build/browser/ResultOrError.js +19 -0
- package/build/browser/ResultOrError.js.map +1 -0
- package/build/browser/SatisfiesSemver.d.ts +4 -0
- package/build/browser/SatisfiesSemver.d.ts.map +1 -0
- package/build/browser/SatisfiesSemver.js +17 -0
- package/build/browser/SatisfiesSemver.js.map +1 -0
- package/build/browser/SatisfiesSemver.test.d.ts +2 -0
- package/build/browser/SatisfiesSemver.test.d.ts.map +1 -0
- package/build/browser/SatisfiesSemver.test.js +69 -0
- package/build/browser/SatisfiesSemver.test.js.map +1 -0
- package/build/browser/__unstable/ConjureSupport.d.ts +55 -0
- package/build/browser/__unstable/ConjureSupport.d.ts.map +1 -0
- package/build/browser/__unstable/ConjureSupport.js +174 -0
- package/build/browser/__unstable/ConjureSupport.js.map +1 -0
- package/build/browser/__unstable/createBulkLinksAsyncIterFactory.d.ts +10 -0
- package/build/browser/__unstable/createBulkLinksAsyncIterFactory.d.ts.map +1 -0
- package/build/browser/__unstable/createBulkLinksAsyncIterFactory.js +114 -0
- package/build/browser/__unstable/createBulkLinksAsyncIterFactory.js.map +1 -0
- package/build/browser/actions/ActionValidationError.d.ts +6 -0
- package/build/browser/actions/ActionValidationError.d.ts.map +1 -0
- package/build/browser/actions/ActionValidationError.js +23 -0
- package/build/browser/actions/ActionValidationError.js.map +1 -0
- package/build/browser/actions/actions.test.d.ts +2 -0
- package/build/browser/actions/actions.test.d.ts.map +1 -0
- package/build/browser/actions/actions.test.js +323 -0
- package/build/browser/actions/actions.test.js.map +1 -0
- package/build/browser/actions/applyAction.d.ts +30 -0
- package/build/browser/actions/applyAction.d.ts.map +1 -0
- package/build/browser/actions/applyAction.js +114 -0
- package/build/browser/actions/applyAction.js.map +1 -0
- package/build/browser/createAttachmentFromRid.d.ts +10 -0
- package/build/browser/createAttachmentFromRid.d.ts.map +1 -0
- package/build/browser/createAttachmentFromRid.js +38 -0
- package/build/browser/createAttachmentFromRid.js.map +1 -0
- package/build/browser/createClient.d.ts +6 -0
- package/build/browser/createClient.d.ts.map +1 -0
- package/build/browser/createClient.js +88 -0
- package/build/browser/createClient.js.map +1 -0
- package/build/browser/createClient.test.d.ts +2 -0
- package/build/browser/createClient.test.d.ts.map +1 -0
- package/build/browser/createClient.test.js +45 -0
- package/build/browser/createClient.test.js.map +1 -0
- package/build/browser/createMinimalClient.d.ts +2 -0
- package/build/browser/createMinimalClient.d.ts.map +1 -0
- package/build/browser/createMinimalClient.js +42 -0
- package/build/browser/createMinimalClient.js.map +1 -0
- package/build/browser/createPlatformClient.d.ts +17 -0
- package/build/browser/createPlatformClient.d.ts.map +1 -0
- package/build/browser/createPlatformClient.js +33 -0
- package/build/browser/createPlatformClient.js.map +1 -0
- package/build/browser/createTimeseriesProperty.d.ts +14 -0
- package/build/browser/createTimeseriesProperty.d.ts.map +1 -0
- package/build/browser/createTimeseriesProperty.js +79 -0
- package/build/browser/createTimeseriesProperty.js.map +1 -0
- package/build/browser/definitions/LinkDefinitions.test.d.ts +2 -0
- package/build/browser/definitions/LinkDefinitions.test.d.ts.map +1 -0
- package/build/browser/definitions/LinkDefinitions.test.js +41 -0
- package/build/browser/definitions/LinkDefinitions.test.js.map +1 -0
- package/build/browser/fetchMetadata.d.ts +2 -0
- package/build/browser/fetchMetadata.d.ts.map +1 -0
- package/build/browser/fetchMetadata.js +35 -0
- package/build/browser/fetchMetadata.js.map +1 -0
- package/build/browser/fetchMetadata.test.d.ts +2 -0
- package/build/browser/fetchMetadata.test.d.ts.map +1 -0
- package/build/browser/fetchMetadata.test.js +218 -0
- package/build/browser/fetchMetadata.test.js.map +1 -0
- package/build/browser/index.d.ts +13 -0
- package/build/browser/index.d.ts.map +1 -0
- package/build/browser/index.js +22 -12
- package/build/browser/index.js.map +1 -1
- package/build/browser/intellisense.test.d.ts +2 -0
- package/build/browser/intellisense.test.d.ts.map +1 -0
- package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.d.ts +2 -0
- package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.d.ts.map +1 -0
- package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.js +25 -0
- package/build/browser/intellisense.test.helpers/callsQueryAcceptsObject.js.map +1 -0
- package/build/browser/intellisense.test.js +86 -0
- package/build/browser/intellisense.test.js.map +1 -0
- package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.d.ts +2 -0
- package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.d.ts.map +1 -0
- package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.js +34 -0
- package/build/browser/internal/conversions/legacyToModernSingleAggregationResult.js.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyAggregationClause.d.ts +2 -0
- package/build/browser/internal/conversions/modernToLegacyAggregationClause.d.ts.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyAggregationClause.js +38 -0
- package/build/browser/internal/conversions/modernToLegacyAggregationClause.js.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyGroupByClause.d.ts +2 -0
- package/build/browser/internal/conversions/modernToLegacyGroupByClause.d.ts.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyGroupByClause.js +62 -0
- package/build/browser/internal/conversions/modernToLegacyGroupByClause.js.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.d.ts +2 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.d.ts.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.js +144 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.js.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.test.d.ts +2 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.test.d.ts.map +1 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js +486 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -0
- package/build/browser/object/AttachmentUpload.d.ts +4 -0
- package/build/browser/object/AttachmentUpload.d.ts.map +1 -0
- package/build/browser/object/AttachmentUpload.js +27 -0
- package/build/browser/object/AttachmentUpload.js.map +1 -0
- package/build/browser/object/Cache.d.ts +2 -0
- package/build/browser/object/Cache.d.ts.map +1 -0
- package/build/browser/object/Cache.js +76 -0
- package/build/browser/object/Cache.js.map +1 -0
- package/build/browser/object/Cache.test.d.ts +11 -0
- package/build/browser/object/Cache.test.d.ts.map +1 -0
- package/build/browser/object/Cache.test.js +283 -0
- package/build/browser/object/Cache.test.js.map +1 -0
- package/build/browser/object/SimpleCache.d.ts +38 -0
- package/build/browser/object/SimpleCache.d.ts.map +1 -0
- package/build/browser/object/SimpleCache.js +67 -0
- package/build/browser/object/SimpleCache.js.map +1 -0
- package/build/browser/object/aggregate.d.ts +2 -0
- package/build/browser/object/aggregate.d.ts.map +1 -0
- package/build/browser/object/aggregate.js +69 -0
- package/build/browser/object/aggregate.js.map +1 -0
- package/build/browser/object/aggregate.test.d.ts +2 -0
- package/build/browser/object/aggregate.test.d.ts.map +1 -0
- package/build/browser/object/aggregate.test.js +398 -0
- package/build/browser/object/aggregate.test.js.map +1 -0
- package/build/browser/object/attachment.test.d.ts +2 -0
- package/build/browser/object/attachment.test.d.ts.map +1 -0
- package/build/browser/object/attachment.test.js +55 -0
- package/build/browser/object/attachment.test.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +11 -0
- package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.js +17 -0
- package/build/browser/object/convertWireToOsdkObjects/InterfaceHolder.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts +13 -0
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js +22 -0
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.js +17 -0
- package/build/browser/object/convertWireToOsdkObjects/ObjectHolder.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js +48 -0
- package/build/browser/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts +8 -0
- package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js +17 -0
- package/build/browser/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js +82 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +114 -0
- package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarAs.d.ts +3 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarAs.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js +55 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarLink.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarLink.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js +60 -0
- package/build/browser/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects.js +150 -0
- package/build/browser/object/convertWireToOsdkObjects.js.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects.test.d.ts +2 -0
- package/build/browser/object/convertWireToOsdkObjects.test.d.ts.map +1 -0
- package/build/browser/object/convertWireToOsdkObjects.test.js +254 -0
- package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -0
- package/build/browser/object/fetchPage.d.ts +3 -0
- package/build/browser/object/fetchPage.d.ts.map +1 -0
- package/build/browser/object/fetchPage.js +135 -0
- package/build/browser/object/fetchPage.js.map +1 -0
- package/build/browser/object/fetchPage.test.d.ts +2 -0
- package/build/browser/object/fetchPage.test.d.ts.map +1 -0
- package/build/browser/object/fetchPage.test.js +106 -0
- package/build/browser/object/fetchPage.test.js.map +1 -0
- package/build/browser/object/fetchSingle.d.ts +2 -0
- package/build/browser/object/fetchSingle.d.ts.map +1 -0
- package/build/browser/object/fetchSingle.js +47 -0
- package/build/browser/object/fetchSingle.js.map +1 -0
- package/build/browser/object/object.test.d.ts +12 -0
- package/build/browser/object/object.test.d.ts.map +1 -0
- package/build/browser/object/object.test.js +179 -0
- package/build/browser/object/object.test.js.map +1 -0
- package/build/browser/object/timeseries.test.d.ts +2 -0
- package/build/browser/object/timeseries.test.d.ts.map +1 -0
- package/build/browser/object/timeseries.test.js +163 -0
- package/build/browser/object/timeseries.test.js.map +1 -0
- package/build/browser/objectSet/ObjectSet.test.d.ts +2 -0
- package/build/browser/objectSet/ObjectSet.test.d.ts.map +1 -0
- package/build/browser/objectSet/ObjectSet.test.js +313 -0
- package/build/browser/objectSet/ObjectSet.test.js.map +1 -0
- package/build/browser/objectSet/ObjectSetFactory.d.ts +2 -0
- package/build/browser/objectSet/ObjectSetFactory.d.ts.map +1 -0
- package/build/browser/objectSet/ObjectSetFactory.js +17 -0
- package/build/browser/objectSet/ObjectSetFactory.js.map +1 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.d.ts +7 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.d.ts.map +1 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.js +533 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.js.map +1 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.test.d.ts +2 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.test.d.ts.map +1 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js +338 -0
- package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -0
- package/build/browser/objectSet/conjureUnionType.d.ts +13 -0
- package/build/browser/objectSet/conjureUnionType.d.ts.map +1 -0
- package/build/browser/objectSet/conjureUnionType.js +27 -0
- package/build/browser/objectSet/conjureUnionType.js.map +1 -0
- package/build/browser/objectSet/createObjectSet.d.ts +2 -0
- package/build/browser/objectSet/createObjectSet.d.ts.map +1 -0
- package/build/browser/objectSet/createObjectSet.js +136 -0
- package/build/browser/objectSet/createObjectSet.js.map +1 -0
- package/build/browser/objectSet/toConjureObjectSet.d.ts +2 -0
- package/build/browser/objectSet/toConjureObjectSet.d.ts.map +1 -0
- package/build/browser/objectSet/toConjureObjectSet.js +158 -0
- package/build/browser/objectSet/toConjureObjectSet.js.map +1 -0
- package/build/browser/ontology/OntologyProvider.d.ts +32 -0
- package/build/browser/ontology/OntologyProvider.d.ts.map +1 -0
- package/build/browser/ontology/OntologyProvider.js +17 -0
- package/build/browser/ontology/OntologyProvider.js.map +1 -0
- package/build/browser/ontology/StandardOntologyProvider.d.ts +5 -0
- package/build/browser/ontology/StandardOntologyProvider.d.ts.map +1 -0
- package/build/browser/ontology/StandardOntologyProvider.js +59 -0
- package/build/browser/ontology/StandardOntologyProvider.js.map +1 -0
- package/build/browser/ontology/StandardOntologyProvider.test.d.ts +2 -0
- package/build/browser/ontology/StandardOntologyProvider.test.d.ts.map +1 -0
- package/build/browser/ontology/StandardOntologyProvider.test.js +48 -0
- package/build/browser/ontology/StandardOntologyProvider.test.js.map +1 -0
- package/build/browser/ontology/loadActionMetadata.d.ts +4 -0
- package/build/browser/ontology/loadActionMetadata.d.ts.map +1 -0
- package/build/browser/ontology/loadActionMetadata.js +22 -0
- package/build/browser/ontology/loadActionMetadata.js.map +1 -0
- package/build/browser/ontology/loadFullObjectMetadata.d.ts +6 -0
- package/build/browser/ontology/loadFullObjectMetadata.d.ts.map +1 -0
- package/build/browser/ontology/loadFullObjectMetadata.js +28 -0
- package/build/browser/ontology/loadFullObjectMetadata.js.map +1 -0
- package/build/browser/ontology/loadInterfaceMetadata.d.ts +4 -0
- package/build/browser/ontology/loadInterfaceMetadata.d.ts.map +1 -0
- package/build/browser/ontology/loadInterfaceMetadata.js +24 -0
- package/build/browser/ontology/loadInterfaceMetadata.js.map +1 -0
- package/build/browser/ontology/loadQueryMetadata.d.ts +4 -0
- package/build/browser/ontology/loadQueryMetadata.d.ts.map +1 -0
- package/build/browser/ontology/loadQueryMetadata.js +22 -0
- package/build/browser/ontology/loadQueryMetadata.js.map +1 -0
- package/build/browser/ontology/makeConjureContext.d.ts +4 -0
- package/build/browser/ontology/makeConjureContext.d.ts.map +1 -0
- package/build/browser/ontology/makeConjureContext.js +28 -0
- package/build/browser/ontology/makeConjureContext.js.map +1 -0
- package/build/browser/pageRequestAsAsyncIter.d.ts +10 -0
- package/build/browser/pageRequestAsAsyncIter.d.ts.map +1 -0
- package/build/browser/pageRequestAsAsyncIter.js +37 -0
- package/build/browser/pageRequestAsAsyncIter.js.map +1 -0
- package/build/browser/public/unstable-do-not-use.d.ts +2 -0
- package/build/browser/public/unstable-do-not-use.d.ts.map +1 -0
- package/build/browser/public/unstable-do-not-use.js +16 -878
- package/build/browser/public/unstable-do-not-use.js.map +1 -1
- package/build/browser/queries/applyQuery.d.ts +6 -0
- package/build/browser/queries/applyQuery.d.ts.map +1 -0
- package/build/browser/queries/applyQuery.js +234 -0
- package/build/browser/queries/applyQuery.js.map +1 -0
- package/build/browser/queries/queries.test.d.ts +2 -0
- package/build/browser/queries/queries.test.d.ts.map +1 -0
- package/build/browser/queries/queries.test.js +171 -0
- package/build/browser/queries/queries.test.js.map +1 -0
- package/build/browser/queries/types.d.ts +20 -0
- package/build/browser/queries/types.d.ts.map +1 -0
- package/build/browser/queries/types.js +17 -0
- package/build/browser/queries/types.js.map +1 -0
- package/build/browser/tsserver.d.ts +34 -0
- package/build/browser/tsserver.d.ts.map +1 -0
- package/build/browser/tsserver.js +133 -0
- package/build/browser/tsserver.js.map +1 -0
- package/build/browser/util/ArrayElement.d.ts +2 -0
- package/build/browser/util/ArrayElement.d.ts.map +1 -0
- package/build/browser/util/ArrayElement.js +17 -0
- package/build/browser/util/ArrayElement.js.map +1 -0
- package/build/browser/util/NOOP.d.ts +4 -0
- package/build/browser/util/NOOP.d.ts.map +1 -0
- package/build/browser/util/NOOP.js +17 -0
- package/build/browser/util/NOOP.js.map +1 -0
- package/build/browser/util/NullableProps.d.ts +6 -0
- package/build/browser/util/NullableProps.d.ts.map +1 -0
- package/build/browser/util/NullableProps.js +17 -0
- package/build/browser/util/NullableProps.js.map +1 -0
- package/build/browser/util/UserAgent.d.ts +2 -0
- package/build/browser/util/UserAgent.d.ts.map +1 -0
- package/build/browser/util/UserAgent.js +17 -0
- package/build/browser/util/UserAgent.js.map +1 -0
- package/build/browser/util/WireObjectSet.d.ts +2 -0
- package/build/browser/util/WireObjectSet.d.ts.map +1 -0
- package/build/browser/util/WireObjectSet.js +21 -0
- package/build/browser/util/WireObjectSet.js.map +1 -0
- package/build/browser/util/addUserAgentAndRequestContextHeaders.d.ts +4 -0
- package/build/browser/util/addUserAgentAndRequestContextHeaders.d.ts.map +1 -0
- package/build/browser/util/addUserAgentAndRequestContextHeaders.js +27 -0
- package/build/browser/util/addUserAgentAndRequestContextHeaders.js.map +1 -0
- package/build/browser/util/augmentRequestContext.d.ts +32 -0
- package/build/browser/util/augmentRequestContext.d.ts.map +1 -0
- package/build/browser/util/augmentRequestContext.js +52 -0
- package/build/browser/util/augmentRequestContext.js.map +1 -0
- package/build/browser/util/isOntologyObjectV2.d.ts +2 -0
- package/build/browser/util/isOntologyObjectV2.d.ts.map +1 -0
- package/build/browser/util/isOntologyObjectV2.js +20 -0
- package/build/browser/util/isOntologyObjectV2.js.map +1 -0
- package/build/browser/util/isOsdkBaseObject.d.ts +3 -0
- package/build/browser/util/isOsdkBaseObject.d.ts.map +1 -0
- package/build/browser/util/isOsdkBaseObject.js +19 -0
- package/build/browser/util/isOsdkBaseObject.js.map +1 -0
- package/build/browser/util/isOsdkObject.d.ts +3 -0
- package/build/browser/util/isOsdkObject.d.ts.map +1 -0
- package/build/browser/util/isOsdkObject.js +19 -0
- package/build/browser/util/isOsdkObject.js.map +1 -0
- package/build/browser/util/partialBy.d.ts +3 -0
- package/build/browser/util/partialBy.d.ts.map +1 -0
- package/build/browser/util/partialBy.js +17 -0
- package/build/browser/util/partialBy.js.map +1 -0
- package/build/browser/util/streamutils.d.ts +3 -0
- package/build/browser/util/streamutils.d.ts.map +1 -0
- package/build/browser/util/streamutils.js +95 -0
- package/build/browser/util/streamutils.js.map +1 -0
- package/build/browser/util/toDataValue.d.ts +2 -0
- package/build/browser/util/toDataValue.d.ts.map +1 -0
- package/build/browser/util/toDataValue.js +73 -0
- package/build/browser/util/toDataValue.js.map +1 -0
- package/build/browser/util/toDataValue.test.d.ts +2 -0
- package/build/browser/util/toDataValue.test.d.ts.map +1 -0
- package/build/browser/util/toDataValue.test.js +117 -0
- package/build/browser/util/toDataValue.test.js.map +1 -0
- package/build/browser/util/toDataValueQueries.d.ts +2 -0
- package/build/browser/util/toDataValueQueries.d.ts.map +1 -0
- package/build/browser/util/toDataValueQueries.js +107 -0
- package/build/browser/util/toDataValueQueries.js.map +1 -0
- package/build/esm/Client.d.ts +24 -4
- package/build/esm/Client.d.ts.map +1 -1
- package/build/esm/Client.js +20 -0
- package/build/esm/Client.js.map +1 -0
- package/build/esm/Definitions.test.js +35 -0
- package/build/esm/Definitions.test.js.map +1 -0
- package/build/esm/Logger.d.ts +19 -0
- package/build/esm/Logger.d.ts.map +1 -0
- package/build/esm/Logger.js +17 -0
- package/build/esm/Logger.js.map +1 -0
- package/build/esm/MinimalClientContext.d.ts +1 -1
- package/build/esm/MinimalClientContext.d.ts.map +1 -1
- package/build/esm/MinimalClientContext.js +17 -0
- package/build/esm/MinimalClientContext.js.map +1 -0
- package/build/esm/ResultOrError.js +19 -0
- package/build/esm/ResultOrError.js.map +1 -0
- package/build/esm/SatisfiesSemver.js +17 -0
- package/build/esm/SatisfiesSemver.js.map +1 -0
- package/build/esm/SatisfiesSemver.test.js +69 -0
- package/build/esm/SatisfiesSemver.test.js.map +1 -0
- package/build/esm/__unstable/ConjureSupport.js +174 -0
- package/build/esm/__unstable/ConjureSupport.js.map +1 -0
- package/build/esm/__unstable/createBulkLinksAsyncIterFactory.d.ts +1 -1
- package/build/esm/__unstable/createBulkLinksAsyncIterFactory.d.ts.map +1 -1
- package/build/esm/__unstable/createBulkLinksAsyncIterFactory.js +114 -0
- package/build/esm/__unstable/createBulkLinksAsyncIterFactory.js.map +1 -0
- package/build/esm/actions/ActionValidationError.d.ts +1 -1
- package/build/esm/actions/ActionValidationError.d.ts.map +1 -1
- package/build/esm/actions/ActionValidationError.js +23 -0
- package/build/esm/actions/ActionValidationError.js.map +1 -0
- package/build/esm/actions/actions.test.js +323 -0
- package/build/esm/actions/actions.test.js.map +1 -0
- package/build/esm/actions/applyAction.d.ts +17 -11
- package/build/esm/actions/applyAction.d.ts.map +1 -1
- package/build/esm/actions/applyAction.js +114 -0
- package/build/esm/actions/applyAction.js.map +1 -0
- package/build/esm/createAttachmentFromRid.d.ts +1 -1
- package/build/esm/createAttachmentFromRid.d.ts.map +1 -1
- package/build/esm/createAttachmentFromRid.js +38 -0
- package/build/esm/createAttachmentFromRid.js.map +1 -0
- package/build/esm/createClient.d.ts +1 -1
- package/build/esm/createClient.d.ts.map +1 -1
- package/build/esm/createClient.js +88 -0
- package/build/esm/createClient.js.map +1 -0
- package/build/esm/createClient.test.js +45 -0
- package/build/esm/createClient.test.js.map +1 -0
- package/build/esm/createMinimalClient.js +42 -0
- package/build/esm/createMinimalClient.js.map +1 -0
- package/build/esm/createPlatformClient.js +33 -0
- package/build/esm/createPlatformClient.js.map +1 -0
- package/build/esm/createTimeseriesProperty.d.ts +12 -2
- package/build/esm/createTimeseriesProperty.d.ts.map +1 -1
- package/build/esm/createTimeseriesProperty.js +79 -0
- package/build/esm/createTimeseriesProperty.js.map +1 -0
- package/build/esm/definitions/LinkDefinitions.test.js +41 -0
- package/build/esm/definitions/LinkDefinitions.test.js.map +1 -0
- package/build/esm/fetchMetadata.d.ts +2 -0
- package/build/esm/fetchMetadata.d.ts.map +1 -0
- package/build/esm/fetchMetadata.js +35 -0
- package/build/esm/fetchMetadata.js.map +1 -0
- package/build/esm/fetchMetadata.test.d.ts +2 -0
- package/build/esm/fetchMetadata.test.d.ts.map +1 -0
- package/build/esm/fetchMetadata.test.js +218 -0
- package/build/esm/fetchMetadata.test.js.map +1 -0
- package/build/esm/index.d.ts +3 -2
- package/build/esm/index.d.ts.map +1 -1
- package/build/esm/index.js +22 -12
- package/build/esm/index.js.map +1 -1
- package/build/esm/intellisense.test.helpers/callsQueryAcceptsObject.js +25 -0
- package/build/esm/intellisense.test.helpers/callsQueryAcceptsObject.js.map +1 -0
- package/build/esm/intellisense.test.js +86 -0
- package/build/esm/intellisense.test.js.map +1 -0
- package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.js +34 -0
- package/build/esm/internal/conversions/legacyToModernSingleAggregationResult.js.map +1 -0
- package/build/esm/internal/conversions/modernToLegacyAggregationClause.js +38 -0
- package/build/esm/internal/conversions/modernToLegacyAggregationClause.js.map +1 -0
- package/build/esm/internal/conversions/modernToLegacyGroupByClause.js +62 -0
- package/build/esm/internal/conversions/modernToLegacyGroupByClause.js.map +1 -0
- package/build/esm/internal/conversions/modernToLegacyWhereClause.js +144 -0
- package/build/esm/internal/conversions/modernToLegacyWhereClause.js.map +1 -0
- package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js +486 -0
- package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -0
- package/build/esm/object/AttachmentUpload.d.ts +1 -1
- package/build/esm/object/AttachmentUpload.d.ts.map +1 -1
- package/build/esm/object/AttachmentUpload.js +27 -0
- package/build/esm/object/AttachmentUpload.js.map +1 -0
- package/build/esm/object/Cache.js +76 -0
- package/build/esm/object/Cache.js.map +1 -0
- package/build/esm/object/Cache.test.js +283 -0
- package/build/esm/object/Cache.test.js.map +1 -0
- package/build/esm/object/SimpleCache.js +67 -0
- package/build/esm/object/SimpleCache.js.map +1 -0
- package/build/esm/object/aggregate.js +69 -0
- package/build/esm/object/aggregate.js.map +1 -0
- package/build/esm/object/aggregate.test.js +398 -0
- package/build/esm/object/aggregate.test.js.map +1 -0
- package/build/esm/object/attachment.test.js +55 -0
- package/build/esm/object/attachment.test.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.d.ts +4 -5
- package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.d.ts.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.js +17 -0
- package/build/esm/object/convertWireToOsdkObjects/InterfaceHolder.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts +2 -3
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js +22 -0
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.js +17 -0
- package/build/esm/object/convertWireToOsdkObjects/ObjectHolder.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.d.ts.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js +48 -0
- package/build/esm/object/convertWireToOsdkObjects/OsdkCustomInspectPrototype.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js +17 -0
- package/build/esm/object/convertWireToOsdkObjects/PropertyDescriptorRecord.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js +82 -0
- package/build/esm/object/convertWireToOsdkObjects/createOsdkInterface.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +114 -0
- package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/getDollarAs.d.ts +1 -1
- package/build/esm/object/convertWireToOsdkObjects/getDollarAs.d.ts.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js +55 -0
- package/build/esm/object/convertWireToOsdkObjects/getDollarAs.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js +60 -0
- package/build/esm/object/convertWireToOsdkObjects/getDollarLink.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects.js +150 -0
- package/build/esm/object/convertWireToOsdkObjects.js.map +1 -0
- package/build/esm/object/convertWireToOsdkObjects.test.js +254 -0
- package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -0
- package/build/esm/object/fetchPage.d.ts +2 -3
- package/build/esm/object/fetchPage.d.ts.map +1 -1
- package/build/esm/object/fetchPage.js +135 -0
- package/build/esm/object/fetchPage.js.map +1 -0
- package/build/esm/object/fetchPage.test.js +106 -0
- package/build/esm/object/fetchPage.test.js.map +1 -0
- package/build/esm/object/fetchSingle.js +47 -0
- package/build/esm/object/fetchSingle.js.map +1 -0
- package/build/esm/object/object.test.d.ts +4 -5
- package/build/esm/object/object.test.d.ts.map +1 -1
- package/build/esm/object/object.test.js +179 -0
- package/build/esm/object/object.test.js.map +1 -0
- package/build/esm/object/timeseries.test.js +163 -0
- package/build/esm/object/timeseries.test.js.map +1 -0
- package/build/esm/objectSet/ObjectSet.test.js +313 -0
- package/build/esm/objectSet/ObjectSet.test.js.map +1 -0
- package/build/esm/objectSet/ObjectSetFactory.js +17 -0
- package/build/esm/objectSet/ObjectSetFactory.js.map +1 -0
- package/build/esm/objectSet/ObjectSetListenerWebsocket.d.ts.map +1 -1
- package/build/esm/objectSet/ObjectSetListenerWebsocket.js +536 -0
- package/build/esm/objectSet/ObjectSetListenerWebsocket.js.map +1 -0
- package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js +338 -0
- package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -0
- package/build/esm/objectSet/conjureUnionType.js +27 -0
- package/build/esm/objectSet/conjureUnionType.js.map +1 -0
- package/build/esm/objectSet/createObjectSet.js +136 -0
- package/build/esm/objectSet/createObjectSet.js.map +1 -0
- package/build/esm/objectSet/toConjureObjectSet.js +158 -0
- package/build/esm/objectSet/toConjureObjectSet.js.map +1 -0
- package/build/esm/ontology/OntologyProvider.d.ts +7 -13
- package/build/esm/ontology/OntologyProvider.d.ts.map +1 -1
- package/build/esm/ontology/OntologyProvider.js +17 -0
- package/build/esm/ontology/OntologyProvider.js.map +1 -0
- package/build/esm/ontology/StandardOntologyProvider.d.ts.map +1 -1
- package/build/esm/ontology/StandardOntologyProvider.js +59 -0
- package/build/esm/ontology/StandardOntologyProvider.js.map +1 -0
- package/build/esm/ontology/StandardOntologyProvider.test.js +48 -0
- package/build/esm/ontology/StandardOntologyProvider.test.js.map +1 -0
- package/build/esm/ontology/loadActionMetadata.d.ts +4 -0
- package/build/esm/ontology/loadActionMetadata.d.ts.map +1 -0
- package/build/esm/ontology/loadActionMetadata.js +22 -0
- package/build/esm/ontology/loadActionMetadata.js.map +1 -0
- package/build/esm/ontology/loadFullObjectMetadata.d.ts +2 -2
- package/build/esm/ontology/loadFullObjectMetadata.d.ts.map +1 -1
- package/build/esm/ontology/loadFullObjectMetadata.js +28 -0
- package/build/esm/ontology/loadFullObjectMetadata.js.map +1 -0
- package/build/esm/ontology/loadInterfaceMetadata.d.ts +4 -0
- package/build/esm/ontology/loadInterfaceMetadata.d.ts.map +1 -0
- package/build/esm/ontology/loadInterfaceMetadata.js +24 -0
- package/build/esm/ontology/loadInterfaceMetadata.js.map +1 -0
- package/build/esm/ontology/loadQueryMetadata.d.ts +4 -0
- package/build/esm/ontology/loadQueryMetadata.d.ts.map +1 -0
- package/build/esm/ontology/loadQueryMetadata.js +22 -0
- package/build/esm/ontology/loadQueryMetadata.js.map +1 -0
- package/build/esm/ontology/makeConjureContext.js +28 -0
- package/build/esm/ontology/makeConjureContext.js.map +1 -0
- package/build/esm/pageRequestAsAsyncIter.js +37 -0
- package/build/esm/pageRequestAsAsyncIter.js.map +1 -0
- package/build/esm/public/unstable-do-not-use.d.ts +0 -4
- package/build/esm/public/unstable-do-not-use.d.ts.map +1 -1
- package/build/esm/public/unstable-do-not-use.js +16 -881
- package/build/esm/public/unstable-do-not-use.js.map +1 -1
- package/build/esm/queries/applyQuery.d.ts +3 -4
- package/build/esm/queries/applyQuery.d.ts.map +1 -1
- package/build/esm/queries/applyQuery.js +234 -0
- package/build/esm/queries/applyQuery.js.map +1 -0
- package/build/esm/queries/queries.test.js +171 -0
- package/build/esm/queries/queries.test.js.map +1 -0
- package/build/esm/queries/types.d.ts +10 -11
- package/build/esm/queries/types.d.ts.map +1 -1
- package/build/esm/queries/types.js +17 -0
- package/build/esm/queries/types.js.map +1 -0
- package/build/esm/tsserver.d.ts +1 -1
- package/build/esm/tsserver.d.ts.map +1 -1
- package/build/esm/tsserver.js +133 -0
- package/build/esm/tsserver.js.map +1 -0
- package/build/esm/util/ArrayElement.js +17 -0
- package/build/esm/util/ArrayElement.js.map +1 -0
- package/build/esm/util/NOOP.js +17 -0
- package/build/esm/util/NOOP.js.map +1 -0
- package/build/esm/util/NullableProps.js +17 -0
- package/build/esm/util/NullableProps.js.map +1 -0
- package/build/esm/util/UserAgent.js +17 -0
- package/build/esm/util/UserAgent.js.map +1 -0
- package/build/esm/util/WireObjectSet.js +21 -0
- package/build/esm/util/WireObjectSet.js.map +1 -0
- package/build/esm/util/addUserAgentAndRequestContextHeaders.js +27 -0
- package/build/esm/util/addUserAgentAndRequestContextHeaders.js.map +1 -0
- package/build/esm/util/augmentRequestContext.js +52 -0
- package/build/esm/util/augmentRequestContext.js.map +1 -0
- package/build/esm/util/isOntologyObjectV2.js +20 -0
- package/build/esm/util/isOntologyObjectV2.js.map +1 -0
- package/build/esm/util/isOsdkBaseObject.d.ts +1 -1
- package/build/esm/util/isOsdkBaseObject.d.ts.map +1 -1
- package/build/esm/util/isOsdkBaseObject.js +19 -0
- package/build/esm/util/isOsdkBaseObject.js.map +1 -0
- package/build/esm/util/isOsdkObject.d.ts +1 -1
- package/build/esm/util/isOsdkObject.d.ts.map +1 -1
- package/build/esm/util/isOsdkObject.js +19 -0
- package/build/esm/util/isOsdkObject.js.map +1 -0
- package/build/esm/util/partialBy.js +17 -0
- package/build/esm/util/partialBy.js.map +1 -0
- package/build/esm/util/streamutils.js +95 -0
- package/build/esm/util/streamutils.js.map +1 -0
- package/build/esm/util/toDataValue.js +73 -0
- package/build/esm/util/toDataValue.js.map +1 -0
- package/build/esm/util/toDataValue.test.js +117 -0
- package/build/esm/util/toDataValue.test.js.map +1 -0
- package/build/esm/util/toDataValueQueries.js +107 -0
- package/build/esm/util/toDataValueQueries.js.map +1 -0
- package/package.json +15 -27
- package/build/browser/chunk-5HUCUBJX.js +0 -2327
- package/build/browser/chunk-5HUCUBJX.js.map +0 -1
- package/build/esm/__unstable/UNSTABLE_createClient.d.ts +0 -4
- package/build/esm/__unstable/UNSTABLE_createClient.d.ts.map +0 -1
- package/build/esm/__unstable/UnstableClient.d.ts +0 -12
- package/build/esm/__unstable/UnstableClient.d.ts.map +0 -1
- package/build/esm/chunk-5HUCUBJX.js +0 -2327
- package/build/esm/chunk-5HUCUBJX.js.map +0 -1
- package/build/esm/objectSet/ObjectSetListener.d.ts +0 -18
- package/build/esm/objectSet/ObjectSetListener.d.ts.map +0 -1
- package/build/esm/objectSet/createUnstableObjectSet.d.ts +0 -8
- package/build/esm/objectSet/createUnstableObjectSet.d.ts.map +0 -1
- package/build/esm/ontology/loadInterfaceDefinition.d.ts +0 -4
- package/build/esm/ontology/loadInterfaceDefinition.d.ts.map +0 -1
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2023 Palantir Technologies, Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import invariant from "tiny-invariant";
|
|
17
|
+
import { createOsdkObject } from "./convertWireToOsdkObjects/createOsdkObject.js";
|
|
18
|
+
/**
|
|
19
|
+
* If interfaceApiName is not undefined, converts the instances of the
|
|
20
|
+
* interface into their respective
|
|
21
|
+
* underlying concrete types and then returns the $as() representation
|
|
22
|
+
* for the consumers.
|
|
23
|
+
*
|
|
24
|
+
* Otherwise just does the conversion
|
|
25
|
+
*
|
|
26
|
+
* May mutate in place for performance reasons. If you need a clean copy,
|
|
27
|
+
* keep it first.
|
|
28
|
+
*
|
|
29
|
+
* However, you must use the returned value, which will be whatever is correct.
|
|
30
|
+
*
|
|
31
|
+
* @internal
|
|
32
|
+
* @param interfaceApiName - if undefined
|
|
33
|
+
*/
|
|
34
|
+
export async function convertWireToOsdkObjects(client, objects, interfaceApiName, forceRemoveRid = false, selectedProps, strictNonNull = false) {
|
|
35
|
+
client.logger?.debug(`START convertWireToOsdkObjects()`);
|
|
36
|
+
fixObjectPropertiesInPlace(objects, forceRemoveRid);
|
|
37
|
+
const ifaceDef = interfaceApiName ? await client.ontologyProvider.getInterfaceDefinition(interfaceApiName) : undefined;
|
|
38
|
+
const ifaceSelected = ifaceDef ? selectedProps ?? Object.keys(ifaceDef.properties) : undefined;
|
|
39
|
+
const ret = [];
|
|
40
|
+
for (const rawObj of objects) {
|
|
41
|
+
const objectDef = await client.ontologyProvider.getObjectDefinition(rawObj.$apiName);
|
|
42
|
+
!objectDef ? invariant(false, `Missing definition for '${rawObj.$apiName}'`) : void 0;
|
|
43
|
+
// default value for when we are checking an object
|
|
44
|
+
let objProps;
|
|
45
|
+
let conforming = true;
|
|
46
|
+
if (ifaceDef && ifaceSelected) {
|
|
47
|
+
// API returns interface spt names but we cache by real values
|
|
48
|
+
invariantInterfacesAsViews(objectDef, ifaceDef.apiName, client);
|
|
49
|
+
conforming &&= isConforming(client, ifaceDef, rawObj, ifaceSelected);
|
|
50
|
+
reframeAsObjectInPlace(objectDef, ifaceDef.apiName, rawObj);
|
|
51
|
+
objProps = convertInterfacePropNamesToObjectPropNames(objectDef, ifaceDef.apiName, ifaceSelected);
|
|
52
|
+
} else {
|
|
53
|
+
objProps = selectedProps ?? Object.keys(objectDef.properties);
|
|
54
|
+
}
|
|
55
|
+
conforming &&= isConforming(client, objectDef, rawObj, objProps);
|
|
56
|
+
if (strictNonNull === "throw" && !conforming) {
|
|
57
|
+
throw new Error("Unable to safely convert objects as some non nullable properties are null");
|
|
58
|
+
} else if (strictNonNull === "drop" && !conforming) {
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
let osdkObject = createOsdkObject(client, objectDef, rawObj);
|
|
62
|
+
if (interfaceApiName) osdkObject = osdkObject.$as(interfaceApiName);
|
|
63
|
+
ret.push(osdkObject);
|
|
64
|
+
}
|
|
65
|
+
client.logger?.debug(`END convertWireToOsdkObjects()`);
|
|
66
|
+
return ret;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Utility function that lets us take down selected property names from an interface
|
|
70
|
+
* and convert them to an array of property names on an object.
|
|
71
|
+
*/
|
|
72
|
+
function convertInterfacePropNamesToObjectPropNames(objectDef, interfaceApiName, ifacePropsToMap) {
|
|
73
|
+
return ifacePropsToMap.map(ifaceProp => objectDef.interfaceMap[interfaceApiName][ifaceProp]);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Takes a raw object from the wire (contextually as an interface) and
|
|
77
|
+
* updates the fields to reflect the underlying objectDef instead
|
|
78
|
+
* @param objectDef
|
|
79
|
+
* @param interfaceApiName
|
|
80
|
+
* @param client
|
|
81
|
+
* @param rawObj
|
|
82
|
+
*/
|
|
83
|
+
function reframeAsObjectInPlace(objectDef, interfaceApiName, rawObj) {
|
|
84
|
+
const newProps = {};
|
|
85
|
+
for (const [sptProp, regularProp] of Object.entries(objectDef.interfaceMap[interfaceApiName])) {
|
|
86
|
+
if (sptProp in rawObj) {
|
|
87
|
+
const value = rawObj[sptProp];
|
|
88
|
+
delete rawObj[sptProp];
|
|
89
|
+
if (value !== undefined) {
|
|
90
|
+
newProps[regularProp] = value;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
Object.assign(rawObj, newProps);
|
|
95
|
+
if (!(objectDef.primaryKeyApiName in rawObj)) {
|
|
96
|
+
rawObj[objectDef.primaryKeyApiName] = rawObj.$primaryKey;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
function isConforming(client, def, obj, propsToCheck) {
|
|
100
|
+
for (const propName of propsToCheck) {
|
|
101
|
+
if (def.properties[propName].nullable === false && obj[propName] == null) {
|
|
102
|
+
if (process?.env?.NODE_ENV !== "production") {
|
|
103
|
+
client.logger?.debug({
|
|
104
|
+
obj: {
|
|
105
|
+
$objectType: obj["$objectType"],
|
|
106
|
+
$primaryKey: obj["$primaryKey"]
|
|
107
|
+
}
|
|
108
|
+
}, `Found object that does not conform to its definition. Expected ${def.apiName}'s ${propName} to not be null.`);
|
|
109
|
+
}
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
function invariantInterfacesAsViews(objectDef, interfaceApiName, client) {
|
|
116
|
+
if (objectDef.interfaceMap?.[interfaceApiName] == null) {
|
|
117
|
+
const warning = "Interfaces are only supported 'as views' but your metadata object is missing the correct information. This suggests your interfaces have not been migrated to the newer version yet and you cannot use this version of the SDK.";
|
|
118
|
+
if (client.logger) {
|
|
119
|
+
client.logger.warn(warning);
|
|
120
|
+
} else {
|
|
121
|
+
// eslint-disable-next-line no-console
|
|
122
|
+
console.error(`WARNING! ${warning}`);
|
|
123
|
+
}
|
|
124
|
+
throw new Error(warning);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
function fixObjectPropertiesInPlace(objs, forceRemoveRid) {
|
|
128
|
+
for (const obj of objs) {
|
|
129
|
+
if (forceRemoveRid) {
|
|
130
|
+
delete obj.__rid;
|
|
131
|
+
}
|
|
132
|
+
if (obj.__rid) {
|
|
133
|
+
obj.$rid = obj.__rid;
|
|
134
|
+
delete obj.__rid;
|
|
135
|
+
}
|
|
136
|
+
// Backend returns as __apiName but we want to stick to $ structure
|
|
137
|
+
obj.$apiName = obj.__apiName;
|
|
138
|
+
// for now these are the same but when we start doing interface projections the $objectType will always be underlying and
|
|
139
|
+
// the $apiName will be for the current view (in current designs)
|
|
140
|
+
obj.$objectType = obj.__apiName;
|
|
141
|
+
// copying over for now as its always returned. In the future, this should just be inferred from underlying
|
|
142
|
+
obj.$primaryKey = obj.__primaryKey;
|
|
143
|
+
obj.$title = obj.__title;
|
|
144
|
+
// we don't want people to use these
|
|
145
|
+
delete obj.__apiName;
|
|
146
|
+
delete obj.__primaryKey;
|
|
147
|
+
delete obj.__title;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=convertWireToOsdkObjects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertWireToOsdkObjects.js","names":["invariant","createOsdkObject","convertWireToOsdkObjects","client","objects","interfaceApiName","forceRemoveRid","selectedProps","strictNonNull","logger","debug","fixObjectPropertiesInPlace","ifaceDef","ontologyProvider","getInterfaceDefinition","undefined","ifaceSelected","Object","keys","properties","ret","rawObj","objectDef","getObjectDefinition","$apiName","objProps","conforming","invariantInterfacesAsViews","apiName","isConforming","reframeAsObjectInPlace","convertInterfacePropNamesToObjectPropNames","Error","osdkObject","$as","push","ifacePropsToMap","map","ifaceProp","interfaceMap","newProps","sptProp","regularProp","entries","value","assign","primaryKeyApiName","$primaryKey","def","obj","propsToCheck","propName","nullable","process","env","NODE_ENV","$objectType","warning","warn","console","error","objs","__rid","$rid","__apiName","__primaryKey","$title","__title"],"sources":["convertWireToOsdkObjects.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport invariant from \"tiny-invariant\";\nimport { createOsdkObject } from \"./convertWireToOsdkObjects/createOsdkObject.js\";\n/**\n * If interfaceApiName is not undefined, converts the instances of the\n * interface into their respective\n * underlying concrete types and then returns the $as() representation\n * for the consumers.\n *\n * Otherwise just does the conversion\n *\n * May mutate in place for performance reasons. If you need a clean copy,\n * keep it first.\n *\n * However, you must use the returned value, which will be whatever is correct.\n *\n * @internal\n * @param interfaceApiName - if undefined\n */\nexport async function convertWireToOsdkObjects(client, objects, interfaceApiName, forceRemoveRid = false, selectedProps, strictNonNull = false) {\n client.logger?.debug(`START convertWireToOsdkObjects()`);\n fixObjectPropertiesInPlace(objects, forceRemoveRid);\n const ifaceDef = interfaceApiName\n ? await client.ontologyProvider.getInterfaceDefinition(interfaceApiName)\n : undefined;\n const ifaceSelected = ifaceDef\n ? (selectedProps ?? Object.keys(ifaceDef.properties))\n : undefined;\n const ret = [];\n for (const rawObj of objects) {\n const objectDef = await client.ontologyProvider.getObjectDefinition(rawObj.$apiName);\n invariant(objectDef, `Missing definition for '${rawObj.$apiName}'`);\n // default value for when we are checking an object\n let objProps;\n let conforming = true;\n if (ifaceDef && ifaceSelected) {\n // API returns interface spt names but we cache by real values\n invariantInterfacesAsViews(objectDef, ifaceDef.apiName, client);\n conforming &&= isConforming(client, ifaceDef, rawObj, ifaceSelected);\n reframeAsObjectInPlace(objectDef, ifaceDef.apiName, rawObj);\n objProps = convertInterfacePropNamesToObjectPropNames(objectDef, ifaceDef.apiName, ifaceSelected);\n }\n else {\n objProps = selectedProps ?? Object.keys(objectDef.properties);\n }\n conforming &&= isConforming(client, objectDef, rawObj, objProps);\n if (strictNonNull === \"throw\" && !conforming) {\n throw new Error(\"Unable to safely convert objects as some non nullable properties are null\");\n }\n else if (strictNonNull === \"drop\" && !conforming) {\n continue;\n }\n let osdkObject = createOsdkObject(client, objectDef, rawObj);\n if (interfaceApiName)\n osdkObject = osdkObject.$as(interfaceApiName);\n ret.push(osdkObject);\n }\n client.logger?.debug(`END convertWireToOsdkObjects()`);\n return ret;\n}\n/**\n * Utility function that lets us take down selected property names from an interface\n * and convert them to an array of property names on an object.\n */\nfunction convertInterfacePropNamesToObjectPropNames(objectDef, interfaceApiName, ifacePropsToMap) {\n return ifacePropsToMap.map((ifaceProp) => objectDef.interfaceMap[interfaceApiName][ifaceProp]);\n}\n/**\n * Takes a raw object from the wire (contextually as an interface) and\n * updates the fields to reflect the underlying objectDef instead\n * @param objectDef\n * @param interfaceApiName\n * @param client\n * @param rawObj\n */\nfunction reframeAsObjectInPlace(objectDef, interfaceApiName, rawObj) {\n const newProps = {};\n for (const [sptProp, regularProp] of Object.entries(objectDef.interfaceMap[interfaceApiName])) {\n if (sptProp in rawObj) {\n const value = rawObj[sptProp];\n delete rawObj[sptProp];\n if (value !== undefined) {\n newProps[regularProp] = value;\n }\n }\n }\n Object.assign(rawObj, newProps);\n if (!(objectDef.primaryKeyApiName in rawObj)) {\n rawObj[objectDef.primaryKeyApiName] = rawObj.$primaryKey;\n }\n}\nfunction isConforming(client, def, obj, propsToCheck) {\n for (const propName of propsToCheck) {\n if (def.properties[propName].nullable === false && obj[propName] == null) {\n if (process?.env?.NODE_ENV !== \"production\") {\n client.logger?.debug({\n obj: {\n $objectType: obj[\"$objectType\"],\n $primaryKey: obj[\"$primaryKey\"],\n },\n }, `Found object that does not conform to its definition. Expected ${def.apiName}'s ${propName} to not be null.`);\n }\n return false;\n }\n }\n return true;\n}\nfunction invariantInterfacesAsViews(objectDef, interfaceApiName, client) {\n if (objectDef.interfaceMap?.[interfaceApiName] == null) {\n const warning = \"Interfaces are only supported 'as views' but your metadata object is missing the correct information. This suggests your interfaces have not been migrated to the newer version yet and you cannot use this version of the SDK.\";\n if (client.logger) {\n client.logger.warn(warning);\n }\n else {\n // eslint-disable-next-line no-console\n console.error(`WARNING! ${warning}`);\n }\n throw new Error(warning);\n }\n}\nfunction fixObjectPropertiesInPlace(objs, forceRemoveRid) {\n for (const obj of objs) {\n if (forceRemoveRid) {\n delete obj.__rid;\n }\n if (obj.__rid) {\n obj.$rid = obj.__rid;\n delete obj.__rid;\n }\n // Backend returns as __apiName but we want to stick to $ structure\n obj.$apiName = obj.__apiName;\n // for now these are the same but when we start doing interface projections the $objectType will always be underlying and\n // the $apiName will be for the current view (in current designs)\n obj.$objectType = obj.__apiName;\n // copying over for now as its always returned. In the future, this should just be inferred from underlying\n obj.$primaryKey = obj.__primaryKey;\n obj.$title = obj.__title;\n // we don't want people to use these\n delete obj.__apiName;\n delete obj.__primaryKey;\n delete obj.__title;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertWireToOsdkObjects.test.d.ts","sourceRoot":"","sources":["../../../src/object/convertWireToOsdkObjects.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2023 Palantir Technologies, Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes } from "@osdk/client.test.ontology";
|
|
17
|
+
import { symbolClientContext } from "@osdk/shared.client";
|
|
18
|
+
import { createSharedClientContext } from "@osdk/shared.client.impl";
|
|
19
|
+
import { apiServer } from "@osdk/shared.test";
|
|
20
|
+
import { afterAll, beforeAll, describe, expect, expectTypeOf, it } from "vitest";
|
|
21
|
+
import { createClient } from "../createClient.js";
|
|
22
|
+
import { createMinimalClient } from "../createMinimalClient.js";
|
|
23
|
+
import { convertWireToOsdkObjects } from "./convertWireToOsdkObjects.js";
|
|
24
|
+
describe("convertWireToOsdkObjects", () => {
|
|
25
|
+
let client;
|
|
26
|
+
beforeAll(async () => {
|
|
27
|
+
apiServer.listen();
|
|
28
|
+
client = createClient("https://stack.palantir.com", $ontologyRid, async () => "myAccessToken");
|
|
29
|
+
});
|
|
30
|
+
afterAll(() => {
|
|
31
|
+
apiServer.close();
|
|
32
|
+
});
|
|
33
|
+
it("configures properties correctly", async () => {
|
|
34
|
+
const {
|
|
35
|
+
data: [employee]
|
|
36
|
+
} = await client(Employee).fetchPage();
|
|
37
|
+
expect(Object.keys(employee).sort()).toEqual(["employeeId", "fullName", "office", "class", "startDate", "employeeStatus", "$apiName", "$objectType", "$primaryKey", "$title"].sort());
|
|
38
|
+
expect(Object.keys(employee.$as)).toEqual([]);
|
|
39
|
+
expect(Object.keys(employee.$link)).toEqual(["peeps", "lead", "officeLink"]);
|
|
40
|
+
});
|
|
41
|
+
it("reuses the object prototype across objects", async () => {
|
|
42
|
+
const employees = await client(Employee).fetchPage();
|
|
43
|
+
expect(employees.data.length).toBeGreaterThanOrEqual(2);
|
|
44
|
+
const [a, b] = employees.data;
|
|
45
|
+
expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));
|
|
46
|
+
});
|
|
47
|
+
it("converts attachments as expected", async () => {
|
|
48
|
+
const withValues = await client(objectTypeWithAllPropertyTypes).where({
|
|
49
|
+
id: 1
|
|
50
|
+
}).fetchPage();
|
|
51
|
+
expect(withValues.data.length).toBeGreaterThanOrEqual(1);
|
|
52
|
+
const {
|
|
53
|
+
attachment,
|
|
54
|
+
attachmentArray
|
|
55
|
+
} = withValues.data[0];
|
|
56
|
+
expectTypeOf(attachment).toMatchTypeOf;
|
|
57
|
+
expect(attachment?.rid).toEqual("ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75");
|
|
58
|
+
expect(Array.isArray(attachmentArray)).toBeTruthy();
|
|
59
|
+
expectTypeOf(attachmentArray[0]).toMatchTypeOf;
|
|
60
|
+
const withoutValues = await client(objectTypeWithAllPropertyTypes).where({
|
|
61
|
+
id: 2
|
|
62
|
+
}).fetchPage();
|
|
63
|
+
const {
|
|
64
|
+
attachment: emptyAttachment,
|
|
65
|
+
attachmentArray: emptyAttachmentArray
|
|
66
|
+
} = withoutValues.data[0];
|
|
67
|
+
expect(emptyAttachment).toBeUndefined();
|
|
68
|
+
expect(emptyAttachmentArray).toBeUndefined();
|
|
69
|
+
});
|
|
70
|
+
it("works even with unknown apiNames", async () => {
|
|
71
|
+
const clientCtx = createMinimalClient({
|
|
72
|
+
ontologyRid: $ontologyRid
|
|
73
|
+
}, "https://stack.palantir.com", async () => "myAccessToken");
|
|
74
|
+
createSharedClientContext("https://stack.palantir.com", async () => "myAccessToken", "userAgent");
|
|
75
|
+
let object = {
|
|
76
|
+
__apiName: Employee.apiName,
|
|
77
|
+
__primaryKey: 0
|
|
78
|
+
};
|
|
79
|
+
const prototypeBefore = Object.getPrototypeOf(object);
|
|
80
|
+
let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);
|
|
81
|
+
const prototypeAfter = Object.getPrototypeOf(object2);
|
|
82
|
+
expect(prototypeBefore).not.toBe(prototypeAfter);
|
|
83
|
+
});
|
|
84
|
+
it("updates interface when underlying changes", async () => {
|
|
85
|
+
const clientCtx = createMinimalClient({
|
|
86
|
+
ontologyRid: $ontologyRid
|
|
87
|
+
}, "https://stack.palantir.com", async () => "myAccessToken");
|
|
88
|
+
const [obj] = await convertWireToOsdkObjects(clientCtx, [{
|
|
89
|
+
__apiName: "Employee",
|
|
90
|
+
__primaryKey: 0,
|
|
91
|
+
__title: "Steve",
|
|
92
|
+
fullName: "Steve",
|
|
93
|
+
employeeId: "5"
|
|
94
|
+
}], undefined);
|
|
95
|
+
expect(obj.fullName).toEqual("Steve");
|
|
96
|
+
expect(Object.keys(obj).sort()).toEqual(["$apiName", "$objectType", "$primaryKey", "$title", "employeeId", "fullName"].sort());
|
|
97
|
+
const objAsFoo = obj.$as(FooInterface);
|
|
98
|
+
expect(objAsFoo).toMatchObject({
|
|
99
|
+
fooSpt: obj.fullName,
|
|
100
|
+
$apiName: FooInterface.apiName,
|
|
101
|
+
$primaryKey: obj.$primaryKey,
|
|
102
|
+
$objectType: obj.$objectType,
|
|
103
|
+
$title: obj.$title
|
|
104
|
+
});
|
|
105
|
+
console.log(obj);
|
|
106
|
+
console.log(objAsFoo);
|
|
107
|
+
obj.$updateInternalValues({
|
|
108
|
+
fullName: "Bob"
|
|
109
|
+
});
|
|
110
|
+
expect(obj.fullName).toEqual("Bob");
|
|
111
|
+
expect(objAsFoo.fooSpt).toEqual(obj.fullName);
|
|
112
|
+
expect(Object.keys(objAsFoo).sort()).toEqual(["$apiName", "$objectType", "$primaryKey", "$title", "fooSpt"].sort());
|
|
113
|
+
expect(obj).toBe(objAsFoo.$as(Employee));
|
|
114
|
+
expect(objAsFoo).toBe(obj.$as(FooInterface));
|
|
115
|
+
});
|
|
116
|
+
it("reconstitutes interfaces properly without rid", async () => {
|
|
117
|
+
const clientCtx = createMinimalClient({
|
|
118
|
+
ontologyRid: $ontologyRid
|
|
119
|
+
}, "https://stack.palantir.com", async () => "myAccessToken");
|
|
120
|
+
const [objAsFoo] = await convertWireToOsdkObjects(clientCtx, [{
|
|
121
|
+
__apiName: "Employee",
|
|
122
|
+
__primaryKey: 0,
|
|
123
|
+
__title: "Steve",
|
|
124
|
+
fooSpt: "Steve"
|
|
125
|
+
}], FooInterface.apiName);
|
|
126
|
+
expect(objAsFoo).toMatchInlineSnapshot(`
|
|
127
|
+
{
|
|
128
|
+
"$apiName": "FooInterface",
|
|
129
|
+
"$objectType": "Employee",
|
|
130
|
+
"$primaryKey": 0,
|
|
131
|
+
"$title": "Steve",
|
|
132
|
+
"fooSpt": "Steve",
|
|
133
|
+
}
|
|
134
|
+
`);
|
|
135
|
+
const obj = objAsFoo.$as(Employee);
|
|
136
|
+
expect(obj.fullName).toEqual("Steve");
|
|
137
|
+
expect(obj).toMatchInlineSnapshot(`
|
|
138
|
+
{
|
|
139
|
+
"$apiName": "Employee",
|
|
140
|
+
"$objectType": "Employee",
|
|
141
|
+
"$primaryKey": 0,
|
|
142
|
+
"$title": "Steve",
|
|
143
|
+
"employeeId": 0,
|
|
144
|
+
"fullName": "Steve",
|
|
145
|
+
}
|
|
146
|
+
`);
|
|
147
|
+
});
|
|
148
|
+
it("reconstitutes interfaces properly with rid", async () => {
|
|
149
|
+
const clientCtx = createMinimalClient({
|
|
150
|
+
ontologyRid: $ontologyRid
|
|
151
|
+
}, "https://stack.palantir.com", async () => "myAccessToken");
|
|
152
|
+
const [objAsFoo] = await convertWireToOsdkObjects(clientCtx, [{
|
|
153
|
+
__apiName: "Employee",
|
|
154
|
+
__primaryKey: 0,
|
|
155
|
+
__title: "Steve",
|
|
156
|
+
__rid: "hiMom",
|
|
157
|
+
fooSpt: "Steve"
|
|
158
|
+
}], FooInterface.apiName);
|
|
159
|
+
expect(objAsFoo).toMatchInlineSnapshot(`
|
|
160
|
+
{
|
|
161
|
+
"$apiName": "FooInterface",
|
|
162
|
+
"$objectType": "Employee",
|
|
163
|
+
"$primaryKey": 0,
|
|
164
|
+
"$rid": "hiMom",
|
|
165
|
+
"$title": "Steve",
|
|
166
|
+
"fooSpt": "Steve",
|
|
167
|
+
}
|
|
168
|
+
`);
|
|
169
|
+
expect(objAsFoo.$rid).toEqual("hiMom");
|
|
170
|
+
const obj = objAsFoo.$as(Employee);
|
|
171
|
+
expect(obj.fullName).toEqual("Steve");
|
|
172
|
+
expect(obj).toMatchInlineSnapshot(`
|
|
173
|
+
{
|
|
174
|
+
"$apiName": "Employee",
|
|
175
|
+
"$objectType": "Employee",
|
|
176
|
+
"$primaryKey": 0,
|
|
177
|
+
"$rid": "hiMom",
|
|
178
|
+
"$title": "Steve",
|
|
179
|
+
"employeeId": 0,
|
|
180
|
+
"fullName": "Steve",
|
|
181
|
+
}
|
|
182
|
+
`);
|
|
183
|
+
expect(obj.$rid).toEqual("hiMom");
|
|
184
|
+
});
|
|
185
|
+
describe("selection keys", () => {
|
|
186
|
+
it("throws when required is missing", async () => {
|
|
187
|
+
let object = {
|
|
188
|
+
__apiName: "Employee",
|
|
189
|
+
__primaryKey: 0
|
|
190
|
+
};
|
|
191
|
+
await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, ["employeeId"], "throw")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);
|
|
192
|
+
});
|
|
193
|
+
it("does not throw when optional is missing", async () => {
|
|
194
|
+
await expect(convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
195
|
+
__apiName: "Employee",
|
|
196
|
+
__primaryKey: 0
|
|
197
|
+
}], undefined, undefined, ["fullName"], "throw")).resolves.to.not.toBeUndefined();
|
|
198
|
+
});
|
|
199
|
+
it("filters when it should", async () => {
|
|
200
|
+
const result = await convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
201
|
+
__apiName: "Employee",
|
|
202
|
+
__primaryKey: 0
|
|
203
|
+
}], undefined, undefined, ["employeeId"], "drop");
|
|
204
|
+
expect(result.length).toBe(0);
|
|
205
|
+
});
|
|
206
|
+
it("does not filter when it shouldn't", async () => {
|
|
207
|
+
const result = await convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
208
|
+
__apiName: "Employee",
|
|
209
|
+
__primaryKey: 0
|
|
210
|
+
}], undefined, undefined, ["fullName"], "drop");
|
|
211
|
+
expect(result.length).toBe(1);
|
|
212
|
+
});
|
|
213
|
+
});
|
|
214
|
+
describe("without selection keys", () => {
|
|
215
|
+
it("throws when required is missing", async () => {
|
|
216
|
+
let object = {
|
|
217
|
+
__apiName: "Employee",
|
|
218
|
+
__primaryKey: 0
|
|
219
|
+
};
|
|
220
|
+
await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, "throw")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);
|
|
221
|
+
});
|
|
222
|
+
it("does not throw when required is present", async () => {
|
|
223
|
+
await expect(convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
224
|
+
__apiName: "Employee",
|
|
225
|
+
__primaryKey: 0,
|
|
226
|
+
"employeeId": 0
|
|
227
|
+
}], undefined, undefined, undefined, "throw")).resolves.to.not.toBeUndefined();
|
|
228
|
+
});
|
|
229
|
+
it("filters when it should", async () => {
|
|
230
|
+
const result = await convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
231
|
+
__apiName: "Employee",
|
|
232
|
+
__primaryKey: 0
|
|
233
|
+
}], undefined, undefined, undefined, "drop");
|
|
234
|
+
expect(result.length).toBe(0);
|
|
235
|
+
});
|
|
236
|
+
it("does not filter when it shouldn't", async () => {
|
|
237
|
+
const result = await convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
238
|
+
__apiName: "Employee",
|
|
239
|
+
__primaryKey: 0,
|
|
240
|
+
"employeeId": 0
|
|
241
|
+
}], undefined, undefined, undefined, "drop");
|
|
242
|
+
expect(result.length).toBe(1);
|
|
243
|
+
});
|
|
244
|
+
});
|
|
245
|
+
it("behaves correctly when converting", async () => {
|
|
246
|
+
const result = await convertWireToOsdkObjects(client[symbolClientContext], [{
|
|
247
|
+
__apiName: "Employee",
|
|
248
|
+
__primaryKey: 0,
|
|
249
|
+
fooSpt: "hi"
|
|
250
|
+
}], "FooInterface", undefined, ["fooSpt"], "drop");
|
|
251
|
+
expect(result.length).toBe(1);
|
|
252
|
+
});
|
|
253
|
+
});
|
|
254
|
+
//# sourceMappingURL=convertWireToOsdkObjects.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","symbolClientContext","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","createMinimalClient","convertWireToOsdkObjects","client","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","where","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","obj","__title","fullName","employeeId","objAsFoo","toMatchObject","fooSpt","$apiName","$primaryKey","$objectType","$title","console","log","$updateInternalValues","toMatchInlineSnapshot","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result"],"sources":["convertWireToOsdkObjects.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { symbolClientContext } from \"@osdk/shared.client\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"works even with unknown apiNames\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"updates interface when underlying changes\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n employeeId: \"5\",\n };\n const [obj] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], undefined));\n expect(obj.fullName).toEqual(\"Steve\");\n expect(Object.keys(obj).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"employeeId\",\n \"fullName\",\n ].sort());\n const objAsFoo = obj.$as(FooInterface);\n expect(objAsFoo).toMatchObject({\n fooSpt: obj.fullName,\n $apiName: FooInterface.apiName,\n $primaryKey: obj.$primaryKey,\n $objectType: obj.$objectType,\n $title: obj.$title,\n });\n console.log(obj);\n console.log(objAsFoo);\n obj.$updateInternalValues({\n fullName: \"Bob\",\n });\n expect(obj.fullName).toEqual(\"Bob\");\n expect(objAsFoo.fooSpt).toEqual(obj.fullName);\n expect(Object.keys(objAsFoo).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"fooSpt\",\n ].sort());\n expect(obj).toBe(objAsFoo.$as(Employee));\n expect(objAsFoo).toBe(obj.$as(FooInterface));\n });\n it(\"reconstitutes interfaces properly without rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\");\n expect(result.length).toBe(1);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchPage.d.ts","sourceRoot":"","sources":["../../../src/object/fetchPage.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,OAAO,EAOP,2BAA2B,EAE3B,YAAY,EAEb,MAAM,WAAW,CAAC;AAgBnB,wBAAgB,OAAO,CACrB,CAAC,SAAS,2BAA2B,EACrC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAEzB,IAAI,EAAE,CAAC,EACP,GAAG,UAAU,EAAE,CAAC,EAAE,GACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAEf"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2023 Palantir Technologies, Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import * as OntologiesV2 from "@osdk/internal.foundry.ontologiesv2";
|
|
17
|
+
import { addUserAgentAndRequestContextHeaders } from "../util/addUserAgentAndRequestContextHeaders.js";
|
|
18
|
+
import { convertWireToOsdkObjects } from "./convertWireToOsdkObjects.js";
|
|
19
|
+
export function augment(type, ...properties) {
|
|
20
|
+
return {
|
|
21
|
+
[type.apiName]: properties
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/** @internal */
|
|
25
|
+
export function objectSetToSearchJsonV2(objectSet, expectedApiName, existingWhere = undefined) {
|
|
26
|
+
if (objectSet.type === "base") {
|
|
27
|
+
if (objectSet.objectType !== expectedApiName) {
|
|
28
|
+
throw new Error(`Expected objectSet.objectType to be ${expectedApiName}, but got ${objectSet.objectType}`);
|
|
29
|
+
}
|
|
30
|
+
return existingWhere;
|
|
31
|
+
}
|
|
32
|
+
if (objectSet.type === "filter") {
|
|
33
|
+
return objectSetToSearchJsonV2(objectSet.objectSet, expectedApiName, existingWhere == null ? objectSet.where : {
|
|
34
|
+
type: "and",
|
|
35
|
+
value: [existingWhere, objectSet.where]
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
throw new Error(`Unsupported objectSet type: ${objectSet.type}`);
|
|
39
|
+
}
|
|
40
|
+
async function fetchInterfacePage(client, interfaceType, args, objectSet) {
|
|
41
|
+
const result = await OntologiesV2.OntologyInterfaces.search(addUserAgentAndRequestContextHeaders(client, interfaceType), await client.ontologyRid, interfaceType.apiName, applyFetchArgs(args, {
|
|
42
|
+
augmentedProperties: args.$augment ?? {},
|
|
43
|
+
augmentedSharedPropertyTypes: {},
|
|
44
|
+
otherInterfaceTypes: [],
|
|
45
|
+
selectedObjectTypes: args.$__EXPERIMENTAL_selectedObjectTypes ?? [],
|
|
46
|
+
selectedSharedPropertyTypes: args.$select ?? [],
|
|
47
|
+
where: objectSetToSearchJsonV2(objectSet, interfaceType.apiName)
|
|
48
|
+
}), {
|
|
49
|
+
preview: true
|
|
50
|
+
});
|
|
51
|
+
result.data = await convertWireToOsdkObjects(client, result.data,
|
|
52
|
+
// drop readonly
|
|
53
|
+
interfaceType.apiName, !args.$includeRid);
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
export async function fetchPageInternal(client, objectType, objectSet, args = {}) {
|
|
58
|
+
if (objectType.type === "interface") {
|
|
59
|
+
return await fetchInterfacePage(client, objectType, args, objectSet); // fixme
|
|
60
|
+
} else {
|
|
61
|
+
return await fetchObjectPage(client, objectType, args, objectSet); // fixme
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/** @internal */
|
|
65
|
+
export async function fetchPageWithErrorsInternal(client, objectType, objectSet, args = {}) {
|
|
66
|
+
try {
|
|
67
|
+
const result = await fetchPageInternal(client, objectType, objectSet, args);
|
|
68
|
+
return {
|
|
69
|
+
value: result
|
|
70
|
+
};
|
|
71
|
+
} catch (e) {
|
|
72
|
+
if (e instanceof Error) {
|
|
73
|
+
return {
|
|
74
|
+
error: e
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
return {
|
|
78
|
+
error: e
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* @param client
|
|
84
|
+
* @param objectType
|
|
85
|
+
* @param args
|
|
86
|
+
* @param objectSet
|
|
87
|
+
* @returns
|
|
88
|
+
* @internal
|
|
89
|
+
*/
|
|
90
|
+
export async function fetchPage(client, objectType, args, objectSet = {
|
|
91
|
+
type: "base",
|
|
92
|
+
objectType: objectType["apiName"]
|
|
93
|
+
}) {
|
|
94
|
+
return fetchPageInternal(client, objectType, objectSet, args);
|
|
95
|
+
}
|
|
96
|
+
/** @internal */
|
|
97
|
+
export async function fetchPageWithErrors(client, objectType, args, objectSet = {
|
|
98
|
+
type: "base",
|
|
99
|
+
objectType: objectType["apiName"]
|
|
100
|
+
}) {
|
|
101
|
+
return fetchPageWithErrorsInternal(client, objectType, objectSet, args);
|
|
102
|
+
}
|
|
103
|
+
function applyFetchArgs(args, body) {
|
|
104
|
+
if (args?.$nextPageToken) {
|
|
105
|
+
body.pageToken = args.$nextPageToken;
|
|
106
|
+
}
|
|
107
|
+
if (args?.$pageSize != null) {
|
|
108
|
+
body.pageSize = args.$pageSize;
|
|
109
|
+
}
|
|
110
|
+
if (args?.$orderBy != null) {
|
|
111
|
+
body.orderBy = {
|
|
112
|
+
fields: Object.entries(args.$orderBy).map(([field, direction]) => ({
|
|
113
|
+
field,
|
|
114
|
+
direction
|
|
115
|
+
}))
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
return body;
|
|
119
|
+
}
|
|
120
|
+
/** @internal */
|
|
121
|
+
export async function fetchObjectPage(client, objectType, args, objectSet) {
|
|
122
|
+
const r = await OntologiesV2.OntologyObjectSets.load(addUserAgentAndRequestContextHeaders(client, objectType), await client.ontologyRid, applyFetchArgs(args, {
|
|
123
|
+
objectSet,
|
|
124
|
+
// We have to do the following case because LoadObjectSetRequestV2 isn't readonly
|
|
125
|
+
select: args?.$select ?? [],
|
|
126
|
+
// FIXME?
|
|
127
|
+
excludeRid: !args?.$includeRid
|
|
128
|
+
}));
|
|
129
|
+
return Promise.resolve({
|
|
130
|
+
data: await convertWireToOsdkObjects(client, r.data, undefined, undefined, args.$select, args.$__EXPERIMENTAL_strictNonNull),
|
|
131
|
+
nextPageToken: r.nextPageToken,
|
|
132
|
+
totalCount: r.totalCount
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=fetchPage.js.map
|