Harttle
771b9b9eba
style: fix code style
2023-03-03 00:14:38 +08:00
Harttle
9c0dc5fa39
fix: [expression] apply value equal for arrays, #589
2023-03-02 23:44:56 +08:00
Jun Yang
d4e519c4a6
chore: update build badge, coverage to 100%, mv DEFAULT_FMT to defaultOptions
2023-02-23 01:05:54 +08:00
Harttle and Harttle
3f21382d43
feat: support not operator, #575
2023-01-03 01:34:03 +08:00
Jun Yang
92992689cd
refactor: Tag class support in registerTag()
2022-11-27 14:04:01 +08:00
Jun Yang
bb58d3e549
refactor: delay creation of operatorsTrie and hide this implementation
...
BREAKING CHANGE: use `operators` instead of `operatorsTrie` as Tokenizer constructor argument, #500
2022-11-27 14:04:01 +08:00
Jun Yang
ff112a4750
chore: rename filters to snake style, #487
...
BREAKING CHANGE: keys in `<liquidjs>.filters` are now in snake case (instead of camel case), identical to that in Liquid template.
2022-11-27 14:04:00 +08:00
Harttle and Harttle
e874b4060b
feat: export toValueSync & defaultOptions to evaluate expression, see #527
2022-08-15 01:53:48 +08:00
Harttle
4289b4e804
refactor: rename toValue to toValueSync
2022-07-10 00:24:00 +08:00
Harttle
c3e51caa70
fix: for tag not respecting Drop#valueOf(), fixes #515
2022-07-09 22:21:51 +08:00
Harttle
3dc4290b56
fix: stack overflow on large number of templates, #513
2022-07-08 01:46:51 +08:00
jg-rp and GitHub
2f87708989
feat: inline comment tag ( #514 )
...
* style: remove unnecessary intermediate constant
* feat: add inline comment tag
* refactor: use readIdentifier when reading tag names
* docs: add inline comment tag
2022-07-08 01:46:15 +08:00
Harttle
9e024ff2bc
fix: contains operator does not support Drop, fixes #492
2022-04-18 00:43:18 +08:00
Harttle
049685b9a0
feat: Access array item by negative index, closes #486
2022-03-06 00:52:22 +08:00
Harttle and Harttle
7e99efc513
feat: ownPropertyOnly option to protect prototype, #454
2022-01-29 01:22:34 +08:00
James Prior and Jun Yang
fde9924ee6
feat: implement liquid and echo tags, see #428
2021-12-19 21:09:26 +08:00
Harttle and Harttle
69286c6909
test: coverage to 100%
2021-12-07 23:34:53 +08:00
Harttle and Harttle
6c114267a5
fix: size filter does not respect Objects, fixes #385
2021-12-07 23:05:46 +08:00
Harttle and Harttle
aebeae9e1b
fix: relative root (by default) yields LookupError, fixes #419 , #424 , also related to #395
2021-10-27 23:55:39 +08:00
Harttle and harttle
9cfa43b8ae
fix: hardcoded '/' in normalized options.fs, fixes #412 , #408
...
Changes including:
- will not call fs.resolve when normalizing `fs`
- removed hardcoded `/`
- mandatory `fs.dirname` for relative reference
- mandatory `fs.sep`, defaults to '/'
2021-10-16 12:10:55 +08:00
Harttle
1de6adf308
test: cases for parse(<tpl>, <relative filepath>), #395
2021-10-10 20:37:26 +08:00
Harttle
822ba0be0f
fix: skip root check for renderFile()
2021-10-06 18:38:58 +08:00
Harttle
a3455ebd0b
feat: relativeReference for render/include/layout, #395
...
- `relativeReference` is enabled by default, set to `false` to disable
- Referenced files are still constrained within root/partias/layouts
- fix: relative filenames are not constrained (which allows arbitrary filesystem read)
Example Usage:
{% render "../foo/bar.html" %}
Note:
../foo/bar.html' should also be within `partials` (or `root` if `partials` not set)
2021-10-06 17:36:37 +08:00
Harttle
fd5ef474c3
fix: support timezoneOffset for date from scope, #401
2021-10-06 15:45:41 +08:00
harttle
68c4cfcfb6
feat: renderFileToNodeStream(filepath, scope)
2021-10-03 21:21:25 +08:00
Harttle and harttle
4358c9630f
test: coverage to 100%
2021-10-01 15:55:31 +08:00
Harttle and Jun Yang
10e8c8ff7e
feat: orderedFilterParameters, closes #312
2021-09-30 22:15:09 +08:00
Harttle and Jun Yang
9012133e07
feat: stream rendering, closed #361 fixes #360
2021-09-30 22:15:09 +08:00
harttle
8273c17dab
perf: parse filenames in parse() insteadof render()
2021-09-30 22:15:09 +08:00
harttle
24f5346084
perf: improve performance by 4x by simplified parseFile
...
- previously deprecated `getTemplate()` and `getTemplateSync()` not no longer supported
- `opts` no longer support dynamic set in `parseFile()`, `renderFile()` arguments
2021-09-27 23:04:41 +08:00
Harttle and harttle
6b9f872bcc
feat: timezoneOffset option to specify output timezone, see #375
2021-09-27 01:54:31 +08:00
harttle
2f059f6a25
feat: support filters in if/unless/case, see #287
2021-02-12 22:22:41 +08:00
harttle
e37824fd8a
feat: support function calls, closes #222
2021-02-12 13:47:30 +08:00
Jason Etcovitch and Jun Yang
befc33c4eb
feat: create trie programmatically in options
2021-02-04 09:11:28 +08:00
Jason Etcovitch and Jun Yang
8734e2e6ce
feat: rename to defaultOperators and Operators
2021-02-04 09:11:28 +08:00
Jason Etcovitch and Jun Yang
6a7c280f04
feat: export Operators from operator.ts
2021-02-04 09:11:28 +08:00
Jason Etcovitch and Jun Yang
75591cdbfc
feat: add operators option for custom operators
2021-02-04 09:11:28 +08:00
harttle
9c40da7369
fix: allow string literals contain delimiters, fixes #288
2021-01-24 12:49:19 +08:00
Alex de Wergifosse and Jun Yang
b8e4b3337b
test: add tests for keepOutputType option
2020-12-16 10:20:10 +08:00
Alex de Wergifosse and Jun Yang
cd92e77726
feat: add option for keeping variable type in output
2020-12-16 10:20:10 +08:00
harttle
ef43120d6e
test: fix test cases after rebase
2020-12-08 00:20:43 +08:00
harttle
f9f595f0f4
feat: passing liquid to FilterImpl, closes #277
2020-12-08 00:17:27 +08:00
harttle
a492d8e23d
fix: raw block not ignoring {% characters, fixes #263
2020-12-08 00:12:20 +08:00
wyozi and Jun Yang
30dffb675e
Test for broken quoted property access
2020-10-09 21:18:40 +08:00
wyozi and Jun Yang
e67c3c6924
Make end brace peek stricter and fix the test
2020-10-09 21:18:40 +08:00
wyozi and Jun Yang
e2e410f334
Add incomplete quoted property access test
2020-10-09 21:18:40 +08:00
wyozi and Jun Yang
27ce44238e
Test getVariableAsText
2020-10-09 21:18:40 +08:00
wyozi and Jun Yang
abfaf8a042
Test quoted property access tokenizing
2020-10-09 21:18:40 +08:00
harttle
72ee7b4c1e
feat: support jsTruthy, #255 #257
2020-10-08 13:11:02 +08:00
Amit Gupta and Jun Yang
f807383f2a
resolved issues raised by hhartle
2020-10-08 12:43:37 +08:00