apprun
Version:
JavaScript library that has Elm inspired architecture, event pub-sub and components
202 lines (140 loc) • 4.88 kB
Markdown
# Change Log
## Releases
* apprun@es5: 1.x, stable, es5
* apprun@latest: 2.x, stable, es2015, web component
* apprun@next: 3.x, dev, es2015, lit-html
## 1.23 / 2.23 / 3.23
* Support style attribute using string
* Support element event handler using string
* Support xlink:href in SVG
* Add -patch-vdom-on flag on component for patching vdom before rendering
* Add _route_ to mount options
* Add app start options type
* PR #90 - observable properties on web-component, thanks to @spurreiter
* Add @on and @customElement to window
* Export Fragment and app.h
* Add more examples to play-ground
* CLI installs ES2015 by default
* fix vdom update for child svg, remove console.assert
* Fix bug: view function called twice in create component
## 1.22 / 2.22 / 3.22
* Call ref attribute in JSX as a function
* Allow event to be turned or off inside a run call
* Allow mounted life cycle function to return state and Promise of state
* Pass _state_ to mounted function
* Merge dev-tools into one file: apprun-dev-tools.js
## 1.21 / 2.21 / 3.21
* Allow embedding elements in JSX
* Use app['debug'] to turn on/off debug events and component cache
## 1.20 / 2.20 / 3.20
* Add . event to Component,a.k.s the refresh event
* Add ES6 module build: apprun.esm.js (2.20+)
* Add @customElement decorator (2.20+)
* Store _AppRunVersions in global
* New docs
## 1.19 / 2.19
* $on directive use tuple for event parameters
* Add event type to app, component and decorators
* Support _Update_ as array of tuple to enforce the event type
* Set window['React']=app for using babel in browser
* $bind to function and tuple
## 1.18 / 2.18
* Support JSX directives $on and $bind
* Add $ event for custom directives
* Change the component wrapper element from <div> to <section>
* Fixed #57, #58
## 1.17 / 2.17
* Pull requests: #48, #49, #50, #52, #53, #54, #55 thanks to @phBalance, @Sebring
* Added lifecycle function: unload (beta)
* Add props to the wrapper div of stateful component, #57, thanks to @bo-kh
* Pass props to view, children to mounted functions of the stateful component
## 1.16 / 2.16
* Support class attribute in JSX
* Support class and className attribute for SVG
* Support custom attribute (with kebab case/snake case)
* Export app (non-default)
* CLI: use src and dist folder, es6 flag
* Fix CLI error: #45, thanks to @srlopez
## 1.15
* Support SVG
* Convert kebab-case to camelCase for data- attributes
## 1.14
* New logic for creating stateful component
* Add unmount function
* Add app.off function
* Server-side rendering
* Don't render vnode of false
* Add dev-tools (dist/apprun-dev-tools.js)
## 1.13
* Add lifecycle method: mounted
* Add event 'get-components' to retrieve the stateful component cache
## 1.12
* Support dataset attribute
* Add app.once function to one-time event subscription
* Add template engine for express js
## 1.11
* Support JSX fragments at root level
## 1.10
* Add debug event, use app.on('debug', p=>console.log(p)) to log state changes
## 1.9
* Add generic typed Component<T> and StatelessComponent<T>
* Support JSX fragments
* Make Component class plain class without inheritance
* Use Bootstrap 4 for CLI SPA boilerplate
* CLI generates webpack 4 configurations
* CLI targets ES2015
* Add examples of l10n, authentication, parcel, hot module reload, and server-side rendering
## 1.8
* Decorator converts method name and property name to action name
* Optimized Virtual DOM algorithm
* Enabled source map
* Add CLI options to generate SPA boilerplate
## 1.7
* Add decorator (on and update) for subscribing to event
* Not to save null or undefined state, nor to call view
* Add CLI options to initialize karma and create test spec
## 1.6
* Move HTML view support to apprun-html.js
* Remove rxjs
## 1.5
* Support stateful component
* Allow callback function in update tuple
* Attach component to element
* Add updateState function to update state properties
## 1.4
* Support update name alias
* Support mount to element id
* Make _mount_ just mount, _start_ mount and render initial state
* Publish the _route_ event from app
## 1.3
* Support tuple in update for setting event options
* Use _model_ property as initial state, if _state_ property is undefined
## 1.2
* Support async update
* Added start function to component
* Added generic routing event
* Output JSON when rendering objects
## 1.1
* Compiled apprun.js to UMD
* Added index.d.ts
## 1.0
* Added CLI
* Convert component instance methods to local event
* Use _html: as the flag to render raw html
* Added hacker news demo
## 0.10
* Added component scoped events
## 0.9
* Developed own virtual dom
* Added JS framework performance demo
## 0.7
* Use RxJS for event pubsub
* Use morphdom
## 0.6
* Added router
......
## 0.1 - 0.5
* Event pubsub
* Used virtual-dom, virtual-dom-html
* Three versions: zero, jsx and html
* Demo apps