diff --git a/CHANGELOG.md b/CHANGELOG.md index 584fb08b4..9fd77a9c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1068,7 +1068,7 @@ * Tag#render now returns void, use emitter argument to write rendered html. -* ship to Node.js 8, the dist/liquid.cjs.js (main) nolonger +* ship to Node.js 8, the dist/liquid.cjs.js (main) no longer supports Node.js 6, other bundles are also provided via dist/liquid.esm.js, dist/liquid.js (ES5 umd) and liquid.min.js (minified ES5 umd) * remove default export, now should be used like import {Liquid} from 'liquidjs' @@ -1113,7 +1113,7 @@ supports Node.js 6, other bundles are also provided via dist/liquid.esm.js, dist ### Features -* at_least, at_most, sort_naturual for [#132](https://github.com/harttle/liquidjs/issues/132) ([e6f5f1c](https://github.com/harttle/liquidjs/commit/e6f5f1c)) +* at_least, at_most, sort_natural for [#132](https://github.com/harttle/liquidjs/issues/132) ([e6f5f1c](https://github.com/harttle/liquidjs/commit/e6f5f1c)) # [8.3.0](https://github.com/harttle/liquidjs/compare/v8.2.4...v8.3.0) (2019-06-27) @@ -1177,7 +1177,7 @@ supports Node.js 6, other bundles are also provided via dist/liquid.esm.js, dist ### Performance Improvements -* use polymophism instead duck test ([82d7673](https://github.com/harttle/liquidjs/commit/82d7673)) +* use polymorphism instead duck test ([82d7673](https://github.com/harttle/liquidjs/commit/82d7673)) ## [8.0.1](https://github.com/harttle/liquidjs/compare/v8.0.0...v8.0.1) (2019-03-22) @@ -1201,7 +1201,7 @@ supports Node.js 6, other bundles are also provided via dist/liquid.esm.js, dist ### BREAKING CHANGES -* Options and method names in JavaScript API are now renamed to cammelCase, for a complete list see #109 +* Options and method names in JavaScript API are now renamed to camelCase, for a complete list see #109 ## [7.5.1](https://github.com/harttle/liquidjs/compare/v7.5.0...v7.5.1) (2019-03-05) diff --git a/README.md b/README.md index c332d89f0..46d1daab9 100644 --- a/README.md +++ b/README.md @@ -6,12 +6,12 @@ [![DUB license](https://img.shields.io/dub/l/vibe-d.svg?style=flat-square)](https://github.com/harttle/liquidjs/blob/master/LICENSE) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=flat-square)](https://github.com/harttle/liquidjs) -A simple, expressive and safe [Shopify][shopify/liquid] / Github Pages compatible template engine in pure JavaScript. -**The purpose of this repo** is to provide a standard Liquid implementation for the JavaScript community so that [Jekyll sites](https://jekyllrb.com), [Github Pages](https://pages.github.com/) and [Shopify templates](https://themes.shopify.com/) can be ported to Node.js without pain. +A simple, expressive and safe [Shopify][shopify/liquid] / GitHub Pages compatible template engine in pure JavaScript. +**The purpose of this repo** is to provide a standard Liquid implementation for the JavaScript community so that [Jekyll sites](https://jekyllrb.com), [GitHub Pages](https://pages.github.com/) and [Shopify templates](https://themes.shopify.com/) can be ported to Node.js without pain. * [Documentation][doc] * Please star [LiquidJS on GitHub][github]! -* Financial support via [Github Sponsors](https://github.com/sponsors/harttle), or [LiquidJS on Open Collective][oc] +* Financial support via [GitHub Sponsors](https://github.com/sponsors/harttle), or [LiquidJS on Open Collective][oc]

logo

@@ -69,7 +69,7 @@ Feel free to create a PR or contact me to add your use case into this list! If you personally love LiquidJS or it's benefiting your business, please consider financially support us: -- via [Github Sponsors](https://github.com/sponsors/harttle), or +- via [GitHub Sponsors](https://github.com/sponsors/harttle), or - via [LiquidJS on Open Collective][oc] Special thanks to the following sponsors! @@ -80,7 +80,7 @@ Special thanks to the following sponsors! Opensense Inc.
Opensense
Eleventy
Eleventy
- Peter deHaan
Peter deHaan
+ Peter deHaan
Peter deHaan
Touchless
Touchless
Adam Darrah
Dropkiq
Dailycontributors
Dailycontributors
@@ -129,7 +129,7 @@ Want to contribute? see [Contribution Guidelines][contribution]. Thanks goes to Ryan Kennedy
Ryan Kennedy

💻 Sami Kukkonen
Sami Kukkonen

💻 Scott Santucci
Scott Santucci

💻 - Steven
Steven

💡 💻 + Steven
Steven

💡 💻 azu
azu

📖 Joonas
Joonas

💻 @@ -138,7 +138,7 @@ Want to contribute? see [Contribution Guidelines][contribution]. Thanks goes to Brandon Pittman
Brandon Pittman

💻 tgrandgent
tgrandgent

💻 Martin Schuster
Martin Schuster

💻 - Ray
Ray

⚠️ 💻 + Ray
Ray

⚠️ 💻 Cristofer Gonzales
Cristofer Gonzales

💻 Raymond Camden
Raymond Camden

📖 @@ -147,9 +147,9 @@ Want to contribute? see [Contribution Guidelines][contribution]. Thanks goes to Anthony Ciccarello
Anthony Ciccarello

📖 Bogdan Chadkin
Bogdan Chadkin

💻 Tejas Manohar
Tejas Manohar

💻 - Peter deHaan
Peter deHaan

📖 + Peter deHaan
Peter deHaan

📖 amit777
amit777

💻 - Steffen Schuldenzucker
Steffen Schuldenzucker

💻 + Steffen Schuldenzucker
Steffen Schuldenzucker

💻 Pixcell
Pixcell

💻 @@ -179,8 +179,8 @@ Want to contribute? see [Contribution Guidelines][contribution]. Thanks goes to prassie
prassie

📖 - Slav Ivanov
Slav Ivanov

💻 - Daniel Rosenberg
Daniel Rosenberg

💻 + Slav Ivanov
Slav Ivanov

💻 + Daniel Rosenberg
Daniel Rosenberg

💻 bobgubko
bobgubko

💻 BaNgan
BaNgan

📖 Mahyar Pasarzangene
Mahyar Pasarzangene

📖 @@ -189,7 +189,7 @@ Want to contribute? see [Contribution Guidelines][contribution]. Thanks goes to Nick Reilingh
Nick Reilingh

📖 - Francisco Soto
Francisco Soto

💻 + Francisco Soto
Francisco Soto

💻 David LJ
David LJ

📖 Rasmus Wriedt Larsen
Rasmus Wriedt Larsen

📖 Bruno Carvalho
Bruno Carvalho

💻 diff --git a/benchmark/engines/create-liquid.js b/benchmark/engines/create-liquid.js index 59b01f384..cd911188a 100644 --- a/benchmark/engines/create-liquid.js +++ b/benchmark/engines/create-liquid.js @@ -7,7 +7,7 @@ function createEngine (pkg) { cache: true, extname: '.liquid' }) - liquid.registerFilter('url', path => `http://example.com${path}`) + liquid.registerFilter('url', path => `https://example.com${path}`) return { load: path => liquid.parse(readFileSync(path + '.liquid', 'utf8')), render: (tpl, data) => liquid.renderSync(tpl, data) diff --git a/benchmark/engines/handlebars.js b/benchmark/engines/handlebars.js index 5857b600f..87314401c 100644 --- a/benchmark/engines/handlebars.js +++ b/benchmark/engines/handlebars.js @@ -12,7 +12,7 @@ handlebars.registerHelper('concat', function (...args) { }) handlebars.registerHelper('url', function (path) { - return `http://example.com${path}` + return `https://example.com${path}` }) handlebars.registerHelper('inc', function (num) { diff --git a/benchmark/engines/swig.js b/benchmark/engines/swig.js index d43432b21..83c34d573 100644 --- a/benchmark/engines/swig.js +++ b/benchmark/engines/swig.js @@ -1,7 +1,7 @@ const swig = require('swig') swig.setFilter('url', function (path) { - return `http://example.com${path}` + return `https://example.com${path}` }) swig.setFilter('prepend', function (input, arg) { diff --git a/benchmark/tag.js b/benchmark/tag.js index 0c17dc751..1c8b44555 100755 --- a/benchmark/tag.js +++ b/benchmark/tag.js @@ -10,7 +10,7 @@ function tag () { new Benchmark.Suite('tag') .add('if', test('{% if "foobar" %}foo{% endif %}')) .add('unless', test('{%unless "foo"%}true{%else%}false{%endunless%}')) - .add('for', test('{% for i in (1..3) %}{{fooloop.index}}{% endfor %}')) + .add('for', test('{% for i in (1..3) %}{{forloop.index}}{% endfor %}')) .add('switch', test('{%case 3%}{% when 1 %}1{% when 2 %}2{% when 3 %}3{%endcase%}')) .add('assign', test('{%assign a="foo bar"%}')) .add('capture', test('{%capture foo%}what is this{%endcapture%}')) diff --git a/benchmark/templates/todolist.jsx b/benchmark/templates/todolist.jsx index b6633a233..64e2444ee 100644 --- a/benchmark/templates/todolist.jsx +++ b/benchmark/templates/todolist.jsx @@ -5,7 +5,7 @@ function capitalize (str) { return str[0].toUpperCase() + str.slice(1).toLowerCase() } function url (path) { - return `http://example.com${path}` + return `https://example.com${path}` } function renderTodoIcon (id) { return diff --git a/bin/character-gen.js b/bin/character-gen.js index 183db3e87..90ea4d108 100755 --- a/bin/character-gen.js +++ b/bin/character-gen.js @@ -10,7 +10,7 @@ const isInlineBlank = c => c === '\t' || c === ' ' || c === '\r' const isSign = c => c === '-' || c === '+' // See https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/RegExp const unicodeBlanks = '\u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000' -const unicodePunctuations = '“”' +const unicodePunctuation = '“”' const types = [] for (let i = 0; i < 128; i++) { @@ -48,4 +48,4 @@ export function isWord (char: string): boolean { `.trim()) console.log([...unicodeBlanks].map(char => `TYPES[${char.charCodeAt(0)}]`).join(' = ') + ' = BLANK') -console.log([...unicodePunctuations].map(char => `TYPES[${char.charCodeAt(0)}]`).join(' = ') + ' = PUNCTUATION') +console.log([...unicodePunctuation].map(char => `TYPES[${char.charCodeAt(0)}]`).join(' = ') + ' = PUNCTUATION') diff --git a/demo/reactjs/README.md b/demo/reactjs/README.md index 2dab1ec2e..41412c84d 100644 --- a/demo/reactjs/README.md +++ b/demo/reactjs/README.md @@ -381,7 +381,7 @@ This works for any library, not just `react-router-dom`. ## Importing a Component This project setup supports ES6 modules thanks to Webpack.
-While you can still use `require()` and `module.exports`, we encourage you to use [`import` and `export`](http://exploringjs.com/es6/ch_modules.html) instead. +While you can still use `require()` and `module.exports`, we encourage you to use [`import` and `export`](https://exploringjs.com/es6/ch_modules.html) instead. For example: @@ -414,7 +414,7 @@ class DangerButton extends Component { export default DangerButton; ``` -Be aware of the [difference between default and named exports](http://stackoverflow.com/questions/36795819/react-native-es-6-when-should-i-use-curly-braces-for-import/36796281#36796281). It is a common source of mistakes. +Be aware of the [difference between default and named exports](https://stackoverflow.com/questions/36795819/react-native-es-6-when-should-i-use-curly-braces-for-import/36796281#36796281). It is a common source of mistakes. We suggest that you stick to using default imports and exports when a module only exports a single thing (for example, a component). That’s what you get when you use `export default Button` and `import Button from './Button'`. @@ -422,15 +422,15 @@ Named exports are useful for utility modules that export several functions. A mo Learn more about ES6 modules: -- [When to use the curly braces?](http://stackoverflow.com/questions/36795819/react-native-es-6-when-should-i-use-curly-braces-for-import/36796281#36796281) -- [Exploring ES6: Modules](http://exploringjs.com/es6/ch_modules.html) +- [When to use the curly braces?](https://stackoverflow.com/questions/36795819/react-native-es-6-when-should-i-use-curly-braces-for-import/36796281#36796281) +- [Exploring ES6: Modules](https://exploringjs.com/es6/ch_modules.html) - [Understanding ES6: Modules](https://leanpub.com/understandinges6/read#leanpub-auto-encapsulating-code-with-modules) ## Code Splitting Instead of downloading the entire app before users can use it, code splitting allows you to split your code into small chunks which you can then load on demand. -This project setup supports code splitting via [dynamic `import()`](http://2ality.com/2017/01/import-operator.html#loading-code-on-demand). Its [proposal](https://github.com/tc39/proposal-dynamic-import) is in stage 3. The `import()` function-like form takes the module name as an argument and returns a [`Promise`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) which always resolves to the namespace object of the module. +This project setup supports code splitting via [dynamic `import()`](https://2ality.com/2017/01/import-operator.html#loading-code-on-demand). Its [proposal](https://github.com/tc39/proposal-dynamic-import) is in stage 3. The `import()` function-like form takes the module name as an argument and returns a [`Promise`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) which always resolves to the namespace object of the module. Here is an example: @@ -476,7 +476,7 @@ You can also use it with `async` / `await` syntax if you prefer it. ### With React Router -If you are using React Router check out [this tutorial](http://serverless-stack.com/chapters/code-splitting-in-create-react-app.html) on how to use code splitting with it. You can find the companion GitHub repository [here](https://github.com/AnomalyInnovations/serverless-stack-demo-client/tree/code-splitting-in-create-react-app). +If you are using React Router check out [this tutorial](https://serverless-stack.com/chapters/code-splitting-in-create-react-app.html) on how to use code splitting with it. You can find the companion GitHub repository [here](https://github.com/AnomalyInnovations/serverless-stack-demo-client/tree/code-splitting-in-create-react-app). Also check out the [Code Splitting](https://reactjs.org/docs/code-splitting.html) section in React documentation. @@ -602,7 +602,7 @@ This project setup minifies your CSS and adds vendor prefixes to it automaticall Support for new CSS features like the [`all` property](https://developer.mozilla.org/en-US/docs/Web/CSS/all), [`break` properties](https://www.w3.org/TR/css-break-3/#breaking-controls), [custom properties](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables), and [media query ranges](https://www.w3.org/TR/mediaqueries-4/#range-context) are automatically polyfilled to add support for older browsers. -You can customize your target support browsers by adjusting the `browserslist` key in `package.json` accoring to the [Browserslist specification](https://github.com/browserslist/browserslist#readme). +You can customize your target support browsers by adjusting the `browserslist` key in `package.json` according to the [Browserslist specification](https://github.com/browserslist/browserslist#readme). For example, this: @@ -671,7 +671,7 @@ This works in CSS too: } ``` -Webpack finds all relative module references in CSS (they start with `./`) and replaces them with the final paths from the compiled bundle. If you make a typo or accidentally delete an important file, you will see a compilation error, just like when you import a non-existent JavaScript module. The final filenames in the compiled bundle are generated by Webpack from content hashes. If the file content changes in the future, Webpack will give it a different name in production so you don’t need to worry about long-term caching of assets. +Webpack finds all relative module references in CSS (they start with `./`) and replaces them with the final paths from the compiled bundle. If you make a typo or accidentally delete an important file, you will see a compilation error, just like when you import a nonexistent JavaScript module. The final filenames in the compiled bundle are generated by Webpack from content hashes. If the file content changes in the future, Webpack will give it a different name in production so you don’t need to worry about long-term caching of assets. Please be advised that this is also a custom feature of Webpack. @@ -755,7 +755,7 @@ The `public` folder is useful as a workaround for a number of less common cases: - You need a file with a specific name in the build output, such as [`manifest.webmanifest`](https://developer.mozilla.org/en-US/docs/Web/Manifest). - You have thousands of images and need to dynamically reference their paths. -- You want to include a small script like [`pace.js`](http://github.hubspot.com/pace/docs/welcome/) outside of the bundled code. +- You want to include a small script like [`pace.js`](https://github.hubspot.com/pace/docs/welcome/) outside of the bundled code. - Some library may be incompatible with Webpack and you have no other option but to include it as a `