You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+19Lines changed: 19 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,24 @@
1
1
# Changelog
2
2
3
+
## 7.2.0
4
+
5
+
May 11, 2026
6
+
7
+
### LWC Distribution
8
+
9
+
The LWC build now produces two artifacts to support different deployment workflows:
10
+
11
+
-**Standalone JS file** at `dist/lwc/soqlParserJs.js` — a single bundled file that SFDX users can drop directly into their project's `lwc/soqlParserJs/` folder alongside their own `.js-meta.xml`. Also published to npm and attached to each GitHub Release.
12
+
-**Ready-to-deploy metadata package** at `dist/lwc-packaged/` — contains `package.xml`, `lwc/soqlParserJs/soqlParserJs.js`, and `soqlParserJs.js-meta.xml`. Deploy directly with `sf project deploy start --metadata-dir dist/lwc-packaged --target-org <alias>`, no SFDX project required.
13
+
-**Pre-zipped metadata package on GitHub Releases** — every release attaches `soql-parser-js-lwc-v<version>.zip` (the metadata package, pre-zipped) so users can grab a single archive, and deploy without cloning or running `npm install`.
14
+
-**Fixed LWC compiler compatibility** — lowered the LWC bundle's esbuild target to `es2020`, which down-levels ES2022 syntax (e.g. static class initialization blocks) that the Salesforce LWC compiler does not yet support.
15
+
-**Configurable Salesforce API version** — added the `salesforceApiVersion` field to `package.json` (currently `66.0`); the value is stamped into both `package.xml` and `.js-meta.xml` at build time, so bumping the API version is a one-line change.
16
+
17
+
### Release Pipeline
18
+
19
+
-**npm tarball attached to GitHub Releases** — every release now attaches `jetstreamapp-soql-parser-js-<version>.tgz`.
20
+
-**Version banner on all bundles** — `esm`, `cjs`, `cli`, and `lwc` bundles all start with a `/*! ... */` header listing the package name, version, repository URL, and license. Banner values are sourced from `package.json`, so they stay in sync automatically with each release.
Copy file name to clipboardExpand all lines: README.md
+51-27Lines changed: 51 additions & 27 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -510,52 +510,74 @@ WHERE Name LIKE 'a%'
510
510
511
511
## Using in LWC
512
512
513
-
The easiest way to utilize this library in LWC is to deploy the compiled code as a web component in your org.
513
+
The library can be used as a Lightning Web Component in your Salesforce org. The build produces two artifacts to support different workflows:
514
514
515
-
:warning: The minified version ends up with `$A` characters in the output, which causes the deployment to SFD to fail, so we have created an unminified version of the library just for Salesforce.
| `dist/lwc/soqlParserJs.js` | Standalone bundled JS file (no metadata) | SFDX projects — drop into your existing `lwc/soqlParserJs/` folder |
518
+
| `dist/lwc-packaged/` (and the release zip) | Full Salesforce metadata package: `package.xml` + `lwc/soqlParserJs/{js,js-meta.xml}` | Direct deployment to an org via `sf project deploy start` — no SFDX project required |
516
519
517
-
### Obtaining the build artifacts
520
+
The Salesforce API version used for the metadata package is configured via the `salesforceApiVersion` field in [package.json](package.json) and is applied to both `package.xml` and `soqlParserJs.js-meta.xml` at build time.
518
521
519
-
We don't store the built artifacts on github, so you will need to obtain from NPM or run the build command yourself.
522
+
### Option 1: SFDX project — drop in the standalone JS file
520
523
521
-
#### Download from NPM
524
+
If you already have an SFDX project, the easiest path is to grab the standalone `soqlParserJs.js` and place it in your project's `lwc/soqlParserJs/` folder alongside a `soqlParserJs.js-meta.xml` file you provide yourself.
522
525
523
-
Download from [npm](https://www.npmjs.com/package/@jetstreamapp/soql-parser-js)
526
+
Sources for the standalone JS:
524
527
525
-
**Either:**
528
+
-**GitHub Releases** — every release attaches `soqlParserJs.js` directly to the [Releases page](https://github.com/jetstreamapp/soql-parser-js/releases).
529
+
-**npm** — `npm install @jetstreamapp/soql-parser-js`, then copy from`node_modules/@jetstreamapp/soql-parser-js/dist/lwc/soqlParserJs.js`.
530
+
-**Local build** — clone the repo, run `npm install && npm run build:lwc`, and find the file at `dist/lwc/soqlParserJs.js`.
526
531
527
-
1. Go to the "Code Tab"on the [npm](https://www.npmjs.com/package/@jetstreamapp/soql-parser-js) listing
528
-
1. Navigate to `/dist/lwc.index.mjs`
529
-
2. Install this project in an existing node library by running `npm install @jetstreamapp/soql-parser-js`
530
-
1. then navigating to the downloaded code in this folder: `node_modules/@jetstreamapp/soql-parser-js/dist/lwc`
532
+
Your SFDX folder should look like:
531
533
532
-
#### Build the files yourself
534
+
```
535
+
force-app/main/default/lwc/soqlParserJs/
536
+
├── soqlParserJs.js <-- copied from this project
537
+
└── soqlParserJs.js-meta.xml <-- your own (example below)
538
+
```
533
539
534
-
1. Clone/download the repository from GitHub
535
-
2. Ensure you have node installed (version 22or higher)
536
-
3. Install dependencies with `npm install`
537
-
4. Run `npm build:lwc`
538
-
5. The output will be placed in`/dist/lwc.index.mjs`
The deployed component is `c/soqlParserJs`. It is intentionally a library component (`isExposed=false`), so you don't drop it on a Lightning page directly — instead, import its exports from your own LWC:
553
575
554
576
```js
555
577
import { LightningElement } from'lwc';
556
-
import { parseQuery } from 'c/soqlParserJsLib';
578
+
import { parseQuery } from'c/soqlParserJs';
557
579
558
-
export default class SoqlParserJs extends LightningElement {
All public exports of the library (`parseQuery`, `composeQuery`, `formatQuery`, `isQueryValid`, the various utility functions, etc.) are available as named imports from `c/soqlParserJs`.
602
+
579
603
## CLI
580
604
581
605
Install globally or use `npx` to interact with the cli.
0 commit comments