Skip to content

Latest commit

 

History

History
195 lines (155 loc) · 13.5 KB

CHANGELOG.md

File metadata and controls

195 lines (155 loc) · 13.5 KB

Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Unreleased

Changed

  • Added a static getPropertyDescriptor method to allow easier customization of property accessors. This method should return a a PropertyDescriptor to install on the property. If no descriptor is returned, a property accessor is not be created. (#911)
  • The value returned by render is always rendered, even if it isn't a TemplateResult. (#712)

Added

  • Added @queryAsync(selector) decorator which returns a Promise that resolves to the result of querying for the given selector after the element's updateComplete Promise resolves (#903).
  • Added enableUpdating() to UpdatingElement to enable customizing when updating is enabled #860.
  • Added queryAssignedNodes(slotName, flatten) to enable querying assignedNodes for a given slot #860.
  • Added getStyles() to LitElement to allow hooks into style gathering for component sets #866.

Fixed

  • Ensure UpdatingElement allows updates when properties are set after calling super.update(). LitElement renders when updates are triggered as a result of rendering (#549).
  • Properties annotated with the eventOptions decorator will now survive property renaming optimizations when used with tsickle and Closure JS Compiler.
  • Moved style gathering from finalize to initialize to be more lazy, and create stylesheets on the first instance initializing #866.
  • Fixed behavior change for components that do not implement render() introduced in (#712) (#917)

[2.2.1] - 2019-07-23

Changed

  • Elements should now override the new _getUpdateComplete method instead of the updateComplete getter, for compatibility with TypeScript ES5 output, which does not support calling a superclass getter (e.g.super.updateComplete.then(...)) due to TypeScript#338.

Fixed

  • Fixed compatibility with Closure JS Compiler optimizations relating to static properties (#732).

[2.2.0] - 2019-06-11

Added

  • css tagged template literals now allow numbers to be used in expressions (#488).

[2.1.0] - 2019-03-21

Changed

  • LitElement.renderRoot is now public readonly instead of protected.

Fixed

  • Exceptions generated during update/render do not block subsequent updates (#262).
  • Initial update is scheduled at construction time rather than connected time (#594).
  • A reflecting property set immediately after a corresponding attribute now reflects properly (#592).
  • Properties annotated with the @query and @queryAll decorators will now survive property renaming optimizations when used with tsickle and Closure JS Compiler.

[2.0.1] - 2019-02-05

Fixed

  • Use lit-html 1.0 (#543).

[2.0.0] - 2019-02-05

Added

  • Add toString() function to CSSResult (#508)
  • Add a global version to window (#536)

Changed

  • [Breaking] Renamed unsafeCss to unsafeCSS for consistency with lit-html's unsafeHTML (#524)
  • Remove all uses of any outside of tests (#457)

Fixed

Fixed

  • Adds a check to ensure CSSStyleSheet is constructable (#527).

[2.0.0-rc.5] - 2019-01-24

Fixed

  • Fixed a bug causing duplicate styles when an array was returned from static get styles (#480).

[2.0.0-rc.4] - 2019-01-24

Added

  • [Maintenance] Added script to publish dev releases automatically (#476).
  • Adds unsafeCss for composing "unsafe" values into css. Note, CSSResult is no longer constructable. (#451 and #471).

Fixed

  • Fixed a bug where we broke compatibility with closure compiler's property renaming optimizations. JSCompiler_renameProperty can't be a module export (#465).
  • Fixed an issue with inheriting from styles property when extending a superclass that is never instanced. (#470).
  • Fixed an issue with Closure Compiler and (#470) (#476).

[2.0.0-rc.3] - 2019-01-18

Fixed

  • README: Fixed jsfiddle reference (#435).
  • Compile with Closure Compiler cleanly (#436).
  • Opt @property decorators out of Closure Compiler renaming (#448).

Changed

  • [Breaking] Property accessors are no longer wrapped when they already exist. Instead the noAccessor flag should be set when a user-defined accessor exists on the prototype (and in this case, user-defined accessors must call requestUpdate themselves). (#454).
  • Class fields can now be used to define styles, e.g. static styles = css and styles correctly compose when elements are extended (#456).
  • Styles returned via static styles are automatically flattend (#437).
  • Replace use of for/of loops over Maps with forEach (#455)

[2.0.0-rc.2] - 2019-01-11

Fixed

  • Fix references to @polymer/lit-element in README and docs (#427).
  • Fix decorator types causing compiler errors for TypeScript users. (#431).

[2.0.0-rc.1] - 2019-01-10

Changed

  • [Breaking] Changed NPM package name to lit-element

[0.7.0] - 2019-01-10

Added

  • Updated decorator implementations to support TC39 decorator API proposal (supported by Babel 7.1+) in addition to the legacy decorator API (supported by older Babel and TypeScript) (#156).
  • Added static get styles() to allow defining element styling separate from render method. This takes advantage of adoptedStyleSheets when possible (#391).
  • Added the performUpdate method to allow control of update timing (#290).
  • Updates deferred until first connection (#258).
  • Export TemplateResult and SVGTemplateResult (#415).

Changed

  • [Breaking] The createRenderRoot method has moved from UpdatingElement to LitElement. Therefore, UpdatingElement no longer creates a shadowRoot by default (#391).
  • [Breaking] Changes property options to add converter. This option works the same as the previous type option except that the converter methods now also get type as the second argument. This effectively changes type to be a hint for the converter. A default converter is used if none is provided and it now supports Boolean, String, Number, Object, and Array (#264).
  • [Breaking] Numbers and strings now become null if their reflected attribute is removed (lit#264)).
  • [Breaking] Previously, when an attribute changed as a result of a reflecting property changing, the property was prevented from mutating again as can happen when a custom converter is used. Now, the oppose is also true. When a property changes as a result of an attribute changing, the attribute is prevented from mutating again (lit#264))

Fixed

  • [Breaking] User defined accessors are now wrapped to enable better composition (#286)
  • Type for eventOptions decorator now properly includes passive and once options (#325)

[0.6.5] - 2018-12-13

Changed:

  • Use lit-html 1.0 release candidate.

Fixed

  • Types for the property and customElement decorators updated (#288 and #291).
  • Docs updated.

[0.6.4] - 2018-11-30

Changed

  • Update lit-html dependency to ^0.14.0 (#324).

[0.6.3] - 2018-11-08

Changed

  • Update lit-html dependency to ^0.13.0 (#298).

[0.6.2] - 2018-10-05

Changed

  • LitElement changed to a non-abstract class to be more compatible with the JavaScript mixin pattern (#227).
  • Update lit-html dependency to ^0.12.0 (#244).
  • Passes the component's this reference to lit-html as the eventContext, allowing unbound event listener methods (#244).

Added

  • A disconnectedCallback() method was added to UpdatingElement (#213).
  • Added @eventOptions() decorator for setting event listener options on methods (#244).

[0.6.1] - 2018-09-17

Fixed

  • Fixes part rendering and css custom properties issues introduced with lit-html 0.11.3 by updating to 0.11.4 (lit#202).

Removed

  • Removed custom_typings for Polymer as they are no longer needed (lit#186).

[0.6.0] - 2018-09-13

Added

  • Added @query(), @queryAll(), and @customElement decorators (#159)

Changed

  • Significantly changed update/render lifecycle and property API. Render lifecycle is now requestUpdate, shouldUpdate, update, render, firstUpdated (first time only), updated, updateComplete. Property options are now {attribute, reflect, type, hasChanged}. Properties may be defined in a static get properties or using the @property decorator. (lit#132).

Removed

  • Removed render helpers classString and styleString. Similar directives (classMap and styleMap) have been added to lit-html and should be used instead (lit#165 and lit/lit#486).

Fixed

  • The npm run checksize command should now return the correct minified size (lit#153).
  • The firstUpdated method should now always be called the first time the element updates, even if shouldUpdate initially returned false (lit#173).