@salesforce/ui-bundle-template-app-react-sample-b2e 1.119.1 → 1.119.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.
package/dist/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
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.119.2](https://github.com/salesforce-experience-platform-emu/webapps/compare/v1.119.1...v1.119.2) (2026-03-31)
7
+
8
+ **Note:** Version bump only for package @salesforce/ui-bundle-template-base-sfdx-project
9
+
10
+
11
+
12
+
13
+
6
14
  ## [1.119.1](https://github.com/salesforce-experience-platform-emu/webapps/compare/v1.119.0...v1.119.1) (2026-03-31)
7
15
 
8
16
  **Note:** Version bump only for package @salesforce/ui-bundle-template-base-sfdx-project
package/dist/README.md CHANGED
@@ -2,45 +2,151 @@
2
2
 
3
3
  A property management sample React UI Bundle for the Salesforce platform. Demonstrates property management, maintenance requests, tenant applications, a dashboard, and an Agentforce conversation client. Built with React, Vite, TypeScript, and Tailwind/shadcn.
4
4
 
5
- ## What's included
5
+ ## Table of Contents
6
+
7
+ 1. [What's Included](#whats-included)
8
+ 2. [Prerequisites](#prerequisites)
9
+ 3. [Quick Start (Automated)](#quick-start-automated)
10
+ 4. [Step-by-Step Setup](#step-by-step-setup)
11
+ - [1. Install Dependencies](#1-install-dependencies)
12
+ - [2. Authenticate Your Org](#2-authenticate-your-org)
13
+ - [3. Deploy Metadata](#3-deploy-metadata)
14
+ - [4. Assign Permission Set](#4-assign-permission-set)
15
+ - [5. Import Sample Data](#5-import-sample-data)
16
+ - [6. Generate GraphQL Types](#6-generate-graphql-types)
17
+ - [7. Rebuild the UI Bundle](#7-rebuild-the-ui-bundle)
18
+ - [8. Deploy the UI Bundle](#8-deploy-the-ui-bundle)
19
+ 5. [Local Development](#local-development)
20
+ 6. [Resources](#resources)
21
+
22
+ ---
23
+
24
+ ## What's Included
6
25
 
7
26
  | Path | Description |
8
27
  | --------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
9
28
  | `force-app/main/default/uiBundles/propertymanagementapp/` | React UI Bundle (source, config, tests) |
10
- | `force-app/main/default/objects/` | 17 custom objects — Agent\_\_c, Application\_\_c, KPI_Snapshot\_\_c, Lease\_\_c, Maintenance_Request\_\_c, Maintenance_Worker\_\_c, Notification\_\_c, Payment\_\_c, Property\_\_c, Property_Cost\_\_c, Property_Feature\_\_c, Property_Image\_\_c, Property_Listing\_\_c, Property_Management_Company\_\_c, Property_Owner\_\_c, Property_Sale\_\_c, Tenant\_\_c |
29
+ | `force-app/main/default/objects/` | 17 custom objects — `Agent__c`, `Application__c`, `KPI_Snapshot__c`, `Lease__c`, `Maintenance_Request__c`, `Maintenance_Worker__c`, `Notification__c`, `Payment__c`, `Property__c`, `Property_Cost__c`, `Property_Feature__c`, `Property_Image__c`, `Property_Listing__c`, `Property_Management_Company__c`, `Property_Owner__c`, `Property_Sale__c`, `Tenant__c` |
11
30
  | `force-app/main/default/layouts/` | Page layouts for each custom object |
12
- | `force-app/main/default/permissionsets/` | `Property_Management_Access` permission set |
31
+ | `force-app/main/default/permissionsets/` | `Property_Management_Access` permission set — full CRUD access to all custom objects |
13
32
  | `force-app/main/default/data/` | Sample data (JSON) for all objects, importable via `sf data import tree` |
14
33
 
15
- ## Getting started
34
+ ---
16
35
 
17
- Navigate to the UI Bundle and install dependencies:
36
+ ## Prerequisites
37
+
38
+ Before you begin, ensure the following are in place.
39
+
40
+ | Tool | Minimum Version | Install |
41
+ | ----------------------------------------------------------------------------- | ------------------ | ----------------------------------- |
42
+ | [Salesforce CLI (`sf`)](https://developer.salesforce.com/tools/salesforcecli) | v2+ | `npm install -g @salesforce/cli` |
43
+ | [Node.js](https://nodejs.org/) | v22+ | [nodejs.org](https://nodejs.org/) |
44
+ | [Git](https://git-scm.com/) | Any recent version | [git-scm.com](https://git-scm.com/) |
45
+
46
+ Verify your Salesforce CLI version with:
47
+
48
+ ```bash
49
+ sf --version
50
+ ```
51
+
52
+ ---
53
+
54
+ ## Quick Start (Automated)
55
+
56
+ Two npm scripts at the project root streamline getting started and deployment.
57
+
58
+ **`npm run sf-project-setup`** — installs the UI Bundle dependencies, builds the app, and starts the dev server (see [Local Development](#local-development)).
59
+
60
+ **`npm run setup`** — automates the full setup: login, deploy metadata, assign permission sets, import sample data, fetch the GraphQL schema, run codegen, build the UI Bundle, and optionally launch the dev server:
61
+
62
+ ```bash
63
+ npm run setup -- --target-org <alias>
64
+ ```
65
+
66
+ Replace `<alias>` with your target org alias or username. Running without flags presents an interactive step picker. Pass `--yes` to skip it and run all steps immediately:
67
+
68
+ ```bash
69
+ npm run setup -- --target-org <alias> --yes
70
+ ```
71
+
72
+ ### Common Options
73
+
74
+ | Option | Description |
75
+ | ------------------------- | ------------------------------------------------------------------------------------ |
76
+ | `--skip-login` | Skip browser login (auto-skipped if org is already connected) |
77
+ | `--skip-deploy` | Skip the metadata deploy step |
78
+ | `--skip-permset` | Skip permission set assignment |
79
+ | `--skip-data` | Skip data preparation and import |
80
+ | `--skip-graphql` | Skip GraphQL schema fetch and codegen |
81
+ | `--skip-ui-bundle-build` | Skip `npm install` and UI Bundle build |
82
+ | `--skip-dev` | Do not launch the dev server at the end |
83
+ | `--permset-name <name>` | Assign only a specific permission set (repeatable). Default: all sets in the project |
84
+ | `--ui-bundle-name <name>` | UI Bundle folder name under `uiBundles/` (default: auto-detected) |
85
+ | `-y, --yes` | Skip interactive step picker and run all enabled steps immediately |
86
+
87
+ For a full list of options:
88
+
89
+ ```bash
90
+ npm run setup -- --help
91
+ ```
92
+
93
+ ---
94
+
95
+ ## Step-by-Step Setup
96
+
97
+ Use this section if you prefer to run each step manually, or if the automated script is not available.
98
+
99
+ ### 1. Install Dependencies
100
+
101
+ Install root-level project dependencies:
102
+
103
+ ```bash
104
+ npm install
105
+ ```
106
+
107
+ Install the UI Bundle dependencies and build it:
18
108
 
19
109
  ```bash
20
110
  cd force-app/main/default/uiBundles/propertymanagementapp
21
111
  npm install
22
- npm run dev
112
+ npm run build
113
+ cd -
23
114
  ```
24
115
 
25
- Opens at http://localhost:5173 by default. For build and test instructions, see the [UI Bundle README](force-app/main/default/uiBundles/propertymanagementapp/README.md).
116
+ This produces the static bundle artifacts that are packaged into the Salesforce metadata. Having them built now means any deploy option in [Step 3](#3-deploy-metadata) is ready to run without an additional build step.
26
117
 
27
- ## Deploy
118
+ ### 2. Authenticate Your Org
28
119
 
29
- ### Deploy everything (metadata + UI Bundle)
120
+ Log in to your target org using the Salesforce CLI. This opens a browser window for OAuth authentication:
30
121
 
31
122
  ```bash
32
- cd force-app/main/default/uiBundles/propertymanagementapp && npm install && npm run build && cd -
33
- sf project deploy start --source-dir force-app --target-org <alias>
123
+ sf org login web --alias <alias>
34
124
  ```
35
125
 
36
- ### Deploy the UI Bundle only
126
+ To verify the login was successful:
37
127
 
38
128
  ```bash
39
- cd force-app/main/default/uiBundles/propertymanagementapp && npm install && npm run build && cd -
40
- sf project deploy start --source-dir force-app/main/default/ui-bundles --target-org <alias>
129
+ sf org display --target-org <alias>
41
130
  ```
42
131
 
43
- ### Deploy metadata only (objects, layouts, permission sets)
132
+ If you are working with a sandbox, use:
133
+
134
+ ```bash
135
+ sf org login web --alias <alias> --instance-url https://test.salesforce.com
136
+ ```
137
+
138
+ ### 3. Deploy Metadata
139
+
140
+ #### Option A: Deploy Everything (metadata + UI Bundle)
141
+
142
+ Build the UI Bundle first, then deploy all source in a single command:
143
+
144
+ ```bash
145
+ cd force-app/main/default/uiBundles/propertymanagementapp && npm run build && cd -
146
+ sf project deploy start --source-dir force-app --target-org <alias>
147
+ ```
148
+
149
+ #### Option B: Deploy Metadata Only (objects, layouts, permission sets)
44
150
 
45
151
  ```bash
46
152
  sf project deploy start \
@@ -50,55 +156,93 @@ sf project deploy start \
50
156
  --target-org <alias>
51
157
  ```
52
158
 
159
+ #### Option C: Deploy the UI Bundle Only
160
+
161
+ ```bash
162
+ cd force-app/main/default/uiBundles/propertymanagementapp && npm run build && cd -
163
+ sf project deploy start --source-dir force-app/main/default/uiBundles --target-org <alias>
164
+ ```
165
+
53
166
  Replace `<alias>` with your target org alias.
54
167
 
55
- ## Assign permset
168
+ ### 4. Assign Permission Set
56
169
 
57
- After deploying the metadata, assign the `Property_Management_Access` permission set to your user to grant access to the custom objects and fields:
170
+ After deploying the metadata, assign the `Property_Management_Access` permission set to grant access to the custom objects and fields:
58
171
 
59
172
  ```bash
60
- sf org assign permset -n Property_Management_Access --target-org <alias>
173
+ sf org assign permset --name Property_Management_Access --target-org <alias>
174
+ ```
175
+
176
+ To assign to a specific user:
177
+
178
+ ```bash
179
+ sf org assign permset --name Property_Management_Access --on-behalf-of <username> --target-org <alias>
61
180
  ```
62
181
 
63
182
  Replace `<alias>` with your target org alias.
64
183
 
65
- ## Import sample data
184
+ ### 5. Import Sample Data
185
+
186
+ Once the metadata has been successfully deployed:
66
187
 
67
188
  ```bash
68
189
  sf data import tree --plan force-app/main/default/data/data-plan.json --target-org <alias>
69
190
  ```
70
191
 
71
- ## Using org-setup.mjs
192
+ The data plan imports records in dependency order: Contacts, Agents, Maintenance Workers, Properties, Tenants, Applications, Maintenance Requests, Notifications, Property Management Companies, Property Owners, Leases, Property Sales, Property Costs, Payments, KPI Snapshots, Property Listings, Property Images, and Property Features.
72
193
 
73
- When this app is built (e.g. from the monorepo or from a published package), an `org-setup.mjs` script is included at the project root. It runs the full setup in one go: login (if needed), deploy metadata, assign the `Property_Management_Access` permission set, prepare and import sample data, fetch GraphQL schema and run codegen, build the UI Bundle, and optionally start the dev server.
194
+ > **Note:** If you re-run the import, duplicate records will be created. Wipe existing records first or use the `--upsert` flag if your plan supports it.
74
195
 
75
- Run from the **project root** (the directory that contains `force-app/`, `sfdx-project.json`, and `org-setup.mjs`):
196
+ ### 6. Generate GraphQL Types
197
+
198
+ After metadata is deployed, generate the GraphQL schema and TypeScript types for the UI Bundle. These are used to provide type-safe queries against the Salesforce GraphQL API.
199
+
200
+ ```bash
201
+ cd force-app/main/default/uiBundles/propertymanagementapp
202
+ npm run graphql:schema # Fetches schema from org → outputs schema.graphql
203
+ npm run graphql:codegen # Generates TypeScript types → updates src/api/graphql-operations-types.ts
204
+ cd -
205
+ ```
206
+
207
+ > **Prerequisite:** The org must be authenticated and metadata must already be deployed before running these commands, as the schema is generated from the org's live metadata.
208
+
209
+ ### 7. Rebuild the UI Bundle
210
+
211
+ Step 6 updates the generated GraphQL types in the UI Bundle source. Rebuild the app to compile those changes into the bundle before deploying:
212
+
213
+ ```bash
214
+ cd force-app/main/default/uiBundles/propertymanagementapp
215
+ npm run build
216
+ cd -
217
+ ```
218
+
219
+ ### 8. Deploy the UI Bundle
220
+
221
+ Once the build is complete, deploy the UI Bundle to your org:
76
222
 
77
223
  ```bash
78
- node org-setup.mjs --target-org <alias>
224
+ sf project deploy start --source-dir force-app/main/default/uiBundles --target-org <alias>
79
225
  ```
80
226
 
81
- Common options:
227
+ ---
82
228
 
83
- | Option | Description |
84
- | ------------------------ | ---------------------------------------------------------------- |
85
- | `--skip-login` | Skip browser login (org already authenticated) |
86
- | `--skip-data` | Skip data preparation and import |
87
- | `--skip-graphql` | Skip GraphQL schema fetch and codegen |
88
- | `--skip-ui-bundle-build` | Skip `npm install` and UI Bundle build |
89
- | `--skip-dev` | Do not start the dev server at the end |
90
- | `--permset <name>` | Permission set to assign (default: `Property_Management_Access`) |
91
- | `--app <name>` | Web app folder name when multiple exist |
229
+ ## Local Development
92
230
 
93
- For all options: `node org-setup.mjs --help`.
231
+ Install project dependencies and start the dev server:
232
+
233
+ ```bash
234
+ npm install
235
+ npm run sf-project-setup
236
+ ```
94
237
 
95
- ## Configure Your Salesforce DX Project
238
+ This installs the UI Bundle dependencies, builds the app, and opens the dev server at `http://localhost:5173`. For manual build and test instructions, see the [UI Bundle README](force-app/main/default/uiBundles/propertymanagementapp/README.md).
96
239
 
97
- The `sfdx-project.json` file contains useful configuration information for your project. See [Salesforce DX Project Configuration](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_ws_config.htm) in the _Salesforce DX Developer Guide_ for details about this file.
240
+ ---
98
241
 
99
- ## Read All About It
242
+ ## Resources
100
243
 
101
244
  - [Salesforce Extensions Documentation](https://developer.salesforce.com/tools/vscode/)
102
245
  - [Salesforce CLI Setup Guide](https://developer.salesforce.com/docs/atlas.en-us.sfdx_setup.meta/sfdx_setup/sfdx_setup_intro.htm)
103
246
  - [Salesforce DX Developer Guide](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_intro.htm)
104
247
  - [Salesforce CLI Command Reference](https://developer.salesforce.com/docs/atlas.en-us.sfdx_cli_reference.meta/sfdx_cli_reference/cli_reference.htm)
248
+ - [Salesforce DX Project Configuration](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_ws_config.htm)
@@ -15,8 +15,8 @@
15
15
  "graphql:schema": "node scripts/get-graphql-schema.mjs"
16
16
  },
17
17
  "dependencies": {
18
- "@salesforce/sdk-data": "^1.119.1",
19
- "@salesforce/ui-bundle": "^1.119.1",
18
+ "@salesforce/sdk-data": "^1.119.2",
19
+ "@salesforce/ui-bundle": "^1.119.2",
20
20
  "@tailwindcss/vite": "^4.1.17",
21
21
  "class-variance-authority": "^0.7.1",
22
22
  "clsx": "^2.1.1",
@@ -43,7 +43,7 @@
43
43
  "@graphql-eslint/eslint-plugin": "^4.1.0",
44
44
  "@graphql-tools/utils": "^11.0.0",
45
45
  "@playwright/test": "^1.49.0",
46
- "@salesforce/vite-plugin-ui-bundle": "^1.119.1",
46
+ "@salesforce/vite-plugin-ui-bundle": "^1.119.2",
47
47
  "@testing-library/jest-dom": "^6.6.3",
48
48
  "@testing-library/react": "^16.1.0",
49
49
  "@testing-library/user-event": "^14.5.2",
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@salesforce/webapp-template-base-sfdx-project-experimental",
3
- "version": "1.119.1",
3
+ "version": "1.119.2",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@salesforce/webapp-template-base-sfdx-project-experimental",
9
- "version": "1.119.1",
9
+ "version": "1.119.2",
10
10
  "license": "SEE LICENSE IN LICENSE.txt",
11
11
  "devDependencies": {
12
12
  "@lwc/eslint-plugin-lwc": "^3.3.0",
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/ui-bundle-template-base-sfdx-project",
3
- "version": "1.119.1",
3
+ "version": "1.119.2",
4
4
  "description": "Base SFDX project template",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "publishConfig": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforce/ui-bundle-template-app-react-sample-b2e",
3
- "version": "1.119.1",
3
+ "version": "1.119.2",
4
4
  "description": "Salesforce sample property rental React app",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "author": "",
@@ -16,7 +16,7 @@
16
16
  "clean": "rm -rf dist"
17
17
  },
18
18
  "dependencies": {
19
- "@salesforce/ui-bundle": "^1.119.1",
19
+ "@salesforce/ui-bundle": "^1.119.2",
20
20
  "sonner": "^1.7.0"
21
21
  },
22
22
  "devDependencies": {