@salesforce/sdk-data 1.3.5 → 1.5.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/dist/index.d.ts CHANGED
@@ -1,15 +1,4 @@
1
- /**
2
- * Data SDK API
3
- */
4
- export interface DataSDK {
5
- /**
6
- * Run a GraphQL query
7
- *
8
- * @param query
9
- * @param variables
10
- */
11
- graphql?: <T>(query: string, variables?: Record<string, unknown>) => Promise<T>;
12
- apex?: <T>(className: string, methodName: string, params?: Record<string, unknown>) => Promise<T>;
13
- }
1
+ import type { DataSDK } from "./types.js";
14
2
  export declare const sdk: DataSDK;
3
+ export type { DataSDK } from "./types.js";
15
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA;;GAEG;AACH,MAAM,WAAW,OAAO;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAChF,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CAClG;AAeD,eAAO,MAAM,GAAG,SAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAgB1C,eAAO,MAAM,GAAG,SAAe,CAAC;AAChC,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -4,8 +4,8 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
  import { getSurface, Surface } from "@salesforce/sdk-core";
7
- import { OpenAIDataSDK } from "./openai.js";
8
- import { RESTDataSDK } from "./rest.js";
7
+ import { OpenAIDataSDK } from "./openai/index.js";
8
+ import { WebAppDataSDK } from "./webapp/index.js";
9
9
  function initialize() {
10
10
  const surface = getSurface();
11
11
  switch (surface) {
@@ -13,7 +13,7 @@ function initialize() {
13
13
  return new OpenAIDataSDK();
14
14
  case Surface.Webapp:
15
15
  case Surface.MicroFrontend:
16
- return new RESTDataSDK();
16
+ return new WebAppDataSDK();
17
17
  default:
18
18
  throw new Error(`DataSDK not available in ${surface}`);
19
19
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ import type { DataSDK } from "../types.js";
7
+ /**
8
+ * Data SDK implementation based on the existence of `window.openai`
9
+ */
10
+ export declare class OpenAIDataSDK implements DataSDK {
11
+ }
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/openai/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,qBAAa,aAAc,YAAW,OAAO;CAAG"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Data SDK implementation based on the existence of `window.openai`
3
+ */
4
+ export class OpenAIDataSDK {
5
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ export interface DataSDK {
7
+ /**
8
+ * Run a GraphQL query
9
+ *
10
+ * @param query
11
+ * @param variables
12
+ */
13
+ graphql?: <T, V = Record<string, unknown>>(query: string, variables?: V) => Promise<GraphQLResponse<T>>;
14
+ }
15
+ export interface GraphQLResponse<T> {
16
+ data: T;
17
+ errors?: {
18
+ message: string;
19
+ locations?: {
20
+ line: number;
21
+ column: number;
22
+ }[];
23
+ path?: string[];
24
+ }[];
25
+ }
26
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,OAAO;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,CAAC,KACT,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,CAAC,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QAC/C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KAChB,EAAE,CAAC;CACJ"}
package/dist/types.js ADDED
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ export {};
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=clients.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clients.test.d.ts","sourceRoot":"","sources":["../../../src/webapp/__tests__/clients.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ import { ConduitClient } from "@conduit-client/salesforce-lightning-service-worker";
7
+ import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
8
+ import { baseDataClient } from "../clients.js";
9
+ vi.mock("@conduit-client/salesforce-lightning-service-worker", () => {
10
+ return {
11
+ ConduitClient: {
12
+ initialize: vi.fn(),
13
+ instance: vi.fn().mockReturnValue({ fetch: vi.fn() }),
14
+ },
15
+ };
16
+ });
17
+ // Mock window.location.reload
18
+ const mockReload = vi.fn();
19
+ vi.stubGlobal("window", {
20
+ location: { reload: mockReload },
21
+ });
22
+ describe("clients", () => {
23
+ let mockFetch;
24
+ beforeEach(() => {
25
+ const mockClient = vi.mocked(ConduitClient.instance());
26
+ mockFetch = mockClient.fetch;
27
+ mockFetch.mockClear();
28
+ mockReload.mockClear();
29
+ });
30
+ afterEach(() => {
31
+ vi.clearAllMocks();
32
+ });
33
+ it("should have configured ConduitClient", () => {
34
+ expect(ConduitClient.initialize).toHaveBeenCalledWith({
35
+ csrf: {
36
+ endpoint: "/services/data/v99.0/ui-api/session/csrf",
37
+ cacheName: "vibe-coding-starter-1",
38
+ protectedUrls: ["/services/data/v", "/lwr/apex/v"],
39
+ },
40
+ });
41
+ });
42
+ describe("HTTP methods", () => {
43
+ beforeEach(() => {
44
+ mockFetch.mockResolvedValue({
45
+ status: 200,
46
+ json: () => Promise.resolve({ success: true }),
47
+ });
48
+ });
49
+ it("should make GET requests", async () => {
50
+ await baseDataClient.get("/users");
51
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users", {
52
+ method: "GET",
53
+ headers: {
54
+ "Content-Type": "application/json",
55
+ Accept: "application/json",
56
+ },
57
+ });
58
+ });
59
+ it("should make POST requests with JSON body", async () => {
60
+ const data = { name: "John" };
61
+ await baseDataClient.post("/users", data);
62
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users", {
63
+ method: "POST",
64
+ body: JSON.stringify(data),
65
+ headers: {
66
+ "Content-Type": "application/json",
67
+ Accept: "application/json",
68
+ },
69
+ });
70
+ });
71
+ it("should make PUT requests with JSON body", async () => {
72
+ const data = { name: "John Updated" };
73
+ await baseDataClient.put("/users/1", data);
74
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users/1", {
75
+ method: "PUT",
76
+ body: JSON.stringify(data),
77
+ headers: {
78
+ "Content-Type": "application/json",
79
+ Accept: "application/json",
80
+ },
81
+ });
82
+ });
83
+ it("should make PATCH requests with JSON body", async () => {
84
+ const data = { name: "John Patched" };
85
+ await baseDataClient.patch("/users/1", data);
86
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users/1", {
87
+ method: "PATCH",
88
+ body: JSON.stringify(data),
89
+ headers: {
90
+ "Content-Type": "application/json",
91
+ Accept: "application/json",
92
+ },
93
+ });
94
+ });
95
+ it("should make DELETE requests", async () => {
96
+ await baseDataClient.delete("/users/1");
97
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users/1", {
98
+ method: "DELETE",
99
+ headers: {
100
+ "Content-Type": "application/json",
101
+ Accept: "application/json",
102
+ },
103
+ });
104
+ });
105
+ });
106
+ describe("body processing", () => {
107
+ beforeEach(() => {
108
+ mockFetch.mockResolvedValue({
109
+ status: 200,
110
+ json: () => Promise.resolve({}),
111
+ });
112
+ });
113
+ it.each([
114
+ { name: "null", value: null },
115
+ { name: "undefined", value: undefined },
116
+ { name: "other", value: () => "dummy" },
117
+ ])("should return undefined for $name body", async ({ value }) => {
118
+ await baseDataClient.post("/users", value);
119
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users", expect.objectContaining({ body: undefined }));
120
+ });
121
+ it("should use string bodies as is", async () => {
122
+ const data = "foobar";
123
+ await baseDataClient.post("/users", data);
124
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users", expect.objectContaining({
125
+ body: "foobar",
126
+ }));
127
+ });
128
+ it("should stringify object bodies for JSON content-type", async () => {
129
+ const data = { name: "John" };
130
+ await baseDataClient.post("/users", data);
131
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users", expect.objectContaining({
132
+ body: JSON.stringify(data),
133
+ }));
134
+ });
135
+ it("should not stringify non-object bodies", async () => {
136
+ const formData = new FormData();
137
+ await baseDataClient.post("/upload", formData);
138
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/upload", expect.objectContaining({
139
+ body: formData,
140
+ }));
141
+ });
142
+ it("should not stringify when content-type is not JSON", async () => {
143
+ const data = { name: "John" };
144
+ await baseDataClient.post("/users", data, {
145
+ headers: { "Content-Type": "multipart/form-data" },
146
+ });
147
+ // When content-type is not JSON and body is a plain object (not FormData/string),
148
+ // processBody returns undefined since it can't serialize non-JSON content
149
+ expect(mockFetch).toHaveBeenCalledWith("/services/data/v99.0/users", expect.objectContaining({
150
+ body: undefined,
151
+ }));
152
+ });
153
+ });
154
+ });
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ export declare const API_VERSION: string;
7
+ export declare class ApiClient {
8
+ private readonly baseURL;
9
+ private readonly defaultOptions;
10
+ constructor(baseURL: string, defaultOptions?: RequestInit);
11
+ private isJsonContentType;
12
+ private fetch;
13
+ private processBody;
14
+ post(url: string, body?: unknown, options?: RequestInit): Promise<Response>;
15
+ get(url: string, options?: RequestInit): Promise<Response>;
16
+ put(url: string, body?: unknown, options?: RequestInit): Promise<Response>;
17
+ patch(url: string, body?: unknown, options?: RequestInit): Promise<Response>;
18
+ delete(url: string, options?: RequestInit): Promise<Response>;
19
+ }
20
+ export declare const baseDataClient: ApiClient;
21
+ //# sourceMappingURL=clients.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/webapp/clients.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,eAAO,MAAM,WAAW,QAA+B,CAAC;AAmBxD,qBAAa,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAc;gBAEjC,OAAO,EAAE,MAAM,EAAE,cAAc,GAAE,WAAgB;IAY7D,OAAO,CAAC,iBAAiB;YASX,KAAK;IAenB,OAAO,CAAC,WAAW;IAab,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAQ/E,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI9D,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAQ9E,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAQhF,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAGvE;AAED,eAAO,MAAM,cAAc,WAAwC,CAAC"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ import { ConduitClient } from "@conduit-client/salesforce-lightning-service-worker";
7
+ // Project standard API version from environment variable with fallback
8
+ export const API_VERSION = __SF_API_VERSION__ || "65.0";
9
+ const BASE = __SF_SERVER_BASE_PATH__ || "";
10
+ const SERVICES = `/services`;
11
+ const DATA = `/data/v${API_VERSION}`;
12
+ const UI_API = `/ui-api`;
13
+ const CACHE_VERSION = 1;
14
+ const CACHE_NAME = `vibe-coding-starter-${CACHE_VERSION}`;
15
+ ConduitClient.initialize({
16
+ csrf: {
17
+ endpoint: BASE + SERVICES + DATA + UI_API + "/session/csrf",
18
+ cacheName: CACHE_NAME,
19
+ protectedUrls: ["/services/data/v", "/lwr/apex/v"],
20
+ },
21
+ });
22
+ const conduitClient = ConduitClient.instance();
23
+ export class ApiClient {
24
+ baseURL;
25
+ defaultOptions;
26
+ constructor(baseURL, defaultOptions = {}) {
27
+ this.baseURL = baseURL;
28
+ this.defaultOptions = {
29
+ ...defaultOptions,
30
+ headers: {
31
+ "Content-Type": "application/json",
32
+ Accept: "application/json",
33
+ ...(defaultOptions.headers || {}),
34
+ },
35
+ };
36
+ }
37
+ isJsonContentType(headers) {
38
+ // default to JSON if no headers specified
39
+ if (!headers)
40
+ return true;
41
+ const headersObj = new Headers(headers);
42
+ const contentType = headersObj.get("content-type");
43
+ return !contentType || contentType.includes("application/json");
44
+ }
45
+ async fetch(info, options = {}) {
46
+ const fullURL = info instanceof URL || info.startsWith("http") ? info : `${this.baseURL}${info}`;
47
+ const mergedOptions = {
48
+ ...this.defaultOptions,
49
+ ...options,
50
+ headers: {
51
+ ...this.defaultOptions.headers,
52
+ ...(options.headers || {}),
53
+ },
54
+ };
55
+ return await conduitClient.fetch(fullURL, mergedOptions);
56
+ }
57
+ processBody(body, options) {
58
+ if (body === undefined || body === null) {
59
+ return undefined;
60
+ }
61
+ else if (body instanceof FormData) {
62
+ return body;
63
+ }
64
+ else if (typeof body === "string") {
65
+ return body;
66
+ }
67
+ else if (typeof body === "object" && this.isJsonContentType(options.headers)) {
68
+ return JSON.stringify(body);
69
+ }
70
+ return undefined;
71
+ }
72
+ async post(url, body, options = {}) {
73
+ return this.fetch(url, {
74
+ method: "POST",
75
+ body: this.processBody(body, options),
76
+ ...options,
77
+ });
78
+ }
79
+ async get(url, options = {}) {
80
+ return this.fetch(url, { method: "GET", ...options });
81
+ }
82
+ async put(url, body, options = {}) {
83
+ return this.fetch(url, {
84
+ method: "PUT",
85
+ body: this.processBody(body, options),
86
+ ...options,
87
+ });
88
+ }
89
+ async patch(url, body, options = {}) {
90
+ return this.fetch(url, {
91
+ method: "PATCH",
92
+ body: this.processBody(body, options),
93
+ ...options,
94
+ });
95
+ }
96
+ async delete(url, options = {}) {
97
+ return this.fetch(url, { method: "DELETE", ...options });
98
+ }
99
+ }
100
+ export const baseDataClient = new ApiClient(BASE + SERVICES + DATA);
@@ -0,0 +1,8 @@
1
+ import type { DataSDK, GraphQLResponse } from "../types.js";
2
+ /**
3
+ * Data SDK implementation for web apps, which is based on making `fetch` calls to REST endpoints
4
+ */
5
+ export declare class WebAppDataSDK implements DataSDK {
6
+ graphql<T, V>(query: string, variables?: V): Promise<GraphQLResponse<T>>;
7
+ }
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/webapp/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE5D;;GAEG;AACH,qBAAa,aAAc,YAAW,OAAO;IACtC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAI9E"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Copyright (c) 2026, Salesforce, Inc.,
3
+ * All rights reserved.
4
+ * For full license text, see the LICENSE.txt file
5
+ */
6
+ import { baseDataClient } from "./clients.js";
7
+ /**
8
+ * Data SDK implementation for web apps, which is based on making `fetch` calls to REST endpoints
9
+ */
10
+ export class WebAppDataSDK {
11
+ async graphql(query, variables) {
12
+ const res = await baseDataClient.post("/graphql", { query, variables });
13
+ return res.json();
14
+ }
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/sdk-data",
3
- "version": "1.3.5",
3
+ "version": "1.5.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -25,10 +25,11 @@
25
25
  "test:coverage": "vitest run --coverage"
26
26
  },
27
27
  "dependencies": {
28
- "@salesforce/sdk-core": "^1.3.5"
28
+ "@conduit-client/salesforce-lightning-service-worker": "^3.7.0",
29
+ "@salesforce/sdk-core": "^1.5.0"
29
30
  },
30
31
  "devDependencies": {
31
32
  "vitest": "^4.0.6"
32
33
  },
33
- "gitHead": "7c50e62dbae4d941df420bde56083b4cd2729675"
34
+ "gitHead": "4ded2ddc79339bc0f3ef9120cc5f2862d7668bec"
34
35
  }
package/dist/openai.d.ts DELETED
@@ -1,14 +0,0 @@
1
- /**
2
- * Copyright (c) 2026, Salesforce, Inc.,
3
- * All rights reserved.
4
- * For full license text, see the LICENSE.txt file
5
- */
6
- import type { DataSDK } from "./index.js";
7
- /**
8
- * Data SDK implementation based on the existence of `window.openai`
9
- */
10
- export declare class OpenAIDataSDK implements DataSDK {
11
- graphql<T>(_query: string, _variables?: Record<string, unknown>): Promise<T>;
12
- apex<T>(_className: string, _methodName: string, _params?: Record<string, unknown>): Promise<T>;
13
- }
14
- //# sourceMappingURL=openai.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AACH,qBAAa,aAAc,YAAW,OAAO;IAC5C,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAK5E,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAI/F"}
package/dist/openai.js DELETED
@@ -1,13 +0,0 @@
1
- /**
2
- * Data SDK implementation based on the existence of `window.openai`
3
- */
4
- export class OpenAIDataSDK {
5
- graphql(_query, _variables) {
6
- // TODO: graphql client
7
- return Promise.resolve({});
8
- }
9
- apex(_className, _methodName, _params) {
10
- // TODO: apex client POST
11
- return Promise.resolve({});
12
- }
13
- }
package/dist/rest.d.ts DELETED
@@ -1,14 +0,0 @@
1
- /**
2
- * Copyright (c) 2026, Salesforce, Inc.,
3
- * All rights reserved.
4
- * For full license text, see the LICENSE.txt file
5
- */
6
- import type { DataSDK } from "./index.js";
7
- /**
8
- * Data SDK implementation based on making `fetch` calls to REST endpoints
9
- */
10
- export declare class RESTDataSDK implements DataSDK {
11
- graphql<T>(_query: string, _variables?: Record<string, unknown>): Promise<T>;
12
- apex<T>(_className: string, _methodName: string, _params?: Record<string, unknown>): Promise<T>;
13
- }
14
- //# sourceMappingURL=rest.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../src/rest.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AACH,qBAAa,WAAY,YAAW,OAAO;IAC1C,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAK5E,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAI/F"}
package/dist/rest.js DELETED
@@ -1,13 +0,0 @@
1
- /**
2
- * Data SDK implementation based on making `fetch` calls to REST endpoints
3
- */
4
- export class RESTDataSDK {
5
- graphql(_query, _variables) {
6
- // TODO: graphql client
7
- return Promise.resolve({});
8
- }
9
- apex(_className, _methodName, _params) {
10
- // TODO: apex client POST
11
- return Promise.resolve({});
12
- }
13
- }