2.0.4.5 release notes (LWC beta support)

Post date: Dec 13, 2018 3:20:28 PM

2.0.4.5

  • Lightning Web Components (LWC) Support (beta)

    • Note that you must also have access to an LWC-enabled early access organization until the feature is released for general-availability

    • Implemented

      • LWC development in both traditional/MDAPI and Salesforce DX projects

      • Code completion for standard and custom LWC components and their attributes

      • Reference injection/navigation for usages of ES6 properties and methods in template markup braced expressions

      • Integrated documentation for standard and custom LWC components and their attributes

      • Tabbed editor support for LWC bundle files

      • Tight integration with IntelliJ IDEA Ultimate Edition and WebStorm ES6 editor capabilities including:

        • Web Components template markup support

        • NPM-based dependency resolution - right-click on package.json and choose Run 'npm install' to instruct the IDE to resolve all NPM dependencies

        • Multi-language refactoring capabilities - renaming an ES6 property or method will update references in template markup braced expressions

      • File template-based creation of LWC components and supporting files:

        • Template markup

        • Component ES6 class/module

        • CSS style

        • meta.xml file

        • ES6 support/helper classes

        • Jest tests

    • Not Yet Implemented / Known Issues

      • ES6+ support in IntelliJ IDEA Community Edition (CE). The limited support for JavaScript and CSS in CE is provided by a JavaScript parser without ES6+ support and with no knowledge of technologies such as NPM. As a result, JavaScript features in CE will be very limited relative to the experience offered by IntelliJ IDEA Ultimate Edition (UE) and WebStorm (WS) which include JetBrains' full HTML5/JavaScript/CSS editors and framework support. While I may look for an alternative JavaScript parser to provide better ES6 handling in CE, the LWC experience will always be dramatically better when using IC with either UE or WS.

      • Proper handling of special import...from '@salesforce/* directives in ES6 files. This will be be addressed shortly.

      • Code completion for component attributes with constrained/enumerated values. This information is not yet available in Salesforce's standard component definitions.

      • Some valid attributes of system components are also missing from Salesforce's standard component definitions and will therefore not be offered as code completions until those omissions are addressed.

      • Fully-integrated Jest testing. IntelliJ IDEA Ultimate Edition and WebStorm provide first-class support for Jest test execution. However, currently there is some configuration/context that must be provided to the test runner for LWC Jest tests to execute successfully. I will be working with Salesforce to resolve this issue so that Jest tests can be executed in a first-class manner. In the interim, it is possible to execute Jest tests from the npmtool window (right-click on package.json and choose Show npm scripts, then double-click test:unit).

      • Tooling API-based deployment of LWC bundle files in traditional/MDAPI projects. There doesn't appear to be support for (typically faster) REST-based updating of LWC bundle files as there is for Aura bundle files. If/when the Tooling API provides support, IC will be updated accordingly. In the interim LWC components are always deployed via the Metadata API.

      • LWC deployment errors are not well-structured at this point. IC currently attempts to process deployment error messages to determine the correct associated source files for accurate error annotation, but there may still be unexpected/unhandled patterns and/or incorrect inference of the associated source file.