Skip to content

Releases: lume/element

v0.5.8

15 Feb 05:47
Compare
Choose a tag to compare

Features

  • add a hasShadow property that subclasses can override to specify if a ShadowRoot gets created or not. This is easier than having to override the root getter in order to not use a ShadowRoot. 860aac1

v0.5.7

17 Jan 20:46
Compare
Choose a tag to compare
  • update to solid-js@^1.0.0 via updating @lume/variable. 🎉 Thanks for help @mosheduminer

v0.5.0

17 Jan 20:44
Compare
Choose a tag to compare

update lume/variable and solid-js with support for better ESM standards defined by Node

This is a breaking change because the new JSX/template support is in solid-js 0.24
has some API modifications. Components made
with this version of lume/element may not be interoperable with those
made with a previous version of lume/element because compile output will differ and will be
using slightly different APIs from solid's runtime. End usage hasn't changed.

v0.4.0

17 Jan 20:42
Compare
Choose a tag to compare
  • breaking: the update to lume/variable requires always using class decorators now (f.e. @reactive class {...} or @element class extends Element {...}), otherwise reactivity won't work in some build setups depending on whether the user's setup has the new class fields semantics or not ([[Define]] vs [[Set]] semantics). New tests have been added to ensure that decorators work in every build config permutation (TypeScript decorators with or without useDefineForClassFields, and Babel legacy or non-legacy decorators with or without loose mode for class properties)
  • This fixes some edge case bugs too

v0.3.2

02 Dec 17:49
Compare
Choose a tag to compare

Fixes issues with 0.3.0 and 0.3.1. Those versions have been deprecated.

v0.3.0

02 Dec 16:49
Compare
Choose a tag to compare

NOTE: This version was unpublished from NPM, and a needed fix was released in 0.3.2. Use ^0.3.2.

BREAKING CHANGE:

This changes templating a bit. All template props are set as attributes on builtin elements by default. On custom elements JSX props are set as JS properties by default. In JSX templates (and soon also with html tagged templates) any prop can be prefixed with attr: to force setting an attribute, or prop: to force setting a JS property. F.e. <some-element attr:foo={this.foo} prop:bar={this.bar} />

Any apps using @lume/cli for JSX compilation need to update to @lume/cli ^0.3.2.