chore: update liquid options to match raw filters

This commit is contained in:
Jun Yang
2022-12-12 02:32:50 +08:00
parent e6db371519
commit 5ac3765612
+7 -10
View File
@@ -3,7 +3,8 @@ import { LRU, LiquidCache } from './cache'
import { FS } from './fs/fs'
import * as fs from './fs/node'
import { defaultOperators, Operators } from './render'
import { filters } from './filters'
import { json } from './filters/misc'
import { escape } from './filters/html'
type OutputEscape = (value: any) => string
type OutputEscapeOption = 'escape' | 'json' | OutputEscape
@@ -182,15 +183,11 @@ export function normalize (options: LiquidOptions): NormalizedFullOptions {
return options as NormalizedFullOptions
}
function getOutputEscapeFunction (nameOrFunction: OutputEscapeOption) {
if (isString(nameOrFunction)) {
const filterImpl = filters[nameOrFunction]
assert(isFunction(filterImpl), `filter "${nameOrFunction}" not found`)
return filterImpl
} else {
assert(isFunction(nameOrFunction), '`outputEscape` need to be of type string or function')
return nameOrFunction
}
function getOutputEscapeFunction (nameOrFunction: OutputEscapeOption): OutputEscape {
if (nameOrFunction === 'escape') return escape
if (nameOrFunction === 'json') return json
assert(isFunction(nameOrFunction), '`outputEscape` need to be of type string or function')
return nameOrFunction
}
export function normalizeDirectoryList (value: any): string[] {