Skip to content
This repository has been archived by the owner on Sep 3, 2022. It is now read-only.

Releases: composor/composi

Version 3.2.1

25 Sep 15:12
Compare
Choose a tag to compare
Fixed issue where mount was prepending instead of appending.

1. Mount function is supposed to append new component to container. This has been updated to do so.

Version 3.2.0

15 Sep 19:02
Compare
Choose a tag to compare
DataStore Component mounts automatically.

1. DataStore components now mount automatically, using the state of their dataStore.
2. Update DataStore Component test for new mounting functionality.
3. Update DataStore test  to check for automatic mounting.
4. Update merge to accept multiple objects. If a single object is passed int, it clones it. Merge now does a deep clone of objects.
5. Added a new utility function: getType. This returns the type of primitive and object types as a capitalized value: Null, Undefined, String, Number, NaN, Function, Array, Object, RegExp, Symbol, etc.
6. Renamed isSameVNode to areEqual for more generic use for value comparison.
7. Updated Component class to use getType and isSameObject.
8. Added unwatch to Observer class. Pass in the event to unwatch. This cancels all watchers for that event.
9. Updated observer test for unwatch.

Version 3.1.3

27 Aug 13:18
Compare
Choose a tag to compare

This version has no dependency on gulp for the build process. Bunding, processing with Babel and testing is all don't through nom scripts.

New projects created with the Composi cli are still setup to use gulp for the build, but we are looking into removing that dependency as well.

Version 3.1.0

25 Aug 04:42
Compare
Choose a tag to compare

This release provides several new classes: DataStore and DataStoreComponent. Together these provide state management for stateless class components.

Version 2.6.5

03 Aug 16:36
Compare
Choose a tag to compare
Keep component state immutable when using setState

1. Updated how setState works when using a callback.
2. The prevState is now a copy of the original component state.
3. This means that callback must return prevState for component state to be updated.
4. This, of course, will also trigger a re-render of the component, if state did change.
5. Refactored component update method to throttle updates at intervals of 16.66 milliseconds (60 frames per second).
6. Updated component.html test for setState changes.

Version 2.5.3

22 Jul 14:26
Compare
Choose a tag to compare
Fixed bug where passing DOM node to mount wasn't getting accepted.

1. Now you can pass a DOM node or string as the container in which to mount a functional component.

Version 2.5.1

12 Jul 13:46
Compare
Choose a tag to compare
Updated JSDoc Types.

1. Imported types as typedef instead of importing inline.
2. Reduced the number of type casts by changing types from `Node` to `Element` where possible.
3. Add `checkjs` to package to run  tsc to verify TypeScript parsing passes.
4. Build script now automatically runs type checker.

Version 2.5.0

03 Jul 12:38
Compare
Choose a tag to compare
JSDoc type updates.

1. Used /** @type {Object.<string, any>}*/(node).newProperty, casting Node to generic object, allowing addition of new properties.
2. Added other minor type improvements across files.
3. Removed @description tag since the first block of text in a JSDoc comment is treated as the description automatically.
4. Updated test files to use favicons to avoid unnecessary warnings in browser console.
5. Moved build functionality from gulpfile to NPM command line script. Running Rollup from command line.
6. Added rollup.config.js file to project.

Version 2.4.11

29 Jun 12:33
Compare
Choose a tag to compare
Updated new project gulpfile.

1. The bundling script for new project was using deprecated "dest" property.
2. Updated that to "file".

Version 2.4.9

19 Jun 16:47
Compare
Choose a tag to compare
Using ts-ignore to avoid escaping expando properties.

1. Switched to using // @ts-ignore in code. This turns off type checking for that line of code.
2. Using this to avoid having to write element['mounted'].
3. Alternative:
// @ts-ignore
element.mounted