This repo contains the source for SOQL Language Tooling features including:
soql-builder-ui
: SOQL Query Builder UI with LWCsoql-model
: SOQL queries internal modelsoql-common
: SOQL common utility library. Shared by Query Builder and Language Serversoql-data-view
: Web assests for displaying SOQL ResultsThese packages are used from Salesforce's SOQL VS Code extension which lives in repo salesforcedx-vscode.
If you are interested in contributing, please take a look at the CONTRIBUTING guide.
yarn
from the top-level directory to pull all dependencies and auto-link the local inter-dependencies between packages (i.e: soql-builder-ui
depends on soql-model
, which depends on soql-common
).yarn build
to compile and buildyarn run lint
to run static checks with eslintyarn run test
to run automated testsDuring development, you can work with a local copy of the salesforcedx-vscode
repo and configure it to use your local build of packages in your soql-tooling
repo using yarn/npm links. Example:
# Make global links available
cd soql-tooling
for P in packages/*; do cd $P; npm link; cd -; done
# Link to them from the VS Code SOQL extension package
cd salesforcedx-vscode/packages/salesforcedx-vscode-soql
npm install
npm link @salesforce/soql-builder-ui
With that in place, you can make changes to your soql-tooling packages, compile them, and then relaunch the whole salesforcedx-vscode
extension from VSCode to see the changes.
You can debug Jest test for an individual package by running the corresponding launch configuraiton in VS Codes RUN panel.