@salesforce/lds-runtime-aura 1.463.0 → 1.464.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.
@@ -2631,7 +2631,7 @@ function buildServiceDescriptor$d(luvio) {
2631
2631
  },
2632
2632
  };
2633
2633
  }
2634
- // version: 1.463.0-ea9ecd17fc
2634
+ // version: 1.464.0-e54c238397
2635
2635
 
2636
2636
  class AuraGraphQLNormalizedCacheControlCommand extends AuraNormalizedCacheControlCommand {
2637
2637
  constructor(config, documentRootType, services) {
@@ -2970,7 +2970,7 @@ function buildServiceDescriptor$9(notifyRecordUpdateAvailable, getNormalizedLuvi
2970
2970
  },
2971
2971
  };
2972
2972
  }
2973
- // version: 1.463.0-ea9ecd17fc
2973
+ // version: 1.464.0-e54c238397
2974
2974
 
2975
2975
  class RetryService {
2976
2976
  constructor(defaultRetryPolicy) {
@@ -4526,7 +4526,12 @@ function buildServiceDescriptor$2(interceptors = {
4526
4526
  }
4527
4527
  const fetchArgs = cleanInit === void 0 ? [input] : [input, cleanInit];
4528
4528
  const baseContext = interceptors.createContext?.();
4529
- const context = contextSeed === void 0 ? baseContext : { ...baseContext, ...contextSeed };
4529
+ const onestore = cleanInit?.onestore;
4530
+ const context = contextSeed === void 0 && onestore === void 0 ? baseContext : {
4531
+ ...baseContext,
4532
+ ...contextSeed,
4533
+ ...onestore !== void 0 && { onestore }
4534
+ };
4530
4535
  const {
4531
4536
  request: requestInterceptors = [],
4532
4537
  retry: retryInterceptor = void 0,
@@ -5980,7 +5985,7 @@ function getEnvironmentSetting(name) {
5980
5985
  }
5981
5986
  return undefined;
5982
5987
  }
5983
- // version: 1.463.0-8515018faf
5988
+ // version: 1.464.0-b35c0e7723
5984
5989
 
5985
5990
  const auraClientService = getAuraClientService();
5986
5991
  const defaultConfig = {
@@ -6354,7 +6359,13 @@ function getOrGenerateErrorId(responseBody, status, statusText) {
6354
6359
  return generateErrorId(context);
6355
6360
  }
6356
6361
  function buildLexRuntime5xxStatusResponseInterceptor(logger) {
6357
- return async (response) => {
6362
+ return async (response, context) => {
6363
+ // The caller opted in (`onestore.handleServerError`, exposed by the fetch service as
6364
+ // `context.onestore`) to receive the 5xx itself, so skip the gack and the throw and
6365
+ // let the response flow to the command's error handling.
6366
+ if (context?.onestore?.handleServerError === true) {
6367
+ return response;
6368
+ }
6358
6369
  if (response.status >= 500 && response.status < 600) {
6359
6370
  const internalLogMessage = `LEX runtime 5xx: ${response.status} ${response.statusText || ''}`.trim();
6360
6371
  logger.warn(internalLogMessage);
@@ -7685,15 +7696,21 @@ function buildFetchRetryInterceptor() {
7685
7696
  }
7686
7697
 
7687
7698
  /**
7688
- * The context-seed key under which a custom command forwards its JWT mint
7699
+ * Legacy context-seed key under which a custom command forwards its JWT mint
7689
7700
  * parameters. The framework's `buildServiceDescriptor` merges the request init's
7690
7701
  * `__contextSeed` onto the per-request interceptor context, so this interceptor
7691
- * reads the params off `context[JWT_MINT_PARAMS_SEED_KEY]`.
7702
+ * can read the params off `context[JWT_MINT_PARAMS_SEED_KEY]`.
7703
+ *
7704
+ * **Transitional.** The first-class channel is now the typed
7705
+ * `init.onestore.mintParams` field (onestore 3.29.0), which this interceptor
7706
+ * prefers. This seed key remains only as a fallback while the core
7707
+ * `onestore-custom-adapters` producers still write `__contextSeed`; it — together
7708
+ * with the `context` fallback and the interceptor's `context` parameter — is
7709
+ * removed once those producers emit `onestore.mintParams`. That removal is the
7710
+ * follow-up PR #8314 (tracked under W-24472492).
7692
7711
  *
7693
- * This is a cross-team contract: the custom command writes this key, this
7694
- * interceptor reads it. It is intentionally an opaque key — OneStore does not
7695
- * define it and never inspects the param shape; the typed shape lives in the
7696
- * resolver.
7712
+ * It is intentionally an opaque key — OneStore does not define it and never
7713
+ * inspects the param shape; the typed shape lives in the resolver.
7697
7714
  */
7698
7715
  const JWT_MINT_PARAMS_SEED_KEY = 'jwtMintParams';
7699
7716
  /**
@@ -7724,15 +7741,17 @@ function hasAuthorizationHeader([resource, options]) {
7724
7741
  * Builds the request interceptor that bridges the per-request context seed to the
7725
7742
  * dispatching SFAP JwtManager for the **parameterized** mint path.
7726
7743
  *
7727
- * For a parameterized SFAP command, the context carries `jwtMintParams`. This
7728
- * interceptor reads them, calls `jwtManager.getJwt(params)` (which the dispatching
7729
- * resolver routes to the parameterized resolver), attaches the `Authorization`
7730
- * header, and rewrites the request URL via the minted `baseUri`. The presence of
7731
- * that `Authorization` header is the signal the descriptor's guarded legacy
7732
- * interceptor uses to skip — so the legacy path does not mint a second time.
7744
+ * For a parameterized SFAP command, the mint params arrive on the typed
7745
+ * `init.onestore.mintParams` field (preferred) or, transitionally, under the
7746
+ * legacy `context[jwtMintParams]` seed. This interceptor reads them (onestore
7747
+ * first), calls `jwtManager.getJwt(params)` (which the dispatching resolver routes
7748
+ * to the parameterized resolver), attaches the `Authorization` header, and
7749
+ * rewrites the request URL via the minted `baseUri`. The presence of that
7750
+ * `Authorization` header is the signal the descriptor's guarded legacy interceptor
7751
+ * uses to skip — so the legacy path does not mint a second time.
7733
7752
  *
7734
- * For a legacy parameterless command the context carries no `jwtMintParams`, so
7735
- * this interceptor **early-returns on its first line** and the request flows
7753
+ * For a legacy parameterless command neither channel carries mint params, so this
7754
+ * interceptor **early-returns on its first statement** and the request flows
7736
7755
  * unchanged to the legacy `buildJwtRequestHeaderInterceptor` — guaranteeing zero
7737
7756
  * behavior change for non-opted-in adapters.
7738
7757
  *
@@ -7746,8 +7765,11 @@ function hasAuthorizationHeader([resource, options]) {
7746
7765
  */
7747
7766
  function buildJwtParameterizationInterceptor(jwtManager, jwtRequestModifier = (_extraInfo, fetchArgs) => fetchArgs) {
7748
7767
  return (fetchArgs, context) => {
7749
- const jwtContext = context;
7750
- const mintParams = jwtContext?.[JWT_MINT_PARAMS_SEED_KEY];
7768
+ // Prefer the typed `init.onestore.mintParams`; fall back to the legacy
7769
+ // `context[JWT_MINT_PARAMS_SEED_KEY]` seed while the core producers still
7770
+ // write it (transitional dual-read — see JWT_MINT_PARAMS_SEED_KEY).
7771
+ const mintParams = fetchArgs[1]?.onestore?.mintParams ??
7772
+ context?.[JWT_MINT_PARAMS_SEED_KEY];
7751
7773
  // No mint params → not a parameterized request. Do nothing; the legacy
7752
7774
  // interceptor handles it. This MUST be the first statement so non-opted-in
7753
7775
  // SFAP commands observe no work at all.
@@ -7842,7 +7864,8 @@ function buildJwtAuthorizedSfapFetchServiceDescriptor(logger) {
7842
7864
  *
7843
7865
  * It reuses the module's `sfapJwtManager`: `cdp_url` is emitted on the same
7844
7866
  * `SFAP_API`-scope JWT, so the Data360 command mints the same kind of token — it
7845
- * just forwards the data-cloud scopes via the context-seed `jwtMintParams`.
7867
+ * just forwards the data-cloud scopes via `onestore.mintParams` (or, transitionally,
7868
+ * the legacy context-seed `jwtMintParams`).
7846
7869
  *
7847
7870
  * Gated behind its own `data_360_cdp_url_rewrite` auth-scope tag so it binds ONLY to
7848
7871
  * the Data360 command — the SFAP fleet never flows past this interceptor.
@@ -7973,10 +7996,11 @@ function buildJwtRequestInterceptor(logger) {
7973
7996
  * (`cdp_url`), and modifiers only receive `extraInfo`. So — like the copilot
7974
7997
  * interceptor that reads `decodedInfo.iss` — it holds the token directly:
7975
7998
  *
7976
- * 1. Read the command's `jwtMintParams` off the per-request context seed and
7977
- * mint (via the parameterized SFAP resolver, routed by the dispatching
7978
- * resolver inside `sfapJwtManager`). Without mint params there is no token
7979
- * to authorize with, so leave the request untouched.
7999
+ * 1. Read the command's mint params from `init.onestore.mintParams` (preferred)
8000
+ * or the legacy per-request context seed, and mint (via the parameterized
8001
+ * SFAP resolver, routed by the dispatching resolver inside `sfapJwtManager`).
8002
+ * Without mint params there is no token to authorize with, so leave the
8003
+ * request untouched.
7980
8004
  * 2. Decode `cdp_url` from the JWT and resolve the tenant-specific endpoint
7981
8005
  * (TSE). `cdp_url` is a bare host, so a scheme is prepended before parsing
7982
8006
  * and the protocol is forced to `https:`.
@@ -7995,7 +8019,11 @@ function buildJwtRequestInterceptor(logger) {
7995
8019
  */
7996
8020
  function buildData360HostRewriteInterceptor(logger) {
7997
8021
  return (fetchArgs, context) => {
7998
- const mintParams = context?.[JWT_MINT_PARAMS_SEED_KEY];
8022
+ // Prefer the typed `init.onestore.mintParams`; fall back to the legacy
8023
+ // `context[JWT_MINT_PARAMS_SEED_KEY]` seed while the core producers still
8024
+ // write it (transitional dual-read — see JWT_MINT_PARAMS_SEED_KEY).
8025
+ const mintParams = fetchArgs[1]?.onestore?.mintParams ??
8026
+ context?.[JWT_MINT_PARAMS_SEED_KEY];
7999
8027
  // No mint params → not a parameterized Data360 request. Nothing to do.
8000
8028
  if (mintParams === undefined) {
8001
8029
  return resolvedPromiseLike$2(fetchArgs);
@@ -8640,6 +8668,10 @@ function getLexRuntimeDefaultInterceptorConfig(logger) {
8640
8668
  buildCsrfTokenInterceptor(),
8641
8669
  buildEntityEncodingInterceptor(),
8642
8670
  buildFirstPartyHeaderInterceptor(),
8671
+ // Per-request gzip: compresses only operations that opt in via
8672
+ // `init.onestore.compression`; a pass-through no-op otherwise. Last in
8673
+ // the chain so it compresses the final body, after body-modifying interceptors.
8674
+ buildCompressionInterceptor(),
8643
8675
  ],
8644
8676
  retry: buildFetchRetryInterceptor(),
8645
8677
  response: [
@@ -9417,4 +9449,4 @@ function ldsEngineCreator() {
9417
9449
  }
9418
9450
 
9419
9451
  export { PDL_ENGINE_REGISTRATION_ID, buildPredictorForContext, configService, ldsEngineCreator as default, initializeLDS, initializeOneStore, notifyUpdateAvailableFactory };
9420
- // version: 1.463.0-ea9ecd17fc
9452
+ // version: 1.464.0-e54c238397
@@ -20,7 +20,8 @@ export declare function buildJwtAuthorizedSfapFetchServiceDescriptor(logger: Log
20
20
  *
21
21
  * It reuses the module's `sfapJwtManager`: `cdp_url` is emitted on the same
22
22
  * `SFAP_API`-scope JWT, so the Data360 command mints the same kind of token — it
23
- * just forwards the data-cloud scopes via the context-seed `jwtMintParams`.
23
+ * just forwards the data-cloud scopes via `onestore.mintParams` (or, transitionally,
24
+ * the legacy context-seed `jwtMintParams`).
24
25
  *
25
26
  * Gated behind its own `data_360_cdp_url_rewrite` auth-scope tag so it binds ONLY to
26
27
  * the Data360 command — the SFAP fleet never flows past this interceptor.
@@ -3,15 +3,21 @@ import { type JwtRequestModifier } from '@conduit-client/service-fetch-network/v
3
3
  import type { JwtManager } from '@conduit-client/jwt-manager';
4
4
  import type { ExtraInfo } from '../network-sfap';
5
5
  /**
6
- * The context-seed key under which a custom command forwards its JWT mint
6
+ * Legacy context-seed key under which a custom command forwards its JWT mint
7
7
  * parameters. The framework's `buildServiceDescriptor` merges the request init's
8
8
  * `__contextSeed` onto the per-request interceptor context, so this interceptor
9
- * reads the params off `context[JWT_MINT_PARAMS_SEED_KEY]`.
9
+ * can read the params off `context[JWT_MINT_PARAMS_SEED_KEY]`.
10
10
  *
11
- * This is a cross-team contract: the custom command writes this key, this
12
- * interceptor reads it. It is intentionally an opaque key — OneStore does not
13
- * define it and never inspects the param shape; the typed shape lives in the
14
- * resolver.
11
+ * **Transitional.** The first-class channel is now the typed
12
+ * `init.onestore.mintParams` field (onestore 3.29.0), which this interceptor
13
+ * prefers. This seed key remains only as a fallback while the core
14
+ * `onestore-custom-adapters` producers still write `__contextSeed`; it — together
15
+ * with the `context` fallback and the interceptor's `context` parameter — is
16
+ * removed once those producers emit `onestore.mintParams`. That removal is the
17
+ * follow-up PR #8314 (tracked under W-24472492).
18
+ *
19
+ * It is intentionally an opaque key — OneStore does not define it and never
20
+ * inspects the param shape; the typed shape lives in the resolver.
15
21
  */
16
22
  export declare const JWT_MINT_PARAMS_SEED_KEY = "jwtMintParams";
17
23
  /**
@@ -27,15 +33,17 @@ export declare function hasAuthorizationHeader([resource, options]: FetchParamet
27
33
  * Builds the request interceptor that bridges the per-request context seed to the
28
34
  * dispatching SFAP JwtManager for the **parameterized** mint path.
29
35
  *
30
- * For a parameterized SFAP command, the context carries `jwtMintParams`. This
31
- * interceptor reads them, calls `jwtManager.getJwt(params)` (which the dispatching
32
- * resolver routes to the parameterized resolver), attaches the `Authorization`
33
- * header, and rewrites the request URL via the minted `baseUri`. The presence of
34
- * that `Authorization` header is the signal the descriptor's guarded legacy
35
- * interceptor uses to skip — so the legacy path does not mint a second time.
36
+ * For a parameterized SFAP command, the mint params arrive on the typed
37
+ * `init.onestore.mintParams` field (preferred) or, transitionally, under the
38
+ * legacy `context[jwtMintParams]` seed. This interceptor reads them (onestore
39
+ * first), calls `jwtManager.getJwt(params)` (which the dispatching resolver routes
40
+ * to the parameterized resolver), attaches the `Authorization` header, and
41
+ * rewrites the request URL via the minted `baseUri`. The presence of that
42
+ * `Authorization` header is the signal the descriptor's guarded legacy interceptor
43
+ * uses to skip — so the legacy path does not mint a second time.
36
44
  *
37
- * For a legacy parameterless command the context carries no `jwtMintParams`, so
38
- * this interceptor **early-returns on its first line** and the request flows
45
+ * For a legacy parameterless command neither channel carries mint params, so this
46
+ * interceptor **early-returns on its first statement** and the request flows
39
47
  * unchanged to the legacy `buildJwtRequestHeaderInterceptor` — guaranteeing zero
40
48
  * behavior change for non-opted-in adapters.
41
49
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/lds-runtime-aura",
3
- "version": "1.463.0",
3
+ "version": "1.464.0",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "description": "LDS engine for Aura runtime.",
6
6
  "main": "dist/ldsEngineCreator.js",
@@ -34,53 +34,53 @@
34
34
  "release:corejar": "yarn build && ../core-build/scripts/core.js --name=lds-runtime-aura"
35
35
  },
36
36
  "devDependencies": {
37
- "@conduit-client/service-provisioner": "3.30.0",
38
- "@conduit-client/tools-core": "3.30.0",
39
- "@salesforce/lds-adapters-apex": "^1.463.0",
40
- "@salesforce/lds-adapters-uiapi": "^1.463.0",
41
- "@salesforce/lds-ads-bridge": "^1.463.0",
42
- "@salesforce/lds-aura-storage": "^1.463.0",
43
- "@salesforce/lds-bindings": "^1.463.0",
44
- "@salesforce/lds-instrumentation": "^1.463.0",
45
- "@salesforce/lds-network-adapter": "^1.463.0",
46
- "@salesforce/lds-network-aura": "^1.463.0",
47
- "@salesforce/lds-network-fetch": "^1.463.0",
37
+ "@conduit-client/service-provisioner": "3.32.0",
38
+ "@conduit-client/tools-core": "3.32.0",
39
+ "@salesforce/lds-adapters-apex": "^1.464.0",
40
+ "@salesforce/lds-adapters-uiapi": "^1.464.0",
41
+ "@salesforce/lds-ads-bridge": "^1.464.0",
42
+ "@salesforce/lds-aura-storage": "^1.464.0",
43
+ "@salesforce/lds-bindings": "^1.464.0",
44
+ "@salesforce/lds-instrumentation": "^1.464.0",
45
+ "@salesforce/lds-network-adapter": "^1.464.0",
46
+ "@salesforce/lds-network-aura": "^1.464.0",
47
+ "@salesforce/lds-network-fetch": "^1.464.0",
48
48
  "jwt-encode": "1.0.1"
49
49
  },
50
50
  "dependencies": {
51
- "@conduit-client/command-aura-graphql-normalized-cache-control": "3.30.0",
52
- "@conduit-client/command-aura-network": "3.30.0",
53
- "@conduit-client/command-aura-normalized-cache-control": "3.30.0",
54
- "@conduit-client/command-fetch-network": "3.30.0",
55
- "@conduit-client/command-http-graphql-normalized-cache-control": "3.30.0",
56
- "@conduit-client/command-http-normalized-cache-control": "3.30.0",
57
- "@conduit-client/command-ndjson": "3.30.0",
58
- "@conduit-client/command-network": "3.30.0",
59
- "@conduit-client/command-sse": "3.30.0",
60
- "@conduit-client/command-streaming": "3.30.0",
61
- "@conduit-client/jwt-manager": "3.30.0",
62
- "@conduit-client/service-aura-network": "3.30.0",
63
- "@conduit-client/service-bindings-imperative": "3.30.0",
64
- "@conduit-client/service-bindings-lwc": "3.30.0",
65
- "@conduit-client/service-cache": "3.30.0",
66
- "@conduit-client/service-cache-control": "3.30.0",
67
- "@conduit-client/service-cache-inclusion-policy": "3.30.0",
68
- "@conduit-client/service-config": "3.30.0",
69
- "@conduit-client/service-feature-flags": "3.30.0",
70
- "@conduit-client/service-fetch-network": "3.30.0",
71
- "@conduit-client/service-instrument-command": "3.30.0",
72
- "@conduit-client/service-pubsub": "3.30.0",
73
- "@conduit-client/service-renewable-resource-manager": "3.30.0",
74
- "@conduit-client/service-store": "3.30.0",
75
- "@conduit-client/utils": "3.30.0",
51
+ "@conduit-client/command-aura-graphql-normalized-cache-control": "3.32.0",
52
+ "@conduit-client/command-aura-network": "3.32.0",
53
+ "@conduit-client/command-aura-normalized-cache-control": "3.32.0",
54
+ "@conduit-client/command-fetch-network": "3.32.0",
55
+ "@conduit-client/command-http-graphql-normalized-cache-control": "3.32.0",
56
+ "@conduit-client/command-http-normalized-cache-control": "3.32.0",
57
+ "@conduit-client/command-ndjson": "3.32.0",
58
+ "@conduit-client/command-network": "3.32.0",
59
+ "@conduit-client/command-sse": "3.32.0",
60
+ "@conduit-client/command-streaming": "3.32.0",
61
+ "@conduit-client/jwt-manager": "3.32.0",
62
+ "@conduit-client/service-aura-network": "3.32.0",
63
+ "@conduit-client/service-bindings-imperative": "3.32.0",
64
+ "@conduit-client/service-bindings-lwc": "3.32.0",
65
+ "@conduit-client/service-cache": "3.32.0",
66
+ "@conduit-client/service-cache-control": "3.32.0",
67
+ "@conduit-client/service-cache-inclusion-policy": "3.32.0",
68
+ "@conduit-client/service-config": "3.32.0",
69
+ "@conduit-client/service-feature-flags": "3.32.0",
70
+ "@conduit-client/service-fetch-network": "3.32.0",
71
+ "@conduit-client/service-instrument-command": "3.32.0",
72
+ "@conduit-client/service-pubsub": "3.32.0",
73
+ "@conduit-client/service-renewable-resource-manager": "3.32.0",
74
+ "@conduit-client/service-store": "3.32.0",
75
+ "@conduit-client/utils": "3.32.0",
76
76
  "@luvio/network-adapter-composable": "0.161.2",
77
77
  "@luvio/network-adapter-fetch": "0.161.2",
78
78
  "@lwc/state": "^0.29.0",
79
- "@salesforce/lds-adapters-onestore-graphql": "^1.463.0",
79
+ "@salesforce/lds-adapters-onestore-graphql": "^1.464.0",
80
80
  "@salesforce/lds-adapters-uiapi-lex": "^1.415.0",
81
- "@salesforce/lds-durable-storage": "^1.463.0",
82
- "@salesforce/lds-luvio-service": "^1.463.0",
83
- "@salesforce/lds-luvio-uiapi-records-service": "^1.463.0"
81
+ "@salesforce/lds-durable-storage": "^1.464.0",
82
+ "@salesforce/lds-luvio-service": "^1.464.0",
83
+ "@salesforce/lds-luvio-uiapi-records-service": "^1.464.0"
84
84
  },
85
85
  "luvioBundlesize": [
86
86
  {