mirror of
https://github.com/harttle/liquidjs.git
synced 2026-10-03 00:55:13 -07:00
chore: add todolist for benchmark case
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
{
|
{
|
||||||
|
"extends": ["standard"],
|
||||||
"rules": {
|
"rules": {
|
||||||
"no-unused-expressions": "off"
|
"no-unused-expressions": "off",
|
||||||
|
"@typescript-eslint/no-var-requires": "off"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as Benchmark from 'benchmark'
|
const Benchmark = require('benchmark')
|
||||||
import { Context, TagToken, Liquid } from '../src/liquid'
|
const { Liquid } = require('..')
|
||||||
|
|
||||||
const engine = new Liquid({
|
const engine = new Liquid({
|
||||||
root: __dirname,
|
root: __dirname,
|
||||||
@@ -7,11 +7,11 @@ const engine = new Liquid({
|
|||||||
})
|
})
|
||||||
|
|
||||||
engine.registerTag('header', {
|
engine.registerTag('header', {
|
||||||
parse: function (token: TagToken) {
|
parse: function (token) {
|
||||||
const [key, val] = token.args.split(':')
|
const [key, val] = token.args.split(':')
|
||||||
this[key] = val
|
this[key] = val
|
||||||
},
|
},
|
||||||
render: function (ctx: Context) {
|
render: function (ctx) {
|
||||||
const title = this.liquid.evalValue(this.content, ctx)
|
const title = this.liquid.evalValue(this.content, ctx)
|
||||||
return `<h1>${title}</h1>`
|
return `<h1>${title}</h1>`
|
||||||
}
|
}
|
||||||
@@ -32,16 +32,18 @@ const template = `
|
|||||||
</ul>
|
</ul>
|
||||||
`
|
`
|
||||||
|
|
||||||
export function demo () {
|
function demo () {
|
||||||
console.log('--- demo ---')
|
console.log('--- demo ---')
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
new Benchmark.Suite('demo')
|
new Benchmark.Suite('demo')
|
||||||
.add('demo', {
|
.add('demo', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: (d: any) => engine.parseAndRender(template, ctx).then((x: any) => d.resolve(x))
|
fn: d => engine.parseAndRender(template, ctx).then(x => d.resolve(x))
|
||||||
})
|
})
|
||||||
.on('cycle', (event: any) => console.log(String(event.target)))
|
.on('cycle', event => console.log(String(event.target)))
|
||||||
.on('complete', resolve)
|
.on('complete', resolve)
|
||||||
.run({ 'async': true })
|
.run({ 'async': true })
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module.exports = { demo }
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
const { output } = require('./output')
|
||||||
|
const { tag } = require('./tag')
|
||||||
|
const { demo } = require('./demo')
|
||||||
|
const { layout } = require('./layout')
|
||||||
|
const { memory } = require('./memory')
|
||||||
|
|
||||||
|
async function main () {
|
||||||
|
// await output()
|
||||||
|
// await tag()
|
||||||
|
// await demo()
|
||||||
|
// await layout()
|
||||||
|
await memory()
|
||||||
|
}
|
||||||
|
|
||||||
|
main()
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
import { output } from './output'
|
|
||||||
import { tag } from './tag'
|
|
||||||
import { demo } from './demo'
|
|
||||||
import { layout } from './layout'
|
|
||||||
import { memory } from './memory'
|
|
||||||
|
|
||||||
async function main () {
|
|
||||||
await output()
|
|
||||||
await tag()
|
|
||||||
await demo()
|
|
||||||
await layout()
|
|
||||||
await memory()
|
|
||||||
}
|
|
||||||
|
|
||||||
main()
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import * as Benchmark from 'benchmark'
|
const Benchmark = require('benchmark')
|
||||||
import { Liquid } from '../src/liquid'
|
const { Liquid } = require('..')
|
||||||
|
|
||||||
const engineOptions = {
|
const engineOptions = {
|
||||||
root: __dirname,
|
root: __dirname,
|
||||||
@@ -17,20 +17,22 @@ const template = `
|
|||||||
{% block body %}a small body{% endblock %}
|
{% block body %}a small body{% endblock %}
|
||||||
`
|
`
|
||||||
|
|
||||||
export function layout () {
|
function layout () {
|
||||||
console.log('--- layout ---')
|
console.log('--- layout ---')
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
new Benchmark.Suite('layout')
|
new Benchmark.Suite('layout')
|
||||||
.add('cache=false', {
|
.add('cache=false', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: (d: any) => engine.parseAndRender(template, {}).then((x: any) => d.resolve(x))
|
fn: d => engine.parseAndRender(template, {}).then(x => d.resolve(x))
|
||||||
})
|
})
|
||||||
.add('cache=true', {
|
.add('cache=true', {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: (d: any) => cachingEngine.parseAndRender(template, {}).then((x: any) => d.resolve(x))
|
fn: d => cachingEngine.parseAndRender(template, {}).then(x => d.resolve(x))
|
||||||
})
|
})
|
||||||
.on('cycle', (event: any) => console.log(String(event.target)))
|
.on('cycle', event => console.log(String(event.target)))
|
||||||
.on('complete', resolve)
|
.on('complete', resolve)
|
||||||
.run({ 'async': true })
|
.run({ 'async': true })
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module.exports = { layout }
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
const { join } = require('path')
|
||||||
|
const { readFileSync } = require('fs')
|
||||||
|
const { getHeapStatistics } = require('v8')
|
||||||
|
const { Liquid } = require('..')
|
||||||
|
|
||||||
|
const engineOptions = {
|
||||||
|
root: __dirname,
|
||||||
|
extname: '.liquid'
|
||||||
|
}
|
||||||
|
|
||||||
|
const engine = new Liquid(engineOptions)
|
||||||
|
|
||||||
|
const SAMPLE_COUNT = 1024
|
||||||
|
|
||||||
|
function memory () {
|
||||||
|
console.log('--- memory ---')
|
||||||
|
html()
|
||||||
|
todolist()
|
||||||
|
}
|
||||||
|
|
||||||
|
function html () {
|
||||||
|
const str = readFileSync(join(__dirname, 'templates/lorem-html.liquid'), 'utf8')
|
||||||
|
|
||||||
|
global.gc()
|
||||||
|
const base = getHeapStatistics().used_heap_size
|
||||||
|
const templates = []
|
||||||
|
|
||||||
|
for (let i = 0; i < SAMPLE_COUNT; i++) {
|
||||||
|
templates.push(engine.parse(str))
|
||||||
|
}
|
||||||
|
global.gc()
|
||||||
|
|
||||||
|
const diff = (getHeapStatistics().used_heap_size - base) / SAMPLE_COUNT
|
||||||
|
console.log(`${h(str.length)} HTML template x ${h(diff)}/instance (${SAMPLE_COUNT} instances sampled)`)
|
||||||
|
}
|
||||||
|
|
||||||
|
function todolist () {
|
||||||
|
const str = readFileSync(join(__dirname, 'templates/todolist.liquid'), 'utf8')
|
||||||
|
|
||||||
|
global.gc()
|
||||||
|
const base = getHeapStatistics().used_heap_size
|
||||||
|
const templates = []
|
||||||
|
|
||||||
|
for (let i = 0; i < SAMPLE_COUNT; i++) {
|
||||||
|
templates.push(engine.parse(str))
|
||||||
|
}
|
||||||
|
global.gc()
|
||||||
|
|
||||||
|
const diff = (getHeapStatistics().used_heap_size - base) / SAMPLE_COUNT
|
||||||
|
console.log(`${h(str.length)} Todo template x ${h(diff)}/instance (${SAMPLE_COUNT} instances sampled)`)
|
||||||
|
}
|
||||||
|
|
||||||
|
function h (size) {
|
||||||
|
return (size / 1024).toFixed(3) + ' kB'
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = { memory }
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
import { join } from 'path'
|
|
||||||
import { readFileSync } from 'fs'
|
|
||||||
import { getHeapStatistics } from 'v8'
|
|
||||||
import { Liquid } from '../src/liquid'
|
|
||||||
|
|
||||||
const engineOptions = {
|
|
||||||
root: __dirname,
|
|
||||||
extname: '.liquid'
|
|
||||||
}
|
|
||||||
|
|
||||||
const engine = new Liquid(engineOptions)
|
|
||||||
|
|
||||||
const templateString = readFileSync(join(__dirname, 'templates/lorem-html.liquid'), 'utf8')
|
|
||||||
const templateSizeKb = templateString.length / 1024
|
|
||||||
|
|
||||||
const NB_INSTANCES_TO_RETAIN = 250
|
|
||||||
|
|
||||||
export function memory () {
|
|
||||||
console.log('--- memory ---')
|
|
||||||
const initialUsedHeapSize = getHeapStatistics().used_heap_size
|
|
||||||
const templates = []
|
|
||||||
|
|
||||||
for (let i = 0; i < NB_INSTANCES_TO_RETAIN; i++) {
|
|
||||||
templates.push(engine.parse(templateString))
|
|
||||||
}
|
|
||||||
|
|
||||||
const finalUsedHeapSize = getHeapStatistics().used_heap_size
|
|
||||||
const heapDifference = finalUsedHeapSize - initialUsedHeapSize
|
|
||||||
const avgRetainedPerTemplate = (heapDifference / NB_INSTANCES_TO_RETAIN) / 1024
|
|
||||||
|
|
||||||
console.log(`retained memory for a ${templateSizeKb}KB template: ${avgRetainedPerTemplate}KB (${NB_INSTANCES_TO_RETAIN} samples)`)
|
|
||||||
}
|
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
import * as Benchmark from 'benchmark'
|
const Benchmark = require('benchmark')
|
||||||
import { Liquid } from '../src/liquid'
|
const { Liquid } = require('..')
|
||||||
|
|
||||||
const liquid = new Liquid()
|
const liquid = new Liquid()
|
||||||
|
|
||||||
export function output () {
|
function output () {
|
||||||
console.log('--- output ---')
|
console.log('--- output ---')
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
new Benchmark.Suite('output')
|
new Benchmark.Suite('output')
|
||||||
@@ -12,15 +12,17 @@ export function output () {
|
|||||||
.add('date', test('{{"now" | date: "%d%Y%m"}}'))
|
.add('date', test('{{"now" | date: "%d%Y%m"}}'))
|
||||||
.add('escape', test('{{"1<2" | escape}}'))
|
.add('escape', test('{{"1<2" | escape}}'))
|
||||||
.add('default', test('{{"" | default: 3}}'))
|
.add('default', test('{{"" | default: 3}}'))
|
||||||
.on('cycle', (event: any) => console.log(String(event.target)))
|
.on('cycle', (event) => console.log(String(event.target)))
|
||||||
.on('complete', resolve)
|
.on('complete', resolve)
|
||||||
.run({ 'async': true })
|
.run({ 'async': true })
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function test (str: string) {
|
function test (str) {
|
||||||
return {
|
return {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: (d: any) => liquid.parseAndRender(str).then((x: any) => d.resolve(x))
|
fn: d => liquid.parseAndRender(str).then(x => d.resolve(x))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module.exports = { output }
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
import * as Benchmark from 'benchmark'
|
const Benchmark = require('benchmark')
|
||||||
import { Liquid } from '../src/liquid'
|
const { Liquid } = require('..')
|
||||||
|
|
||||||
const liquid = new Liquid()
|
const liquid = new Liquid()
|
||||||
|
|
||||||
export function tag () {
|
function tag () {
|
||||||
console.log('--- tag ---')
|
console.log('--- tag ---')
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
new Benchmark.Suite('tag')
|
new Benchmark.Suite('tag')
|
||||||
@@ -16,15 +16,17 @@ export function tag () {
|
|||||||
.add('increment', test('{%increment a%}'))
|
.add('increment', test('{%increment a%}'))
|
||||||
.add('decrement', test('{%decrement a%}'))
|
.add('decrement', test('{%decrement a%}'))
|
||||||
.add('tablerow', test('{%tablerow i in (1..10) cols:3%}{%endtablerow%}'))
|
.add('tablerow', test('{%tablerow i in (1..10) cols:3%}{%endtablerow%}'))
|
||||||
.on('cycle', (event: any) => console.log(String(event.target)))
|
.on('cycle', (event) => console.log(String(event.target)))
|
||||||
.on('complete', resolve)
|
.on('complete', resolve)
|
||||||
.run({ 'async': true })
|
.run({ 'async': true })
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
function test (str: string) {
|
function test (str) {
|
||||||
return {
|
return {
|
||||||
defer: true,
|
defer: true,
|
||||||
fn: (d: any) => liquid.parseAndRender(str).then((x: any) => d.resolve(x))
|
fn: d => liquid.parseAndRender(str).then(x => d.resolve(x))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module.exports = { tag }
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
<section class="todo-list">
|
||||||
|
<h1>
|
||||||
|
posuere cubilia Curae; Vestibulum hendrerit malesuada odio. Fusce ut elit
|
||||||
|
ut augue sollicitudin blandit. Phasellus volutpat lorem. Duis non pede et
|
||||||
|
neque luctus tincidunt. Duis interdum tempus elit.
|
||||||
|
<small>Aenean metus. Vestibulum ac lacus. Vivamus porttitor, massa ut.</small>
|
||||||
|
</h1>
|
||||||
|
<a href={{"/add" | url}} class="todo-add"><i class="fa fa-plus-square"></i>Add Todo</a>
|
||||||
|
<ul class="filter-category">
|
||||||
|
{% for i in (0..categories.length) %}
|
||||||
|
{% assign item=categories[i] %}
|
||||||
|
<li style="background: {{ item.color }}">
|
||||||
|
<a href="/todos/category/{{ item.id }}">{{ item.title }}</a>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% for todo in todos %}
|
||||||
|
<div>
|
||||||
|
<h2>
|
||||||
|
Todo {{ forloop.index }}:
|
||||||
|
<span class="todo-item content" data-todo-index="{{ forloop.index0 }}">
|
||||||
|
{{ todo.title | prepend: 'TODO: ' | upcase }}
|
||||||
|
</span>
|
||||||
|
</h2>
|
||||||
|
|
||||||
|
<img
|
||||||
|
title="risus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices"
|
||||||
|
src="{% include "todo-icon", id=todo.id }} %}"
|
||||||
|
>
|
||||||
|
|
||||||
|
<p class="description">
|
||||||
|
Purus eu mi. Proin commodo, massa commodo dapibus elementum,
|
||||||
|
libero lacus pulvinar eros, ut tincidunt nisl elit ut velit. Cras rutrum
|
||||||
|
porta purus. Vivamus lorem. Sed turpis enim, faucibus quis, pharetra in,
|
||||||
|
sagittis sed, magna. Curabitur ultricies felis ut libero. Nullam tincidunt
|
||||||
|
enim eu nibh. Nunc eget ipsum in sem facilisis convallis. Proin fermentum
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="todo-meta">
|
||||||
|
{% if todo.category %}
|
||||||
|
<span>{{ todo.category.title | capitalize }}</span>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
<a class="btn btn-primary" href={{"/edit/" | append todo.id | url }}><i class="fa fa-pencil"></i> Edit</a>
|
||||||
|
<a class="btn btn-default"><i class="fa fa-check"></i> Check</a>
|
||||||
|
<a class="btn ben-danger" href={{"/delete/" | append todo.id | url }}><i class="fa fa-trash-o"</i> Trash</a>
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
</section>
|
||||||
Generated
+326
-45
@@ -929,6 +929,12 @@
|
|||||||
"@types/chai": "*"
|
"@types/chai": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"@types/color-name": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"@types/connect": {
|
"@types/connect": {
|
||||||
"version": "3.4.33",
|
"version": "3.4.33",
|
||||||
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz",
|
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz",
|
||||||
@@ -1453,9 +1459,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"acorn-jsx": {
|
"acorn-jsx": {
|
||||||
"version": "5.0.1",
|
"version": "5.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz",
|
||||||
"integrity": "sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg==",
|
"integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"acorn-walk": {
|
"acorn-walk": {
|
||||||
@@ -3564,49 +3570,107 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"eslint": {
|
"eslint": {
|
||||||
"version": "5.16.0",
|
"version": "6.8.0",
|
||||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
|
||||||
"integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==",
|
"integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/code-frame": "^7.0.0",
|
"@babel/code-frame": "^7.0.0",
|
||||||
"ajv": "^6.9.1",
|
"ajv": "^6.10.0",
|
||||||
"chalk": "^2.1.0",
|
"chalk": "^2.1.0",
|
||||||
"cross-spawn": "^6.0.5",
|
"cross-spawn": "^6.0.5",
|
||||||
"debug": "^4.0.1",
|
"debug": "^4.0.1",
|
||||||
"doctrine": "^3.0.0",
|
"doctrine": "^3.0.0",
|
||||||
"eslint-scope": "^4.0.3",
|
"eslint-scope": "^5.0.0",
|
||||||
"eslint-utils": "^1.3.1",
|
"eslint-utils": "^1.4.3",
|
||||||
"eslint-visitor-keys": "^1.0.0",
|
"eslint-visitor-keys": "^1.1.0",
|
||||||
"espree": "^5.0.1",
|
"espree": "^6.1.2",
|
||||||
"esquery": "^1.0.1",
|
"esquery": "^1.0.1",
|
||||||
"esutils": "^2.0.2",
|
"esutils": "^2.0.2",
|
||||||
"file-entry-cache": "^5.0.1",
|
"file-entry-cache": "^5.0.1",
|
||||||
"functional-red-black-tree": "^1.0.1",
|
"functional-red-black-tree": "^1.0.1",
|
||||||
"glob": "^7.1.2",
|
"glob-parent": "^5.0.0",
|
||||||
"globals": "^11.7.0",
|
"globals": "^12.1.0",
|
||||||
"ignore": "^4.0.6",
|
"ignore": "^4.0.6",
|
||||||
"import-fresh": "^3.0.0",
|
"import-fresh": "^3.0.0",
|
||||||
"imurmurhash": "^0.1.4",
|
"imurmurhash": "^0.1.4",
|
||||||
"inquirer": "^6.2.2",
|
"inquirer": "^7.0.0",
|
||||||
"js-yaml": "^3.13.0",
|
"is-glob": "^4.0.0",
|
||||||
|
"js-yaml": "^3.13.1",
|
||||||
"json-stable-stringify-without-jsonify": "^1.0.1",
|
"json-stable-stringify-without-jsonify": "^1.0.1",
|
||||||
"levn": "^0.3.0",
|
"levn": "^0.3.0",
|
||||||
"lodash": "^4.17.11",
|
"lodash": "^4.17.14",
|
||||||
"minimatch": "^3.0.4",
|
"minimatch": "^3.0.4",
|
||||||
"mkdirp": "^0.5.1",
|
"mkdirp": "^0.5.1",
|
||||||
"natural-compare": "^1.4.0",
|
"natural-compare": "^1.4.0",
|
||||||
"optionator": "^0.8.2",
|
"optionator": "^0.8.3",
|
||||||
"path-is-inside": "^1.0.2",
|
|
||||||
"progress": "^2.0.0",
|
"progress": "^2.0.0",
|
||||||
"regexpp": "^2.0.1",
|
"regexpp": "^2.0.1",
|
||||||
"semver": "^5.5.1",
|
"semver": "^6.1.2",
|
||||||
"strip-ansi": "^4.0.0",
|
"strip-ansi": "^5.2.0",
|
||||||
"strip-json-comments": "^2.0.1",
|
"strip-json-comments": "^3.0.1",
|
||||||
"table": "^5.2.3",
|
"table": "^5.2.3",
|
||||||
"text-table": "^0.2.0"
|
"text-table": "^0.2.0",
|
||||||
|
"v8-compile-cache": "^2.0.3"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"ansi-escapes": {
|
||||||
|
"version": "4.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz",
|
||||||
|
"integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"type-fest": "^0.11.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"type-fest": {
|
||||||
|
"version": "0.11.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
|
||||||
|
"integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-styles": {
|
||||||
|
"version": "4.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
|
||||||
|
"integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"@types/color-name": "^1.1.1",
|
||||||
|
"color-convert": "^2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli-cursor": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"restore-cursor": "^3.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-convert": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-name": "~1.1.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-name": {
|
||||||
|
"version": "1.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||||
|
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"doctrine": {
|
"doctrine": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
|
||||||
@@ -3616,20 +3680,217 @@
|
|||||||
"esutils": "^2.0.2"
|
"esutils": "^2.0.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"emoji-regex": {
|
||||||
|
"version": "8.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||||
|
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"eslint-scope": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"esrecurse": "^4.1.0",
|
||||||
|
"estraverse": "^4.1.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"eslint-visitor-keys": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"figures": {
|
||||||
|
"version": "3.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
|
||||||
|
"integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"escape-string-regexp": "^1.0.5"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"globals": {
|
||||||
|
"version": "12.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
|
||||||
|
"integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"type-fest": "^0.8.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"has-flag": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"ignore": {
|
"ignore": {
|
||||||
"version": "4.0.6",
|
"version": "4.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
|
||||||
"integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
|
"integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"strip-ansi": {
|
"inquirer": {
|
||||||
"version": "4.0.0",
|
"version": "7.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.6.tgz",
|
||||||
"integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
|
"integrity": "sha512-7SVO4h+QIdMq6XcqIqrNte3gS5MzCCKZdsq9DO4PJziBFNYzP3PGFbDjgadDb//MCahzgjCxvQ/O2wa7kx9o4w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"ansi-regex": "^3.0.0"
|
"ansi-escapes": "^4.2.1",
|
||||||
|
"chalk": "^3.0.0",
|
||||||
|
"cli-cursor": "^3.1.0",
|
||||||
|
"cli-width": "^2.0.0",
|
||||||
|
"external-editor": "^3.0.3",
|
||||||
|
"figures": "^3.0.0",
|
||||||
|
"lodash": "^4.17.15",
|
||||||
|
"mute-stream": "0.0.8",
|
||||||
|
"run-async": "^2.4.0",
|
||||||
|
"rxjs": "^6.5.3",
|
||||||
|
"string-width": "^4.1.0",
|
||||||
|
"strip-ansi": "^6.0.0",
|
||||||
|
"through": "^2.3.6"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"chalk": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^4.1.0",
|
||||||
|
"supports-color": "^7.1.0"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^5.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"mimic-fn": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"mute-stream": {
|
||||||
|
"version": "0.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
|
||||||
|
"integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"onetime": {
|
||||||
|
"version": "5.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
|
||||||
|
"integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"mimic-fn": "^2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"optionator": {
|
||||||
|
"version": "0.8.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
|
||||||
|
"integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"deep-is": "~0.1.3",
|
||||||
|
"fast-levenshtein": "~2.0.6",
|
||||||
|
"levn": "~0.3.0",
|
||||||
|
"prelude-ls": "~1.1.2",
|
||||||
|
"type-check": "~0.3.2",
|
||||||
|
"word-wrap": "~1.2.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"restore-cursor": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"onetime": "^5.1.0",
|
||||||
|
"signal-exit": "^3.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"run-async": {
|
||||||
|
"version": "2.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz",
|
||||||
|
"integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-promise": "^2.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rxjs": {
|
||||||
|
"version": "6.5.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
|
||||||
|
"integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"tslib": "^1.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"semver": {
|
||||||
|
"version": "6.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
|
||||||
|
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "4.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
|
||||||
|
"integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"emoji-regex": "^8.0.0",
|
||||||
|
"is-fullwidth-code-point": "^3.0.0",
|
||||||
|
"strip-ansi": "^6.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^5.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-json-comments": {
|
||||||
|
"version": "3.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
|
||||||
|
"integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"supports-color": {
|
||||||
|
"version": "7.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
|
||||||
|
"integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"has-flag": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type-fest": {
|
||||||
|
"version": "0.8.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
|
||||||
|
"integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
|
||||||
|
"dev": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -4110,14 +4371,28 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"espree": {
|
"espree": {
|
||||||
"version": "5.0.1",
|
"version": "6.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/espree/-/espree-6.2.0.tgz",
|
||||||
"integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==",
|
"integrity": "sha512-Xs8airJ7RQolnDIbLtRutmfvSsAe0xqMMAantCN/GMoqf81TFbeI1T7Jpd56qYu1uuh32dOG5W/X9uO+ghPXzA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"acorn": "^6.0.7",
|
"acorn": "^7.1.0",
|
||||||
"acorn-jsx": "^5.0.0",
|
"acorn-jsx": "^5.2.0",
|
||||||
"eslint-visitor-keys": "^1.0.0"
|
"eslint-visitor-keys": "^1.1.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"acorn": {
|
||||||
|
"version": "7.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz",
|
||||||
|
"integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"eslint-visitor-keys": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"esprima": {
|
"esprima": {
|
||||||
@@ -4127,9 +4402,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"esquery": {
|
"esquery": {
|
||||||
"version": "1.0.1",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.1.0.tgz",
|
||||||
"integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
|
"integrity": "sha512-MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"estraverse": "^4.0.0"
|
"estraverse": "^4.0.0"
|
||||||
@@ -12091,12 +12366,6 @@
|
|||||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"path-is-inside": {
|
|
||||||
"version": "1.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
|
|
||||||
"integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"path-key": {
|
"path-key": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
|
||||||
@@ -13932,9 +14201,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"table": {
|
"table": {
|
||||||
"version": "5.4.5",
|
"version": "5.4.6",
|
||||||
"resolved": "https://registry.npmjs.org/table/-/table-5.4.5.tgz",
|
"resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
|
||||||
"integrity": "sha512-oGa2Hl7CQjfoaogtrOHEJroOcYILTx7BZWLGsJIlzoWmB2zmguhNfPJZsWPKYek/MgCxfco54gEi31d1uN2hFA==",
|
"integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"ajv": "^6.10.2",
|
"ajv": "^6.10.2",
|
||||||
@@ -14484,6 +14753,12 @@
|
|||||||
"integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
|
"integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"v8-compile-cache": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"validate-npm-package-license": {
|
"validate-npm-package-license": {
|
||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
|
||||||
@@ -14777,6 +15052,12 @@
|
|||||||
"execa": "^1.0.0"
|
"execa": "^1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"word-wrap": {
|
||||||
|
"version": "1.2.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
|
||||||
|
"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"wordwrap": {
|
"wordwrap": {
|
||||||
"version": "0.0.3",
|
"version": "0.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
|
||||||
|
|||||||
+3
-3
@@ -7,13 +7,13 @@
|
|||||||
"browser": "dist/liquid.js",
|
"browser": "dist/liquid.js",
|
||||||
"types": "dist/liquid.d.ts",
|
"types": "dist/liquid.d.ts",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"lint": "eslint . --ext .ts",
|
"lint": "eslint .",
|
||||||
"docs": "rm docs -rf && typedoc --gitRevision master --out docs src && cp -r website/. docs/",
|
"docs": "rm docs -rf && typedoc --gitRevision master --out docs src && cp -r website/. docs/",
|
||||||
"unit": "mocha \"test/unit/**/*.ts\"",
|
"unit": "mocha \"test/unit/**/*.ts\"",
|
||||||
"integration": "mocha \"test/integration/**/*.ts\"",
|
"integration": "mocha \"test/integration/**/*.ts\"",
|
||||||
"e2e": "npm run build && mocha \"test/e2e/**/*.ts\"",
|
"e2e": "npm run build && mocha \"test/e2e/**/*.ts\"",
|
||||||
"test": "cross-env BUNDLES=cjs,umd npm run build && mocha \"test/**/*.ts\"",
|
"test": "cross-env BUNDLES=cjs,umd npm run build && mocha \"test/**/*.ts\"",
|
||||||
"benchmark": "ts-node benchmark",
|
"benchmark": "node --expose-gc benchmark/index",
|
||||||
"coverage": "nyc --reporter=html mocha \"test/{unit,integration}/**/*.ts\"",
|
"coverage": "nyc --reporter=html mocha \"test/{unit,integration}/**/*.ts\"",
|
||||||
"coverage-coveralls": "nyc mocha \"test/{unit,integration}/**/*.ts\" && nyc report --reporter=text-lcov | coveralls",
|
"coverage-coveralls": "nyc mocha \"test/{unit,integration}/**/*.ts\" && nyc report --reporter=text-lcov | coveralls",
|
||||||
"build": "rollup -c rollup.config.ts && ls -lh dist",
|
"build": "rollup -c rollup.config.ts && ls -lh dist",
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
"chai-as-promised": "^7.1.1",
|
"chai-as-promised": "^7.1.1",
|
||||||
"coveralls": "^3.0.2",
|
"coveralls": "^3.0.2",
|
||||||
"cross-env": "^5.2.0",
|
"cross-env": "^5.2.0",
|
||||||
"eslint": "^5.12.1",
|
"eslint": "^6.8.0",
|
||||||
"eslint-config-standard": "^12.0.0",
|
"eslint-config-standard": "^12.0.0",
|
||||||
"eslint-plugin-import": "^2.15.0",
|
"eslint-plugin-import": "^2.15.0",
|
||||||
"eslint-plugin-mocha": "^5.3.0",
|
"eslint-plugin-mocha": "^5.3.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user