mirror of
https://github.com/harttle/liquidjs.git
synced 2026-09-19 14:30:38 -07:00
chore: fix linting
This commit is contained in:
@@ -1,11 +1,7 @@
|
|||||||
import assert from 'src/util/assert'
|
|
||||||
import * as lexical from 'src/parser/lexical'
|
|
||||||
import { evalValue } from 'src/render/syntax'
|
import { evalValue } from 'src/render/syntax'
|
||||||
import Scope from 'src/scope/scope'
|
import Scope from 'src/scope/scope'
|
||||||
import { FilterImpl } from './filter-impl'
|
import { FilterImpl } from './filter-impl'
|
||||||
|
|
||||||
const valueRE = new RegExp(`${lexical.value.source}`, 'g')
|
|
||||||
|
|
||||||
export default class Filter {
|
export default class Filter {
|
||||||
name: string
|
name: string
|
||||||
impl: FilterImpl
|
impl: FilterImpl
|
||||||
|
|||||||
+8
-17
@@ -1,9 +1,7 @@
|
|||||||
import { evalExp } from 'src/render/syntax'
|
import { evalExp } from 'src/render/syntax'
|
||||||
import * as lexical from 'src/parser/lexical'
|
|
||||||
import Filter from './filter/filter'
|
import Filter from './filter/filter'
|
||||||
import Scope from 'src/scope/scope'
|
import Scope from 'src/scope/scope'
|
||||||
|
|
||||||
|
|
||||||
enum ParseState {
|
enum ParseState {
|
||||||
INIT = 0,
|
INIT = 0,
|
||||||
FILTER_NAME = 1,
|
FILTER_NAME = 1,
|
||||||
@@ -18,7 +16,6 @@ export default class {
|
|||||||
* @param str value string, like: "i have a dream | truncate: 3
|
* @param str value string, like: "i have a dream | truncate: 3
|
||||||
*/
|
*/
|
||||||
constructor (str: string, strictFilters: boolean) {
|
constructor (str: string, strictFilters: boolean) {
|
||||||
const N = str.length
|
|
||||||
let buffer = ''
|
let buffer = ''
|
||||||
let quoted = ''
|
let quoted = ''
|
||||||
let state = ParseState.INIT
|
let state = ParseState.INIT
|
||||||
@@ -27,23 +24,20 @@ export default class {
|
|||||||
let filterName = ''
|
let filterName = ''
|
||||||
let filterArgs: string[] = []
|
let filterArgs: string[] = []
|
||||||
|
|
||||||
for(let i = 0; i < str.length; i++) {
|
for (let i = 0; i < str.length; i++) {
|
||||||
if (quoted) {
|
if (quoted) {
|
||||||
if (str[i] == quoted) {
|
if (str[i] === quoted) {
|
||||||
quoted = ''
|
quoted = ''
|
||||||
sealed = true
|
sealed = true
|
||||||
}
|
}
|
||||||
buffer += str[i]
|
buffer += str[i]
|
||||||
}
|
} else if (/\s/.test(str[i])) {
|
||||||
else if (/\s/.test(str[i])) {
|
|
||||||
if (!buffer) continue
|
if (!buffer) continue
|
||||||
else sealed = true
|
else sealed = true
|
||||||
}
|
} else if (str[i] === '|') {
|
||||||
else if (str[i] === '|') {
|
|
||||||
if (state === ParseState.INIT) {
|
if (state === ParseState.INIT) {
|
||||||
this.initial = buffer
|
this.initial = buffer
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
if (state === ParseState.FILTER_NAME) filterName = buffer
|
if (state === ParseState.FILTER_NAME) filterName = buffer
|
||||||
else filterArgs.push(buffer)
|
else filterArgs.push(buffer)
|
||||||
this.filters.push(new Filter(filterName, filterArgs, strictFilters))
|
this.filters.push(new Filter(filterName, filterArgs, strictFilters))
|
||||||
@@ -53,19 +47,16 @@ export default class {
|
|||||||
state = ParseState.FILTER_NAME
|
state = ParseState.FILTER_NAME
|
||||||
buffer = ''
|
buffer = ''
|
||||||
sealed = false
|
sealed = false
|
||||||
}
|
} else if (state === ParseState.FILTER_NAME && str[i] === ':') {
|
||||||
else if (state === ParseState.FILTER_NAME && str[i] === ':') {
|
|
||||||
filterName = buffer
|
filterName = buffer
|
||||||
state = ParseState.FILTER_ARG
|
state = ParseState.FILTER_ARG
|
||||||
buffer = ''
|
buffer = ''
|
||||||
sealed = false
|
sealed = false
|
||||||
}
|
} else if (state === ParseState.FILTER_ARG && str[i] === ',') {
|
||||||
else if (state === ParseState.FILTER_ARG && str[i] === ',') {
|
|
||||||
filterArgs.push(buffer)
|
filterArgs.push(buffer)
|
||||||
buffer = ''
|
buffer = ''
|
||||||
sealed = false
|
sealed = false
|
||||||
}
|
} else if (sealed) continue
|
||||||
else if (sealed) continue
|
|
||||||
else {
|
else {
|
||||||
if ((str[i] === '"' || str[i] === "'") && !quoted) quoted = str[i]
|
if ((str[i] === '"' || str[i] === "'") && !quoted) quoted = str[i]
|
||||||
buffer += str[i]
|
buffer += str[i]
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ describe('filter', function () {
|
|||||||
|
|
||||||
it('should render filters with argument', function () {
|
it('should render filters with argument', function () {
|
||||||
Filter.register('add', (a, b) => a + b)
|
Filter.register('add', (a, b) => a + b)
|
||||||
expect(new Filter('add', ["2"], false).render(3, scope)).to.equal(5)
|
expect(new Filter('add', ['2'], false).render(3, scope)).to.equal(5)
|
||||||
})
|
})
|
||||||
|
|
||||||
it('should render filters with multiple arguments', function () {
|
it('should render filters with multiple arguments', function () {
|
||||||
|
|||||||
Reference in New Issue
Block a user