@salesforce/webapp-template-feature-react-agentforce-conversation-client-experimental 1.58.0 → 1.58.2

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.
@@ -29,10 +29,10 @@ For a GraphQL operation named `GetHighRevenueAccounts`:
29
29
  ## Core Types & Function Signatures
30
30
 
31
31
  ### getDataSDK Function
32
- Available from `@salesforce/webapp-experimental/api`:
32
+ Available from `@salesforce/sdk-data`:
33
33
 
34
34
  ```typescript
35
- import { getDataSDK } from '@salesforce/webapp-experimental/api';
35
+ import { getDataSDK } from '@salesforce/sdk-data';
36
36
 
37
37
  const data = await getDataSDK();
38
38
  const response = await data.graphql?.<ResponseType, VariablesType>(query, variables);
@@ -89,10 +89,10 @@ const result = response?.data;
89
89
  For mutation-specific partial responses, see `docs/generate-mutation-query.md` which covers `PARTIAL` and `FAILED` status handling workflows.
90
90
 
91
91
  ### gql Template Tag
92
- Also available from `@salesforce/webapp-experimental/api` for inline query definitions:
92
+ Also available from `@salesforce/sdk-data` for inline query definitions:
93
93
 
94
94
  ```typescript
95
- import { gql } from '@salesforce/webapp-experimental/api';
95
+ import { gql } from '@salesforce/sdk-data';
96
96
 
97
97
  const MY_QUERY = gql`
98
98
  query MyQuery {
@@ -109,7 +109,7 @@ The `gql` tag is a template literal that allows defining GraphQL queries inline
109
109
  Extract the node type from a connection (edges/node pattern):
110
110
 
111
111
  ```typescript
112
- import { type NodeOfConnection } from '@salesforce/webapp-experimental/api';
112
+ import { type NodeOfConnection } from '@salesforce/sdk-data';
113
113
 
114
114
  // Extract Account node type from the query response
115
115
  type AccountNode = NodeOfConnection<
@@ -180,7 +180,7 @@ This generates types in `graphql-operations-types.ts`:
180
180
 
181
181
  #### Step 3: Import and Use
182
182
  ```typescript
183
- import { getDataSDK, type NodeOfConnection } from '@salesforce/webapp-experimental/api';
183
+ import { getDataSDK, type NodeOfConnection } from '@salesforce/sdk-data';
184
184
  import MY_QUERY from './query/myQuery.graphql?raw';
185
185
  import type {
186
186
  GetMyDataQuery,
@@ -232,7 +232,7 @@ export async function getMyData(
232
232
  For simpler queries without variables or when colocation is preferred:
233
233
 
234
234
  ```typescript
235
- import { getDataSDK, gql } from '@salesforce/webapp-experimental/api';
235
+ import { getDataSDK, gql } from '@salesforce/sdk-data';
236
236
  import { type CurrentUserQuery } from '../graphql-operations-types';
237
237
 
238
238
  const CURRENT_USER_QUERY = gql`
@@ -359,7 +359,7 @@ fragment ContactFields on Account {
359
359
 
360
360
  ### Usage
361
361
  ```typescript
362
- import { getDataSDK } from '@salesforce/webapp-experimental/api';
362
+ import { getDataSDK } from '@salesforce/sdk-data';
363
363
  import QUERY from './query/getAccountDetails.graphql?raw';
364
364
  import type {
365
365
  GetAccountDetailsQuery,
@@ -123,7 +123,7 @@ Before implementing data access, **MUST** verify `orchestrate_lds_data_requireme
123
123
 
124
124
  ## Data Access Rules (CRITICAL)
125
125
 
126
- - MANDATORY: Use the DataSDK (`getDataSDK()` from `@salesforce/webapp-experimental/api`) for all API calls from React. The SDK handles authentication and CSRF token management. Do NOT use `axios` or raw `fetch` for Salesforce API calls.
126
+ - MANDATORY: Use the DataSDK (`getDataSDK()` from `@salesforce/sdk-data`) for all API calls from React. The SDK handles authentication and CSRF token management. Do NOT use `axios` or raw `fetch` for Salesforce API calls.
127
127
 
128
128
  ### Data Access Workflow (MANDATORY)
129
129
 
@@ -161,7 +161,7 @@ The following code examples serve as reference patterns for React applications.
161
161
  GraphQL query example:
162
162
 
163
163
  ```typescript
164
- import { getDataSDK, gql } from '@salesforce/webapp-experimental/api';
164
+ import { getDataSDK, gql } from '@salesforce/sdk-data';
165
165
 
166
166
  const GET_ACCOUNT = gql`
167
167
  query GetAccount($id: ID!) {
@@ -195,7 +195,7 @@ const account = response?.data;
195
195
  GraphQL mutation example:
196
196
 
197
197
  ```typescript
198
- import { getDataSDK, gql } from '@salesforce/webapp-experimental/api';
198
+ import { getDataSDK, gql } from '@salesforce/sdk-data';
199
199
 
200
200
  const UPDATE_ACCOUNT = gql`
201
201
  mutation UpdateAccount($id: ID!, $name: String!) {
@@ -231,7 +231,7 @@ if (result?.errors?.length) {
231
231
  UI API example (using the SDK's fetch):
232
232
 
233
233
  ```typescript
234
- import { getDataSDK } from '@salesforce/webapp-experimental/api';
234
+ import { getDataSDK } from '@salesforce/sdk-data';
235
235
 
236
236
  async function fetchRecord(recordId: string) {
237
237
  const data = await getDataSDK();
@@ -257,7 +257,7 @@ Einstein LLM Gateway provides AI and generative capabilities for your React appl
257
257
  ### Einstein LLM Gateway Pattern
258
258
 
259
259
  ```typescript
260
- import { getDataSDK } from '@salesforce/webapp-experimental/api';
260
+ import { getDataSDK } from '@salesforce/sdk-data';
261
261
 
262
262
  async function callEinsteinGenerations({ prompt, model = 'gpt-4', signal }: {
263
263
  prompt: string;
@@ -136,10 +136,10 @@ interface Account extends SalesforceRecord {
136
136
  ```
137
137
 
138
138
  ### GraphQL via DataSDK
139
- Use `getDataSDK()` from `@salesforce/webapp-experimental/api` for all GraphQL operations. The SDK handles authentication and CSRF token management:
139
+ Use `getDataSDK()` from `@salesforce/sdk-data` for all GraphQL operations. The SDK handles authentication and CSRF token management:
140
140
 
141
141
  ```typescript
142
- import { getDataSDK } from '@salesforce/webapp-experimental/api';
142
+ import { getDataSDK } from '@salesforce/sdk-data';
143
143
 
144
144
  const data = await getDataSDK();
145
145
  const response = await data.graphql?.<GetAccountsQuery>(QUERY, variables);
package/dist/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.58.2](https://github.com/salesforce-experience-platform-emu/webapps/compare/v1.58.1...v1.58.2) (2026-02-26)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * moving all sdk usages from api to sdk-data @W-21338965 ([#173](https://github.com/salesforce-experience-platform-emu/webapps/issues/173)) ([23c9479](https://github.com/salesforce-experience-platform-emu/webapps/commit/23c94794e0c72e30d85313f908b52274e4a59979))
12
+
13
+
14
+
15
+
16
+
17
+ ## [1.58.1](https://github.com/salesforce-experience-platform-emu/webapps/compare/v1.58.0...v1.58.1) (2026-02-26)
18
+
19
+ **Note:** Version bump only for package @salesforce/webapp-template-base-sfdx-project-experimental
20
+
21
+
22
+
23
+
24
+
6
25
  # [1.58.0](https://github.com/salesforce-experience-platform-emu/webapps/compare/v1.57.0...v1.58.0) (2026-02-26)
7
26
 
8
27
  **Note:** Version bump only for package @salesforce/webapp-template-base-sfdx-project-experimental
@@ -8,7 +8,7 @@
8
8
  "name": "base-react-app",
9
9
  "version": "1.0.0",
10
10
  "dependencies": {
11
- "@salesforce/agentforce-conversation-client": "^1.57.0",
11
+ "@salesforce/agentforce-conversation-client": "^1.58.1",
12
12
  "@salesforce/sdk-data": "^1.11.2",
13
13
  "@salesforce/webapp-experimental": "*",
14
14
  "@tailwindcss/vite": "^4.1.17",
@@ -4085,9 +4085,9 @@
4085
4085
  ]
4086
4086
  },
4087
4087
  "node_modules/@salesforce/agentforce-conversation-client": {
4088
- "version": "1.57.0",
4089
- "resolved": "https://registry.npmjs.org/@salesforce/agentforce-conversation-client/-/agentforce-conversation-client-1.57.0.tgz",
4090
- "integrity": "sha512-Oi4N526m0cK+PFMkq6eGObPjEzEiHOgnp2HrHN6kH2cd1k/K2W42nTKiW1DCuPBYmnNdhiQywMQ6iccSQ89zTg==",
4088
+ "version": "1.58.1",
4089
+ "resolved": "https://registry.npmjs.org/@salesforce/agentforce-conversation-client/-/agentforce-conversation-client-1.58.1.tgz",
4090
+ "integrity": "sha512-+71oBDoWWMbZxW7i6u6o9xbyoF71YG3F4bOXRi2fNxbYDLMTEQ7u8z9GgmWy/NT53jbyjvhYPXMY/H//qt7mvg==",
4091
4091
  "license": "SEE LICENSE IN LICENSE.txt",
4092
4092
  "dependencies": {
4093
4093
  "@lightning-out/application": "2.1.1-rc.2"
@@ -4148,19 +4148,19 @@
4148
4148
  }
4149
4149
  },
4150
4150
  "node_modules/@salesforce/sdk-core": {
4151
- "version": "1.57.0",
4152
- "resolved": "https://registry.npmjs.org/@salesforce/sdk-core/-/sdk-core-1.57.0.tgz",
4153
- "integrity": "sha512-GltoieBSgMXVqIHx5EIe9Wvl4YtBZIcf13TPSHvqOLKcUQvLWZMSul5P7GMIYwqjAe31hr/ka1UzWeT1eOlDnQ==",
4151
+ "version": "1.58.1",
4152
+ "resolved": "https://registry.npmjs.org/@salesforce/sdk-core/-/sdk-core-1.58.1.tgz",
4153
+ "integrity": "sha512-Ke9kRRK4bKumP2voNZ9NUnvc5kmSo7iuvMdt9KgqmoJ4uaxS/IAR4LYkPZYpUeUu87mdljo7kw35jvKhkMqhZQ==",
4154
4154
  "license": "SEE LICENSE IN LICENSE.txt"
4155
4155
  },
4156
4156
  "node_modules/@salesforce/sdk-data": {
4157
- "version": "1.57.0",
4158
- "resolved": "https://registry.npmjs.org/@salesforce/sdk-data/-/sdk-data-1.57.0.tgz",
4159
- "integrity": "sha512-s0Tlq+LujH5TesV20q2FfTLVTx9+6o2EDY2nENYWcElPG+a+LYDdZolE2ok9uPeVBlp2igG/3GpdVmt55w/NkA==",
4157
+ "version": "1.58.1",
4158
+ "resolved": "https://registry.npmjs.org/@salesforce/sdk-data/-/sdk-data-1.58.1.tgz",
4159
+ "integrity": "sha512-Agp33BPe6KD7ZZoxKFnT/IZ9J8bEvvS61MYlGzxib3HIkP4EFHk8VeHlRwxZFtd+nY4x45q/kG1mLdlzCAYykw==",
4160
4160
  "license": "SEE LICENSE IN LICENSE.txt",
4161
4161
  "dependencies": {
4162
4162
  "@conduit-client/salesforce-lightning-service-worker": "^3.7.0",
4163
- "@salesforce/sdk-core": "^1.57.0"
4163
+ "@salesforce/sdk-core": "^1.58.1"
4164
4164
  }
4165
4165
  },
4166
4166
  "node_modules/@salesforce/ts-types": {
@@ -4173,15 +4173,15 @@
4173
4173
  }
4174
4174
  },
4175
4175
  "node_modules/@salesforce/vite-plugin-webapp-experimental": {
4176
- "version": "1.57.0",
4177
- "resolved": "https://registry.npmjs.org/@salesforce/vite-plugin-webapp-experimental/-/vite-plugin-webapp-experimental-1.57.0.tgz",
4178
- "integrity": "sha512-7bYvYT8xp4puUH7StaT3cX66in0Eo33Lk/syuc6YEPAU7L1ZZfQlIta3/UIKMLtoElNzShcC3E1MXR9Ddb3yrw==",
4176
+ "version": "1.58.1",
4177
+ "resolved": "https://registry.npmjs.org/@salesforce/vite-plugin-webapp-experimental/-/vite-plugin-webapp-experimental-1.58.1.tgz",
4178
+ "integrity": "sha512-o9hAn4waBM3m7ago/DQZCIIlKxZhhEMBIm5b1kEDMr4XXJlx4OQ8V79TeHGyZOJ60EihC93DzyPFwtA2y4f2Ug==",
4179
4179
  "dev": true,
4180
4180
  "license": "SEE LICENSE IN LICENSE.txt",
4181
4181
  "dependencies": {
4182
4182
  "@babel/core": "^7.28.4",
4183
4183
  "@babel/helper-plugin-utils": "^7.28.3",
4184
- "@salesforce/webapp-experimental": "^1.57.0"
4184
+ "@salesforce/webapp-experimental": "^1.58.1"
4185
4185
  },
4186
4186
  "engines": {
4187
4187
  "node": ">=20.0.0"
@@ -4191,13 +4191,13 @@
4191
4191
  }
4192
4192
  },
4193
4193
  "node_modules/@salesforce/webapp-experimental": {
4194
- "version": "1.57.0",
4195
- "resolved": "https://registry.npmjs.org/@salesforce/webapp-experimental/-/webapp-experimental-1.57.0.tgz",
4196
- "integrity": "sha512-XZy4+gXw/d2eaAWV2sCMBknWul/CAIl75V4p5idAPXcgi3wODrWTNLOzmMLcdNW8cujCXVgDlZ5e8IgHYcspbQ==",
4194
+ "version": "1.58.1",
4195
+ "resolved": "https://registry.npmjs.org/@salesforce/webapp-experimental/-/webapp-experimental-1.58.1.tgz",
4196
+ "integrity": "sha512-dyz3gFWlgd5oI19Gp+Ik+fRr9n5Pi1lMtCQtAe6KSP2YROKWCnm4sru3z4Eud5J+ccaVmlhLCtcwdIPoOLnKQA==",
4197
4197
  "license": "SEE LICENSE IN LICENSE.txt",
4198
4198
  "dependencies": {
4199
4199
  "@salesforce/core": "^8.23.4",
4200
- "@salesforce/sdk-data": "^1.57.0",
4200
+ "@salesforce/sdk-data": "^1.58.1",
4201
4201
  "axios": "^1.7.7",
4202
4202
  "micromatch": "^4.0.8",
4203
4203
  "path-to-regexp": "^8.3.0"
@@ -4676,9 +4676,9 @@
4676
4676
  "license": "MIT"
4677
4677
  },
4678
4678
  "node_modules/@types/node": {
4679
- "version": "24.10.14",
4680
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.14.tgz",
4681
- "integrity": "sha512-OowOUbD1lBCOFIPOZ8xnMIhgqA4sCutMiYOmPHL1PTLt5+y1XA+g2+yC9OOyz8p+deMZqPZLxfMjYIfrKsPeFg==",
4679
+ "version": "24.10.15",
4680
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.15.tgz",
4681
+ "integrity": "sha512-BgjLoRuSr0MTI5wA6gMw9Xy0sFudAaUuvrnjgGx9wZ522fYYLA5SYJ+1Y30vTcJEG+DRCyDHx/gzQVfofYzSdg==",
4682
4682
  "devOptional": true,
4683
4683
  "license": "MIT",
4684
4684
  "dependencies": {
@@ -8483,27 +8483,14 @@
8483
8483
  "graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"
8484
8484
  }
8485
8485
  },
8486
- "node_modules/graphql-config/node_modules/balanced-match": {
8487
- "version": "4.0.4",
8488
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
8489
- "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
8490
- "dev": true,
8491
- "license": "MIT",
8492
- "engines": {
8493
- "node": "18 || 20 || >=22"
8494
- }
8495
- },
8496
8486
  "node_modules/graphql-config/node_modules/brace-expansion": {
8497
- "version": "5.0.3",
8498
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.3.tgz",
8499
- "integrity": "sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==",
8487
+ "version": "2.0.2",
8488
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
8489
+ "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
8500
8490
  "dev": true,
8501
8491
  "license": "MIT",
8502
8492
  "dependencies": {
8503
- "balanced-match": "^4.0.2"
8504
- },
8505
- "engines": {
8506
- "node": "18 || 20 || >=22"
8493
+ "balanced-match": "^1.0.0"
8507
8494
  }
8508
8495
  },
8509
8496
  "node_modules/graphql-config/node_modules/cosmiconfig": {
@@ -8534,13 +8521,13 @@
8534
8521
  }
8535
8522
  },
8536
8523
  "node_modules/graphql-config/node_modules/minimatch": {
8537
- "version": "9.0.8",
8538
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.8.tgz",
8539
- "integrity": "sha512-reYkDYtj/b19TeqbNZCV4q9t+Yxylf/rYBsLb42SXJatTv4/ylq5lEiAmhA/IToxO7NI2UzNMghHoHuaqDkAjw==",
8524
+ "version": "9.0.9",
8525
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz",
8526
+ "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==",
8540
8527
  "dev": true,
8541
8528
  "license": "ISC",
8542
8529
  "dependencies": {
8543
- "brace-expansion": "^5.0.2"
8530
+ "brace-expansion": "^2.0.2"
8544
8531
  },
8545
8532
  "engines": {
8546
8533
  "node": ">=16 || 14 >=14.17"
@@ -12887,13 +12874,13 @@
12887
12874
  }
12888
12875
  },
12889
12876
  "node_modules/strip-ansi": {
12890
- "version": "7.1.2",
12891
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz",
12892
- "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==",
12877
+ "version": "7.2.0",
12878
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
12879
+ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
12893
12880
  "dev": true,
12894
12881
  "license": "MIT",
12895
12882
  "dependencies": {
12896
- "ansi-regex": "^6.0.1"
12883
+ "ansi-regex": "^6.2.2"
12897
12884
  },
12898
12885
  "engines": {
12899
12886
  "node": ">=12"
@@ -15,7 +15,7 @@
15
15
  "graphql:schema": "node scripts/get-graphql-schema.mjs"
16
16
  },
17
17
  "dependencies": {
18
- "@salesforce/agentforce-conversation-client": "^1.57.0",
18
+ "@salesforce/agentforce-conversation-client": "^1.58.1",
19
19
  "@salesforce/sdk-data": "^1.11.2",
20
20
  "@salesforce/webapp-experimental": "*",
21
21
  "@tailwindcss/vite": "^4.1.17",
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/webapp-template-base-sfdx-project-experimental",
3
- "version": "1.58.0",
3
+ "version": "1.58.2",
4
4
  "description": "Base SFDX project template",
5
5
  "private": true,
6
6
  "files": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/webapp-template-feature-react-agentforce-conversation-client-experimental",
3
- "version": "1.58.0",
3
+ "version": "1.58.2",
4
4
  "description": "Embedded Agentforce conversation client feature for web applications",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "",
@@ -27,7 +27,7 @@
27
27
  "clean": "rm -rf dist"
28
28
  },
29
29
  "dependencies": {
30
- "@salesforce/agentforce-conversation-client": "^1.58.0"
30
+ "@salesforce/agentforce-conversation-client": "^1.58.2"
31
31
  },
32
32
  "devDependencies": {
33
33
  "@types/react": "^19.2.7",
@@ -52,5 +52,5 @@
52
52
  }
53
53
  }
54
54
  },
55
- "gitHead": "444ed5b9e2ae4154064d316b06ce9a8be6831b0c"
55
+ "gitHead": "0dda7fdd05f5b8fd9870e57cc796663555166a90"
56
56
  }
@@ -1,116 +0,0 @@
1
- export type Maybe<T> = T | null;
2
- export type InputMaybe<T> = Maybe<T>;
3
- export type Exact<T extends { [key: string]: unknown }> = {
4
- [K in keyof T]: T[K];
5
- };
6
- export type MakeOptional<T, K extends keyof T> = Omit<T, K> & {
7
- [SubKey in K]?: Maybe<T[SubKey]>;
8
- };
9
- export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {
10
- [SubKey in K]: Maybe<T[SubKey]>;
11
- };
12
- export type MakeEmpty<
13
- T extends { [key: string]: unknown },
14
- K extends keyof T,
15
- > = { [_ in K]?: never };
16
- export type Incremental<T> =
17
- | T
18
- | {
19
- [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never;
20
- };
21
- /** All built-in and custom scalars, mapped to their actual values */
22
- export type Scalars = {
23
- ID: { input: string; output: string };
24
- String: { input: string; output: string };
25
- Boolean: { input: boolean; output: boolean };
26
- Int: { input: number; output: number };
27
- Float: { input: number; output: number };
28
- Base64: { input: string; output: string };
29
- Currency: { input: number | string; output: number };
30
- Date: { input: string; output: string };
31
- DateTime: { input: string; output: string };
32
- Double: { input: number | string; output: number };
33
- Email: { input: string; output: string };
34
- EncryptedString: { input: string; output: string };
35
- /** Can be set to an ID or a Reference to the result of another mutation operation. */
36
- IdOrRef: { input: string; output: string };
37
- Latitude: { input: number | string; output: number };
38
- /** A 64-bit signed integer */
39
- Long: { input: number; output: number };
40
- LongTextArea: { input: string; output: string };
41
- Longitude: { input: number | string; output: number };
42
- MultiPicklist: { input: string; output: string };
43
- Percent: { input: number | string; output: number };
44
- PhoneNumber: { input: string; output: string };
45
- Picklist: { input: string; output: string };
46
- RichTextArea: { input: string; output: string };
47
- TextArea: { input: string; output: string };
48
- Time: { input: string; output: string };
49
- Url: { input: string; output: string };
50
- };
51
-
52
- export enum DataType {
53
- Address = 'ADDRESS',
54
- Anytype = 'ANYTYPE',
55
- Base64 = 'BASE64',
56
- Boolean = 'BOOLEAN',
57
- Combobox = 'COMBOBOX',
58
- Complexvalue = 'COMPLEXVALUE',
59
- Currency = 'CURRENCY',
60
- Date = 'DATE',
61
- Datetime = 'DATETIME',
62
- Double = 'DOUBLE',
63
- Email = 'EMAIL',
64
- Encryptedstring = 'ENCRYPTEDSTRING',
65
- Int = 'INT',
66
- Json = 'JSON',
67
- Junctionidlist = 'JUNCTIONIDLIST',
68
- Location = 'LOCATION',
69
- Long = 'LONG',
70
- Multipicklist = 'MULTIPICKLIST',
71
- Percent = 'PERCENT',
72
- Phone = 'PHONE',
73
- Picklist = 'PICKLIST',
74
- Reference = 'REFERENCE',
75
- String = 'STRING',
76
- Textarea = 'TEXTAREA',
77
- Time = 'TIME',
78
- Url = 'URL',
79
- }
80
-
81
- export enum FieldExtraTypeInfo {
82
- ExternalLookup = 'EXTERNAL_LOOKUP',
83
- ImageUrl = 'IMAGE_URL',
84
- IndirectLookup = 'INDIRECT_LOOKUP',
85
- Personname = 'PERSONNAME',
86
- Plaintextarea = 'PLAINTEXTAREA',
87
- Richtextarea = 'RICHTEXTAREA',
88
- SwitchablePersonname = 'SWITCHABLE_PERSONNAME',
89
- }
90
-
91
- export enum ResultOrder {
92
- Asc = 'ASC',
93
- Desc = 'DESC',
94
- }
95
-
96
- export type GetHighRevenueAccountsQueryVariables = Exact<{
97
- minRevenue?: InputMaybe<Scalars['Currency']['input']>;
98
- }>;
99
-
100
- export type GetHighRevenueAccountsQuery = {
101
- uiapi: {
102
- query: {
103
- Account?: {
104
- edges?: Array<{
105
- node?: {
106
- Id: string;
107
- Name?: { value?: string | null } | null;
108
- AnnualRevenue?: { value?: number | null } | null;
109
- Industry?: { value?: string | null } | null;
110
- Website?: { value?: string | null } | null;
111
- } | null;
112
- } | null> | null;
113
- } | null;
114
- };
115
- };
116
- };
@@ -1,41 +0,0 @@
1
- import { getDataSDK } from '@salesforce/webapp-experimental/api';
2
- import HIGH_REVENUE_ACCOUNTS_QUERY from './query/highRevenueAccountsQuery.graphql?raw';
3
- import type {
4
- GetHighRevenueAccountsQuery,
5
- GetHighRevenueAccountsQueryVariables,
6
- } from '../graphql-operations-types';
7
-
8
- type AccountNode = NonNullable<
9
- NonNullable<
10
- NonNullable<
11
- NonNullable<
12
- GetHighRevenueAccountsQuery['uiapi']['query']['Account']
13
- >['edges']
14
- >[number]
15
- >['node']
16
- >;
17
-
18
- /**
19
- * Fetch accounts with annual revenue greater than the specified amount
20
- *
21
- * @param minRevenue - Minimum annual revenue threshold (default: 100000)
22
- * @returns Array of accounts matching the criteria
23
- */
24
- export async function getHighRevenueAccounts(
25
- variables: GetHighRevenueAccountsQueryVariables
26
- ): Promise<(AccountNode | null | undefined)[]> {
27
- const data = await getDataSDK();
28
- const response = await data.graphql?.<
29
- GetHighRevenueAccountsQuery,
30
- GetHighRevenueAccountsQueryVariables
31
- >(HIGH_REVENUE_ACCOUNTS_QUERY, variables);
32
-
33
- if (response?.errors?.length) {
34
- const errorMessages = response.errors.map(e => e.message).join('; ');
35
- throw new Error(`GraphQL Error: ${errorMessages}`);
36
- }
37
-
38
- return (
39
- response?.data?.uiapi?.query?.Account?.edges?.map(edge => edge?.node) || []
40
- );
41
- }
@@ -1,29 +0,0 @@
1
- query GetHighRevenueAccounts($minRevenue: Currency) {
2
- uiapi {
3
- query {
4
- Account(
5
- where: { AnnualRevenue: { gt: $minRevenue } }
6
- orderBy: { AnnualRevenue: { order: DESC } }
7
- first: 50
8
- ) {
9
- edges {
10
- node {
11
- Id
12
- Name {
13
- value
14
- }
15
- AnnualRevenue {
16
- value
17
- }
18
- Industry {
19
- value
20
- }
21
- Website {
22
- value
23
- }
24
- }
25
- }
26
- }
27
- }
28
- }
29
- }