- Fix scopedSelector is already declared bug.
Features
- Add
scopedSelector
andscopedSelectorAll
to component scripts - Add
__dirname
,__filename
to files.
Bug Fixes
- Fixed #37
- Ignore scoping HTML when not needed. (by @judicaelandria (Issue: #32, PR: #34)
- Fix exitting dev-server on module not found errors.
- Scoped CSS Support (Hugee shoutout to @pantharshit00)
- Syntax warnings for multiple statements in a block.
- More reliable code.
- Bug fix for
const
not being true constant. - Fix multiple values-less attribute parsing error
- Better file not found errors for .abell and other files.
- Refactor
- Moved to JEST for testing (@pantharshit00)
- Default value of props in components is now empty object instead of undefined.
- Multi-line support for writing component tag.
- Convert Array into String by joining the values.
- Now devs would not have to write
.join
next to map, to remove commas. - Naming rule of having
.component.abell
extension, removed. Any file that ends with.abell
, can be a component. - Filename and error line in error stack 🎉
- Error when brackets and value had no space, fixed (e.g.
{{a}}
) - Nested Components
- Better Error logs
- Support for Abell Components when
allowComponents
flag is passed in options. (Does not support nested components yet)
- Throw error at
execute
to avoid having vm data in error stack
- Trim value before adding.
- BREAKING CHANGE, SECURITY UPDATE
To use
require()
in the template, user will have to passallowRequire: true
in option. This option is by default set to false.const newHTMLTemplate = abellRenderer.render(myAbellTemplate, mySandbox, { allowRequire: true });
- Fix to recursively find and create nested
.abell
files
- basePath is set to paths relative to input files.
- BUG FIX Allowing CLI to build without output path
- MAJOR CHANGE Added ability to escape the brackets with a slash('')
- Support for expression after
require
(e.g.require('module1').someProperty
) - Build a folder with CLI (Issue: #6, PR: #8, Thanks to @Pika1998)
- Error handling when the temlate does not have any
{{
}}
- More tests written for
render()
function
- Refactoring of major logic
- Conditions executed as assignment bug fixed
- More tests added in Unit Testing.
- Support for multiple requires in same code block (Thanks to @Pika1998 for #5)
- Redesign of Readme
- Template build time added to CLI
BREAKING CHANGE
abell-renderer [flags]
changed toabell-renderer build [flags]
help, --version
added.
Bug that stored last value and printed it when assignment was used, fixed.
Better log messages added in CLI
- CLI added to render
.abell
files
- Support for nodejs modules
- Sequential compilation of JavaScript #2
- Require values from json/js in .abell files
Ability to add functions inside curly brackets
<div>
{{
() => 3 + 5
}}
</div>
outputs:
<div>8</div>
Initilization and overall setup