@salesforce/platform-sdk 11.71.4 → 12.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.
@@ -322,6 +322,13 @@ export interface DataSDKGraphQL {
322
322
  * @see docs/data/04-surfaces-and-guards.md
323
323
  */
324
324
  export interface DataSDK {
325
+ /**
326
+ * Salesforce API version selected by the resolved surface adapter.
327
+ *
328
+ * Present on URL-backed adapters whose request paths are derived from a
329
+ * concrete version. Tool-backed and degraded surfaces may omit it.
330
+ */
331
+ readonly apiVersion?: string;
325
332
  /** GraphQL namespace. Present when the surface supports data operations. */
326
333
  graphql?: DataSDKGraphQL;
327
334
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/core/data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/core/data.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
- import { ExtendedSDK, ExtensionsFor } from './extension-types';
1
+ import { ExtendedSDK, ExtensionsFor, ResolvedExtensionEntry } from './extension-types';
2
+ interface AttachExtensionsOptions<Base> {
3
+ preflight?: (entries: readonly ResolvedExtensionEntry<Base>[], base: Base) => void;
4
+ }
2
5
  /**
3
6
  * Run each extension's `setup` in array order and mount the returned namespace
4
7
  * into the SDK's `ext` container under the entry's effective mount name — its
@@ -16,9 +19,12 @@ import { ExtendedSDK, ExtensionsFor } from './extension-types';
16
19
  *
17
20
  * Aliasing rebinds only the mount key: `setup` still runs on the underlying
18
21
  * extension, so two extensions that both declare `name: "labels"` can attach under
19
- * distinct keys (`{ extension: a, as: "x" }`, `{ extension: b, as: "y" }`). See
20
- * {@link resolveEntry} for the bare-vs-aliased narrowing and the loud guard
21
- * against a malformed entry from untyped JavaScript.
22
+ * distinct keys (`{ extension: a, as: "x" }`, `{ extension: b, as: "y" }`).
23
+ *
24
+ * The entire list is resolved before an optional `preflight` runs, and both
25
+ * preflight and setup consume those same resolved entries. This lets an SDK add
26
+ * surface-specific compatibility policy without resolving entries twice or
27
+ * running any setup before the complete list passes that policy.
22
28
  *
23
29
  * Each `setup` receives the base SDK, and that is all the type promises it:
24
30
  * `setup(sdk)` is typed as `Base`, never the accumulating shape. Because every
@@ -57,5 +63,6 @@ import { ExtendedSDK, ExtensionsFor } from './extension-types';
57
63
  * directly throws instead of pre-claiming a mount name, and the same holds for any
58
64
  * caller after attach returns — `ext` never becomes writable.
59
65
  */
60
- export declare function attachExtensions<Base extends object, const Extensions extends ExtensionsFor<Base>>(base: Base, extensions: Extensions): Promise<ExtendedSDK<Base, Extensions>>;
66
+ export declare function attachExtensions<Base extends object, const Extensions extends ExtensionsFor<Base>>(base: Base, extensions: Extensions, options?: AttachExtensionsOptions<Base>): Promise<ExtendedSDK<Base, Extensions>>;
67
+ export {};
61
68
  //# sourceMappingURL=extension-attach.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-attach.d.ts","sourceRoot":"","sources":["../../src/core/extension-attach.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAoB,WAAW,EAAa,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA4CjG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,wBAAsB,gBAAgB,CACrC,IAAI,SAAS,MAAM,EACnB,KAAK,CAAC,UAAU,SAAS,aAAa,CAAC,IAAI,CAAC,EAC3C,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAsH5E"}
1
+ {"version":3,"file":"extension-attach.d.ts","sourceRoot":"","sources":["../../src/core/extension-attach.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAEX,WAAW,EAEX,aAAa,EACb,sBAAsB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,UAAU,uBAAuB,CAAC,IAAI;IACrC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,sBAAsB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACnF;AAkDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,wBAAsB,gBAAgB,CACrC,IAAI,SAAS,MAAM,EACnB,KAAK,CAAC,UAAU,SAAS,aAAa,CAAC,IAAI,CAAC,EAE5C,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,OAAO,CAAC,EAAE,uBAAuB,CAAC,IAAI,CAAC,GACrC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAkHxC"}
@@ -46,13 +46,24 @@ export interface Extension<Sdk, Name extends string, Api, Deps extends readonly
46
46
  */
47
47
  setup: (sdk: Sdk & Accumulate<Deps>) => Api | PromiseLike<Api>;
48
48
  }
49
+ /**
50
+ * An extension entry after attachment has resolved its bare-or-aliased shape.
51
+ * SDK-specific preflights and the attachment loop consume this same resolved
52
+ * representation so entry discrimination and validation happen only once.
53
+ */
54
+ export interface ResolvedExtensionEntry<Base> {
55
+ readonly extension: Extension<Base, string, unknown>;
56
+ readonly mountName: string;
57
+ readonly label: string;
58
+ }
49
59
  /** True iff `T` is a union of two or more members. */
50
60
  type IsUnion<T, U = T> = T extends unknown ? ([U] extends [T] ? false : true) : never;
51
61
  /**
52
62
  * Reject a `name` that is not a single string literal. A concrete literal
53
63
  * (`"labels"`) passes through unchanged; anything else collapses to `never`, so
54
64
  * the authoring helpers error at definition time rather than silently losing key
55
- * accumulation. See {@link createExtensionFactory}.
65
+ * accumulation. Surface-specific authoring definers such as
66
+ * `defineDataExtension` apply this guard at definition time.
56
67
  *
57
68
  * Two shapes are rejected, both of which would otherwise mount phantom keys:
58
69
  * - a widened `string` (`string extends Name`) — no literal key to accumulate;
@@ -82,7 +93,7 @@ export type AnyExtension = Extension<never, string, unknown>;
82
93
  * `LiteralName` here would collapse the constraint form `AliasedExtension<_,
83
94
  * string>` (used in {@link ExtensionsFor}) to `as: never` and reject every alias.
84
95
  * The widened/union-`as` guard is instead applied at the call boundary by
85
- * {@link ValidAliasNames}, exactly as {@link UniqueExtensionNames} guards mount
96
+ * {@link ValidMountNames}, exactly as {@link UniqueExtensionNames} guards mount
86
97
  * uniqueness there — the entry type stays permissive; the boundary validates.
87
98
  *
88
99
  * `name?: never; setup?: never` reject the mixed shape structurally, mirroring
@@ -184,20 +195,23 @@ export type UniqueExtensionNames<Extensions extends readonly ExtensionEntry[]> =
184
195
  extensions: `Two extensions mount under "${DuplicateMountName<Extensions> & string}"; mount names must be unique.`;
185
196
  };
186
197
  /**
187
- * A constraint intersected into the `extensions` option to reject an aliased entry
188
- * whose `as` is not a single string literal the same soundness bar
189
- * {@link LiteralName} applies to a extension's `name` (see there for why a widened
190
- * or union `as` would mount a phantom namespace). Applied at the boundary rather
191
- * than on {@link AliasedExtension} for the reason that type documents. Resolves to
192
- * `unknown` or an inassignable `{ extensions }` error exactly as
193
- * {@link UniqueExtensionNames} does.
198
+ * A constraint intersected into the `extensions` option to require every
199
+ * effective mount name a bare extension's `name`, or an alias's `as` — to be
200
+ * one concrete string literal. A widened or union mount name would make
201
+ * {@link Accumulate} promise keys the runtime may not mount. Applying the guard
202
+ * at the attachment interface backstops every authoring form, including objects
203
+ * that bypass a surface-specific definer. Resolves to `unknown` or an
204
+ * inassignable `{ extensions }` error exactly as {@link UniqueExtensionNames}
205
+ * does.
194
206
  */
195
- export type ValidAliasNames<Extensions extends readonly ExtensionEntry[]> = Extensions extends readonly [
207
+ export type ValidMountNames<Extensions extends readonly ExtensionEntry[]> = Extensions extends readonly [
196
208
  infer Head extends ExtensionEntry,
197
209
  ...infer Tail extends readonly ExtensionEntry[]
198
- ] ? Head extends AnyAliasedExtension ? [LiteralName<Head["as"]>] extends [never] ? {
210
+ ] ? [LiteralName<MountName<Head>>] extends [never] ? Head extends AnyAliasedExtension ? {
199
211
  extensions: `An alias "as" must be a single string literal, not a widened or union type.`;
200
- } : ValidAliasNames<Tail> : ValidAliasNames<Tail> : unknown;
212
+ } : {
213
+ extensions: `An extension "name" must be a single string literal, not a widened or union type.`;
214
+ } : ValidMountNames<Tail> : unknown;
201
215
  /** Collapse an intersection into a single flat object type for readable hovers. */
202
216
  type Flatten<T> = {
203
217
  [K in keyof T]: T[K];
@@ -1 +1 @@
1
- {"version":3,"file":"extension-types.d.ts","sourceRoot":"","sources":["../../src/core/extension-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension-types.d.ts","sourceRoot":"","sources":["../../src/core/extension-types.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,5 @@ export type { McpAppsHostContext, McpAppsSessionOptions } from './mcpapps-sessio
17
17
  export { getSurfaceCapabilities } from './capabilities';
18
18
  export type { SurfaceCapabilities } from './capabilities';
19
19
  export { wrapSDKPromise } from './sdk-promise';
20
- export { createExtensionFactory } from './extension-factory';
21
- export type { Extension, AnyExtension, AliasedExtension, ExtensionsFor, ExtensionEntry, ExtendedSDK, LiteralName, UniqueExtensionNames, ValidAliasNames, } from './extension-types';
20
+ export type { Extension, AnyExtension, AliasedExtension, ExtensionsFor, ExtensionEntry, ExtendedSDK, LiteralName, UniqueExtensionNames, ValidMountNames, } from './extension-types';
22
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACN,OAAO,EACP,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,YAAY,GACZ,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGnD,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGrD,YAAY,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,OAAO,EACP,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,SAAS,GACT,MAAM,QAAQ,CAAC;AAGhB,YAAY,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,SAAS,EACT,OAAO,EACP,QAAQ,EACR,OAAO,GACP,MAAM,QAAQ,CAAC;AAGhB,YAAY,EACX,YAAY,EACZ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,eAAe,EACf,WAAW,GACX,MAAM,QAAQ,CAAC;AAGhB,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7F,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAQ/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,YAAY,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,eAAe,GACf,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACN,OAAO,EACP,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,YAAY,GACZ,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGnD,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGrD,YAAY,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,OAAO,EACP,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,SAAS,GACT,MAAM,QAAQ,CAAC;AAGhB,YAAY,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,SAAS,EACT,OAAO,EACP,QAAQ,EACR,OAAO,GACP,MAAM,QAAQ,CAAC;AAGhB,YAAY,EACX,YAAY,EACZ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,eAAe,EACf,WAAW,GACX,MAAM,QAAQ,CAAC;AAGhB,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7F,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAQ/C,YAAY,EACX,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,eAAe,GACf,MAAM,mBAAmB,CAAC"}
@@ -1,16 +1,14 @@
1
- import { M as r, a as s, S as i, g as o, i as t, b as p, r as f } from "../surface-Dd2tqrPi.js";
2
- import { g as S } from "../capabilities-CCBqEXMt.js";
1
+ import { M as r, a as s, S as i, g as p, i as f, b as o, r as t } from "../surface-Dd2tqrPi.js";
2
+ import { g as c } from "../capabilities-CCBqEXMt.js";
3
3
  import { w as g } from "../sdk-promise-D0sy7OW1.js";
4
- import { c as x } from "../extension-factory-CJkfM4km.js";
5
4
  export {
6
5
  r as McpAppsNotAvailableError,
7
6
  s as McpAppsSession,
8
7
  i as Surface,
9
- x as createExtensionFactory,
10
- S as getSurfaceCapabilities,
11
- o as getVerifiedSurface,
12
- t as initialize,
13
- p as isSfEmbeddingIframe,
14
- f as resetSurface,
8
+ c as getSurfaceCapabilities,
9
+ p as getVerifiedSurface,
10
+ f as initialize,
11
+ o as isSfEmbeddingIframe,
12
+ t as resetSurface,
15
13
  g as wrapSDKPromise
16
14
  };
@@ -0,0 +1,11 @@
1
+ import { DataSDK } from '../../core';
2
+ import { ResolvedExtensionEntry } from '../../core/extension-types';
3
+ /**
4
+ * Enforce every declared minimum before extension setup begins.
5
+ *
6
+ * URL-backed DataSDK adapters expose the effective Salesforce API version from
7
+ * which they derive their request paths. Tool-backed and degraded surfaces do
8
+ * not expose a version, so they retain their existing attach behavior.
9
+ */
10
+ export declare function assertApiVersions(extensions: readonly ResolvedExtensionEntry<DataSDK>[], dataSDK: DataSDK): void;
11
+ //# sourceMappingURL=api-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-version.d.ts","sourceRoot":"","sources":["../../../src/data/extensions/api-version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAczE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,SAAS,sBAAsB,CAAC,OAAO,CAAC,EAAE,EACtD,OAAO,EAAE,OAAO,GACd,IAAI,CA0BN"}
@@ -26,7 +26,7 @@ function y(n, e) {
26
26
  l.push(s.slice(r, r + e));
27
27
  return l;
28
28
  }
29
- async function g(n, e, s, l, r) {
29
+ async function A(n, e, s, l, r) {
30
30
  const t = { names: s, fallback: r };
31
31
  e != null && (t.namespace = e), l != null && (t.locale = l);
32
32
  const a = await n.query({
@@ -43,9 +43,9 @@ async function g(n, e, s, l, r) {
43
43
  );
44
44
  return c;
45
45
  }
46
- async function A(n, e, s, l, r) {
46
+ async function g(n, e, s, l, r) {
47
47
  const t = y(s, h), a = await Promise.all(
48
- t.map((c) => g(n, e, c, l, r))
48
+ t.map((c) => A(n, e, c, l, r))
49
49
  ), o = {};
50
50
  for (const c of a)
51
51
  for (const i of c)
@@ -60,13 +60,14 @@ function _(n = {}) {
60
60
  const e = { ...n };
61
61
  return b({
62
62
  name: "labels",
63
+ minApiVersion: "64.0",
63
64
  setup: (s) => {
64
65
  const l = s.graphql;
65
66
  if (!l)
66
67
  return {};
67
68
  const r = async (t, a) => {
68
69
  const o = u(a?.namespace) ?? u(e.namespace), c = u(a?.locale) ?? u(e.locale), i = a?.fallback ?? e.fallback ?? m;
69
- return A(l, o, t, c, i);
70
+ return g(l, o, t, c, i);
70
71
  };
71
72
  return {
72
73
  async get(t, a) {
@@ -1,5 +1,4 @@
1
1
  import { LabelFallback } from './query';
2
- import { DataSDKExtension } from '../../index';
3
2
  export type { LabelFallback };
4
3
  /**
5
4
  * Where labels are read from and how they resolve. Supplied once when the
@@ -76,7 +75,7 @@ export interface LabelsApi {
76
75
  * then call `sdk.ext.labels.get?.(name)` / `sdk.ext.labels.getAll?.(names)` — the
77
76
  * methods are optional, absent on a surface whose DataSDK has no `graphql`.
78
77
  *
79
- * Requires org API v264 or later (the release that introduced the
78
+ * Requires Salesforce API v64.0 or later (release 264 introduced the
80
79
  * `uiapi.platform.labels` GraphQL shape this extension queries).
81
80
  *
82
81
  * @param config - Default {@link LabelsOptions} for every call; each field is
@@ -94,5 +93,5 @@ export interface LabelsApi {
94
93
  * const many = await sdk.ext.labels.getAll?.(["greeting", "farewell"]); // only resolved names
95
94
  * ```
96
95
  */
97
- export declare function labels(config?: LabelsOptions): DataSDKExtension<"labels", LabelsApi>;
96
+ export declare function labels(config?: LabelsOptions): import('../../index').DataSDKExtension<"labels", LabelsApi>;
98
97
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data/extensions/labels/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAA0B,KAAK,aAAa,EAAiB,MAAM,SAAS,CAAC;AACpF,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEzE,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,SAAS;IACzB;;;;;;OAMG;IACH,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzE;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC5F;AAgBD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,MAAM,CAAC,MAAM,GAAE,aAAkB,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAsDxF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/data/extensions/labels/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAA0B,KAAK,aAAa,EAAiB,MAAM,SAAS,CAAC;AAGpF,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,SAAS;IACzB;;;;;;OAMG;IACH,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACzE;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC5F;AAgBD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,MAAM,CAAC,MAAM,GAAE,aAAkB,+DAuDhD"}
@@ -1,4 +1,4 @@
1
- import { DataSDK, ExtendedSDK, Extension, ExtensionsFor, SDKOptions, UniqueExtensionNames, ValidAliasNames } from '../core';
1
+ import { DataSDK, ExtendedSDK, Extension, ExtensionsFor, LiteralName, SDKOptions, UniqueExtensionNames, ValidMountNames } from '../core';
2
2
  import { MosaicDataSDKOptions } from './mosaic';
3
3
  /**
4
4
  * A callback the host invokes for a given HTTP status (see {@link WebAppDataSDKOptions.onStatus}).
@@ -35,7 +35,19 @@ export type { MosaicDataSDKOptions };
35
35
  * A extension authored for the DataSDK surface: {@link Extension} with the base SDK
36
36
  * pre-applied to `DataSDK`. Author these with {@link defineDataExtension}.
37
37
  */
38
- export type DataSDKExtension<Name extends string = string, Api = unknown> = Extension<DataSDK, Name, Api>;
38
+ export interface DataSDKExtension<Name extends string = string, Api = unknown> extends Extension<DataSDK, Name, Api> {
39
+ /**
40
+ * Lowest Salesforce API version this extension supports, in `major.minor`
41
+ * form (for example, `"64.0"`). Declare this when the extension depends on a
42
+ * Salesforce data shape or capability introduced in a particular API version.
43
+ *
44
+ * On versioned surfaces, `createDataSDK` compares this value with the resolved
45
+ * {@link DataSDK.apiVersion} before any extension setup runs. Tool-backed and
46
+ * degraded surfaces expose no comparable version and retain their existing
47
+ * attach behavior.
48
+ */
49
+ minApiVersion?: string;
50
+ }
39
51
  /**
40
52
  * Author a DataSDK extension without annotating `setup`'s parameter — the base
41
53
  * SDK is bound to `DataSDK`, so `setup(sdk)` infers `sdk: DataSDK`. This is the
@@ -44,10 +56,11 @@ export type DataSDKExtension<Name extends string = string, Api = unknown> = Exte
44
56
  * Because `DataSDK` is fixed here, an author can never forget the annotation
45
57
  * and silently get `Sdk = unknown` — the universally-attachable binding that
46
58
  * would slip a DataSDK-only extension past the per-surface `ExtensionsFor` guard.
47
- * Equivalent to the internal `defineExtension` with `Sdk = DataSDK` pre-applied;
48
- * see {@link createExtensionFactory} for the underlying mechanism.
59
+ * The identity implementation is intentional: its value is contextual typing at
60
+ * the extension object definition, plus literal-name and Data-specific
61
+ * metadata validation while `Name` and `Api` remain inferred.
49
62
  */
50
- export declare const defineDataExtension: <const Name extends string, Api>(extension: Extension<DataSDK, import('..').LiteralName<Name>, Api, []>) => Extension<DataSDK, Name, Api, []>;
63
+ export declare function defineDataExtension<const Name extends string, Api>(extension: DataSDKExtension<LiteralName<Name>, Api>): DataSDKExtension<Name, Api>;
51
64
  /**
52
65
  * A DataSDK carrying an `ext` namespace with every API contributed by an
53
66
  * ordered extension tuple (e.g. `sdk.ext.labels`). Entries may be bare extensions or
@@ -129,7 +142,7 @@ export interface DataSDKOptions extends SDKOptions {
129
142
  */
130
143
  export declare function createDataSDK<const Extensions extends ExtensionsFor<DataSDK> = []>(options?: Omit<DataSDKOptions, "extensions"> & {
131
144
  extensions?: Extensions;
132
- } & UniqueExtensionNames<Extensions> & ValidAliasNames<Extensions>): Promise<DataSDKWithExtensions<Extensions>>;
145
+ } & UniqueExtensionNames<Extensions> & ValidMountNames<Extensions>): Promise<DataSDKWithExtensions<Extensions>>;
133
146
  export { gql } from './gql';
134
147
  export type { CacheControl, DataSDK, DataSDKGraphQL, GraphQLError, GraphQLRawDocument, GraphQLRequest, GraphQLRequestHeaders, GraphQLResponse, MutateOptions, MutationResult, QueryOptions, QueryResult, QuerySubscriber, SDKOptions, Unsubscribe, } from '../core';
135
148
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACX,OAAO,EACP,WAAW,EACX,SAAS,EACT,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAiB,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAKpE;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACpC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IACnD;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,YAAY,EAAE,oBAAoB,EAAE,CAAC;AAErC;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,GAAG,GAAG,OAAO,IAAI,SAAS,CACpF,OAAO,EACP,IAAI,EACJ,GAAG,CACH,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,+IAAoC,CAAC;AAErE;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,CAAC,UAAU,SAAS,aAAa,CAAC,OAAO,CAAC,IAAI,WAAW,CACzF,OAAO,EACP,UAAU,CACV,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,UAAU;IACjD;;;OAGG;IACH,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B;;;OAGG;IACH,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;CACpC;AAqCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAiBH,wBAAgB,aAAa,CAAC,KAAK,CAAC,UAAU,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,EACjF,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG;IAC9C,UAAU,CAAC,EAAE,UAAU,CAAC;CACxB,GAAG,oBAAoB,CAAC,UAAU,CAAC,GACnC,eAAe,CAAC,UAAU,CAAC,GAC1B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;AAe9C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EACX,YAAY,EACZ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,eAAe,EACf,UAAU,EACV,WAAW,GACX,MAAM,SAAS,CAAC;AAEjB;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS;IAC3C,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;CAC3B,GAAG,IAAI,GACL,CAAC,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,IAAI,GAClC,CAAC,GACD,KAAK,GACN,KAAK,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACX,OAAO,EACP,WAAW,EACX,SAAS,EACT,aAAa,EACb,WAAW,EACX,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAiB,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAKpE;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACpC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IACnD;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,YAAY,EAAE,oBAAoB,EAAE,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,gBAAgB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,GAAG,GAAG,OAAO,CAAE,SAAQ,SAAS,CAC/F,OAAO,EACP,IAAI,EACJ,GAAG,CACH;IACA;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,GAAG,EACjE,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GACjD,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAE7B;AAED;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,CAAC,UAAU,SAAS,aAAa,CAAC,OAAO,CAAC,IAAI,WAAW,CACzF,OAAO,EACP,UAAU,CACV,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,UAAU;IACjD;;;OAGG;IACH,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B;;;OAGG;IACH,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;CACpC;AAqCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAkBH,wBAAgB,aAAa,CAAC,KAAK,CAAC,UAAU,SAAS,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,EACjF,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,GAAG;IAC9C,UAAU,CAAC,EAAE,UAAU,CAAC;CACxB,GAAG,oBAAoB,CAAC,UAAU,CAAC,GACnC,eAAe,CAAC,UAAU,CAAC,GAC1B,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;AAiB9C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EACX,YAAY,EACZ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,EACX,eAAe,EACf,UAAU,EACV,WAAW,GACX,MAAM,SAAS,CAAC;AAEjB;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS;IAC3C,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;CAC3B,GAAG,IAAI,GACL,CAAC,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,IAAI,GAClC,CAAC,GACD,KAAK,GACN,KAAK,CAAC"}