@osdk/client 2.8.0-beta.17 → 2.8.0-beta.18
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 +12 -0
- package/build/browser/createClient.js +1 -1
- package/build/browser/createClient.js.map +1 -1
- package/build/browser/util/UserAgent.js +2 -2
- package/build/cjs/{chunk-H6NTS3BN.cjs → chunk-WZK2WYYS.cjs} +5 -5
- package/build/cjs/{chunk-H6NTS3BN.cjs.map → chunk-WZK2WYYS.cjs.map} +1 -1
- package/build/cjs/{createObjectSet-BagR_R7M.d.cts → createObjectSet-BECh9BaB.d.cts} +2 -1
- package/build/cjs/index.cjs +7 -7
- package/build/cjs/index.d.cts +1 -1
- package/build/cjs/public/unstable-do-not-use.cjs +23 -23
- package/build/cjs/public/unstable-do-not-use.d.cts +1 -1
- package/build/esm/createClient.js +1 -1
- package/build/esm/createClient.js.map +1 -1
- package/build/esm/util/UserAgent.js +2 -2
- package/build/types/createClient.d.ts +2 -1
- package/build/types/createClient.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -5,7 +5,8 @@ import { ObjectSet as ObjectSet$1 } from '@osdk/foundry.ontologies';
|
|
|
5
5
|
|
|
6
6
|
declare const createClient: (baseUrl: string, ontologyRid: string | Promise<string>, tokenProvider: () => Promise<string>, options?: {
|
|
7
7
|
logger?: Logger;
|
|
8
|
-
|
|
8
|
+
/** @beta This is an experimental feature subject to change */
|
|
9
|
+
UNSTABLE_DO_NOT_USE_BRANCH?: string;
|
|
9
10
|
} | undefined, fetchFn?: typeof fetch | undefined) => Client;
|
|
10
11
|
declare const createClientWithTransaction: (transactionId: string, flushEdits: () => Promise<void>, ...args: Parameters<typeof createClient>) => Client;
|
|
11
12
|
|
package/build/cjs/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkWZK2WYYS_cjs = require('./chunk-WZK2WYYS.cjs');
|
|
4
4
|
var chunkZVFNBJ2F_cjs = require('./chunk-ZVFNBJ2F.cjs');
|
|
5
5
|
require('./chunk-GSVXEVM4.cjs');
|
|
6
6
|
require('./chunk-D26YLHTV.cjs');
|
|
@@ -16,7 +16,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
16
16
|
var invariant__default = /*#__PURE__*/_interopDefault(invariant);
|
|
17
17
|
|
|
18
18
|
function createPlatformClient(baseUrl, tokenProvider, options = void 0, fetchFn = fetch) {
|
|
19
|
-
return shared_client_impl.createSharedClientContext(baseUrl, tokenProvider,
|
|
19
|
+
return shared_client_impl.createSharedClientContext(baseUrl, tokenProvider, chunkWZK2WYYS_cjs.USER_AGENT, fetchFn);
|
|
20
20
|
}
|
|
21
21
|
var isoRegex = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?$/;
|
|
22
22
|
var extractDate = (dateTime) => {
|
|
@@ -40,23 +40,23 @@ var extractDateFromIsoString = (dateTime) => {
|
|
|
40
40
|
|
|
41
41
|
Object.defineProperty(exports, "ActionValidationError", {
|
|
42
42
|
enumerable: true,
|
|
43
|
-
get: function () { return
|
|
43
|
+
get: function () { return chunkWZK2WYYS_cjs.ActionValidationError; }
|
|
44
44
|
});
|
|
45
45
|
Object.defineProperty(exports, "createAttachmentUpload", {
|
|
46
46
|
enumerable: true,
|
|
47
|
-
get: function () { return
|
|
47
|
+
get: function () { return chunkWZK2WYYS_cjs.createAttachmentUpload; }
|
|
48
48
|
});
|
|
49
49
|
Object.defineProperty(exports, "createClient", {
|
|
50
50
|
enumerable: true,
|
|
51
|
-
get: function () { return
|
|
51
|
+
get: function () { return chunkWZK2WYYS_cjs.createClient; }
|
|
52
52
|
});
|
|
53
53
|
Object.defineProperty(exports, "createObjectSpecifierFromPrimaryKey", {
|
|
54
54
|
enumerable: true,
|
|
55
|
-
get: function () { return
|
|
55
|
+
get: function () { return chunkWZK2WYYS_cjs.createObjectSpecifierFromPrimaryKey; }
|
|
56
56
|
});
|
|
57
57
|
Object.defineProperty(exports, "extractPrimaryKeyFromObjectSpecifier", {
|
|
58
58
|
enumerable: true,
|
|
59
|
-
get: function () { return
|
|
59
|
+
get: function () { return chunkWZK2WYYS_cjs.extractPrimaryKeyFromObjectSpecifier; }
|
|
60
60
|
});
|
|
61
61
|
Object.defineProperty(exports, "getWireObjectSet", {
|
|
62
62
|
enumerable: true,
|
package/build/cjs/index.d.cts
CHANGED
|
@@ -4,7 +4,7 @@ export { PalantirApiError } from '@osdk/shared.net.errors';
|
|
|
4
4
|
import { ValidateActionResponseV2 } from '@osdk/foundry.ontologies';
|
|
5
5
|
export { ObjectSet as WireObjectSet } from '@osdk/foundry.ontologies';
|
|
6
6
|
export { C as Client } from './Client-Cmx6x_V1.cjs';
|
|
7
|
-
export { c as createClient, g as getWireObjectSet, i as isObjectSet } from './createObjectSet-
|
|
7
|
+
export { c as createClient, g as getWireObjectSet, i as isObjectSet } from './createObjectSet-BECh9BaB.cjs';
|
|
8
8
|
import { SharedClientContext } from '@osdk/shared.client2';
|
|
9
9
|
import '@osdk/shared.client';
|
|
10
10
|
import '@osdk/api/unstable';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkWZK2WYYS_cjs = require('../chunk-WZK2WYYS.cjs');
|
|
4
4
|
var chunkZVFNBJ2F_cjs = require('../chunk-ZVFNBJ2F.cjs');
|
|
5
5
|
require('../chunk-GSVXEVM4.cjs');
|
|
6
6
|
require('../chunk-D26YLHTV.cjs');
|
|
@@ -1521,7 +1521,7 @@ var FunctionParamsCanonicalizer = class {
|
|
|
1521
1521
|
path.push("$:map_end");
|
|
1522
1522
|
return arr;
|
|
1523
1523
|
}
|
|
1524
|
-
if (
|
|
1524
|
+
if (chunkWZK2WYYS_cjs.isObjectSpecifiersObject(value)) {
|
|
1525
1525
|
const objectType = value.$objectType ?? value.$apiName;
|
|
1526
1526
|
path.push("$:osdk", objectType, value.$primaryKey);
|
|
1527
1527
|
return {
|
|
@@ -1647,7 +1647,7 @@ var FunctionQuery = class extends Query {
|
|
|
1647
1647
|
}).debug("calling _fetchAndStore");
|
|
1648
1648
|
}
|
|
1649
1649
|
try {
|
|
1650
|
-
const result = await
|
|
1650
|
+
const result = await chunkWZK2WYYS_cjs.applyQuery(this.store.client[chunkZVFNBJ2F_cjs.additionalContext], this.#queryDef, this.#params);
|
|
1651
1651
|
const executedAt = Date.now();
|
|
1652
1652
|
this.store.batch({}, (batch) => {
|
|
1653
1653
|
this.writeToStore({
|
|
@@ -3456,7 +3456,7 @@ var InterfaceListQuery = class extends ListQuery {
|
|
|
3456
3456
|
}
|
|
3457
3457
|
extractRelevantObjects(changes) {
|
|
3458
3458
|
const matchesApiName = ([, object]) => {
|
|
3459
|
-
return this.apiName in object[
|
|
3459
|
+
return this.apiName in object[chunkWZK2WYYS_cjs.ObjectDefRef].interfaceMap;
|
|
3460
3460
|
};
|
|
3461
3461
|
const added = Array.from(changes.addedObjects).filter(matchesApiName).map(([, object]) => object.$as(this.apiName));
|
|
3462
3462
|
const modified = Array.from(changes.modifiedObjects).filter(matchesApiName).map(([, object]) => object.$as(this.apiName));
|
|
@@ -3679,8 +3679,8 @@ function stripRdpFields(value, rdpFields) {
|
|
|
3679
3679
|
if (rdpFields.size === 0) {
|
|
3680
3680
|
return value;
|
|
3681
3681
|
}
|
|
3682
|
-
const underlying = value[
|
|
3683
|
-
const objectDef = value[
|
|
3682
|
+
const underlying = value[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
3683
|
+
const objectDef = value[chunkWZK2WYYS_cjs.ObjectDefRef];
|
|
3684
3684
|
const newProps = {
|
|
3685
3685
|
$apiName: underlying.$apiName,
|
|
3686
3686
|
$objectType: underlying.$objectType,
|
|
@@ -3693,7 +3693,7 @@ function stripRdpFields(value, rdpFields) {
|
|
|
3693
3693
|
newProps[key] = underlying[key];
|
|
3694
3694
|
}
|
|
3695
3695
|
}
|
|
3696
|
-
return
|
|
3696
|
+
return chunkWZK2WYYS_cjs.createOsdkObject(value[chunkWZK2WYYS_cjs.ClientRef], objectDef, newProps);
|
|
3697
3697
|
}
|
|
3698
3698
|
function isSuperset(superset, subset) {
|
|
3699
3699
|
for (const field of subset) {
|
|
@@ -3704,8 +3704,8 @@ function isSuperset(superset, subset) {
|
|
|
3704
3704
|
return true;
|
|
3705
3705
|
}
|
|
3706
3706
|
function filterToRdpFields(value, rdpFieldsToKeep, sourceRdpFields) {
|
|
3707
|
-
const underlying = value[
|
|
3708
|
-
const objectDef = value[
|
|
3707
|
+
const underlying = value[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
3708
|
+
const objectDef = value[chunkWZK2WYYS_cjs.ObjectDefRef];
|
|
3709
3709
|
const newProps = {
|
|
3710
3710
|
$apiName: underlying.$apiName,
|
|
3711
3711
|
$objectType: underlying.$objectType,
|
|
@@ -3721,12 +3721,12 @@ function filterToRdpFields(value, rdpFieldsToKeep, sourceRdpFields) {
|
|
|
3721
3721
|
}
|
|
3722
3722
|
}
|
|
3723
3723
|
}
|
|
3724
|
-
return
|
|
3724
|
+
return chunkWZK2WYYS_cjs.createOsdkObject(value[chunkWZK2WYYS_cjs.ClientRef], objectDef, newProps);
|
|
3725
3725
|
}
|
|
3726
3726
|
function mergeSelectFields(sourceValue, selectFields, existingValue) {
|
|
3727
|
-
const sourceUnderlying = sourceValue[
|
|
3728
|
-
const existingUnderlying = existingValue[
|
|
3729
|
-
const objectDef = sourceValue[
|
|
3727
|
+
const sourceUnderlying = sourceValue[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
3728
|
+
const existingUnderlying = existingValue[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
3729
|
+
const objectDef = sourceValue[chunkWZK2WYYS_cjs.ObjectDefRef];
|
|
3730
3730
|
const newProps = {
|
|
3731
3731
|
$apiName: sourceUnderlying.$apiName,
|
|
3732
3732
|
$objectType: sourceUnderlying.$objectType,
|
|
@@ -3744,7 +3744,7 @@ function mergeSelectFields(sourceValue, selectFields, existingValue) {
|
|
|
3744
3744
|
newProps[key] = sourceUnderlying[key];
|
|
3745
3745
|
}
|
|
3746
3746
|
}
|
|
3747
|
-
return
|
|
3747
|
+
return chunkWZK2WYYS_cjs.createOsdkObject(sourceValue[chunkWZK2WYYS_cjs.ClientRef], objectDef, newProps);
|
|
3748
3748
|
}
|
|
3749
3749
|
function mergeObjectFields(sourceValue, sourceRdpFields, targetRdpFields, targetCurrentValue) {
|
|
3750
3750
|
if (targetRdpFields.size === 0) {
|
|
@@ -3756,8 +3756,8 @@ function mergeObjectFields(sourceValue, sourceRdpFields, targetRdpFields, target
|
|
|
3756
3756
|
}
|
|
3757
3757
|
return filterToRdpFields(sourceValue, targetRdpFields, sourceRdpFields);
|
|
3758
3758
|
}
|
|
3759
|
-
const sourceUnderlying = sourceValue[
|
|
3760
|
-
const objectDef = sourceValue[
|
|
3759
|
+
const sourceUnderlying = sourceValue[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
3760
|
+
const objectDef = sourceValue[chunkWZK2WYYS_cjs.ObjectDefRef];
|
|
3761
3761
|
const newProps = {
|
|
3762
3762
|
$apiName: sourceUnderlying.$apiName,
|
|
3763
3763
|
$objectType: sourceUnderlying.$objectType,
|
|
@@ -3771,7 +3771,7 @@ function mergeObjectFields(sourceValue, sourceRdpFields, targetRdpFields, target
|
|
|
3771
3771
|
}
|
|
3772
3772
|
}
|
|
3773
3773
|
if (targetCurrentValue) {
|
|
3774
|
-
const targetUnderlying = targetCurrentValue[
|
|
3774
|
+
const targetUnderlying = targetCurrentValue[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
3775
3775
|
for (const field of targetRdpFields) {
|
|
3776
3776
|
if (field in targetUnderlying) {
|
|
3777
3777
|
if (!sourceRdpFields.has(field) || newProps[field] === void 0) {
|
|
@@ -3780,7 +3780,7 @@ function mergeObjectFields(sourceValue, sourceRdpFields, targetRdpFields, target
|
|
|
3780
3780
|
}
|
|
3781
3781
|
}
|
|
3782
3782
|
}
|
|
3783
|
-
return
|
|
3783
|
+
return chunkWZK2WYYS_cjs.createOsdkObject(sourceValue[chunkWZK2WYYS_cjs.ClientRef], objectDef, newProps);
|
|
3784
3784
|
}
|
|
3785
3785
|
|
|
3786
3786
|
// src/observable/internal/object/ObjectCacheKeyRegistry.ts
|
|
@@ -4178,7 +4178,7 @@ var ObjectsHelper = class extends AbstractHelper {
|
|
|
4178
4178
|
pk,
|
|
4179
4179
|
select
|
|
4180
4180
|
} = options;
|
|
4181
|
-
const defType =
|
|
4181
|
+
const defType = chunkWZK2WYYS_cjs.getDefType(options.apiName);
|
|
4182
4182
|
const objectCacheKey = this.cacheKeys.get("object", apiName, pk, rdpConfig ?? void 0);
|
|
4183
4183
|
return this.store.queries.get(objectCacheKey, () => new ObjectQuery(this.store, this.store.subjects.get(objectCacheKey), apiName, pk, objectCacheKey, {
|
|
4184
4184
|
dedupeInterval: 0
|
|
@@ -4216,7 +4216,7 @@ var ObjectsHelper = class extends AbstractHelper {
|
|
|
4216
4216
|
if (valueToWrite !== tombstone && existing?.value && this.isObjectHolder(existing.value)) {
|
|
4217
4217
|
const expectedRdpFields = this.store.objectCacheKeyRegistry.getRdpFieldSet(sourceCacheKey);
|
|
4218
4218
|
if (expectedRdpFields.size > 0) {
|
|
4219
|
-
const underlying = valueToWrite[
|
|
4219
|
+
const underlying = valueToWrite[chunkWZK2WYYS_cjs.UnderlyingOsdkObject];
|
|
4220
4220
|
const actualRdpFields = /* @__PURE__ */ new Set();
|
|
4221
4221
|
for (const field of expectedRdpFields) {
|
|
4222
4222
|
if (underlying && field in underlying) {
|
|
@@ -4917,10 +4917,10 @@ var Store = class {
|
|
|
4917
4917
|
|
|
4918
4918
|
// src/observable/ObservableClient.ts
|
|
4919
4919
|
function createObservableClient(client) {
|
|
4920
|
-
const tweakedClient =
|
|
4920
|
+
const tweakedClient = chunkWZK2WYYS_cjs.createClientFromContext({
|
|
4921
4921
|
...client[chunkZVFNBJ2F_cjs.additionalContext],
|
|
4922
4922
|
fetch: shared_net_fetch.createFetchHeaderMutator(client[chunkZVFNBJ2F_cjs.additionalContext].fetch, (headers) => {
|
|
4923
|
-
headers.set("Fetch-User-Agent", [headers.get("Fetch-User-Agent"),
|
|
4923
|
+
headers.set("Fetch-User-Agent", [headers.get("Fetch-User-Agent"), chunkWZK2WYYS_cjs.OBSERVABLE_USER_AGENT].filter((x) => x && x?.length > 0).join(" "));
|
|
4924
4924
|
return headers;
|
|
4925
4925
|
})
|
|
4926
4926
|
});
|
|
@@ -4963,7 +4963,7 @@ function getOsdkConfig(ontologyRid) {
|
|
|
4963
4963
|
|
|
4964
4964
|
Object.defineProperty(exports, "createClientWithTransaction", {
|
|
4965
4965
|
enumerable: true,
|
|
4966
|
-
get: function () { return
|
|
4966
|
+
get: function () { return chunkWZK2WYYS_cjs.createClientWithTransaction; }
|
|
4967
4967
|
});
|
|
4968
4968
|
Object.defineProperty(exports, "augment", {
|
|
4969
4969
|
enumerable: true,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
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
|
-
export { a as createClientWithTransaction, g as getWireObjectSet, i as isObjectSet } from '../createObjectSet-
|
|
2
|
+
export { a as createClientWithTransaction, g as getWireObjectSet, i as isObjectSet } from '../createObjectSet-BECh9BaB.cjs';
|
|
3
3
|
import { C as Client, Q as QueryReturnType, A as ActionSignatureFromDef } from '../Client-Cmx6x_V1.cjs';
|
|
4
4
|
export { a as QueryParameterType } from '../Client-Cmx6x_V1.cjs';
|
|
5
5
|
import '@osdk/api/unstable';
|
|
@@ -70,7 +70,7 @@ export function createClientInternal(objectSetFactory, transactionRid, flushEdit
|
|
|
70
70
|
logger: options?.logger ?? new MinimalLogger(),
|
|
71
71
|
transactionId: transactionRid,
|
|
72
72
|
flushEdits,
|
|
73
|
-
branch: options?.
|
|
73
|
+
branch: options?.UNSTABLE_DO_NOT_USE_BRANCH
|
|
74
74
|
}, fetchFn, objectSetFactory);
|
|
75
75
|
return createClientFromContext(clientCtx);
|
|
76
76
|
}
|
|
@@ -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","symbolClientContext","oldSymbolClientContext","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","objs","linkTypes","createBulkLinksAsyncIterFactory","fetchOneByRid","objectType","rid","createWithRid","createMediaReference","args","data","fileName","propertyType","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 OsdkBase,\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 { symbolClientContext as oldSymbolClientContext } from \"@osdk/shared.client\";\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: async function*(\n objs: Array<OsdkBase<any>>,\n linkTypes: string[],\n ) {\n const { createBulkLinksAsyncIterFactory } = await import(\n \"./__unstable/createBulkLinksAsyncIterFactory.js\"\n );\n yield* createBulkLinksAsyncIterFactory(clientCtx)(\n objs,\n linkTypes,\n );\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 const { upload } = await import(\n \"@osdk/foundry.ontologies/MediaReferenceProperty\"\n );\n return await 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","symbolClientContext","oldSymbolClientContext","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","UNSTABLE_DO_NOT_USE_BRANCH","createClientFromContext","fetchMetadata","client","Object","defineProperties","o","type","name","getBulkLinks","objs","linkTypes","createBulkLinksAsyncIterFactory","fetchOneByRid","objectType","rid","createWithRid","createMediaReference","args","data","fileName","propertyType","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 OsdkBase,\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 { symbolClientContext as oldSymbolClientContext } from \"@osdk/shared.client\";\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:\n | { logger?: Logger; UNSTABLE_DO_NOT_USE_BRANCH?: string }\n | 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?.UNSTABLE_DO_NOT_USE_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: async function*(\n objs: Array<OsdkBase<any>>,\n linkTypes: string[],\n ) {\n const { createBulkLinksAsyncIterFactory } = await import(\n \"./__unstable/createBulkLinksAsyncIterFactory.js\"\n );\n yield* createBulkLinksAsyncIterFactory(clientCtx)(\n objs,\n linkTypes,\n );\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 const { upload } = await import(\n \"@osdk/foundry.ontologies/MediaReferenceProperty\"\n );\n return await 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 /** @beta This is an experimental feature subject to change */\n UNSTABLE_DO_NOT_USE_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":[]}
|
|
@@ -14,6 +14,6 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
export const USER_AGENT = `osdk-client/${"2.8.0-beta.
|
|
18
|
-
export const OBSERVABLE_USER_AGENT = `osdk-observable-client/${"2.8.0-beta.
|
|
17
|
+
export const USER_AGENT = `osdk-client/${"2.8.0-beta.18"}`;
|
|
18
|
+
export const OBSERVABLE_USER_AGENT = `osdk-observable-client/${"2.8.0-beta.18"}`;
|
|
19
19
|
//# sourceMappingURL=UserAgent.js.map
|
|
@@ -2,6 +2,7 @@ import type { Logger } from "@osdk/api";
|
|
|
2
2
|
import { type Client } from "./Client.js";
|
|
3
3
|
export declare const createClient: (baseUrl: string, ontologyRid: string | Promise<string>, tokenProvider: () => Promise<string>, options?: {
|
|
4
4
|
logger?: Logger
|
|
5
|
-
|
|
5
|
+
/** @beta This is an experimental feature subject to change */
|
|
6
|
+
UNSTABLE_DO_NOT_USE_BRANCH?: string
|
|
6
7
|
} | undefined, fetchFn?: typeof fetch | undefined) => Client;
|
|
7
8
|
export declare const createClientWithTransaction: (transactionId: string, flushEdits: () => Promise<void>, ...args: Parameters<typeof createClient>) => Client;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAIE,cAUK,WAAY;AAgBnB,cAAiC,cAAc,aAAc;
|
|
1
|
+
{"mappings":"AAgBA,cAIE,cAUK,WAAY;AAgBnB,cAAiC,cAAc,aAAc;AAsR7D,OAAO,cAAMA,eACXC,iBACAC,sBAAsB,iBACtBC,qBAAqB,iBACrBC,UAAU;CACR,SAAS;;CAET;AACD,eACDC,iBAAiB,sBACd;AAOL,OAAO,cAAMC,8BACXC,uBACAC,kBAAkB,eAClB,GAAG,MAAM,kBAAkB,kBACxB","names":["createClient: (\n baseUrl: string,\n ontologyRid: string | Promise<string>,\n tokenProvider: () => Promise<string>,\n options?: {\n logger?: Logger;\n /** @beta This is an experimental feature subject to change */\n UNSTABLE_DO_NOT_USE_BRANCH?: string;\n } | undefined,\n fetchFn?: typeof fetch | undefined,\n) => Client","baseUrl: string","ontologyRid: string | Promise<string>","tokenProvider: () => Promise<string>","options?: {\n logger?: Logger;\n /** @beta This is an experimental feature subject to change */\n UNSTABLE_DO_NOT_USE_BRANCH?: string;\n } | undefined","fetchFn?: typeof fetch | undefined","createClientWithTransaction: (\n transactionId: string,\n flushEdits: () => Promise<void>,\n ...args: Parameters<typeof createClient>\n) => Client","transactionId: string","flushEdits: () => Promise<void>"],"sources":["../../src/createClient.ts"],"version":3,"file":"createClient.d.ts"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osdk/client",
|
|
3
|
-
"version": "2.8.0-beta.
|
|
3
|
+
"version": "2.8.0-beta.18",
|
|
4
4
|
"description": "",
|
|
5
5
|
"access": "public",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -71,9 +71,9 @@
|
|
|
71
71
|
"tiny-invariant": "^1.3.3",
|
|
72
72
|
"type-fest": "^4.41.0",
|
|
73
73
|
"ws": "^8.18.3",
|
|
74
|
-
"@osdk/
|
|
75
|
-
"@osdk/
|
|
76
|
-
"@osdk/
|
|
74
|
+
"@osdk/api": "2.8.0-beta.18",
|
|
75
|
+
"@osdk/client.unstable": "2.8.0-beta.18",
|
|
76
|
+
"@osdk/generator-converters": "2.8.0-beta.18",
|
|
77
77
|
"@osdk/shared.client.impl": "~1.8.0-beta.2",
|
|
78
78
|
"@osdk/shared.net.fetch": "~1.8.0-beta.3",
|
|
79
79
|
"@osdk/shared.net.errors": "~2.8.0-beta.2"
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"ts-expect": "^1.3.0",
|
|
98
98
|
"typescript": "~5.5.4",
|
|
99
99
|
"zod": "^3.25.76",
|
|
100
|
-
"@osdk/client.test.ontology": "~2.8.0-beta.
|
|
100
|
+
"@osdk/client.test.ontology": "~2.8.0-beta.18",
|
|
101
101
|
"@osdk/monorepo.api-extractor": "~0.7.0-beta.1",
|
|
102
102
|
"@osdk/monorepo.tsconfig": "~0.7.0-beta.1",
|
|
103
103
|
"@osdk/shared.test": "~2.8.0-beta.3"
|