mirror of
https://github.com/harttle/liquidjs.git
synced 2026-09-15 04:10:40 -07:00
feat: JSON format by space in json filter
This commit is contained in:
+2
-2
@@ -9,8 +9,8 @@ export function Default<T1 extends boolean, T2> (this: FilterImpl, value: T1, de
|
||||
return isFalsy(value, this.context) ? defaultValue : value
|
||||
}
|
||||
|
||||
export function json (value: any) {
|
||||
return JSON.stringify(value)
|
||||
export function json (value: any, space = 0) {
|
||||
return JSON.stringify(value, null, space)
|
||||
}
|
||||
|
||||
export const raw = {
|
||||
|
||||
@@ -26,7 +26,7 @@ describe('TimezoneDate', () => {
|
||||
})
|
||||
it('should support .toLocaleTimeString()', () => {
|
||||
const date = new TimezoneDate('2021-10-06T00:00:00.001+00:00', -480)
|
||||
expect(date.toLocaleTimeString('en-US')).toBe('8:00:00 AM')
|
||||
expect(date.toLocaleTimeString('en-US')).toMatch(/^8:00:00\sAM$/)
|
||||
expect(() => date.toLocaleDateString()).not.toThrow()
|
||||
})
|
||||
it('should support .toLocaleDateString()', () => {
|
||||
|
||||
@@ -24,5 +24,10 @@ describe('filters/object', function () {
|
||||
it('should stringify number', async () => expect(await liquid.parseAndRender('{{2 | json}}')).toBe('2'))
|
||||
it('should stringify object', async () => expect(await liquid.parseAndRender('{{obj | json}}', { obj: { foo: 'bar' } })).toBe('{"foo":"bar"}'))
|
||||
it('should stringify array', async () => expect(await liquid.parseAndRender('{{arr | json}}', { arr: [-2, 'a'] })).toBe('[-2,"a"]'))
|
||||
it('should support space', () => {
|
||||
const scope = { obj: { foo: 'foo', bar: 'bar' } }
|
||||
const result = '{\n "foo": "foo",\n "bar": "bar"\n}'
|
||||
expect(liquid.parseAndRenderSync('{{obj | json: 4}}', scope)).toBe(result)
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user