squirrelly

Semi-embedded JS template engine that supports helpers, filters, partials, and template inheritance. 4KB minzipped, written in TypeScript ⛺

MIT License

Downloads
120.4K
Stars
636
Committers
10

Bot releases are visible (Hide)

squirrelly - Version 8: Beta 4

Published by nebrelbug over 4 years ago

Tl;DR

This version adds template inheritance support and fixes all of the linting problems.

Note: unfortunately, due to some problems with np, there was an error in publishing beta 3 and we had to skip to beta 4.

https://github.com/squirrellyjs/squirrelly/compare/v8.0.0-beta.2...v8.0.0-beta.4

squirrelly - Version 8: Beta 2

Published by nebrelbug over 4 years ago

TL;DR

  • Sqrl.render() now supports async
  • Updated naming conventions so everything is camelCase
  • Async support for helpers and filters (still depends on await though)
  • Add include to browser distribution
  • Fix so renderFile and render take callbacks

Commits

  • Update tests to get coverage across threshold a930fb9
  • Updated README.md e5f3ce1
  • Fixed compile so that the returned fn accepts a callback e8bf591
  • Merge pull request #141 from squirrellyjs/greenkeeper/rollup-plugin-typescript2-0.26.0 0fc4766
  • fix: fix getConfig baseConfig, add include to browser distribution 38d187d
  • fix: fix includeFile to use parent file options 8ad2dd6
  • refactor: fix naming styles, extract types for readability 619418f
  • Added file tests 8913455
  • chore(package): update lockfile yarn.lock df53e87
  • chore(package): update rollup-plugin-typescript2 to version 0.26.0 9ef5e3c

https://github.com/squirrellyjs/squirrelly/compare/v8.0.0-beta.1...v8.0.0-beta.2

squirrelly - Version 8: Beta 1

Published by nebrelbug over 4 years ago

TL;DR

  • I fixed a major error where the parser would go into an infinite loop with an unclosed helper
  • I added support for partials, rendering files, and loading files
  • Added Express support
  • Async support (theoretically, though not supported with Render yet)

Commits

  • Remove console.log statement 253cff6
  • FIX CRITICAL PARSING ERROR WITH UNCLOSED HELPERS 700b73a
  • Fixed self-closing helpers db31f32
  • Update renderFile to only accept 'data', not 'data' and 'options' cadd718
  • Fixed config override, removed unnecessary types c69efd4
  • Work on configuration, include file 116da2c
  • Add async test fc1966d
  • Add async support f568e3d
  • Update SqrlErr type to return error, add async option to config.ts b178f36
  • Rename cache.clear to cache.reset, cause cache.load to merge 0c656a8
  • Update all-contributors badge link d30499e
  • Fix merge conflict 34005a1
  • Hopefully fixed all-contributors badge problem 7714f14
  • Merge pull request #139 from squirrellyjs/all-contributors/add-nebrelbug ed4b5b3
  • Update README.md fdb2aac
  • docs: update .all-contributorsrc [skip ci] 2c231ef
  • docs: update README.md [skip ci] 843e99f
  • Update README, badges for all-contributors 2d4e7ae
  • Update dependencies to enable Greenkeeper 🌴 (#137) ed0e058
  • chore(package): update lockfile yarn.lock 6975bcd
  • docs(readme): add Greenkeeper badge 84a2645
  • chore(package): update dependencies cbebe0d

Next Steps

  • Better async support and support for async helpers and filters
  • Layouts support

https://github.com/squirrellyjs/squirrelly/compare/v8.0.0-beta.0...v8.0.0-beta.1

squirrelly - Version 8!

Published by nebrelbug over 4 years ago

Version 8 is finally out!

This is a beta, but has been pretty thoroughly tested. Some functionality, like Express support, layouts, and partials, will come soon.

Commits

  • Add v8 disclaimer d7a837b
  • Added explanation of v8, link to v7 4ff87fa
  • Add Gitter badge to README 6efe25a
  • Update names from 'squirrelly-next' to 'squirrelly' 932c3db
  • Correctly configured trimming and fixed all tests 6566f7d
  • Add demo.html 2f4d2f2
  • Add 'typescript types' to keywords bce16ea
  • Updated dev-deps, regenerated yarn.lock f52729b
  • Merge pull request #9 from squirrellyjs/greenkeeper/husky-4.2.1 c63b36a
  • Merge branch 'master' into greenkeeper/husky-4.2.1 bfd89ac
  • Merge pull request #12 from squirrellyjs/greenkeeper/@types/jest-25.1.0 b1ed80b
  • Removed 'git add' from lint-staged 764c08f
  • Ran husky upgrade 286e5bd
  • Merge branch 'master' of https://github.com/squirrellyjs/squirrelly-next 0bcaf2a
  • Update Emojis to Unicode emojis d96b0b9
  • Merge pull request #10 from squirrellyjs/greenkeeper/cross-env-7.0.0 66e166c
  • Merge branch 'master' into greenkeeper/@types/jest-25.1.0 69c39db
  • Merge pull request #11 from squirrellyjs/greenkeeper/lint-staged-10.0.3 b77fbda
  • Merge pull request #13 from squirrellyjs/greenkeeper/@types/node-13.5.1 05ef19f
  • chore(package): update lockfile yarn.lock 17d102a
  • chore(package): update @types/node to version 13.5.1 6ffe0bf
  • chore(package): update @types/jest to version 25.1.0 84ca436
  • chore(package): update lockfile yarn.lock bcaceb1
  • chore(package): update lint-staged to version 10.0.3 cf30225
  • chore(package): update lockfile yarn.lock 604e719
  • chore(package): update cross-env to version 7.0.0 83bcd4a
  • Added GitHub community files 48ed7d6
  • Update tests to add check for errors with invalid try-catch, if templates 5f8748b
  • Update logo to new version c8fc0a4
  • chore(package): update lockfile yarn.lock ec6d9f4
  • chore(package): update husky to version 4.2.1 6058ec4
  • Fix unnecessary type assertions for TSLint and add prettier-standard 2ee0712
  • Fix link to Travis b3d5fbf
  • chore: upgrade dependencies 83fadf7
  • Update README 1afb184
  • Get coverage above threshold ede96fb
  • Fixed issue with reference to Env.default instead of deep clone 0719602
  • Updated types to allow Render to receive a SqrlConfig object 9ea6974
  • Fix tests to use newer version of Env 0b78475
  • Reconfigure configuration lol 1da3b64
  • Zap zero-width strings on parse 6f2deb4
  • Add test of passing envName as string to Compile 8e4e316
  • Update tests to use toEqual() instead of toBeTruthy() 42b0c17
  • Refactor everything to use loading helper, put tags, plugins in env, etc. 186030f
  • We don't need separate ES builds for browser since we already have UMD 3c05cc8
  • Remove unnecessary check if currentAttribute exists (it always does) b4a997f
  • Fix lastIndex of tagOpenReg, remove unecessary strng parameter in addAttrValue ff703f7
  • Fix types, unnecessary 'or's, make filters non-optional again 069cc58
  • Remove automatic creation of currentObj.d, .f, etc. 36092e6
  • Add ideas to Thoughts.md 3425be8
  • COMPARES TO SQUIRRELLY-PREVIOUS IN TERMS OF SPEED AND WAY MORE POWERFUL! I'VE DONE IT! 899bea8
  • XML Escape now working 855e3e3
  • Set powerchars.lastIndex to startInd bbac145
  • Add support for disabling HTML escaping via * or | safe ff2695b
  • Updated tests with envs. Made envName optional on Compile f0ca636
  • Add try-catch, Escape, other stuff f53fc95
  • Updated README.md, build de24124
  • Fix build process. Add terser 44cc779
  • Add filters, working on adding autoEscape, fix bugs, add config b611c58
  • Upgrade dev deps d3a6ad5
  • Updated deps d26801f
  • Trying to get storage.ts to work a073173
  • Update dependencies to enable Greenkeeper 🌴 (#1) 0d5b385
  • Merge branch 'master' into greenkeeper/initial ca07f4a
  • feat: Create storage container for helpers, layouts, partials, etc. 80eb86c
  • chore: Add 'repository', 'bugs' fields to package.json 53fbed1
  • chore: Add '--pro' flag to travis-deploy-once. Update .travis.yml to use Yarn b2194fe
  • chore: Remove versions of Node that are incompatible with Yarn from .travis.yml 619022c
  • chore(package): update lockfile yarn.lock 7abbf25
  • chore(package): update dependencies 4b578fb
  • chore: Configure Greenkeeper, Coveralls 15c170d
  • chore: Fix formatting. Switch to prettier-standard 754e97c
  • chore: Work on configuring Prettier, linting 992cee5
  • chore: Fix all tests, add Render method 9fe5ab1
  • chore: Finish converting to TypeScript. Working build b9e78e0
  • chore: Convert current progress to TypeScript 899b406
  • chore: Edit Rollup plugins, fix code formatting 22f95bf
  • chore: Update default config of typescript-library-starter d6dc22d
  • Built 97588e5

https://github.com/squirrellyjs/squirrelly/compare/5a6a9c348d660f9f35815ca17dfefc2d6e298413...v8.0.0-beta.0

squirrelly - Version 7.9.1

Published by nebrelbug over 4 years ago

Updated README to include details on the new branches.

  • Updated README e805907

https://github.com/squirrellyjs/squirrelly/compare/v7.9.0...v7.9.1

squirrelly - Version 7.9.0: "sideEffects": false, improved README

Published by nebrelbug almost 5 years ago

TL;DR

I added the sideEffects field to package.json, and updated the README with emojis and much nicer badges

Commits

  • Update README.md 4a9eee9
  • Merge branch 'master' of https://github.com/squirrellyjs/squirrelly e13e4b9
  • Merge pull request #133 from squirrellyjs/emojify 02219d2
  • Update feature_request.md 8bc7e4d
  • Update bug_report.md 664af6f
  • Fix template emoji 32d4b3f
  • Update bug_report.md 28c86bf
  • Add Emoji to README 2c03b9f
  • Updated README badges to shields.io 1fae055
  • Added sideEffects:false 043ab49

https://github.com/squirrellyjs/squirrelly/compare/v7.8.0...v7.9.0

squirrelly - Version 7.8.0: Added ES Module support

Published by nebrelbug almost 5 years ago

Changes

  • Properly escaped - in RegExp for really old browsers
  • Added ES6 Module support
  • Removed unneeded files from NPM build

https://github.com/squirrellyjs/squirrelly/compare/v7.7.0...v7.8.0

squirrelly - Version 7.7.0: Removed accidental 'const' statement

Published by nebrelbug about 5 years ago

Commits

  • Removed accidental const statement from utils 72a5bfc
  • Removed accidental const statement from utils 9900999

https://github.com/squirrellyjs/squirrelly/compare/v7.6.0...v7.7.0

squirrelly - Version 7.6.0: Fixed Sqrl.Render bug with empty string

Published by nebrelbug about 5 years ago

Changes

  • Fixed bug where passing an empty string to Sqrl.Render would error 8377818

https://github.com/squirrellyjs/squirrelly/compare/v7.5.1...v7.6.0

squirrelly - Version 7.5.1: Fixed line endings, added All-Contributors

Published by nebrelbug about 5 years ago

Main Changes

  • I updated Squirrelly to use the All-Contributors bot to display contributors in the README!
  • Line endings have now been standardized to use LF, which means that source maps will be generated correctly
  • Updated the .editorconfig

Commits

  • Rebuilt Squirrelly (should only affect source maps) 2aa87e8
  • This should force all line endings to be LF 7f62e11
  • Saving files before refreshing line endings 5fdfd53
  • Add .editorconfig (#122) 6d508c1
  • Fixed All-Contributors table in the README fcc1d9b
  • docs: add nebrelbug as a contributor (#125) 63a1516
  • docs: create .all-contributorsrc bbe1173
  • docs: update README.md bc136cb
  • Bump eslint-utils from 1.3.1 to 1.4.2 (#123) b712f55
  • Bump eslint-utils from 1.3.1 to 1.4.2 b70a7ed
  • Add .editorconfig f2d0e5a

https://github.com/squirrellyjs/squirrelly/compare/v7.5.0...v7.5.1

squirrelly - Version 7.5.0

Published by nebrelbug about 5 years ago

Announcements

  • FILTER CHAINING NOW WORKS!
  • Bundle size decreased to 4.7kb minified, 2.1kb minzipped! https://bundlephobia.com/[email protected]
  • We rebuilt, tested, and tweaked the master RegExp, and fixed the RegExp that handles helper references. The master RegExp is 83 characters shorter than before.

Fixed (overview)

  • Filter chaining!
  • Helper references by ID inside parameters

Changes

  • Updated demo to include example with multiple filters 0d9f50d
  • Working initial version 8fd4718
  • Removed globalRef, helperRef to outside while loop 09f72bc
  • changed replaceParamHelpers to replaceHelperRefs, updated RegExp 2552c35
  • Squirrelly no longer checks whether a helper reference is inside a string - it replaces all perceived helper references, no matter where. Checking whether it's inside a string is unnecessarily time-consuming and complex. If you need to have the literal character "@" somewhere in a string, use string concatenation: 'somestr' + '@' + 'otherstring'.

Compare

https://github.com/squirrellyjs/squirrelly/compare/v7.4.0...v7.5.0

squirrelly - Version 7.4.0

Published by nebrelbug about 5 years ago

The main change in this version is a refactored load function by @joergleis, which has the same API but is cleaner and smaller.

Contributors

  • @joergleis

All Commits

  • Rebuilt dist to double-check tests a1e0c01
  • Merge pull request #119 from joergleis/master 275ebf9
  • Add option to use cached name without template 00ff872
  • Remove swap file from git 5ffde94
  • Fix commit f1aacc0
  • Refactor and fix load() 9c59527

https://github.com/squirrellyjs/squirrelly/compare/v7.3.0...v7.4.0

squirrelly - Version 7.3.0

Published by nebrelbug over 5 years ago

  • Fixed #118, bug with escaped single quotes (\') c5bae97

https://github.com/squirrellyjs/squirrelly/compare/v7.2.1...v7.3.0

squirrelly - Version 7.2.1

Published by nebrelbug over 5 years ago

  • Fixed minzipped size & repo links in package.json fde2224

https://github.com/squirrellyjs/squirrelly/compare/v7.2.0...v7.2.1

squirrelly - Version 7.2.0

Published by nebrelbug over 5 years ago

Major Changes

  • Moved from Webpack to Rollup! This results in an even smaller bundle size, and it takes less time to clone Squirrelly as a developer as well
  • Created a separate file so the runtime.js file is even smaller
  • Created a demo page!! See it here

Commits

  • Added P as an export, replaced Sqrl with an object containing H, P, etc. 550ae85
  • Fixed formatting 6909ba3
  • Added demo page e13fca8
  • Removed Webpack config 66b5504
  • Removed references to RUNTIME in Webpack 291dd68
  • Rebuilt Squirrelly dist files ffd3996
  • Added rollup.config.js, fixed cli.js 24292c0
  • Updated runtime.js utils import a2b79b6
  • Added runtime-utils.js 2ea5bdf
  • runtime.js f775cc1
  • Added Rollup config 3ae9631
  • Added new scripts d5b9466
  • Installed Rollup 708e314

https://github.com/nebrelbug/squirrelly/compare/v7.1.5...v7.2.0

squirrelly - Version 7.1.5

Published by nebrelbug over 5 years ago

  • Moved Squirrelly logo to separate repository so it displays on npm 512e118
  • Updated devDependencies 3edd24f

https://github.com/nebrelbug/squirrelly/compare/v7.1.4...v7.1.5

squirrelly -

Published by nebrelbug over 5 years ago

  • Support for disabling caching with renderFile ea8dcb7
  • Added Squirrelly logo to README 14e00d5

https://github.com/nebrelbug/squirrelly/compare/v7.1.3...v7.1.4

squirrelly -

Published by nebrelbug over 5 years ago

Stable version of Squirrelly 7.