harttle
b82fa9ed2b
pref: remove await/async from internal async calls
2019-10-26 08:57:33 -05:00
Patrick Malouin and Jun Yang
3ad512c51c
perf: add string flattening to reduce retained memory (node only)
...
add a memory footprint benchmark
2019-10-10 09:35:15 +08:00
harttle
6b83788077
feat: alias getTemplate() to parseFile()
...
* deprecate Liquid#getTemplate: use Liquid#parseFile instead
* deprecate Liquid#getTemplateSync: use Liquid#parseFileSync instead
2019-10-07 23:34:12 +08:00
harttle
d2c8d133ff
fix: unless content is not waited, fixes #160
2019-10-02 22:30:35 +08:00
harttle
0426d08fd0
style: fix linting
2019-08-26 10:15:43 -05:00
harttle
7fb01ad69a
feat: renderSync, parseAndRenderSync and renderFileSync, see #48
2019-08-26 10:15:43 -05:00
harttle
8028f82499
refactor: return value of Tag#render is no longer used
...
BREAKING CHANGE: Tag#render now returns void, use emitter argument
to write rendered html.
2019-08-26 10:15:43 -05:00
harttle
76019e9e18
refactor: rewrite expression evaluation, fix #130
2019-08-26 10:15:43 -05:00
harttle
3b9fc7e6bf
perf: target to es6, fixes #137
...
BREAKING CHANGE: ship to Node.js 8, the dist/liquid.cjs.js (main) nolonger
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)
2019-08-26 10:15:43 -05:00
harttle
ab3b824cf8
style: fix linting
2019-08-26 10:15:43 -05:00
harttle
ae45c4622e
fix: break/continue omitting output before them, #123
...
BREAKING CHANGE: remove default export, now should be used like import
{Liquid} from 'liquidjs'
2019-08-26 10:15:43 -05:00
harttle
854e12ba53
refactor: add emitter for code generation
2019-08-26 10:15:43 -05:00
jamelait and Jun Yang
e17bc97d8e
fix escape filter with stringify
2019-08-25 04:19:37 -05:00
Jamel A and Jun Yang
aa15f3dfe1
fixing lint errors
2019-08-25 04:19:37 -05:00
jamelait and Jun Yang
a00945cad7
fix: escape filter when input is undefined
2019-08-25 04:19:37 -05:00
Joonas Mertanen and Jun Yang
9956c53b09
Correctly tokenize quotation marks within single token
2019-08-08 08:08:18 -05:00
harttle
0b543817ff
doc: introduce typedoc and sponsorship, for #126
2019-08-06 01:36:34 +08:00
Robin Bijlani and Jun Yang
c8c6dd8275
Fix: Stringify append and prepend values
2019-07-25 13:12:07 +08:00
harttle
6e6ea0ae58
fix: some filters on undefined variable throws, #140
2019-07-22 16:48:48 +08:00
harttle
34d5af25a4
chore: trying to fix TS4053
2019-07-06 14:49:39 +08:00
harttle
88c89fe3b3
style: introduce @typescript-eslint/recommended
2019-07-06 14:33:34 +08:00
harttle
e6f5f1cd85
feat: at_least, at_most, sort_naturual for #132
2019-07-05 12:09:00 +08:00
Jun Yang
96c061bee0
style: remove semi
2019-06-27 09:32:51 +08:00
Patrick Malouin and Jun Yang
edb2cc1f37
Expose fs as an option to override the default implementations
2019-06-27 09:25:17 +08:00
Patrick Malouin and Jun Yang
1ffba2bc76
perf: improve getTemplate() when cache is enabled
...
Checking for file existence is unnecessary when cache contains entry.
2019-06-17 11:01:02 +08:00
Jun Yang
505c408a85
fix: reverse filter not pure, see #126
2019-05-19 13:58:11 +08:00
harttle
fdf0043b9c
fix: date from integer, #125
2019-05-12 21:03:35 +08:00
harttle
bef290923c
fix: pass drops directly to filters/tags
2019-05-12 20:03:32 +08:00
harttle
6075c0a54f
fix: default filter is not working with an empty string, #122
2019-04-27 00:26:17 +08:00
harttle
6c5dc336e7
chore: fix linting, working on #120
2019-04-17 10:45:02 +08:00
harttle
00bc1efe6a
feat: pass context to filters
2019-04-17 10:24:55 +08:00
Jun Yang
daa0b574fc
feat: where filter, working on #118
...
doc: https://shopify.github.io/liquid/filters/where/
ruby impl: https://github.com/Shopify/liquid/blob/14cd011cb5eef042af192ad5294c8f0e1ae89f06/lib/liquid/standardfilters.rb
2019-04-02 00:46:32 +08:00
harttle
eadb6f3711
fix: slice filter on negative begin, #117
2019-04-01 10:57:08 +08:00
harttle
82d7673554
perf: use polymophism instead duck test
2019-03-25 20:11:23 +08:00
harttle
64dd057552
refactor: Context#propertyAccessSeq => parseProp
2019-03-25 10:36:23 +08:00
harttle
45e3c2bb8e
refactor: switch Context <-> Scope concepts
2019-03-25 10:36:23 +08:00
harttle
defbb58e66
fix: incorrect scope when using assign with for, fixes #115
...
* remove AssignScope, CaptureScope, IncrementScope, DecrementScope concepts
* introduce Scope.environments for decrement/increment
* assign to scopes[0] for assign/capture
2019-03-22 20:38:54 +08:00
Jun Yang
64e0c876e9
refactor: use camelCase for JavaScript APIs
...
BREAKING CHANGE: Options and method names in JavaScript API are now renamed to cammelCase, for a complete list see #109
2019-03-10 19:21:09 +08:00
Jun Yang
4a8088d4e4
feat: promise support for drops, working on #65
2019-03-10 18:05:52 +08:00
harttle
5ffc904f80
fix: named params for filters, working on #113
2019-03-06 01:30:47 +08:00
Jun Yang
3647305dcf
feat: tablerowloop object
...
See: https://www.rubydoc.info/gems/liquid/Liquid/TablerowloopDrop
2019-03-02 06:00:30 +08:00
harttle
b4acdb463a
fix: math filters now return number, resolves #110
...
* fix linting
* numbers are no longer fixed:
i.e. {{0.3 | minus 0.1}} now renders as 0.19999
Stick to JavaScript number behavior, see: 8.0.0
2019-02-28 13:02:51 +08:00
harttle
7bee9fc92d
feat: exported Drop interface for #107
...
Deprecate snake_cased options and APIs, sed #109
2019-02-28 00:05:08 +08:00
harttle
b69c3a3203
refactor: IDrop interface => abstract method
2019-02-28 00:05:08 +08:00
harttle
d5b9916b2f
refactor: Drop.prototype.value => valueOf
2019-02-28 00:05:08 +08:00
harttle
53a835ab54
fix( #108 ): remove absolute path in emitted d.ts
2019-02-26 00:43:30 +08:00
harttle
88c9e96392
feat: nil/null/empty/blank literals, resolves #102
2019-02-24 21:50:01 +08:00
harttle
542968e133
refactor: remove unused lexical regexps
2019-02-24 06:26:33 +08:00
harttle
3b7351d9a0
chore: fix linting
2019-02-24 05:03:59 +08:00
harttle
e977669118
fix: filters break when argument contains [()|, fixes #89
2019-02-24 04:48:42 +08:00