@osdk/client 2.7.0-beta.9 → 2.7.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 +236 -0
- package/build/browser/MinimalClientContext.js.map +1 -1
- package/build/browser/actions/actions.test.js +9 -8
- package/build/browser/actions/actions.test.js.map +1 -1
- package/build/browser/actions/applyAction.js +0 -4
- package/build/browser/actions/applyAction.js.map +1 -1
- package/build/browser/createClient.js +1 -2
- package/build/browser/createClient.js.map +1 -1
- package/build/browser/createMinimalClient.js +0 -1
- package/build/browser/createMinimalClient.js.map +1 -1
- package/build/browser/derivedProperties/createWithPropertiesObjectSet.js +1 -17
- package/build/browser/derivedProperties/createWithPropertiesObjectSet.js.map +1 -1
- package/build/browser/index.js +1 -1
- package/build/browser/index.js.map +1 -1
- package/build/browser/internal/conversions/modernToLegacyWhereClause.js +14 -9
- package/build/browser/internal/conversions/modernToLegacyWhereClause.js.map +1 -1
- package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js +74 -0
- package/build/browser/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -1
- package/build/browser/object/SimpleOsdkProperties.js.map +1 -1
- package/build/browser/object/aggregate.js +0 -1
- package/build/browser/object/aggregate.js.map +1 -1
- package/build/browser/object/convertWireToOsdkObjects/BaseHolder.js.map +1 -1
- package/build/browser/object/fetchPage.js +0 -2
- package/build/browser/object/fetchPage.js.map +1 -1
- package/build/browser/objectSet/ObjectSetListenerWebsocket.js +13 -4
- package/build/browser/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
- package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js +46 -2
- package/build/browser/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
- package/build/browser/objectSet/createObjectSet.js +1 -1
- package/build/browser/objectSet/createObjectSet.js.map +1 -1
- package/build/browser/objectSet/fetchLinksPage.js +0 -1
- package/build/browser/objectSet/fetchLinksPage.js.map +1 -1
- package/build/browser/observable/FunctionPayload.js +2 -0
- package/build/browser/observable/FunctionPayload.js.map +1 -0
- package/build/browser/observable/ObservableClient.js.map +1 -1
- package/build/browser/observable/internal/BulkObjectLoader.js +2 -1
- package/build/browser/observable/internal/BulkObjectLoader.js.map +1 -1
- package/build/browser/observable/internal/Changes.js +4 -1
- package/build/browser/observable/internal/Changes.js.map +1 -1
- package/build/browser/observable/internal/KnownCacheKey.js.map +1 -1
- package/build/browser/observable/internal/ObservableClientImpl.js +21 -1
- package/build/browser/observable/internal/ObservableClientImpl.js.map +1 -1
- package/build/browser/observable/internal/RidListCanonicalizer.js +30 -0
- package/build/browser/observable/internal/RidListCanonicalizer.js.map +1 -0
- package/build/browser/observable/internal/RidListCanonicalizer.test.js +50 -0
- package/build/browser/observable/internal/RidListCanonicalizer.test.js.map +1 -0
- package/build/browser/observable/internal/Store.js +11 -1
- package/build/browser/observable/internal/Store.js.map +1 -1
- package/build/browser/observable/internal/Store.test.js +57 -4
- package/build/browser/observable/internal/Store.test.js.map +1 -1
- package/build/browser/observable/internal/actions/ActionApplication.js +12 -9
- package/build/browser/observable/internal/actions/ActionApplication.js.map +1 -1
- package/build/browser/observable/internal/base-list/BaseCollectionQuery.js.map +1 -1
- package/build/browser/observable/internal/base-list/BaseListQuery.js +15 -9
- package/build/browser/observable/internal/base-list/BaseListQuery.js.map +1 -1
- package/build/browser/observable/internal/base-list/createCollectionConnectable.js +4 -2
- package/build/browser/observable/internal/base-list/createCollectionConnectable.js.map +1 -1
- package/build/browser/observable/internal/base-list/createCollectionConnectable.test.js +1 -2
- package/build/browser/observable/internal/base-list/createCollectionConnectable.test.js.map +1 -1
- package/build/browser/observable/internal/evaluateFilter.js +1 -1
- package/build/browser/observable/internal/evaluateFilter.js.map +1 -1
- package/build/browser/observable/internal/evaluateFilter.test.js +105 -0
- package/build/browser/observable/internal/evaluateFilter.test.js.map +1 -0
- package/build/browser/observable/internal/function/FunctionCacheKey.js +26 -0
- package/build/browser/observable/internal/function/FunctionCacheKey.js.map +1 -0
- package/build/browser/observable/internal/function/FunctionParamsCanonicalizer.js +151 -0
- package/build/browser/observable/internal/function/FunctionParamsCanonicalizer.js.map +1 -0
- package/build/browser/observable/internal/function/FunctionParamsCanonicalizer.test.js +186 -0
- package/build/browser/observable/internal/function/FunctionParamsCanonicalizer.test.js.map +1 -0
- package/build/browser/observable/internal/function/FunctionQuery.js +137 -0
- package/build/browser/observable/internal/function/FunctionQuery.js.map +1 -0
- package/build/browser/observable/internal/function/FunctionQuery.test.js +278 -0
- package/build/browser/observable/internal/function/FunctionQuery.test.js.map +1 -0
- package/build/browser/observable/internal/function/FunctionsHelper.js +92 -0
- package/build/browser/observable/internal/function/FunctionsHelper.js.map +1 -0
- package/build/browser/observable/internal/links/SpecificLinkQuery.js +2 -1
- package/build/browser/observable/internal/links/SpecificLinkQuery.js.map +1 -1
- package/build/browser/observable/internal/list/InterfaceListQuery.js +27 -10
- package/build/browser/observable/internal/list/InterfaceListQuery.js.map +1 -1
- package/build/browser/observable/internal/list/ListCacheKey.js +1 -0
- package/build/browser/observable/internal/list/ListCacheKey.js.map +1 -1
- package/build/browser/observable/internal/list/ListQuery.js +10 -4
- package/build/browser/observable/internal/list/ListQuery.js.map +1 -1
- package/build/browser/observable/internal/list/ListQuery.test.js +167 -3
- package/build/browser/observable/internal/list/ListQuery.test.js.map +1 -1
- package/build/browser/observable/internal/list/ListsHelper.js +6 -3
- package/build/browser/observable/internal/list/ListsHelper.js.map +1 -1
- package/build/browser/observable/internal/list/ObjectListQuery.js +23 -9
- package/build/browser/observable/internal/list/ObjectListQuery.js.map +1 -1
- package/build/browser/observable/internal/object/ObjectQuery.js +15 -1
- package/build/browser/observable/internal/object/ObjectQuery.js.map +1 -1
- package/build/browser/observable/internal/object/ObjectsHelper.js +1 -3
- package/build/browser/observable/internal/object/ObjectsHelper.js.map +1 -1
- package/build/browser/observable/internal/objectMatchesWhereClause.test.js +11 -1
- package/build/browser/observable/internal/objectMatchesWhereClause.test.js.map +1 -1
- package/build/browser/observable/internal/objectset/ObjectSetQuery.js +6 -2
- package/build/browser/observable/internal/objectset/ObjectSetQuery.js.map +1 -1
- package/build/browser/observable/internal/testUtils.js +8 -5
- package/build/browser/observable/internal/testUtils.js.map +1 -1
- package/build/browser/observable/internal/utils/rdpFieldOperations.js +6 -3
- package/build/browser/observable/internal/utils/rdpFieldOperations.js.map +1 -1
- package/build/browser/ontology/loadActionMetadata.js +1 -3
- package/build/browser/ontology/loadActionMetadata.js.map +1 -1
- package/build/browser/ontology/loadFullObjectMetadata.js +1 -2
- package/build/browser/ontology/loadFullObjectMetadata.js.map +1 -1
- package/build/browser/ontology/loadInterfaceMetadata.js +1 -2
- package/build/browser/ontology/loadInterfaceMetadata.js.map +1 -1
- package/build/browser/public/unstable-do-not-use.js.map +1 -1
- package/build/browser/queries/applyQuery.js +14 -0
- package/build/browser/queries/applyQuery.js.map +1 -1
- package/build/browser/queries/queries.test.js +14 -2
- package/build/browser/queries/queries.test.js.map +1 -1
- package/build/browser/util/UserAgent.js +2 -2
- package/build/browser/util/UserAgent.js.map +1 -1
- package/build/browser/util/isObjectSpecifiersObject.js.map +1 -1
- package/build/browser/util/toDataValue.js +0 -5
- package/build/browser/util/toDataValue.js.map +1 -1
- package/build/browser/util/toDataValue.test.js +2 -7
- package/build/browser/util/toDataValue.test.js.map +1 -1
- package/build/cjs/{Client-DaUJl7jZ.d.cts → Client-Cmx6x_V1.d.cts} +1 -1
- package/build/cjs/{chunk-IQJTM3KW.cjs → chunk-W4BHRZWL.cjs} +79 -82
- package/build/cjs/chunk-W4BHRZWL.cjs.map +1 -0
- package/build/cjs/{chunk-PARVKNVB.cjs → chunk-Y362HOIZ.cjs} +30 -35
- package/build/cjs/chunk-Y362HOIZ.cjs.map +1 -0
- package/build/cjs/{createClient-D5G3qzAO.d.cts → createClient-BDmrDOzZ.d.cts} +1 -2
- package/build/cjs/index.cjs +8 -12
- package/build/cjs/index.cjs.map +1 -1
- package/build/cjs/index.d.cts +3 -3
- package/build/cjs/public/internal.cjs +8 -8
- package/build/cjs/public/internal.d.cts +1 -1
- package/build/cjs/public/unstable-do-not-use.cjs +537 -95
- package/build/cjs/public/unstable-do-not-use.cjs.map +1 -1
- package/build/cjs/public/unstable-do-not-use.d.cts +75 -4
- package/build/esm/MinimalClientContext.js.map +1 -1
- package/build/esm/actions/actions.test.js +9 -8
- package/build/esm/actions/actions.test.js.map +1 -1
- package/build/esm/actions/applyAction.js +0 -4
- package/build/esm/actions/applyAction.js.map +1 -1
- package/build/esm/createClient.js +1 -2
- package/build/esm/createClient.js.map +1 -1
- package/build/esm/createMinimalClient.js +0 -1
- package/build/esm/createMinimalClient.js.map +1 -1
- package/build/esm/derivedProperties/createWithPropertiesObjectSet.js +1 -17
- package/build/esm/derivedProperties/createWithPropertiesObjectSet.js.map +1 -1
- package/build/esm/index.js +1 -1
- package/build/esm/index.js.map +1 -1
- package/build/esm/internal/conversions/modernToLegacyWhereClause.js +14 -9
- package/build/esm/internal/conversions/modernToLegacyWhereClause.js.map +1 -1
- package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js +74 -0
- package/build/esm/internal/conversions/modernToLegacyWhereClause.test.js.map +1 -1
- package/build/esm/object/SimpleOsdkProperties.js.map +1 -1
- package/build/esm/object/aggregate.js +0 -1
- package/build/esm/object/aggregate.js.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/BaseHolder.js.map +1 -1
- package/build/esm/object/fetchPage.js +0 -2
- package/build/esm/object/fetchPage.js.map +1 -1
- package/build/esm/objectSet/ObjectSetListenerWebsocket.js +13 -4
- package/build/esm/objectSet/ObjectSetListenerWebsocket.js.map +1 -1
- package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js +46 -2
- package/build/esm/objectSet/ObjectSetListenerWebsocket.test.js.map +1 -1
- package/build/esm/objectSet/createObjectSet.js +1 -1
- package/build/esm/objectSet/createObjectSet.js.map +1 -1
- package/build/esm/objectSet/fetchLinksPage.js +0 -1
- package/build/esm/objectSet/fetchLinksPage.js.map +1 -1
- package/build/esm/observable/FunctionPayload.js +2 -0
- package/build/esm/observable/FunctionPayload.js.map +1 -0
- package/build/esm/observable/ObservableClient.js.map +1 -1
- package/build/esm/observable/internal/BulkObjectLoader.js +2 -1
- package/build/esm/observable/internal/BulkObjectLoader.js.map +1 -1
- package/build/esm/observable/internal/Changes.js +4 -1
- package/build/esm/observable/internal/Changes.js.map +1 -1
- package/build/esm/observable/internal/KnownCacheKey.js.map +1 -1
- package/build/esm/observable/internal/ObservableClientImpl.js +21 -1
- package/build/esm/observable/internal/ObservableClientImpl.js.map +1 -1
- package/build/esm/observable/internal/RidListCanonicalizer.js +30 -0
- package/build/esm/observable/internal/RidListCanonicalizer.js.map +1 -0
- package/build/esm/observable/internal/RidListCanonicalizer.test.js +50 -0
- package/build/esm/observable/internal/RidListCanonicalizer.test.js.map +1 -0
- package/build/esm/observable/internal/Store.js +11 -1
- package/build/esm/observable/internal/Store.js.map +1 -1
- package/build/esm/observable/internal/Store.test.js +57 -4
- package/build/esm/observable/internal/Store.test.js.map +1 -1
- package/build/esm/observable/internal/actions/ActionApplication.js +12 -9
- package/build/esm/observable/internal/actions/ActionApplication.js.map +1 -1
- package/build/esm/observable/internal/base-list/BaseCollectionQuery.js.map +1 -1
- package/build/esm/observable/internal/base-list/BaseListQuery.js +15 -9
- package/build/esm/observable/internal/base-list/BaseListQuery.js.map +1 -1
- package/build/esm/observable/internal/base-list/createCollectionConnectable.js +4 -2
- package/build/esm/observable/internal/base-list/createCollectionConnectable.js.map +1 -1
- package/build/esm/observable/internal/base-list/createCollectionConnectable.test.js +1 -2
- package/build/esm/observable/internal/base-list/createCollectionConnectable.test.js.map +1 -1
- package/build/esm/observable/internal/evaluateFilter.js +1 -1
- package/build/esm/observable/internal/evaluateFilter.js.map +1 -1
- package/build/esm/observable/internal/evaluateFilter.test.js +105 -0
- package/build/esm/observable/internal/evaluateFilter.test.js.map +1 -0
- package/build/esm/observable/internal/function/FunctionCacheKey.js +26 -0
- package/build/esm/observable/internal/function/FunctionCacheKey.js.map +1 -0
- package/build/esm/observable/internal/function/FunctionParamsCanonicalizer.js +151 -0
- package/build/esm/observable/internal/function/FunctionParamsCanonicalizer.js.map +1 -0
- package/build/esm/observable/internal/function/FunctionParamsCanonicalizer.test.js +186 -0
- package/build/esm/observable/internal/function/FunctionParamsCanonicalizer.test.js.map +1 -0
- package/build/esm/observable/internal/function/FunctionQuery.js +137 -0
- package/build/esm/observable/internal/function/FunctionQuery.js.map +1 -0
- package/build/esm/observable/internal/function/FunctionQuery.test.js +278 -0
- package/build/esm/observable/internal/function/FunctionQuery.test.js.map +1 -0
- package/build/esm/observable/internal/function/FunctionsHelper.js +92 -0
- package/build/esm/observable/internal/function/FunctionsHelper.js.map +1 -0
- package/build/esm/observable/internal/links/SpecificLinkQuery.js +2 -1
- package/build/esm/observable/internal/links/SpecificLinkQuery.js.map +1 -1
- package/build/esm/observable/internal/list/InterfaceListQuery.js +27 -10
- package/build/esm/observable/internal/list/InterfaceListQuery.js.map +1 -1
- package/build/esm/observable/internal/list/ListCacheKey.js +1 -0
- package/build/esm/observable/internal/list/ListCacheKey.js.map +1 -1
- package/build/esm/observable/internal/list/ListQuery.js +10 -4
- package/build/esm/observable/internal/list/ListQuery.js.map +1 -1
- package/build/esm/observable/internal/list/ListQuery.test.js +167 -3
- package/build/esm/observable/internal/list/ListQuery.test.js.map +1 -1
- package/build/esm/observable/internal/list/ListsHelper.js +6 -3
- package/build/esm/observable/internal/list/ListsHelper.js.map +1 -1
- package/build/esm/observable/internal/list/ObjectListQuery.js +23 -9
- package/build/esm/observable/internal/list/ObjectListQuery.js.map +1 -1
- package/build/esm/observable/internal/object/ObjectQuery.js +15 -1
- package/build/esm/observable/internal/object/ObjectQuery.js.map +1 -1
- package/build/esm/observable/internal/object/ObjectsHelper.js +1 -3
- package/build/esm/observable/internal/object/ObjectsHelper.js.map +1 -1
- package/build/esm/observable/internal/objectMatchesWhereClause.test.js +11 -1
- package/build/esm/observable/internal/objectMatchesWhereClause.test.js.map +1 -1
- package/build/esm/observable/internal/objectset/ObjectSetQuery.js +6 -2
- package/build/esm/observable/internal/objectset/ObjectSetQuery.js.map +1 -1
- package/build/esm/observable/internal/testUtils.js +8 -5
- package/build/esm/observable/internal/testUtils.js.map +1 -1
- package/build/esm/observable/internal/utils/rdpFieldOperations.js +6 -3
- package/build/esm/observable/internal/utils/rdpFieldOperations.js.map +1 -1
- package/build/esm/ontology/loadActionMetadata.js +1 -3
- package/build/esm/ontology/loadActionMetadata.js.map +1 -1
- package/build/esm/ontology/loadFullObjectMetadata.js +1 -2
- package/build/esm/ontology/loadFullObjectMetadata.js.map +1 -1
- package/build/esm/ontology/loadInterfaceMetadata.js +1 -2
- package/build/esm/ontology/loadInterfaceMetadata.js.map +1 -1
- package/build/esm/public/unstable-do-not-use.js.map +1 -1
- package/build/esm/queries/applyQuery.js +14 -0
- package/build/esm/queries/applyQuery.js.map +1 -1
- package/build/esm/queries/queries.test.js +14 -2
- package/build/esm/queries/queries.test.js.map +1 -1
- package/build/esm/util/UserAgent.js +2 -2
- package/build/esm/util/UserAgent.js.map +1 -1
- package/build/esm/util/isObjectSpecifiersObject.js.map +1 -1
- package/build/esm/util/toDataValue.js +0 -5
- package/build/esm/util/toDataValue.js.map +1 -1
- package/build/esm/util/toDataValue.test.js +2 -7
- package/build/esm/util/toDataValue.test.js.map +1 -1
- package/build/types/MinimalClientContext.d.ts +1 -1
- package/build/types/actions/applyAction.d.ts.map +1 -1
- package/build/types/createClient.d.ts +0 -1
- package/build/types/createClient.d.ts.map +1 -1
- package/build/types/index.d.ts +1 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/types/objectSet/createObjectSet.d.ts +14 -1
- package/build/types/objectSet/createObjectSet.d.ts.map +1 -1
- package/build/types/objectSet/fetchLinksPage.d.ts +9 -1
- package/build/types/objectSet/fetchLinksPage.d.ts.map +1 -1
- package/build/types/observable/FunctionPayload.d.ts +10 -0
- package/build/types/observable/FunctionPayload.d.ts.map +1 -0
- package/build/types/observable/ObservableClient.d.ts +73 -1
- package/build/types/observable/ObservableClient.d.ts.map +1 -1
- package/build/types/observable/internal/BulkObjectLoader.d.ts.map +1 -1
- package/build/types/observable/internal/Changes.d.ts +5 -3
- package/build/types/observable/internal/Changes.d.ts.map +1 -1
- package/build/types/observable/internal/KnownCacheKey.d.ts +2 -1
- package/build/types/observable/internal/KnownCacheKey.d.ts.map +1 -1
- package/build/types/observable/internal/RidListCanonicalizer.d.ts +5 -0
- package/build/types/observable/internal/RidListCanonicalizer.d.ts.map +1 -0
- package/build/types/observable/internal/RidListCanonicalizer.test.d.ts +1 -0
- package/build/types/observable/internal/RidListCanonicalizer.test.d.ts.map +1 -0
- package/build/types/observable/internal/Store.d.ts +7 -1
- package/build/types/observable/internal/Store.d.ts.map +1 -1
- package/build/types/observable/internal/Store.test.d.ts.map +1 -1
- package/build/types/observable/internal/actions/ActionApplication.d.ts.map +1 -1
- package/build/types/observable/internal/base-list/BaseCollectionQuery.d.ts +3 -0
- package/build/types/observable/internal/base-list/BaseCollectionQuery.d.ts.map +1 -1
- package/build/types/observable/internal/base-list/BaseListQuery.d.ts +3 -1
- package/build/types/observable/internal/base-list/BaseListQuery.d.ts.map +1 -1
- package/build/types/observable/internal/evaluateFilter.test.d.ts +1 -0
- package/build/types/observable/internal/evaluateFilter.test.d.ts.map +1 -0
- package/build/types/observable/internal/function/FunctionCacheKey.d.ts +17 -0
- package/build/types/observable/internal/function/FunctionCacheKey.d.ts.map +1 -0
- package/build/types/observable/internal/function/FunctionParamsCanonicalizer.d.ts +16 -0
- package/build/types/observable/internal/function/FunctionParamsCanonicalizer.d.ts.map +1 -0
- package/build/types/observable/internal/function/FunctionParamsCanonicalizer.test.d.ts +1 -0
- package/build/types/observable/internal/function/FunctionParamsCanonicalizer.test.d.ts.map +1 -0
- package/build/types/observable/internal/function/FunctionQuery.d.ts +40 -0
- package/build/types/observable/internal/function/FunctionQuery.d.ts.map +1 -0
- package/build/types/observable/internal/function/FunctionQuery.test.d.ts +1 -0
- package/build/types/observable/internal/function/FunctionQuery.test.d.ts.map +1 -0
- package/build/types/observable/internal/function/FunctionsHelper.d.ts +25 -0
- package/build/types/observable/internal/function/FunctionsHelper.d.ts.map +1 -0
- package/build/types/observable/internal/links/SpecificLinkQuery.d.ts.map +1 -1
- package/build/types/observable/internal/list/InterfaceListQuery.d.ts +3 -0
- package/build/types/observable/internal/list/InterfaceListQuery.d.ts.map +1 -1
- package/build/types/observable/internal/list/ListCacheKey.d.ts +2 -1
- package/build/types/observable/internal/list/ListCacheKey.d.ts.map +1 -1
- package/build/types/observable/internal/list/ListQuery.d.ts +1 -1
- package/build/types/observable/internal/list/ListQuery.d.ts.map +1 -1
- package/build/types/observable/internal/list/ListsHelper.d.ts +3 -1
- package/build/types/observable/internal/list/ListsHelper.d.ts.map +1 -1
- package/build/types/observable/internal/list/ObjectListQuery.d.ts.map +1 -1
- package/build/types/observable/internal/object/ObjectQuery.d.ts.map +1 -1
- package/build/types/observable/internal/object/ObjectsHelper.d.ts.map +1 -1
- package/build/types/observable/internal/objectset/ObjectSetQuery.d.ts +1 -0
- package/build/types/observable/internal/objectset/ObjectSetQuery.d.ts.map +1 -1
- package/build/types/observable/internal/testUtils.d.ts.map +1 -1
- package/build/types/observable/internal/utils/rdpFieldOperations.d.ts.map +1 -1
- package/build/types/public/unstable-do-not-use.d.ts +2 -1
- package/build/types/public/unstable-do-not-use.d.ts.map +1 -1
- package/build/types/queries/applyQuery.d.ts.map +1 -1
- package/build/types/util/isObjectSpecifiersObject.d.ts +1 -0
- package/build/types/util/isObjectSpecifiersObject.d.ts.map +1 -1
- package/package.json +11 -12
- package/build/cjs/chunk-IQJTM3KW.cjs.map +0 -1
- package/build/cjs/chunk-PARVKNVB.cjs.map +0 -1
- package/build/cjs/delay-W2TSML2P.cjs +0 -75
- package/build/cjs/delay-W2TSML2P.cjs.map +0 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { ObjectOrInterfaceDefinition, PropertyKeys, Augment, ObjectTypeDefinition, InterfaceDefinition, WirePropertyTypes, WhereClause, DerivedProperty, ObjectSet, LinkNames, BaseObjectSet, CompileTimeMetadata, PrimaryKeyType, Osdk, SimplePropertyDef, AggregateOpts, AggregationsResults, ActionDefinition, ActionEditResponse, ActionValidationResponse } from '@osdk/api';
|
|
2
|
-
import { C as Client, A as ActionSignatureFromDef } from '../Client-
|
|
3
|
-
export { a as
|
|
1
|
+
import { ObjectOrInterfaceDefinition, PropertyKeys, Augment, ObjectTypeDefinition, InterfaceDefinition, WirePropertyTypes, WhereClause, DerivedProperty, ObjectSet, LinkNames, BaseObjectSet, CompileTimeMetadata, PrimaryKeyType, Osdk, SimplePropertyDef, AggregateOpts, AggregationsResults, QueryDefinition, ActionDefinition, ActionEditResponse, ActionValidationResponse } from '@osdk/api';
|
|
2
|
+
import { C as Client, Q as QueryReturnType, A as ActionSignatureFromDef } from '../Client-Cmx6x_V1.cjs';
|
|
3
|
+
export { a as QueryParameterType } from '../Client-Cmx6x_V1.cjs';
|
|
4
|
+
export { a as createClientWithTransaction } from '../createClient-BDmrDOzZ.cjs';
|
|
4
5
|
import '@osdk/shared.client';
|
|
5
6
|
import '@osdk/api/unstable';
|
|
6
7
|
import '@osdk/shared.client2';
|
|
@@ -168,6 +169,24 @@ interface ObserveListOptions<Q extends ObjectOrInterfaceDefinition, RDPs extends
|
|
|
168
169
|
expectedLength?: number;
|
|
169
170
|
streamUpdates?: boolean;
|
|
170
171
|
withProperties?: DerivedProperty.Clause<Q>;
|
|
172
|
+
/**
|
|
173
|
+
* Fetch objects by their Resource Identifiers (RIDs).
|
|
174
|
+
* When provided, starts with a static objectset containing these RIDs.
|
|
175
|
+
* Can be combined with `where` to filter the RID set, and with `orderBy` to sort results.
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* // Fetch specific objects by RID
|
|
179
|
+
* observeList({ type: Employee, rids: ['ri.foo.123', 'ri.foo.456'] }, observer)
|
|
180
|
+
*
|
|
181
|
+
* @example
|
|
182
|
+
* // Fetch specific objects by RID, filtered by status
|
|
183
|
+
* observeList({
|
|
184
|
+
* type: Employee,
|
|
185
|
+
* rids: ['ri.foo.123', 'ri.foo.456', 'ri.foo.789'],
|
|
186
|
+
* where: { status: 'active' }
|
|
187
|
+
* }, observer)
|
|
188
|
+
*/
|
|
189
|
+
rids?: readonly string[];
|
|
171
190
|
/**
|
|
172
191
|
* Automatically fetch additional pages on initial load.
|
|
173
192
|
*
|
|
@@ -202,6 +221,7 @@ interface ObserveObjectsCallbackArgs<T extends ObjectTypeDefinition | InterfaceD
|
|
|
202
221
|
fetchMore: () => Promise<void>;
|
|
203
222
|
hasMore: boolean;
|
|
204
223
|
status: Status;
|
|
224
|
+
totalCount?: string;
|
|
205
225
|
}
|
|
206
226
|
interface ObserveObjectSetArgs<T extends ObjectTypeDefinition | InterfaceDefinition, RDPs extends Record<string, WirePropertyTypes | undefined | Array<WirePropertyTypes>> = {}> {
|
|
207
227
|
resolvedList: Array<Osdk.Instance<T, "$allBaseProperties", PropertyKeys<T>, RDPs>>;
|
|
@@ -211,6 +231,7 @@ interface ObserveObjectSetArgs<T extends ObjectTypeDefinition | InterfaceDefinit
|
|
|
211
231
|
hasMore: boolean;
|
|
212
232
|
status: Status;
|
|
213
233
|
objectSet: ObjectSet<T, RDPs>;
|
|
234
|
+
totalCount?: string;
|
|
214
235
|
}
|
|
215
236
|
interface ObserveAggregationOptions<T extends ObjectOrInterfaceDefinition, A extends AggregateOpts<T>, RDPs extends Record<string, SimplePropertyDef> = {}> extends CommonObserveOptions, ObserveOptions {
|
|
216
237
|
type: T;
|
|
@@ -227,6 +248,24 @@ interface ObserveAggregationArgs<T extends ObjectOrInterfaceDefinition, A extend
|
|
|
227
248
|
lastUpdated: number;
|
|
228
249
|
error?: Error;
|
|
229
250
|
}
|
|
251
|
+
interface ObserveFunctionOptions extends CommonObserveOptions {
|
|
252
|
+
/**
|
|
253
|
+
* Object types this function depends on.
|
|
254
|
+
* When actions modify these types, the function will refetch.
|
|
255
|
+
*/
|
|
256
|
+
dependsOn?: Array<ObjectTypeDefinition | string>;
|
|
257
|
+
/**
|
|
258
|
+
* Specific object instances this function depends on.
|
|
259
|
+
* When these objects change, the function will refetch.
|
|
260
|
+
*/
|
|
261
|
+
dependsOnObjects?: Array<Osdk.Instance<ObjectTypeDefinition>>;
|
|
262
|
+
}
|
|
263
|
+
interface ObserveFunctionCallbackArgs<Q extends QueryDefinition<unknown>> {
|
|
264
|
+
result: QueryReturnType<CompileTimeMetadata<Q>["output"]> | undefined;
|
|
265
|
+
status: Status;
|
|
266
|
+
lastUpdated: number;
|
|
267
|
+
error?: Error;
|
|
268
|
+
}
|
|
230
269
|
declare namespace ObservableClient {
|
|
231
270
|
interface ApplyActionOptions {
|
|
232
271
|
optimisticUpdate?: (ctx: OptimisticBuilder) => void;
|
|
@@ -304,6 +343,22 @@ interface ObservableClient extends ObserveLinks {
|
|
|
304
343
|
* - Automatic updates when source data changes
|
|
305
344
|
*/
|
|
306
345
|
observeAggregation<T extends ObjectOrInterfaceDefinition, A extends AggregateOpts<T>, RDPs extends Record<string, SimplePropertyDef> = {}>(options: ObserveAggregationOptions<T, A, RDPs>, subFn: Observer<ObserveAggregationArgs<T, A>>): Unsubscribable;
|
|
346
|
+
/**
|
|
347
|
+
* Observe a function execution with automatic updates.
|
|
348
|
+
*
|
|
349
|
+
* @param queryDef - The QueryDefinition to execute
|
|
350
|
+
* @param params - Parameters to pass to the function (undefined if no params)
|
|
351
|
+
* @param options - Observation options including invalidation configuration
|
|
352
|
+
* @param subFn - Observer that receives function result updates
|
|
353
|
+
* @returns Subscription that can be unsubscribed to stop updates
|
|
354
|
+
*
|
|
355
|
+
* Supports:
|
|
356
|
+
* - Automatic caching and deduplication
|
|
357
|
+
* - Dependency-based invalidation (dependsOn object types)
|
|
358
|
+
* - Instance-based invalidation (dependsOnObjects)
|
|
359
|
+
* - Manual refetch via invalidateFunction()
|
|
360
|
+
*/
|
|
361
|
+
observeFunction<Q extends QueryDefinition<unknown>>(queryDef: Q, params: Record<string, unknown> | undefined, options: ObserveFunctionOptions, subFn: Observer<ObserveFunctionCallbackArgs<Q>>): Unsubscribable;
|
|
307
362
|
/**
|
|
308
363
|
* Execute an action with optional optimistic updates.
|
|
309
364
|
*
|
|
@@ -353,6 +408,22 @@ interface ObservableClient extends ObserveLinks {
|
|
|
353
408
|
* @returns Promise that resolves when invalidation is complete
|
|
354
409
|
*/
|
|
355
410
|
invalidateObjectType<T extends ObjectTypeDefinition>(type: T | T["apiName"]): Promise<void>;
|
|
411
|
+
/**
|
|
412
|
+
* Invalidate function queries.
|
|
413
|
+
* - If params undefined, invalidates ALL queries for this function
|
|
414
|
+
* - If params provided, invalidates only the query with exact params match
|
|
415
|
+
*
|
|
416
|
+
* @param apiName - Function API name string or QueryDefinition
|
|
417
|
+
* @param params - Optional params for exact match
|
|
418
|
+
*/
|
|
419
|
+
invalidateFunction(apiName: string | QueryDefinition<unknown>, params?: Record<string, unknown>): Promise<void>;
|
|
420
|
+
/**
|
|
421
|
+
* Invalidate functions that depend on a specific object instance.
|
|
422
|
+
*
|
|
423
|
+
* @param apiName - Object type API name
|
|
424
|
+
* @param primaryKey - Object primary key
|
|
425
|
+
*/
|
|
426
|
+
invalidateFunctionsByObject(apiName: string, primaryKey: string | number): Promise<void>;
|
|
356
427
|
canonicalizeWhereClause: <T extends ObjectTypeDefinition | InterfaceDefinition, RDPs extends Record<string, SimplePropertyDef> = {}>(where: WhereClause<T, RDPs>) => Canonical<WhereClause<T, RDPs>>;
|
|
357
428
|
}
|
|
358
429
|
declare function createObservableClient(client: Client): ObservableClient;
|
|
@@ -369,4 +440,4 @@ interface OsdkConfig {
|
|
|
369
440
|
}
|
|
370
441
|
declare function getOsdkConfig(ontologyRid: string): OsdkConfig;
|
|
371
442
|
|
|
372
|
-
export { ActionSignatureFromDef, ObservableClient, type ObserveAggregationArgs, ObserveLinks, type ObserveObjectCallbackArgs, type ObserveObjectSetArgs, type ObserveObjectsCallbackArgs, type Observer, type OsdkConfig, type Unsubscribable, augment, computeObjectSetCacheKey, createObservableClient, getMetaTagContent, getOsdkConfig };
|
|
443
|
+
export { ActionSignatureFromDef, ObservableClient, type ObserveAggregationArgs, type ObserveFunctionCallbackArgs, type ObserveFunctionOptions, ObserveLinks, type ObserveObjectCallbackArgs, type ObserveObjectSetArgs, type ObserveObjectsCallbackArgs, type Observer, type OsdkConfig, QueryReturnType, type Unsubscribable, augment, computeObjectSetCacheKey, createObservableClient, getMetaTagContent, getOsdkConfig };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MinimalClientContext.js","names":[],"sources":["MinimalClientContext.ts"],"sourcesContent":["/*\n * Copyright 2024 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 */\n\nimport type { Logger } from \"@osdk/api\";\nimport type { SharedClientContext } from \"@osdk/shared.client2\";\nimport type {\n convertWireToOsdkObjects,\n convertWireToOsdkObjects2,\n} from \"./object/convertWireToOsdkObjects.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport type { OntologyProvider } from \"./ontology/OntologyProvider.js\";\n\ndeclare const tag: unique symbol;\n\nexport type ClientCacheKey = {} & { readonly [tag]: void };\n\nexport type RequestContext = {\n finalMethodCall?: string;\n};\n\nexport interface MinimalClient extends SharedClientContext {\n ontologyRid: string | Promise<string>;\n ontologyProvider: OntologyProvider;\n logger?: Logger;\n
|
|
1
|
+
{"version":3,"file":"MinimalClientContext.js","names":[],"sources":["MinimalClientContext.ts"],"sourcesContent":["/*\n * Copyright 2024 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 */\n\nimport type { Logger } from \"@osdk/api\";\nimport type { SharedClientContext } from \"@osdk/shared.client2\";\nimport type {\n convertWireToOsdkObjects,\n convertWireToOsdkObjects2,\n} from \"./object/convertWireToOsdkObjects.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport type { OntologyProvider } from \"./ontology/OntologyProvider.js\";\n\ndeclare const tag: unique symbol;\n\nexport type ClientCacheKey = {} & { readonly [tag]: void };\n\nexport type RequestContext = {\n finalMethodCall?: string;\n};\n\nexport interface MinimalClient extends SharedClientContext {\n ontologyRid: string | Promise<string>;\n ontologyProvider: OntologyProvider;\n logger?: Logger;\n transactionRid?: string;\n /** @internal */\n objectSetFactory: ObjectSetFactory<any, any>;\n /** @internal */\n objectFactory: typeof convertWireToOsdkObjects;\n /** @internal */\n objectFactory2: typeof convertWireToOsdkObjects2;\n /** @internal */\n\n transactionId?: string;\n flushEdits?: () => Promise<void>;\n\n clientCacheKey: ClientCacheKey;\n requestContext: RequestContext;\n narrowTypeInterfaceOrObjectMapping: Record<string, \"object\" | \"interface\">;\n}\n\nexport type MinimalClientParams = {\n metadata: MinimalClientMetadata;\n provider: OntologyProvider;\n};\n\nexport interface MinimalClientMetadata {\n ontologyRid: string | Promise<string>;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -57,8 +57,6 @@ describe.each(["https://stack.palantir.com", "https://stack.palantirCustom.com/f
|
|
|
57
57
|
"modifiedObjects": [],
|
|
58
58
|
"type": "edits"
|
|
59
59
|
});
|
|
60
|
-
|
|
61
|
-
// eslint-disable-next-line @typescript-eslint/no-confusing-void-expression
|
|
62
60
|
const undefinedResult = await client(createOffice).applyAction({
|
|
63
61
|
officeId: "NYC",
|
|
64
62
|
address: "123 Main Street",
|
|
@@ -175,8 +173,6 @@ describe.each(["https://stack.palantir.com", "https://stack.palantirCustom.com/f
|
|
|
175
173
|
}
|
|
176
174
|
};
|
|
177
175
|
}));
|
|
178
|
-
|
|
179
|
-
// eslint-disable-next-line @typescript-eslint/no-confusing-void-expression
|
|
180
176
|
const result = await client(actionTakesAttachment).applyAction({
|
|
181
177
|
attachment: "ri.some.rid"
|
|
182
178
|
});
|
|
@@ -198,13 +194,9 @@ describe.each(["https://stack.palantir.com", "https://stack.palantirCustom.com/f
|
|
|
198
194
|
const fileAttachment = Object.assign(blob, {
|
|
199
195
|
name: "file1.txt"
|
|
200
196
|
});
|
|
201
|
-
|
|
202
|
-
// eslint-disable-next-line @typescript-eslint/no-confusing-void-expression
|
|
203
197
|
const result = await client(actionTakesAttachment).applyAction({
|
|
204
198
|
attachment
|
|
205
199
|
});
|
|
206
|
-
|
|
207
|
-
// eslint-disable-next-line @typescript-eslint/no-confusing-void-expression
|
|
208
200
|
const result2 = await client(actionTakesAttachment).applyAction({
|
|
209
201
|
attachment: fileAttachment
|
|
210
202
|
});
|
|
@@ -299,6 +291,15 @@ describe.each(["https://stack.palantir.com", "https://stack.palantirCustom.com/f
|
|
|
299
291
|
"type": "edits"
|
|
300
292
|
});
|
|
301
293
|
});
|
|
294
|
+
it("nullable parameters work with nullish coalescing", () => {
|
|
295
|
+
client(createOffice).applyAction;
|
|
296
|
+
expectTypeOf().toMatchTypeOf();
|
|
297
|
+
const address = {
|
|
298
|
+
officeId: "HQ",
|
|
299
|
+
address: null
|
|
300
|
+
}.address ?? "address";
|
|
301
|
+
expect(address).toBe("address");
|
|
302
|
+
});
|
|
302
303
|
});
|
|
303
304
|
describe("ActionResponse remapping", () => {
|
|
304
305
|
const actionResponse = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.test.js","names":["$Actions","actionTakesAttachment","actionTakesMedia","addGeoshape","createFooInterface","createOffice","createStructPerson","deleteBarInterface","deleteFooInterface","Employee","moveOffice","LegacyFauxFoundry","MockOntologiesV2","startNodeApiServer","stubData","beforeAll","describe","expect","expectTypeOf","it","vi","createClient","createAttachmentUpload","ActionValidationError","remapActionResponse","each","baseUrl","client","apiServer","testSetup","close","result","applyAction","officeId","address","capacity","$returnEdits","toEqualTypeOf","toMatchObject","undefinedResult","toBeUndefined","batchApplyAction","clientCreateOfficeMock","fn","newAddress","newCapacity","$validateOnly","fail","e","toBeInstanceOf","validation","toMatchTypeOf","name","city","state","zipcode","boundary","use","Actions","apply","submissionCriteria","parameters","attachment","blob","Blob","JSON","stringify","fileAttachment","Object","assign","result2","media_reference","actionRequestMediaUpload","geoshapeParam","type","coordinates","geohashParam","deletedInterface","$objectType","$primaryKey","createdInterface","apiName","actionResponse","edits","deletedLinksCount","deletedObjectsCount","addedObjectCount","modifiedObjectsCount","addedLinksCount","batchActionResponse","remappedActionResponse","remappedBatchActionResponse","toMatchInlineSnapshot","actions","keys","toStrictEqual","wrapper","example","Promise","resolve"],"sources":["actions.test.ts"],"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 */\n\nimport type {\n ActionEditResponse,\n ActionValidationResponse,\n AttachmentUpload,\n MediaReference,\n} from \"@osdk/api\";\nimport {\n $Actions,\n actionTakesAttachment,\n actionTakesMedia,\n addGeoshape,\n createFooInterface,\n createOffice,\n createStructPerson,\n deleteBarInterface,\n deleteFooInterface,\n Employee,\n moveOffice,\n} from \"@osdk/client.test.ontology\";\nimport type {\n BatchApplyActionResponseV2,\n SyncApplyActionResponseV2,\n} from \"@osdk/foundry.ontologies\";\nimport type { SetupServer } from \"@osdk/shared.test\";\nimport {\n LegacyFauxFoundry,\n MockOntologiesV2,\n startNodeApiServer,\n stubData,\n} from \"@osdk/shared.test\";\nimport { beforeAll, describe, expect, expectTypeOf, it, vi } from \"vitest\";\nimport type { Client } from \"../Client.js\";\nimport { createClient } from \"../createClient.js\";\nimport { createAttachmentUpload } from \"../object/AttachmentUpload.js\";\nimport { ActionValidationError } from \"./ActionValidationError.js\";\nimport { remapActionResponse } from \"./applyAction.js\";\n\ndescribe.each([\n \"https://stack.palantir.com\",\n \"https://stack.palantirCustom.com/foo/first/someStuff\",\n])(\"actions for %s\", (baseUrl) => {\n let client: Client;\n let apiServer: SetupServer;\n\n beforeAll(() => {\n const testSetup = startNodeApiServer(\n new LegacyFauxFoundry(baseUrl),\n createClient,\n );\n ({ client, apiServer } = testSetup);\n\n return () => {\n apiServer.close();\n };\n });\n\n it(\"conditionally returns the edits\", async () => {\n const result = await client(createOffice).applyAction({\n officeId: \"NYC\",\n address: \"123 Main Street\",\n capacity: 100,\n }, { $returnEdits: true });\n\n expectTypeOf<typeof result>().toEqualTypeOf<ActionEditResponse>();\n expect(result).toMatchObject(\n {\n \"addedLinks\": [],\n \"addedObjects\": [\n {\n \"objectType\": \"Office\",\n \"primaryKey\": \"NYC\",\n },\n ],\n \"deletedLinks\": [],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [],\n \"deletedObjectsCount\": 0,\n \"editedObjectTypes\": [\n \"Office\",\n ],\n \"modifiedObjects\": [],\n \"type\": \"edits\",\n },\n );\n\n // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression\n const undefinedResult = await client(createOffice).applyAction({\n officeId: \"NYC\",\n address: \"123 Main Street\",\n capacity: 100,\n });\n\n expectTypeOf<typeof undefinedResult>().toEqualTypeOf<undefined>();\n expect(undefinedResult).toBeUndefined();\n\n const clientCreateOffice = client(createOffice).batchApplyAction;\n const clientCreateOfficeMock: typeof clientCreateOffice = vi.fn();\n void clientCreateOfficeMock([{\n officeId: \"NYC\",\n address: \"123 Main Street\",\n capacity: 100,\n }], { $returnEdits: true });\n });\n\n it(\"returns validation directly on validateOnly mode\", async () => {\n const result = await client(moveOffice).applyAction({\n officeId: \"SEA\",\n newAddress: \"456 Pike Place\",\n // intentionally using a string to trigger validation errors\n newCapacity: \"40\" as unknown as number,\n }, {\n $validateOnly: true,\n });\n expectTypeOf<typeof result>().toEqualTypeOf<ActionValidationResponse>();\n\n expect(result).toMatchObject(\n {\n \"parameters\": {\n \"newCapacity\": {\n \"evaluatedConstraints\": [],\n \"required\": false,\n \"result\": \"INVALID\",\n },\n },\n \"result\": \"INVALID\",\n \"submissionCriteria\": [],\n },\n );\n });\n\n it(\"returns validation directly on validateOnly mode, with custom entry point in URL\", async () => {\n const result = await client(moveOffice).applyAction({\n officeId: \"SEA\",\n newAddress: \"456 Pike Place\",\n // intentionally using a string to trigger validation failure\n newCapacity: \"40\" as unknown as number,\n }, {\n $validateOnly: true,\n });\n expectTypeOf<typeof result>().toEqualTypeOf<ActionValidationResponse>();\n\n expect(result).toMatchObject(\n {\n \"parameters\": {\n \"newCapacity\": {\n \"evaluatedConstraints\": [],\n \"required\": false,\n \"result\": \"INVALID\",\n },\n },\n \"result\": \"INVALID\",\n \"submissionCriteria\": [],\n },\n );\n });\n\n it(\"throws on validation errors\", async () => {\n try {\n const result = await client(moveOffice).applyAction({\n officeId: \"SEA\",\n newAddress: \"456 Pike Place\",\n // intentionally using a string to trigger validation failure\n newCapacity: \"40\" as unknown as number,\n }, {\n $returnEdits: true,\n });\n expect.fail(\"Should not reach here\");\n } catch (e) {\n expect(e).toBeInstanceOf(ActionValidationError);\n expect((e as ActionValidationError).validation).toMatchObject(\n {\n \"parameters\": {\n \"newCapacity\": {\n \"evaluatedConstraints\": [],\n \"required\": false,\n \"result\": \"INVALID\",\n },\n },\n \"result\": \"INVALID\",\n \"submissionCriteria\": [],\n },\n );\n }\n });\n\n it(\"Accepts structs\", async () => {\n const clientBoundActionTakesStruct = client(createStructPerson).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesStruct\n >[0];\n expectTypeOf<\n {\n name: string;\n address: { city: string; state: string; zipcode: number };\n }\n >()\n .toMatchTypeOf<\n InferredParamType\n >();\n\n const result = await client(createStructPerson).applyAction({\n name: \"testMan\",\n address: { city: \"NYC\", state: \"NY\", zipcode: 12345 },\n });\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n\n it(\"Accepts attachments\", async () => {\n const clientBoundActionTakesAttachment = client(\n actionTakesAttachment,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesAttachment\n >[0];\n\n expectTypeOf<{ attachment: string | AttachmentUpload }>().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesAttachment = client(\n actionTakesAttachment,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesAttachment\n >[0];\n\n expectTypeOf<{\n attachment: string | AttachmentUpload;\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n\n await apiServer.boundary(async () => {\n apiServer.use(MockOntologiesV2.Actions.apply(baseUrl, (info) => {\n return {\n validation: {\n result: \"VALID\",\n submissionCriteria: [],\n parameters: {},\n },\n };\n }));\n\n // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression\n const result = await client(actionTakesAttachment).applyAction({\n attachment: \"ri.some.rid\",\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n })();\n });\n\n it(\"Accepts attachment uploads\", async () => {\n const clientBoundActionTakesAttachment = client(\n actionTakesAttachment,\n ).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesAttachment\n >[0];\n const clientBoundBatchActionTakesAttachment = client(\n actionTakesAttachment,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesAttachment\n >[0];\n\n expectTypeOf<\n {\n attachment:\n | string\n | AttachmentUpload\n | Blob & { readonly name: string };\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n expectTypeOf<\n {\n attachment:\n | string\n | AttachmentUpload\n | Blob & { readonly name: string };\n }[]\n >().toMatchTypeOf<\n InferredBatchParamType\n >();\n\n const blob = new Blob([JSON.stringify({ name: \"Hello World\" }, null, 2)]);\n\n const attachment = createAttachmentUpload(blob, \"file1.txt\");\n\n // Mimics the Web file API (https://developer.mozilla.org/en-US/docs/Web/API/File). The File constructor is only available in Node 19.2.0 and above\n const fileAttachment = Object.assign(blob, { name: \"file1.txt\" });\n\n // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression\n const result = await client(actionTakesAttachment).applyAction({\n attachment,\n });\n\n // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression\n const result2 = await client(actionTakesAttachment).applyAction({\n attachment: fileAttachment,\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n\n expectTypeOf<typeof result2>().toEqualTypeOf<undefined>();\n expect(result2).toBeUndefined();\n });\n\n it(\"Accepts media reference\", async () => {\n const clientBoundActionTakesMedia = client(\n actionTakesMedia,\n ).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesMedia\n >[0];\n\n expectTypeOf<\n {\n media_reference: MediaReference;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const result = await client(actionTakesMedia).applyAction({\n media_reference:\n stubData.actionRequestMediaUpload.parameters.media_reference,\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n\n it(\"Accepts geoshapes\", async () => {\n const clientBoundActionTakesMedia = client(\n addGeoshape,\n ).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesMedia\n >[0];\n\n expectTypeOf<\n {\n geoshapeParam: GeoJSON.GeoJSON;\n geohashParam: GeoJSON.Point;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const result = await client(addGeoshape).applyAction({\n geoshapeParam: {\n type: \"Polygon\",\n coordinates: [\n [\n [\n -97.86567863752134,\n 38.418052586871624,\n ],\n [\n -97.86567863752134,\n 35.410223767370525,\n ],\n [\n -91.98573135442845,\n 35.410223767370525,\n ],\n [\n -91.98573135442845,\n 38.418052586871624,\n ],\n [\n -97.86567863752134,\n 38.418052586871624,\n ],\n ],\n ],\n },\n geohashParam: {\n type: \"Point\",\n coordinates: [-79.4382042508868, 40.917859676842255],\n },\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n\n it(\"Accepts interfaces\", async () => {\n const clientBoundTakesInterface = client(\n deleteFooInterface,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundTakesInterface\n >[0];\n\n expectTypeOf<\n {\n deletedInterface: {\n $objectType: \"Employee\" | \"Person\";\n $primaryKey: string | number;\n };\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesInterface = client(\n deleteFooInterface,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesInterface\n >[0];\n\n expectTypeOf<{\n deletedInterface: {\n $objectType: \"Employee\" | \"Person\";\n $primaryKey: string | number;\n };\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n\n const result = await client(deleteFooInterface).applyAction({\n deletedInterface: {\n $objectType: \"Employee\",\n $primaryKey: 50030,\n },\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n it(\"Accepts interfaces if implementing object types unknown\", async () => {\n const clientBoundTakesInterface = client(\n deleteBarInterface,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundTakesInterface\n >[0];\n\n expectTypeOf<\n {\n deletedInterface: {\n $objectType: string;\n $primaryKey: string | number;\n };\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesInterface = client(\n deleteBarInterface,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesInterface\n >[0];\n\n expectTypeOf<{\n deletedInterface: {\n $objectType: string;\n $primaryKey: string | number;\n };\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n });\n it(\"Accepts object type refs\", async () => {\n const clientBoundTakesObjectType = client(\n createFooInterface,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundTakesObjectType\n >[0];\n\n expectTypeOf<\n {\n createdInterface: string;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesObjectType = client(\n createFooInterface,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesObjectType\n >[0];\n\n expectTypeOf<{\n createdInterface: string;\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n\n const result = await client(createFooInterface).applyAction({\n createdInterface: Employee.apiName,\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n it(\"conditionally returns edits in batch mode\", async () => {\n const result = await client(moveOffice).batchApplyAction([\n {\n officeId: \"SEA\",\n newAddress: \"456 Good Place\",\n newCapacity: 40,\n },\n {\n officeId: \"NYC\",\n newAddress: \"123 Main Street\",\n newCapacity: 80,\n },\n ], { $returnEdits: true });\n\n expect(result).toMatchObject(\n {\n \"addedLinks\": [],\n \"addedObjects\": [],\n \"deletedLinks\": [],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [],\n \"deletedObjectsCount\": 0,\n \"editedObjectTypes\": [\n \"Office\",\n ],\n \"modifiedObjects\": [\n {\n \"objectType\": \"Office\",\n \"primaryKey\": \"SEA\",\n },\n {\n \"objectType\": \"Office\",\n \"primaryKey\": \"NYC\",\n },\n ],\n \"type\": \"edits\",\n },\n );\n });\n});\n\ndescribe(\"ActionResponse remapping\", () => {\n const actionResponse: SyncApplyActionResponseV2 = {\n edits: {\n type: \"edits\",\n edits: [{\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n \"type\": \"addObject\",\n }, {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n \"type\": \"modifyObject\",\n }, {\n \"aSideObject\": { \"primaryKey\": \"key1\", \"objectType\": \"Office\" },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n \"bSideObject\": { \"primaryKey\": \"key2\", \"objectType\": \"Employee\" },\n \"type\": \"addLink\",\n }, {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n \"type\": \"deleteObject\",\n }, {\n \"aSideObject\": { \"primaryKey\": \"key1\", \"objectType\": \"Office\" },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n \"bSideObject\": { \"primaryKey\": \"key2\", \"objectType\": \"Employee\" },\n \"type\": \"deleteLink\",\n }],\n deletedLinksCount: 0,\n deletedObjectsCount: 1,\n addedObjectCount: 1,\n modifiedObjectsCount: 1,\n addedLinksCount: 1,\n },\n };\n\n const batchActionResponse: BatchApplyActionResponseV2 = {\n edits: {\n type: \"edits\",\n edits: [{\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n \"type\": \"addObject\",\n }, {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n \"type\": \"modifyObject\",\n }, {\n \"aSideObject\": { \"primaryKey\": \"key1\", \"objectType\": \"Office\" },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n \"bSideObject\": { \"primaryKey\": \"key2\", \"objectType\": \"Employee\" },\n \"type\": \"addLink\",\n }],\n deletedLinksCount: 0,\n deletedObjectsCount: 0,\n addedObjectCount: 1,\n modifiedObjectsCount: 1,\n addedLinksCount: 1,\n },\n };\n\n it(\"Correctly unpacks edits and editedObjectTypes\", () => {\n const remappedActionResponse = remapActionResponse(actionResponse);\n const remappedBatchActionResponse = remapActionResponse(\n batchActionResponse,\n );\n expect(remappedActionResponse).toMatchInlineSnapshot(`\n {\n \"addedLinks\": [\n {\n \"aSideObject\": {\n \"objectType\": \"Office\",\n \"primaryKey\": \"key1\",\n },\n \"bSideObject\": {\n \"objectType\": \"Employee\",\n \"primaryKey\": \"key2\",\n },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n },\n ],\n \"addedObjects\": [\n {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n },\n ],\n \"deletedLinks\": [\n {\n \"aSideObject\": {\n \"objectType\": \"Office\",\n \"primaryKey\": \"key1\",\n },\n \"bSideObject\": {\n \"objectType\": \"Employee\",\n \"primaryKey\": \"key2\",\n },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n },\n ],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [\n {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n },\n ],\n \"deletedObjectsCount\": 1,\n \"editedObjectTypes\": [\n \"Developer\",\n \"Contractor\",\n \"Office\",\n \"Employee\",\n ],\n \"modifiedObjects\": [\n {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n },\n ],\n \"type\": \"edits\",\n }\n `);\n expect(remappedBatchActionResponse).toMatchInlineSnapshot(`\n {\n \"addedLinks\": [\n {\n \"aSideObject\": {\n \"objectType\": \"Office\",\n \"primaryKey\": \"key1\",\n },\n \"bSideObject\": {\n \"objectType\": \"Employee\",\n \"primaryKey\": \"key2\",\n },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n },\n ],\n \"addedObjects\": [\n {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n },\n ],\n \"deletedLinks\": [],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [],\n \"deletedObjectsCount\": 0,\n \"editedObjectTypes\": [\n \"Developer\",\n \"Contractor\",\n \"Office\",\n \"Employee\",\n ],\n \"modifiedObjects\": [\n {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n },\n ],\n \"type\": \"edits\",\n }\n `);\n });\n it(\"actions are enumerable\", async () => {\n const actions = Object.keys($Actions);\n expect(actions).toStrictEqual([\n \"actionTakesAttachment\",\n \"actionTakesMedia\",\n \"actionTakesObjectSet\",\n \"addGeoshape\",\n \"createFooInterface\",\n \"createOffice\",\n \"createOfficeAndEmployee\",\n \"createStructPerson\",\n \"deleteBarInterface\",\n \"deleteFooInterface\",\n \"editTodo\",\n \"moveOffice\",\n \"promoteEmployee\",\n \"promoteEmployeeObject\",\n ]);\n });\n});\n\nfunction wrapper<R>(fn: () => R): typeof fn {\n return () => fn();\n}\n\nasync function example() {\n await wrapper(async () => Promise.resolve(\"hi\"))();\n}\n"],"mappings":"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EAAE,MAAM;UAAE,YAAY,EAAE;QAAW,CAAC;QACjE,MAAM,EAAE;MACV,CAAC,CAAC;MACFC,iBAAiB,EAAE,CAAC;MACpBC,mBAAmB,EAAE,CAAC;MACtBC,gBAAgB,EAAE,CAAC;MACnBC,oBAAoB,EAAE,CAAC;MACvBC,eAAe,EAAE;IACnB;EACF,CAAC;EAEDrE,EAAE,CAAC,+CAA+C,EAAE,MAAM;IACxD,MAAMuE,sBAAsB,GAAGlE,mBAAmB,CAAC0D,cAAc,CAAC;IAClE,MAAMS,2BAA2B,GAAGnE,mBAAmB,CACrDiE,mBACF,CAAC;IACDxE,MAAM,CAACyE,sBAAsB,CAAC,CAACE,qBAAqB,CAAC;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;IACF3E,MAAM,CAAC0E,2BAA2B,CAAC,CAACC,qBAAqB,CAAC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,CAAC;EACJ,CAAC,CAAC;EACFzE,EAAE,CAAC,wBAAwB,EAAE,YAAY;IACvC,MAAM0E,OAAO,GAAGzB,MAAM,CAAC0B,IAAI,CAAC9F,QAAQ,CAAC;IACrCiB,MAAM,CAAC4E,OAAO,CAAC,CAACE,aAAa,CAAC,CAC5B,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,CACxB,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,SAASC,OAAOA,CAAIrD,EAAW,EAAa;EAC1C,OAAO,MAAMA,EAAE,CAAC,CAAC;AACnB;AAEA,eAAesD,OAAOA,CAAA,EAAG;EACvB,MAAMD,OAAO,CAAC,YAAYE,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpD","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"actions.test.js","names":["$Actions","actionTakesAttachment","actionTakesMedia","addGeoshape","createFooInterface","createOffice","createStructPerson","deleteBarInterface","deleteFooInterface","Employee","moveOffice","LegacyFauxFoundry","MockOntologiesV2","startNodeApiServer","stubData","beforeAll","describe","expect","expectTypeOf","it","vi","createClient","createAttachmentUpload","ActionValidationError","remapActionResponse","each","baseUrl","client","apiServer","testSetup","close","result","applyAction","officeId","address","capacity","$returnEdits","toEqualTypeOf","toMatchObject","undefinedResult","toBeUndefined","batchApplyAction","clientCreateOfficeMock","fn","newAddress","newCapacity","$validateOnly","fail","e","toBeInstanceOf","validation","toMatchTypeOf","name","city","state","zipcode","boundary","use","Actions","apply","submissionCriteria","parameters","attachment","blob","Blob","JSON","stringify","fileAttachment","Object","assign","result2","media_reference","actionRequestMediaUpload","geoshapeParam","type","coordinates","geohashParam","deletedInterface","$objectType","$primaryKey","createdInterface","apiName","toBe","actionResponse","edits","deletedLinksCount","deletedObjectsCount","addedObjectCount","modifiedObjectsCount","addedLinksCount","batchActionResponse","remappedActionResponse","remappedBatchActionResponse","toMatchInlineSnapshot","actions","keys","toStrictEqual","wrapper","example","Promise","resolve"],"sources":["actions.test.ts"],"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 */\n\nimport type {\n ActionEditResponse,\n ActionValidationResponse,\n AttachmentUpload,\n MediaReference,\n} from \"@osdk/api\";\nimport {\n $Actions,\n actionTakesAttachment,\n actionTakesMedia,\n addGeoshape,\n createFooInterface,\n createOffice,\n createStructPerson,\n deleteBarInterface,\n deleteFooInterface,\n Employee,\n moveOffice,\n} from \"@osdk/client.test.ontology\";\nimport type {\n BatchApplyActionResponseV2,\n SyncApplyActionResponseV2,\n} from \"@osdk/foundry.ontologies\";\nimport type { SetupServer } from \"@osdk/shared.test\";\nimport {\n LegacyFauxFoundry,\n MockOntologiesV2,\n startNodeApiServer,\n stubData,\n} from \"@osdk/shared.test\";\nimport { beforeAll, describe, expect, expectTypeOf, it, vi } from \"vitest\";\nimport type { Client } from \"../Client.js\";\nimport { createClient } from \"../createClient.js\";\nimport { createAttachmentUpload } from \"../object/AttachmentUpload.js\";\nimport { ActionValidationError } from \"./ActionValidationError.js\";\nimport { remapActionResponse } from \"./applyAction.js\";\n\ndescribe.each([\n \"https://stack.palantir.com\",\n \"https://stack.palantirCustom.com/foo/first/someStuff\",\n])(\"actions for %s\", (baseUrl) => {\n let client: Client;\n let apiServer: SetupServer;\n\n beforeAll(() => {\n const testSetup = startNodeApiServer(\n new LegacyFauxFoundry(baseUrl),\n createClient,\n );\n ({ client, apiServer } = testSetup);\n\n return () => {\n apiServer.close();\n };\n });\n\n it(\"conditionally returns the edits\", async () => {\n const result = await client(createOffice).applyAction({\n officeId: \"NYC\",\n address: \"123 Main Street\",\n capacity: 100,\n }, { $returnEdits: true });\n\n expectTypeOf<typeof result>().toEqualTypeOf<ActionEditResponse>();\n expect(result).toMatchObject(\n {\n \"addedLinks\": [],\n \"addedObjects\": [\n {\n \"objectType\": \"Office\",\n \"primaryKey\": \"NYC\",\n },\n ],\n \"deletedLinks\": [],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [],\n \"deletedObjectsCount\": 0,\n \"editedObjectTypes\": [\n \"Office\",\n ],\n \"modifiedObjects\": [],\n \"type\": \"edits\",\n },\n );\n\n const undefinedResult = await client(createOffice).applyAction({\n officeId: \"NYC\",\n address: \"123 Main Street\",\n capacity: 100,\n });\n\n expectTypeOf<typeof undefinedResult>().toEqualTypeOf<undefined>();\n expect(undefinedResult).toBeUndefined();\n\n const clientCreateOffice = client(createOffice).batchApplyAction;\n const clientCreateOfficeMock: typeof clientCreateOffice = vi.fn();\n void clientCreateOfficeMock([{\n officeId: \"NYC\",\n address: \"123 Main Street\",\n capacity: 100,\n }], { $returnEdits: true });\n });\n\n it(\"returns validation directly on validateOnly mode\", async () => {\n const result = await client(moveOffice).applyAction({\n officeId: \"SEA\",\n newAddress: \"456 Pike Place\",\n // intentionally using a string to trigger validation errors\n newCapacity: \"40\" as unknown as number,\n }, {\n $validateOnly: true,\n });\n expectTypeOf<typeof result>().toEqualTypeOf<ActionValidationResponse>();\n\n expect(result).toMatchObject(\n {\n \"parameters\": {\n \"newCapacity\": {\n \"evaluatedConstraints\": [],\n \"required\": false,\n \"result\": \"INVALID\",\n },\n },\n \"result\": \"INVALID\",\n \"submissionCriteria\": [],\n },\n );\n });\n\n it(\"returns validation directly on validateOnly mode, with custom entry point in URL\", async () => {\n const result = await client(moveOffice).applyAction({\n officeId: \"SEA\",\n newAddress: \"456 Pike Place\",\n // intentionally using a string to trigger validation failure\n newCapacity: \"40\" as unknown as number,\n }, {\n $validateOnly: true,\n });\n expectTypeOf<typeof result>().toEqualTypeOf<ActionValidationResponse>();\n\n expect(result).toMatchObject(\n {\n \"parameters\": {\n \"newCapacity\": {\n \"evaluatedConstraints\": [],\n \"required\": false,\n \"result\": \"INVALID\",\n },\n },\n \"result\": \"INVALID\",\n \"submissionCriteria\": [],\n },\n );\n });\n\n it(\"throws on validation errors\", async () => {\n try {\n const result = await client(moveOffice).applyAction({\n officeId: \"SEA\",\n newAddress: \"456 Pike Place\",\n // intentionally using a string to trigger validation failure\n newCapacity: \"40\" as unknown as number,\n }, {\n $returnEdits: true,\n });\n expect.fail(\"Should not reach here\");\n } catch (e) {\n expect(e).toBeInstanceOf(ActionValidationError);\n expect((e as ActionValidationError).validation).toMatchObject(\n {\n \"parameters\": {\n \"newCapacity\": {\n \"evaluatedConstraints\": [],\n \"required\": false,\n \"result\": \"INVALID\",\n },\n },\n \"result\": \"INVALID\",\n \"submissionCriteria\": [],\n },\n );\n }\n });\n\n it(\"Accepts structs\", async () => {\n const clientBoundActionTakesStruct = client(createStructPerson).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesStruct\n >[0];\n expectTypeOf<\n {\n name: string;\n address: { city: string; state: string; zipcode: number };\n }\n >()\n .toMatchTypeOf<\n InferredParamType\n >();\n\n const result = await client(createStructPerson).applyAction({\n name: \"testMan\",\n address: { city: \"NYC\", state: \"NY\", zipcode: 12345 },\n });\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n\n it(\"Accepts attachments\", async () => {\n const clientBoundActionTakesAttachment = client(\n actionTakesAttachment,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesAttachment\n >[0];\n\n expectTypeOf<{ attachment: string | AttachmentUpload }>().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesAttachment = client(\n actionTakesAttachment,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesAttachment\n >[0];\n\n expectTypeOf<{\n attachment: string | AttachmentUpload;\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n\n await apiServer.boundary(async () => {\n apiServer.use(MockOntologiesV2.Actions.apply(baseUrl, (info) => {\n return {\n validation: {\n result: \"VALID\",\n submissionCriteria: [],\n parameters: {},\n },\n };\n }));\n\n const result = await client(actionTakesAttachment).applyAction({\n attachment: \"ri.some.rid\",\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n })();\n });\n\n it(\"Accepts attachment uploads\", async () => {\n const clientBoundActionTakesAttachment = client(\n actionTakesAttachment,\n ).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesAttachment\n >[0];\n const clientBoundBatchActionTakesAttachment = client(\n actionTakesAttachment,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesAttachment\n >[0];\n\n expectTypeOf<\n {\n attachment:\n | string\n | AttachmentUpload\n | Blob & { readonly name: string };\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n expectTypeOf<\n {\n attachment:\n | string\n | AttachmentUpload\n | Blob & { readonly name: string };\n }[]\n >().toMatchTypeOf<\n InferredBatchParamType\n >();\n\n const blob = new Blob([JSON.stringify({ name: \"Hello World\" }, null, 2)]);\n\n const attachment = createAttachmentUpload(blob, \"file1.txt\");\n\n // Mimics the Web file API (https://developer.mozilla.org/en-US/docs/Web/API/File). The File constructor is only available in Node 19.2.0 and above\n const fileAttachment = Object.assign(blob, { name: \"file1.txt\" });\n\n const result = await client(actionTakesAttachment).applyAction({\n attachment,\n });\n\n const result2 = await client(actionTakesAttachment).applyAction({\n attachment: fileAttachment,\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n\n expectTypeOf<typeof result2>().toEqualTypeOf<undefined>();\n expect(result2).toBeUndefined();\n });\n\n it(\"Accepts media reference\", async () => {\n const clientBoundActionTakesMedia = client(\n actionTakesMedia,\n ).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesMedia\n >[0];\n\n expectTypeOf<\n {\n media_reference: MediaReference;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const result = await client(actionTakesMedia).applyAction({\n media_reference:\n stubData.actionRequestMediaUpload.parameters.media_reference,\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n\n it(\"Accepts geoshapes\", async () => {\n const clientBoundActionTakesMedia = client(\n addGeoshape,\n ).applyAction;\n type InferredParamType = Parameters<\n typeof clientBoundActionTakesMedia\n >[0];\n\n expectTypeOf<\n {\n geoshapeParam: GeoJSON.GeoJSON;\n geohashParam: GeoJSON.Point;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const result = await client(addGeoshape).applyAction({\n geoshapeParam: {\n type: \"Polygon\",\n coordinates: [\n [\n [\n -97.86567863752134,\n 38.418052586871624,\n ],\n [\n -97.86567863752134,\n 35.410223767370525,\n ],\n [\n -91.98573135442845,\n 35.410223767370525,\n ],\n [\n -91.98573135442845,\n 38.418052586871624,\n ],\n [\n -97.86567863752134,\n 38.418052586871624,\n ],\n ],\n ],\n },\n geohashParam: {\n type: \"Point\",\n coordinates: [-79.4382042508868, 40.917859676842255],\n },\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n\n it(\"Accepts interfaces\", async () => {\n const clientBoundTakesInterface = client(\n deleteFooInterface,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundTakesInterface\n >[0];\n\n expectTypeOf<\n {\n deletedInterface: {\n $objectType: \"Employee\" | \"Person\";\n $primaryKey: string | number;\n };\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesInterface = client(\n deleteFooInterface,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesInterface\n >[0];\n\n expectTypeOf<{\n deletedInterface: {\n $objectType: \"Employee\" | \"Person\";\n $primaryKey: string | number;\n };\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n\n const result = await client(deleteFooInterface).applyAction({\n deletedInterface: {\n $objectType: \"Employee\",\n $primaryKey: 50030,\n },\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n it(\"Accepts interfaces if implementing object types unknown\", async () => {\n const clientBoundTakesInterface = client(\n deleteBarInterface,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundTakesInterface\n >[0];\n\n expectTypeOf<\n {\n deletedInterface: {\n $objectType: string;\n $primaryKey: string | number;\n };\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesInterface = client(\n deleteBarInterface,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesInterface\n >[0];\n\n expectTypeOf<{\n deletedInterface: {\n $objectType: string;\n $primaryKey: string | number;\n };\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n });\n it(\"Accepts object type refs\", async () => {\n const clientBoundTakesObjectType = client(\n createFooInterface,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundTakesObjectType\n >[0];\n\n expectTypeOf<\n {\n createdInterface: string;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const clientBoundBatchActionTakesObjectType = client(\n createFooInterface,\n ).batchApplyAction;\n type InferredBatchParamType = Parameters<\n typeof clientBoundBatchActionTakesObjectType\n >[0];\n\n expectTypeOf<{\n createdInterface: string;\n }[]>().toMatchTypeOf<InferredBatchParamType>();\n\n const result = await client(createFooInterface).applyAction({\n createdInterface: Employee.apiName,\n });\n\n expectTypeOf<typeof result>().toEqualTypeOf<undefined>();\n expect(result).toBeUndefined();\n });\n it(\"conditionally returns edits in batch mode\", async () => {\n const result = await client(moveOffice).batchApplyAction([\n {\n officeId: \"SEA\",\n newAddress: \"456 Good Place\",\n newCapacity: 40,\n },\n {\n officeId: \"NYC\",\n newAddress: \"123 Main Street\",\n newCapacity: 80,\n },\n ], { $returnEdits: true });\n\n expect(result).toMatchObject(\n {\n \"addedLinks\": [],\n \"addedObjects\": [],\n \"deletedLinks\": [],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [],\n \"deletedObjectsCount\": 0,\n \"editedObjectTypes\": [\n \"Office\",\n ],\n \"modifiedObjects\": [\n {\n \"objectType\": \"Office\",\n \"primaryKey\": \"SEA\",\n },\n {\n \"objectType\": \"Office\",\n \"primaryKey\": \"NYC\",\n },\n ],\n \"type\": \"edits\",\n },\n );\n });\n\n it(\"nullable parameters work with nullish coalescing\", () => {\n const clientBoundAction = client(\n createOffice,\n ).applyAction;\n\n type InferredParamType = Parameters<\n typeof clientBoundAction\n >[0];\n\n expectTypeOf<\n {\n officeId: string;\n address: string | null;\n capacity: number | null;\n }\n >().toMatchTypeOf<\n InferredParamType\n >();\n\n const params: InferredParamType = { officeId: \"HQ\", address: null };\n\n const address: string = params.address ?? \"address\";\n expect(address).toBe(\"address\");\n });\n});\n\ndescribe(\"ActionResponse remapping\", () => {\n const actionResponse: SyncApplyActionResponseV2 = {\n edits: {\n type: \"edits\",\n edits: [{\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n \"type\": \"addObject\",\n }, {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n \"type\": \"modifyObject\",\n }, {\n \"aSideObject\": { \"primaryKey\": \"key1\", \"objectType\": \"Office\" },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n \"bSideObject\": { \"primaryKey\": \"key2\", \"objectType\": \"Employee\" },\n \"type\": \"addLink\",\n }, {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n \"type\": \"deleteObject\",\n }, {\n \"aSideObject\": { \"primaryKey\": \"key1\", \"objectType\": \"Office\" },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n \"bSideObject\": { \"primaryKey\": \"key2\", \"objectType\": \"Employee\" },\n \"type\": \"deleteLink\",\n }],\n deletedLinksCount: 0,\n deletedObjectsCount: 1,\n addedObjectCount: 1,\n modifiedObjectsCount: 1,\n addedLinksCount: 1,\n },\n };\n\n const batchActionResponse: BatchApplyActionResponseV2 = {\n edits: {\n type: \"edits\",\n edits: [{\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n \"type\": \"addObject\",\n }, {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n \"type\": \"modifyObject\",\n }, {\n \"aSideObject\": { \"primaryKey\": \"key1\", \"objectType\": \"Office\" },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n \"bSideObject\": { \"primaryKey\": \"key2\", \"objectType\": \"Employee\" },\n \"type\": \"addLink\",\n }],\n deletedLinksCount: 0,\n deletedObjectsCount: 0,\n addedObjectCount: 1,\n modifiedObjectsCount: 1,\n addedLinksCount: 1,\n },\n };\n\n it(\"Correctly unpacks edits and editedObjectTypes\", () => {\n const remappedActionResponse = remapActionResponse(actionResponse);\n const remappedBatchActionResponse = remapActionResponse(\n batchActionResponse,\n );\n expect(remappedActionResponse).toMatchInlineSnapshot(`\n {\n \"addedLinks\": [\n {\n \"aSideObject\": {\n \"objectType\": \"Office\",\n \"primaryKey\": \"key1\",\n },\n \"bSideObject\": {\n \"objectType\": \"Employee\",\n \"primaryKey\": \"key2\",\n },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n },\n ],\n \"addedObjects\": [\n {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n },\n ],\n \"deletedLinks\": [\n {\n \"aSideObject\": {\n \"objectType\": \"Office\",\n \"primaryKey\": \"key1\",\n },\n \"bSideObject\": {\n \"objectType\": \"Employee\",\n \"primaryKey\": \"key2\",\n },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n },\n ],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [\n {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n },\n ],\n \"deletedObjectsCount\": 1,\n \"editedObjectTypes\": [\n \"Developer\",\n \"Contractor\",\n \"Office\",\n \"Employee\",\n ],\n \"modifiedObjects\": [\n {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n },\n ],\n \"type\": \"edits\",\n }\n `);\n expect(remappedBatchActionResponse).toMatchInlineSnapshot(`\n {\n \"addedLinks\": [\n {\n \"aSideObject\": {\n \"objectType\": \"Office\",\n \"primaryKey\": \"key1\",\n },\n \"bSideObject\": {\n \"objectType\": \"Employee\",\n \"primaryKey\": \"key2\",\n },\n \"linkTypeApiNameAtoB\": \"test\",\n \"linkTypeApiNameBtoA\": \"test\",\n },\n ],\n \"addedObjects\": [\n {\n \"objectType\": \"Developer\",\n \"primaryKey\": \"PalantirDev\",\n },\n ],\n \"deletedLinks\": [],\n \"deletedLinksCount\": 0,\n \"deletedObjects\": [],\n \"deletedObjectsCount\": 0,\n \"editedObjectTypes\": [\n \"Developer\",\n \"Contractor\",\n \"Office\",\n \"Employee\",\n ],\n \"modifiedObjects\": [\n {\n \"objectType\": \"Contractor\",\n \"primaryKey\": \"Contractor1\",\n },\n ],\n \"type\": \"edits\",\n }\n `);\n });\n it(\"actions are enumerable\", async () => {\n const actions = Object.keys($Actions);\n expect(actions).toStrictEqual([\n \"actionTakesAttachment\",\n \"actionTakesMedia\",\n \"actionTakesObjectSet\",\n \"addGeoshape\",\n \"createFooInterface\",\n \"createOffice\",\n \"createOfficeAndEmployee\",\n \"createStructPerson\",\n \"deleteBarInterface\",\n \"deleteFooInterface\",\n \"editTodo\",\n \"moveOffice\",\n \"promoteEmployee\",\n \"promoteEmployeeObject\",\n ]);\n });\n});\n\nfunction wrapper<R>(fn: () => R): typeof fn {\n return () => fn();\n}\n\nasync function example() {\n await wrapper(async () => Promise.resolve(\"hi\"))();\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -29,8 +29,6 @@ export async function applyAction(client, action, parameters, options = {}) {
|
|
|
29
29
|
options: {
|
|
30
30
|
returnEdits: options?.$returnEdits ? "ALL" : "NONE"
|
|
31
31
|
}
|
|
32
|
-
}, {
|
|
33
|
-
branch: client.branch
|
|
34
32
|
});
|
|
35
33
|
const edits = response.edits;
|
|
36
34
|
return options?.$returnEdits ? edits?.type === "edits" ? remapActionResponse(response) : edits : undefined;
|
|
@@ -41,8 +39,6 @@ export async function applyAction(client, action, parameters, options = {}) {
|
|
|
41
39
|
mode: options?.$validateOnly ? "VALIDATE_ONLY" : "VALIDATE_AND_EXECUTE",
|
|
42
40
|
returnEdits: options?.$returnEdits ? "ALL_V2_WITH_DELETIONS" : "NONE"
|
|
43
41
|
}
|
|
44
|
-
}, {
|
|
45
|
-
branch: client.branch
|
|
46
42
|
});
|
|
47
43
|
if (options?.$validateOnly) {
|
|
48
44
|
return response.validation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyAction.js","names":["OntologiesV2","addUserAgentAndRequestContextHeaders","augmentRequestContext","toDataValue","ActionValidationError","applyAction","client","action","parameters","options","clientWithHeaders","finalMethodCall","Array","isArray","response","Actions","applyBatch","ontologyRid","apiName","requests","remapBatchActionParams","ontologyProvider","getActionDefinition","returnEdits","$returnEdits","branch","edits","type","remapActionResponse","undefined","apply","remapActionParams","mode","$validateOnly","validation","result","params","actionMetadata","parameterMap","key","value","Object","entries","remappedParams","Promise","all","map","param","editResponses","remappedActionResponse","deletedLinksCount","deletedObjectsCount","addedLinks","deletedLinks","addedObjects","deletedObjects","modifiedObjects","editedObjectTypes","editedObjectTypesSet","Set","edit","osdkEdit","linkTypeApiNameAtoB","linkTypeApiNameBtoA","aSideObject","bSideObject","push","add","objectType","primaryKey","process","env","NODE_ENV","console","warn","JSON","stringify"],"sources":["applyAction.ts"],"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 */\n\nimport type {\n ActionDefinition,\n ActionEditResponse,\n ActionMetadata,\n ActionParam,\n ActionReturnTypeForOptions,\n ApplyActionOptions,\n ApplyBatchActionOptions,\n CompileTimeMetadata as CompileTimeActionMetadata,\n DataValueClientToWire,\n} from \"@osdk/api\";\nimport type {\n BatchApplyActionResponseV2,\n DataValue,\n SyncApplyActionResponseV2,\n} from \"@osdk/foundry.ontologies\";\nimport * as OntologiesV2 from \"@osdk/foundry.ontologies\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { augmentRequestContext } from \"../util/augmentRequestContext.js\";\nimport type { NOOP } from \"../util/NOOP.js\";\nimport type { NullableProps } from \"../util/NullableProps.js\";\nimport type { PartialBy } from \"../util/partialBy.js\";\nimport { toDataValue } from \"../util/toDataValue.js\";\nimport { ActionValidationError } from \"./ActionValidationError.js\";\n\ntype BaseType<APD extends Pick<ActionMetadata.Parameter<any>, \"type\">> =\n APD[\"type\"] extends ActionMetadata.DataType.Object<infer TTargetType>\n ? ActionParam.ObjectType<TTargetType>\n : APD[\"type\"] extends ActionMetadata.DataType.ObjectSet<infer TTargetType>\n ? ActionParam.ObjectSetType<TTargetType>\n : APD[\"type\"] extends ActionMetadata.DataType.Struct<infer TStructType>\n ? ActionParam.StructType<TStructType>\n : APD[\"type\"] extends keyof DataValueClientToWire\n ? ActionParam.PrimitiveType<APD[\"type\"]>\n : never;\n\ntype MaybeArrayType<APD extends ActionMetadata.Parameter<any>> =\n APD[\"multiplicity\"] extends true ? Array<BaseType<APD>>\n : BaseType<APD>;\n\ntype NotOptionalParams<X extends ActionParametersDefinition> = {\n [P in keyof X]: MaybeArrayType<X[P]>;\n};\n\nexport type OsdkActionParameters<\n X extends ActionParametersDefinition,\n> = NullableProps<X> extends never ? NotOptionalParams<X>\n : PartialBy<NotOptionalParams<X>, NullableProps<X>>;\n\nexport type ActionSignatureFromDef<\n T extends ActionDefinition<any>,\n> = {\n applyAction:\n [CompileTimeActionMetadata<T>[\"signatures\"][\"applyAction\"]] extends [never]\n ? ActionSignature<CompileTimeActionMetadata<T>[\"parameters\"]>\n : CompileTimeActionMetadata<T>[\"signatures\"][\"applyAction\"];\n\n batchApplyAction:\n [CompileTimeActionMetadata<T>[\"signatures\"][\"batchApplyAction\"]] extends\n [never] ? BatchActionSignature<CompileTimeActionMetadata<T>[\"parameters\"]>\n : CompileTimeActionMetadata<T>[\"signatures\"][\"batchApplyAction\"];\n};\n\ntype ActionParametersDefinition = Record<\n any,\n ActionMetadata.Parameter<any>\n>;\n\nexport type ActionSignature<\n X extends Record<any, ActionMetadata.Parameter<any>>,\n> = <\n A extends NOOP<OsdkActionParameters<X>>,\n OP extends ApplyActionOptions,\n>(\n args: A,\n options?: OP,\n) => Promise<\n ActionReturnTypeForOptions<OP>\n>;\n\nexport type BatchActionSignature<\n X extends Record<any, ActionMetadata.Parameter<any>>,\n> = <\n A extends NOOP<OsdkActionParameters<X>>[],\n OP extends ApplyBatchActionOptions,\n>(\n args: A,\n options?: OP,\n) => Promise<\n ActionReturnTypeForOptions<OP>\n>;\n\nexport async function applyAction<\n AD extends ActionDefinition<any>,\n P extends\n | OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>\n | OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>[],\n Op extends P extends OsdkActionParameters<\n CompileTimeActionMetadata<AD>[\"parameters\"]\n >[] ? ApplyBatchActionOptions\n : ApplyActionOptions,\n>(\n client: MinimalClient,\n action: AD,\n parameters?: P,\n options: Op = {} as Op,\n): Promise<\n ActionReturnTypeForOptions<Op>\n> {\n const clientWithHeaders = addUserAgentAndRequestContextHeaders(\n augmentRequestContext(client, _ => ({ finalMethodCall: \"applyAction\" })),\n action,\n );\n if (Array.isArray(parameters)) {\n const response = await OntologiesV2.Actions.applyBatch(\n clientWithHeaders,\n await client.ontologyRid,\n action.apiName,\n {\n requests: parameters\n ? await remapBatchActionParams(\n parameters,\n client,\n await client.ontologyProvider.getActionDefinition(action.apiName),\n )\n : [],\n options: {\n returnEdits: options?.$returnEdits ? \"ALL\" : \"NONE\",\n },\n },\n { branch: client.branch },\n );\n\n const edits = response.edits;\n return (options?.$returnEdits\n ? edits?.type === \"edits\" ? remapActionResponse(response) : edits\n : undefined) as ActionReturnTypeForOptions<Op>;\n } else {\n const response = await OntologiesV2.Actions.apply(\n clientWithHeaders,\n await client.ontologyRid,\n action.apiName,\n {\n parameters: await remapActionParams(\n parameters as OsdkActionParameters<\n CompileTimeActionMetadata<AD>[\"parameters\"]\n >,\n client,\n await client.ontologyProvider.getActionDefinition(action.apiName),\n ),\n options: {\n mode: (options as ApplyActionOptions)?.$validateOnly\n ? \"VALIDATE_ONLY\"\n : \"VALIDATE_AND_EXECUTE\",\n returnEdits: options\n ?.$returnEdits\n ? \"ALL_V2_WITH_DELETIONS\"\n : \"NONE\",\n },\n },\n { branch: client.branch },\n );\n\n if ((options as ApplyActionOptions)?.$validateOnly) {\n return response.validation as ActionReturnTypeForOptions<Op>;\n }\n\n if (response.validation && response.validation?.result === \"INVALID\") {\n const validation = response.validation;\n throw new ActionValidationError(validation);\n }\n\n const edits = response.edits;\n return (options?.$returnEdits\n ? edits?.type === \"edits\" ? remapActionResponse(response) : edits\n : undefined) as ActionReturnTypeForOptions<Op>;\n }\n}\n\nasync function remapActionParams<AD extends ActionDefinition<any>>(\n params:\n | OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>\n | undefined,\n client: MinimalClient,\n actionMetadata: ActionMetadata,\n): Promise<Record<string, DataValue>> {\n if (params == null) {\n return {};\n }\n\n const parameterMap: { [parameterName: string]: unknown } = {};\n for (const [key, value] of Object.entries(params)) {\n parameterMap[key] = await toDataValue(value, client, actionMetadata);\n }\n\n return parameterMap;\n}\n\nasync function remapBatchActionParams<\n AD extends ActionDefinition<any>,\n>(\n params: OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>[],\n client: MinimalClient,\n actionMetadata: ActionMetadata,\n) {\n const remappedParams = await Promise.all(params.map(\n async param => {\n return {\n parameters: await remapActionParams<AD>(param, client, actionMetadata),\n };\n },\n ));\n\n return remappedParams;\n}\n\nexport function remapActionResponse(\n response: SyncApplyActionResponseV2 | BatchApplyActionResponseV2,\n): ActionEditResponse | undefined {\n const editResponses = response?.edits;\n if (editResponses?.type === \"edits\") {\n const remappedActionResponse: ActionEditResponse = {\n type: editResponses.type,\n deletedLinksCount: editResponses.deletedLinksCount,\n deletedObjectsCount: editResponses.deletedObjectsCount,\n addedLinks: [],\n deletedLinks: [],\n addedObjects: [],\n deletedObjects: [],\n modifiedObjects: [],\n editedObjectTypes: [],\n };\n\n const editedObjectTypesSet = new Set<string>();\n for (const edit of editResponses.edits) {\n if (edit.type === \"addLink\" || edit.type === \"deleteLink\") {\n const osdkEdit = {\n linkTypeApiNameAtoB: edit.linkTypeApiNameAtoB,\n linkTypeApiNameBtoA: edit.linkTypeApiNameBtoA,\n aSideObject: edit.aSideObject,\n bSideObject: edit.bSideObject,\n };\n edit.type === \"addLink\"\n ? remappedActionResponse.addedLinks.push(\n osdkEdit,\n )\n : remappedActionResponse.deletedLinks?.push(osdkEdit);\n editedObjectTypesSet.add(edit.aSideObject.objectType);\n editedObjectTypesSet.add(edit.bSideObject.objectType);\n } else if (\n edit.type === \"addObject\" || edit.type === \"deleteObject\"\n || edit.type === \"modifyObject\"\n ) {\n const osdkEdit = {\n objectType: edit.objectType,\n primaryKey: edit.primaryKey,\n };\n if (edit.type === \"addObject\") {\n remappedActionResponse.addedObjects.push(osdkEdit);\n } else if (edit.type === \"deleteObject\") {\n remappedActionResponse.deletedObjects?.push(osdkEdit);\n } else if (edit.type === \"modifyObject\") {\n remappedActionResponse.modifiedObjects.push(osdkEdit);\n }\n editedObjectTypesSet.add(edit.objectType);\n } else {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\n `Unexpected edit type: ${JSON.stringify(edit)}`,\n );\n }\n }\n }\n remappedActionResponse.editedObjectTypes = [...editedObjectTypesSet];\n return remappedActionResponse;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"applyAction.js","names":["OntologiesV2","addUserAgentAndRequestContextHeaders","augmentRequestContext","toDataValue","ActionValidationError","applyAction","client","action","parameters","options","clientWithHeaders","finalMethodCall","Array","isArray","response","Actions","applyBatch","ontologyRid","apiName","requests","remapBatchActionParams","ontologyProvider","getActionDefinition","returnEdits","$returnEdits","edits","type","remapActionResponse","undefined","apply","remapActionParams","mode","$validateOnly","validation","result","params","actionMetadata","parameterMap","key","value","Object","entries","remappedParams","Promise","all","map","param","editResponses","remappedActionResponse","deletedLinksCount","deletedObjectsCount","addedLinks","deletedLinks","addedObjects","deletedObjects","modifiedObjects","editedObjectTypes","editedObjectTypesSet","Set","edit","osdkEdit","linkTypeApiNameAtoB","linkTypeApiNameBtoA","aSideObject","bSideObject","push","add","objectType","primaryKey","process","env","NODE_ENV","console","warn","JSON","stringify"],"sources":["applyAction.ts"],"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 */\n\nimport type {\n ActionDefinition,\n ActionEditResponse,\n ActionMetadata,\n ActionParam,\n ActionReturnTypeForOptions,\n ApplyActionOptions,\n ApplyBatchActionOptions,\n CompileTimeMetadata as CompileTimeActionMetadata,\n DataValueClientToWire,\n} from \"@osdk/api\";\nimport type {\n BatchApplyActionResponseV2,\n DataValue,\n SyncApplyActionResponseV2,\n} from \"@osdk/foundry.ontologies\";\nimport * as OntologiesV2 from \"@osdk/foundry.ontologies\";\nimport type { MinimalClient } from \"../MinimalClientContext.js\";\nimport { addUserAgentAndRequestContextHeaders } from \"../util/addUserAgentAndRequestContextHeaders.js\";\nimport { augmentRequestContext } from \"../util/augmentRequestContext.js\";\nimport type { NOOP } from \"../util/NOOP.js\";\nimport type { NullableProps } from \"../util/NullableProps.js\";\nimport type { PartialBy } from \"../util/partialBy.js\";\nimport { toDataValue } from \"../util/toDataValue.js\";\nimport { ActionValidationError } from \"./ActionValidationError.js\";\n\ntype BaseType<APD extends Pick<ActionMetadata.Parameter<any>, \"type\">> =\n APD[\"type\"] extends ActionMetadata.DataType.Object<infer TTargetType>\n ? ActionParam.ObjectType<TTargetType>\n : APD[\"type\"] extends ActionMetadata.DataType.ObjectSet<infer TTargetType>\n ? ActionParam.ObjectSetType<TTargetType>\n : APD[\"type\"] extends ActionMetadata.DataType.Struct<infer TStructType>\n ? ActionParam.StructType<TStructType>\n : APD[\"type\"] extends keyof DataValueClientToWire\n ? ActionParam.PrimitiveType<APD[\"type\"]>\n : never;\n\ntype MaybeArrayType<APD extends ActionMetadata.Parameter<any>> =\n APD[\"multiplicity\"] extends true ? Array<BaseType<APD>>\n : BaseType<APD>;\n\ntype NotOptionalParams<X extends ActionParametersDefinition> = {\n [P in keyof X]: MaybeArrayType<X[P]>;\n};\n\nexport type OsdkActionParameters<\n X extends ActionParametersDefinition,\n> = NullableProps<X> extends never ? NotOptionalParams<X>\n : PartialBy<NotOptionalParams<X>, NullableProps<X>>;\n\nexport type ActionSignatureFromDef<\n T extends ActionDefinition<any>,\n> = {\n applyAction:\n [CompileTimeActionMetadata<T>[\"signatures\"][\"applyAction\"]] extends [never]\n ? ActionSignature<CompileTimeActionMetadata<T>[\"parameters\"]>\n : CompileTimeActionMetadata<T>[\"signatures\"][\"applyAction\"];\n\n batchApplyAction:\n [CompileTimeActionMetadata<T>[\"signatures\"][\"batchApplyAction\"]] extends\n [never] ? BatchActionSignature<CompileTimeActionMetadata<T>[\"parameters\"]>\n : CompileTimeActionMetadata<T>[\"signatures\"][\"batchApplyAction\"];\n};\n\ntype ActionParametersDefinition = Record<\n any,\n ActionMetadata.Parameter<any>\n>;\n\nexport type ActionSignature<\n X extends Record<any, ActionMetadata.Parameter<any>>,\n> = <\n A extends NOOP<OsdkActionParameters<X>>,\n OP extends ApplyActionOptions,\n>(\n args: A,\n options?: OP,\n) => Promise<\n ActionReturnTypeForOptions<OP>\n>;\n\nexport type BatchActionSignature<\n X extends Record<any, ActionMetadata.Parameter<any>>,\n> = <\n A extends NOOP<OsdkActionParameters<X>>[],\n OP extends ApplyBatchActionOptions,\n>(\n args: A,\n options?: OP,\n) => Promise<\n ActionReturnTypeForOptions<OP>\n>;\n\nexport async function applyAction<\n AD extends ActionDefinition<any>,\n P extends\n | OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>\n | OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>[],\n Op extends P extends OsdkActionParameters<\n CompileTimeActionMetadata<AD>[\"parameters\"]\n >[] ? ApplyBatchActionOptions\n : ApplyActionOptions,\n>(\n client: MinimalClient,\n action: AD,\n parameters?: P,\n options: Op = {} as Op,\n): Promise<\n ActionReturnTypeForOptions<Op>\n> {\n const clientWithHeaders = addUserAgentAndRequestContextHeaders(\n augmentRequestContext(client, _ => ({ finalMethodCall: \"applyAction\" })),\n action,\n );\n if (Array.isArray(parameters)) {\n const response = await OntologiesV2.Actions.applyBatch(\n clientWithHeaders,\n await client.ontologyRid,\n action.apiName,\n {\n requests: parameters\n ? await remapBatchActionParams(\n parameters,\n client,\n await client.ontologyProvider.getActionDefinition(action.apiName),\n )\n : [],\n options: {\n returnEdits: options?.$returnEdits ? \"ALL\" : \"NONE\",\n },\n },\n );\n\n const edits = response.edits;\n return (options?.$returnEdits\n ? edits?.type === \"edits\" ? remapActionResponse(response) : edits\n : undefined) as ActionReturnTypeForOptions<Op>;\n } else {\n const response = await OntologiesV2.Actions.apply(\n clientWithHeaders,\n await client.ontologyRid,\n action.apiName,\n {\n parameters: await remapActionParams(\n parameters as OsdkActionParameters<\n CompileTimeActionMetadata<AD>[\"parameters\"]\n >,\n client,\n await client.ontologyProvider.getActionDefinition(action.apiName),\n ),\n options: {\n mode: (options as ApplyActionOptions)?.$validateOnly\n ? \"VALIDATE_ONLY\"\n : \"VALIDATE_AND_EXECUTE\",\n returnEdits: options\n ?.$returnEdits\n ? \"ALL_V2_WITH_DELETIONS\"\n : \"NONE\",\n },\n },\n );\n\n if ((options as ApplyActionOptions)?.$validateOnly) {\n return response.validation as ActionReturnTypeForOptions<Op>;\n }\n\n if (response.validation && response.validation?.result === \"INVALID\") {\n const validation = response.validation;\n throw new ActionValidationError(validation);\n }\n\n const edits = response.edits;\n return (options?.$returnEdits\n ? edits?.type === \"edits\" ? remapActionResponse(response) : edits\n : undefined) as ActionReturnTypeForOptions<Op>;\n }\n}\n\nasync function remapActionParams<AD extends ActionDefinition<any>>(\n params:\n | OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>\n | undefined,\n client: MinimalClient,\n actionMetadata: ActionMetadata,\n): Promise<Record<string, DataValue>> {\n if (params == null) {\n return {};\n }\n\n const parameterMap: { [parameterName: string]: unknown } = {};\n for (const [key, value] of Object.entries(params)) {\n parameterMap[key] = await toDataValue(value, client, actionMetadata);\n }\n\n return parameterMap;\n}\n\nasync function remapBatchActionParams<\n AD extends ActionDefinition<any>,\n>(\n params: OsdkActionParameters<CompileTimeActionMetadata<AD>[\"parameters\"]>[],\n client: MinimalClient,\n actionMetadata: ActionMetadata,\n) {\n const remappedParams = await Promise.all(params.map(\n async param => {\n return {\n parameters: await remapActionParams<AD>(param, client, actionMetadata),\n };\n },\n ));\n\n return remappedParams;\n}\n\nexport function remapActionResponse(\n response: SyncApplyActionResponseV2 | BatchApplyActionResponseV2,\n): ActionEditResponse | undefined {\n const editResponses = response?.edits;\n if (editResponses?.type === \"edits\") {\n const remappedActionResponse: ActionEditResponse = {\n type: editResponses.type,\n deletedLinksCount: editResponses.deletedLinksCount,\n deletedObjectsCount: editResponses.deletedObjectsCount,\n addedLinks: [],\n deletedLinks: [],\n addedObjects: [],\n deletedObjects: [],\n modifiedObjects: [],\n editedObjectTypes: [],\n };\n\n const editedObjectTypesSet = new Set<string>();\n for (const edit of editResponses.edits) {\n if (edit.type === \"addLink\" || edit.type === \"deleteLink\") {\n const osdkEdit = {\n linkTypeApiNameAtoB: edit.linkTypeApiNameAtoB,\n linkTypeApiNameBtoA: edit.linkTypeApiNameBtoA,\n aSideObject: edit.aSideObject,\n bSideObject: edit.bSideObject,\n };\n edit.type === \"addLink\"\n ? remappedActionResponse.addedLinks.push(\n osdkEdit,\n )\n : remappedActionResponse.deletedLinks?.push(osdkEdit);\n editedObjectTypesSet.add(edit.aSideObject.objectType);\n editedObjectTypesSet.add(edit.bSideObject.objectType);\n } else if (\n edit.type === \"addObject\" || edit.type === \"deleteObject\"\n || edit.type === \"modifyObject\"\n ) {\n const osdkEdit = {\n objectType: edit.objectType,\n primaryKey: edit.primaryKey,\n };\n if (edit.type === \"addObject\") {\n remappedActionResponse.addedObjects.push(osdkEdit);\n } else if (edit.type === \"deleteObject\") {\n remappedActionResponse.deletedObjects?.push(osdkEdit);\n } else if (edit.type === \"modifyObject\") {\n remappedActionResponse.modifiedObjects.push(osdkEdit);\n }\n editedObjectTypesSet.add(edit.objectType);\n } else {\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line no-console\n console.warn(\n `Unexpected edit type: ${JSON.stringify(edit)}`,\n );\n }\n }\n }\n remappedActionResponse.editedObjectTypes = [...editedObjectTypesSet];\n return remappedActionResponse;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -71,8 +71,7 @@ export function createClientInternal(objectSetFactory, transactionRid, flushEdit
|
|
|
71
71
|
...options,
|
|
72
72
|
logger: options?.logger ?? new MinimalLogger(),
|
|
73
73
|
transactionId: transactionRid,
|
|
74
|
-
flushEdits
|
|
75
|
-
branch: options?.branch
|
|
74
|
+
flushEdits
|
|
76
75
|
}, fetchFn, objectSetFactory);
|
|
77
76
|
return createClientFromContext(clientCtx);
|
|
78
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createClient.js","names":["__EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference","__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid","__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid","__EXPERIMENTAL__NOT_SUPPORTED_YET__getBulkLinks","OntologiesV2","symbolClientContext","oldSymbolClientContext","createBulkLinksAsyncIterFactory","applyAction","additionalContext","createMinimalClient","fetchMetadataInternal","MinimalLogger","fetchPage","fetchStaticRidPage","fetchSingle","createObjectSet","applyQuery","ActionInvoker","constructor","clientCtx","actionDef","bind","undefined","batchApplyAction","QueryInvoker","queryDef","executeFunction","createClientInternal","objectSetFactory","transactionRid","flushEdits","baseUrl","ontologyRid","tokenProvider","options","fetchFn","fetch","startsWith","Error","then","logger","transactionId","branch","createClientFromContext","fetchMetadata","client","Object","defineProperties","o","type","name","getBulkLinks","fetchOneByRid","objectType","rid","createWithRid","createMediaReference","args","data","fileName","propertyType","MediaReferenceProperties","upload","apiName","mediaItemPath","preview","fetchPageByRid","objectOrInterfaceType","rids","fetchPageByRidNoType","value","createClient","createClientWithTransaction"],"sources":["createClient.ts"],"sourcesContent":["/*\n * Copyright 2024 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 */\n\nimport type {\n ActionDefinition,\n FetchPageArgs,\n InterfaceDefinition,\n Logger,\n NullabilityAdherence,\n ObjectOrInterfaceDefinition,\n ObjectSet,\n ObjectTypeDefinition,\n Osdk,\n PropertyKeys,\n QueryDefinition,\n SelectArg,\n} from \"@osdk/api\";\nimport type {\n Experiment,\n ExperimentFns,\n MinimalObjectSet,\n} from \"@osdk/api/unstable\";\nimport {\n __EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference,\n __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid,\n __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid,\n __EXPERIMENTAL__NOT_SUPPORTED_YET__getBulkLinks,\n} from \"@osdk/api/unstable\";\nimport type { ObjectSet as WireObjectSet } from \"@osdk/foundry.ontologies\";\nimport * as OntologiesV2 from \"@osdk/foundry.ontologies\";\nimport { symbolClientContext as oldSymbolClientContext } from \"@osdk/shared.client\";\nimport { createBulkLinksAsyncIterFactory } from \"./__unstable/createBulkLinksAsyncIterFactory.js\";\nimport type { ActionSignatureFromDef } from \"./actions/applyAction.js\";\nimport { applyAction } from \"./actions/applyAction.js\";\nimport { additionalContext, type Client } from \"./Client.js\";\nimport { createMinimalClient } from \"./createMinimalClient.js\";\nimport { fetchMetadataInternal } from \"./fetchMetadata.js\";\nimport { MinimalLogger } from \"./logger/MinimalLogger.js\";\nimport type { MinimalClient } from \"./MinimalClientContext.js\";\nimport { fetchPage, fetchStaticRidPage } from \"./object/fetchPage.js\";\nimport { fetchSingle } from \"./object/fetchSingle.js\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport { applyQuery } from \"./queries/applyQuery.js\";\nimport type { QuerySignatureFromDef } from \"./queries/types.js\";\n\n// We import it this way to keep compatible with CJS. If we referenced the\n// value of `symbolClientContext` directly, then we would have to a dynamic import\n// in `createClientInternal` which would make it async and a break.\n// Since this is just a string in `@osdk/shared.client2` instead of a symbol,\n// we can safely perform this trick.\ntype newSymbolClientContext =\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports\n typeof import(\"@osdk/shared.client2\").symbolClientContext;\n\nclass ActionInvoker<Q extends ActionDefinition<any>>\n implements ActionSignatureFromDef<Q>\n{\n constructor(\n clientCtx: MinimalClient,\n actionDef: ActionDefinition<any>,\n ) {\n // We type the property as a generic function as binding `applyAction`\n // doesn't return a type thats all that useful anyway\n // The implements covers us for the most part here as this exact type doesn't\n // escape this file\n this.applyAction = applyAction.bind(undefined, clientCtx, actionDef);\n this.batchApplyAction = applyAction.bind(undefined, clientCtx, actionDef);\n }\n\n applyAction: (...args: any[]) => any;\n batchApplyAction: (...args: any[]) => any;\n}\n\nclass QueryInvoker<Q extends QueryDefinition<any>>\n implements QuerySignatureFromDef<Q>\n{\n constructor(\n clientCtx: MinimalClient,\n queryDef: QueryDefinition<any>,\n ) {\n this.executeFunction = applyQuery.bind(undefined, clientCtx, queryDef);\n }\n\n executeFunction: (...args: any[]) => any;\n}\n\n/** @internal */\nexport function createClientInternal(\n objectSetFactory: ObjectSetFactory<any, any>,\n transactionRid: string | undefined,\n flushEdits: (() => Promise<void>) | undefined,\n baseUrl: string,\n ontologyRid: string | Promise<string>,\n tokenProvider: () => Promise<string>,\n options: { logger?: Logger; branch?: string } | undefined = undefined,\n fetchFn: typeof globalThis.fetch = fetch,\n): Client {\n if (typeof ontologyRid === \"string\") {\n if (!ontologyRid.startsWith(\"ri.\")) {\n throw new Error(\"Invalid ontology RID\");\n }\n } else {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n ontologyRid.then((ontologyRid) => {\n if (!ontologyRid.startsWith(\"ri.\")) {\n // FIXME this promise is not await so this just shows up as an unhandled promise rejection\n throw new Error(\"Invalid ontology RID\");\n }\n });\n }\n\n const clientCtx: MinimalClient = createMinimalClient(\n { ontologyRid },\n baseUrl,\n tokenProvider,\n {\n ...options,\n logger: options?.logger ?? new MinimalLogger(),\n transactionId: transactionRid,\n flushEdits,\n branch: options?.branch,\n },\n fetchFn,\n objectSetFactory,\n );\n\n return createClientFromContext(clientCtx);\n}\n\n/**\n * @internal\n */\nexport function createClientFromContext(clientCtx: MinimalClient) {\n function clientFn<\n T extends\n | ObjectOrInterfaceDefinition\n | ActionDefinition<any>\n | QueryDefinition<any>\n | Experiment<\"2.0.8\">\n | Experiment<\"2.1.0\">,\n >(o: T): T extends ObjectTypeDefinition ? ObjectSet<T>\n : T extends InterfaceDefinition ? MinimalObjectSet<T>\n : T extends ActionDefinition<any> ? ActionSignatureFromDef<T>\n : T extends QueryDefinition<any> ? QuerySignatureFromDef<T>\n : T extends Experiment<\"2.0.8\"> | Experiment<\"2.1.0\">\n ? { invoke: ExperimentFns<T> }\n : never\n {\n if (o.type === \"object\" || o.type === \"interface\") {\n return clientCtx.objectSetFactory(o, clientCtx) as any;\n } else if (o.type === \"action\") {\n return new ActionInvoker(\n clientCtx,\n o,\n ) as (T extends ActionDefinition<any>\n // first `as` to the action definition for our \"real\" typecheck\n ? ActionSignatureFromDef<T>\n : never) as any; // then as any for dealing with the conditional return value\n } else if (o.type === \"query\") {\n return new QueryInvoker(\n clientCtx,\n o,\n ) as (T extends QueryDefinition<any> ? QuerySignatureFromDef<T>\n : never) as any;\n } else if (o.type === \"experiment\") {\n switch (o.name) {\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__getBulkLinks.name:\n return {\n getBulkLinks: createBulkLinksAsyncIterFactory(\n clientCtx,\n ),\n } as any;\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid.name:\n return {\n fetchOneByRid: async <\n Q extends ObjectOrInterfaceDefinition,\n const L extends PropertyKeys<Q>,\n const R extends boolean,\n const S extends false | \"throw\" = NullabilityAdherence.Default,\n >(\n objectType: Q,\n rid: string,\n options: SelectArg<Q, L, R, S>,\n ) => {\n return await fetchSingle(\n clientCtx,\n objectType,\n options,\n createWithRid(\n [rid],\n ),\n ) as Osdk<Q>;\n },\n } as any;\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference.name:\n return {\n createMediaReference: async <\n Q extends ObjectTypeDefinition,\n const L extends PropertyKeys.Filtered<Q, \"mediaReference\">,\n >(args: {\n data: Blob;\n fileName: string;\n objectType: Q;\n propertyType: L;\n }) => {\n const { data, fileName, objectType, propertyType } = args;\n return await OntologiesV2.MediaReferenceProperties.upload(\n clientCtx,\n await clientCtx.ontologyRid,\n objectType.apiName,\n propertyType as string,\n data,\n {\n mediaItemPath: fileName,\n preview: true,\n },\n );\n },\n } as any;\n\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid.name:\n return {\n fetchPageByRid: async <\n Q extends ObjectOrInterfaceDefinition,\n const L extends PropertyKeys<Q>,\n const R extends boolean,\n const S extends false | \"throw\" = NullabilityAdherence.Default,\n >(\n objectOrInterfaceType: Q,\n rids: string[],\n options: FetchPageArgs<Q, L, R, any, S> = {},\n ) => {\n return await fetchPage(\n clientCtx,\n objectOrInterfaceType,\n options,\n createWithRid(rids),\n );\n },\n fetchPageByRidNoType: async <\n const R extends boolean,\n const S extends NullabilityAdherence,\n const T extends boolean,\n >(\n rids: readonly string[],\n options?: FetchPageArgs<\n ObjectOrInterfaceDefinition,\n any,\n R,\n any,\n S,\n T\n >,\n ) => {\n return await fetchStaticRidPage(\n clientCtx,\n rids,\n options ?? {},\n );\n },\n } as any;\n }\n\n throw new Error(\"not implemented\");\n } else {\n throw new Error(\"not implemented\");\n }\n }\n\n const fetchMetadata = fetchMetadataInternal.bind(\n undefined,\n clientCtx,\n );\n\n const symbolClientContext: newSymbolClientContext = \"__osdkClientContext\";\n\n const client: Client = Object.defineProperties<Client>(\n clientFn as Client,\n {\n [oldSymbolClientContext]: {\n value: clientCtx,\n },\n [symbolClientContext]: {\n value: clientCtx,\n },\n [additionalContext]: {\n value: clientCtx,\n },\n fetchMetadata: {\n value: fetchMetadata,\n },\n } satisfies Record<keyof Client, PropertyDescriptor>,\n );\n\n return client;\n}\n\nexport const createClient: (\n baseUrl: string,\n ontologyRid: string | Promise<string>,\n tokenProvider: () => Promise<string>,\n options?: {\n logger?: Logger;\n branch?: string;\n } | undefined,\n fetchFn?: typeof fetch | undefined,\n) => Client = createClientInternal.bind(\n undefined,\n createObjectSet,\n undefined,\n undefined,\n);\n\nexport const createClientWithTransaction: (\n transactionId: string,\n flushEdits: () => Promise<void>,\n ...args: Parameters<typeof createClient>\n) => Client = (transactionRid, flushEdits, ...args) =>\n createClientInternal(\n createObjectSet,\n transactionRid,\n flushEdits,\n ...args,\n ) as Client;\n\nfunction createWithRid(\n rids: string[],\n) {\n const withRid: WireObjectSet = {\n type: \"static\",\n \"objects\": rids,\n };\n\n return withRid;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"createClient.js","names":["__EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference","__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid","__EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid","__EXPERIMENTAL__NOT_SUPPORTED_YET__getBulkLinks","OntologiesV2","symbolClientContext","oldSymbolClientContext","createBulkLinksAsyncIterFactory","applyAction","additionalContext","createMinimalClient","fetchMetadataInternal","MinimalLogger","fetchPage","fetchStaticRidPage","fetchSingle","createObjectSet","applyQuery","ActionInvoker","constructor","clientCtx","actionDef","bind","undefined","batchApplyAction","QueryInvoker","queryDef","executeFunction","createClientInternal","objectSetFactory","transactionRid","flushEdits","baseUrl","ontologyRid","tokenProvider","options","fetchFn","fetch","startsWith","Error","then","logger","transactionId","createClientFromContext","fetchMetadata","client","Object","defineProperties","o","type","name","getBulkLinks","fetchOneByRid","objectType","rid","createWithRid","createMediaReference","args","data","fileName","propertyType","MediaReferenceProperties","upload","apiName","mediaItemPath","preview","fetchPageByRid","objectOrInterfaceType","rids","fetchPageByRidNoType","value","createClient","createClientWithTransaction"],"sources":["createClient.ts"],"sourcesContent":["/*\n * Copyright 2024 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 */\n\nimport type {\n ActionDefinition,\n FetchPageArgs,\n InterfaceDefinition,\n Logger,\n NullabilityAdherence,\n ObjectOrInterfaceDefinition,\n ObjectSet,\n ObjectTypeDefinition,\n Osdk,\n PropertyKeys,\n QueryDefinition,\n SelectArg,\n} from \"@osdk/api\";\nimport type {\n Experiment,\n ExperimentFns,\n MinimalObjectSet,\n} from \"@osdk/api/unstable\";\nimport {\n __EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference,\n __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid,\n __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid,\n __EXPERIMENTAL__NOT_SUPPORTED_YET__getBulkLinks,\n} from \"@osdk/api/unstable\";\nimport type { ObjectSet as WireObjectSet } from \"@osdk/foundry.ontologies\";\nimport * as OntologiesV2 from \"@osdk/foundry.ontologies\";\nimport { symbolClientContext as oldSymbolClientContext } from \"@osdk/shared.client\";\nimport { createBulkLinksAsyncIterFactory } from \"./__unstable/createBulkLinksAsyncIterFactory.js\";\nimport type { ActionSignatureFromDef } from \"./actions/applyAction.js\";\nimport { applyAction } from \"./actions/applyAction.js\";\nimport { additionalContext, type Client } from \"./Client.js\";\nimport { createMinimalClient } from \"./createMinimalClient.js\";\nimport { fetchMetadataInternal } from \"./fetchMetadata.js\";\nimport { MinimalLogger } from \"./logger/MinimalLogger.js\";\nimport type { MinimalClient } from \"./MinimalClientContext.js\";\nimport { fetchPage, fetchStaticRidPage } from \"./object/fetchPage.js\";\nimport { fetchSingle } from \"./object/fetchSingle.js\";\nimport { createObjectSet } from \"./objectSet/createObjectSet.js\";\nimport type { ObjectSetFactory } from \"./objectSet/ObjectSetFactory.js\";\nimport { applyQuery } from \"./queries/applyQuery.js\";\nimport type { QuerySignatureFromDef } from \"./queries/types.js\";\n\n// We import it this way to keep compatible with CJS. If we referenced the\n// value of `symbolClientContext` directly, then we would have to a dynamic import\n// in `createClientInternal` which would make it async and a break.\n// Since this is just a string in `@osdk/shared.client2` instead of a symbol,\n// we can safely perform this trick.\ntype newSymbolClientContext =\n // eslint-disable-next-line @typescript-eslint/consistent-type-imports\n typeof import(\"@osdk/shared.client2\").symbolClientContext;\n\nclass ActionInvoker<Q extends ActionDefinition<any>>\n implements ActionSignatureFromDef<Q>\n{\n constructor(\n clientCtx: MinimalClient,\n actionDef: ActionDefinition<any>,\n ) {\n // We type the property as a generic function as binding `applyAction`\n // doesn't return a type thats all that useful anyway\n // The implements covers us for the most part here as this exact type doesn't\n // escape this file\n this.applyAction = applyAction.bind(undefined, clientCtx, actionDef);\n this.batchApplyAction = applyAction.bind(undefined, clientCtx, actionDef);\n }\n\n applyAction: (...args: any[]) => any;\n batchApplyAction: (...args: any[]) => any;\n}\n\nclass QueryInvoker<Q extends QueryDefinition<any>>\n implements QuerySignatureFromDef<Q>\n{\n constructor(\n clientCtx: MinimalClient,\n queryDef: QueryDefinition<any>,\n ) {\n this.executeFunction = applyQuery.bind(undefined, clientCtx, queryDef);\n }\n\n executeFunction: (...args: any[]) => any;\n}\n\n/** @internal */\nexport function createClientInternal(\n objectSetFactory: ObjectSetFactory<any, any>,\n transactionRid: string | undefined,\n flushEdits: (() => Promise<void>) | undefined,\n baseUrl: string,\n ontologyRid: string | Promise<string>,\n tokenProvider: () => Promise<string>,\n options: { logger?: Logger } | undefined = undefined,\n fetchFn: typeof globalThis.fetch = fetch,\n): Client {\n if (typeof ontologyRid === \"string\") {\n if (!ontologyRid.startsWith(\"ri.\")) {\n throw new Error(\"Invalid ontology RID\");\n }\n } else {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n ontologyRid.then((ontologyRid) => {\n if (!ontologyRid.startsWith(\"ri.\")) {\n // FIXME this promise is not await so this just shows up as an unhandled promise rejection\n throw new Error(\"Invalid ontology RID\");\n }\n });\n }\n\n const clientCtx: MinimalClient = createMinimalClient(\n { ontologyRid },\n baseUrl,\n tokenProvider,\n {\n ...options,\n logger: options?.logger ?? new MinimalLogger(),\n transactionId: transactionRid,\n flushEdits,\n },\n fetchFn,\n objectSetFactory,\n );\n\n return createClientFromContext(clientCtx);\n}\n\n/**\n * @internal\n */\nexport function createClientFromContext(clientCtx: MinimalClient) {\n function clientFn<\n T extends\n | ObjectOrInterfaceDefinition\n | ActionDefinition<any>\n | QueryDefinition<any>\n | Experiment<\"2.0.8\">\n | Experiment<\"2.1.0\">,\n >(o: T): T extends ObjectTypeDefinition ? ObjectSet<T>\n : T extends InterfaceDefinition ? MinimalObjectSet<T>\n : T extends ActionDefinition<any> ? ActionSignatureFromDef<T>\n : T extends QueryDefinition<any> ? QuerySignatureFromDef<T>\n : T extends Experiment<\"2.0.8\"> | Experiment<\"2.1.0\">\n ? { invoke: ExperimentFns<T> }\n : never\n {\n if (o.type === \"object\" || o.type === \"interface\") {\n return clientCtx.objectSetFactory(o, clientCtx) as any;\n } else if (o.type === \"action\") {\n return new ActionInvoker(\n clientCtx,\n o,\n ) as (T extends ActionDefinition<any>\n // first `as` to the action definition for our \"real\" typecheck\n ? ActionSignatureFromDef<T>\n : never) as any; // then as any for dealing with the conditional return value\n } else if (o.type === \"query\") {\n return new QueryInvoker(\n clientCtx,\n o,\n ) as (T extends QueryDefinition<any> ? QuerySignatureFromDef<T>\n : never) as any;\n } else if (o.type === \"experiment\") {\n switch (o.name) {\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__getBulkLinks.name:\n return {\n getBulkLinks: createBulkLinksAsyncIterFactory(\n clientCtx,\n ),\n } as any;\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchOneByRid.name:\n return {\n fetchOneByRid: async <\n Q extends ObjectOrInterfaceDefinition,\n const L extends PropertyKeys<Q>,\n const R extends boolean,\n const S extends false | \"throw\" = NullabilityAdherence.Default,\n >(\n objectType: Q,\n rid: string,\n options: SelectArg<Q, L, R, S>,\n ) => {\n return await fetchSingle(\n clientCtx,\n objectType,\n options,\n createWithRid(\n [rid],\n ),\n ) as Osdk<Q>;\n },\n } as any;\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__createMediaReference.name:\n return {\n createMediaReference: async <\n Q extends ObjectTypeDefinition,\n const L extends PropertyKeys.Filtered<Q, \"mediaReference\">,\n >(args: {\n data: Blob;\n fileName: string;\n objectType: Q;\n propertyType: L;\n }) => {\n const { data, fileName, objectType, propertyType } = args;\n return await OntologiesV2.MediaReferenceProperties.upload(\n clientCtx,\n await clientCtx.ontologyRid,\n objectType.apiName,\n propertyType as string,\n data,\n {\n mediaItemPath: fileName,\n preview: true,\n },\n );\n },\n } as any;\n\n case __EXPERIMENTAL__NOT_SUPPORTED_YET__fetchPageByRid.name:\n return {\n fetchPageByRid: async <\n Q extends ObjectOrInterfaceDefinition,\n const L extends PropertyKeys<Q>,\n const R extends boolean,\n const S extends false | \"throw\" = NullabilityAdherence.Default,\n >(\n objectOrInterfaceType: Q,\n rids: string[],\n options: FetchPageArgs<Q, L, R, any, S> = {},\n ) => {\n return await fetchPage(\n clientCtx,\n objectOrInterfaceType,\n options,\n createWithRid(rids),\n );\n },\n fetchPageByRidNoType: async <\n const R extends boolean,\n const S extends NullabilityAdherence,\n const T extends boolean,\n >(\n rids: readonly string[],\n options?: FetchPageArgs<\n ObjectOrInterfaceDefinition,\n any,\n R,\n any,\n S,\n T\n >,\n ) => {\n return await fetchStaticRidPage(\n clientCtx,\n rids,\n options ?? {},\n );\n },\n } as any;\n }\n\n throw new Error(\"not implemented\");\n } else {\n throw new Error(\"not implemented\");\n }\n }\n\n const fetchMetadata = fetchMetadataInternal.bind(\n undefined,\n clientCtx,\n );\n\n const symbolClientContext: newSymbolClientContext = \"__osdkClientContext\";\n\n const client: Client = Object.defineProperties<Client>(\n clientFn as Client,\n {\n [oldSymbolClientContext]: {\n value: clientCtx,\n },\n [symbolClientContext]: {\n value: clientCtx,\n },\n [additionalContext]: {\n value: clientCtx,\n },\n fetchMetadata: {\n value: fetchMetadata,\n },\n } satisfies Record<keyof Client, PropertyDescriptor>,\n );\n\n return client;\n}\n\nexport const createClient: (\n baseUrl: string,\n ontologyRid: string | Promise<string>,\n tokenProvider: () => Promise<string>,\n options?: {\n logger?: Logger;\n } | undefined,\n fetchFn?: typeof fetch | undefined,\n) => Client = createClientInternal.bind(\n undefined,\n createObjectSet,\n undefined,\n undefined,\n);\n\nexport const createClientWithTransaction: (\n transactionId: string,\n flushEdits: () => Promise<void>,\n ...args: Parameters<typeof createClient>\n) => Client = (transactionRid, flushEdits, ...args) =>\n createClientInternal(\n createObjectSet,\n transactionRid,\n flushEdits,\n ...args,\n ) as Client;\n\nfunction createWithRid(\n rids: string[],\n) {\n const withRid: WireObjectSet = {\n type: \"static\",\n \"objects\": rids,\n };\n\n return withRid;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -42,7 +42,6 @@ export function createMinimalClient(metadata, baseUrl, tokenProvider, options =
|
|
|
42
42
|
transactionId: options.transactionId,
|
|
43
43
|
clientCacheKey: {},
|
|
44
44
|
requestContext: {},
|
|
45
|
-
branch: options.branch,
|
|
46
45
|
narrowTypeInterfaceOrObjectMapping: {}
|
|
47
46
|
};
|
|
48
47
|
return Object.freeze(Object.assign(minimalClient, {
|