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 Results
These 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.
- Run
yarnfrom the top-level directory to pull all dependencies and auto-link the local inter-dependencies between packages (i.e:soql-builder-uidepends onsoql-model, which depends onsoql-common). yarn buildto compile and buildyarn run lintto run static checks with eslintyarn run testto run automated tests
During 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.