@salesforce/platform-sdk 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +82 -0
- package/README.md +62 -0
- package/dist/analytics/analytics.d.ts +21 -0
- package/dist/analytics/analytics.d.ts.map +1 -0
- package/dist/analytics/error-listener.d.ts +9 -0
- package/dist/analytics/error-listener.d.ts.map +1 -0
- package/dist/analytics/index.d.ts +8 -0
- package/dist/analytics/index.d.ts.map +1 -0
- package/dist/analytics/method-configs.d.ts +11 -0
- package/dist/analytics/method-configs.d.ts.map +1 -0
- package/dist/analytics/proxy.d.ts +14 -0
- package/dist/analytics/proxy.d.ts.map +1 -0
- package/dist/analytics/schemas.d.ts +7 -0
- package/dist/analytics/schemas.d.ts.map +1 -0
- package/dist/analytics/subscribe-wrapper.d.ts +7 -0
- package/dist/analytics/subscribe-wrapper.d.ts.map +1 -0
- package/dist/analytics/types.d.ts +90 -0
- package/dist/analytics/types.d.ts.map +1 -0
- package/dist/chat/index.d.ts +22 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/mcpapps.d.ts +61 -0
- package/dist/chat/mcpapps.d.ts.map +1 -0
- package/dist/chat/openai.d.ts +25 -0
- package/dist/chat/openai.d.ts.map +1 -0
- package/dist/chat/salesforce-acc.d.ts +13 -0
- package/dist/chat/salesforce-acc.d.ts.map +1 -0
- package/dist/chat/singleton.d.ts +32 -0
- package/dist/chat/singleton.d.ts.map +1 -0
- package/dist/core/acc-types.d.ts +49 -0
- package/dist/core/acc-types.d.ts.map +1 -0
- package/dist/core/capabilities.d.ts +40 -0
- package/dist/core/capabilities.d.ts.map +1 -0
- package/dist/core/chat.d.ts +203 -0
- package/dist/core/chat.d.ts.map +1 -0
- package/dist/core/data.d.ts +38 -0
- package/dist/core/data.d.ts.map +1 -0
- package/dist/core/index.d.ts +24 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/jsonrpc-client.d.ts +167 -0
- package/dist/core/jsonrpc-client.d.ts.map +1 -0
- package/dist/core/jsonrpc.d.ts +123 -0
- package/dist/core/jsonrpc.d.ts.map +1 -0
- package/dist/core/lightning.d.ts +42 -0
- package/dist/core/lightning.d.ts.map +1 -0
- package/dist/core/mcpapps-session.d.ts +107 -0
- package/dist/core/mcpapps-session.d.ts.map +1 -0
- package/dist/core/mfe-protocol/message-channel-transport.d.ts +79 -0
- package/dist/core/mfe-protocol/message-channel-transport.d.ts.map +1 -0
- package/dist/core/options.d.ts +16 -0
- package/dist/core/options.d.ts.map +1 -0
- package/dist/core/platforms.d.ts +229 -0
- package/dist/core/platforms.d.ts.map +1 -0
- package/dist/core/sdk-promise.d.ts +14 -0
- package/dist/core/sdk-promise.d.ts.map +1 -0
- package/dist/core/surface.d.ts +24 -0
- package/dist/core/surface.d.ts.map +1 -0
- package/dist/core/view.d.ts +308 -0
- package/dist/core/view.d.ts.map +1 -0
- package/dist/data/gql.d.ts +7 -0
- package/dist/data/gql.d.ts.map +1 -0
- package/dist/data/index.d.ts +34 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/mosaic/fetch.d.ts +21 -0
- package/dist/data/mosaic/fetch.d.ts.map +1 -0
- package/dist/data/mosaic/index.d.ts +22 -0
- package/dist/data/mosaic/index.d.ts.map +1 -0
- package/dist/data/openai/index.d.ts +9 -0
- package/dist/data/openai/index.d.ts.map +1 -0
- package/dist/data/shared/graphql/cache/command.d.ts +93 -0
- package/dist/data/shared/graphql/cache/command.d.ts.map +1 -0
- package/dist/data/shared/graphql/cache/index.d.ts +7 -0
- package/dist/data/shared/graphql/cache/index.d.ts.map +1 -0
- package/dist/data/shared/graphql/headers.d.ts +13 -0
- package/dist/data/shared/graphql/headers.d.ts.map +1 -0
- package/dist/data/shared/url-utils.d.ts +9 -0
- package/dist/data/shared/url-utils.d.ts.map +1 -0
- package/dist/data/webapp/client-headers.interceptor.d.ts +12 -0
- package/dist/data/webapp/client-headers.interceptor.d.ts.map +1 -0
- package/dist/data/webapp/csrf/header.interceptor.d.ts +19 -0
- package/dist/data/webapp/csrf/header.interceptor.d.ts.map +1 -0
- package/dist/data/webapp/csrf/retry.interceptor.d.ts +8 -0
- package/dist/data/webapp/csrf/retry.interceptor.d.ts.map +1 -0
- package/dist/data/webapp/csrf/retry.policy.d.ts +31 -0
- package/dist/data/webapp/csrf/retry.policy.d.ts.map +1 -0
- package/dist/data/webapp/csrf/token-manager.d.ts +42 -0
- package/dist/data/webapp/csrf/token-manager.d.ts.map +1 -0
- package/dist/data/webapp/fetch.d.ts +27 -0
- package/dist/data/webapp/fetch.d.ts.map +1 -0
- package/dist/data/webapp/index.d.ts +19 -0
- package/dist/data/webapp/index.d.ts.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1506 -0
- package/dist/lightning/index.d.ts +15 -0
- package/dist/lightning/index.d.ts.map +1 -0
- package/dist/telemetry/action-piggyback.d.ts +7 -0
- package/dist/telemetry/action-piggyback.d.ts.map +1 -0
- package/dist/telemetry/buffer.d.ts +22 -0
- package/dist/telemetry/buffer.d.ts.map +1 -0
- package/dist/telemetry/index.d.ts +10 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/transport.d.ts +3 -0
- package/dist/telemetry/transport.d.ts.map +1 -0
- package/dist/telemetry/types.d.ts +32 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/uploader/TelemetryUploader.d.ts +43 -0
- package/dist/telemetry/uploader/TelemetryUploader.d.ts.map +1 -0
- package/dist/telemetry/uploader/interfaces.d.ts +61 -0
- package/dist/telemetry/uploader/interfaces.d.ts.map +1 -0
- package/dist/telemetry/widget-state-flush.d.ts +14 -0
- package/dist/telemetry/widget-state-flush.d.ts.map +1 -0
- package/dist/view/index.d.ts +22 -0
- package/dist/view/index.d.ts.map +1 -0
- package/dist/view/mcpapps.d.ts +24 -0
- package/dist/view/mcpapps.d.ts.map +1 -0
- package/dist/view/openai.d.ts +11 -0
- package/dist/view/openai.d.ts.map +1 -0
- package/dist/view/singleton.d.ts +32 -0
- package/dist/view/singleton.d.ts.map +1 -0
- package/dist/view/utils.d.ts +59 -0
- package/dist/view/utils.d.ts.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { RetryPolicy, RetryContext } from '@conduit-client/service-retry/v1';
|
|
2
|
+
import { CsrfTokenManager } from './token-manager';
|
|
3
|
+
/**
|
|
4
|
+
* Retry policy that handles CSRF token expiration errors.
|
|
5
|
+
*
|
|
6
|
+
* When a request fails with a CSRF token error this policy will:
|
|
7
|
+
* 1. Detect the error condition in shouldRetry
|
|
8
|
+
* 2. Refresh the CSRF token in prepareRetry hook
|
|
9
|
+
* 3. Retry the request once (maxRetries = 1)
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export declare class CsrfTokenRetryPolicy extends RetryPolicy<Response> {
|
|
13
|
+
private csrfTokenManager;
|
|
14
|
+
constructor(csrfTokenManager: CsrfTokenManager);
|
|
15
|
+
/**
|
|
16
|
+
* Determines if a failed request should be retried due to CSRF token issues.
|
|
17
|
+
*/
|
|
18
|
+
shouldRetry(result: Response, context: RetryContext<Response>): Promise<boolean>;
|
|
19
|
+
/**
|
|
20
|
+
* CSRF token refresh should happen immediately with no delay.
|
|
21
|
+
*/
|
|
22
|
+
calculateDelay(_result: Response, _context: RetryContext<Response>): Promise<number>;
|
|
23
|
+
/**
|
|
24
|
+
* Called by retry service before each retry attempt.
|
|
25
|
+
*
|
|
26
|
+
* @param _result - The failed response that triggered the retry (unused, already validated)
|
|
27
|
+
* @param _context - Current retry context (unused but part of interface)
|
|
28
|
+
*/
|
|
29
|
+
prepareRetry(_result: Response, _context: RetryContext<Response>): Promise<void>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=retry.policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.policy.d.ts","sourceRoot":"","sources":["../../../../src/data/webapp/csrf/retry.policy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD;;;;;;;;GAQG;AACH,qBAAa,oBAAqB,SAAQ,WAAW,CAAC,QAAQ,CAAC;IAClD,OAAO,CAAC,gBAAgB;gBAAhB,gBAAgB,EAAE,gBAAgB;IAKtD;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAUtF;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1F;;;;;OAKG;IACY,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAI/F"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026, Salesforce, Inc.,
|
|
3
|
+
* All rights reserved.
|
|
4
|
+
* For full license text, see the LICENSE.txt file
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Manages CSRF token fetching and caching for secure requests.
|
|
8
|
+
* Implements a singleton pattern to ensure consistent token management across the application.
|
|
9
|
+
*/
|
|
10
|
+
declare class CsrfTokenManager {
|
|
11
|
+
private endpoint;
|
|
12
|
+
private cacheName?;
|
|
13
|
+
private tokenPromise;
|
|
14
|
+
private refreshPromise;
|
|
15
|
+
constructor(endpoint: string, cacheName?: string | undefined);
|
|
16
|
+
/**
|
|
17
|
+
* Returns the current token value as a Promise.
|
|
18
|
+
* Lazy-loads the token on first call (from cache or by fetching).
|
|
19
|
+
*/
|
|
20
|
+
getToken(): Promise<string>;
|
|
21
|
+
/**
|
|
22
|
+
* Obtains and returns a new token value as a promise.
|
|
23
|
+
* This will clear the cached token and fetch a fresh one.
|
|
24
|
+
* If a refresh is already in progress, all callers share the same in-flight promise.
|
|
25
|
+
*/
|
|
26
|
+
refreshToken(): Promise<string | undefined>;
|
|
27
|
+
/**
|
|
28
|
+
* Obtains a CSRF token, using cache when available or fetching a new one.
|
|
29
|
+
*
|
|
30
|
+
* @returns Promise that resolves to the CSRF token string
|
|
31
|
+
*/
|
|
32
|
+
private obtainToken;
|
|
33
|
+
/**
|
|
34
|
+
* Provides a safe way to interact with the Cache API with fallback for unsupported environments.
|
|
35
|
+
*
|
|
36
|
+
* @param callback - Function that receives the cache instance and returns a promise
|
|
37
|
+
* @returns The result of the callback, or undefined if caches API is not available
|
|
38
|
+
*/
|
|
39
|
+
private withCache;
|
|
40
|
+
}
|
|
41
|
+
export { CsrfTokenManager };
|
|
42
|
+
//# sourceMappingURL=token-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-manager.d.ts","sourceRoot":"","sources":["../../../../src/data/webapp/csrf/token-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,cAAM,gBAAgB;IAKpB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,SAAS,CAAC;IALnB,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,cAAc,CAA8B;gBAG3C,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,YAAA;IAK3B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;IAIjC;;;;OAIG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAmB3C;;;;OAIG;YACW,WAAW;IAsBzB;;;;;OAKG;YACW,SAAS;CASvB;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { FetchService } from '@conduit-client/service-fetch-network/v1';
|
|
2
|
+
import { RetryInterceptorConfig } from './csrf/retry.interceptor';
|
|
3
|
+
import { CsrfTokenManager } from './csrf/token-manager';
|
|
4
|
+
interface CsrfConfig extends RetryInterceptorConfig {
|
|
5
|
+
endpoint: string;
|
|
6
|
+
cacheName: string;
|
|
7
|
+
}
|
|
8
|
+
export interface FetchConfig {
|
|
9
|
+
csrf: CsrfConfig;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Module-level registry so all SDK instances sharing the same CSRF endpoint
|
|
13
|
+
* share one CsrfTokenManager — one tokenPromise, one network fetch per lifecycle.
|
|
14
|
+
* Exported for test isolation only; not part of the public API.
|
|
15
|
+
*/
|
|
16
|
+
export declare const tokenManagerRegistry: Map<string, CsrfTokenManager>;
|
|
17
|
+
/**
|
|
18
|
+
* Creates an enhanced fetch function with automatic CSRF token handling.
|
|
19
|
+
* The returned function automatically adds CSRF tokens to protected requests
|
|
20
|
+
* and handles token refresh when tokens become invalid.
|
|
21
|
+
*
|
|
22
|
+
* @param config - Optional configuration for CSRF handling
|
|
23
|
+
* @returns An enhanced fetch function that handles CSRF protection
|
|
24
|
+
*/
|
|
25
|
+
export declare function createFetchService(config: FetchConfig): FetchService;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=fetch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../src/data/webapp/fetch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEN,KAAK,YAAY,EACjB,MAAM,0CAA0C,CAAC;AAGlD,OAAO,EAEN,KAAK,sBAAsB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,UAAU,UAAW,SAAQ,sBAAsB;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,UAAU,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,+BAAsC,CAAC;AAExE;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,YAAY,CAgBpE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DataSDK, GraphQLRequest, GraphQLResponse } from '../../core';
|
|
2
|
+
import { WebAppDataSDKOptions } from '../index';
|
|
3
|
+
/**
|
|
4
|
+
* Data SDK implementation for web apps, which is based on making `fetch` calls to REST endpoints
|
|
5
|
+
*/
|
|
6
|
+
export declare class WebAppDataSDK implements DataSDK {
|
|
7
|
+
private readonly baseUrl;
|
|
8
|
+
private readonly clientFetch;
|
|
9
|
+
private readonly onStatus;
|
|
10
|
+
constructor(options?: WebAppDataSDKOptions);
|
|
11
|
+
graphql<T, V>({ query, variables, operationName, }: GraphQLRequest<V>): Promise<GraphQLResponse<T>>;
|
|
12
|
+
fetch(input: string | URL | Request, init?: RequestInit): Promise<Response>;
|
|
13
|
+
/**
|
|
14
|
+
* If the url is relative, convert to it to an absolute Salesforce URL. This is due to the way Code
|
|
15
|
+
* Builder deployments structure the url for Salesforce
|
|
16
|
+
*/
|
|
17
|
+
private applySalesforceBase;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/webapp/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAWrD;;GAEG;AACH,qBAAa,aAAc,YAAW,OAAO;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyD;gBAEtE,OAAO,CAAC,EAAE,oBAAoB;IAiBpC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EACnB,KAAK,EACL,SAAS,EACT,aAAa,GACb,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAU5C,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAUjF;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAa3B"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026, Salesforce, Inc.,
|
|
3
|
+
* All rights reserved.
|
|
4
|
+
* For full license text, see the LICENSE.txt file
|
|
5
|
+
*/
|
|
6
|
+
export * from './core';
|
|
7
|
+
export { createChatSDK, type ChatSDKOptions, MCPAppsChatSDK, getChatSDK, getChatSDKSync, resetChatSDK, } from './chat';
|
|
8
|
+
export { createViewSDK, type ViewSDKOptions, MCPAppsViewSDK, getViewSDK, getViewSDKSync, resetViewSDK, } from './view';
|
|
9
|
+
export { createDataSDK, type DataSDKOptions, type WebAppDataSDKOptions, type MosaicDataSDKOptions, type StatusCallback, type NodeOfConnection, gql, } from './data';
|
|
10
|
+
export { createLightningSDK, type LightningSDKOptions } from './lightning';
|
|
11
|
+
export { createTelemetryTransport, registerTelemetryUploader, TelemetryUploader, type TelemetryTransport, type TelemetryTransportOptions, type TelemetryPayload, type EnvelopeEntry, type EnvelopeMetadata, type TelemetryUploaderOptions, type OnEnvelopeCallback, type FlushReason, type TelemetryUploadContext, type TelemetryUploaderErrorContext, type InstrumentedAppLike, type DisposeOptions, } from './telemetry';
|
|
12
|
+
export { createAnalytics, type Analytics, type AnalyticsOptions } from './analytics';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,QAAQ,CAAC;AAGvB,OAAO,EACN,aAAa,EACb,KAAK,cAAc,EACnB,cAAc,EACd,UAAU,EACV,cAAc,EACd,YAAY,GACZ,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACN,aAAa,EACb,KAAK,cAAc,EACnB,cAAc,EACd,UAAU,EACV,cAAc,EACd,YAAY,GACZ,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACN,aAAa,EACb,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,GAAG,GACH,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAG3E,OAAO,EACN,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|