Skip to content

Latest commit

 

History

History
1342 lines (689 loc) · 70.5 KB

CHANGELOG.md

File metadata and controls

1342 lines (689 loc) · 70.5 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

9.1.10 (2025-01-13)

Bug Fixes

  • html: listener expressions in localized html content (df4f650)

9.1.9 (2025-01-08)

Bug Fixes

  • store: resolve id property of the argument only for model instance (de98582)

9.1.8 (2024-10-30)

Bug Fixes

  • types: add enumerable model listing to store.resolve() method (dd20611)

9.1.7 (2024-09-27)

Bug Fixes

  • router: check properly the debug mode for logging navigation events (5ddd74c)

9.1.6 (2024-09-20)

Bug Fixes

  • cache: throw when update internal properties of the target (#274) (52f5053)

9.1.5 (2024-09-06)

Bug Fixes

  • store: error messages for empty array and nested objects (bd9dc13)

9.1.4 (2024-09-06)

Bug Fixes

  • define: call reflect method if observe is not set (cce3efd)

9.1.3 (2024-09-03)

Bug Fixes

  • utils: add global debug mode (77cfefa)

9.1.2 (2024-08-21)

Bug Fixes

  • cache: throw an error when assert while getting the value (9cc25c0)

9.1.1 (2024-07-12)

Bug Fixes

  • store: clear or remove records only for null value (a3e0a0b)

9.1.0 (2024-07-08)

Features

  • layout: add hover and any-hover predefined media queries (b3dc67c)
  • store: add record property type (#260) (8b1f308)

9.0.0 (2024-06-13)

This major release comes with several breaking changes, which may affect your code. Follow the instructions from the Migration Guide section in the documentation.

⚠ BREAKING CHANGES

  • The content property is no longer supported. The render property must be used. In some cases, usage of the shadow option might be required.
  • get and set methods must be replaced with value option. Properties no longer reflect value to the corresponding attribute by default. The new reflect option must be set to true.

Features

  • remove content property & add shadow mode detection to render property (#258) (97f8843)
  • replace get and set methods with unified value option (#232) (258e41f)

Bug Fixes

  • cache: refactor access to cached model for get method (57e2b72)
  • router: prevent from throwing when browser pushes null state (3208959)
  • store: sync method should not trigger storage get of the model (36d6e39)

8.2.23 (2024-05-06)

Bug Fixes

  • cli: extract placeholder index in ternary operator (3d514d4)
  • store: store pointer for model placeholder (4d42296)

8.2.22 (2024-04-23)

8.2.21 (2024-04-19)

Bug Fixes

  • define: Nullish value resolves to empty string (9932b99)
  • store: Error message for type error in storage set method (dbff629)
  • store: Memory-based storage returns null for non-existing instance (d224450)

8.2.20 (2024-04-16)

Bug Fixes

  • define: value reflects attribute in observe callback (07b9334)
  • html: add fallback for camel-cased property name (bdd8716)
  • perf: optimize loops in definition and template engine (4bf7e86)

8.2.19 (2024-04-15)

Bug Fixes

  • store: pass through record id as it is (a5d9165)
  • store: stringify id of list model items (11f7625)

8.2.18 (2024-04-10)

Bug Fixes

  • store: Pass id directly to the store.get method without type change (da30368)

8.2.17 (2024-04-09)

Bug Fixes

  • cache: move initial value from attribute to the element constructor (4e111dd)
  • types: ModelValue may be listing (#250) (f24627f)

8.2.16 (2024-04-05)

Bug Fixes

  • router: navigate when browser triggers the popstate event (eaa1bc6)

8.2.15 (2024-04-03)

Bug Fixes

  • router: multiple dialogs navigation minor fixes (b792c0f)
  • router: prevent loop of focus events on multiple dialogs (b78e7c4)
  • store: clear model with loose set to true (dda4f91)
  • types: Strict store types (#246) (9aba4be)

8.2.14 (2024-03-21)

Bug Fixes

  • types: id result function should be a ModelIdentifier (32afb12)

8.2.13 (2024-03-21)

Bug Fixes

  • store: store factory function id should be always a string value (faec4c6)
  • store: store factory with overloaded definitions (3a90d6b)
  • types: Add missing array indicator to result of the children factory function (f29902f)
  • types: Add missing result undefined type to store factory when id option is used (daac11f)
  • types: Update generic of type Model<M> (#243) (7d5cf8f)

8.2.12 (2024-03-20)

Bug Fixes

  • store: resolve number 0 to correct model identifier (bbf280b)

8.2.11 (2024-03-08)

Bug Fixes

  • store: resolve to the current state of singleton model for draft mode (64b4474)

8.2.10 (2024-01-10)

Bug Fixes

  • cache: Clear deps and context when get value from cache (#230) (ec6f8b1)

8.2.9 (2023-12-19)

Bug Fixes

  • router: add view to the stack of all parents (f0cbe51)

8.2.8 (2023-12-07)

Bug Fixes

  • cache: clean up not reachable removal of deps (c1cb4f7)
  • store: Use id from the current draft when id is falsy (a52bf00)

8.2.7 (2023-12-04)

Bug Fixes

  • store: unique instance of the draft without an id for each component (#222) (a06a266)

8.2.6 (2023-11-28)

Bug Fixes

  • html: add support for multiple class names as string (a6f52ba)

8.2.5 (2023-10-16)

Bug Fixes

  • cache: use array instance instead of set iterator (c06c178)
  • store: add id to listing type placeholder (cc0c9d9)

8.2.4 (2023-09-15)

Bug Fixes

  • layout: make zero specificity for root styles with shadowRoot (16d7b2d)

8.2.3 (2023-09-13)

Bug Fixes

  • html: table elements with attribute expressions (#212) (ed333a5)
  • store: Return instead of throw when clear unused model definition (1e4be86)

8.2.2 (2023-07-11)

Bug Fixes

  • store: add test for clear case & update docs (d1fd7f1)
  • store: Unavailable localStorage for offline caching (8287593)
  • store: use GC for store.clear() when clearValue is set (b7aea14)

8.2.1 (2023-06-14)

Bug Fixes

  • define: minor performance refactoring (53464b1)
  • replace global helper with globalThis (3976121)
  • types: update package.json exports to include types (#208) (d9afc8b)

8.2.0 (2023-05-18)

Features

  • html: Add support for Transition API and use helper method (8cb25c3)
  • layout: Layout engine as a stable feature (e55756b)
  • mount: Mount component definition to existing DOM element (3dc58ab)
  • router: Add transition option (a04c32e)

Bug Fixes

  • cache: run observe callback synchronously on startup (f34fca8)
  • cli: extract - better path support in description (ea49577)
  • define: Reflect back primitive values for value defined as undefined (333d989)
  • html: prevent setup styles for template update (8439def)
  • layout: add generic values special rule (8ce6326)
  • layout: use layout engine only if attribute is present (a366878)

8.1.15 (2023-04-13)

Bug Fixes

  • html: refactor styles injection in adoptedStyleSheets (04d1fa9)

8.1.14 (2023-03-10)

Bug Fixes

  • layout: insert rules before hidden selector (8173d42)

8.1.13 (2023-01-16)

Bug Fixes

  • router: better support for restoring scroll position on iOS (8c50fba)

8.1.12 (2022-12-23)

Bug Fixes

  • layout: layout flag in html.resolve() helper method (77d990d)
  • layout: set lowest specificity for content templates (3ef6311)

8.1.11 (2022-12-20)

Features

  • define: define.from() method for bundlers (8239bc0)

Bug Fixes

  • html: clear out duplicated helper methods from svg namespace (a980819)
  • layout: move box-sizing to the size rules (9e8b7ae)

8.1.10 (2022-12-07)

Bug Fixes

  • layout: Add padding rule with box-sizing for display types (9b31b87)
  • layout: support for multiline attribute value (a88f101)
  • router: delay restore focus when navigate (safari) (d6ba541)

8.1.9 (2022-11-17)

Bug Fixes

  • cache: setting circular dep of the context should not trigger dispatch (#203) (33f4a6c)
  • define: run observe method after all connect callbacks (f8c7b0b)
  • html: more strict table mode for template signature (631c164)
  • layout: update flexbox defaults for overflow scroll (80350a9)
  • localize: Whitespace for the key should match cli tool (a4c5889)

8.1.8 (2022-11-16)

Bug Fixes

  • html: correct signature creation for form family elements (#201) (3767f60)

8.1.7 (2022-11-10)

Bug Fixes

  • layout: support contents display type (a7dba08)
  • layout: use layout engine in nested templates in array items (67f3a76)

8.1.6 (2022-10-31)

Bug Fixes

  • cache: remove suspend feature (30ac94e)
  • define: defer connect & disconnect callbacks (cd964a5)
  • refactor forEach to for-of in core sources (c2e71c0)
  • refactor reduce to for-of in core sources (7918737)
  • router: clean up dev code (e16e35f)
  • router: clear history state when root router disconnects (2f73e81)
  • store: listing model stringifies to its id (82da9a1)
  • store: prototype should not contain enumerable properties (8b16963)

8.1.5 (2022-09-27)

Bug Fixes

  • layout: support negative dimensions (6b6c01c)
  • router: focus trap and scroll clearing for dialogs (db8a80a)

8.1.4 (2022-09-21)

Bug Fixes

  • layout: inset rule with an argument (43d922f)
  • layout: use textContent for style element fallback (e915942)
  • store: offline list model should contain id (d1201ef)

8.1.3 (2022-09-16)

Bug Fixes

  • store: empty nested array with primitive values (8df84d2)
  • store: resolve with support for using model definition (95aa812)

8.1.2 (2022-09-14)

Bug Fixes

  • router: clear state params if they equal defaults (2bc0ed4)
  • store: factory for listing model without id should return a list (1b168aa)

8.1.1 (2022-08-26)

Bug Fixes

  • layout: add combined size rule for width and height (43ec3b3)
  • layout: remove flex-shrink from flexbox main rules (2efe206)

8.1.0 (2022-08-26)

Features

  • layout: Add support for layout engine (#194) (fe6e424)

Bug Fixes

  • store: clear nested internal object by null value (1310f47)
  • store: improved error message for value with validation (3ce6da9)

8.0.10 (2022-07-15)

Bug Fixes

  • html: apend style element in nested templates (f8135f6)
  • localize: clean up whitespace inside of the text (84ef932)
  • localize: detect is localize enabled, reordered expressions in message (7b5db37)
  • localize: simplify exclude strings regexp (eb39de8)

8.0.9 (2022-07-08)

Bug Fixes

  • html: remove styles from templates ids with better caching (c252636)
  • store: get singleton model before update to not overwrite properties with default values (2844e91)

8.0.8 (2022-06-30)

Bug Fixes

  • router: navigate back state offset related to history method (6806e44)

8.0.7 (2022-06-28)

Bug Fixes

  • localize: expressions in msg html and svg methods (1dbc279)

8.0.6 (2022-06-27)

Bug Fixes

  • router: prevent using unstable history.state when navigate back (a2cb3a9)

8.0.5 (2022-06-20)

Bug Fixes

  • router: support parameter in first part of the URL (7a86cbc)
  • store: add client-side validation for boolean values (e473689)
  • store: prevent iterating over the previous model props (f5a5673)

8.0.4 (2022-05-16)

Bug Fixes

  • cli: add espace character for chrome.i18n message (81431dd)

8.0.3 (2022-05-06)

Bug Fixes

  • cli: follow the symlinks in extractor command (12b6201)
  • localize: add options to support chrome.i18n custom translate function (7127c9d)
  • localize: support service workers context (6a9e890)

8.0.2 (2022-05-06)

Bug Fixes

  • types: Allow setting property as undefined for complex types (b7dd680)

8.0.1 (2022-05-04)

Bug Fixes

  • cli: multiline comments and regexp skip reorder (08d3412)
  • localize: remove circural dependncies in files (3d7353a)

8.0.0 (2022-04-28)

This major release comes with several breaking changes, which may affect your code. Follow the instructions from the Migration Guide section in the documentation.

⚠ BREAKING CHANGES

  • html: Legacy Edge and other browsers which does not support Shadow DOM are no longer supported

Features

  • localize: Add support for localization process (828e3c9)

Bug Fixes

  • html: Drop support for the Shadow DOM polyfill (961922b)

7.1.0 (2022-04-19)

Features

  • store: observe callback for calling side-effect (a925d30)

7.0.6 (2022-04-15)

Bug Fixes

  • parent/child: Add host argument to parent and child factories. (#188) (3d0dc3a)
  • store: clear should invalidate models with cache set to true (55ca7fa)

7.0.5 (2022-02-03)

Bug Fixes

  • store: support using store in service workers (a23bfd9)

7.0.4 (2021-12-31)

Bug Fixes

  • define: omit setting attribute on connect when not reuqired (8565822)
  • html: warning message for not defined elements in the template (b000b23)

7.0.3 (2021-12-17)

Bug Fixes

  • router: restore scroll restoration when navigate (9a6e46b)

7.0.2 (2021-12-16)

Bug Fixes

  • router: add manual scroll restoration (490cbee)

7.0.1 (2021-12-16)

Bug Fixes

  • define: reflect back properties only for primitives (398d92c)
  • router: scroll to top on push navigation on iOS (8a99f68)

7.0.0 (2021-12-08)

This major release comes with several breaking changes, which may affect your code. Follow the instructions from the Migration Guide section in the documentation.

⚠ BREAKING CHANGES

Features

Bug Fixes

  • cache: don't clear cached values when clean context (f0cd683)
  • define: add attr check in condition for perf. improv. (7f969bf)
  • define: add strict mapping for array of strings (28a4d5a)
  • define: remove suppor for undefined value (6664c5b)
  • define: revert support for undefined value (892c1ab)
  • define: simplify values and use get/set methods for computed properties (5452a9f)
  • html: clean unused condition for node resolver (740395b)
  • router: apply all params in url for nested entries (6793d09)
  • router: avoid setting undefined in history state, clearer debug message (f3bf387)
  • router: collapsed debug, clear hash from url, update not defaults (d067560)
  • router: debug method with value, cleaner debug logs (a98b16a)
  • router: delay the scroll restoration for the render process (cecab42)
  • router: observe writable props and update entry state (4a49192)
  • router: refactor matching browser url function (438c74c)
  • router: resolve event returns passed promise (cda672d)
  • router: update url and state only when needed (ddded3b)
  • router: use full url as a default option value (47d302d)
  • router: use hash from url only when view id is detected (1755736)
  • store: correct prototype for mapping state of the model in store factory (a7eb601)
  • store: detect circular references in offline serialization (6902784)
  • store: factory with id resolving to undefined, draft models without id (83bcc1d)
  • store: freeze default export (1f555d1)
  • store: make factory writable only for enumerables with id option (c220efc)
  • store: merge nested model data when it is updated (cc3c735)
  • store: remove support for shorter options syntax (ee6ff70)
  • store: return null for enumerables without id (82b0c9a)
  • store: show only nested error if the property is set (f9ddd5c)
  • store: use attribute fallback for enumerables in factory without options (c06b0ba)
  • store: use cache layer for computed property to ensure correct value when related model has changed (1524161)
  • store: use correctly the value from singleton draft model (11ff0e1)
  • store: use predefined error message over the result of validate function (0ecf6da)
  • store: use saparate space for drafts, clear models with id (de18b0e)
  • store: use undefined over the null value for factory (9f58c99)
  • types: add missing function resolver for stack option (d199d94)
  • types: Rename Hybrids type to Component (cf15619)
  • types: store storage result with optional fields and id references (de96721)
  • types: update types according to redefine refactor (a2f4921)

6.1.0 (2021-08-30)

Features

  • store: offline mode for external storages (#175) (345821b)

Bug Fixes

  • define: omit tag property when HMR updates definitions (74bcc63)
  • store: a number for offline mode removes cached values after the threshold (16f036a)
  • store: clear values for empty result for offline cache (a1071b4)
  • store: don't throw for async setup offline key (fd23eaf)
  • store: move offline threshold check to model definition (edb22e4)
  • store: prevent from lower offline values in nested models (1147732)
  • store: throw error for default get action (1b011a1)

6.0.0 (2021-07-17)

⚠ BREAKING CHANGES

  • store: From now, for external storage, the result of the list action will not invalidate when the model instance is changed. The items within the list are still updated, but deletion or creating a model instance won't update the list unless you set the storage loose option to true.

    However, the default value change only applies to listing enumerable models with external storage, which can be changed by the user. For most of the cases, you should ok, without additional change in the code.

  • define: Passing a map of components to the define() function is no longer supported. Object argument will be interpreted as a tagged component definition. A preferred way to refactor old code is to extend the definition of the component with the tag property, and pass definitions to the define() function as a list of arguments. If your definition contains tag property with another purpose, you can still use the define(tagName, descriptors) version.

    From:

    const MyElement = { ... };
    const MyOtherElement = { ... };
    
    define({ MyElement, MyOtherElement });

    To:

    const MyElement = { tag: "my-element", .. };
    const MyOtherElement = { tag: "my-other-element", ... };
    
    define(MyElement, MyOtherElement);

Features

  • define: replace call for a map of components to tagged component definitions (#170) (5bffc98)

Bug Fixes

  • property: add missing support for observe method (1cfd983)
  • store: set loose option default value to false (#172) (ae7e1c5)

5.4.0 (2021-06-23)

Features

  • store: loose option in the store storage for listing enumerables (883c720)

Bug Fixes

  • cache: clean deep suspended contexts (0d08645)
  • store: disable global invalidate for draft models (50e31bb)
  • store: force fetching model when clear with option se to false (43e55ec)
  • store: keep error state when model updates (93b5838)
  • types: overload store methods for listing enumerables (794e6fb)
  • types: proper connect host key value (63f9648)
  • types: store id option as a function (7f1893d)
  • types: use declare module instead of namespace for better import support (a45477c)

5.3.3 (2021-06-02)

Bug Fixes

  • cache: add force option to invalidate callback (#167) (91d6ea8)
  • cache: clean contexts on get and set (26854cb)
  • cache: unresolve deep contexts of suspened target (b4bb898)
  • store: computed property saves value in-place (1a7ab52)

5.3.2 (2021-05-28)

Bug Fixes

  • cache: avoid recaluclation when deps did not change (fa3544e)
  • cache: clear entries references with greater precision (159ae44)
  • cache: memonize last value of the property for reconnected elements (9fb45ec)
  • cache: optimize performance of context control (d18d855)
  • html: replace elements only if does not equal to last value (4160352)
  • store: support a list of models in ready & promise guards (9c295d4)
  • types: better result type of define function (50160c2)
  • types: render & content type for direct factory usage (0ed5156)

5.3.1 (2021-05-16)

Bug Fixes

  • html: html.set uses detail.value for general element support (7e0c397)
  • property: reflect zero number type in attribute (8b98c72)
  • types: clear & strict major types (9fb97f7)

5.3.0 (2021-05-14)

Features

  • html: extend resolve helper support to all content values (0ede2e8)
  • property: sync attribute value for primitive types (4337203)
  • store: writable factory for enumerables with undefined id (c62d5df)

Bug Fixes

  • define: keep lastValue for HMR update (bdff4c0)
  • html: avoid get property before set, memoize property type (bb863c7)
  • html: use property where possible for combined expressions (baf5ead)
  • render: optimize performance of shadowRoot generation (564d875)
  • store: clear lastValue for draft mode (c155fed)

5.2.2 (2021-04-09)

Bug Fixes

  • html: check text node twice, as it can be splitted in the compile process (#153) (cec63c8)

5.2.1 (2021-04-09)

Bug Fixes

  • html: remove missing element check, clean code (#153) (79614c9)
  • types: property values & property factory (43b9102)

5.2.0 (2021-04-06)

Features

  • store: adds ref method for self reference and import cycles (93e451e)
  • store: sync method for server side updates (9de6140)

Bug Fixes

  • npm: use recommended exports and main fields (e2605e7)
  • store: invlidate listing when nested list model updates (05ffae6)
  • types: allow optional property in model definition (0f3c660)
  • types: clean storage definition (9bbffdc)

5.1.0 (2021-03-26)

Features

  • html: add css helper method for tagged template literals support (8a3ac0d)
  • store: resolve method for simplier access to pending instances (38b40e2)

Bug Fixes

  • store: schedule set method in pending state (00fb0f5)
  • types: store model fixes, descriptor type update with key mapping (53acb31)
  • types: support nested partial values (a810884)

5.0.2 (2021-03-14)

Bug Fixes

  • store: allow updating the last stale instance (2603bc0)

5.0.1 (2021-03-12)

Bug Fixes

  • cache: use target of entry in suspend condition (86ddd19)
  • types: reflect removal of custructor support in define function (d6742d6)
  • typescript: content type, optional id in store (e03a63b)

5.0.0 (2021-03-09)

⚠ BREAKING CHANGES

  • define: define() no longer supports defining external custom elements with a custructor parameter. Use customElements.define() API directly.
  • define: content property set as a function must be wrapped to work as before:
    const MyElement = {
      // from
      content: () => { ... },
      // to
      content: {
        get: () => { ... },
      },
    };
  • /esm and /lib paths are no longer generated - use /src with ES2015+ syntax
  • /dist path is no longer generated - use unpkg.com/hybrids in module scripts for direct usage
  • process.env.NODE_ENV is removed from the source code - no more prod/dev modes

Features

  • define: content property translates to render factory with Shadow DOM turned off (90c0f8c)
  • define: remove constructor support in define method (d91eec7)
  • html: support for nodes in expressions (636872a)
  • Drop support for IE11 (5cf1e3f)

Bug Fixes

  • cache: simplified resolving algorhythm with suspense feature (f9ed988)
  • html: remove template instance from the shadowRoot (fb056cb)
  • store: invalidate list type when nested model is fetched (18d3ad7)
  • store: rewrite id from model to draft on submit (81d833f)
  • typescript: simplified types (2b4f65f)

4.3.4 (2021-01-14)

Bug Fixes

  • html: allow multiple browser autocomplete for store models (baca71a)
  • store: create mode for singletons in draft mode, placeholders connected to configs (d69b63e)

4.3.3 (2020-10-26)

Bug Fixes

  • store: dont rewrite id for list type in async storage (2196fe9)

4.3.2 (2020-10-26)

Bug Fixes

  • store: don't rewrite id for list type (bee7d1c)

4.3.1 (2020-09-14)

Bug Fixes

  • mark no side effects for better tree-shaking (4397aa6)
  • store: clear error message for not found case (4ad5ce3)

4.3.0 (2020-08-06)

Features

  • define: Hybrid constructor without definition in the registry (c73b5af)
  • store: global state management (#85) (f27fc8a)

Bug Fixes

  • html: print logs in dev environment for expression errors (a75f415)
  • html: proper placeholder resolve in case of an error (8f1019c)

4.2.1 (2020-05-31)

Bug Fixes

  • cache: removes unnecessary set protection guard (#116) (72ae0ce)

4.2.0 (2020-05-26)

Features

  • html: adds support for constructable stylesheets (#112) (80ad928)

4.1.9 (2020-05-09)

Bug Fixes

  • define: rewire own props values after upgrade (#115) (e849849)

4.1.8 (2020-05-01)

Bug Fixes

  • cache: deps should be always restored (7f62207)
  • html: remove circular dependencies (adda038)

4.1.7 (2020-03-31)

Bug Fixes

  • cache: restore deep deps for observed keys (ee85006)

4.1.6 (2020-03-05)

Bug Fixes

  • node: do not transpile es2015+ code for the node environment (#100) (047b6df)

4.1.5 (2020-02-26)

Bug Fixes

  • cache: add guard for accessing entry contexts property (#96) (e6444b0)
  • cache: ensure contexts are set in the observe setup (df9a823)
  • html: broken property names in template with all whitespace characters (#97) (14c415f)

4.1.4 (2020-02-24)

Bug Fixes

  • cache: add guard for accessing entry contexts property (#96) (4b8a916)

4.1.3 (2020-01-31)

Bug Fixes

  • property: correct attribute value for other than booleans (49a9eb1)

4.1.2 (2020-01-28)

Bug Fixes

  • cache: optmize context clean up for observed property (39baaa8)
  • html: fix replacing event listener callback (c64f4fd)
  • types: dispatch first argument (fb76ece)

4.1.1 (2020-01-17)

Bug Fixes

  • render: allow update before schedule; render call should return target (#87) (905b7af)
  • types: missing dispatch, minor template fixes, docs update (de328c1)

4.1.0 (2020-01-14)

Features

4.0.4 (2020-01-08)

Bug Fixes

  • html: properly walk parent nodes for ShadyDOM polyfill (9e52b2f)

4.0.3 (2019-11-12)

Bug Fixes

  • cache: avoid memory leak in contexts for complex elements structure (8dc72df)
  • property: fixing error message (#54) (92f7939)

4.0.2 (2019-06-05)

Bug Fixes

  • html: nested custom elements in template break indexing parts (4c2ee3f)

4.0.1 (2019-06-04)

Bug Fixes

  • define: hmr in development mode only uses connect/disconnect callbacks (d74685e)
  • html: clear last arguments when template changes (d117ba8)

4.0.0 (2019-05-29)

Features

  • define: change detection refactor (#51) (d8f7365)
  • define: exclude objects without descriptor methods from translation process (0a3e279)

BREAKING CHANGES

  • define: Change detection mechanism no longer dispatches @invalidate DOM event. For side effects use the observe() method from the property descriptor. Read more in descriptors section of the documentation.
  • define: Objects without descriptor methods are no longer translated to property factory. You have to explicitly use property({...}) as the descriptor value. However, translation for array instances works as before (it always translates them to property factory). Read more in translation section of the documentation.

3.0.2 (2019-05-17)

Bug Fixes

  • render: minor performance refactor fixes (85b7b46)

3.0.1 (2019-05-16)

Bug Fixes

  • cache: minor performance refactor (c2c42f5)
  • html: minor performance refactor (07d0d28)
  • render: clear startTime fix & missing test (c48711d)
  • render: update sheduler refactor for performance boost (0ed17e4)
  • utils: memonize camelToDash result (18fa15c)

3.0.0 (2019-05-09)

Features

  • html: set helper for event callbacks (993c52b)
  • shim: Remove shim.js in favor of @webcomponents/webcomponentsjs bundle (8c9b89b)

BREAKING CHANGES

  • shim: hybrids/shim entry is no longer available. For older browsers support use @webcomponents/webcomponentsjs package.

2.0.2 (2019-03-05)

Bug Fixes

  • html: clear array items cache when value changes (f32fe1a)

2.0.1 (2019-03-04)

Bug Fixes

  • html: allows property expressions inside of table elements (92ce234)
  • test: edge and ie broken test fixes for the newest shadydom version (9cc7ad7)

2.0.0 (2019-01-08)

Bug Fixes

  • define: Translate only objects without get, set and connect keys (661dd32)
  • errors: simpler error messages (17b83e7)
  • html: add styles formatting and list separator (3331ee7)
  • utils: Support acronyms in pascalToDash fn. (85b7c17)

Features

  • html: add style helper (a3c552a)
  • process.env fallback object for browsers usage (f840606)

BREAKING CHANGES

  • define: Property as an object with connect key will not translate to property(value).

1.5.0 (2018-12-07)

Bug Fixes

  • property: remove unused default argument (312664e)

Features

  • html: template engine refactor (50eb13d)

1.4.2 (2018-11-01)

Bug Fixes

  • utils: use window object instead of global proposal (#17) (84d1942)

1.4.1 (2018-10-04)

Bug Fixes

  • children: trigger invalidate host if one of children changes (33e9412)
  • define: remove element class bridge thanks to babel v7 (c0d6c9a)

1.4.0 (2018-09-25)

Features

  • render: add options object for shadowRoot control (#14) (d56f028), closes #13

1.3.1 (2018-08-29)

Bug Fixes

  • cache: ensure calculation of deep dependency state (0f96ced)

1.3.0 (2018-08-28)

Bug Fixes

  • cache: stringify target with tag name in error messages (7b3752a)
  • cache: update cache only when value getter changes (990f00d)
  • html: upfront remove unused parts when update array expression (aa6c8de)

Features

  • define: define with two modes for support of a map of elements (12984a0)
  • html: throws for missing element defintions in dev environment (4067ff5)

1.2.1 (2018-08-13)

Bug Fixes

  • hmr: sync render and html define helper for better HMR support (66250d4)
  • html: consistent order of attribute expressions during compilation (d391839)
  • parent: call check function only if hybrids are defined (b6527aa)

1.2.0 (2018-07-18)

Bug Fixes

  • html: svg element expressions always set attribute value (6000823)

Features

  • children: function as an argument for complex conditions (5583f01)
  • parent: function as an argument for complex conditions (bd942f4)

1.1.4 (2018-06-12)

Bug Fixes

  • define: translate to render factory only if render key is a function (120a5ae)
  • html: allow non-unique keys for array items with efficient re-order (db2f9aa)

1.1.3 (2018-06-07)

Bug Fixes

  • html: ensure unique template id, exclude comments walking nodes (609c884)

1.1.2 (2018-06-06)

Bug Fixes

  • cache: prevent multiple get call after invalidate (c193107)
  • html: Support for external custom elements with shadow dom set in constructor (fd16d8a)
  • property: freeze only not null object values for IE11 support (cd378f7)

1.1.1 (2018-05-30)

Bug Fixes

  • cache: invalidate should increase state for related values (a9f29ea)

1.1.0 (2018-05-26)

Bug Fixes

  • children: dynamic added child should properly re-render element (74a1009)

Features

  • dispatch: return host.dispatchEvent() result (#4) (474dc10)
  • shim: include required web api polyfills for IE11 directly in shim (89f2d60)

1.0.4 (2018-05-24)

Bug Fixes

  • deps: Use npm version of shims to support StackBlitz (9899247)

1.0.3 (2018-05-24)

Bug Fixes

  • children: defer children invalidation to not cache value too early (5d4d72f)
  • render: ShadyDOM slotted elements invalidation event dispatch (9af285c)

1.0.2 (2018-05-22)

Bug Fixes

  • cache: clear previous value only if flag is set (856e5c8)
  • css: use ShadyCSS api to support css custom properties in IE11 (b2062c8)
  • html: expressions in table family elements (87f7a55)

1.0.1 (2018-05-18)

Bug Fixes

  • hmr: catch render errors and clear state for module replacement (#3) (168340c)

1.0.0 (2018-05-14)