All notable changes to the "svelte-intellisense" extension will be documented in this file.
Check Keep a Changelog for recommendations on how to structure this file.
- 🔒 [Fixed] Upgrade all dependecies to latest version to solve known vulnarability issues.
- ✔ [Added] Add support ES6 default value assignment for method parameter Issue #75. Thanks for @ekhaled.
- ✔ [Added] Add support of method parsing when it assigned to identifier Issue #78. Thanks for @ekhaled.
- ✔ [Added] Extend typings to support
selfandtrustedevent modifiers [Issue #80]. - ✔ [Added] Introduce
JSDocTypeFunctionto support functions types in variable definitions and provide details about function parameters and methods. - ✔ [Added] Extend
JSDocTypeto support newJSDocTypeFunction - ✔ [Added] Improve type infering from assigned value. Currently support simple infering:
array,object,function. - 🛠 [Fixed] Fix the Issue #67, Issue #69: specifier comments are not parsed properly; Thanks to @ekhaled
- 🛠 [Fixed] Fix the Issue #72: Module context scripts look for the wrong attribute
- 🛠 [Fixed] Fix the Issue #83: Default value and keywords of exported aliases not merged.
- 🎉 [Misc] Update the ReadMe by @soft-decay.
- ✔ [Added] Implement support of imported types parsing, f.ex.
@type {import('../typings.d.ts').ExternalTypeClass}. In order to do this, new fieldimportPathintroduced toJSDocType, in the name property now it returns imported class name, f.ex.:ExternalTypeClass. - 🛠 [Fixed] Complete fix of Issue #1: Support parsing event names from top-level constant objects with accessing to their properties by naming strings. Introduce the new issue Issue #48 about supporting parse of event names by external references.
- 🛠 [Fixed] Fix the Issue #47, now all comments in markup are parsed correctly and attached to required items in document. Support JSDoc comment markup parsing in all places where comment can be used.
- 🛠 [Fixed] Fix the Issue #61, now slot parameter items enrich with all detailed information that was parsed from markup comment.
- 🛠 [Fixed] Spec: add the module definition typings to
typings.d.tsfile. - 🛠 [Fixed] Fix some edge-cases in script parsing logic.
- 🛠 [Tech] Refactor internal parser logic to make it easy to introduce new features, moves forward to TS support! ;)
- 🔥 [Breaking] Spec: change the
SvelteSlotParameterdefinition, to supportname,description,typefields, instead of many not relevant fields that was inherited fromISvelteIteminterface. - 🔥 [Breaking] Spec: change the
SvelteSlotItemdefinition, to improve consistency:- Rename
parametersproperty toparamsto be most likely the same asSvelteMethodItem. Old field still available until 5.* release.
- Rename
Thanks a lot @soft-decay for contributing in this release!
- 🛠 [Fixed] Fix Issue #42
- 🛠 [Fixed] Partially fixed Issue #1. Now event name correcly parsed if it provided by top-level constant of the same file. Thanks for @soft-decay
- ✔ [Added] Support to complete parsing of component method arguments Issue #39. Thanks for @soft-decay
- ✔ [Added] Support to parse return types and description for methods in component Issue #37. Thanks for @soft-decay
- ✔ [Added] Options validation, thanks for @soft-decay
- 🔥 [Breaking] API rework for component methods description:
argsproperty was renamed toparams;- Change the structure of
returnitem for methods:descproperty was renamed todescription;typeproperty now contains theJSDocTypeobject, instead ofstringtype with text representation of type. This can be gets fromtextproperty ofJSDocTypeobject;
- [Svelte2]: method arguments was presented with plain array with names, now that replaced with objects of
SvelteMethodParamItemtype;
- 🔥 [Breaking] Cleanup depricated code:
locproperty was removed, please uselocationsinstead, if you late with upgrade;valueproperty ofSvelteComponentItemwas removed, please useimportPathinstead
- 🛠 [Fixed] Fix Issue #35: Object literals not supported in @type keyword. Thanks for @soft-decay
- 🛠 [Fixed] Fix issue #5 (slots items have a private access level by default)
- 🛠 [Fixed] Fix issue #28 (Inline event handlers in markup cause errors when used without quotes)
- Change dependency from
htmlparser2to htmlparser2-svelte special fork of htmlparser2 to handle Svelte specific cases to parse markup
- Change dependency from
- 🛠 [Fixed] Fix issue #6 (Build a correct component name from a file name)
round.button.svelte -> RoundButton
- 🛠 [Fixed] Fix issue #27 (Events is not exposed from exported functions and arrow functions)
- 🛠 [Fixed] Fix issue #31 (Propogated events in markup should be parsed even it was before handled)
- 🛠 [Fixed] Fix issue #32 (Event is not registered when dispatched from functions used as a parameters of another functions)
- [Fixed] Solve issue #26, support
export { variables as var }statement. - [Added] now interface
SvelteDataItemprovides a new propertylocalNamewith information about internal name of component property.
- [Fixed] Solve vulnerability issues:
- Update
espreeto7.2.0 - Update
htmlparser2to3.9.2 - Add dependency to
eslintto fix issues after upgrading to new versions
- Update
- [Breaking] Increase requirement of Node.js to
10.0.0, Node.js v8 now is not supported, this is related with security isssues above. Please let me know if it still required.
- [Fixed] Now
keywordsfeature correctly supported.
Thanks to hontas for following changes:
- [Fixed] Svelte V3: Fix parsing of types for data items, defined by
@typekeyword.
Thanks to hontas for following changes:
- [Added] Svelte V3: Implement component documentation parsing provided by top level comment in HTML markup or in the JS section, marked with
@componentJSDoc attribute.
Thanks to Hostas for following fixes:
- [Fixed] Svelte V3: Improve type parsing for properties with default values.
- [Fixed] Svelte V3: In some cases
typeproperty was setup with wrong structure and data, now it fixed.
- [Fixed] Svelte V3: Fix parsing issues when anonymous functions are used in event handlers at markup (Issue #18)
- [Added] Svelte V3: Implement support of script element locations
- [Fixed] Svelte V3: Fix parsing when component have multiple
<script>blocks - [Added] Spec: Property
locationswas added to items and presents the list of item code locations - [Changed] Spec: Property
locfor items marked as depricated, seelocationsproperty instead
- [Added] Svelte V3: Add a new properties for data items:
originalNameandimportPath - [Changed] Svelte V3: Add support for multiple bindings to one data item, now
bindproperty of the item are array - [Changed] Property
valuefor component items marked as depricated and new proprtyimportPathare used now - [Fixed] Issues with parsing
- [Added] Svelte V3: Implement support for property binding parsing (
bind:property={...}) - [Added] Svelte V3: Implement support for event parsing which dispatched from code (
dispatch(...)) - [Added] Svelte V3: Implement support for event parsing which dispatched from markup expressions (
<button on:click="{() => dispatch(....)}">) - [Added] Svelte V3: Implement support for ref parsing (
bind:this={...}) - [Fixed] Spec: Property
SvelteDataItem.letchanged toSvelteDateItem.kind, that was named asletby mistake
- [Added] Support for V3 syntax
- [Added] Implement source locations provider for most of component symbols
- [Fixed] Fix and refactor param keyword parsing to handle some wrong cases (fix and close issue #7)
- [Fixed] Improve crash handling in parser logic, now all errors fall into
reject(...)method instead throwing up
- [Fixed] Fix issue when parsing types from JSDoc, cover more cases. Previously type
@type {('plain'|'plain-negative')}was not supported in case of-symbol
- [Fix] Fix
typings.d.tsfile to be importable
- [Fix] Fix issue with component name parsing with default features set (Missing feature
namein defaults features list) - [Added] Implement parsing of js types for data properties from
@typekeyword and from default value
- Initial release