Skip to content

Releases: runem/web-component-analyzer

v1.1.0

12 Jul 13:09
Compare
Choose a tag to compare

[1.1.0] - 2020-07-12

Fixed

  • Improved logic for resolving declarations and mixins (#172)
  • Added support for JSDoc syntax where type comes after name (eg. @fires my-event {MouseEvent}) (#165)

Added

  • JSDoc related utils are now exported from WCA (#171)
  • hasUpdated and updateComplete are now considered protected members for LitElement elements (#166)
  • Updated all dependencies.
  • It's now possible to traverse the entire inheritance tree using declaration.heritageClauses.
  • Added --inline-types CLI option that can be used to expand type aliases in order to inline types in the documentation (#140)

v1.0.3...v1.1.0

v1.0.3

12 Feb 17:52
Compare
Choose a tag to compare
  • Fix parsing of the fires jsdoc tag when className and namespace are included in the tag #139 a31d1a8
  • Add path to the experimental json output #143 226683b
  • Add strictNullChecks to compiler options for the analyzeText function #145 fd57636
  • fix --visiblity and --feature option formatting 65e337e
  • Add support for internalProperty LitElement decorator d8809c2

v1.0.2...v1.0.3

v1.0.2

18 Jan 15:55
Compare
Choose a tag to compare

Fixed

  • Fixed various problems when analyzing globs using the CLI on Windows
  • Fixed problem where discovering global features would not detect all feature
  • Fixed problems with the analyzeHtmlElement function
  • Fixed problem with resolving the value of PrefixUnaryExpression nodes. (#132)

Added

  • The CLI now supports --silent flag that prevents it from outputting progress to the console
  • The CLI now supports --markdown.headerLevel flag that sets the starting header level for the markdown format

v1.0.0...v1.0.2

v1.0.0

12 Dec 19:55
Compare
Choose a tag to compare

Added

  • Methods are now analyzed
  • @private, @protected, @public and @access jsdoc tags are now support (#106), (#126) (#105)
  • It's now possible to choose if private and/or protected members should be included in the output using --visibility protected CLI option (#112)
  • JSX typescript declaration files are now support (IntrinsicAttributes and IntrinsicElements) (#116)
  • Support for extending HTMLElement with members using Typescript declaration files
  • A list of used mixins for a given component is now included in the markdown output
  • Support for the @deprecated jsdoc tag (#103)
  • Support for specifying default css property values: @cssproperty {Color} [--my-color=red]
  • default is now included in the json format for attributes, properties and css custom properties
  • deprecated is now included in the json format for attributes, properties and events (#103)
  • The library ships with different module formats esm and cjs split in two modules api and cli. This makes it possible to use WCA in the browser (#118)
  • It's now possible to specify which featues should be analyzed
  • Emitted members now include metadata that flavors can add (eg. LitElement specific metadata)
  • Examples added using the @example jsdoc tag will be included in the markdown format.
  • Getter are now also analyzed, making it possible to emit readonly properties.
  • Support for the @readonly jsdoc tag
  • Support @param and @returns jsdoc tags
  • Support @ignore jsdoc tag
  • Add new flag to the CLI called --outFiles. This flag can take special values such as {dir}, {tagname} and {filename}. Read --help to learn more.
  • Add new flag to the CLI called --dry to test the analyzer without writing files.

Removed

  • It's no longer possible to emit diagnostics using the CLI
  • jsDoc has been removed from the json format

Fixed

  • Big internal refactor, including adding a lot of tests
  • Improved merging of component features (#101), (#124)
  • Improved performance by using caching and lazy evaluation where appropriate
  • Improved support for @type jsdoc (#67)
  • Improved jsdoc tag parsing. Default notation like @attr {string} [my-attr=123] is now supported
  • Using an object literal as default value no longer truncates to the first letter (#102)
  • Fixed problems with some default values (#130)

v0.1.21

29 Nov 14:37
Compare
Choose a tag to compare
  • Remove incorrect property check in the custom-element flavor. This fixes #123 3400d1e
  • Merge pull request #121 from aarondrabeck/attribute c9f89cc
  • Merge pull request #122 from aarondrabeck/css-property-types 4c91ba1
  • Adds parsing of type in js doc css property declaration. a341aaa
  • Output attribute name in JSON. a3c024e
  • Fix problem where object literal expressions wouldn't get correctly parsed c3fe025
  • Add links to online playground 8d456c1
  • Update documentation a24b375

v0.1.20...v0.1.21

v0.1.20

03 Nov 00:34
Compare
Choose a tag to compare
  • Don't include arrays with length 0 in experimental json format fb2d956

v0.1.19...v0.1.20

v0.1.19

02 Nov 23:22
Compare
Choose a tag to compare
  • Add support for css shadow parts. This closes #109 366d651
  • Fix issue where using 'false' as default value would be 'undefined' in the result d703062

v0.1.18...v0.1.19

v0.1.18

29 Oct 22:51
Compare
Choose a tag to compare
  • Merge pull request #108 from runem/dependabot/npm_and_yarn/mixin-deep-1.3.2 00eee1d
  • Update JSON format warning 58f22d7
  • Remove CircleCI badge 436317b
  • Merge pull request #111 from jrobinson01/fix-css-properties-in-json 91542c4
  • add css properties to JSON output 2fa74f0
  • Switch from circleci to github actions 9c63fd2
  • Bump mixin-deep from 1.3.1 to 1.3.2 919330f
  • Update dependencies 3422de3

v0.1.17...v0.1.18

v0.1.16

25 Aug 20:56
Compare
Choose a tag to compare
  • Implement support for nested mixin wrapper functions 70f989d
  • Check that the define function call is a member of customElements ab7388f

v0.1.15...v0.1.16

v0.1.12

01 Aug 22:24
Compare
Choose a tag to compare
  • Update Typescript dependency to ^3.5.1 c9069fa
  • Add experimental JSON output format 63092d8

v0.1.11...v0.1.12